You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@syncope.apache.org by il...@apache.org on 2019/01/19 11:18:53 UTC

[syncope] branch master updated: [SYNCOPE-1426] Eclipse IDE plugin removed

This is an automated email from the ASF dual-hosted git repository.

ilgrosso pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/syncope.git


The following commit(s) were added to refs/heads/master by this push:
     new 9328a8e  [SYNCOPE-1426] Eclipse IDE plugin removed
9328a8e is described below

commit 9328a8edb52bfd8bdc1fbe970f47209a39ca9e69
Author: Francesco Chicchiriccò <il...@apache.org>
AuthorDate: Sat Jan 19 12:18:39 2019 +0100

    [SYNCOPE-1426] Eclipse IDE plugin removed
---
 .gitignore                                         |    5 -
 .travis.yml                                        |    2 +-
 appveyor.yml                                       |    2 +-
 ide/eclipse/LICENSE                                |  896 -----------
 ide/eclipse/NOTICE                                 |   80 -
 .../META-INF/MANIFEST.MF                           |   44 -
 .../build.properties                               |   52 -
 .../plugin.xml                                     |   67 -
 .../org.apache.syncope.ide.eclipse.plugin/pom.xml  |  133 --
 .../syncope/ide/eclipse/plugin/Activator.java      |   47 -
 .../eclipse/plugin/dialogs/AddTemplateDialog.java  |   97 --
 .../ide/eclipse/plugin/dialogs/LoginDialog.java    |  186 ---
 .../ide/eclipse/plugin/editors/HTMLEditor.java     |   61 -
 .../plugin/editors/HTMLSourceConfiguration.java    |  251 ----
 .../ide/eclipse/plugin/editors/TemplateEditor.java |  205 ---
 .../plugin/editors/TemplateEditorInput.java        |  122 --
 .../plugin/editors/htmlhelpers/AssistInfo.java     |  117 --
 .../plugin/editors/htmlhelpers/AttributeInfo.java  |   88 --
 .../editors/htmlhelpers/AutoIndentAction.java      |   75 -
 .../editors/htmlhelpers/CSSBlockScanner.java       |   47 -
 .../plugin/editors/htmlhelpers/CSSRule.java        |  110 --
 .../plugin/editors/htmlhelpers/DocTypeRule.java    |   65 -
 .../editors/htmlhelpers/HTMLAutoEditStrategy.java  |  326 ----
 .../htmlhelpers/HTMLCompletionProcessor.java       |  338 -----
 .../editors/htmlhelpers/HTMLContextType.java       |   36 -
 .../htmlhelpers/HTMLFileDocumentProvider.java      |   50 -
 .../editors/htmlhelpers/HTMLPartitionScanner.java  |   76 -
 .../plugin/editors/htmlhelpers/HTMLScanner.java    |   33 -
 .../htmlhelpers/HTMLTagDamagerRepairer.java        |   61 -
 .../plugin/editors/htmlhelpers/HTMLTagScanner.java |   51 -
 .../htmlhelpers/HTMLTemplateAssistProcessor.java   |   87 --
 .../editors/htmlhelpers/HTMLTemplateManager.java   |   68 -
 .../htmlhelpers/HTMLWhitespaceDetector.java        |   27 -
 .../editors/htmlhelpers/IHTMLColorConstants.java   |   42 -
 .../editors/htmlhelpers/InnerCSSScanner.java       |   54 -
 .../htmlhelpers/InnerJavaScriptScanner.java        |   54 -
 .../htmlhelpers/JavaScriptDamagerRepairer.java     |   57 -
 .../editors/htmlhelpers/JavaScriptScanner.java     |   87 --
 .../editors/htmlhelpers/JavaWordDetector.java      |   33 -
 .../plugin/editors/htmlhelpers/SyncopeTagRule.java |  119 --
 .../editors/htmlhelpers/SyncopeTagScanner.java     |   51 -
 .../plugin/editors/htmlhelpers/TagDefinition.java  | 1582 --------------------
 .../plugin/editors/htmlhelpers/TagInfo.java        |  128 --
 .../plugin/editors/htmlhelpers/TagRule.java        |  119 --
 .../plugin/editors/htmlhelpers/TextInfo.java       |   50 -
 .../ide/eclipse/plugin/views/SyncopeView.java      |  534 -------
 .../ide/eclipse/plugin/views/TreeObject.java       |   44 -
 .../ide/eclipse/plugin/views/TreeParent.java       |   49 -
 .../src/main/resources/HTMLEditor.properties       |   21 -
 .../src/main/resources/icons/syncope.png           |  Bin 1184 -> 0 bytes
 .../META-INF/MANIFEST.MF                           |   21 -
 .../build.properties                               |   22 -
 .../org.apache.syncope.ide.eclipse.tests/pom.xml   |  154 --
 .../syncope/ide/eclipse/tests/SyncopeViewTest.java |  343 -----
 ide/eclipse/pom.xml                                |  134 --
 .../category.xml                                   |   29 -
 .../org.apache.syncope.ide.eclipse.site/pom.xml    |  103 --
 ide/pom.xml                                        |   26 -
 pom.xml                                            |   48 -
 src/assemble/source-release.xml                    |  111 --
 src/main/asciidoc/getting-started/obtain.adoc      |   64 -
 src/main/asciidoc/images/eclipse01.png             |  Bin 35891 -> 0 bytes
 src/main/asciidoc/images/eclipse02.png             |  Bin 18227 -> 0 bytes
 src/main/asciidoc/images/eclipse03.png             |  Bin 4809 -> 0 bytes
 src/main/asciidoc/images/eclipse04.png             |  Bin 11377 -> 0 bytes
 src/main/asciidoc/images/eclipse05.png             |  Bin 51446 -> 0 bytes
 src/main/asciidoc/images/eclipse06.png             |  Bin 57532 -> 0 bytes
 src/main/asciidoc/images/eclipse07.png             |  Bin 24895 -> 0 bytes
 src/main/asciidoc/images/eclipse08.png             |  Bin 10020 -> 0 bytes
 src/main/asciidoc/images/eclipse09.png             |  Bin 7757 -> 0 bytes
 src/main/asciidoc/images/eclipse10.png             |  Bin 33757 -> 0 bytes
 src/main/asciidoc/images/eclipse11.png             |  Bin 8725 -> 0 bytes
 src/main/asciidoc/images/eclipse12.png             |  Bin 5290 -> 0 bytes
 src/main/asciidoc/images/eclipse13.png             |  Bin 15589 -> 0 bytes
 src/main/asciidoc/images/eclipse14.png             |  Bin 12249 -> 0 bytes
 src/main/asciidoc/images/eclipse15.png             |  Bin 21187 -> 0 bytes
 .../reference-guide/architecture/architecture.adoc |    6 -
 .../reference-guide/concepts/notifications.adoc    |    4 +-
 .../asciidoc/reference-guide/concepts/reports.adoc |    3 +-
 79 files changed, 5 insertions(+), 7992 deletions(-)

diff --git a/.gitignore b/.gitignore
index d479649..058b090 100644
--- a/.gitignore
+++ b/.gitignore
@@ -4,14 +4,9 @@
 .project
 .classpath
 .settings
-eclipse-classes
 target
 maven-eclipse.xml
 .externalToolBuilders
 archetype/src/main/resources/archetype-resources/pom.xml
-ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/bin/
-ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/lib/
-ide/eclipse/bundles/org.apache.syncope.ide.eclipse.tests/bin/
-ide/eclipse/bundles/org.apache.syncope.ide.eclipse.tests/screenshots/
 *nb-configuration.xml
 node_modules
diff --git a/.travis.yml b/.travis.yml
index e3d3202..f136ec1 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -20,7 +20,7 @@ jdk:
 before_install:
   - echo 'MAVEN_OPTS="-Xms512m -Xmx1024m -XX:+TieredCompilation -XX:TieredStopAtLevel=1"' >~/.mavenrc
 # default install is mvn install --quiet -DskipTests=true
-install: travis_wait 30 mvn --show-version --quiet -T 1C -P all,skipTests,without-eclipse
+install: travis_wait 30 mvn --show-version --quiet -T 1C -P all,skipTests
 before_script:
   - cd fit/core-reference
 script:
diff --git a/appveyor.yml b/appveyor.yml
index 95610ee..82c5d06 100644
--- a/appveyor.yml
+++ b/appveyor.yml
@@ -33,7 +33,7 @@ install:
   - cmd: SET MAVEN_OPTS=-Xmx4g
   - cmd: SET JAVA_OPTS=-Xmx4g
 build_script:
-  - mvn --show-version --quiet -T 1C -PskipTests,all,without-eclipse --batch-mode
+  - mvn --show-version --quiet -T 1C -PskipTests,all --batch-mode
 test_script:
   - mvn -T 1C clean install --batch-mode
 cache:
diff --git a/ide/eclipse/LICENSE b/ide/eclipse/LICENSE
deleted file mode 100644
index f34bfd3..0000000
--- a/ide/eclipse/LICENSE
+++ /dev/null
@@ -1,896 +0,0 @@
-
-                                 Apache License
-                           Version 2.0, January 2004
-                        http://www.apache.org/licenses/
-
-   TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
-
-   1. Definitions.
-
-      "License" shall mean the terms and conditions for use, reproduction,
-      and distribution as defined by Sections 1 through 9 of this document.
-
-      "Licensor" shall mean the copyright owner or entity authorized by
-      the copyright owner that is granting the License.
-
-      "Legal Entity" shall mean the union of the acting entity and all
-      other entities that control, are controlled by, or are under common
-      control with that entity. For the purposes of this definition,
-      "control" means (i) the power, direct or indirect, to cause the
-      direction or management of such entity, whether by contract or
-      otherwise, or (ii) ownership of fifty percent (50%) or more of the
-      outstanding shares, or (iii) beneficial ownership of such entity.
-
-      "You" (or "Your") shall mean an individual or Legal Entity
-      exercising permissions granted by this License.
-
-      "Source" form shall mean the preferred form for making modifications,
-      including but not limited to software source code, documentation
-      source, and configuration files.
-
-      "Object" form shall mean any form resulting from mechanical
-      transformation or translation of a Source form, including but
-      not limited to compiled object code, generated documentation,
-      and conversions to other media types.
-
-      "Work" shall mean the work of authorship, whether in Source or
-      Object form, made available under the License, as indicated by a
-      copyright notice that is included in or attached to the work
-      (an example is provided in the Appendix below).
-
-      "Derivative Works" shall mean any work, whether in Source or Object
-      form, that is based on (or derived from) the Work and for which the
-      editorial revisions, annotations, elaborations, or other modifications
-      represent, as a whole, an original work of authorship. For the purposes
-      of this License, Derivative Works shall not include works that remain
-      separable from, or merely link (or bind by name) to the interfaces of,
-      the Work and Derivative Works thereof.
-
-      "Contribution" shall mean any work of authorship, including
-      the original version of the Work and any modifications or additions
-      to that Work or Derivative Works thereof, that is intentionally
-      submitted to Licensor for inclusion in the Work by the copyright owner
-      or by an individual or Legal Entity authorized to submit on behalf of
-      the copyright owner. For the purposes of this definition, "submitted"
-      means any form of electronic, verbal, or written communication sent
-      to the Licensor or its representatives, including but not limited to
-      communication on electronic mailing lists, source code control systems,
-      and issue tracking systems that are managed by, or on behalf of, the
-      Licensor for the purpose of discussing and improving the Work, but
-      excluding communication that is conspicuously marked or otherwise
-      designated in writing by the copyright owner as "Not a Contribution."
-
-      "Contributor" shall mean Licensor and any individual or Legal Entity
-      on behalf of whom a Contribution has been received by Licensor and
-      subsequently incorporated within the Work.
-
-   2. Grant of Copyright License. Subject to the terms and conditions of
-      this License, each Contributor hereby grants to You a perpetual,
-      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
-      copyright license to reproduce, prepare Derivative Works of,
-      publicly display, publicly perform, sublicense, and distribute the
-      Work and such Derivative Works in Source or Object form.
-
-   3. Grant of Patent License. Subject to the terms and conditions of
-      this License, each Contributor hereby grants to You a perpetual,
-      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
-      (except as stated in this section) patent license to make, have made,
-      use, offer to sell, sell, import, and otherwise transfer the Work,
-      where such license applies only to those patent claims licensable
-      by such Contributor that are necessarily infringed by their
-      Contribution(s) alone or by combination of their Contribution(s)
-      with the Work to which such Contribution(s) was submitted. If You
-      institute patent litigation against any entity (including a
-      cross-claim or counterclaim in a lawsuit) alleging that the Work
-      or a Contribution incorporated within the Work constitutes direct
-      or contributory patent infringement, then any patent licenses
-      granted to You under this License for that Work shall terminate
-      as of the date such litigation is filed.
-
-   4. Redistribution. You may reproduce and distribute copies of the
-      Work or Derivative Works thereof in any medium, with or without
-      modifications, and in Source or Object form, provided that You
-      meet the following conditions:
-
-      (a) You must give any other recipients of the Work or
-          Derivative Works a copy of this License; and
-
-      (b) You must cause any modified files to carry prominent notices
-          stating that You changed the files; and
-
-      (c) You must retain, in the Source form of any Derivative Works
-          that You distribute, all copyright, patent, trademark, and
-          attribution notices from the Source form of the Work,
-          excluding those notices that do not pertain to any part of
-          the Derivative Works; and
-
-      (d) If the Work includes a "NOTICE" text file as part of its
-          distribution, then any Derivative Works that You distribute must
-          include a readable copy of the attribution notices contained
-          within such NOTICE file, excluding those notices that do not
-          pertain to any part of the Derivative Works, in at least one
-          of the following places: within a NOTICE text file distributed
-          as part of the Derivative Works; within the Source form or
-          documentation, if provided along with the Derivative Works; or,
-          within a display generated by the Derivative Works, if and
-          wherever such third-party notices normally appear. The contents
-          of the NOTICE file are for informational purposes only and
-          do not modify the License. You may add Your own attribution
-          notices within Derivative Works that You distribute, alongside
-          or as an addendum to the NOTICE text from the Work, provided
-          that such additional attribution notices cannot be construed
-          as modifying the License.
-
-      You may add Your own copyright statement to Your modifications and
-      may provide additional or different license terms and conditions
-      for use, reproduction, or distribution of Your modifications, or
-      for any such Derivative Works as a whole, provided Your use,
-      reproduction, and distribution of the Work otherwise complies with
-      the conditions stated in this License.
-
-   5. Submission of Contributions. Unless You explicitly state otherwise,
-      any Contribution intentionally submitted for inclusion in the Work
-      by You to the Licensor shall be under the terms and conditions of
-      this License, without any additional terms or conditions.
-      Notwithstanding the above, nothing herein shall supersede or modify
-      the terms of any separate license agreement you may have executed
-      with Licensor regarding such Contributions.
-
-   6. Trademarks. This License does not grant permission to use the trade
-      names, trademarks, service marks, or product names of the Licensor,
-      except as required for reasonable and customary use in describing the
-      origin of the Work and reproducing the content of the NOTICE file.
-
-   7. Disclaimer of Warranty. Unless required by applicable law or
-      agreed to in writing, Licensor provides the Work (and each
-      Contributor provides its Contributions) on an "AS IS" BASIS,
-      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
-      implied, including, without limitation, any warranties or conditions
-      of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
-      PARTICULAR PURPOSE. You are solely responsible for determining the
-      appropriateness of using or redistributing the Work and assume any
-      risks associated with Your exercise of permissions under this License.
-
-   8. Limitation of Liability. In no event and under no legal theory,
-      whether in tort (including negligence), contract, or otherwise,
-      unless required by applicable law (such as deliberate and grossly
-      negligent acts) or agreed to in writing, shall any Contributor be
-      liable to You for damages, including any direct, indirect, special,
-      incidental, or consequential damages of any character arising as a
-      result of this License or out of the use or inability to use the
-      Work (including but not limited to damages for loss of goodwill,
-      work stoppage, computer failure or malfunction, or any and all
-      other commercial damages or losses), even if such Contributor
-      has been advised of the possibility of such damages.
-
-   9. Accepting Warranty or Additional Liability. While redistributing
-      the Work or Derivative Works thereof, You may choose to offer,
-      and charge a fee for, acceptance of support, warranty, indemnity,
-      or other liability obligations and/or rights consistent with this
-      License. However, in accepting such obligations, You may act only
-      on Your own behalf and on Your sole responsibility, not on behalf
-      of any other Contributor, and only if You agree to indemnify,
-      defend, and hold each Contributor harmless for any liability
-      incurred by, or claims asserted against, such Contributor by reason
-      of your accepting any such warranty or additional liability.
-
-   END OF TERMS AND CONDITIONS
-
-   APPENDIX: How to apply the Apache License to your work.
-
-      To apply the Apache License to your work, attach the following
-      boilerplate notice, with the fields enclosed by brackets "[]"
-      replaced with your own identifying information. (Don't include
-      the brackets!)  The text should be enclosed in the appropriate
-      comment syntax for the file format. We also recommend that a
-      file or class name and description of purpose be included on the
-      same "printed page" as the copyright notice for easier
-      identification within third-party archives.
-
-   Copyright [yyyy] [name of copyright owner]
-
-   Licensed 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.
-
-==
-
-For Jackson (http://wiki.fasterxml.com/JacksonHome):
-This is licensed under the AL 2.0, see above.
-
-==
-
-For JAX-B (http://jaxb.java.net/):
-This is licensed under the CDDL 1.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.
-
-Sun Microsystems, Inc. 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.
-
-==
-
-For javax.annotation-api (https://jcp.org/en/jsr/detail?id=250):
-This is licensed under the CDDL 1.0, see above.
-
-==
-
-For javax.ws.rs-api (https://jax-rs-spec.java.net/):
-This is licensed under the CDDL 1.0, see above.
-
-==
-
-For Joda Time (http://www.joda.org/joda-time/):
-This is licensed under the AL 2.0, see above.
-
-==
-
-For StAX2 API (http://wiki.fasterxml.com/WoodstoxStax2):
-This is licensed under the BSD license:
-
-Redistribution and use in source and binary forms, with or without 
-modification, are permitted provided that the following conditions are met:
-
-1. Redistributions of source code must retain the above copyright notice, this 
-list of conditions and the following disclaimer.
-
-2. Redistributions in binary form must reproduce the above copyright notice, 
-this list of conditions and the following disclaimer in the documentation 
-and/or other materials provided with the distribution.
-
-3. Neither the name of the copyright holder nor the names of its contributors 
-may be used to endorse or promote products derived from this software without 
-specific prior written permission.
-
-THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND 
-ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 
-WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE 
-DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE 
-FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 
-DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR 
-SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER 
-CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, 
-OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 
-OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-==
-
-For Woodstox (http://wiki.fasterxml.com/WoodstoxHome):
-This is licensed under the AL 2.0, see above.
-
-==
-
-For Simple Logging Facade for Java - SLF4J (http://www.slf4j.org/):
-This is licensed under the MIT license:
-
- Permission is hereby granted, free  of charge, to any person obtaining
- a  copy  of this  software  and  associated  documentation files  (the
- "Software"), to  deal in  the Software without  restriction, including
- without limitation  the rights to  use, copy, modify,  merge, publish,
- distribute,  sublicense, and/or sell  copies of  the Software,  and to
- permit persons to whom the Software  is furnished to do so, subject to
- the following conditions:
- 
- The  above  copyright  notice  and  this permission  notice  shall  be
- included in all copies or substantial portions of the Software.
- 
- THE  SOFTWARE IS  PROVIDED  "AS  IS", WITHOUT  WARRANTY  OF ANY  KIND,
- EXPRESS OR  IMPLIED, INCLUDING  BUT NOT LIMITED  TO THE  WARRANTIES OF
- MERCHANTABILITY,    FITNESS    FOR    A   PARTICULAR    PURPOSE    AND
- NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
- LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
- OF CONTRACT, TORT OR OTHERWISE,  ARISING FROM, OUT OF OR IN CONNECTION
- WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-==
-
-For Jsoup (https://jsoup.org/):
-This is licensed under the MIT license, see above.
-
-==
-
-For Eclipse Equinox (http://projects.eclipse.org/projects/rt.equinox):
-This is licensed under the EPL 1.0:
-
-Eclipse Public License - v 1.0
-
-THE ACCOMPANYING PROGRAM IS PROVIDED UNDER THE TERMS OF THIS ECLIPSE PUBLIC
-LICENSE ("AGREEMENT"). ANY USE, REPRODUCTION OR DISTRIBUTION OF THE PROGRAM
-CONSTITUTES RECIPIENT'S ACCEPTANCE OF THIS AGREEMENT.
-
-1. DEFINITIONS
-
-"Contribution" means:
-
-a) in the case of the initial Contributor, the initial code and documentation
-   distributed under this Agreement, and
-b) in the case of each subsequent Contributor:
-    i) changes to the Program, and
-   ii) additions to the Program;
-
-   where such changes and/or additions to the Program originate from and are
-   distributed by that particular Contributor. A Contribution 'originates'
-   from a Contributor if it was added to the Program by such Contributor
-   itself or anyone acting on such Contributor's behalf. Contributions do not
-   include additions to the Program which: (i) are separate modules of
-   software distributed in conjunction with the Program under their own
-   license agreement, and (ii) are not derivative works of the Program.
-
-"Contributor" means any person or entity that distributes the Program.
-
-"Licensed Patents" mean patent claims licensable by a Contributor which are
-necessarily infringed by the use or sale of its Contribution alone or when
-combined with the Program.
-
-"Program" means the Contributions distributed in accordance with this
-Agreement.
-
-"Recipient" means anyone who receives the Program under this Agreement,
-including all Contributors.
-
-2. GRANT OF RIGHTS
-  a) Subject to the terms of this Agreement, each Contributor hereby grants
-     Recipient a non-exclusive, worldwide, royalty-free copyright license to
-     reproduce, prepare derivative works of, publicly display, publicly
-     perform, distribute and sublicense the Contribution of such Contributor,
-     if any, and such derivative works, in source code and object code form.
-  b) Subject to the terms of this Agreement, each Contributor hereby grants
-     Recipient a non-exclusive, worldwide, royalty-free patent license under
-     Licensed Patents to make, use, sell, offer to sell, import and otherwise
-     transfer the Contribution of such Contributor, if any, in source code and
-     object code form. This patent license shall apply to the combination of
-     the Contribution and the Program if, at the time the Contribution is
-     added by the Contributor, such addition of the Contribution causes such
-     combination to be covered by the Licensed Patents. The patent license
-     shall not apply to any other combinations which include the Contribution.
-     No hardware per se is licensed hereunder.
-  c) Recipient understands that although each Contributor grants the licenses
-     to its Contributions set forth herein, no assurances are provided by any
-     Contributor that the Program does not infringe the patent or other
-     intellectual property rights of any other entity. Each Contributor
-     disclaims any liability to Recipient for claims brought by any other
-     entity based on infringement of intellectual property rights or
-     otherwise. As a condition to exercising the rights and licenses granted
-     hereunder, each Recipient hereby assumes sole responsibility to secure
-     any other intellectual property rights needed, if any. For example, if a
-     third party patent license is required to allow Recipient to distribute
-     the Program, it is Recipient's responsibility to acquire that license
-     before distributing the Program.
-  d) Each Contributor represents that to its knowledge it has sufficient
-     copyright rights in its Contribution, if any, to grant the copyright
-     license set forth in this Agreement.
-
-3. REQUIREMENTS
-
-A Contributor may choose to distribute the Program in object code form under
-its own license agreement, provided that:
-
-  a) it complies with the terms and conditions of this Agreement; and
-  b) its license agreement:
-      i) effectively disclaims on behalf of all Contributors all warranties
-         and conditions, express and implied, including warranties or
-         conditions of title and non-infringement, and implied warranties or
-         conditions of merchantability and fitness for a particular purpose;
-     ii) effectively excludes on behalf of all Contributors all liability for
-         damages, including direct, indirect, special, incidental and
-         consequential damages, such as lost profits;
-    iii) states that any provisions which differ from this Agreement are
-         offered by that Contributor alone and not by any other party; and
-     iv) states that source code for the Program is available from such
-         Contributor, and informs licensees how to obtain it in a reasonable
-         manner on or through a medium customarily used for software exchange.
-
-When the Program is made available in source code form:
-
-  a) it must be made available under this Agreement; and
-  b) a copy of this Agreement must be included with each copy of the Program.
-     Contributors may not remove or alter any copyright notices contained
-     within the Program.
-
-Each Contributor must identify itself as the originator of its Contribution,
-if
-any, in a manner that reasonably allows subsequent Recipients to identify the
-originator of the Contribution.
-
-4. COMMERCIAL DISTRIBUTION
-
-Commercial distributors of software may accept certain responsibilities with
-respect to end users, business partners and the like. While this license is
-intended to facilitate the commercial use of the Program, the Contributor who
-includes the Program in a commercial product offering should do so in a manner
-which does not create potential liability for other Contributors. Therefore,
-if a Contributor includes the Program in a commercial product offering, such
-Contributor ("Commercial Contributor") hereby agrees to defend and indemnify
-every other Contributor ("Indemnified Contributor") against any losses,
-damages and costs (collectively "Losses") arising from claims, lawsuits and
-other legal actions brought by a third party against the Indemnified
-Contributor to the extent caused by the acts or omissions of such Commercial
-Contributor in connection with its distribution of the Program in a commercial
-product offering. The obligations in this section do not apply to any claims
-or Losses relating to any actual or alleged intellectual property
-infringement. In order to qualify, an Indemnified Contributor must:
-a) promptly notify the Commercial Contributor in writing of such claim, and
-b) allow the Commercial Contributor to control, and cooperate with the
-Commercial Contributor in, the defense and any related settlement
-negotiations. The Indemnified Contributor may participate in any such claim at
-its own expense.
-
-For example, a Contributor might include the Program in a commercial product
-offering, Product X. That Contributor is then a Commercial Contributor. If
-that Commercial Contributor then makes performance claims, or offers
-warranties related to Product X, those performance claims and warranties are
-such Commercial Contributor's responsibility alone. Under this section, the
-Commercial Contributor would have to defend claims against the other
-Contributors related to those performance claims and warranties, and if a
-court requires any other Contributor to pay any damages as a result, the
-Commercial Contributor must pay those damages.
-
-5. NO WARRANTY
-
-EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, THE PROGRAM IS PROVIDED ON AN
-"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, EITHER EXPRESS OR
-IMPLIED INCLUDING, WITHOUT LIMITATION, ANY WARRANTIES OR CONDITIONS OF TITLE,
-NON-INFRINGEMENT, MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Each
-Recipient is solely responsible for determining the appropriateness of using
-and distributing the Program and assumes all risks associated with its
-exercise of rights under this Agreement , including but not limited to the
-risks and costs of program errors, compliance with applicable laws, damage to
-or loss of data, programs or equipment, and unavailability or interruption of
-operations.
-
-6. DISCLAIMER OF LIABILITY
-
-EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, NEITHER RECIPIENT NOR ANY
-CONTRIBUTORS SHALL HAVE ANY LIABILITY FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING WITHOUT LIMITATION
-LOST PROFITS), HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-ARISING IN ANY WAY OUT OF THE USE OR DISTRIBUTION OF THE PROGRAM OR THE
-EXERCISE OF ANY RIGHTS GRANTED HEREUNDER, EVEN IF ADVISED OF THE POSSIBILITY
-OF SUCH DAMAGES.
-
-7. GENERAL
-
-If any provision of this Agreement is invalid or unenforceable under
-applicable law, it shall not affect the validity or enforceability of the
-remainder of the terms of this Agreement, and without further action by the
-parties hereto, such provision shall be reformed to the minimum extent
-necessary to make such provision valid and enforceable.
-
-If Recipient institutes patent litigation against any entity (including a
-cross-claim or counterclaim in a lawsuit) alleging that the Program itself
-(excluding combinations of the Program with other software or hardware)
-infringes such Recipient's patent(s), then such Recipient's rights granted
-under Section 2(b) shall terminate as of the date such litigation is filed.
-
-All Recipient's rights under this Agreement shall terminate if it fails to
-comply with any of the material terms or conditions of this Agreement and does
-not cure such failure in a reasonable period of time after becoming aware of
-such noncompliance. If all Recipient's rights under this Agreement terminate,
-Recipient agrees to cease use and distribution of the Program as soon as
-reasonably practicable. However, Recipient's obligations under this Agreement
-and any licenses granted by Recipient relating to the Program shall continue
-and survive.
-
-Everyone is permitted to copy and distribute copies of this Agreement, but in
-order to avoid inconsistency the Agreement is copyrighted and may only be
-modified in the following manner. The Agreement Steward reserves the right to
-publish new versions (including revisions) of this Agreement from time to
-time. No one other than the Agreement Steward has the right to modify this
-Agreement. The Eclipse Foundation is the initial Agreement Steward. The
-Eclipse Foundation may assign the responsibility to serve as the Agreement
-Steward to a suitable separate entity. Each new version of the Agreement will
-be given a distinguishing version number. The Program (including
-Contributions) may always be distributed subject to the version of the
-Agreement under which it was received. In addition, after a new version of the
-Agreement is published, Contributor may elect to distribute the Program
-(including its Contributions) under the new version. Except as expressly
-stated in Sections 2(a) and 2(b) above, Recipient receives no rights or
-licenses to the intellectual property of any Contributor under this Agreement,
-whether expressly, by implication, estoppel or otherwise. All rights in the
-Program not expressly granted under this Agreement are reserved.
-
-This Agreement is governed by the laws of the State of New York and the
-intellectual property laws of the United States of America. No party to this
-Agreement will bring a legal action under this Agreement more than one year
-after the cause of action arose. Each party waives its rights to a jury trial in
-any resulting litigation.
-
-==
-
-For Eclipse e4 (https://www.eclipse.org/e4/):
-This is licensed under the EPL 1.0, see above.
-
-==
-
-For Eclipse EMF (https://projects.eclipse.org/projects/modeling.emf.emf):
-This is licensed under the EPL 1.0, see above.
-
-==
-
-For Eclipse SWT (https://projects.eclipse.org/projects/eclipse.platform.swt):
-This is licensed under the EPL 1.0, see above.
diff --git a/ide/eclipse/NOTICE b/ide/eclipse/NOTICE
deleted file mode 100644
index 046a22d..0000000
--- a/ide/eclipse/NOTICE
+++ /dev/null
@@ -1,80 +0,0 @@
-Apache Syncope
-Copyright 2012-2019 The Apache Software Foundation
-
-This product includes software developed by:
-The Apache Software Foundation (http://www.apache.org/).
-
-The following copyright notice(s) were affixed to portions of this code
-with which this file is now or was at one time distributed.
-
-==
-
-This product includes software developed by the Jackson project.
-
-==
-
-This product includes software developed by the JAXB project.
-Copyright (c) 2013-2017 The JAXB project.
-
-==
-
-This product includs software developed by Oracle.
-Copyright (c) 2012-2013 Oracle and/or its affiliates. All rights reserved.
-
-==
-
-This product includes software developed by the JAX-RS project.
-Copyright (c) 2014, Oracle Corporation and/or its affiliates. All rights reserved.
-
-==
-
-This product includes software developed by the Joda Time project.
-Copyright (c) 2002-2017 Joda.org. All Rights Reserved.
-
-==
-
-This product includes software developed by the Stax 2 Extension API Project.
-
-==
-
-This product includes software developed by the Woodstox Project.
-
-==
-
-This products includes software developed by the Simple Logging Facade for Java (SLF4J) project.
-Copyright (c) 2004-2017 QOS.ch.
-
-==
-
-This product includes software developed by the Web Services Description Language for Java project.
-Copyright (c) Dice.
-All Rights Reserved.
-
-==
-
-This product includes software developed by the Eclipse Equinox project.
-Copyright (c) 2017 The Eclipse Foundation.
-All Rights Reserved.
-
-==
-
-This product includes software developed by the Eclipse e4 project.
-Copyright (c) 2017 The Eclipse Foundation.
-All Rights Reserved.
-
-==
-
-This product includes software developed by the Eclipse EMF project.
-Copyright (c) 2017 The Eclipse Foundation.
-All Rights Reserved
-
-==
-
-This product includes software developed by the Eclipse SWT project.
-Copyright (c) 2017 The Eclipse Foundation.
-All Rights Reserved.
-
-==
-
-This product includes software developed by the Jsoup project.
-Copyright (c) 2009 - 2017 Jonathan Hedley (jonathan@hedley.net)
diff --git a/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/META-INF/MANIFEST.MF b/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/META-INF/MANIFEST.MF
deleted file mode 100644
index 0a56a07..0000000
--- a/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,44 +0,0 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: Apache Syncope Eclipse Plugin
-Bundle-SymbolicName: org.apache.syncope.ide.eclipse.plugin;singleton:=true
-Bundle-Version: 3.0.0.qualifier
-Bundle-Activator: org.apache.syncope.ide.eclipse.plugin.Activator
-Require-Bundle: org.eclipse.ui,
-      org.eclipse.core.runtime,
-      org.eclipse.jface.text,
-      org.eclipse.core.resources,
-      org.eclipse.ui.ide,
-      org.eclipse.wst.sse.ui;bundle-version="1.3.401"
-Bundle-RequiredExecutionEnvironment: JavaSE-1.7
-Bundle-ActivationPolicy: lazy
-Bundle-ClassPath: lib/commons-codec.jar,
-      lib/commons-collections4.jar,
-      lib/commons-lang3.jar,
-      lib/cxf-core.jar,
-      lib/cxf-rt-features-logging.jar,
-      lib/cxf-rt-frontend-jaxrs.jar,
-      lib/cxf-rt-rs-client.jar,
-      lib/cxf-rt-rs-extension-search.jar,
-      lib/cxf-rt-transports-http.jar,
-      lib/jackson-annotations.jar,
-      lib/jackson-core.jar,
-      lib/jackson-databind.jar,
-      lib/jackson-datatype-joda.jar,
-      lib/jackson-jaxrs-base.jar,
-      lib/jackson-jaxrs-json-provider.jar,
-      lib/jackson-module-jaxb-annotations.jar,
-      lib/javax.annotation-api.jar,
-      lib/javax.ws.rs-api.jar,
-      lib/joda-time.jar,
-      lib/log4j-api.jar,
-      lib/slf4j-api.jar,
-      lib/stax2-api.jar,
-      lib/syncope-client-lib.jar,
-      lib/syncope-common-lib.jar,
-      lib/syncope-common-rest-api.jar,
-      lib/validation-api.jar,
-      lib/woodstox-core.jar,
-      lib/xmlschema-core.jar,
-      lib/jsoup.jar,
-      .
diff --git a/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/build.properties b/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/build.properties
deleted file mode 100644
index d1c7f7f..0000000
--- a/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/build.properties
+++ /dev/null
@@ -1,52 +0,0 @@
-#
-# 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.
-#
-source.. = src/main/java/,\
-src/main/resources
-output.. = bin/
-bin.includes = plugin.xml,\
-      META-INF/,\
-      .,\
-      src/main/resources/icons/,\
-      lib/commons-lang3.jar,\
-      lib/cxf-core.jar,\
-      lib/cxf-rt-features-logging.jar,\
-      lib/cxf-rt-frontend-jaxrs.jar,\
-      lib/cxf-rt-rs-client.jar,\
-      lib/cxf-rt-rs-extension-search.jar,\
-      lib/cxf-rt-transports-http.jar,\
-      lib/jackson-annotations.jar,\
-      lib/jackson-core.jar,\
-      lib/jackson-databind.jar,\
-      lib/jackson-datatype-joda.jar,\
-      lib/jackson-jaxrs-base.jar,\
-      lib/jackson-jaxrs-json-provider.jar,\
-      lib/jackson-module-jaxb-annotations.jar,\
-      lib/javax.annotation-api.jar,\
-      lib/javax.ws.rs-api.jar,\
-      lib/joda-time.jar,\
-      lib/log4j-api.jar,\
-      lib/slf4j-api.jar,\
-      lib/stax2-api.jar,\
-      lib/syncope-client-lib.jar,\
-      lib/syncope-common-lib.jar,\
-      lib/syncope-common-rest-api.jar,\
-      lib/validation-api.jar,\
-      lib/woodstox-core.jar,\
-      lib/xmlschema-core.jar,\
-      lib/jsoup.jar
diff --git a/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/plugin.xml b/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/plugin.xml
deleted file mode 100644
index cd0bcf1..0000000
--- a/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/plugin.xml
+++ /dev/null
@@ -1,67 +0,0 @@
-<?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.
--->
-<?eclipse version="3.4"?>
-<plugin>
-
-   <extension
-         point="org.eclipse.ui.views">
-      <category
-            name="Apache Syncope"
-            id="org.apache.syncope.ide.eclipse.plugin">
-      </category>
-      <view
-            name="Apache Syncope Templates"
-            icon="src/main/resources/icons/syncope.png"
-            category="org.apache.syncope.ide.eclipse.plugin"
-            class="org.apache.syncope.ide.eclipse.plugin.views.SyncopeView"
-            id="org.apache.syncope.ide.eclipse.plugin.views.SyncopeView">
-      </view>
-   </extension>
-   <extension
-         point="org.eclipse.ui.perspectiveExtensions">
-      <perspectiveExtension
-            targetID="org.eclipse.jdt.ui.JavaPerspective">
-         <view
-               ratio="0.5"
-               relative="org.eclipse.ui.views.ProblemView"
-               relationship="right"
-               id="org.apache.syncope.ide.eclipse.plugin.views.SyncopeView">
-         </view>
-      </perspectiveExtension>
-   </extension>
-   <extension
-         point="org.eclipse.help.contexts">
-      <contexts
-            file="contexts.xml">
-      </contexts>
-   </extension>
-   <extension point="org.eclipse.ui.editors">
-   	<editor id="org.apache.syncope.ide.eclipse.plugin.editors.TemplateEditor"
-         name="Template Editor"
-         icon="src/main/resources/icons/syncope.png"
-         class="org.apache.syncope.ide.eclipse.plugin.editors.TemplateEditor"
-      />
-    <editor id="org.apache.syncope.ide.eclipse.plugin.editors.HTMLEditor"
-         name="HTML Editor"
-         icon="src/main/resources/icons/syncope.png"
-         class="org.apache.syncope.ide.eclipse.plugin.editors.HTMLEditor"
-      />
-   </extension>
-</plugin>
diff --git a/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/pom.xml b/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/pom.xml
deleted file mode 100644
index 8d9be20..0000000
--- a/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/pom.xml
+++ /dev/null
@@ -1,133 +0,0 @@
-<?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.
--->
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
-
-  <modelVersion>4.0.0</modelVersion>
-
-  <parent>
-    <groupId>org.apache.syncope.ide</groupId>
-    <artifactId>syncope-ide-eclipse</artifactId>
-    <version>3.0.0-SNAPSHOT</version>
-    <relativePath>../../</relativePath>
-  </parent>
-
-  <name>Apache Syncope IDE Eclipse Plugin</name>
-  <description>Apache Syncope IDE Eclipse Plugin</description>
-  <groupId>org.apache.syncope.ide.eclipse</groupId>
-  <artifactId>org.apache.syncope.ide.eclipse.plugin</artifactId>
-  <packaging>eclipse-plugin</packaging>
-
-  <dependencies>
-    <dependency>
-      <groupId>org.apache.syncope.client.idm</groupId>
-      <artifactId>syncope-client-idm-lib</artifactId>
-      <version>${project.version}</version>
-    </dependency>
-    <dependency>
-      <groupId>org.jsoup</groupId>
-      <artifactId>jsoup</artifactId>
-      <version>1.9.2</version>
-    </dependency>
-  </dependencies>
-  
-  <properties>
-    <rootpom.basedir>${basedir}/../../../..</rootpom.basedir>
-  </properties>
-
-  <build>
-    <outputDirectory>./bin</outputDirectory>
-
-    <plugins>
-      <plugin>
-        <groupId>org.apache.maven.plugins</groupId>
-        <artifactId>maven-dependency-plugin</artifactId>
-        <executions>
-          <execution>
-            <id>copy-libraries</id>
-            <phase>validate</phase>
-            <goals>
-              <goal>copy-dependencies</goal>
-            </goals>
-            <configuration>
-              <outputDirectory>lib</outputDirectory>
-              <overWriteReleases>true</overWriteReleases>
-              <overWriteSnapshots>true</overWriteSnapshots>
-              <stripVersion>true</stripVersion>
-            </configuration>
-          </execution>
-        </executions>
-      </plugin>
-    </plugins>
-  </build>
-  
-  <profiles>
-    <profile>
-      <id>site</id>
-
-      <build>
-        <plugins>
-          <plugin>
-            <groupId>org.apache.maven.plugins</groupId>
-            <artifactId>maven-dependency-plugin</artifactId>
-            <executions>
-              <execution>
-                <id>copy-libraries</id>
-                <phase>package</phase>
-                <goals>
-                  <goal>copy-dependencies</goal>
-                </goals>
-                <configuration>
-                  <outputDirectory>lib</outputDirectory>
-                  <overWriteReleases>true</overWriteReleases>
-                  <overWriteSnapshots>true</overWriteSnapshots>
-                  <stripVersion>true</stripVersion>
-                </configuration>
-              </execution>
-            </executions>
-          </plugin>
-        </plugins>
-      </build>
-    </profile>
-
-    <profile>
-      <id>apache-release</id>
-
-      <build>
-        <plugins>
-          <plugin>
-            <groupId>org.apache.maven.plugins</groupId>
-            <artifactId>maven-deploy-plugin</artifactId>
-            <configuration>
-              <skip>true</skip>
-            </configuration>
-          </plugin>
-          <plugin>
-            <groupId>org.apache.maven.plugins</groupId>
-            <artifactId>maven-source-plugin</artifactId>
-            <inherited>false</inherited>
-            <configuration>
-              <skipSource>true</skipSource>
-            </configuration>
-          </plugin>
-        </plugins>
-      </build>
-    </profile>
-  </profiles>
-</project>
diff --git a/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/Activator.java b/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/Activator.java
deleted file mode 100644
index 3c78737..0000000
--- a/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/Activator.java
+++ /dev/null
@@ -1,47 +0,0 @@
-/*
- * 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.
- */
-package org.apache.syncope.ide.eclipse.plugin;
-
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.ui.plugin.AbstractUIPlugin;
-import org.osgi.framework.BundleContext;
-
-public class Activator extends AbstractUIPlugin {
-
-    public static final String PLUGIN_ID = "org.apache.syncope.ide.eclipse.plugin";
-    private static Activator PLUGIN;
-
-    public void start(final BundleContext context) throws Exception {
-        super.start(context);
-        PLUGIN = this;
-    }
-
-    public void stop(final BundleContext context) throws Exception {
-        PLUGIN = null;
-        super.stop(context);
-    }
-
-    public static Activator getDefault() {
-        return PLUGIN;
-    }
-
-    public static ImageDescriptor getImageDescriptor(final String path) {
-        return imageDescriptorFromPlugin(PLUGIN_ID, path);
-    }
-}
diff --git a/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/dialogs/AddTemplateDialog.java b/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/dialogs/AddTemplateDialog.java
deleted file mode 100644
index 9bedcfd..0000000
--- a/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/dialogs/AddTemplateDialog.java
+++ /dev/null
@@ -1,97 +0,0 @@
-/*
- * 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.
- */
-package org.apache.syncope.ide.eclipse.plugin.dialogs;
-
-import org.eclipse.jface.dialogs.IDialogConstants;
-import org.eclipse.jface.dialogs.TitleAreaDialog;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.swt.widgets.Text;
-
-public class AddTemplateDialog extends TitleAreaDialog {
-    
-    private Text key;
-    private String keyString;
-
-    public AddTemplateDialog(final Shell parentShell) {
-        super(parentShell);
-        keyString = "";
-    }
-
-    @Override
-    public void create() {
-        super.create();
-        setTitle("Add Template");
-    }
-
-    @Override
-    protected void createButtonsForButtonBar(final Composite parent) {
-        createButton(parent, IDialogConstants.OK_ID, "Add", true);
-        createButton(parent, IDialogConstants.CANCEL_ID, IDialogConstants.CANCEL_LABEL, false);
-    }
-
-    @Override
-    protected Control createDialogArea(final Composite parent) {
-        Composite area = (Composite) super.createDialogArea(parent);
-        Composite container = new Composite(area, SWT.NONE);
-        container.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
-        GridLayout layout = new GridLayout(2, false);
-        container.setLayout(layout);
-        createKeyField(container);
-        return area;
-    }
-
-    private void createKeyField(final Composite container) {
-        Label keyLabel = new Label(container, SWT.NONE);
-        keyLabel.setText("Key");
-        GridData keyGD = new GridData();
-        keyGD.grabExcessHorizontalSpace = true;
-        keyGD.horizontalAlignment = GridData.FILL;
-        key = new Text(container, SWT.BORDER);
-        key.setLayoutData(keyGD);
-    }
-
-    @Override
-    protected boolean isResizable() {
-        return true;
-    }
-
-    // save content of the Text fields because they get disposed
-    // as soon as the Dialog closes
-    private void saveInput() {
-        keyString = key.getText();
-    }
-
-    @Override
-    protected void okPressed() {
-        saveInput();
-        setReturnCode(200);
-        super.okPressed();
-    }
-
-    public String getKey() {
-        return keyString;
-    }
-
-}
diff --git a/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/dialogs/LoginDialog.java b/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/dialogs/LoginDialog.java
deleted file mode 100644
index f59bf11..0000000
--- a/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/dialogs/LoginDialog.java
+++ /dev/null
@@ -1,186 +0,0 @@
-/*
- * 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.
- */
-package org.apache.syncope.ide.eclipse.plugin.dialogs;
-
-import org.eclipse.core.runtime.preferences.ConfigurationScope;
-import org.eclipse.core.runtime.preferences.InstanceScope;
-import org.eclipse.jface.dialogs.IDialogConstants;
-import org.eclipse.jface.dialogs.TitleAreaDialog;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.SelectionAdapter;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.swt.widgets.Text;
-import org.osgi.service.prefs.BackingStoreException;
-import org.osgi.service.prefs.Preferences;
-
-public class LoginDialog extends TitleAreaDialog {
-    private Text deploymentUrlInp;
-    private Text usernameInp;
-    private Text passwordInp;
-    private String deploymentUrl;
-    private String username;
-    private String password;
-    private Button resetbutton;
-    private Preferences instancePreferences = InstanceScope.INSTANCE
-            .getNode("org.apache.syncope.ide.eclipse.plugin.dialogs.prefs");
-    private Preferences configPreferences = ConfigurationScope.INSTANCE
-            .getNode("org.apache.syncope.ide.eclipse.plugin.dialogs.prefs");
-    private Preferences sub1 = configPreferences.node("depPref");
-    private Preferences sub2 = instancePreferences.node("userPref");
-
-    public LoginDialog(final Shell parentShell) {
-        super(parentShell);
-    }
-
-    @Override
-    public void create() {
-        super.create();
-        setTitle("Login to Apache Syncope");
-    }
-
-    @Override
-    protected void createButtonsForButtonBar(final Composite parent) {
-        createButton(parent, IDialogConstants.OK_ID, "Login", true);
-        createButton(parent, IDialogConstants.CANCEL_ID, IDialogConstants.CANCEL_LABEL, false);
-        resetbutton = createButton(parent, IDialogConstants.NO_ID, "Reset Fields", false);
-        resetbutton.addSelectionListener(new SelectionAdapter() {
-            @Override
-            public void widgetSelected(final SelectionEvent e) {
-                deploymentUrlInp.setText("");
-                usernameInp.setText("");
-                passwordInp.setText("");
-
-                // add to preferences
-                saveInput();
-            }
-        });
-    }
-
-    @Override
-    protected Control createDialogArea(final Composite parent) {
-        Composite area = (Composite) super.createDialogArea(parent);
-        Composite container = new Composite(area, SWT.NONE);
-        container.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
-        GridLayout layout = new GridLayout(2, false);
-        container.setLayout(layout);
-
-        createDeploymentUrl(container);
-        createUsername(container);
-        createPassword(container);
-
-        return area;
-    }
-
-    private void createDeploymentUrl(final Composite container) {
-        Label lbtDeploymentUrl = new Label(container, SWT.NONE);
-        lbtDeploymentUrl.setText("Deployment Url");
-
-        GridData dataDeploymentUrl = new GridData();
-        dataDeploymentUrl.grabExcessHorizontalSpace = true;
-        dataDeploymentUrl.horizontalAlignment = GridData.FILL;
-        deploymentUrlInp = new Text(container, SWT.BORDER);
-        deploymentUrlInp.setLayoutData(dataDeploymentUrl);
-        String depurl = sub1.get("deploymentUrl", "http://");
-        if (depurl != null) {
-            deploymentUrlInp.setText(depurl);
-        }
-    }
-
-    private void createUsername(final Composite container) {
-        Label lbtUsername = new Label(container, SWT.NONE);
-        lbtUsername.setText("Username");
-
-        GridData dataUsername = new GridData();
-        dataUsername.grabExcessHorizontalSpace = true;
-        dataUsername.horizontalAlignment = GridData.FILL;
-        usernameInp = new Text(container, SWT.BORDER);
-        usernameInp.setLayoutData(dataUsername);
-        String usernameString = sub2.get("username", "");
-        if (usernameString != null) {
-            usernameInp.setText(usernameString);
-        }
-    }
-
-    private void createPassword(final Composite container) {
-        Label lbtPassword = new Label(container, SWT.NONE);
-        lbtPassword.setText("Password");
-
-        GridData dataPassword = new GridData();
-        dataPassword.grabExcessHorizontalSpace = true;
-        dataPassword.horizontalAlignment = GridData.FILL;
-        passwordInp = new Text(container, SWT.BORDER | SWT.PASSWORD);
-        passwordInp.setLayoutData(dataPassword);
-        String passwordString = sub2.get("password", "");
-        if (passwordString != null) {
-            passwordInp.setText(passwordString);
-        }
-    }
-
-    @Override
-    protected boolean isResizable() {
-        return true;
-    }
-
-    // save content of the Text fields because they get disposed
-    // as soon as the Dialog closes
-    private void saveInput() {
-        deploymentUrl = deploymentUrlInp.getText();
-        username = usernameInp.getText();
-        password = passwordInp.getText();
-
-        // add data to preferences for repopulation later
-        sub1.put("deploymentUrl", deploymentUrl);
-        sub2.put("username", username);
-        sub2.put("password", password);
-
-        try {
-            instancePreferences.flush();
-            configPreferences.flush();
-        } catch (final BackingStoreException e) {
-            e.printStackTrace();
-        }
-    }
-
-    @Override
-    protected void okPressed() {
-        saveInput();
-        setReturnCode(200);
-        super.okPressed();
-    }
-
-    public String getDeploymentUrl() {
-        return deploymentUrl;
-    }
-
-    public String getPassword() {
-        return password;
-    }
-
-    public String getUsername() {
-        return username;
-    }
-
-}
diff --git a/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/editors/HTMLEditor.java b/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/editors/HTMLEditor.java
deleted file mode 100644
index e2e3fd8..0000000
--- a/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/editors/HTMLEditor.java
+++ /dev/null
@@ -1,61 +0,0 @@
-/*
- * 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.
- */
-package org.apache.syncope.ide.eclipse.plugin.editors;
-
-import java.util.ResourceBundle;
-
-import org.apache.syncope.ide.eclipse.plugin.editors.htmlhelpers.AutoIndentAction;
-import org.apache.syncope.ide.eclipse.plugin.editors.htmlhelpers.HTMLFileDocumentProvider;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.action.IMenuManager;
-import org.eclipse.ui.IEditorInput;
-import org.eclipse.ui.editors.text.TextEditor;
-import org.eclipse.ui.texteditor.ITextEditorActionConstants;
-import org.eclipse.ui.texteditor.TextEditorAction;
-
-public class HTMLEditor extends TextEditor {
-    
-    private static final String RESOURCE_BUNDLE = "HTMLEditor";
-            
-    public HTMLEditor() {
-        super();
-        setSourceViewerConfiguration(new HTMLSourceConfiguration());
-    }
-
-    @Override
-    protected final void doSetInput(final IEditorInput input) throws CoreException {
-        setDocumentProvider(new HTMLFileDocumentProvider());
-        super.doSetInput(input);
-    }
-
-    @Override
-    protected void editorContextMenuAboutToShow(final IMenuManager menu) {
-        super.editorContextMenuAboutToShow(menu);
-        addAction(menu, ITextEditorActionConstants.GROUP_EDIT, "AutoIndent");
-    }
-
-    @Override
-    protected void createActions() {
-        super.createActions();
-        IAction a = (TextEditorAction) new AutoIndentAction(
-                ResourceBundle.getBundle(RESOURCE_BUNDLE), "AutoIndent", null);
-        setAction("AutoIndent", a);
-    }
-}
diff --git a/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/editors/HTMLSourceConfiguration.java b/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/editors/HTMLSourceConfiguration.java
deleted file mode 100644
index 32bfde7..0000000
--- a/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/editors/HTMLSourceConfiguration.java
+++ /dev/null
@@ -1,251 +0,0 @@
-/*
- * 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.
- */
-package org.apache.syncope.ide.eclipse.plugin.editors;
-
-import org.apache.syncope.ide.eclipse.plugin.editors.htmlhelpers.HTMLAutoEditStrategy;
-import org.apache.syncope.ide.eclipse.plugin.editors.htmlhelpers.HTMLCompletionProcessor;
-import org.apache.syncope.ide.eclipse.plugin.editors.htmlhelpers.HTMLPartitionScanner;
-import org.apache.syncope.ide.eclipse.plugin.editors.htmlhelpers.HTMLScanner;
-import org.apache.syncope.ide.eclipse.plugin.editors.htmlhelpers.HTMLTagDamagerRepairer;
-import org.apache.syncope.ide.eclipse.plugin.editors.htmlhelpers.HTMLTagScanner;
-import org.apache.syncope.ide.eclipse.plugin.editors.htmlhelpers.IHTMLColorConstants;
-import org.apache.syncope.ide.eclipse.plugin.editors.htmlhelpers.InnerCSSScanner;
-import org.apache.syncope.ide.eclipse.plugin.editors.htmlhelpers.InnerJavaScriptScanner;
-import org.apache.syncope.ide.eclipse.plugin.editors.htmlhelpers.JavaScriptDamagerRepairer;
-import org.apache.syncope.ide.eclipse.plugin.editors.htmlhelpers.SyncopeTagScanner;
-import org.eclipse.jface.text.IAutoEditStrategy;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.jface.text.TextAttribute;
-import org.eclipse.jface.text.contentassist.ContentAssistant;
-import org.eclipse.jface.text.contentassist.IContentAssistant;
-import org.eclipse.jface.text.presentation.IPresentationReconciler;
-import org.eclipse.jface.text.presentation.PresentationReconciler;
-import org.eclipse.jface.text.rules.DefaultDamagerRepairer;
-import org.eclipse.jface.text.rules.RuleBasedScanner;
-import org.eclipse.jface.text.rules.Token;
-import org.eclipse.jface.text.source.ISourceViewer;
-import org.eclipse.swt.graphics.Color;
-import org.eclipse.swt.graphics.RGB;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.ui.editors.text.TextSourceViewerConfiguration;
-
-public class HTMLSourceConfiguration extends TextSourceViewerConfiguration {
-
-    private HTMLTagScanner tagScanner;
-    private SyncopeTagScanner syncopeTagScanner;
-    private HTMLScanner scanner;
-    private RuleBasedScanner commentScanner;
-    private RuleBasedScanner scriptScanner;
-    private RuleBasedScanner doctypeScanner;
-    private RuleBasedScanner directiveScanner;
-    private RuleBasedScanner javaScriptScanner;
-    private RuleBasedScanner cssScanner;
-    private ContentAssistant contentAssistant;
-    private HTMLAutoEditStrategy autoEditStrategy;
-
-    public HTMLSourceConfiguration() {
-        contentAssistant = new ContentAssistant();
-        HTMLCompletionProcessor proc = new HTMLCompletionProcessor();
-        proc.setAutoAssistChars("</\"".toCharArray());
-        proc.setAssistCloseTag(true);
-
-        contentAssistant.setContentAssistProcessor(proc, IDocument.DEFAULT_CONTENT_TYPE);
-        contentAssistant.setContentAssistProcessor(proc, IDocument.DEFAULT_CONTENT_TYPE);
-        contentAssistant.setContentAssistProcessor(proc, HTMLPartitionScanner.HTML_TAG);
-        contentAssistant.setContentAssistProcessor(proc, HTMLPartitionScanner.PREFIX_TAG);
-
-        contentAssistant.enableAutoActivation(true);
-        contentAssistant.setContextInformationPopupOrientation(IContentAssistant.CONTEXT_INFO_ABOVE);
-    }
-
-    protected HTMLAutoEditStrategy createAutoEditStrategy() {
-        return new HTMLAutoEditStrategy();
-    }
-
-    public final HTMLAutoEditStrategy getAutoEditStrategy() {
-        if (this.autoEditStrategy == null) {
-            this.autoEditStrategy = createAutoEditStrategy();
-        }
-        return this.autoEditStrategy;
-    }
-
-    public final IAutoEditStrategy[] getAutoEditStrategies(final ISourceViewer sourceViewer,
-            final String contentType) {
-        return new IAutoEditStrategy[]{ getAutoEditStrategy() };
-    }
-
-    @Override
-    public IContentAssistant getContentAssistant(final ISourceViewer sourceViewer) {
-
-            contentAssistant.setInformationControlCreator(getInformationControlCreator(sourceViewer));
-            return contentAssistant;
-    }
-
-    protected HTMLTagScanner getTagScanner() {
-        if (tagScanner == null) {
-            tagScanner = new HTMLTagScanner(false);
-            RGB rgb = IHTMLColorConstants.TAG;
-            Color color = new Color(Display.getCurrent(), rgb);
-            tagScanner.setDefaultReturnToken(new Token(new TextAttribute(color)));
-        }
-        return tagScanner;
-    }
-
-    protected SyncopeTagScanner getSyncopeTagScanner() {
-        if (syncopeTagScanner == null) {
-            syncopeTagScanner = new SyncopeTagScanner(false);
-            RGB rgb = IHTMLColorConstants.HTML_COMMENT;
-            Color color = new Color(Display.getCurrent(), rgb);
-            syncopeTagScanner.setDefaultReturnToken(new Token(new TextAttribute(color)));
-        }
-        return syncopeTagScanner;
-    }
-
-    protected HTMLScanner getHTMLScanner() {
-        if (scanner == null) {
-            scanner = new HTMLScanner();
-            RGB rgb = IHTMLColorConstants.FOREGROUND;
-            Color color = new Color(Display.getCurrent(), rgb);
-            scanner.setDefaultReturnToken(new Token(new TextAttribute(color)));
-        }
-        return scanner;
-    }
-
-    protected RuleBasedScanner getCommentScanner() {
-        if (commentScanner == null) {
-            commentScanner = new RuleBasedScanner();
-            RGB rgb = IHTMLColorConstants.HTML_COMMENT;
-            Color color = new Color(Display.getCurrent(), rgb);
-            commentScanner.setDefaultReturnToken(new Token(new TextAttribute(color)));
-        }
-        return commentScanner;
-    }
-
-    protected RuleBasedScanner getScriptScanner() {
-        if (scriptScanner == null) {
-            scriptScanner = new RuleBasedScanner();
-            RGB rgb = IHTMLColorConstants.SCRIPT;
-            Color color = new Color(Display.getCurrent(), rgb);
-            scriptScanner.setDefaultReturnToken(new Token(new TextAttribute(color)));
-        }
-        return scriptScanner;
-    }
-
-    protected RuleBasedScanner getDoctypeScanner() {
-        if (doctypeScanner == null) {
-            doctypeScanner = new RuleBasedScanner();
-            RGB rgb = IHTMLColorConstants.PROC_INSTR;
-            Color color = new Color(Display.getCurrent(), rgb);
-            doctypeScanner.setDefaultReturnToken(new Token(new TextAttribute(color)));
-        }
-        return doctypeScanner;
-    }
-
-    protected RuleBasedScanner getDirectiveScanner() {
-        if (directiveScanner == null) {
-            directiveScanner = new RuleBasedScanner();
-            RGB rgb = IHTMLColorConstants.SCRIPT;
-            Color color = new Color(Display.getCurrent(), rgb);
-            directiveScanner.setDefaultReturnToken(new Token(new TextAttribute(color)));
-        }
-        return directiveScanner;
-    }
-
-    protected RuleBasedScanner getJavaScriptScanner() {
-        if (javaScriptScanner == null) {
-            javaScriptScanner = new InnerJavaScriptScanner();
-            RGB rgb = IHTMLColorConstants.FOREGROUND;
-            Color color = new Color(Display.getCurrent(), rgb);
-            javaScriptScanner.setDefaultReturnToken(new Token(new TextAttribute(color)));
-        }
-        return javaScriptScanner;
-    }
-
-    protected RuleBasedScanner getCSSScanner() {
-        if (cssScanner == null) {
-            cssScanner = new InnerCSSScanner();
-            RGB rgb = IHTMLColorConstants.FOREGROUND;
-            Color color = new Color(Display.getCurrent(), rgb);
-            cssScanner.setDefaultReturnToken(new Token(new TextAttribute(color)));
-        }
-        return cssScanner;
-    }
-
-    @Override
-    public IPresentationReconciler getPresentationReconciler(final ISourceViewer sourceViewer) {
-        PresentationReconciler reconciler = new PresentationReconciler();
-        DefaultDamagerRepairer dr = null;
-
-        dr = new HTMLTagDamagerRepairer(getTagScanner());
-        reconciler.setDamager(dr, HTMLPartitionScanner.HTML_TAG);
-        reconciler.setRepairer(dr, HTMLPartitionScanner.HTML_TAG);
-
-        dr = new HTMLTagDamagerRepairer(getTagScanner());
-        reconciler.setDamager(dr, HTMLPartitionScanner.PREFIX_TAG);
-        reconciler.setRepairer(dr, HTMLPartitionScanner.PREFIX_TAG);
-
-        dr = new HTMLTagDamagerRepairer(getSyncopeTagScanner());
-        reconciler.setDamager(dr, HTMLPartitionScanner.SYNCOPE_TAG);
-        reconciler.setRepairer(dr, HTMLPartitionScanner.SYNCOPE_TAG);
-
-        dr = new HTMLTagDamagerRepairer(getHTMLScanner());
-        reconciler.setDamager(dr, IDocument.DEFAULT_CONTENT_TYPE);
-        reconciler.setRepairer(dr, IDocument.DEFAULT_CONTENT_TYPE);
-
-        dr = new HTMLTagDamagerRepairer(getCommentScanner());
-        reconciler.setDamager(dr, HTMLPartitionScanner.HTML_COMMENT);
-        reconciler.setRepairer(dr, HTMLPartitionScanner.HTML_COMMENT);
-
-        dr = new DefaultDamagerRepairer(getScriptScanner());
-        reconciler.setDamager(dr, HTMLPartitionScanner.HTML_SCRIPT);
-        reconciler.setRepairer(dr, HTMLPartitionScanner.HTML_SCRIPT);
-
-        dr = new DefaultDamagerRepairer(getDoctypeScanner());
-        reconciler.setDamager(dr, HTMLPartitionScanner.HTML_DOCTYPE);
-        reconciler.setRepairer(dr, HTMLPartitionScanner.HTML_DOCTYPE);
-
-        dr = new DefaultDamagerRepairer(getDirectiveScanner());
-        reconciler.setDamager(dr, HTMLPartitionScanner.HTML_DIRECTIVE);
-        reconciler.setRepairer(dr, HTMLPartitionScanner.HTML_DIRECTIVE);
-
-        dr = new JavaScriptDamagerRepairer(getJavaScriptScanner());
-        reconciler.setDamager(dr, HTMLPartitionScanner.JAVASCRIPT);
-        reconciler.setRepairer(dr, HTMLPartitionScanner.JAVASCRIPT);
-
-        dr = new JavaScriptDamagerRepairer(getCSSScanner());
-        reconciler.setDamager(dr, HTMLPartitionScanner.HTML_CSS);
-        reconciler.setRepairer(dr, HTMLPartitionScanner.HTML_CSS);
-
-        return reconciler;
-    }
-
-    public String[] getConfiguredContentTypes(final ISourceViewer sourceViewer) {
-        return new String[] {
-            IDocument.DEFAULT_CONTENT_TYPE,
-            HTMLPartitionScanner.HTML_COMMENT,
-            HTMLPartitionScanner.HTML_TAG,
-            HTMLPartitionScanner.PREFIX_TAG,
-            HTMLPartitionScanner.HTML_SCRIPT,
-            HTMLPartitionScanner.HTML_DOCTYPE,
-            HTMLPartitionScanner.HTML_DIRECTIVE,
-            HTMLPartitionScanner.JAVASCRIPT,
-            HTMLPartitionScanner.HTML_CSS,
-            HTMLPartitionScanner.SYNCOPE_TAG};
-    }
-}
diff --git a/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/editors/TemplateEditor.java b/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/editors/TemplateEditor.java
deleted file mode 100644
index 5b0ba38..0000000
--- a/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/editors/TemplateEditor.java
+++ /dev/null
@@ -1,205 +0,0 @@
-/*
- * 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.
- */
-package org.apache.syncope.ide.eclipse.plugin.editors;
-
-import org.apache.syncope.common.lib.SyncopeClientException;
-import org.apache.syncope.common.lib.types.ClientExceptionType;
-import org.apache.syncope.common.lib.types.MailTemplateFormat;
-import org.apache.syncope.common.lib.types.ReportTemplateFormat;
-import org.apache.syncope.ide.eclipse.plugin.Activator;
-import org.apache.syncope.ide.eclipse.plugin.views.SyncopeView;
-import org.eclipse.core.resources.IMarker;
-import org.eclipse.core.resources.IResourceChangeEvent;
-import org.eclipse.core.resources.IResourceChangeListener;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.jobs.Job;
-import org.eclipse.jface.dialogs.ErrorDialog;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.ui.IEditorInput;
-import org.eclipse.ui.IEditorPart;
-import org.eclipse.ui.IEditorSite;
-import org.eclipse.ui.IWorkbenchPage;
-import org.eclipse.ui.PartInitException;
-import org.eclipse.ui.editors.text.TextEditor;
-import org.eclipse.ui.part.FileEditorInput;
-import org.eclipse.ui.part.MultiPageEditorPart;
-import org.eclipse.ui.texteditor.ITextEditor;
-import org.eclipse.ui.ide.IDE;
-import org.eclipse.wst.sse.ui.StructuredTextEditor;
-
-public class TemplateEditor extends MultiPageEditorPart implements IResourceChangeListener {
-
-    public static final String ID = "org.apache.syncope.ide.eclipse.plugin.editors.TemplateEditor";
-    private static final String SAVE_TEMPLATE_LABEL = "Saving Template";
-    private static final String ERROR_NESTED_EDITOR = "Error creating nested text editor";
-    private static final String ERROR_INCORRECT_INPUT = "Wrong Input";
-    private TextEditor editor;
-    private TemplateEditorInput input;
-    private String[] inputStringList;
-    private String[] titleList;
-    private String[] tooltipList;
-
-    void createPage(final String inputString, final String title, final String tooltip) {
-        try {
-            if (title.equals(SyncopeView.TEMPLATE_FORMAT_HTML)) {
-                editor = new HTMLEditor();
-            } else {
-                editor = new StructuredTextEditor(); 
-            }
-            int index = addPage(editor, (IEditorInput) new TemplateEditorInput(inputString, title, tooltip));
-            setPageText(index, editor.getTitle());
-        } catch (final PartInitException e) {
-            ErrorDialog.openError(
-                getSite().getShell(), ERROR_NESTED_EDITOR, null, e.getStatus());
-        }
-    }
-
-    protected void createPages() {
-        for (int i = 0; i < inputStringList.length; i++) {
-            createPage(inputStringList[i], titleList[i], tooltipList[i]);
-        }
-    }
-
-    public void dispose() {
-        ResourcesPlugin.getWorkspace().removeResourceChangeListener(this);
-        super.dispose();
-    }
-
-    public void doSave(final IProgressMonitor monitor) {
-        final ITextEditor ite = (ITextEditor) getActiveEditor();
-        final String content = ite.getDocumentProvider().getDocument(ite.getEditorInput()).get();
-        Job saveJob = new Job(SAVE_TEMPLATE_LABEL) {
-            @Override
-            protected IStatus run(final IProgressMonitor arg0) {
-                try {
-                    if (ite.getTitle().equals(SyncopeView.TEMPLATE_FORMAT_HTML)) {
-                        SyncopeView.setMailTemplateContent(ite.getTitleToolTip(),
-                                MailTemplateFormat.HTML, content);
-                    } else if (ite.getTitle().equals(SyncopeView.TEMPLATE_FORMAT_TEXT)) {
-                        SyncopeView.setMailTemplateContent(ite.getTitleToolTip(),
-                                MailTemplateFormat.TEXT, content);
-                    } else if (ite.getTitle().equals(SyncopeView.TEMPLATE_FORMAT_CSV)) {
-                        SyncopeView.setReportTemplateContent(ite.getTitleToolTip(),
-                                ReportTemplateFormat.CSV, content);
-                    } else if (ite.getTitle().equals(SyncopeView.TEMPLATE_FORMAT_XSL_FO)) {
-                        SyncopeView.setReportTemplateContent(ite.getTitleToolTip(),
-                                ReportTemplateFormat.FO, content);
-                    } else if (ite.getTitle().equals(SyncopeView.TEMPLATE_FORMAT_XSL_HTML)) {
-                        SyncopeView.setReportTemplateContent(ite.getTitleToolTip(),
-                                ReportTemplateFormat.HTML, content);
-                    } else {
-                        throw new Exception("Not a valid editor title");
-                    }
-                } catch (final SyncopeClientException e) {
-                    e.printStackTrace();
-                    if (ClientExceptionType.NotFound.equals(e.getType())) {
-                        /*
-                         * If a deleted template is being edited
-                         * close editor and display error
-                         */
-                        Display.getDefault().syncExec(new Runnable() {
-                            @Override
-                            public void run() {
-                                TemplateEditor.this.getSite().getPage().closeEditor(
-                                        TemplateEditor.this, false);
-                            }
-                        });
-                        return new org.eclipse.core.runtime.Status(
-                                org.eclipse.core.runtime.Status.ERROR, Activator.PLUGIN_ID,
-                                "Template No longer exists");
-                    }
-                }  catch (final Exception e) {
-                    e.printStackTrace();
-                } finally {
-                    Display.getDefault().syncExec(new Runnable() {
-                        @Override
-                        public void run() {
-                            ite.doSave(monitor);
-                        }
-                    });
-                }
-                if (monitor.isCanceled()) {
-                    return org.eclipse.core.runtime.Status.CANCEL_STATUS;
-                }
-                return org.eclipse.core.runtime.Status.OK_STATUS;
-            }
-        };
-        saveJob.setUser(true);
-        saveJob.schedule();
-    }
-
-    public void doSaveAs() {
-        getActiveEditor().doSaveAs();
-    }
-    public void gotoMarker(final IMarker marker) {
-        setActivePage(0);
-        IDE.gotoMarker(getEditor(0), marker);
-    }
-    public void init(final IEditorSite site, final IEditorInput editorInput)
-        throws PartInitException {
-        if (!(editorInput instanceof TemplateEditorInput)) {
-            throw new RuntimeException(ERROR_INCORRECT_INPUT);
-        }
-        this.input = (TemplateEditorInput) editorInput;
-
-        this.inputStringList = this.input.getInputStringList();
-        this.titleList = this.input.getTitleList();
-        this.tooltipList = this.input.getTooltipList();
-
-        setSite(site);
-        setInput(input);
-        setPartName(this.tooltipList[0]);
-    }
-
-    public boolean isSaveAsAllowed() {
-        return true;
-    }
-
-    protected void pageChange(final int newPageIndex) {
-        super.pageChange(newPageIndex);
-    }
-    
-    public ITextEditor getActiveHTMLEditor() {
-        final ITextEditor ite = (ITextEditor) getActiveEditor();
-        if (ite.getTitle().equals(SyncopeView.TEMPLATE_FORMAT_HTML)) {
-            return (ITextEditor) getActiveEditor();
-        } else {
-            return null;
-        }
-    }
-
-    public void resourceChanged(final IResourceChangeEvent event) {
-        if (event.getType() == IResourceChangeEvent.PRE_CLOSE) {
-            Display.getDefault().asyncExec(new Runnable() {
-                public void run() {
-                    IWorkbenchPage[] pages = getSite().getWorkbenchWindow().getPages();
-                    for (int i = 0; i < pages.length; i++) {
-                        if (((FileEditorInput) editor.getEditorInput()).getFile().getProject()
-                                .equals(event.getResource())) {
-                            IEditorPart editorPart = pages[i].findEditor(editor.getEditorInput());
-                            pages[i].closeEditor(editorPart, true);
-                        }
-                    }
-                }
-            });
-        }
-    }
-}
diff --git a/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/editors/TemplateEditorInput.java b/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/editors/TemplateEditorInput.java
deleted file mode 100644
index e677596..0000000
--- a/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/editors/TemplateEditorInput.java
+++ /dev/null
@@ -1,122 +0,0 @@
-/*
- * 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.
- */
-package org.apache.syncope.ide.eclipse.plugin.editors;
-
-import java.io.ByteArrayInputStream;
-import java.io.InputStream;
-
-import org.eclipse.core.resources.IStorage;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.ui.IPersistableElement;
-import org.eclipse.ui.IStorageEditorInput;
-
-public class TemplateEditorInput implements IStorageEditorInput {
-
-    private final String inputString;
-    private final String title;
-    private final String tooltip;
-
-    private String[] inputStringList;
-    private String[] titleList;
-    private String[] tooltipList;
-
-    public String[] getInputStringList() {
-        return inputStringList;
-    }
-
-    public String[] getTitleList() {
-        return titleList;
-    }
-
-    public String[] getTooltipList() {
-        return tooltipList;
-    }
-
-    public String getInputString() {
-        return inputString;
-    }
-
-    public TemplateEditorInput(final String inputString, final String title, final String tooltip) {
-        this.inputString = inputString;
-        this.title = title;
-        this.tooltip = tooltip;
-    }
-
-    public TemplateEditorInput(final String[] inputStringList, final String[] titleList,
-            final String[] tooltipList) {
-        this.inputString = null;
-        this.title = null;
-        this.tooltip = null;
-
-        this.inputStringList = inputStringList;
-        this.titleList = titleList;
-        this.tooltipList = tooltipList;
-    }
-
-    public boolean exists() {
-        return false;
-    }
-
-    public ImageDescriptor getImageDescriptor() {
-        return null;
-    }
-
-    public IPersistableElement getPersistable() {
-        return null;
-    }
-
-    public <T> T getAdapter(final Class<T> adapter) {
-        return null;
-    }
-
-    public String getName() {
-        return title;
-    }
-
-    public String getToolTipText() {
-        return tooltip;
-    }
-
-    public IStorage getStorage() throws CoreException {
-        return new IStorage() {
-            public InputStream getContents() throws CoreException {
-                return new ByteArrayInputStream(inputString.getBytes(
-                    java.nio.charset.Charset.defaultCharset()));
-            }
-
-            public IPath getFullPath() {
-                return null;
-            }
-
-            public String getName() {
-                return TemplateEditorInput.this.getName();
-            }
-
-            public boolean isReadOnly() {
-                return false;
-            }
-
-            public <T> T getAdapter(final Class<T> adapter) {
-                return null;
-            }
-        };
-    }
-}
diff --git a/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/editors/htmlhelpers/AssistInfo.java b/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/editors/htmlhelpers/AssistInfo.java
deleted file mode 100644
index 4006830..0000000
--- a/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/editors/htmlhelpers/AssistInfo.java
+++ /dev/null
@@ -1,117 +0,0 @@
-/*
- * 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.
- */
-package org.apache.syncope.ide.eclipse.plugin.editors.htmlhelpers;
-
-import org.eclipse.jface.text.contentassist.CompletionProposal;
-import org.eclipse.jface.text.contentassist.ICompletionProposal;
-import org.eclipse.swt.graphics.Image;
-
-public class AssistInfo {
-
-    private String displayString;
-    private String replaceString;
-    private Image image;
-    private String additionalInfo;
-
-    public AssistInfo(final String displayString) {
-        this.displayString = displayString;
-        this.replaceString = displayString;
-    }
-
-    public AssistInfo(final String displayString, final Image image) {
-        this.displayString = displayString;
-        this.replaceString = displayString;
-        this.image = image;
-    }
-
-    public AssistInfo(final String replaceString, final String displayString) {
-        this.displayString = displayString;
-        this.replaceString = replaceString;
-    }
-
-    public AssistInfo(final String replaceString, final String displayString, final Image image) {
-        this.displayString = displayString;
-        this.replaceString = replaceString;
-        this.image = image;
-    }
-
-    public AssistInfo(final String replaceString, final String displayString, final Image image,
-            final String additionalInfo) {
-        this.displayString = displayString;
-        this.replaceString = replaceString;
-        this.image = image;
-        this.additionalInfo = additionalInfo;
-    }
-
-    public String getDisplayString() {
-        return displayString;
-    }
-
-    public String getReplaceString() {
-        return replaceString;
-    }
-
-    public String getAdditionalInfo() {
-        return additionalInfo;
-    }
-
-    public Image getImage() {
-        return this.image;
-    }
-
-    public ICompletionProposal toCompletionProposal(final int offset, final String matchString,
-            final Image defaultImage) {
-        return new CompletionProposal(
-                getReplaceString(),
-                offset - matchString.length(), matchString.length(),
-                getReplaceString().length(),
-                getImage() == null ? defaultImage : getImage(),
-                getDisplayString(), null, getAdditionalInfo());
-    }
-
-    @Override
-    public boolean equals(final Object obj) {
-        if (obj instanceof AssistInfo) {
-            AssistInfo info = (AssistInfo) obj;
-            if (compareString(info.getReplaceString(), getReplaceString())
-                && compareString(info.getDisplayString(), getDisplayString())
-                && compareString(info.getAdditionalInfo(), getAdditionalInfo())) {
-                return true;
-            }
-        }
-        return false;
-    }
-
-    @Override public int hashCode() {
-        return (this.getReplaceString().hashCode()
-            + this.getDisplayString().hashCode()
-            + this.getAdditionalInfo().hashCode());
-    }
-
-    public static boolean compareString(final String value1, final String value2) {
-        if (value1 == null && value2 == null) {
-            return true;
-        }
-        if (value1 != null && value1.equals(value2)) {
-            return true;
-        }
-        return false;
-    }
-
-}
diff --git a/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/editors/htmlhelpers/AttributeInfo.java b/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/editors/htmlhelpers/AttributeInfo.java
deleted file mode 100644
index dcae15a..0000000
--- a/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/editors/htmlhelpers/AttributeInfo.java
+++ /dev/null
@@ -1,88 +0,0 @@
-/*
- * 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.
- */
-package org.apache.syncope.ide.eclipse.plugin.editors.htmlhelpers;
-
-import java.util.ArrayList;
-import java.util.List;
-
-public class AttributeInfo {
-
-    private String attributeName;
-    private boolean hasValue;
-    private boolean required = false;
-    private String description;
-    private List<String> values = new ArrayList<String>();
-    public enum AttributeTypeOptions {
-        NONE, ALIGN, VALIGN, INPUT_TYPE, CSS, FILE, ID, IDREF, IDREFS, TARGET
-    }
-    private AttributeTypeOptions attributeType;
-
-    public AttributeInfo(final String attributeName, final boolean hasValue) {
-        this(attributeName, hasValue, AttributeTypeOptions.NONE);
-    }
-
-    public AttributeInfo(final String attributeName, final boolean hasValue,
-            final AttributeTypeOptions attributeType) {
-        this(attributeName, hasValue, attributeType, false);
-    }
-
-    public AttributeInfo(final String attributeName, final boolean hasValue,
-            final AttributeTypeOptions attributeType, final boolean required) {
-        this.attributeName = attributeName;
-        this.hasValue      = hasValue;
-        this.attributeType = attributeType;
-        this.required      = required;
-    }
-
-    public AttributeTypeOptions getAttributeType() {
-        return this.attributeType;
-    }
-
-    public void setAttributeType(final AttributeTypeOptions type) {
-        this.attributeType = type;
-    }
-
-    public String getAttributeName() {
-        return this.attributeName;
-    }
-
-    public boolean hasValue() {
-        return this.hasValue;
-    }
-
-    public boolean isRequired() {
-        return this.required;
-    }
-
-    public void addValue(final String value) {
-        this.values.add(value);
-    }
-
-    public String[] getValues() {
-        return this.values.toArray(new String[this.values.size()]);
-    }
-
-    public String getDescription() {
-        return description;
-    }
-
-    public void setDescription(final String description) {
-        this.description = description;
-    }
-}
diff --git a/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/editors/htmlhelpers/AutoIndentAction.java b/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/editors/htmlhelpers/AutoIndentAction.java
deleted file mode 100644
index b5e7d11..0000000
--- a/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/editors/htmlhelpers/AutoIndentAction.java
+++ /dev/null
@@ -1,75 +0,0 @@
-/*
- * 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.
- */
-package org.apache.syncope.ide.eclipse.plugin.editors.htmlhelpers;
-
-import java.util.ResourceBundle;
-
-import org.apache.syncope.ide.eclipse.plugin.editors.TemplateEditor;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.ui.IEditorPart;
-import org.eclipse.ui.PlatformUI;
-import org.eclipse.ui.texteditor.ITextEditor;
-import org.eclipse.ui.texteditor.TextEditorAction;
-import org.jsoup.Jsoup;
-import org.jsoup.nodes.Document;
-
-public class AutoIndentAction extends TextEditorAction {
-
-    public AutoIndentAction(final ResourceBundle bundle, final String prefix, final ITextEditor editor) {
-        super(bundle, prefix, editor);
-        update();
-    }
-
-    @Override
-    public void run() {
-        String content = getCurrentEditorContent();
-        content = formatContent(content);
-        ITextEditor ite = getHTMLEditor();
-        IDocument doc = ite.getDocumentProvider().getDocument(ite.getEditorInput());
-        doc.set(content);
-    }
-
-    private String formatContent(final String contentarg) {
-        String content =  contentarg;
-        Document htmlDoc = Jsoup.parse(content);
-        content = htmlDoc.html();
-        return content;
-    }
-
-    public String getCurrentEditorContent() {
-        ITextEditor ite = getHTMLEditor();
-        IDocument doc = ite.getDocumentProvider().getDocument(ite.getEditorInput());
-        return doc.get();
-    }
-
-    protected ITextEditor getHTMLEditor() {
-        final IEditorPart editor = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage()
-                .getActiveEditor();
-        if (!(editor instanceof TemplateEditor)) {
-            return null;
-        }
-        TemplateEditor te = (TemplateEditor) editor;
-        return (ITextEditor) (te.getActiveHTMLEditor());
-    }
-
-    @Override
-    public void update() {
-        setEnabled(true);
-    }
-}
diff --git a/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/editors/htmlhelpers/CSSBlockScanner.java b/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/editors/htmlhelpers/CSSBlockScanner.java
deleted file mode 100644
index 0306827..0000000
--- a/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/editors/htmlhelpers/CSSBlockScanner.java
+++ /dev/null
@@ -1,47 +0,0 @@
-/*
- * 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.
- */
-package org.apache.syncope.ide.eclipse.plugin.editors.htmlhelpers;
-
-import java.util.ArrayList;
-import java.util.List;
-import org.eclipse.jface.text.TextAttribute;
-import org.eclipse.jface.text.rules.IRule;
-import org.eclipse.jface.text.rules.RuleBasedScanner;
-import org.eclipse.jface.text.rules.Token;
-import org.eclipse.swt.graphics.Color;
-import org.eclipse.swt.widgets.Display;
-
-public class CSSBlockScanner extends RuleBasedScanner {
-
-    public CSSBlockScanner() {
-        List<IRule> rules = createRules();
-        setRules(rules.toArray(new IRule[rules.size()]));
-    }
-
-    protected List<IRule> createRules() {
-        List<IRule> rules = new ArrayList<IRule>();
-        rules.add(new CSSRule(
-                new Token(new TextAttribute(new Color(Display.getCurrent(), 
-                        IHTMLColorConstants.CSS_PROP))),
-                new Token(new TextAttribute(new Color(Display.getCurrent(), 
-                        IHTMLColorConstants.CSS_VALUE)))));
-        return rules;
-    }
-
-}
diff --git a/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/editors/htmlhelpers/CSSRule.java b/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/editors/htmlhelpers/CSSRule.java
deleted file mode 100644
index f8c79cd..0000000
--- a/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/editors/htmlhelpers/CSSRule.java
+++ /dev/null
@@ -1,110 +0,0 @@
-/*
- * 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.
- */
-package org.apache.syncope.ide.eclipse.plugin.editors.htmlhelpers;
-
-import org.eclipse.jface.text.rules.ICharacterScanner;
-import org.eclipse.jface.text.rules.IPredicateRule;
-import org.eclipse.jface.text.rules.IToken;
-import org.eclipse.jface.text.rules.Token;
-
-public class CSSRule implements IPredicateRule {
-
-    private IToken propToken;
-    private IToken valueToken;
-
-    public CSSRule(final IToken propToken, final IToken valueToken) {
-        this.propToken = propToken;
-        this.valueToken = valueToken;
-    }
-
-    private boolean sequenceDetected(final ICharacterScanner scanner, final char[] sequence,
-            final boolean eofAllowed) {
-        for (int i = 1; i < sequence.length; i++) {
-            int c = scanner.read();
-            if (c == ICharacterScanner.EOF && eofAllowed) {
-                return true;
-            } else if (c != sequence[i]) {
-                // Non-matching character detected, rewind the scanner back to the start.
-                // Do not unread the first character.
-                scanner.unread();
-                for (int j = i - 1; j > 0; j--) {
-                    scanner.unread();
-                }
-                return false;
-            }
-        }
-
-        return true;
-    }
-
-    private IToken getToken(final ICharacterScanner scanner) {
-        int c;
-        char[][] delimiters = scanner.getLegalLineDelimiters();
-        while ((c = scanner.read()) != ICharacterScanner.EOF) {
-            if (c == ':') {
-                return propToken;
-            } else if (c == ';') {
-                return valueToken;
-            } else {
-                // Check for end of line since it can be used to terminate the pattern.
-                for (int i = 0; i < delimiters.length; i++) {
-                    if (c == delimiters[i][0] && sequenceDetected(scanner, delimiters[i], true)) {
-                        return null;
-                    }
-                }
-            }
-        }
-        scanner.unread();
-        return null;
-    }
-
-    public IToken evaluate(final ICharacterScanner scanner, final boolean resume) {
-        return doEvaluate(scanner, resume);
-    }
-
-    private IToken doEvaluate(final ICharacterScanner scanner, final boolean resume) {
-        if (resume) {
-            IToken token = getToken(scanner);
-            if (token != null) {
-                return token;
-            }
-        } else {
-
-            int c = scanner.read();
-            if (c != ' ' && c != '\t' && c != '\r' && c != '\n') {
-                IToken token = getToken(scanner);
-                if (token != null) {
-                    return token;
-                }
-            }
-        }
-
-        scanner.unread();
-        return Token.UNDEFINED;
-    }
-
-
-    public IToken getSuccessToken() {
-        return null;
-    }
-
-    public IToken evaluate(final ICharacterScanner scanner) {
-        return evaluate(scanner, false);
-    }
-}
diff --git a/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/editors/htmlhelpers/DocTypeRule.java b/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/editors/htmlhelpers/DocTypeRule.java
deleted file mode 100644
index 0695a74..0000000
--- a/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/editors/htmlhelpers/DocTypeRule.java
+++ /dev/null
@@ -1,65 +0,0 @@
-/*
- * 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.
- */
-package org.apache.syncope.ide.eclipse.plugin.editors.htmlhelpers;
-
-import org.eclipse.jface.text.rules.ICharacterScanner;
-import org.eclipse.jface.text.rules.IToken;
-import org.eclipse.jface.text.rules.MultiLineRule;
-
-public class DocTypeRule extends MultiLineRule {
-
-    public DocTypeRule(final IToken token) {
-        super("<!DOCTYPE", ">", token);
-    }
-
-    protected boolean endSequenceDetected(final ICharacterScanner scanner) {
-        int c;
-        boolean quoted = false;
-        char[][] delimiters = scanner.getLegalLineDelimiters();
-        boolean previousWasEscapeCharacter = false;
-        while ((c = scanner.read()) != ICharacterScanner.EOF) {
-            if (c == fEscapeCharacter) {
-                // Skip the escaped character.
-                scanner.read();
-            } else if (c == '[') {
-                quoted = true;
-            } else if (c == ']') {
-                quoted = false;
-            } else if (fEndSequence.length > 0 && c == fEndSequence[0]
-                    && !quoted && sequenceDetected(scanner, fEndSequence, true)) {
-                return true;
-            } else if (fBreaksOnEOL) {
-                // Check for end of line since it can be used to terminate the pattern.
-                for (int i = 0; i < delimiters.length; i++) {
-                    if (c == delimiters[i][0] && sequenceDetected(scanner, delimiters[i], true)) {
-                        if (!fEscapeContinuesLine || !previousWasEscapeCharacter) {
-                            return true;
-                        }
-                    }
-                }
-            }
-            previousWasEscapeCharacter = (c == fEscapeCharacter);
-        }
-        if (fBreaksOnEOF) {
-            return true;
-        }
-        scanner.unread();
-        return false;
-    }
-}
diff --git a/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/editors/htmlhelpers/HTMLAutoEditStrategy.java b/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/editors/htmlhelpers/HTMLAutoEditStrategy.java
deleted file mode 100644
index 0609a24..0000000
--- a/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/editors/htmlhelpers/HTMLAutoEditStrategy.java
+++ /dev/null
@@ -1,326 +0,0 @@
-/*
- * 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.
- */
-package org.apache.syncope.ide.eclipse.plugin.editors.htmlhelpers;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.jface.text.BadLocationException;
-import org.eclipse.jface.text.DefaultIndentLineAutoEditStrategy;
-import org.eclipse.jface.text.DocumentCommand;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.jface.text.TextUtilities;
-
-public class HTMLAutoEditStrategy extends DefaultIndentLineAutoEditStrategy {
-
-    private String charset = System.getProperty("file.encoding");
-
-    public HTMLAutoEditStrategy() {
-    }
-
-    public void setFile(final IFile file) {
-        try {
-            this.charset = file.getCharset();
-        } catch (CoreException e) {
-            e.printStackTrace();
-        }
-    }
-
-    public void customizeDocumentCommand(final IDocument d, final DocumentCommand c) {
-        try {
-            if ("-".equals(c.text) && c.offset >= 3 && d.get(c.offset - 3, 3).equals("<!-")) {
-                c.text = "-  -->";
-                c.shiftsCaret = false;
-                c.caretOffset = c.offset + 2;
-                c.doit = false;
-                return;
-            } else if ("[".equals(c.text) && c.offset >= 2 && d.get(c.offset - 2, 2).equals("<!")) {
-                c.text = "[CDATA[]]>";
-                c.shiftsCaret = false;
-                c.caretOffset = c.offset + 7;
-                c.doit = false;
-                return;
-            } else if ("l".equals(c.text) && c.offset >= 4 && d.get(c.offset - 4, 4).equals("<?xm")) {
-                c.text = "l version = \"1.0\" encoding = \"" + charset + "\"?>";
-                return;
-            } else if (c.length == 0 && c.text != null && endsWithDelimiter(d, c.text)) {
-                smartIndentAfterNewLine(d, c);
-            } else if ("<".equals(c.text)) { //$NON-NLS-1$
-                smartInsertAfterBracket(d, c);
-            }
-        } catch (final BadLocationException e) {
-            e.printStackTrace();
-        }
-        super.customizeDocumentCommand(d, c);
-    }
-
-
-    /**
-     * Returns whether or not the given text ends with one of the documents legal line delimiters.
-     *
-     * @param d the document
-     * @param txt the text
-     * @return <code>true</code> if <code>txt</code> ends with one of the document's line delimiters,
-     * <code>false</code> otherwise
-     */
-    private boolean endsWithDelimiter(final IDocument d, final String txt) {
-        String[] delimiters = d.getLegalLineDelimiters();
-        if (delimiters != null) {
-            return TextUtilities.endsWith(delimiters, txt) > -1;
-        }
-        return false;
-    }
-
-    /**
-     * Returns the line number of the next bracket after end.
-     *
-     * @param document - the document being parsed
-     * @param linearg - the line to start searching back from
-     * @param endarg - the end position to search back from
-     * @param closingBracketIncrease - the number of brackets to skip
-     * @return the line number of the next matching bracket after end
-     * @throws BadLocationException in case the line numbers are invalid in the document
-     */
-     protected int findMatchingOpenBracket(final IDocument document, final int linearg,
-         final int endarg, final int closingBracketIncrease) throws BadLocationException {
-
-         int line = linearg;
-         int end = endarg;
-        int start = document.getLineOffset(line);
-        int brackcount = getBracketCount(document, start, end, false) - closingBracketIncrease;
-
-        // sum up the brackets counts of each line (closing brackets count negative,
-        // opening positive) until we find a line the brings the count to zero
-        while (brackcount < 0) {
-            line--;
-            if (line < 0) {
-                return -1;
-            }
-            start = document.getLineOffset(line);
-            end = start + document.getLineLength(line) - 1;
-            brackcount += getBracketCount(document, start, end, false);
-        }
-        return line;
-    }
-
-    /**
-     * Returns the bracket value of a section of text. Closing brackets have a value of -1 and
-     * open brackets have a value of 1.
-     *
-     * @param document - the document being parsed
-     * @param start - the start position for the search
-     * @param end - the end position for the search
-     * @param ignoreCloseBrackets - whether or not to ignore closing brackets in the count
-     * @return the bracket value of a section of text
-     * @throws BadLocationException in case the positions are invalid in the document
-     */
-     private int getBracketCount(final IDocument document, final int start, final int end,
-         final boolean ignoreCloseBracketsarg) throws BadLocationException {
-
-         boolean ignoreCloseBrackets = ignoreCloseBracketsarg;
-        int begin = start;
-        int bracketcount = 0;
-        while (begin < end) {
-            char curr = document.getChar(begin);
-            begin++;
-            switch (curr) {
-                case '/' :
-                    if (begin < end) {
-                        char next = document.getChar(begin);
-                        if (next == '*') {
-                            // a comment starts, advance to the comment end
-                            begin = getCommentEnd(document, begin + 1, end);
-                        } else if (next == '/') {
-                            // '//'-comment: nothing to do anymore on this line
-                            begin = end;
-                        }
-                    }
-                    break;
-                case '*' :
-                    if (begin < end) {
-                        char next = document.getChar(begin);
-                        if (next == '/') {
-                            // we have been in a comment: forget what we read before
-                            bracketcount = 0;
-                            begin++;
-                        }
-                    }
-                    break;
-                case '>' :
-                    bracketcount++;
-                    ignoreCloseBrackets = false;
-                    break;
-                case '<' :
-                    if (!ignoreCloseBrackets) {
-                        bracketcount--;
-                    }
-                    break;
-                case '"' :
-                case '\'' :
-                    begin = getStringEnd(document, begin, end, curr);
-                    break;
-                default :
-                    }
-        }
-        return bracketcount;
-    }
-
-    /**
-     * Returns the end position of a comment starting at the given <code>position</code>.
-     *
-     * @param document - the document being parsed
-     * @param position - the start position for the search
-     * @param end - the end position for the search
-     * @return the end position of a comment starting at the given <code>position</code>
-     * @throws BadLocationException in case <code>position</code> and <code>end</code> are invalid in the document
-     */
-     private int getCommentEnd(final IDocument document, final int position, final int end)
-            throws BadLocationException {
-        int currentPosition = position;
-        while (currentPosition < end) {
-            char curr = document.getChar(currentPosition);
-            currentPosition++;
-            if (curr == '*') {
-                if (currentPosition < end && document.getChar(currentPosition) == '/') {
-                    return currentPosition + 1;
-                }
-            }
-        }
-        return end;
-    }
-
-    /**
-     * Returns the content of the given line without the leading whitespace.
-     *
-     * @param document - the document being parsed
-     * @param line - the line being searched
-     * @return the content of the given line without the leading whitespace
-     * @throws BadLocationException in case <code>line</code> is invalid in the document
-     */
-     protected String getIndentOfLine(final IDocument document, final int line)
-            throws BadLocationException {
-        if (line > -1) {
-            int start = document.getLineOffset(line);
-            int end = start + document.getLineLength(line) - 1;
-            int whiteend = findEndOfWhiteSpace(document, start, end);
-            return document.get(start, whiteend - start);
-        }
-        return ""; //$NON-NLS-1$
-    }
-
-    /**
-     * Returns the position of the <code>character</code> in the <code>document</code> after <code>position</code>.
-     *
-     * @param document - the document being parsed
-     * @param position - the position to start searching from
-     * @param end - the end of the document
-     * @param character - the character you are trying to match
-     * @return the next location of <code>character</code>
-     * @throws BadLocationException in case <code>position</code> is invalid in the document
-     */
-     private int getStringEnd(final IDocument document, final int position, final int end,
-         final char character) throws BadLocationException {
-        int currentPosition = position;
-        while (currentPosition < end) {
-            char currentCharacter = document.getChar(currentPosition);
-            currentPosition++;
-            if (currentCharacter == '\\') {
-                // ignore escaped characters
-                currentPosition++;
-            } else if (currentCharacter == character) {
-                return currentPosition;
-            }
-        }
-        return end;
-    }
-
-    /**
-     * Set the indent of a new line based on the command provided in the supplied document.
-     * @param document - the document being parsed
-     * @param command - the command being performed
-     */
-     protected void smartIndentAfterNewLine(final IDocument document, final DocumentCommand command) {
-
-        int docLength = document.getLength();
-        if (command.offset == -1 || docLength == 0) {
-            return;
-        }
-
-        try {
-            int p = (command.offset == docLength ? command.offset - 1 : command.offset);
-            int line = document.getLineOfOffset(p);
-
-            StringBuilder buf = new StringBuilder(command.text);
-            if (command.offset < docLength && document.getChar(command.offset) == '<') {
-                int indLine = findMatchingOpenBracket(document, line, command.offset, 0);
-                if (indLine == -1) {
-                    indLine = line;
-                }
-                buf.append(getIndentOfLine(document, indLine));
-            } else {
-                int start = document.getLineOffset(line);
-                int whiteend = findEndOfWhiteSpace(document, start, command.offset);
-                buf.append(document.get(start, whiteend - start));
-                if (getBracketCount(document, start, command.offset, true) > 0) {
-                    buf.append('\t');
-                }
-            }
-            command.text = buf.toString();
-
-        } catch (BadLocationException excp) {
-            System.out.println("AutoIndent.error.bad_location_1"); //$NON-NLS-1$
-        }
-    }
-
-    /**
-     * Set the indent of a bracket based on the command provided in the supplied document.
-     * @param document - the document being parsed
-     * @param command - the command being performed
-     */
-     protected void smartInsertAfterBracket(final IDocument document, final DocumentCommand command) {
-        if (command.offset == -1 || document.getLength() == 0) {
-            return;
-        }
-
-        try {
-            int p = (command.offset == document.getLength() ? command.offset - 1 : command.offset);
-            int line = document.getLineOfOffset(p);
-            int start = document.getLineOffset(line);
-            int whiteend = findEndOfWhiteSpace(document, start, command.offset);
-
-            // shift only when line does not contain any text up to the closing bracket
-            if (whiteend == command.offset) {
-                // evaluate the line with the opening bracket that matches out closing bracket
-                int indLine = findMatchingOpenBracket(document, line, command.offset, 1);
-                if (indLine != -1 && indLine != line) {
-                    // take the indent of the found line
-                    StringBuilder replaceText = new StringBuilder(getIndentOfLine(document, indLine));
-                    // add the rest of the current line including the just added close bracket
-                    replaceText.append(document.get(whiteend, command.offset - whiteend));
-                    replaceText.append(command.text);
-                    // modify document command
-                    command.length = command.offset - start;
-                    command.offset = start;
-                    command.text = replaceText.toString();
-                }
-            }
-        } catch (final BadLocationException excp) {
-            System.out.println("AutoIndent.error.bad_location_2"); //$NON-NLS-1$
-        }
-    }
-}
diff --git a/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/editors/htmlhelpers/HTMLCompletionProcessor.java b/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/editors/htmlhelpers/HTMLCompletionProcessor.java
deleted file mode 100644
index 44d2efc..0000000
--- a/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/editors/htmlhelpers/HTMLCompletionProcessor.java
+++ /dev/null
@@ -1,338 +0,0 @@
-/*
- * 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.
- */
-package org.apache.syncope.ide.eclipse.plugin.editors.htmlhelpers;
-
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.Comparator;
-import java.util.List;
-import java.util.Stack;
-import org.eclipse.jface.text.ITextViewer;
-import org.eclipse.jface.text.contentassist.CompletionProposal;
-import org.eclipse.jface.text.contentassist.ContextInformation;
-import org.eclipse.jface.text.contentassist.ContextInformationValidator;
-import org.eclipse.jface.text.contentassist.ICompletionProposal;
-import org.eclipse.jface.text.contentassist.IContextInformation;
-import org.eclipse.jface.text.contentassist.IContextInformationValidator;
-
-public class HTMLCompletionProcessor extends HTMLTemplateAssistProcessor {
-
-    private int offset;
-    private boolean xhtmlMode = false;
-    private char[] chars = {};
-    private boolean assistCloseTag = true;
-    protected String[] getLastWord(final String text) {
-        StringBuilder sb = new StringBuilder();
-        Stack<String> stack = new Stack<String>();
-        String word    = "";
-        String prevTag = "";
-        String lastTag = "";
-        String attr    = "";
-        String temp1   = ""; // temporary
-        String temp2   = ""; // temporary
-        for (int i = 0; i < text.length(); i++) {
-            char c = text.charAt(i);
-            // skip scriptlet
-            if (c == '<' && text.length() > i + 1 && text.charAt(i + 1) == '%') {
-                i = text.indexOf("%>", i + 2);
-                if (i == -1) {
-                    i = text.length();
-                }
-                continue;
-            }
-            // skip XML declaration
-            if (c == '<' && text.length() > i + 1 && text.charAt(i + 1) == '?') {
-                i = text.indexOf("?>", i + 2);
-                if (i == -1) {
-                    i = text.length();
-                }
-                continue;
-            }
-
-            if (isDelimiter(c)) {
-                temp1 = sb.toString();
-
-                // skip whitespaces in the attribute value
-                if (temp1.length() > 1
-                        && ((temp1.startsWith("\"") && !temp1.endsWith("\"") && c != '"')
-                        || (temp1.startsWith("'") && !temp1.endsWith("'") && c != '\''))) {
-                    sb.append(c);
-                    continue;
-                }
-                if (temp1.length() == 1 && ((temp1.equals("\"") || (temp1.equals("'"))))) {
-                    sb.append(c);
-                    continue;
-                }
-
-                if (!temp1.equals("")) {
-                    temp2 = temp1;
-                    if (temp2.endsWith("=") && !prevTag.equals("") && !temp2.equals("=")) {
-                        attr = temp2.substring(0, temp2.length() - 1);
-                    }
-                }
-                if (temp1.startsWith("<") && !temp1.startsWith("</") && !temp1.startsWith("<!")) {
-                    prevTag = temp1.substring(1);
-                    if (!temp1.endsWith("/")) {
-                        stack.push(prevTag);
-                    }
-                } else if (temp1.startsWith("</") && stack.size() != 0) {
-                    stack.pop();
-                } else if ((!temp1.startsWith("\"") && !temp1.startsWith("'"))
-                        && temp1.endsWith("/") && stack.size() != 0) {
-                    stack.pop();
-                }
-                sb.setLength(0);
-
-                if (c == '<') {
-                    sb.append(c);
-                } else if (c == '"' || c == '\'') {
-                    if (temp1.startsWith("\"") || temp1.startsWith("'")) {
-                        sb.append(temp1);
-                    }
-                    sb.append(c);
-                } else if (c == '>') {
-                    prevTag = "";
-                    attr    = "";
-                }
-            } else {
-                if (c == '=' && !prevTag.equals("")) {
-                    attr = temp2.trim();
-                }
-                temp1 = sb.toString();
-                if (temp1.length() > 1
-                    && (temp1.startsWith("\"") && temp1.endsWith("\""))
-                    || (temp1.startsWith("'") && temp1.endsWith("'"))) {
-                    sb.setLength(0);
-                }
-                sb.append(c);
-            }
-        }
-
-        if (stack.size() != 0) {
-            lastTag = (String) stack.pop();
-        }
-        // Hmm... it's not perfect...
-        if (attr.endsWith("=")) {
-            attr = attr.substring(0, attr.length() - 1);
-        }
-        word = sb.toString();
-
-        return new String[]{word, prevTag, lastTag, attr};
-    }
-
-    //Tests a character is delimiter or not delimiter.
-    protected boolean isDelimiter(final char c) {
-        return (c == ' ' || c == '(' || c == ')' || c == ',' //|| c == '.'
-                || c == ';' || c == '\n' || c == '\r' || c == '\t' || c == '+'
-                || c == '>' || c == '<' || c == '*' || c == '^' //|| c == '{'
-                //|| c == '}'
-                || c == '[' || c == ']' || c == '"' || c == '\'');
-    }
-
-    protected List<TagInfo> getTagList() {
-        return TagDefinition.getTagInfoAsList();
-    }
-
-    protected TagInfo getTagInfo(final String name) {
-        List<TagInfo> tagList = TagDefinition.getTagInfoAsList();
-        for (int i = 0; i < tagList.size(); i++) {
-            TagInfo info = (TagInfo) tagList.get(i);
-            if (info.getTagName().equals(name)) {
-                return info;
-            }
-        }
-
-        return null;
-    }
-
-    public ICompletionProposal[] computeCompletionProposals(final ITextViewer viewer,
-            final int documentOffset) {
-
-        String   text = viewer.getDocument().get().substring(0, documentOffset);
-        String[] dim  = getLastWord(text);
-        String   word = dim[0].toLowerCase();
-        String   prev = dim[1].toLowerCase();
-        String   last = dim[2];
-
-        this.offset = documentOffset;
-
-        List<ICompletionProposal> list = new ArrayList<ICompletionProposal>();
-        List<TagInfo> tagList = getTagList();
-
-        // attribute value
-        if (word.startsWith("<") && !word.equals("</")) {
-
-            TagInfo parent = getTagInfo(last);
-            //tagList = new ArrayList < TagInfo>();
-            if (parent != null) {
-                String[] childNames = parent.getChildTagNames();
-                for (int i = 0; i < childNames.length; i++) {
-                    tagList.add(getTagInfo(childNames[i]));
-                }
-
-            }
-            for (int i = 0; i < tagList.size(); i++) {
-                TagInfo tagInfo = (TagInfo) tagList.get(i);
-                if (tagInfo instanceof TextInfo) {
-                    TextInfo textInfo = (TextInfo) tagInfo;
-                    if ((textInfo.getText().toLowerCase()).indexOf(word) == 0) {
-                        list.add(new CompletionProposal(
-                                textInfo.getText(), documentOffset - word.length(),
-                                word.length(), textInfo.getPosition()));
-                    }
-                    continue;
-                }
-                String tagName = tagInfo.getTagName();
-                if (("<" + tagInfo.getTagName().toLowerCase()).indexOf(word) == 0) {
-                    String assistKeyword = tagName;
-                    int position = 0;
-                    // required attributes
-                    AttributeInfo[] requierAttrs = tagInfo.getRequiredAttributeInfo();
-                    for (int j = 0; j < requierAttrs.length; j++) {
-                        assistKeyword = assistKeyword + " " + requierAttrs[j].getAttributeName();
-                        if (requierAttrs[j].hasValue()) {
-                            assistKeyword = assistKeyword + "=\"\"";
-                            if (j == 0) {
-                                position = tagName.length() + requierAttrs[j].getAttributeName().length() + 3;
-                            }
-                        }
-                    }
-                    if (tagInfo.hasBody()) {
-                        assistKeyword = assistKeyword + ">";
-                        if (true) {
-                            if (position == 0) {
-                                position = assistKeyword.length();
-                            }
-                            assistKeyword = assistKeyword + "</" + tagName + ">";
-                        }
-                    } else {
-                        if (tagInfo.isEmptyTag() && !xhtmlMode) {
-                            assistKeyword += ">";
-                        } else {
-                            assistKeyword += "/>";
-                        }
-                    }
-                    if (position == 0) {
-                        position = assistKeyword.length();
-                    }
-                    try {
-                        list.add(new CompletionProposal(
-                                assistKeyword, documentOffset - word.length() + 1,
-                                word.length() - 1, position));
-                    } catch (Exception ex) {
-                        ex.printStackTrace();
-                    }
-                }
-            }
-            // attribute
-        } else if (!prev.equals("")) {
-            String tagName = prev;
-            TagInfo tagInfo = getTagInfo(tagName);
-            if (tagInfo != null) {
-                AttributeInfo[] attrList = tagInfo.getAttributeInfo();
-                for (int j = 0; j < attrList.length; j++) {
-                    if (attrList[j].getAttributeName().toLowerCase().indexOf(word) == 0) {
-                        String assistKeyword = null;
-                        int position = 0;
-                        if (attrList[j].hasValue()) {
-                            assistKeyword = attrList[j].getAttributeName() + "=\"\"";
-                            position = 2;
-                        } else {
-                            assistKeyword = attrList[j].getAttributeName();
-                            position = 0;
-                        }
-                        list.add(new CompletionProposal(
-                                assistKeyword, documentOffset - word.length(), word.length(),
-                                attrList[j].getAttributeName().length() + position));
-                    }
-                }
-            }
-            // close tag
-        } else if (!last.equals("")) {
-            TagInfo info = getTagInfo(last);
-            if (info == null || xhtmlMode || info.hasBody() || !info.isEmptyTag()) {
-                String assistKeyword = "</" + last + ">";
-                int length = 0;
-                if (word.equals("</")) {
-                    length = 2;
-                }
-                String contentBefore = viewer.getDocument().get().substring(0, documentOffset - length);
-                if (contentBefore.endsWith("\t")) {
-                    list.add(new CompletionProposal(
-                            assistKeyword, documentOffset - (length + 1), length + 1,
-                            assistKeyword.length()));
-                } else {
-                    list.add(new CompletionProposal(
-                            assistKeyword, documentOffset - length, length,
-                            assistKeyword.length()));
-                }
-            }
-        }
-
-        sortCompilationProposal(list);
-
-        ICompletionProposal[] templates = super.computeCompletionProposals(viewer, documentOffset);
-        for (int i = 0; i < templates.length; i++) {
-            list.add(templates[i]);
-        }
-
-        ICompletionProposal[] prop = list.toArray(new ICompletionProposal[list.size()]);
-        return prop;
-    }
-
-    @Override public IContextInformation[] computeContextInformation(final ITextViewer viewer,
-            final int documentOffset) {
-        ContextInformation[] info = new ContextInformation[0];
-        return info;
-    }
-
-    @Override public char[] getCompletionProposalAutoActivationCharacters() {
-        return chars;
-    }
-
-    @Override public char[] getContextInformationAutoActivationCharacters() {
-        return chars;
-    }
-
-    @Override public IContextInformationValidator getContextInformationValidator() {
-        return new ContextInformationValidator(this);
-    }
-
-    @Override public String getErrorMessage() {
-        return "Error";
-    }
-
-    public static void sortCompilationProposal(final List<ICompletionProposal> prop) {
-        Collections.sort(prop, new Comparator<ICompletionProposal>() {
-            public int compare(final ICompletionProposal o1, final ICompletionProposal o2) {
-                return o1.getDisplayString().compareTo(o2.getDisplayString());
-            }
-        });
-    }
-
-    public void setAutoAssistChars(final char[] chars) {
-        if (chars != null) {
-            this.chars = chars;
-        }
-    }
-
-    public void setAssistCloseTag(final boolean assistCloseTag) {
-        this.assistCloseTag = assistCloseTag;
-    }
-}
diff --git a/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/editors/htmlhelpers/HTMLContextType.java b/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/editors/htmlhelpers/HTMLContextType.java
deleted file mode 100644
index c355623..0000000
--- a/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/editors/htmlhelpers/HTMLContextType.java
+++ /dev/null
@@ -1,36 +0,0 @@
-/*
- * 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.
- */
-package org.apache.syncope.ide.eclipse.plugin.editors.htmlhelpers;
-
-import org.apache.syncope.ide.eclipse.plugin.Activator;
-import org.eclipse.jface.text.templates.GlobalTemplateVariables;
-import org.eclipse.jface.text.templates.TemplateContextType;
-
-public class HTMLContextType extends TemplateContextType {
-
-    public static final String CONTEXT_TYPE 
-        = Activator.PLUGIN_ID + ".templateContextType.html";
-
-    public HTMLContextType() {
-        addResolver(new GlobalTemplateVariables.Cursor());
-        addResolver(new GlobalTemplateVariables.WordSelection());
-        addResolver(new GlobalTemplateVariables.LineSelection());
-    }
-
-}
diff --git a/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/editors/htmlhelpers/HTMLFileDocumentProvider.java b/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/editors/htmlhelpers/HTMLFileDocumentProvider.java
deleted file mode 100644
index 2256915..0000000
--- a/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/editors/htmlhelpers/HTMLFileDocumentProvider.java
+++ /dev/null
@@ -1,50 +0,0 @@
-/*
- * 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.
- */
-package org.apache.syncope.ide.eclipse.plugin.editors.htmlhelpers;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.jface.text.IDocumentPartitioner;
-import org.eclipse.jface.text.rules.FastPartitioner;
-import org.eclipse.ui.editors.text.FileDocumentProvider;
-
-public class HTMLFileDocumentProvider extends FileDocumentProvider {
-
-    public IDocument createDocument(final Object element) throws CoreException {
-        IDocument document = super.createDocument(element);
-        if (document != null) {
-            IDocumentPartitioner partitioner =
-                new FastPartitioner(
-                        new HTMLPartitionScanner(),
-                        new String[]{
-                                HTMLPartitionScanner.HTML_TAG,
-                                HTMLPartitionScanner.HTML_COMMENT,
-                                HTMLPartitionScanner.HTML_SCRIPT,
-                                HTMLPartitionScanner.HTML_DOCTYPE,
-                                HTMLPartitionScanner.HTML_DIRECTIVE,
-                                HTMLPartitionScanner.JAVASCRIPT,
-                                HTMLPartitionScanner.HTML_CSS,
-                                HTMLPartitionScanner.SYNCOPE_TAG});
-            partitioner.connect(document);
-            document.setDocumentPartitioner(partitioner);
-        }
-        return document;
-    }
-
-}
diff --git a/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/editors/htmlhelpers/HTMLPartitionScanner.java b/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/editors/htmlhelpers/HTMLPartitionScanner.java
deleted file mode 100644
index ac52527..0000000
--- a/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/editors/htmlhelpers/HTMLPartitionScanner.java
+++ /dev/null
@@ -1,76 +0,0 @@
-/*
- * 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.
- */
-package org.apache.syncope.ide.eclipse.plugin.editors.htmlhelpers;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.jface.text.rules.EndOfLineRule;
-import org.eclipse.jface.text.rules.IPredicateRule;
-import org.eclipse.jface.text.rules.IToken;
-import org.eclipse.jface.text.rules.MultiLineRule;
-import org.eclipse.jface.text.rules.RuleBasedPartitionScanner;
-import org.eclipse.jface.text.rules.Token;
-
-public class HTMLPartitionScanner extends RuleBasedPartitionScanner {
-
-    public static final String HTML_DEFAULT   = "__html_default";
-    public static final String HTML_COMMENT   = "__html_comment";
-    public static final String HTML_TAG       = "__html_tag";
-    public static final String HTML_SCRIPT    = "__html_script";
-    public static final String HTML_DOCTYPE   = "__html_doctype";
-    public static final String HTML_DIRECTIVE = "__html_directive";
-    public static final String JAVASCRIPT     = "__html_javascript";
-    public static final String HTML_CSS       = "__html_css";
-    public static final String PREFIX_TAG     = "__prefix_tag";
-    public static final String SYNCOPE_TAG    = "__syncope_tag";
-
-    public HTMLPartitionScanner() {
-
-        IToken htmlComment   = new Token(HTML_COMMENT);
-        IToken htmlTag       = new Token(HTML_TAG);
-        IToken prefixTag     = new Token(PREFIX_TAG);
-        IToken htmlScript    = new Token(HTML_SCRIPT);
-        IToken htmlDoctype   = new Token(HTML_DOCTYPE);
-        IToken htmlDirective = new Token(HTML_DIRECTIVE);
-        IToken javaScript    = new Token(JAVASCRIPT);
-        IToken htmlCss       = new Token(HTML_CSS);
-        IToken syncopeTag    = new Token(SYNCOPE_TAG);
-
-        List<IPredicateRule> rules = new ArrayList<IPredicateRule>();
-
-        rules.add(new MultiLineRule(" <!--", "-->", htmlComment));
-        rules.add(new MultiLineRule(" <%--", "--%>", htmlComment));
-        rules.add(new DocTypeRule(htmlDoctype));
-        rules.add(new MultiLineRule(" <%@", "%>", htmlDirective));
-        rules.add(new MultiLineRule(" <%", "%>", htmlScript));
-        rules.add(new MultiLineRule(" <![CDATA[", "]]>", htmlDoctype));
-        rules.add(new MultiLineRule(" <?xml", "?>", htmlDoctype));
-        rules.add(new MultiLineRule(" <script", " </script>", javaScript));
-        rules.add(new MultiLineRule(" <style", " </style>", htmlCss));
-        //rules.add(new MultiLineRule("${", "}", syncopeTag));
-        rules.add(new EndOfLineRule("$$", syncopeTag));
-        rules.add(new TagRule(prefixTag, TagRule.PREFIX));
-        rules.add(new TagRule(htmlTag, TagRule.NO_PREFIX));
-        rules.add(new SyncopeTagRule(syncopeTag, SyncopeTagRule.PREFIX));
-        rules.add(new SyncopeTagRule(syncopeTag, SyncopeTagRule.NO_PREFIX));
-   
-        setPredicateRules(rules.toArray(new IPredicateRule[rules.size()]));
-    }
-}
diff --git a/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/editors/htmlhelpers/HTMLScanner.java b/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/editors/htmlhelpers/HTMLScanner.java
deleted file mode 100644
index 6444ddb..0000000
--- a/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/editors/htmlhelpers/HTMLScanner.java
+++ /dev/null
@@ -1,33 +0,0 @@
-/*
- * 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.
- */
-package org.apache.syncope.ide.eclipse.plugin.editors.htmlhelpers;
-
-import org.eclipse.jface.text.rules.IRule;
-import org.eclipse.jface.text.rules.RuleBasedScanner;
-import org.eclipse.jface.text.rules.WhitespaceRule;
-
-public class HTMLScanner extends RuleBasedScanner {
-
-    public HTMLScanner() {
-
-        IRule[] rules = new IRule[1];
-        rules[0] = new WhitespaceRule(new HTMLWhitespaceDetector());
-        setRules(rules);
-    }
-}
diff --git a/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/editors/htmlhelpers/HTMLTagDamagerRepairer.java b/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/editors/htmlhelpers/HTMLTagDamagerRepairer.java
deleted file mode 100644
index 9a6f155..0000000
--- a/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/editors/htmlhelpers/HTMLTagDamagerRepairer.java
+++ /dev/null
@@ -1,61 +0,0 @@
-/*
- * 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.
- */
-package org.apache.syncope.ide.eclipse.plugin.editors.htmlhelpers;
-
-import org.eclipse.jface.text.DocumentEvent;
-import org.eclipse.jface.text.IRegion;
-import org.eclipse.jface.text.ITypedRegion;
-import org.eclipse.jface.text.Region;
-import org.eclipse.jface.text.rules.DefaultDamagerRepairer;
-import org.eclipse.jface.text.rules.ITokenScanner;
-
-public class HTMLTagDamagerRepairer extends DefaultDamagerRepairer {
-
-    public HTMLTagDamagerRepairer(final ITokenScanner scanner) {
-        super(scanner);
-    }
-
-    public IRegion getDamageRegion(final ITypedRegion partition, final DocumentEvent e,
-            final boolean documentPartitioningChanged) {
-        if (!documentPartitioningChanged) {
-            String source = fDocument.get();
-            int start = source.substring(0, e.getOffset()).lastIndexOf('<');
-            if (start == -1) {
-                start = 0;
-            }
-            int end = source.indexOf('>', e.getOffset());
-            int nextEnd = source.indexOf('>', end + 1);
-            if (nextEnd >= 0 && nextEnd > end) {
-                end = nextEnd;
-            }
-            int end2 = e.getOffset() + (e.getText() == null ? e.getLength() : e.getText().length());
-            if (end == -1) {
-                end = source.length();
-            } else if (end2 > end) {
-                end = end2;
-            } else {
-                end++;
-            }
-
-            return new Region(start, end - start);
-        }
-        return partition;
-    }
-
-}
diff --git a/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/editors/htmlhelpers/HTMLTagScanner.java b/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/editors/htmlhelpers/HTMLTagScanner.java
deleted file mode 100644
index e40d35b..0000000
--- a/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/editors/htmlhelpers/HTMLTagScanner.java
+++ /dev/null
@@ -1,51 +0,0 @@
-/*
- * 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.
- */
-package org.apache.syncope.ide.eclipse.plugin.editors.htmlhelpers;
-
-import org.eclipse.jface.text.TextAttribute;
-import org.eclipse.jface.text.rules.IRule;
-import org.eclipse.jface.text.rules.IToken;
-import org.eclipse.jface.text.rules.MultiLineRule;
-import org.eclipse.jface.text.rules.RuleBasedScanner;
-import org.eclipse.jface.text.rules.Token;
-import org.eclipse.jface.text.rules.WhitespaceRule;
-import org.eclipse.swt.graphics.Color;
-import org.eclipse.swt.graphics.RGB;
-import org.eclipse.swt.widgets.Display;
-
-public class HTMLTagScanner extends RuleBasedScanner {
-
-    public HTMLTagScanner(final boolean bold) {
-        IToken string = null;
-        if (bold) {
-            RGB rgb = IHTMLColorConstants.TAGLIB_ATTR;
-            Color color = new Color(Display.getCurrent(), rgb);
-            string = new Token(new TextAttribute(color));
-        } else {
-            RGB rgb = IHTMLColorConstants.STRING;
-            Color color = new Color(Display.getCurrent(), rgb);
-            string = new Token(new TextAttribute(color));
-        }
-        IRule[] rules = new IRule[3];
-        rules[0] = new MultiLineRule("\"" , "\"" , string, '\\');
-        rules[1] = new MultiLineRule("'"  , "'"  , string, '\\');
-        rules[2] = new WhitespaceRule(new HTMLWhitespaceDetector());
-        setRules(rules);
-    }
-}
diff --git a/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/editors/htmlhelpers/HTMLTemplateAssistProcessor.java b/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/editors/htmlhelpers/HTMLTemplateAssistProcessor.java
deleted file mode 100644
index 164c44c..0000000
--- a/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/editors/htmlhelpers/HTMLTemplateAssistProcessor.java
+++ /dev/null
@@ -1,87 +0,0 @@
-/*
- * 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.
- */
-package org.apache.syncope.ide.eclipse.plugin.editors.htmlhelpers;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.jface.text.IRegion;
-import org.eclipse.jface.text.ITextSelection;
-import org.eclipse.jface.text.ITextViewer;
-import org.eclipse.jface.text.Region;
-import org.eclipse.jface.text.contentassist.ICompletionProposal;
-import org.eclipse.jface.text.templates.Template;
-import org.eclipse.jface.text.templates.TemplateCompletionProcessor;
-import org.eclipse.jface.text.templates.TemplateContext;
-import org.eclipse.jface.text.templates.TemplateContextType;
-import org.eclipse.jface.text.templates.TemplateException;
-import org.eclipse.swt.graphics.Image;
-
-public class HTMLTemplateAssistProcessor extends TemplateCompletionProcessor {
-
-    protected Template[] getTemplates(final String contextTypeId) {
-        HTMLTemplateManager manager = HTMLTemplateManager.getInstance();
-        return manager.getTemplateStore().getTemplates();
-    }
-
-    protected TemplateContextType getContextType(final ITextViewer viewer, final IRegion region) {
-        HTMLTemplateManager manager = HTMLTemplateManager.getInstance();
-        return manager.getContextTypeRegistry().getContextType(HTMLContextType.CONTEXT_TYPE);
-    }
-
-    public ICompletionProposal[] computeCompletionProposals(final ITextViewer viewer, final int offsetinp) {
-
-        int offset = offsetinp;
-        ITextSelection selection = (ITextSelection) viewer.getSelectionProvider().getSelection();
-
-        // adjust offset to end of normalized selection
-        if (selection.getOffset() == offset) {
-            offset = selection.getOffset() + selection.getLength();
-        }
-
-        String prefix = extractPrefix(viewer, offset);
-        Region region = new Region(offset - prefix.length(), prefix.length());
-        TemplateContext context = createContext(viewer, region);
-        if (context == null) {
-            return new ICompletionProposal[0];
-        }
-        context.setVariable("selection", selection.getText());
-        Template[] templates = getTemplates(context.getContextType().getId());
-        List<ICompletionProposal> matches = new ArrayList<ICompletionProposal>();
-        for (int i = 0; i < templates.length; i++) {
-            Template template = templates[i];
-            try {
-                context.getContextType().validate(template.getPattern());
-            } catch (final TemplateException e) {
-                continue;
-            }
-            if (template.getName().startsWith(prefix)
-                && template.matches(prefix, context.getContextType().getId())) {
-                matches.add(createProposal(template, context, (IRegion) region, getRelevance(template, prefix)));
-            }
-        }
-        return matches.toArray(new ICompletionProposal[matches.size()]);
-    }
-
-    @Override
-    protected Image getImage(final Template arg0) {
-        return null;
-    }
-
-}
diff --git a/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/editors/htmlhelpers/HTMLTemplateManager.java b/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/editors/htmlhelpers/HTMLTemplateManager.java
deleted file mode 100644
index 86bcda8..0000000
--- a/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/editors/htmlhelpers/HTMLTemplateManager.java
+++ /dev/null
@@ -1,68 +0,0 @@
-/*
- * 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.
- */
-package org.apache.syncope.ide.eclipse.plugin.editors.htmlhelpers;
-
-import java.io.IOException;
-
-import org.apache.syncope.ide.eclipse.plugin.Activator;
-import org.eclipse.jface.text.templates.ContextTypeRegistry;
-import org.eclipse.jface.text.templates.persistence.TemplateStore;
-import org.eclipse.ui.editors.text.templates.ContributionContextTypeRegistry;
-import org.eclipse.ui.editors.text.templates.ContributionTemplateStore;
-
-public final class HTMLTemplateManager {
-
-    private static final String CUSTOM_TEMPLATES_KEY
-        = Activator.PLUGIN_ID + ".customtemplates";
-    private static HTMLTemplateManager INSTANCE;
-    private TemplateStore fStore;
-    private ContributionContextTypeRegistry fRegistry;
-
-    private HTMLTemplateManager() {
-    }
-
-    public static HTMLTemplateManager getInstance() {
-        if (INSTANCE == null) {
-            INSTANCE = new HTMLTemplateManager();
-        }
-        return INSTANCE;
-    }
-
-    public TemplateStore getTemplateStore() {
-        if (fStore == null) {
-            fStore = new ContributionTemplateStore(getContextTypeRegistry(),
-                    Activator.getDefault().getPreferenceStore(), CUSTOM_TEMPLATES_KEY);
-            try {
-                fStore.load();
-            } catch (final IOException e) {
-                e.printStackTrace();
-            }
-        }
-        return fStore;
-    }
-
-    public ContextTypeRegistry getContextTypeRegistry() {
-        if (fRegistry == null) {
-            fRegistry = new ContributionContextTypeRegistry();
-            fRegistry.addContextType(HTMLContextType.CONTEXT_TYPE);
-        }
-        return fRegistry;
-    }
-
-}
diff --git a/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/editors/htmlhelpers/HTMLWhitespaceDetector.java b/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/editors/htmlhelpers/HTMLWhitespaceDetector.java
deleted file mode 100644
index ac944be..0000000
--- a/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/editors/htmlhelpers/HTMLWhitespaceDetector.java
+++ /dev/null
@@ -1,27 +0,0 @@
-/*
- * 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.
- */
-package org.apache.syncope.ide.eclipse.plugin.editors.htmlhelpers;
-
-import org.eclipse.jface.text.rules.IWhitespaceDetector;
-
-public class HTMLWhitespaceDetector implements IWhitespaceDetector {
-    public boolean isWhitespace(final char c) {
-        return (c == ' ' || c == '\t' || c == '\n' || c == '\r');
-    }
-}
diff --git a/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/editors/htmlhelpers/IHTMLColorConstants.java b/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/editors/htmlhelpers/IHTMLColorConstants.java
deleted file mode 100644
index 4e8624a..0000000
--- a/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/editors/htmlhelpers/IHTMLColorConstants.java
+++ /dev/null
@@ -1,42 +0,0 @@
-/*
- * 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.
- */
-package org.apache.syncope.ide.eclipse.plugin.editors.htmlhelpers;
-
-import org.eclipse.swt.graphics.RGB;
-
-/** Defines initial colors used in editors. */
-public interface IHTMLColorConstants {
-    RGB HTML_COMMENT = new RGB(128, 0, 0);
-    RGB PROC_INSTR   = new RGB(128, 128, 128);
-    RGB STRING       = new RGB(0, 128, 0);
-    RGB DEFAULT      = new RGB(0, 0, 0);
-    RGB TAG          = new RGB(0, 0, 128);
-    RGB SCRIPT       = new RGB(255, 0, 0);
-    RGB CSS_PROP     = new RGB(0, 0, 255);
-    RGB CSS_COMMENT  = new RGB(128, 0, 0);
-    RGB CSS_VALUE    = new RGB(0, 128, 0);
-    RGB FOREGROUND   = new RGB(0, 0, 0);
-    RGB BACKGROUND   = new RGB(255, 255, 255);
-    RGB JAVA_COMMENT = new RGB(0, 128, 0);
-    RGB JAVA_STRING  = new RGB(0, 0, 255);
-    RGB JAVA_KEYWORD = new RGB(128, 0, 128);
-    RGB TAGLIB       = new RGB(255, 0, 0);
-    RGB TAGLIB_ATTR  = new RGB(128, 128, 0);
-    RGB JSDOC        = new RGB(128, 128, 255);
-}
diff --git a/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/editors/htmlhelpers/InnerCSSScanner.java b/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/editors/htmlhelpers/InnerCSSScanner.java
deleted file mode 100644
index 819a293..0000000
--- a/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/editors/htmlhelpers/InnerCSSScanner.java
+++ /dev/null
@@ -1,54 +0,0 @@
-/*
- * 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.
- */
-package org.apache.syncope.ide.eclipse.plugin.editors.htmlhelpers;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.jface.text.TextAttribute;
-import org.eclipse.jface.text.rules.IRule;
-import org.eclipse.jface.text.rules.IToken;
-import org.eclipse.jface.text.rules.MultiLineRule;
-import org.eclipse.jface.text.rules.SingleLineRule;
-import org.eclipse.jface.text.rules.Token;
-import org.eclipse.swt.graphics.Color;
-import org.eclipse.swt.graphics.RGB;
-import org.eclipse.swt.widgets.Display;
-
-public class InnerCSSScanner extends CSSBlockScanner {
-
-    public InnerCSSScanner() {
-        super();
-    }
-
-    @Override protected List<IRule> createRules() {
-        RGB rgb = IHTMLColorConstants.TAGLIB;
-        Color color = new Color(Display.getCurrent(), rgb);
-        IToken tag = new Token(new TextAttribute(color));
-        rgb = IHTMLColorConstants.CSS_COMMENT;
-        color = new Color(Display.getCurrent(), rgb);
-        IToken comment = new Token(new TextAttribute(color));
-        List<IRule> rules = new ArrayList<IRule>();
-        rules.add(new SingleLineRule(" <style", ">", tag));
-        rules.add(new SingleLineRule(" </style", ">", tag));
-        rules.add(new MultiLineRule("/*", "*/", comment));
-        rules.addAll(super.createRules());
-        return rules;
-    }
-}
diff --git a/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/editors/htmlhelpers/InnerJavaScriptScanner.java b/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/editors/htmlhelpers/InnerJavaScriptScanner.java
deleted file mode 100644
index e681eca..0000000
--- a/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/editors/htmlhelpers/InnerJavaScriptScanner.java
+++ /dev/null
@@ -1,54 +0,0 @@
-/*
- * 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.
- */
-package org.apache.syncope.ide.eclipse.plugin.editors.htmlhelpers;
-
-import java.util.List;
-
-import org.eclipse.jface.text.TextAttribute;
-import org.eclipse.jface.text.rules.IRule;
-import org.eclipse.jface.text.rules.IToken;
-import org.eclipse.jface.text.rules.MultiLineRule;
-import org.eclipse.jface.text.rules.SingleLineRule;
-import org.eclipse.jface.text.rules.Token;
-import org.eclipse.swt.graphics.Color;
-import org.eclipse.swt.widgets.Display;
-
-public class InnerJavaScriptScanner extends JavaScriptScanner {
-
-    public InnerJavaScriptScanner() {
-        super();
-    }
-
-    @Override protected List<IRule> createRules() {
-        IToken tag = new Token(new TextAttribute(new Color(Display.getCurrent(),
-                IHTMLColorConstants.TAG)));
-        IToken comment = new Token(new TextAttribute(new Color(Display.getCurrent(), 
-                IHTMLColorConstants.JAVA_COMMENT)));
-        IToken jsdoc = new Token(new TextAttribute(new Color(Display.getCurrent(),
-                IHTMLColorConstants.JSDOC)));
-        List<IRule> rules = super.createRules();
-        rules.add(new SingleLineRule(" <script", ">", tag));
-        rules.add(new SingleLineRule(" </script", ">", tag));
-        rules.add(new MultiLineRule("/**", "*/", jsdoc));
-        rules.add(new MultiLineRule("/*", "*/", comment));
-        return rules;
-    }
-
-
-}
diff --git a/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/editors/htmlhelpers/JavaScriptDamagerRepairer.java b/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/editors/htmlhelpers/JavaScriptDamagerRepairer.java
deleted file mode 100644
index 99cc481..0000000
--- a/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/editors/htmlhelpers/JavaScriptDamagerRepairer.java
+++ /dev/null
@@ -1,57 +0,0 @@
-/*
- * 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.
- */
-package org.apache.syncope.ide.eclipse.plugin.editors.htmlhelpers;
-
-import org.eclipse.jface.text.DocumentEvent;
-import org.eclipse.jface.text.IRegion;
-import org.eclipse.jface.text.ITypedRegion;
-import org.eclipse.jface.text.Region;
-import org.eclipse.jface.text.rules.DefaultDamagerRepairer;
-import org.eclipse.jface.text.rules.ITokenScanner;
-
-public class JavaScriptDamagerRepairer extends DefaultDamagerRepairer {
-
-    public JavaScriptDamagerRepairer(final ITokenScanner scanner) {
-        super(scanner);
-    }
-
-    public IRegion getDamageRegion(final ITypedRegion partition, final DocumentEvent e,
-            final boolean documentPartitioningChanged) {
-        if (!documentPartitioningChanged) {
-            String source = fDocument.get();
-            int start = source.substring(0, e.getOffset()).lastIndexOf("/*");
-            if (start == -1) {
-                start = 0;
-            }
-            int end = source.indexOf("*/", e.getOffset());
-            int end2 = e.getOffset() + (e.getText() == null ? e.getLength() : e.getText().length());
-            if (end == -1) {
-                end = source.length();
-            } else if (end2 > end) {
-                end = end2;
-            } else {
-                end++;
-            }
-
-            return new Region(start, end - start);
-        }
-        return partition;
-    }
-
-}
diff --git a/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/editors/htmlhelpers/JavaScriptScanner.java b/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/editors/htmlhelpers/JavaScriptScanner.java
deleted file mode 100644
index b55721c..0000000
--- a/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/editors/htmlhelpers/JavaScriptScanner.java
+++ /dev/null
@@ -1,87 +0,0 @@
-/*
- * 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.
- */
-package org.apache.syncope.ide.eclipse.plugin.editors.htmlhelpers;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.jface.text.TextAttribute;
-import org.eclipse.jface.text.rules.EndOfLineRule;
-import org.eclipse.jface.text.rules.IRule;
-import org.eclipse.jface.text.rules.IToken;
-import org.eclipse.jface.text.rules.RuleBasedScanner;
-import org.eclipse.jface.text.rules.SingleLineRule;
-import org.eclipse.jface.text.rules.Token;
-import org.eclipse.jface.text.rules.WordRule;
-import org.eclipse.swt.graphics.Color;
-import org.eclipse.swt.widgets.Display;
-
-public class JavaScriptScanner extends RuleBasedScanner {
-
-    public static final String[] KEYWORDS = {
-            "abstract",
-            "boolean", "break", "byte",
-            "case", "catch", "char", "class", "const", "continue",
-            "debugger", "default", "delete", "do", "double",
-            "else", "enum", "export", "extends",
-            "false", "final", "finally", "float", "for", "function",
-            "goto", "if", "implements", "import", "in", "instanceof", "int", "interface",
-            "let", "long",
-            "native", "new", "null",
-            "package", "private", "protected", "prototype", "public",
-            "return", "short", "static", "super", "switch", "synchronized",
-            "this", "throw", "throws", "transient", "true", "try", "typeof",
-            "var", "void", "while", "with",
-            "typeof", "yield", "undefined", "Infinity", "NaN"
-    };
-
-    public JavaScriptScanner() {
-        List<IRule> rules = createRules();
-        setRules(rules.toArray(new IRule[rules.size()]));
-    }
-
-    /**
-     * Creates the list of <code>IRule</code>.
-     * If you have to customize rules, override this method.
-     *
-     * @return the list of <code>IRule</code>
-     */
-    protected List<IRule> createRules() {
-        IToken normal  = new Token(new TextAttribute(new Color(Display.getCurrent(),
-                IHTMLColorConstants.FOREGROUND)));
-        IToken string  = new Token(new TextAttribute(new Color(Display.getCurrent(),
-                IHTMLColorConstants.JAVA_STRING)));
-        IToken comment = new Token(new TextAttribute(new Color(Display.getCurrent(),
-                IHTMLColorConstants.JAVA_COMMENT)));
-        IToken keyword = new Token(new TextAttribute(new Color(Display.getCurrent(),
-                IHTMLColorConstants.JAVA_KEYWORD)));
-        List<IRule> rules = new ArrayList<IRule>();
-        rules.add(new SingleLineRule("\"", "\"", string, '\\'));
-        rules.add(new SingleLineRule("'", "'", string, '\\'));
-        rules.add(new SingleLineRule("\\//", null, normal));
-        rules.add(new EndOfLineRule("//", comment));
-        WordRule wordRule = new WordRule(new JavaWordDetector(), normal);
-        for (int i = 0; i < KEYWORDS.length; i++) {
-            wordRule.addWord(KEYWORDS[i], keyword);
-        }
-        rules.add(wordRule);
-        return rules;
-    }
-
-}
diff --git a/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/editors/htmlhelpers/JavaWordDetector.java b/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/editors/htmlhelpers/JavaWordDetector.java
deleted file mode 100644
index 5043925..0000000
--- a/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/editors/htmlhelpers/JavaWordDetector.java
+++ /dev/null
@@ -1,33 +0,0 @@
-/*
- * 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.
- */
-package org.apache.syncope.ide.eclipse.plugin.editors.htmlhelpers;
-
-import org.eclipse.jface.text.rules.IWordDetector;
-
-public class JavaWordDetector implements IWordDetector {
-
-    public boolean isWordStart(final char c) {
-        return Character.isJavaIdentifierStart(c);
-    }
-
-    public boolean isWordPart(final char c) {
-        return Character.isJavaIdentifierPart(c);
-    }
-
-}
diff --git a/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/editors/htmlhelpers/SyncopeTagRule.java b/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/editors/htmlhelpers/SyncopeTagRule.java
deleted file mode 100644
index 8567ed0..0000000
--- a/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/editors/htmlhelpers/SyncopeTagRule.java
+++ /dev/null
@@ -1,119 +0,0 @@
-/*
- * 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.
- */
-package org.apache.syncope.ide.eclipse.plugin.editors.htmlhelpers;
-
-import org.eclipse.jface.text.rules.ICharacterScanner;
-import org.eclipse.jface.text.rules.IToken;
-import org.eclipse.jface.text.rules.MultiLineRule;
-
-public class SyncopeTagRule extends MultiLineRule {
-
-    public static final int PREFIX = 0;
-    public static final int NO_PREFIX = 1;
-    public static final int BOTH = 2;
-    private int prefix;
-
-    public SyncopeTagRule(final IToken token, final int prefix) {
-        super("${", "}", token);
-        this.prefix = prefix;
-    }
-
-    protected boolean sequenceDetected(final ICharacterScanner scanner,
-            final char[] sequence, final boolean eofAllowed) {
-        if (sequence[0] == '$' && sequence[1] == '{') {
-            int c = scanner.read();
-            if (c == '?' || c == '!' || c == '%') {
-                scanner.unread();
-                return false;
-            }
-            int back = 1;
-            try {
-                while (true) {
-                    c = scanner.read();
-                    back++;
-                    if (c == -1) {
-                        return false;
-                    }
-                    if (Character.isWhitespace(c) || c == '}') {
-                        if (prefix == PREFIX) {
-                            return false;
-                        }
-                        break;
-                    } else if (c == ':') {
-                        if (prefix == NO_PREFIX) {
-                            return false;
-                        }
-                        break;
-                    }
-                }
-            } finally {
-                for (int i = 0; i < back; i++) {
-                    scanner.unread();
-                }
-            }
-        } else if (sequence[0] == '}') {
-            // read previous char
-            scanner.unread();
-            scanner.unread();
-            int c = scanner.read();
-            // repair position
-            scanner.read();
-
-            if (c == '%') {
-                return false;
-            }
-        }
-        return super.sequenceDetected(scanner, sequence, eofAllowed);
-    }
-
-    protected boolean endSequenceDetected(final ICharacterScanner scanner) {
-        int c;
-        boolean doubleQuoted = false;
-        boolean singleQuoted = false;
-        char[][] delimiters = scanner.getLegalLineDelimiters();
-        boolean previousWasEscapeCharacter = false;
-        while ((c = scanner.read()) != ICharacterScanner.EOF) {
-            if (c == fEscapeCharacter) {
-                // Skip the escaped character.
-                scanner.read();
-            } else if (c == '"' && !singleQuoted) {
-                doubleQuoted = !doubleQuoted;
-            } else if (c == '\'' && !doubleQuoted) {
-                singleQuoted = !singleQuoted;
-            } else if (fEndSequence.length > 0 && c == fEndSequence[0] && !doubleQuoted
-                    && !singleQuoted && sequenceDetected(scanner, fEndSequence, true)) {
-                return true;
-            } else if (fBreaksOnEOL) {
-                // Check for end of line since it can be used to terminate the pattern.
-                for (int i = 0; i < delimiters.length; i++) {
-                    if (c == delimiters[i][0] && sequenceDetected(scanner, delimiters[i], true)
-                            && (!fEscapeContinuesLine || !previousWasEscapeCharacter)) {
-                        return true;
-                    }
-                }
-            }
-            previousWasEscapeCharacter = (c == fEscapeCharacter);
-        }
-        if (fBreaksOnEOF) {
-            return true;
-        }
-        scanner.unread();
-        return false;
-    }
-}
diff --git a/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/editors/htmlhelpers/SyncopeTagScanner.java b/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/editors/htmlhelpers/SyncopeTagScanner.java
deleted file mode 100644
index 8d7da79..0000000
--- a/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/editors/htmlhelpers/SyncopeTagScanner.java
+++ /dev/null
@@ -1,51 +0,0 @@
-/*
- * 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.
- */
-package org.apache.syncope.ide.eclipse.plugin.editors.htmlhelpers;
-
-import org.eclipse.jface.text.TextAttribute;
-import org.eclipse.jface.text.rules.IRule;
-import org.eclipse.jface.text.rules.IToken;
-import org.eclipse.jface.text.rules.MultiLineRule;
-import org.eclipse.jface.text.rules.RuleBasedScanner;
-import org.eclipse.jface.text.rules.Token;
-import org.eclipse.jface.text.rules.WhitespaceRule;
-import org.eclipse.swt.graphics.Color;
-import org.eclipse.swt.graphics.RGB;
-import org.eclipse.swt.widgets.Display;
-
-public class SyncopeTagScanner extends RuleBasedScanner {
-
-    public SyncopeTagScanner(final boolean bold) {
-        IToken string = null;
-        if (bold) {
-            RGB rgb = IHTMLColorConstants.TAGLIB_ATTR;
-            Color color = new Color(Display.getCurrent(), rgb);
-            string = new Token(new TextAttribute(color));
-        } else {
-            RGB rgb = IHTMLColorConstants.STRING;
-            Color color = new Color(Display.getCurrent(), rgb);
-            string = new Token(new TextAttribute(color));
-        }
-        IRule[] rules = new IRule[3];
-        rules[0] = new MultiLineRule("\"" , "\"" , string, '\\');
-        rules[1] = new MultiLineRule("'"  , "'"  , string, '\\');
-        rules[2] = new WhitespaceRule(new HTMLWhitespaceDetector());
-        setRules(rules);
-    }
-}
diff --git a/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/editors/htmlhelpers/TagDefinition.java b/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/editors/htmlhelpers/TagDefinition.java
deleted file mode 100644
index f5d381d..0000000
--- a/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/editors/htmlhelpers/TagDefinition.java
+++ /dev/null
@@ -1,1582 +0,0 @@
-/*
- * 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.
- */
-package org.apache.syncope.ide.eclipse.plugin.editors.htmlhelpers;
-
-import java.util.ArrayList;
-import java.util.List;
-
-public final class TagDefinition {
-
-    private static List<TagInfo> TAG_LIST = new ArrayList<TagInfo>();
-
-    private TagDefinition() {
-    }
-
-    public static TagInfo[] getTagInfoAsArray() {
-        return TAG_LIST.toArray(new TagInfo[TAG_LIST.size()]);
-    }
-
-    public static List<TagInfo> getTagInfoAsList() {
-        return TAG_LIST;
-    }
-
-    private static void addTagInfo(final TagInfo tagInfo) {
-        TAG_LIST.add(tagInfo);
-    }
-
-    private static void addEventAttr(final TagInfo tagInfo) {
-        tagInfo.addAttributeInfo(new AttributeInfo("onclick", true));
-        tagInfo.addAttributeInfo(new AttributeInfo("ondblclick", true));
-        tagInfo.addAttributeInfo(new AttributeInfo("onmousedown", true));
-        tagInfo.addAttributeInfo(new AttributeInfo("onmouseup", true));
-        tagInfo.addAttributeInfo(new AttributeInfo("onmouseover", true));
-        tagInfo.addAttributeInfo(new AttributeInfo("onmousemove", true));
-        tagInfo.addAttributeInfo(new AttributeInfo("onmouseout", true));
-        tagInfo.addAttributeInfo(new AttributeInfo("onkeypress", true));
-        tagInfo.addAttributeInfo(new AttributeInfo("onkeydown", true));
-        tagInfo.addAttributeInfo(new AttributeInfo("onkeyup", true));
-    }
-
-    static {
-        TagInfo a = new TagInfo("a", true);
-        a.addAttributeInfo(new AttributeInfo("href", true,
-            AttributeInfo.AttributeTypeOptions.FILE));
-        a.addAttributeInfo(new AttributeInfo("name", true));
-        a.addAttributeInfo(new AttributeInfo("target", true,
-            AttributeInfo.AttributeTypeOptions.TARGET));
-        a.addAttributeInfo(new AttributeInfo("charset", true));
-        a.addAttributeInfo(new AttributeInfo("hreflang", true));
-        a.addAttributeInfo(new AttributeInfo("methods", true));
-        a.addAttributeInfo(new AttributeInfo("rel", true));
-        a.addAttributeInfo(new AttributeInfo("rev", true));
-        a.addAttributeInfo(new AttributeInfo("type", true));
-        a.addAttributeInfo(new AttributeInfo("urn", true));
-        a.addAttributeInfo(new AttributeInfo("coords", true));
-        a.addAttributeInfo(new AttributeInfo("shape", true));
-        a.addAttributeInfo(new AttributeInfo("class", true,
-            AttributeInfo.AttributeTypeOptions.CSS));
-        a.addAttributeInfo(new AttributeInfo("dir", true));
-        a.addAttributeInfo(new AttributeInfo("id", true));
-        a.addAttributeInfo(new AttributeInfo("lang", true));
-        a.addAttributeInfo(new AttributeInfo("style", true));
-        a.addAttributeInfo(new AttributeInfo("title", true));
-        a.addAttributeInfo(new AttributeInfo("onfocus", true));
-        a.addAttributeInfo(new AttributeInfo("onblur", true));
-        addEventAttr(a);
-        addTagInfo(a);
-
-        TagInfo abbr = new TagInfo("abbr", true);
-        abbr.addAttributeInfo(new AttributeInfo("class", true,
-            AttributeInfo.AttributeTypeOptions.CSS));
-        abbr.addAttributeInfo(new AttributeInfo("dir", true));
-        abbr.addAttributeInfo(new AttributeInfo("id", true));
-        abbr.addAttributeInfo(new AttributeInfo("lang", true));
-        abbr.addAttributeInfo(new AttributeInfo("style", true));
-        abbr.addAttributeInfo(new AttributeInfo("title", true));
-        addEventAttr(abbr);
-        addTagInfo(abbr);
-
-        TagInfo acronym = new TagInfo("acronym", true);
-        acronym.addAttributeInfo(new AttributeInfo("class", true,
-            AttributeInfo.AttributeTypeOptions.CSS));
-        acronym.addAttributeInfo(new AttributeInfo("dir", true));
-        acronym.addAttributeInfo(new AttributeInfo("id", true));
-        acronym.addAttributeInfo(new AttributeInfo("lang", true));
-        acronym.addAttributeInfo(new AttributeInfo("style", true));
-        acronym.addAttributeInfo(new AttributeInfo("title", true));
-        addEventAttr(acronym);
-        addTagInfo(acronym);
-
-        TagInfo address = new TagInfo("address", true);
-        address.addAttributeInfo(new AttributeInfo("class", true,
-            AttributeInfo.AttributeTypeOptions.CSS));
-        address.addAttributeInfo(new AttributeInfo("dir", true));
-        address.addAttributeInfo(new AttributeInfo("id", true));
-        address.addAttributeInfo(new AttributeInfo("lang", true));
-        address.addAttributeInfo(new AttributeInfo("style", true));
-        address.addAttributeInfo(new AttributeInfo("title", true));
-        addEventAttr(address);
-        addTagInfo(address);
-
-        TagInfo applet = new TagInfo("applet", true);
-        applet.addAttributeInfo(new AttributeInfo("alt", true));
-        applet.addAttributeInfo(new AttributeInfo("archive", true));
-        applet.addAttributeInfo(new AttributeInfo("code", true));
-        applet.addAttributeInfo(new AttributeInfo("codebase", true));
-        applet.addAttributeInfo(new AttributeInfo("align", true,
-            AttributeInfo.AttributeTypeOptions.ALIGN));
-        applet.addAttributeInfo(new AttributeInfo("height", true));
-        applet.addAttributeInfo(new AttributeInfo("hspace", true));
-        applet.addAttributeInfo(new AttributeInfo("vspace", true));
-        applet.addAttributeInfo(new AttributeInfo("width", true));
-        applet.addAttributeInfo(new AttributeInfo("class", true,
-            AttributeInfo.AttributeTypeOptions.CSS));
-        applet.addAttributeInfo(new AttributeInfo("id", true));
-        applet.addAttributeInfo(new AttributeInfo("name", true));
-        applet.addAttributeInfo(new AttributeInfo("style", true));
-        applet.addAttributeInfo(new AttributeInfo("title", true));
-        addTagInfo(applet);
-
-        TagInfo area = new TagInfo("area", false, true);
-        area.addAttributeInfo(new AttributeInfo("shape", true));
-        area.addAttributeInfo(new AttributeInfo("coords", true));
-        area.addAttributeInfo(new AttributeInfo("href", true));
-        area.addAttributeInfo(new AttributeInfo("alt", true));
-        area.addAttributeInfo(new AttributeInfo("class", true,
-            AttributeInfo.AttributeTypeOptions.CSS));
-        area.addAttributeInfo(new AttributeInfo("dir", true));
-        area.addAttributeInfo(new AttributeInfo("id", true));
-        area.addAttributeInfo(new AttributeInfo("lang", true));
-        area.addAttributeInfo(new AttributeInfo("language", true));
-        area.addAttributeInfo(new AttributeInfo("name", true));
-        area.addAttributeInfo(new AttributeInfo("style", true));
-        area.addAttributeInfo(new AttributeInfo("title", true));
-        area.addAttributeInfo(new AttributeInfo("onfocus", true));
-        area.addAttributeInfo(new AttributeInfo("onblur", true));
-        addEventAttr(area);
-        addTagInfo(area);
-
-        TagInfo b = new TagInfo("b", true);
-        b.addAttributeInfo(new AttributeInfo("class", true,
-            AttributeInfo.AttributeTypeOptions.CSS));
-        b.addAttributeInfo(new AttributeInfo("dir", true));
-        b.addAttributeInfo(new AttributeInfo("id", true));
-        b.addAttributeInfo(new AttributeInfo("lang", true));
-        b.addAttributeInfo(new AttributeInfo("style", true));
-        b.addAttributeInfo(new AttributeInfo("title", true));
-        addEventAttr(b);
-        addTagInfo(b);
-
-        TagInfo base = new TagInfo("base", false, true);
-        base.addAttributeInfo(new AttributeInfo("href", true));
-        base.addAttributeInfo(new AttributeInfo("target", true));
-        addTagInfo(base);
-
-        TagInfo basefont = new TagInfo("basefont", false, true);
-        basefont.addAttributeInfo(new AttributeInfo("size", true));
-        basefont.addAttributeInfo(new AttributeInfo("color", true));
-        basefont.addAttributeInfo(new AttributeInfo("face", true));
-        basefont.addAttributeInfo(new AttributeInfo("class", true,
-            AttributeInfo.AttributeTypeOptions.CSS));
-        basefont.addAttributeInfo(new AttributeInfo("id", true));
-        basefont.addAttributeInfo(new AttributeInfo("lang", true));
-        basefont.addAttributeInfo(new AttributeInfo("style", true));
-        addTagInfo(basefont);
-
-        TagInfo bdo = new TagInfo("bdo", true);
-        bdo.addAttributeInfo(new AttributeInfo("class", true,
-            AttributeInfo.AttributeTypeOptions.CSS));
-        bdo.addAttributeInfo(new AttributeInfo("dir", true));
-        bdo.addAttributeInfo(new AttributeInfo("id", true));
-        bdo.addAttributeInfo(new AttributeInfo("lang", true));
-        bdo.addAttributeInfo(new AttributeInfo("style", true));
-        bdo.addAttributeInfo(new AttributeInfo("title", true));
-        addTagInfo(bdo);
-
-        TagInfo bgsound = new TagInfo("bgsound", false);
-        bgsound.addAttributeInfo(new AttributeInfo("balance", true));
-        bgsound.addAttributeInfo(new AttributeInfo("loop", true));
-        bgsound.addAttributeInfo(new AttributeInfo("src", true));
-        bgsound.addAttributeInfo(new AttributeInfo("volume", true));
-        bgsound.addAttributeInfo(new AttributeInfo("class", true,
-            AttributeInfo.AttributeTypeOptions.CSS));
-        bgsound.addAttributeInfo(new AttributeInfo("id", true));
-        bgsound.addAttributeInfo(new AttributeInfo("lang", true));
-        bgsound.addAttributeInfo(new AttributeInfo("title", true));
-        addTagInfo(bgsound);
-
-        TagInfo big = new TagInfo("big", true);
-        big.addAttributeInfo(new AttributeInfo("class", true,
-            AttributeInfo.AttributeTypeOptions.CSS));
-        big.addAttributeInfo(new AttributeInfo("dir", true));
-        big.addAttributeInfo(new AttributeInfo("id", true));
-        big.addAttributeInfo(new AttributeInfo("lang", true));
-        big.addAttributeInfo(new AttributeInfo("style", true));
-        big.addAttributeInfo(new AttributeInfo("title", true));
-        addEventAttr(big);
-        addTagInfo(big);
-
-        TagInfo blink = new TagInfo("blink", true);
-        blink.addAttributeInfo(new AttributeInfo("class", true,
-            AttributeInfo.AttributeTypeOptions.CSS));
-        blink.addAttributeInfo(new AttributeInfo("dir", true));
-        blink.addAttributeInfo(new AttributeInfo("id", true));
-        blink.addAttributeInfo(new AttributeInfo("lang", true));
-        blink.addAttributeInfo(new AttributeInfo("style", true));
-        blink.addAttributeInfo(new AttributeInfo("title", true));
-        addEventAttr(blink);
-        addTagInfo(blink);
-
-        TagInfo blockquote = new TagInfo("blockquote", true);
-        blockquote.addAttributeInfo(new AttributeInfo("cite", true));
-        blockquote.addAttributeInfo(new AttributeInfo("class", true,
-            AttributeInfo.AttributeTypeOptions.CSS));
-        blockquote.addAttributeInfo(new AttributeInfo("dir", true));
-        blockquote.addAttributeInfo(new AttributeInfo("id", true));
-        blockquote.addAttributeInfo(new AttributeInfo("lang", true));
-        blockquote.addAttributeInfo(new AttributeInfo("style", true));
-        blockquote.addAttributeInfo(new AttributeInfo("title", true));
-        addEventAttr(blockquote);
-        addTagInfo(blockquote);
-
-        TagInfo body = new TagInfo("body", true);
-        body.addAttributeInfo(new AttributeInfo("text", true));
-        body.addAttributeInfo(new AttributeInfo("link", true));
-        body.addAttributeInfo(new AttributeInfo("vlink", true));
-        body.addAttributeInfo(new AttributeInfo("alink", true));
-        body.addAttributeInfo(new AttributeInfo("bgcolor", true));
-        body.addAttributeInfo(new AttributeInfo("background", true));
-        body.addAttributeInfo(new AttributeInfo("marginheight", true));
-        body.addAttributeInfo(new AttributeInfo("marginwidth", true));
-        body.addAttributeInfo(new AttributeInfo("topmargin", true));
-        body.addAttributeInfo(new AttributeInfo("leftmargin", true));
-        body.addAttributeInfo(new AttributeInfo("bottommargin", true));
-        body.addAttributeInfo(new AttributeInfo("rightmargin", true));
-        body.addAttributeInfo(new AttributeInfo("scroll", true));
-        body.addAttributeInfo(new AttributeInfo("class", true,
-            AttributeInfo.AttributeTypeOptions.CSS));
-        body.addAttributeInfo(new AttributeInfo("dir", true));
-        body.addAttributeInfo(new AttributeInfo("id", true));
-        body.addAttributeInfo(new AttributeInfo("lang", true));
-        body.addAttributeInfo(new AttributeInfo("style", true));
-        body.addAttributeInfo(new AttributeInfo("title", true));
-        body.addAttributeInfo(new AttributeInfo("onload", true));
-        body.addAttributeInfo(new AttributeInfo("onunload", true));
-        addTagInfo(body);
-
-        TagInfo br = new TagInfo("br", false, true);
-        br.addAttributeInfo(new AttributeInfo("clear", true));
-        br.addAttributeInfo(new AttributeInfo("class", true,
-            AttributeInfo.AttributeTypeOptions.CSS));
-        br.addAttributeInfo(new AttributeInfo("id", true));
-        br.addAttributeInfo(new AttributeInfo("language", true));
-        br.addAttributeInfo(new AttributeInfo("style", true));
-        br.addAttributeInfo(new AttributeInfo("title", true));
-        addTagInfo(br);
-
-        TagInfo button = new TagInfo("button", true);
-        button.addAttributeInfo(new AttributeInfo("disabled", false));
-        button.addAttributeInfo(new AttributeInfo("type", true));
-        button.addAttributeInfo(new AttributeInfo("value", true));
-        button.addAttributeInfo(new AttributeInfo("class", true,
-            AttributeInfo.AttributeTypeOptions.CSS));
-        button.addAttributeInfo(new AttributeInfo("dir", true));
-        button.addAttributeInfo(new AttributeInfo("id", true));
-        button.addAttributeInfo(new AttributeInfo("lang", true));
-        button.addAttributeInfo(new AttributeInfo("name", true));
-        button.addAttributeInfo(new AttributeInfo("style", true));
-        button.addAttributeInfo(new AttributeInfo("title", true));
-        button.addAttributeInfo(new AttributeInfo("onfocus", true));
-        button.addAttributeInfo(new AttributeInfo("onblur", true));
-        addEventAttr(button);
-        addTagInfo(button);
-
-        TagInfo caption = new TagInfo("caption", true);
-        caption.addAttributeInfo(new AttributeInfo("align", true,
-            AttributeInfo.AttributeTypeOptions.ALIGN));
-        caption.addAttributeInfo(new AttributeInfo("valign", true,
-            AttributeInfo.AttributeTypeOptions.VALIGN));
-        caption.addAttributeInfo(new AttributeInfo("class", true,
-            AttributeInfo.AttributeTypeOptions.CSS));
-        caption.addAttributeInfo(new AttributeInfo("dir", true));
-        caption.addAttributeInfo(new AttributeInfo("id", true));
-        caption.addAttributeInfo(new AttributeInfo("lang", true));
-        caption.addAttributeInfo(new AttributeInfo("style", true));
-        caption.addAttributeInfo(new AttributeInfo("title", true));
-        addEventAttr(caption);
-        addTagInfo(caption);
-
-        TagInfo center = new TagInfo("center", true);
-        center.addAttributeInfo(new AttributeInfo("class", true,
-            AttributeInfo.AttributeTypeOptions.CSS));
-        center.addAttributeInfo(new AttributeInfo("dir", true));
-        center.addAttributeInfo(new AttributeInfo("id", true));
-        center.addAttributeInfo(new AttributeInfo("lang", true));
-        center.addAttributeInfo(new AttributeInfo("style", true));
-        center.addAttributeInfo(new AttributeInfo("title", true));
-        addEventAttr(center);
-        addTagInfo(center);
-
-        TagInfo cite = new TagInfo("cite", true);
-        cite.addAttributeInfo(new AttributeInfo("class", true,
-            AttributeInfo.AttributeTypeOptions.CSS));
-        cite.addAttributeInfo(new AttributeInfo("dir", true));
-        cite.addAttributeInfo(new AttributeInfo("id", true));
-        cite.addAttributeInfo(new AttributeInfo("lang", true));
-        cite.addAttributeInfo(new AttributeInfo("style", true));
-        cite.addAttributeInfo(new AttributeInfo("title", true));
-        addEventAttr(cite);
-        addTagInfo(cite);
-
-        TagInfo code = new TagInfo("code", true);
-        code.addAttributeInfo(new AttributeInfo("class", true,
-            AttributeInfo.AttributeTypeOptions.CSS));
-        code.addAttributeInfo(new AttributeInfo("dir", true));
-        code.addAttributeInfo(new AttributeInfo("id", true));
-        code.addAttributeInfo(new AttributeInfo("lang", true));
-        code.addAttributeInfo(new AttributeInfo("style", true));
-        code.addAttributeInfo(new AttributeInfo("title", true));
-        addEventAttr(code);
-        addTagInfo(code);
-
-        TagInfo col = new TagInfo("col", false, true);
-        col.addAttributeInfo(new AttributeInfo("align", true,
-            AttributeInfo.AttributeTypeOptions.ALIGN));
-        col.addAttributeInfo(new AttributeInfo("bgcolor", true));
-        col.addAttributeInfo(new AttributeInfo("char", true));
-        col.addAttributeInfo(new AttributeInfo("charoff", true));
-        col.addAttributeInfo(new AttributeInfo("span", true));
-        col.addAttributeInfo(new AttributeInfo("valign", true,
-            AttributeInfo.AttributeTypeOptions.VALIGN));
-        col.addAttributeInfo(new AttributeInfo("width", true));
-        col.addAttributeInfo(new AttributeInfo("class", true,
-            AttributeInfo.AttributeTypeOptions.CSS));
-        col.addAttributeInfo(new AttributeInfo("dir", true));
-        col.addAttributeInfo(new AttributeInfo("id", true));
-        col.addAttributeInfo(new AttributeInfo("lang", true));
-        col.addAttributeInfo(new AttributeInfo("style", true));
-        col.addAttributeInfo(new AttributeInfo("title", true));
-        addEventAttr(col);
-        addTagInfo(col);
-
-        TagInfo colgroup = new TagInfo("colgroup", true);
-        colgroup.addAttributeInfo(new AttributeInfo("align", true,
-            AttributeInfo.AttributeTypeOptions.ALIGN));
-        colgroup.addAttributeInfo(new AttributeInfo("bgcolor", true));
-        colgroup.addAttributeInfo(new AttributeInfo("char", true));
-        colgroup.addAttributeInfo(new AttributeInfo("charoff", true));
-        colgroup.addAttributeInfo(new AttributeInfo("span", true));
-        colgroup.addAttributeInfo(new AttributeInfo("valign", true,
-            AttributeInfo.AttributeTypeOptions.VALIGN));
-        colgroup.addAttributeInfo(new AttributeInfo("width", true));
-        colgroup.addAttributeInfo(new AttributeInfo("class", true,
-            AttributeInfo.AttributeTypeOptions.CSS));
-        colgroup.addAttributeInfo(new AttributeInfo("dir", true));
-        colgroup.addAttributeInfo(new AttributeInfo("id", true));
-        colgroup.addAttributeInfo(new AttributeInfo("lang", true));
-        colgroup.addAttributeInfo(new AttributeInfo("style", true));
-        colgroup.addAttributeInfo(new AttributeInfo("title", true));
-        addEventAttr(colgroup);
-        addTagInfo(colgroup);
-
-        TagInfo comment = new TagInfo("comment", true);
-        comment.addAttributeInfo(new AttributeInfo("id", true));
-        comment.addAttributeInfo(new AttributeInfo("lang", true));
-        addTagInfo(comment);
-
-        TagInfo dd = new TagInfo("dd", true);
-        dd.addAttributeInfo(new AttributeInfo("class", true,
-            AttributeInfo.AttributeTypeOptions.CSS));
-        dd.addAttributeInfo(new AttributeInfo("dir", true));
-        dd.addAttributeInfo(new AttributeInfo("id", true));
-        dd.addAttributeInfo(new AttributeInfo("lang", true));
-        dd.addAttributeInfo(new AttributeInfo("style", true));
-        dd.addAttributeInfo(new AttributeInfo("title", true));
-        addEventAttr(dd);
-        addTagInfo(dd);
-
-        TagInfo del = new TagInfo("del", true);
-        del.addAttributeInfo(new AttributeInfo("cite", true));
-        del.addAttributeInfo(new AttributeInfo("datetime", true));
-        del.addAttributeInfo(new AttributeInfo("class", true,
-            AttributeInfo.AttributeTypeOptions.CSS));
-        del.addAttributeInfo(new AttributeInfo("dir", true));
-        del.addAttributeInfo(new AttributeInfo("id", true));
-        del.addAttributeInfo(new AttributeInfo("lang", true));
-        del.addAttributeInfo(new AttributeInfo("style", true));
-        del.addAttributeInfo(new AttributeInfo("title", true));
-        addEventAttr(del);
-        addTagInfo(del);
-
-        TagInfo dfn = new TagInfo("dfn", true);
-        dfn.addAttributeInfo(new AttributeInfo("class", true,
-            AttributeInfo.AttributeTypeOptions.CSS));
-        dfn.addAttributeInfo(new AttributeInfo("dir", true));
-        dfn.addAttributeInfo(new AttributeInfo("id", true));
-        dfn.addAttributeInfo(new AttributeInfo("lang", true));
-        dfn.addAttributeInfo(new AttributeInfo("style", true));
-        dfn.addAttributeInfo(new AttributeInfo("title", true));
-        addEventAttr(dfn);
-        addTagInfo(dfn);
-
-        TagInfo dir = new TagInfo("dir", true);
-        dir.addAttributeInfo(new AttributeInfo("compact", false));
-        dir.addAttributeInfo(new AttributeInfo("type", true));
-        dir.addAttributeInfo(new AttributeInfo("class", true,
-            AttributeInfo.AttributeTypeOptions.CSS));
-        dir.addAttributeInfo(new AttributeInfo("dir", true));
-        dir.addAttributeInfo(new AttributeInfo("id", true));
-        dir.addAttributeInfo(new AttributeInfo("lang", true));
-        dir.addAttributeInfo(new AttributeInfo("style", true));
-        dir.addAttributeInfo(new AttributeInfo("title", true));
-        addTagInfo(dir);
-
-        TagInfo div = new TagInfo("div", true);
-        div.addAttributeInfo(new AttributeInfo("align", true,
-            AttributeInfo.AttributeTypeOptions.ALIGN));
-        div.addAttributeInfo(new AttributeInfo("class", true,
-            AttributeInfo.AttributeTypeOptions.CSS));
-        div.addAttributeInfo(new AttributeInfo("dir", true));
-        div.addAttributeInfo(new AttributeInfo("id", true));
-        div.addAttributeInfo(new AttributeInfo("lang", true));
-        div.addAttributeInfo(new AttributeInfo("style", true));
-        div.addAttributeInfo(new AttributeInfo("title", true));
-        addEventAttr(div);
-        addTagInfo(div);
-
-        TagInfo dl = new TagInfo("dl", true);
-        dl.addAttributeInfo(new AttributeInfo("compact", false));
-        dl.addAttributeInfo(new AttributeInfo("class", true,
-            AttributeInfo.AttributeTypeOptions.CSS));
-        dl.addAttributeInfo(new AttributeInfo("dir", true));
-        dl.addAttributeInfo(new AttributeInfo("id", true));
-        dl.addAttributeInfo(new AttributeInfo("lang", true));
-        dl.addAttributeInfo(new AttributeInfo("style", true));
-        dl.addAttributeInfo(new AttributeInfo("title", true));
-        addEventAttr(dl);
-        addTagInfo(dl);
-
-        TagInfo dt = new TagInfo("dt", true);
-        dt.addAttributeInfo(new AttributeInfo("class", true,
-            AttributeInfo.AttributeTypeOptions.CSS));
-        dt.addAttributeInfo(new AttributeInfo("dir", true));
-        dt.addAttributeInfo(new AttributeInfo("id", true));
-        dt.addAttributeInfo(new AttributeInfo("lang", true));
-        dt.addAttributeInfo(new AttributeInfo("style", true));
-        dt.addAttributeInfo(new AttributeInfo("title", true));
-        addEventAttr(dt);
-        addTagInfo(dt);
-
-        TagInfo em = new TagInfo("em", true);
-        em.addAttributeInfo(new AttributeInfo("class", true,
-            AttributeInfo.AttributeTypeOptions.CSS));
-        em.addAttributeInfo(new AttributeInfo("dir", true));
-        em.addAttributeInfo(new AttributeInfo("id", true));
-        em.addAttributeInfo(new AttributeInfo("lang", true));
-        em.addAttributeInfo(new AttributeInfo("style", true));
-        em.addAttributeInfo(new AttributeInfo("title", true));
-        addEventAttr(em);
-        addTagInfo(em);
-
-        TagInfo embed = new TagInfo("embed", false);
-        embed.addAttributeInfo(new AttributeInfo("src", true));
-        embed.addAttributeInfo(new AttributeInfo("align", true,
-            AttributeInfo.AttributeTypeOptions.ALIGN));
-        embed.addAttributeInfo(new AttributeInfo("height", true));
-        embed.addAttributeInfo(new AttributeInfo("hspace", true));
-        embed.addAttributeInfo(new AttributeInfo("vspace", true));
-        embed.addAttributeInfo(new AttributeInfo("units", true));
-        embed.addAttributeInfo(new AttributeInfo("border", true));
-        embed.addAttributeInfo(new AttributeInfo("frameborder", true));
-        embed.addAttributeInfo(new AttributeInfo("hidden", true));
-        embed.addAttributeInfo(new AttributeInfo("alt", true));
-        embed.addAttributeInfo(new AttributeInfo("code", true));
-        embed.addAttributeInfo(new AttributeInfo("codebase", true));
-        embed.addAttributeInfo(new AttributeInfo("type", true));
-        embed.addAttributeInfo(new AttributeInfo("palette", true));
-        embed.addAttributeInfo(new AttributeInfo("pluginspace", true));
-        embed.addAttributeInfo(new AttributeInfo("pluginurl", true));
-        embed.addAttributeInfo(new AttributeInfo("class", true,
-            AttributeInfo.AttributeTypeOptions.CSS));
-        embed.addAttributeInfo(new AttributeInfo("id", true));
-        embed.addAttributeInfo(new AttributeInfo("name", true));
-        embed.addAttributeInfo(new AttributeInfo("style", true));
-        embed.addAttributeInfo(new AttributeInfo("title", true));
-        addTagInfo(embed);
-
-        TagInfo fieldset = new TagInfo("fieldset", true);
-        fieldset.addAttributeInfo(new AttributeInfo("align", true,
-            AttributeInfo.AttributeTypeOptions.ALIGN));
-        fieldset.addAttributeInfo(new AttributeInfo("class", true,
-            AttributeInfo.AttributeTypeOptions.CSS));
-        fieldset.addAttributeInfo(new AttributeInfo("dir", true));
-        fieldset.addAttributeInfo(new AttributeInfo("id", true));
-        fieldset.addAttributeInfo(new AttributeInfo("lang", true));
-        fieldset.addAttributeInfo(new AttributeInfo("style", true));
-        fieldset.addAttributeInfo(new AttributeInfo("title", true));
-//        fieldset.addAttributeInfo(new AttributeInfo("onfocus", true));
-//        fieldset.addAttributeInfo(new AttributeInfo("onblur", true));
-        addEventAttr(fieldset);
-        addTagInfo(fieldset);
-
-        TagInfo font = new TagInfo("font", true);
-        font.addAttributeInfo(new AttributeInfo("size", true));
-        font.addAttributeInfo(new AttributeInfo("color", true));
-        font.addAttributeInfo(new AttributeInfo("face", true));
-        font.addAttributeInfo(new AttributeInfo("font-weight", true));
-        font.addAttributeInfo(new AttributeInfo("point-size", true));
-        font.addAttributeInfo(new AttributeInfo("class", true,
-            AttributeInfo.AttributeTypeOptions.CSS));
-        font.addAttributeInfo(new AttributeInfo("dir", true));
-        font.addAttributeInfo(new AttributeInfo("id", true));
-        font.addAttributeInfo(new AttributeInfo("lang", true));
-        font.addAttributeInfo(new AttributeInfo("style", true));
-        font.addAttributeInfo(new AttributeInfo("title", true));
-        addEventAttr(font);
-        addTagInfo(font);
-
-        TagInfo form = new TagInfo("form", true);
-        form.addAttributeInfo(new AttributeInfo("action", true,
-            AttributeInfo.AttributeTypeOptions.FILE));
-        form.addAttributeInfo(new AttributeInfo("method", true));
-        form.addAttributeInfo(new AttributeInfo("target", true));
-        form.addAttributeInfo(new AttributeInfo("accept", true));
-        form.addAttributeInfo(new AttributeInfo("accept-charset", true));
-        form.addAttributeInfo(new AttributeInfo("autocomplete", true));
-        form.addAttributeInfo(new AttributeInfo("enctype", true));
-        form.addAttributeInfo(new AttributeInfo("urn", false));
-        form.addAttributeInfo(new AttributeInfo("class", true,
-            AttributeInfo.AttributeTypeOptions.CSS));
-        form.addAttributeInfo(new AttributeInfo("dir", true));
-        form.addAttributeInfo(new AttributeInfo("id", true));
-        form.addAttributeInfo(new AttributeInfo("lang", true));
-        form.addAttributeInfo(new AttributeInfo("name", true));
-        form.addAttributeInfo(new AttributeInfo("style", true));
-        form.addAttributeInfo(new AttributeInfo("title", true));
-//        form.addAttributeInfo(new AttributeInfo("onfocus", true));
-//        form.addAttributeInfo(new AttributeInfo("onblur", true));
-        form.addAttributeInfo(new AttributeInfo("onsubmit", true));
-        form.addAttributeInfo(new AttributeInfo("onreset", true));
-        addEventAttr(form);
-        addTagInfo(form);
-
-        TagInfo frame = new TagInfo("frame", false, true);
-        frame.addAttributeInfo(new AttributeInfo("src", true,
-            AttributeInfo.AttributeTypeOptions.FILE));
-        frame.addAttributeInfo(new AttributeInfo("height", true));
-        frame.addAttributeInfo(new AttributeInfo("width", true));
-        frame.addAttributeInfo(new AttributeInfo("bordercolor", true));
-        frame.addAttributeInfo(new AttributeInfo("frameborder", true));
-        frame.addAttributeInfo(new AttributeInfo("marginheight", true));
-        frame.addAttributeInfo(new AttributeInfo("marginwidth", true));
-        frame.addAttributeInfo(new AttributeInfo("noresize", false));
-        frame.addAttributeInfo(new AttributeInfo("scrolling", true));
-        frame.addAttributeInfo(new AttributeInfo("class", true,
-            AttributeInfo.AttributeTypeOptions.CSS));
-        frame.addAttributeInfo(new AttributeInfo("id", true));
-        frame.addAttributeInfo(new AttributeInfo("lang", true));
-        frame.addAttributeInfo(new AttributeInfo("language", true));
-        frame.addAttributeInfo(new AttributeInfo("name", true));
-        frame.addAttributeInfo(new AttributeInfo("style", true));
-        frame.addAttributeInfo(new AttributeInfo("title", true));
-        addTagInfo(frame);
-
-        TagInfo frameset = new TagInfo("frameset", true);
-        frameset.addAttributeInfo(new AttributeInfo("border", true));
-        frameset.addAttributeInfo(new AttributeInfo("bordercolor", true));
-        frameset.addAttributeInfo(new AttributeInfo("cols", true));
-        frameset.addAttributeInfo(new AttributeInfo("frameborder", true));
-        frameset.addAttributeInfo(new AttributeInfo("framespacing", true));
-        frameset.addAttributeInfo(new AttributeInfo("rows", true));
-        frameset.addAttributeInfo(new AttributeInfo("class", true,
-            AttributeInfo.AttributeTypeOptions.CSS));
-        frameset.addAttributeInfo(new AttributeInfo("id", true));
-        frameset.addAttributeInfo(new AttributeInfo("lang", true));
-        frameset.addAttributeInfo(new AttributeInfo("language", true));
-        frameset.addAttributeInfo(new AttributeInfo("name", true));
-        frameset.addAttributeInfo(new AttributeInfo("style", true));
-        frameset.addAttributeInfo(new AttributeInfo("title", true));
-        frameset.addAttributeInfo(new AttributeInfo("onload", true));
-        frameset.addAttributeInfo(new AttributeInfo("onunload", true));
-        addTagInfo(frameset);
-
-        TagInfo h1 = new TagInfo("h1", true);
-        h1.addAttributeInfo(new AttributeInfo("align", true,
-            AttributeInfo.AttributeTypeOptions.ALIGN));
-        h1.addAttributeInfo(new AttributeInfo("class", true,
-            AttributeInfo.AttributeTypeOptions.CSS));
-        h1.addAttributeInfo(new AttributeInfo("dir", true));
-        h1.addAttributeInfo(new AttributeInfo("id", true));
-        h1.addAttributeInfo(new AttributeInfo("lang", true));
-        h1.addAttributeInfo(new AttributeInfo("style", true));
-        h1.addAttributeInfo(new AttributeInfo("title", true));
-        addEventAttr(h1);
-        addTagInfo(h1);
-
-        TagInfo h2 = new TagInfo("h2", true);
-        h2.addAttributeInfo(new AttributeInfo("align", true,
-            AttributeInfo.AttributeTypeOptions.ALIGN));
-        h2.addAttributeInfo(new AttributeInfo("class", true,
-            AttributeInfo.AttributeTypeOptions.CSS));
-        h2.addAttributeInfo(new AttributeInfo("dir", true));
-        h2.addAttributeInfo(new AttributeInfo("id", true));
-        h2.addAttributeInfo(new AttributeInfo("lang", true));
-        h2.addAttributeInfo(new AttributeInfo("style", true));
-        h2.addAttributeInfo(new AttributeInfo("title", true));
-        addEventAttr(h2);
-        addTagInfo(h2);
-
-        TagInfo h3 = new TagInfo("h3", true);
-        h3.addAttributeInfo(new AttributeInfo("align", true,
-            AttributeInfo.AttributeTypeOptions.ALIGN));
-        h3.addAttributeInfo(new AttributeInfo("class", true,
-            AttributeInfo.AttributeTypeOptions.CSS));
-        h3.addAttributeInfo(new AttributeInfo("dir", true));
-        h3.addAttributeInfo(new AttributeInfo("id", true));
-        h3.addAttributeInfo(new AttributeInfo("lang", true));
-        h3.addAttributeInfo(new AttributeInfo("style", true));
-        h3.addAttributeInfo(new AttributeInfo("title", true));
-        addEventAttr(h3);
-        addTagInfo(h3);
-
-        TagInfo h4 = new TagInfo("h4", true);
-        h4.addAttributeInfo(new AttributeInfo("align", true,
-            AttributeInfo.AttributeTypeOptions.ALIGN));
-        h4.addAttributeInfo(new AttributeInfo("class", true,
-            AttributeInfo.AttributeTypeOptions.CSS));
-        h4.addAttributeInfo(new AttributeInfo("dir", true));
-        h4.addAttributeInfo(new AttributeInfo("id", true));
-        h4.addAttributeInfo(new AttributeInfo("lang", true));
-        h4.addAttributeInfo(new AttributeInfo("style", true));
-        h4.addAttributeInfo(new AttributeInfo("title", true));
-        addEventAttr(h4);
-        addTagInfo(h4);
-
-        TagInfo h5 = new TagInfo("h5", true);
-        h5.addAttributeInfo(new AttributeInfo("align", true,
-            AttributeInfo.AttributeTypeOptions.ALIGN));
-        h5.addAttributeInfo(new AttributeInfo("class", true,
-            AttributeInfo.AttributeTypeOptions.CSS));
-        h5.addAttributeInfo(new AttributeInfo("dir", true));
-        h5.addAttributeInfo(new AttributeInfo("id", true));
-        h5.addAttributeInfo(new AttributeInfo("lang", true));
-        h5.addAttributeInfo(new AttributeInfo("style", true));
-        h5.addAttributeInfo(new AttributeInfo("title", true));
-        addEventAttr(h5);
-        addTagInfo(h5);
-
-        TagInfo h6 = new TagInfo("h6", true);
-        h6.addAttributeInfo(new AttributeInfo("align", true,
-            AttributeInfo.AttributeTypeOptions.ALIGN));
-        h6.addAttributeInfo(new AttributeInfo("class", true,
-            AttributeInfo.AttributeTypeOptions.CSS));
-        h6.addAttributeInfo(new AttributeInfo("dir", true));
-        h6.addAttributeInfo(new AttributeInfo("id", true));
-        h6.addAttributeInfo(new AttributeInfo("lang", true));
-        h6.addAttributeInfo(new AttributeInfo("style", true));
-        h6.addAttributeInfo(new AttributeInfo("title", true));
-        addTagInfo(h6);
-
-        TagInfo head = new TagInfo("head", true);
-        head.addAttributeInfo(new AttributeInfo("profile", true));
-        head.addAttributeInfo(new AttributeInfo("class", true,
-            AttributeInfo.AttributeTypeOptions.CSS));
-        head.addAttributeInfo(new AttributeInfo("dir", true));
-        head.addAttributeInfo(new AttributeInfo("id", true));
-        head.addAttributeInfo(new AttributeInfo("lang", true));
-        head.addAttributeInfo(new AttributeInfo("title", true));
-        addTagInfo(head);
-
-        TagInfo hr = new TagInfo("hr", false, true);
-        hr.addAttributeInfo(new AttributeInfo("align", true,
-            AttributeInfo.AttributeTypeOptions.ALIGN));
-        hr.addAttributeInfo(new AttributeInfo("color", true));
-        hr.addAttributeInfo(new AttributeInfo("nochade", false));
-        hr.addAttributeInfo(new AttributeInfo("size", true));
-        hr.addAttributeInfo(new AttributeInfo("width", true));
-        hr.addAttributeInfo(new AttributeInfo("class", true,
-            AttributeInfo.AttributeTypeOptions.CSS));
-        hr.addAttributeInfo(new AttributeInfo("dir", true));
-        hr.addAttributeInfo(new AttributeInfo("id", true));
-        hr.addAttributeInfo(new AttributeInfo("lang", true));
-        hr.addAttributeInfo(new AttributeInfo("language", true));
-        hr.addAttributeInfo(new AttributeInfo("style", true));
-        hr.addAttributeInfo(new AttributeInfo("title", true));
-        addEventAttr(hr);
-        addTagInfo(hr);
-
-        TagInfo html = new TagInfo("html", true);
-        html.addAttributeInfo(new AttributeInfo("version", true));
-        html.addAttributeInfo(new AttributeInfo("class", true,
-            AttributeInfo.AttributeTypeOptions.CSS));
-        html.addAttributeInfo(new AttributeInfo("dir", true));
-        html.addAttributeInfo(new AttributeInfo("id", true));
-        html.addAttributeInfo(new AttributeInfo("lang", true));
-        html.addAttributeInfo(new AttributeInfo("language", true));
-        html.addAttributeInfo(new AttributeInfo("style", true));
-        html.addAttributeInfo(new AttributeInfo("title", true));
-        addTagInfo(html);
-
-        TagInfo i = new TagInfo("i", true);
-        i.addAttributeInfo(new AttributeInfo("class", true,
-            AttributeInfo.AttributeTypeOptions.CSS));
-        i.addAttributeInfo(new AttributeInfo("dir", true));
-        i.addAttributeInfo(new AttributeInfo("id", true));
-        i.addAttributeInfo(new AttributeInfo("lang", true));
-        i.addAttributeInfo(new AttributeInfo("style", true));
-        i.addAttributeInfo(new AttributeInfo("title", true));
-        addEventAttr(i);
-        addTagInfo(i);
-
-        TagInfo iframe = new TagInfo("iframe", true);
-        iframe.addAttributeInfo(new AttributeInfo("src", true,
-            AttributeInfo.AttributeTypeOptions.FILE));
-        iframe.addAttributeInfo(new AttributeInfo("align", true,
-            AttributeInfo.AttributeTypeOptions.ALIGN));
-        iframe.addAttributeInfo(new AttributeInfo("height", true));
-        iframe.addAttributeInfo(new AttributeInfo("width", true));
-        iframe.addAttributeInfo(new AttributeInfo("hspace", true));
-        iframe.addAttributeInfo(new AttributeInfo("vspace", true));
-        iframe.addAttributeInfo(new AttributeInfo("marginheight", true));
-        iframe.addAttributeInfo(new AttributeInfo("marginwidth", true));
-        iframe.addAttributeInfo(new AttributeInfo("border", true));
-        iframe.addAttributeInfo(new AttributeInfo("bordercolor", true));
-        iframe.addAttributeInfo(new AttributeInfo("frameborder", true));
-        iframe.addAttributeInfo(new AttributeInfo("framespacing", true));
-        iframe.addAttributeInfo(new AttributeInfo("scrolling", true));
-        iframe.addAttributeInfo(new AttributeInfo("class", true,
-            AttributeInfo.AttributeTypeOptions.CSS));
-        iframe.addAttributeInfo(new AttributeInfo("dir", true));
-        iframe.addAttributeInfo(new AttributeInfo("id", true));
-        iframe.addAttributeInfo(new AttributeInfo("lang", true));
-        iframe.addAttributeInfo(new AttributeInfo("language", true));
-        iframe.addAttributeInfo(new AttributeInfo("name", true));
-        iframe.addAttributeInfo(new AttributeInfo("style", true));
-        iframe.addAttributeInfo(new AttributeInfo("title", true));
-        addTagInfo(iframe);
-
-        TagInfo img = new TagInfo("img", false, true);
-        img.addAttributeInfo(new AttributeInfo("src", true,
-            AttributeInfo.AttributeTypeOptions.FILE));
-        img.addAttributeInfo(new AttributeInfo("alt", true));
-        img.addAttributeInfo(new AttributeInfo("height", true));
-        img.addAttributeInfo(new AttributeInfo("width", true));
-        img.addAttributeInfo(new AttributeInfo("align", true,
-            AttributeInfo.AttributeTypeOptions.ALIGN));
-        img.addAttributeInfo(new AttributeInfo("border", true));
-        img.addAttributeInfo(new AttributeInfo("galleryimg", true));
-        img.addAttributeInfo(new AttributeInfo("hspace", true));
-        img.addAttributeInfo(new AttributeInfo("lowsrc", true));
-        img.addAttributeInfo(new AttributeInfo("suppress", true));
-        img.addAttributeInfo(new AttributeInfo("vspace", true));
-        img.addAttributeInfo(new AttributeInfo("ismap", false));
-        img.addAttributeInfo(new AttributeInfo("usemap", true));
-        img.addAttributeInfo(new AttributeInfo("class", true,
-            AttributeInfo.AttributeTypeOptions.CSS));
-        img.addAttributeInfo(new AttributeInfo("dir", true));
-        img.addAttributeInfo(new AttributeInfo("id", true));
-        img.addAttributeInfo(new AttributeInfo("lang", true));
-        img.addAttributeInfo(new AttributeInfo("language", true));
-        img.addAttributeInfo(new AttributeInfo("name", true));
-        img.addAttributeInfo(new AttributeInfo("style", true));
-        img.addAttributeInfo(new AttributeInfo("title", true));
-        addEventAttr(img);
-        addTagInfo(img);
-
-        TagInfo input = new TagInfo("input", false, true);
-        input.addAttributeInfo(new AttributeInfo("type", true,
-            AttributeInfo.AttributeTypeOptions.INPUT_TYPE));
-        input.addAttributeInfo(new AttributeInfo("value", true));
-        input.addAttributeInfo(new AttributeInfo("size", true));
-        input.addAttributeInfo(new AttributeInfo("maxlength", true));
-        input.addAttributeInfo(new AttributeInfo("disabled", false));
-        input.addAttributeInfo(new AttributeInfo("readonly", false));
-        input.addAttributeInfo(new AttributeInfo("checked", false));
-        input.addAttributeInfo(new AttributeInfo("align", true,
-            AttributeInfo.AttributeTypeOptions.ALIGN));
-        input.addAttributeInfo(new AttributeInfo("alt", true));
-        input.addAttributeInfo(new AttributeInfo("border", true));
-        input.addAttributeInfo(new AttributeInfo("dynsrc", true));
-        input.addAttributeInfo(new AttributeInfo("height", true));
-        input.addAttributeInfo(new AttributeInfo("ismap", false));
-        input.addAttributeInfo(new AttributeInfo("lowsrc", true));
-        input.addAttributeInfo(new AttributeInfo("src", true));
-        input.addAttributeInfo(new AttributeInfo("width", true));
-        input.addAttributeInfo(new AttributeInfo("class", true,
-            AttributeInfo.AttributeTypeOptions.CSS));
-        input.addAttributeInfo(new AttributeInfo("dir", true));
-        input.addAttributeInfo(new AttributeInfo("id", true));
-        input.addAttributeInfo(new AttributeInfo("lang", true));
-        input.addAttributeInfo(new AttributeInfo("language", true));
-        input.addAttributeInfo(new AttributeInfo("name", true));
-        input.addAttributeInfo(new AttributeInfo("style", true));
-        input.addAttributeInfo(new AttributeInfo("title", true));
-        input.addAttributeInfo(new AttributeInfo("onfocus", true));
-        input.addAttributeInfo(new AttributeInfo("onblur", true));
-        input.addAttributeInfo(new AttributeInfo("onselect", true));
-        input.addAttributeInfo(new AttributeInfo("onchange", true));
-        addEventAttr(input);
-        addTagInfo(input);
-
-        TagInfo ins = new TagInfo("ins", true);
-        ins.addAttributeInfo(new AttributeInfo("cite", true));
-        ins.addAttributeInfo(new AttributeInfo("datetime", true));
-        ins.addAttributeInfo(new AttributeInfo("class", true,
-            AttributeInfo.AttributeTypeOptions.CSS));
-        ins.addAttributeInfo(new AttributeInfo("dir", true));
-        ins.addAttributeInfo(new AttributeInfo("id", true));
-        ins.addAttributeInfo(new AttributeInfo("lang", true));
-        ins.addAttributeInfo(new AttributeInfo("style", true));
-        ins.addAttributeInfo(new AttributeInfo("title", true));
-        addEventAttr(ins);
-        addTagInfo(ins);
-
-        TagInfo isindex = new TagInfo("isindex", false, true);
-        isindex.addAttributeInfo(new AttributeInfo("action", true));
-        isindex.addAttributeInfo(new AttributeInfo("prompt", true));
-        isindex.addAttributeInfo(new AttributeInfo("class", true,
-            AttributeInfo.AttributeTypeOptions.CSS));
-        isindex.addAttributeInfo(new AttributeInfo("dir", true));
-        isindex.addAttributeInfo(new AttributeInfo("id", true));
-        isindex.addAttributeInfo(new AttributeInfo("lang", true));
-        isindex.addAttributeInfo(new AttributeInfo("style", true));
-        isindex.addAttributeInfo(new AttributeInfo("title", true));
-        addTagInfo(isindex);
-
-        TagInfo kbd = new TagInfo("kbd", true);
-        kbd.addAttributeInfo(new AttributeInfo("class", true,
-            AttributeInfo.AttributeTypeOptions.CSS));
-        kbd.addAttributeInfo(new AttributeInfo("dir", true));
-        kbd.addAttributeInfo(new AttributeInfo("id", true));
-        kbd.addAttributeInfo(new AttributeInfo("lang", true));
-        kbd.addAttributeInfo(new AttributeInfo("style", true));
-        kbd.addAttributeInfo(new AttributeInfo("title", true));
-        addEventAttr(kbd);
-        addTagInfo(kbd);
-
-        TagInfo keygen = new TagInfo("keygen", false);
-        keygen.addAttributeInfo(new AttributeInfo("name", true));
-        keygen.addAttributeInfo(new AttributeInfo("challenge", true));
-        addTagInfo(keygen);
-
-        TagInfo label = new TagInfo("label", true);
-        label.addAttributeInfo(new AttributeInfo("class", true,
-            AttributeInfo.AttributeTypeOptions.CSS));
-        label.addAttributeInfo(new AttributeInfo("dir", true));
-        label.addAttributeInfo(new AttributeInfo("id", true));
-        label.addAttributeInfo(new AttributeInfo("lang", true));
-        label.addAttributeInfo(new AttributeInfo("style", true));
-        label.addAttributeInfo(new AttributeInfo("title", true));
-        label.addAttributeInfo(new AttributeInfo("onfocus", true));
-        label.addAttributeInfo(new AttributeInfo("onblur", true));
-        addEventAttr(label);
-        addTagInfo(label);
-
-        TagInfo legend = new TagInfo("legend", true);
-        legend.addAttributeInfo(new AttributeInfo("align", true,
-            AttributeInfo.AttributeTypeOptions.ALIGN));
-        legend.addAttributeInfo(new AttributeInfo("class", true,
-            AttributeInfo.AttributeTypeOptions.CSS));
-        legend.addAttributeInfo(new AttributeInfo("dir", true));
-        legend.addAttributeInfo(new AttributeInfo("id", true));
-        legend.addAttributeInfo(new AttributeInfo("lang", true));
-        legend.addAttributeInfo(new AttributeInfo("style", true));
-        legend.addAttributeInfo(new AttributeInfo("title", true));
-        addEventAttr(legend);
-        addTagInfo(legend);
-
-        TagInfo li = new TagInfo("li", true);
-        li.addAttributeInfo(new AttributeInfo("type", true));
-        li.addAttributeInfo(new AttributeInfo("value", true));
-        li.addAttributeInfo(new AttributeInfo("class", true,
-            AttributeInfo.AttributeTypeOptions.CSS));
-        li.addAttributeInfo(new AttributeInfo("dir", true));
-        li.addAttributeInfo(new AttributeInfo("id", true));
-        li.addAttributeInfo(new AttributeInfo("lang", true));
-        li.addAttributeInfo(new AttributeInfo("style", true));
-        li.addAttributeInfo(new AttributeInfo("title", true));
-        addEventAttr(li);
-        addTagInfo(li);
-
-        TagInfo link = new TagInfo("link", false, true);
-        link.addAttributeInfo(new AttributeInfo("rel", true));
-        link.addAttributeInfo(new AttributeInfo("href", true,
-            AttributeInfo.AttributeTypeOptions.FILE));
-        link.addAttributeInfo(new AttributeInfo("src", true,
-            AttributeInfo.AttributeTypeOptions.FILE));
-        link.addAttributeInfo(new AttributeInfo("charset", true));
-        link.addAttributeInfo(new AttributeInfo("disabled", false));
-        link.addAttributeInfo(new AttributeInfo("hreflang", true));
-        link.addAttributeInfo(new AttributeInfo("media", true));
-        link.addAttributeInfo(new AttributeInfo("methods", true));
-        link.addAttributeInfo(new AttributeInfo("rev", true));
-        link.addAttributeInfo(new AttributeInfo("target", true));
-        link.addAttributeInfo(new AttributeInfo("type", true));
-        link.addAttributeInfo(new AttributeInfo("urn", true));
-        link.addAttributeInfo(new AttributeInfo("class", true,
-            AttributeInfo.AttributeTypeOptions.CSS));
-        link.addAttributeInfo(new AttributeInfo("dir", true));
-        link.addAttributeInfo(new AttributeInfo("id", true));
-        link.addAttributeInfo(new AttributeInfo("lang", true));
-        link.addAttributeInfo(new AttributeInfo("language", true));
-        link.addAttributeInfo(new AttributeInfo("style", true));
-        link.addAttributeInfo(new AttributeInfo("title", true));
-        addEventAttr(link);
-        addTagInfo(link);
-
-        TagInfo map = new TagInfo("map", true);
-        map.addAttributeInfo(new AttributeInfo("name", true));
-        map.addAttributeInfo(new AttributeInfo("class", true,
-            AttributeInfo.AttributeTypeOptions.CSS));
-        map.addAttributeInfo(new AttributeInfo("dir", true));
-        map.addAttributeInfo(new AttributeInfo("id", true));
-        map.addAttributeInfo(new AttributeInfo("lang", true));
-        map.addAttributeInfo(new AttributeInfo("language", true));
-        map.addAttributeInfo(new AttributeInfo("name", true));
-        map.addAttributeInfo(new AttributeInfo("style", true));
-        map.addAttributeInfo(new AttributeInfo("title", true));
-        addEventAttr(map);
-        addTagInfo(map);
-
-        TagInfo marquee = new TagInfo("marquee", true);
-        marquee.addAttributeInfo(new AttributeInfo("behavior", true));
-        marquee.addAttributeInfo(new AttributeInfo("bgcolor", true));
-        marquee.addAttributeInfo(new AttributeInfo("direction", true));
-        marquee.addAttributeInfo(new AttributeInfo("height", true));
-        marquee.addAttributeInfo(new AttributeInfo("hspace", true));
-        marquee.addAttributeInfo(new AttributeInfo("loop", true));
-        marquee.addAttributeInfo(new AttributeInfo("scrollamount", true));
-        marquee.addAttributeInfo(new AttributeInfo("scrolldelay", true));
-        marquee.addAttributeInfo(new AttributeInfo("truespeed", false));
-        marquee.addAttributeInfo(new AttributeInfo("vspace", true));
-        marquee.addAttributeInfo(new AttributeInfo("width", true));
-        marquee.addAttributeInfo(new AttributeInfo("class", true,
-            AttributeInfo.AttributeTypeOptions.CSS));
-        marquee.addAttributeInfo(new AttributeInfo("dir", true));
-        marquee.addAttributeInfo(new AttributeInfo("id", true));
-        marquee.addAttributeInfo(new AttributeInfo("lang", true));
-        marquee.addAttributeInfo(new AttributeInfo("style", true));
-        marquee.addAttributeInfo(new AttributeInfo("title", true));
-        addEventAttr(marquee);
-        addTagInfo(marquee);
-
-        TagInfo menu = new TagInfo("menu", true);
-        menu.addAttributeInfo(new AttributeInfo("compact", false));
-        menu.addAttributeInfo(new AttributeInfo("type", true));
-        menu.addAttributeInfo(new AttributeInfo("class", true,
-            AttributeInfo.AttributeTypeOptions.CSS));
-        menu.addAttributeInfo(new AttributeInfo("dir", true));
-        menu.addAttributeInfo(new AttributeInfo("id", true));
-        menu.addAttributeInfo(new AttributeInfo("lang", true));
-        menu.addAttributeInfo(new AttributeInfo("style", true));
-        menu.addAttributeInfo(new AttributeInfo("title", true));
-        addEventAttr(menu);
-        addTagInfo(menu);
-
-        TagInfo meta = new TagInfo("meta", false, true);
-        meta.addAttributeInfo(new AttributeInfo("name", true));
-        meta.addAttributeInfo(new AttributeInfo("http-equiv", true));
-        meta.addAttributeInfo(new AttributeInfo("content", true));
-        meta.addAttributeInfo(new AttributeInfo("scheme", true));
-        meta.addAttributeInfo(new AttributeInfo("dir", true));
-        meta.addAttributeInfo(new AttributeInfo("lang", true));
-        meta.addAttributeInfo(new AttributeInfo("title", true));
-        addTagInfo(meta);
-
-        TagInfo nobr = new TagInfo("nobr", true);
-        nobr.addAttributeInfo(new AttributeInfo("class", true,
-            AttributeInfo.AttributeTypeOptions.CSS));
-        nobr.addAttributeInfo(new AttributeInfo("dir", true));
-        nobr.addAttributeInfo(new AttributeInfo("id", true));
-        nobr.addAttributeInfo(new AttributeInfo("lang", true));
-        nobr.addAttributeInfo(new AttributeInfo("style", true));
-        nobr.addAttributeInfo(new AttributeInfo("title", true));
-        addTagInfo(nobr);
-
-        TagInfo noembed = new TagInfo("noembed", true);
-        addTagInfo(noembed);
-
-        TagInfo noframes = new TagInfo("noframes", true);
-        noframes.addAttributeInfo(new AttributeInfo("class", true,
-            AttributeInfo.AttributeTypeOptions.CSS));
-        noframes.addAttributeInfo(new AttributeInfo("dir", true));
-        noframes.addAttributeInfo(new AttributeInfo("id", true));
-        noframes.addAttributeInfo(new AttributeInfo("lang", true));
-        noframes.addAttributeInfo(new AttributeInfo("style", true));
-        noframes.addAttributeInfo(new AttributeInfo("title", true));
-        addTagInfo(noframes);
-
-        TagInfo noscript = new TagInfo("noscript", true);
-        noscript.addAttributeInfo(new AttributeInfo("class", true,
-            AttributeInfo.AttributeTypeOptions.CSS));
-        noscript.addAttributeInfo(new AttributeInfo("dir", true));
-        noscript.addAttributeInfo(new AttributeInfo("id", true));
-        noscript.addAttributeInfo(new AttributeInfo("lang", true));
-        noscript.addAttributeInfo(new AttributeInfo("style", true));
-        noscript.addAttributeInfo(new AttributeInfo("title", true));
-        addTagInfo(noscript);
-
-        TagInfo object = new TagInfo("object", true);
-        object.addAttributeInfo(new AttributeInfo("alt", true));
-        object.addAttributeInfo(new AttributeInfo("archive", true));
-        object.addAttributeInfo(new AttributeInfo("border", true));
-        object.addAttributeInfo(new AttributeInfo("classid", true));
-        object.addAttributeInfo(new AttributeInfo("code", true));
-        object.addAttributeInfo(new AttributeInfo("codebase", true));
-        object.addAttributeInfo(new AttributeInfo("codetype", true));
-        object.addAttributeInfo(new AttributeInfo("data", true));
-        object.addAttributeInfo(new AttributeInfo("declare", false));
-        object.addAttributeInfo(new AttributeInfo("name", true));
-        object.addAttributeInfo(new AttributeInfo("standby", true));
-        object.addAttributeInfo(new AttributeInfo("type", true));
-        object.addAttributeInfo(new AttributeInfo("usemap", true));
-        object.addAttributeInfo(new AttributeInfo("align", true,
-            AttributeInfo.AttributeTypeOptions.ALIGN));
-        object.addAttributeInfo(new AttributeInfo("width", true));
-        object.addAttributeInfo(new AttributeInfo("height", true));
-        object.addAttributeInfo(new AttributeInfo("hspace", true));
-        object.addAttributeInfo(new AttributeInfo("vspace", true));
-        object.addAttributeInfo(new AttributeInfo("class", true,
-            AttributeInfo.AttributeTypeOptions.CSS));
-        object.addAttributeInfo(new AttributeInfo("dir", true));
-        object.addAttributeInfo(new AttributeInfo("id", true));
-        object.addAttributeInfo(new AttributeInfo("lang", true));
-        object.addAttributeInfo(new AttributeInfo("language", true));
-        object.addAttributeInfo(new AttributeInfo("style", true));
-        object.addAttributeInfo(new AttributeInfo("title", true));
-        addEventAttr(object);
-        addTagInfo(object);
-
-        TagInfo ol = new TagInfo("ol", true);
-        ol.addAttributeInfo(new AttributeInfo("compact", false));
-        ol.addAttributeInfo(new AttributeInfo("start", true));
-        ol.addAttributeInfo(new AttributeInfo("type", true));
-        ol.addAttributeInfo(new AttributeInfo("class", true,
-            AttributeInfo.AttributeTypeOptions.CSS));
-        ol.addAttributeInfo(new AttributeInfo("dir", true));
-        ol.addAttributeInfo(new AttributeInfo("id", true));
-        ol.addAttributeInfo(new AttributeInfo("lang", true));
-        ol.addAttributeInfo(new AttributeInfo("style", true));
-        ol.addAttributeInfo(new AttributeInfo("title", true));
-        addEventAttr(ol);
-        addTagInfo(ol);
-
-        TagInfo optgroup = new TagInfo("optgroup", true);
-        optgroup.addAttributeInfo(new AttributeInfo("disabled", false));
-        optgroup.addAttributeInfo(new AttributeInfo("label", false));
-        optgroup.addAttributeInfo(new AttributeInfo("class", true,
-            AttributeInfo.AttributeTypeOptions.CSS));
-        optgroup.addAttributeInfo(new AttributeInfo("dir", true));
-        optgroup.addAttributeInfo(new AttributeInfo("id", true));
-        optgroup.addAttributeInfo(new AttributeInfo("lang", true));
-        optgroup.addAttributeInfo(new AttributeInfo("language", true));
-        optgroup.addAttributeInfo(new AttributeInfo("style", true));
-        optgroup.addAttributeInfo(new AttributeInfo("title", true));
-        addEventAttr(optgroup);
-        addTagInfo(optgroup);
-
-        TagInfo option = new TagInfo("option", true);
-        option.addAttributeInfo(new AttributeInfo("disabled", false));
-        option.addAttributeInfo(new AttributeInfo("label", false));
-        option.addAttributeInfo(new AttributeInfo("selected", false));
-        option.addAttributeInfo(new AttributeInfo("value", true));
-        option.addAttributeInfo(new AttributeInfo("class", true,
-            AttributeInfo.AttributeTypeOptions.CSS));
-        option.addAttributeInfo(new AttributeInfo("dir", true));
-        option.addAttributeInfo(new AttributeInfo("id", true));
-        option.addAttributeInfo(new AttributeInfo("lang", true));
-        option.addAttributeInfo(new AttributeInfo("language", true));
-        option.addAttributeInfo(new AttributeInfo("style", true));
-        option.addAttributeInfo(new AttributeInfo("title", true));
-        addEventAttr(option);
-        addTagInfo(option);
-
-        TagInfo p = new TagInfo("p", true);
-        p.addAttributeInfo(new AttributeInfo("align", true,
-            AttributeInfo.AttributeTypeOptions.ALIGN));
-        p.addAttributeInfo(new AttributeInfo("class", true,
-            AttributeInfo.AttributeTypeOptions.CSS));
-        p.addAttributeInfo(new AttributeInfo("dir", true));
-        p.addAttributeInfo(new AttributeInfo("id", true));
-        p.addAttributeInfo(new AttributeInfo("lang", true));
-        p.addAttributeInfo(new AttributeInfo("style", true));
-        p.addAttributeInfo(new AttributeInfo("title", true));
-        addEventAttr(p);
-        addTagInfo(p);
-
-        TagInfo param = new TagInfo("param", false, true);
-        param.addAttributeInfo(new AttributeInfo("name", true));
-        param.addAttributeInfo(new AttributeInfo("value", true));
-        param.addAttributeInfo(new AttributeInfo("valuetype", true));
-        param.addAttributeInfo(new AttributeInfo("type", true));
-        param.addAttributeInfo(new AttributeInfo("class", true,
-            AttributeInfo.AttributeTypeOptions.CSS));
-        param.addAttributeInfo(new AttributeInfo("dir", true));
-        param.addAttributeInfo(new AttributeInfo("id", true));
-        param.addAttributeInfo(new AttributeInfo("lang", true));
-        param.addAttributeInfo(new AttributeInfo("language", true));
-        param.addAttributeInfo(new AttributeInfo("style", true));
-        param.addAttributeInfo(new AttributeInfo("title", true));
-        addTagInfo(param);
-
-        TagInfo pre = new TagInfo("pre", true);
-        pre.addAttributeInfo(new AttributeInfo("cols", true));
-        pre.addAttributeInfo(new AttributeInfo("width", true));
-        pre.addAttributeInfo(new AttributeInfo("wrap", false));
-        pre.addAttributeInfo(new AttributeInfo("class", true,
-            AttributeInfo.AttributeTypeOptions.CSS));
-        pre.addAttributeInfo(new AttributeInfo("dir", true));
-        pre.addAttributeInfo(new AttributeInfo("id", true));
-        pre.addAttributeInfo(new AttributeInfo("lang", true));
-        pre.addAttributeInfo(new AttributeInfo("style", true));
-        pre.addAttributeInfo(new AttributeInfo("title", true));
-        addEventAttr(pre);
-        addTagInfo(pre);
-
-        TagInfo q = new TagInfo("q", true);
-        q.addAttributeInfo(new AttributeInfo("cite", true));
-        q.addAttributeInfo(new AttributeInfo("class", true,
-            AttributeInfo.AttributeTypeOptions.CSS));
-        q.addAttributeInfo(new AttributeInfo("dir", true));
-        q.addAttributeInfo(new AttributeInfo("id", true));
-        q.addAttributeInfo(new AttributeInfo("lang", true));
-        q.addAttributeInfo(new AttributeInfo("style", true));
-        q.addAttributeInfo(new AttributeInfo("title", true));
-        addEventAttr(q);
-        addTagInfo(q);
-
-        TagInfo rb = new TagInfo("rb", true);
-        rb.addAttributeInfo(new AttributeInfo("class", true,
-            AttributeInfo.AttributeTypeOptions.CSS));
-        rb.addAttributeInfo(new AttributeInfo("dir", true));
-        rb.addAttributeInfo(new AttributeInfo("id", true));
-        rb.addAttributeInfo(new AttributeInfo("lang", true));
-        rb.addAttributeInfo(new AttributeInfo("language", true));
-        rb.addAttributeInfo(new AttributeInfo("style", true));
-        rb.addAttributeInfo(new AttributeInfo("title", true));
-        addTagInfo(rb);
-
-        TagInfo rp = new TagInfo("rp", true);
-        rp.addAttributeInfo(new AttributeInfo("class", true,
-            AttributeInfo.AttributeTypeOptions.CSS));
-        rp.addAttributeInfo(new AttributeInfo("dir", true));
-        rp.addAttributeInfo(new AttributeInfo("id", true));
-        rp.addAttributeInfo(new AttributeInfo("lang", true));
-        rp.addAttributeInfo(new AttributeInfo("language", true));
-        rp.addAttributeInfo(new AttributeInfo("style", true));
-        rp.addAttributeInfo(new AttributeInfo("title", true));
-        addTagInfo(rp);
-
-        TagInfo rt = new TagInfo("rt", true);
-        rt.addAttributeInfo(new AttributeInfo("class", true,
-            AttributeInfo.AttributeTypeOptions.CSS));
-        rt.addAttributeInfo(new AttributeInfo("dir", true));
-        rt.addAttributeInfo(new AttributeInfo("id", true));
-        rt.addAttributeInfo(new AttributeInfo("lang", true));
-        rt.addAttributeInfo(new AttributeInfo("style", true));
-        rt.addAttributeInfo(new AttributeInfo("title", true));
-        addTagInfo(rt);
-
-        TagInfo ruby = new TagInfo("ruby", true);
-        ruby.addAttributeInfo(new AttributeInfo("class", true,
-            AttributeInfo.AttributeTypeOptions.CSS));
-        ruby.addAttributeInfo(new AttributeInfo("dir", true));
-        ruby.addAttributeInfo(new AttributeInfo("id", true));
-        ruby.addAttributeInfo(new AttributeInfo("lang", true));
-        ruby.addAttributeInfo(new AttributeInfo("style", true));
-        ruby.addAttributeInfo(new AttributeInfo("title", true));
-        addTagInfo(ruby);
-
-        TagInfo s = new TagInfo("s", true);
-        s.addAttributeInfo(new AttributeInfo("class", true,
-            AttributeInfo.AttributeTypeOptions.CSS));
-        s.addAttributeInfo(new AttributeInfo("dir", true));
-        s.addAttributeInfo(new AttributeInfo("id", true));
-        s.addAttributeInfo(new AttributeInfo("lang", true));
-        s.addAttributeInfo(new AttributeInfo("style", true));
-        s.addAttributeInfo(new AttributeInfo("title", true));
-        addEventAttr(s);
-        addTagInfo(s);
-
-        TagInfo samp = new TagInfo("samp", true);
-        samp.addAttributeInfo(new AttributeInfo("class", true,
-            AttributeInfo.AttributeTypeOptions.CSS));
-        samp.addAttributeInfo(new AttributeInfo("dir", true));
-        samp.addAttributeInfo(new AttributeInfo("id", true));
-        samp.addAttributeInfo(new AttributeInfo("lang", true));
-        samp.addAttributeInfo(new AttributeInfo("style", true));
-        samp.addAttributeInfo(new AttributeInfo("title", true));
-        addEventAttr(samp);
-        addTagInfo(samp);
-
-        TagInfo script = new TagInfo("script", true);
-        script.addAttributeInfo(new AttributeInfo("charset", true));
-        script.addAttributeInfo(new AttributeInfo("defer", false));
-        script.addAttributeInfo(new AttributeInfo("event", true));
-        script.addAttributeInfo(new AttributeInfo("for", true));
-        script.addAttributeInfo(new AttributeInfo("src", true,
-            AttributeInfo.AttributeTypeOptions.FILE));
-        script.addAttributeInfo(new AttributeInfo("type", true));
-        script.addAttributeInfo(new AttributeInfo("class", true,
-            AttributeInfo.AttributeTypeOptions.CSS));
-        script.addAttributeInfo(new AttributeInfo("id", true));
-        script.addAttributeInfo(new AttributeInfo("language", true));
-        script.addAttributeInfo(new AttributeInfo("title", true));
-        addTagInfo(script);
-
-        TagInfo select = new TagInfo("select", true);
-        select.addAttributeInfo(new AttributeInfo("align", true,
-            AttributeInfo.AttributeTypeOptions.ALIGN));
-        select.addAttributeInfo(new AttributeInfo("disabled", false));
-        select.addAttributeInfo(new AttributeInfo("multiple", false));
-        select.addAttributeInfo(new AttributeInfo("size", true));
-        select.addAttributeInfo(new AttributeInfo("class", true,
-            AttributeInfo.AttributeTypeOptions.CSS));
-        select.addAttributeInfo(new AttributeInfo("dir", true));
-        select.addAttributeInfo(new AttributeInfo("id", true));
-        select.addAttributeInfo(new AttributeInfo("lang", true));
-        select.addAttributeInfo(new AttributeInfo("language", true));
-        select.addAttributeInfo(new AttributeInfo("name", true));
-        select.addAttributeInfo(new AttributeInfo("style", true));
-        select.addAttributeInfo(new AttributeInfo("title", true));
-        select.addAttributeInfo(new AttributeInfo("onfocus", true));
-        select.addAttributeInfo(new AttributeInfo("onblur", true));
-        addEventAttr(select);
-        addTagInfo(select);
-
-        TagInfo small = new TagInfo("small", true);
-        small.addAttributeInfo(new AttributeInfo("class", true,
-            AttributeInfo.AttributeTypeOptions.CSS));
-        small.addAttributeInfo(new AttributeInfo("dir", true));
-        small.addAttributeInfo(new AttributeInfo("id", true));
-        small.addAttributeInfo(new AttributeInfo("lang", true));
-        small.addAttributeInfo(new AttributeInfo("style", true));
-        small.addAttributeInfo(new AttributeInfo("title", true));
-        addEventAttr(small);
-        addTagInfo(small);
-
-        TagInfo span = new TagInfo("span", true);
-        span.addAttributeInfo(new AttributeInfo("class", true,
-            AttributeInfo.AttributeTypeOptions.CSS));
-        span.addAttributeInfo(new AttributeInfo("dir", true));
-        span.addAttributeInfo(new AttributeInfo("id", true));
-        span.addAttributeInfo(new AttributeInfo("lang", true));
-        span.addAttributeInfo(new AttributeInfo("style", true));
-        span.addAttributeInfo(new AttributeInfo("title", true));
-        addEventAttr(span);
-        addTagInfo(span);
-
-        TagInfo strike = new TagInfo("strike", true);
-        strike.addAttributeInfo(new AttributeInfo("class", true,
-            AttributeInfo.AttributeTypeOptions.CSS));
-        strike.addAttributeInfo(new AttributeInfo("dir", true));
-        strike.addAttributeInfo(new AttributeInfo("id", true));
-        strike.addAttributeInfo(new AttributeInfo("lang", true));
-        strike.addAttributeInfo(new AttributeInfo("style", true));
-        strike.addAttributeInfo(new AttributeInfo("title", true));
-        addEventAttr(strike);
-        addTagInfo(strike);
-
-        TagInfo strong = new TagInfo("strong", true);
-        strong.addAttributeInfo(new AttributeInfo("class", true,
-            AttributeInfo.AttributeTypeOptions.CSS));
-        strong.addAttributeInfo(new AttributeInfo("dir", true));
-        strong.addAttributeInfo(new AttributeInfo("id", true));
-        strong.addAttributeInfo(new AttributeInfo("lang", true));
-        strong.addAttributeInfo(new AttributeInfo("style", true));
-        strong.addAttributeInfo(new AttributeInfo("title", true));
-        addEventAttr(strong);
-        addTagInfo(strong);
-
-        TagInfo style = new TagInfo("style", true);
-        style.addAttributeInfo(new AttributeInfo("disabled", true));
-        style.addAttributeInfo(new AttributeInfo("media", true));
-        style.addAttributeInfo(new AttributeInfo("type", true));
-        style.addAttributeInfo(new AttributeInfo("dir", true));
-        style.addAttributeInfo(new AttributeInfo("lang", true));
-        style.addAttributeInfo(new AttributeInfo("title", true));
-        addEventAttr(style);
-        addTagInfo(style);
-
-        TagInfo sub = new TagInfo("sub", true);
-        sub.addAttributeInfo(new AttributeInfo("class", true,
-            AttributeInfo.AttributeTypeOptions.CSS));
-        sub.addAttributeInfo(new AttributeInfo("dir", true));
-        sub.addAttributeInfo(new AttributeInfo("id", true));
-        sub.addAttributeInfo(new AttributeInfo("lang", true));
-        sub.addAttributeInfo(new AttributeInfo("style", true));
-        sub.addAttributeInfo(new AttributeInfo("title", true));
-        addEventAttr(sub);
-        addTagInfo(sub);
-
-        TagInfo sup = new TagInfo("sup", true);
-        sup.addAttributeInfo(new AttributeInfo("class", true,
-            AttributeInfo.AttributeTypeOptions.CSS));
-        sup.addAttributeInfo(new AttributeInfo("dir", true));
-        sup.addAttributeInfo(new AttributeInfo("id", true));
-        sup.addAttributeInfo(new AttributeInfo("lang", true));
-        sup.addAttributeInfo(new AttributeInfo("style", true));
-        sup.addAttributeInfo(new AttributeInfo("title", true));
-        addEventAttr(sup);
-        addTagInfo(sup);
-
-        TagInfo table = new TagInfo("table", true);
-        table.addAttributeInfo(new AttributeInfo("border", true));
-        table.addAttributeInfo(new AttributeInfo("bordercolor", true));
-        table.addAttributeInfo(new AttributeInfo("bordercolordark", true));
-        table.addAttributeInfo(new AttributeInfo("bordercolorlight", true));
-        table.addAttributeInfo(new AttributeInfo("frame", true));
-        table.addAttributeInfo(new AttributeInfo("rules", true));
-        table.addAttributeInfo(new AttributeInfo("background", true));
-        table.addAttributeInfo(new AttributeInfo("bgcolor", true));
-        table.addAttributeInfo(new AttributeInfo("align", true,
-            AttributeInfo.AttributeTypeOptions.ALIGN));
-        table.addAttributeInfo(new AttributeInfo("cellpadding", true));
-        table.addAttributeInfo(new AttributeInfo("cellspacing", true));
-        table.addAttributeInfo(new AttributeInfo("height", true));
-        table.addAttributeInfo(new AttributeInfo("hspace", true));
-        table.addAttributeInfo(new AttributeInfo("vspace", true));
-        table.addAttributeInfo(new AttributeInfo("width", true));
-        table.addAttributeInfo(new AttributeInfo("cols", true));
-        table.addAttributeInfo(new AttributeInfo("class", true,
-            AttributeInfo.AttributeTypeOptions.CSS));
-        table.addAttributeInfo(new AttributeInfo("dir", true));
-        table.addAttributeInfo(new AttributeInfo("id", true));
-        table.addAttributeInfo(new AttributeInfo("lang", true));
-        table.addAttributeInfo(new AttributeInfo("language", true));
-        table.addAttributeInfo(new AttributeInfo("style", true));
-        table.addAttributeInfo(new AttributeInfo("title", true));
-        addEventAttr(table);
-        addTagInfo(table);
-
-        TagInfo tbody = new TagInfo("tbody", true);
-        tbody.addAttributeInfo(new AttributeInfo("align", true,
-            AttributeInfo.AttributeTypeOptions.ALIGN));
-        tbody.addAttributeInfo(new AttributeInfo("bgcolor", true));
-        tbody.addAttributeInfo(new AttributeInfo("char", true));
-        tbody.addAttributeInfo(new AttributeInfo("charoff", true));
-        tbody.addAttributeInfo(new AttributeInfo("valign", true,
-            AttributeInfo.AttributeTypeOptions.VALIGN));
-        tbody.addAttributeInfo(new AttributeInfo("class", true,
-            AttributeInfo.AttributeTypeOptions.CSS));
-        tbody.addAttributeInfo(new AttributeInfo("dir", true));
-        tbody.addAttributeInfo(new AttributeInfo("id", true));
-        tbody.addAttributeInfo(new AttributeInfo("lang", true));
-        tbody.addAttributeInfo(new AttributeInfo("language", true));
-        tbody.addAttributeInfo(new AttributeInfo("style", true));
-        tbody.addAttributeInfo(new AttributeInfo("title", true));
-        addEventAttr(tbody);
-        addTagInfo(tbody);
-
-        TagInfo td = new TagInfo("td", true);
-        td.addAttributeInfo(new AttributeInfo("bordercolor", true));
-        td.addAttributeInfo(new AttributeInfo("bordercolordark", true));
-        td.addAttributeInfo(new AttributeInfo("bordercolorlight", true));
-        td.addAttributeInfo(new AttributeInfo("background", true));
-        td.addAttributeInfo(new AttributeInfo("bgcolor", true));
-        td.addAttributeInfo(new AttributeInfo("align", true,
-            AttributeInfo.AttributeTypeOptions.ALIGN));
-        td.addAttributeInfo(new AttributeInfo("valign", true,
-            AttributeInfo.AttributeTypeOptions.VALIGN));
-        td.addAttributeInfo(new AttributeInfo("height", true));
-        td.addAttributeInfo(new AttributeInfo("width", true));
-        td.addAttributeInfo(new AttributeInfo("nowrap", false));
-        td.addAttributeInfo(new AttributeInfo("char", true));
-        td.addAttributeInfo(new AttributeInfo("charoff", true));
-        td.addAttributeInfo(new AttributeInfo("colspan", true));
-        td.addAttributeInfo(new AttributeInfo("rowspan", true));
-        td.addAttributeInfo(new AttributeInfo("abbr", true));
-        td.addAttributeInfo(new AttributeInfo("axis", true));
-        td.addAttributeInfo(new AttributeInfo("headers", true));
-        td.addAttributeInfo(new AttributeInfo("scope", true));
-        td.addAttributeInfo(new AttributeInfo("class", true,
-            AttributeInfo.AttributeTypeOptions.CSS));
-        td.addAttributeInfo(new AttributeInfo("dir", true));
-        td.addAttributeInfo(new AttributeInfo("id", true));
-        td.addAttributeInfo(new AttributeInfo("lang", true));
-        td.addAttributeInfo(new AttributeInfo("language", true));
-        td.addAttributeInfo(new AttributeInfo("style", true));
-        td.addAttributeInfo(new AttributeInfo("title", true));
-        addEventAttr(td);
-        addTagInfo(td);
-
-        TagInfo textarea = new TagInfo("textarea", true);
-        textarea.addAttributeInfo(new AttributeInfo("align", true,
-            AttributeInfo.AttributeTypeOptions.ALIGN));
-        textarea.addAttributeInfo(new AttributeInfo("cols", true));
-        textarea.addAttributeInfo(new AttributeInfo("disabled", false));
-        textarea.addAttributeInfo(new AttributeInfo("istyle", true));
-        textarea.addAttributeInfo(new AttributeInfo("readonly", false));
-        textarea.addAttributeInfo(new AttributeInfo("rows", true));
-        textarea.addAttributeInfo(new AttributeInfo("wrap", true));
-        textarea.addAttributeInfo(new AttributeInfo("class", true,
-            AttributeInfo.AttributeTypeOptions.CSS));
-        textarea.addAttributeInfo(new AttributeInfo("dir", true));
-        textarea.addAttributeInfo(new AttributeInfo("id", true));
-        textarea.addAttributeInfo(new AttributeInfo("lang", true));
-        textarea.addAttributeInfo(new AttributeInfo("name", true));
-        textarea.addAttributeInfo(new AttributeInfo("style", true));
-        textarea.addAttributeInfo(new AttributeInfo("title", true));
-        textarea.addAttributeInfo(new AttributeInfo("onfocus", true));
-        textarea.addAttributeInfo(new AttributeInfo("onblur", true));
-        textarea.addAttributeInfo(new AttributeInfo("onselect", true));
-        textarea.addAttributeInfo(new AttributeInfo("onchange", true));
-        addEventAttr(textarea);
-        addTagInfo(textarea);
-
-        TagInfo tfoot = new TagInfo("tfoot", true);
-        tfoot.addAttributeInfo(new AttributeInfo("align", true,
-            AttributeInfo.AttributeTypeOptions.ALIGN));
-        tfoot.addAttributeInfo(new AttributeInfo("bgcolor", true));
-        tfoot.addAttributeInfo(new AttributeInfo("char", true));
-        tfoot.addAttributeInfo(new AttributeInfo("charoff", true));
-        tfoot.addAttributeInfo(new AttributeInfo("valign", true,
-            AttributeInfo.AttributeTypeOptions.VALIGN));
-        tfoot.addAttributeInfo(new AttributeInfo("class", true,
-            AttributeInfo.AttributeTypeOptions.CSS));
-        tfoot.addAttributeInfo(new AttributeInfo("dir", true));
-        tfoot.addAttributeInfo(new AttributeInfo("id", true));
-        tfoot.addAttributeInfo(new AttributeInfo("lang", true));
-        tfoot.addAttributeInfo(new AttributeInfo("language", true));
-        tfoot.addAttributeInfo(new AttributeInfo("style", true));
-        tfoot.addAttributeInfo(new AttributeInfo("title", true));
-        addEventAttr(tfoot);
-        addTagInfo(tfoot);
-
-        TagInfo th = new TagInfo("th", true);
-        th.addAttributeInfo(new AttributeInfo("bordercolor", true));
-        th.addAttributeInfo(new AttributeInfo("bordercolordark", true));
-        th.addAttributeInfo(new AttributeInfo("bordercolorlight", true));
-        th.addAttributeInfo(new AttributeInfo("background", true));
-        th.addAttributeInfo(new AttributeInfo("bgcolor", true));
-        th.addAttributeInfo(new AttributeInfo("align", true,
-            AttributeInfo.AttributeTypeOptions.ALIGN));
-        th.addAttributeInfo(new AttributeInfo("valign", true,
-            AttributeInfo.AttributeTypeOptions.VALIGN));
-        th.addAttributeInfo(new AttributeInfo("height", true));
-        th.addAttributeInfo(new AttributeInfo("width", true));
-        th.addAttributeInfo(new AttributeInfo("nowrap", false));
-        th.addAttributeInfo(new AttributeInfo("char", true));
-        th.addAttributeInfo(new AttributeInfo("charoff", true));
-        th.addAttributeInfo(new AttributeInfo("colspan", true));
-        th.addAttributeInfo(new AttributeInfo("rowspan", true));
-        th.addAttributeInfo(new AttributeInfo("abbr", true));
-        th.addAttributeInfo(new AttributeInfo("axis", true));
-        th.addAttributeInfo(new AttributeInfo("headers", true));
-        th.addAttributeInfo(new AttributeInfo("scope", true));
-        th.addAttributeInfo(new AttributeInfo("class", true,
-            AttributeInfo.AttributeTypeOptions.CSS));
-        th.addAttributeInfo(new AttributeInfo("dir", true));
-        th.addAttributeInfo(new AttributeInfo("id", true));
-        th.addAttributeInfo(new AttributeInfo("lang", true));
-        th.addAttributeInfo(new AttributeInfo("language", true));
-        th.addAttributeInfo(new AttributeInfo("style", true));
-        th.addAttributeInfo(new AttributeInfo("title", true));
-        addEventAttr(th);
-        addTagInfo(th);
-
-        TagInfo thead = new TagInfo("thead", true);
-        thead.addAttributeInfo(new AttributeInfo("align", true,
-            AttributeInfo.AttributeTypeOptions.ALIGN));
-        thead.addAttributeInfo(new AttributeInfo("bgcolor", true));
-        thead.addAttributeInfo(new AttributeInfo("char", true));
-        thead.addAttributeInfo(new AttributeInfo("charoff", true));
-        thead.addAttributeInfo(new AttributeInfo("valign", true,
-            AttributeInfo.AttributeTypeOptions.VALIGN));
-        thead.addAttributeInfo(new AttributeInfo("class", true,
-            AttributeInfo.AttributeTypeOptions.CSS));
-        thead.addAttributeInfo(new AttributeInfo("dir", true));
-        thead.addAttributeInfo(new AttributeInfo("id", true));
-        thead.addAttributeInfo(new AttributeInfo("lang", true));
-        thead.addAttributeInfo(new AttributeInfo("language", true));
-        thead.addAttributeInfo(new AttributeInfo("style", true));
-        thead.addAttributeInfo(new AttributeInfo("title", true));
-        addEventAttr(thead);
-        addTagInfo(thead);
-
-        TagInfo title = new TagInfo("title", true);
-        title.addAttributeInfo(new AttributeInfo("dir", true));
-        title.addAttributeInfo(new AttributeInfo("id", true));
-        title.addAttributeInfo(new AttributeInfo("lang", true));
-        title.addAttributeInfo(new AttributeInfo("title", true));
-        addTagInfo(title);
-
-        TagInfo tr = new TagInfo("tr", true);
-        tr.addAttributeInfo(new AttributeInfo("bordercolor", true));
-        tr.addAttributeInfo(new AttributeInfo("bordercolordark", true));
-        tr.addAttributeInfo(new AttributeInfo("bordercolorlight", true));
-        tr.addAttributeInfo(new AttributeInfo("background", true));
-        tr.addAttributeInfo(new AttributeInfo("bgcolor", true));
-        tr.addAttributeInfo(new AttributeInfo("align", true,
-            AttributeInfo.AttributeTypeOptions.ALIGN));
-        tr.addAttributeInfo(new AttributeInfo("char", true));
-        tr.addAttributeInfo(new AttributeInfo("charoff", true));
-        tr.addAttributeInfo(new AttributeInfo("height", true));
-        tr.addAttributeInfo(new AttributeInfo("valign", true,
-            AttributeInfo.AttributeTypeOptions.VALIGN));
-        tr.addAttributeInfo(new AttributeInfo("class", true,
-            AttributeInfo.AttributeTypeOptions.CSS));
-        tr.addAttributeInfo(new AttributeInfo("dir", true));
-        tr.addAttributeInfo(new AttributeInfo("id", true));
-        tr.addAttributeInfo(new AttributeInfo("lang", true));
-        tr.addAttributeInfo(new AttributeInfo("language", true));
-        tr.addAttributeInfo(new AttributeInfo("style", true));
-        tr.addAttributeInfo(new AttributeInfo("title", true));
-        addEventAttr(tr);
-        addTagInfo(tr);
-
-        TagInfo tt = new TagInfo("tt", true);
-        tt.addAttributeInfo(new AttributeInfo("class", true,
-            AttributeInfo.AttributeTypeOptions.CSS));
-        tt.addAttributeInfo(new AttributeInfo("dir", true));
-        tt.addAttributeInfo(new AttributeInfo("id", true));
-        tt.addAttributeInfo(new AttributeInfo("lang", true));
-        tt.addAttributeInfo(new AttributeInfo("style", true));
-        tt.addAttributeInfo(new AttributeInfo("title", true));
-        addEventAttr(tt);
-        addTagInfo(tt);
-
-        TagInfo u = new TagInfo("u", true);
-        u.addAttributeInfo(new AttributeInfo("class", true,
-            AttributeInfo.AttributeTypeOptions.CSS));
-        u.addAttributeInfo(new AttributeInfo("dir", true));
-        u.addAttributeInfo(new AttributeInfo("id", true));
-        u.addAttributeInfo(new AttributeInfo("lang", true));
-        u.addAttributeInfo(new AttributeInfo("style", true));
-        u.addAttributeInfo(new AttributeInfo("title", true));
-        addEventAttr(u);
-        addTagInfo(u);
-
-        TagInfo ul = new TagInfo("ul", true);
-        ul.addAttributeInfo(new AttributeInfo("compact", false));
-        ul.addAttributeInfo(new AttributeInfo("type", true));
-        ul.addAttributeInfo(new AttributeInfo("class", true,
-            AttributeInfo.AttributeTypeOptions.CSS));
-        ul.addAttributeInfo(new AttributeInfo("dir", true));
-        ul.addAttributeInfo(new AttributeInfo("id", true));
-        ul.addAttributeInfo(new AttributeInfo("lang", true));
-        ul.addAttributeInfo(new AttributeInfo("style", true));
-        ul.addAttributeInfo(new AttributeInfo("title", true));
-        addEventAttr(ul);
-        addTagInfo(ul);
-
-        TagInfo var = new TagInfo("var", true);
-        var.addAttributeInfo(new AttributeInfo("class", true,
-            AttributeInfo.AttributeTypeOptions.CSS));
-        var.addAttributeInfo(new AttributeInfo("dir", true));
-        var.addAttributeInfo(new AttributeInfo("id", true));
-        var.addAttributeInfo(new AttributeInfo("lang", true));
-        var.addAttributeInfo(new AttributeInfo("style", true));
-        var.addAttributeInfo(new AttributeInfo("title", true));
-        addEventAttr(var);
-        addTagInfo(var);
-
-        TagInfo wbr = new TagInfo("wbr", false);
-        wbr.addAttributeInfo(new AttributeInfo("class", true,
-            AttributeInfo.AttributeTypeOptions.CSS));
-        wbr.addAttributeInfo(new AttributeInfo("dir", true));
-        wbr.addAttributeInfo(new AttributeInfo("id", true));
-        wbr.addAttributeInfo(new AttributeInfo("lang", true));
-        wbr.addAttributeInfo(new AttributeInfo("language", true));
-        wbr.addAttributeInfo(new AttributeInfo("style", true));
-        wbr.addAttributeInfo(new AttributeInfo("title", true));
-        addTagInfo(wbr);
-    }
-
-}
diff --git a/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/editors/htmlhelpers/TagInfo.java b/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/editors/htmlhelpers/TagInfo.java
deleted file mode 100644
index a406398..0000000
--- a/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/editors/htmlhelpers/TagInfo.java
+++ /dev/null
@@ -1,128 +0,0 @@
-/*
- * 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.
- */
-package org.apache.syncope.ide.eclipse.plugin.editors.htmlhelpers;
-
-import java.util.ArrayList;
-import java.util.List;
-
-public class TagInfo {
-
-    private String tagName;
-    private boolean hasBody;
-    private boolean emptyTag;
-    private String description;
-    private List<AttributeInfo> attributes = new ArrayList<AttributeInfo>();
-    private List<String> children = new ArrayList<String>();
-    public static final int NONE  = 0;
-    public static final int EVENT = 1;
-    public static final int FORM  = 2;
-
-    public TagInfo(final String tagName, final boolean hasBody) {
-        this(tagName, hasBody, false);
-    }
-
-    public TagInfo(final String tagName, final boolean hasBody, final boolean emptyTag) {
-        this.tagName = tagName;
-        this.hasBody = hasBody;
-        this.emptyTag = emptyTag;
-    }
-
-    public String getTagName() {
-        return this.tagName;
-    }
-
-    public boolean hasBody() {
-        return this.hasBody;
-    }
-
-    public boolean isEmptyTag() {
-        return this.emptyTag;
-    }
-
-    public void addAttributeInfo(final AttributeInfo attribute) {
-        int i = 0;
-        for ( ; i < attributes.size(); i++) {
-            AttributeInfo info = attributes.get(i);
-            if (info.getAttributeName().compareTo(attribute.getAttributeName()) > 0) {
-                break;
-            }
-        }
-        this.attributes.add(i, attribute);
-    }
-
-    public AttributeInfo[] getAttributeInfo() {
-        return this.attributes.toArray(new AttributeInfo[this.attributes.size()]);
-    }
-
-    public AttributeInfo[] getRequiredAttributeInfo() {
-        ArrayList<AttributeInfo> list = new ArrayList<AttributeInfo>();
-        for (int i = 0; i < attributes.size(); i++) {
-            AttributeInfo info = (AttributeInfo) attributes.get(i);
-            if (info.isRequired()) {
-                list.add(info);
-            }
-        }
-        return list.toArray(new AttributeInfo[list.size()]);
-    }
-
-    public AttributeInfo getAttributeInfo(final String name) {
-        for (int i = 0 ; i < attributes.size() ; i++) {
-            AttributeInfo info = attributes.get(i);
-            if (info.getAttributeName().equals(name)) {
-                return info;
-            }
-        }
-        return null;
-    }
-
-    public void addChildTagName(final String name) {
-        children.add(name);
-    }
-
-    public String[] getChildTagNames() {
-        return children.toArray(new String[children.size()]);
-    }
-
-    @Override public boolean equals(final Object obj) {
-        if (obj instanceof TagInfo) {
-            TagInfo tagInfo = (TagInfo) obj;
-            if (tagInfo.getTagName().equals(getTagName())) {
-                return true;
-            }
-        }
-        return false;
-    }
-
-    @Override public int hashCode() {
-        return this.getTagName().hashCode();
-    }
-
-    public String getDescription() {
-        return description;
-    }
-
-    public void setDescription(final String description) {
-        this.description = description;
-    }
-
-    public String getDisplayString() {
-        return getTagName();
-    }
-
-}
diff --git a/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/editors/htmlhelpers/TagRule.java b/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/editors/htmlhelpers/TagRule.java
deleted file mode 100644
index 4fdce48..0000000
--- a/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/editors/htmlhelpers/TagRule.java
+++ /dev/null
@@ -1,119 +0,0 @@
-/*
- * 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.
- */
-package org.apache.syncope.ide.eclipse.plugin.editors.htmlhelpers;
-
-import org.eclipse.jface.text.rules.ICharacterScanner;
-import org.eclipse.jface.text.rules.IToken;
-import org.eclipse.jface.text.rules.MultiLineRule;
-
-public class TagRule extends MultiLineRule {
-
-    public static final int PREFIX = 0;
-    public static final int NO_PREFIX = 1;
-    public static final int BOTH = 2;
-    private int prefix;
-
-    public TagRule(final IToken token, final int prefix) {
-        super("<", ">", token);
-        this.prefix = prefix;
-    }
-
-    protected boolean sequenceDetected(final ICharacterScanner scanner,
-            final char[] sequence, final boolean eofAllowed) {
-        if (sequence[0] == '<') {
-            int c = scanner.read();
-            if (c == '?' || c == '!' || c == '%') {
-                scanner.unread();
-                return false;
-            }
-            int back = 1;
-            try {
-                while (true) {
-                    c = scanner.read();
-                    back++;
-                    if (c == -1) {
-                        return false;
-                    }
-                    if (Character.isWhitespace(c) || c == '>') {
-                        if (prefix == PREFIX) {
-                            return false;
-                        }
-                        break;
-                    } else if (c == ':') {
-                        if (prefix == NO_PREFIX) {
-                            return false;
-                        }
-                        break;
-                    }
-                }
-            } finally {
-                for (int i = 0; i < back; i++) {
-                    scanner.unread();
-                }
-            }
-        } else if (sequence[0] == '>') {
-            // read previous char
-            scanner.unread();
-            scanner.unread();
-            int c = scanner.read();
-            // repair position
-            scanner.read();
-            if (c == '%') {
-                return false;
-            }
-        }
-        return super.sequenceDetected(scanner, sequence, eofAllowed);
-    }
-
-    protected boolean endSequenceDetected(final ICharacterScanner scanner) {
-
-        int c;
-        boolean doubleQuoted = false;
-        boolean singleQuoted = false;
-        char[][] delimiters = scanner.getLegalLineDelimiters();
-        boolean previousWasEscapeCharacter = false;
-        while ((c = scanner.read()) != ICharacterScanner.EOF) {
-            if (c == fEscapeCharacter) {
-                scanner.read();
-            } else if (c == '"' && !singleQuoted) {
-                doubleQuoted = !doubleQuoted;
-            } else if (c == '\'' && !doubleQuoted) {
-                singleQuoted = !singleQuoted;
-            } else if (fEndSequence.length > 0 && c == fEndSequence[0] && !doubleQuoted
-                    && !singleQuoted && sequenceDetected(scanner, fEndSequence, true)) {
-                return true;
-            } else if (fBreaksOnEOL) {
-                // Check for end of line since it can be used to terminate the pattern.
-                for (int i = 0; i < delimiters.length; i++) {
-                    if (c == delimiters[i][0] && sequenceDetected(scanner, delimiters[i], true)) {
-                        if (!fEscapeContinuesLine || !previousWasEscapeCharacter) {
-                            return true;
-                        }
-                    }
-                }
-            }
-            previousWasEscapeCharacter = (c == fEscapeCharacter);
-        }
-        if (fBreaksOnEOF) {
-            return true;
-        }
-        scanner.unread();
-        return false;
-    }
-}
diff --git a/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/editors/htmlhelpers/TextInfo.java b/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/editors/htmlhelpers/TextInfo.java
deleted file mode 100644
index 7536117..0000000
--- a/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/editors/htmlhelpers/TextInfo.java
+++ /dev/null
@@ -1,50 +0,0 @@
-/*
- * 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.
- */
-package org.apache.syncope.ide.eclipse.plugin.editors.htmlhelpers;
-
-public class TextInfo extends TagInfo {
-
-    private String display;
-    private String text;
-    private int position;
-
-    public TextInfo(final String text, final int position) {
-        this(text, text, position);
-    }
-
-    public TextInfo(final String display, final String text, final int position) {
-        super(null, false);
-        this.display = display;
-        this.text = text;
-        this.position = position;
-    }
-
-    public String getDisplayString() {
-        return this.display;
-    }
-
-    public String getText() {
-        return this.text;
-    }
-
-    public int getPosition() {
-        return this.position;
-    }
-
-}
diff --git a/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/views/SyncopeView.java b/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/views/SyncopeView.java
deleted file mode 100644
index bfa40f0..0000000
--- a/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/views/SyncopeView.java
+++ /dev/null
@@ -1,534 +0,0 @@
-/*
- * 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.
- */
-package org.apache.syncope.ide.eclipse.plugin.views;
-
-import java.io.ByteArrayInputStream;
-import java.io.InputStream;
-import java.util.List;
-import java.util.Scanner;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.jface.window.Window;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.jface.action.Action;
-import org.eclipse.jface.action.IMenuListener;
-import org.eclipse.jface.action.IMenuManager;
-import org.eclipse.jface.action.IToolBarManager;
-import org.eclipse.jface.action.MenuManager;
-import org.eclipse.jface.dialogs.MessageDialog;
-import org.eclipse.jface.viewers.DoubleClickEvent;
-import org.eclipse.jface.viewers.IDoubleClickListener;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.IStructuredContentProvider;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.viewers.ITreeContentProvider;
-import org.eclipse.jface.viewers.LabelProvider;
-import org.eclipse.jface.viewers.TreeViewer;
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.jface.viewers.ViewerSorter;
-import org.eclipse.swt.widgets.Menu;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.ui.IActionBars;
-import org.eclipse.ui.ISharedImages;
-import org.eclipse.ui.PartInitException;
-import org.eclipse.ui.PlatformUI;
-import org.eclipse.ui.part.ViewPart;
-import org.eclipse.swt.SWT;
-import org.apache.syncope.client.lib.SyncopeClient;
-import org.apache.syncope.client.lib.SyncopeClientFactoryBean;
-import org.apache.syncope.common.lib.SyncopeClientException;
-import org.apache.syncope.common.lib.to.MailTemplateTO;
-import org.apache.syncope.common.lib.to.ReportTemplateTO;
-import org.apache.syncope.common.lib.types.ClientExceptionType;
-import org.apache.syncope.common.lib.types.MailTemplateFormat;
-import org.apache.syncope.common.lib.types.ReportTemplateFormat;
-import org.apache.syncope.common.rest.api.service.MailTemplateService;
-import org.apache.syncope.common.rest.api.service.ReportTemplateService;
-import org.apache.syncope.ide.eclipse.plugin.dialogs.AddTemplateDialog;
-import org.apache.syncope.ide.eclipse.plugin.dialogs.LoginDialog;
-import org.apache.syncope.ide.eclipse.plugin.editors.TemplateEditor;
-import org.apache.syncope.ide.eclipse.plugin.editors.TemplateEditorInput;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.core.runtime.jobs.Job;
-
-public class SyncopeView extends ViewPart {
-
-    public static final String ID = "org.apache.syncope.ide.eclipse.plugin.views.SyncopeView";
-
-    private TreeViewer viewer;
-    private ViewContentProvider vcp;
-    private static SyncopeClient SYNCOPE_CLIENT;
-    private Action loginAction;
-    private Action refreshAction;
-    private Action doubleClickAction;
-    private Action addAction;
-    private Action readAction;
-    private Action removeAction;
-
-    private static final String MAIL_TEMPLATE_LABEL = "Mail Templates";
-    private static final String REPORT_TEMPLATE_LABEL = "Report Templates";
-    private static final String LOGIN_ACTION_TEXT = "Login";
-    private static final String LOGIN_ACTION_TOOLTIP_TEXT = "Set Apache Syncope deployment url and login";
-    private static final String REFRESH_ACTION_TEXT = "Refresh";
-    private static final String REFRESH_ACTION_TOOLTIP_TEXT = "Refresh the template listings";
-    private static final String READ_ACTION_TEXT = "View Template";
-    private static final String ADD_ACTION_TEXT = "Add Template";
-    private static final String REMOVE_ACTION_TEXT = "Remove template";
-    private static final String LOADING_TEMPLATE_FORMAT_LABEL = "Loading template data";
-    private static final String LOADING_TEMPLATE_LABEL = "Loading Templates";
-    private static final String HELP_TEXT = "org.apache.syncope.ide.eclipse.plugin.viewer";
-    public static final String TEMPLATE_FORMAT_HTML = "HTML";
-    public static final String TEMPLATE_FORMAT_XSL_HTML = "XSL-HTML";
-    public static final String TEMPLATE_FORMAT_CSV = "CSV";
-    public static final String TEMPLATE_FORMAT_XSL_FO = "XSL-FO";
-    public static final String TEMPLATE_FORMAT_TEXT = "TEXT";
-
-    class ViewContentProvider implements IStructuredContentProvider, ITreeContentProvider {
-        private TreeParent invisibleRoot;
-        private String deploymentUrl;
-        private String username;
-        private String password;
-
-        ViewContentProvider() {
-            deploymentUrl = "";
-            username = "";
-            password = "";
-        }
-
-        ViewContentProvider(final String deploymentUrl, final String username, final String password) {
-            this.deploymentUrl = deploymentUrl;
-            this.username = username;
-            this.password = password;
-        }
-
-        public void inputChanged(final Viewer v, final Object oldInput, final Object newInput) {
-        }
-
-        public void dispose() {
-        }
-
-        public Object[] getElements(final Object parent) {
-            if (parent.equals(getViewSite())) {
-                if (invisibleRoot == null) {
-                    initialize();
-                }
-                return getChildren(invisibleRoot);
-            }
-            return getChildren(parent);
-        }
-
-        public Object getParent(final Object child) {
-            if (child instanceof TreeObject) {
-                return ((TreeObject) child).getParent();
-            }
-            return null;
-        }
-
-        public Object[] getChildren(final Object parent) {
-            if (parent instanceof TreeParent) {
-                return ((TreeParent) parent).getChildren();
-            }
-            return new Object[0];
-        }
-
-        public boolean hasChildren(final Object parent) {
-            if (parent instanceof TreeParent) {
-                return ((TreeParent) parent).hasChildren();
-            }
-            return false;
-        }
-
-        public void initialize() throws java.security.AccessControlException, javax.ws.rs.ProcessingException {
-            invisibleRoot = new TreeParent("");
-
-            if (this.deploymentUrl != null && !(this.deploymentUrl.equals("")) && this.username != null
-                    && !(this.username.equals("")) && this.password != null && !(this.password.equals(""))) {
-                TreeParent p1 = new TreeParent(MAIL_TEMPLATE_LABEL);
-                TreeParent p2 = new TreeParent(REPORT_TEMPLATE_LABEL);
-
-                SYNCOPE_CLIENT = new SyncopeClientFactoryBean().setAddress(this.deploymentUrl).create(this.username,
-                        this.password);
-                MailTemplateService mailTemplateService = SYNCOPE_CLIENT.getService(MailTemplateService.class);
-                List<MailTemplateTO> mailTemplateTOs = mailTemplateService.list();
-
-                for (int i = 0; i < mailTemplateTOs.size(); i++) {
-                    TreeObject obj = new TreeObject(mailTemplateTOs.get(i).getKey());
-                    p1.addChild(obj);
-                }
-                invisibleRoot.addChild(p1);
-                ReportTemplateService reportTemplateService = SYNCOPE_CLIENT.getService(ReportTemplateService.class);
-                List<ReportTemplateTO> reportTemplateTOs = reportTemplateService.list();
-
-                for (int i = 0; i < reportTemplateTOs.size(); i++) {
-                    TreeObject obj = new TreeObject(reportTemplateTOs.get(i).getKey());
-                    p2.addChild(obj);
-                }
-                invisibleRoot.addChild(p2);
-            }
-        }
-    }
-
-    class ViewLabelProvider extends LabelProvider {
-
-        public String getText(final Object obj) {
-            return obj.toString();
-        }
-
-        public Image getImage(final Object obj) {
-            String imageKey = ISharedImages.IMG_OBJ_ELEMENT;
-            if (obj instanceof TreeParent) {
-                imageKey = ISharedImages.IMG_OBJ_FOLDER;
-            }
-            return PlatformUI.getWorkbench().getSharedImages().getImage(imageKey);
-        }
-    }
-
-    public void createPartControl(final Composite parent) {
-        viewer = new TreeViewer(parent, SWT.MULTI | SWT.H_SCROLL | SWT.V_SCROLL);
-        vcp = new ViewContentProvider();
-        viewer.setContentProvider(vcp);
-        viewer.setLabelProvider(new ViewLabelProvider());
-        viewer.setSorter(new ViewerSorter());
-        viewer.setInput(getViewSite());
-
-        // Create the help context id for the viewer's control
-        PlatformUI.getWorkbench().getHelpSystem().setHelp(viewer.getControl(), HELP_TEXT);
-        makeActions();
-        hookContextMenu();
-        hookDoubleClickAction();
-        contributeToActionBars();
-    }
-
-    private void hookContextMenu() {
-        MenuManager menuMgr = new MenuManager("#PopupMenu");
-        menuMgr.setRemoveAllWhenShown(true);
-        menuMgr.addMenuListener(new IMenuListener() {
-            public void menuAboutToShow(final IMenuManager manager) {
-                SyncopeView.this.fillContextMenu(manager);
-            }
-        });
-        Menu menu = menuMgr.createContextMenu(viewer.getControl());
-        viewer.getControl().setMenu(menu);
-        getSite().registerContextMenu(menuMgr, viewer);
-    }
-
-    private void contributeToActionBars() {
-        IActionBars bars = getViewSite().getActionBars();
-        fillLocalPullDown(bars.getMenuManager());
-        fillLocalToolBar(bars.getToolBarManager());
-    }
-
-    private void fillLocalPullDown(final IMenuManager manager) {
-        manager.add(loginAction);
-    }
-
-    private void fillContextMenu(final IMenuManager manager) {
-
-        ISelection selection = viewer.getSelection();
-        Object obj = ((IStructuredSelection) selection).getFirstElement();
-        if (obj instanceof TreeParent) {
-            manager.add(addAction);
-        } else {
-            manager.add(readAction);
-            manager.add(removeAction);
-        }
-    }
-
-    private void fillLocalToolBar(final IToolBarManager manager) {
-        manager.add(loginAction);
-        refreshAction.setEnabled(false);
-        manager.add(refreshAction);
-    }
-
-    private void makeActions() {
-        loginAction = new Action() {
-            public void run() {
-                Shell shell = viewer.getControl().getShell();
-                LoginDialog dialog = new LoginDialog(shell);
-                dialog.create();
-                if (dialog.open() == Window.OK) {
-                    String deploymentUrl = dialog.getDeploymentUrl();
-                    String username = dialog.getUsername();
-                    String password = dialog.getPassword();
-
-                    vcp.deploymentUrl = deploymentUrl;
-                    vcp.username = username;
-                    vcp.password = password;
-
-                    updateTreeViewer();
-                }
-            }
-        };
-        loginAction.setText(LOGIN_ACTION_TEXT);
-        loginAction.setToolTipText(LOGIN_ACTION_TOOLTIP_TEXT);
-
-        refreshAction = new Action() {
-            public void run() {
-                updateTreeViewer();
-            }
-        };
-        refreshAction.setText(REFRESH_ACTION_TEXT);
-        refreshAction.setToolTipText(REFRESH_ACTION_TOOLTIP_TEXT);
-
-        doubleClickAction = new Action() {
-            public void run() {
-                ISelection selection = viewer.getSelection();
-                Object obj = ((IStructuredSelection) selection).getFirstElement();
-                if (!(obj instanceof TreeParent)) {
-                    openTemplateInEditor((TreeObject) obj);
-                } else {
-                    viewer.expandToLevel(obj, 1);
-                }
-            }
-        };
-
-        readAction = new Action() {
-            public void run() {
-                ISelection selection = viewer.getSelection();
-                TreeObject obj = (TreeObject) ((IStructuredSelection) selection).getFirstElement();
-                openTemplateInEditor(obj);
-            }
-        };
-        readAction.setText(READ_ACTION_TEXT);
-
-        addAction = new Action() {
-            public void run() {
-                ISelection selection = viewer.getSelection();
-                TreeParent tp = (TreeParent) ((IStructuredSelection) selection).getFirstElement();
-                Shell shell = viewer.getControl().getShell();
-                AddTemplateDialog addTemplateDialog = new AddTemplateDialog(shell);
-                addTemplateDialog.create();
-                if (addTemplateDialog.open() == Window.OK) {
-                    String key = addTemplateDialog.getKey();
-                    try {
-                        if (tp.getName().equals(MAIL_TEMPLATE_LABEL)) {
-                            MailTemplateService mailTemplateService = SYNCOPE_CLIENT
-                                    .getService(MailTemplateService.class);
-                            MailTemplateTO mtto = new MailTemplateTO();
-                            mtto.setKey(key);
-                            mailTemplateService.create(mtto);
-                        } else if (tp.getName().equals(REPORT_TEMPLATE_LABEL)) {
-                            ReportTemplateService reportTemplateService = SYNCOPE_CLIENT
-                                    .getService(ReportTemplateService.class);
-                            ReportTemplateTO rtto = new ReportTemplateTO();
-                            rtto.setKey(key);
-                            reportTemplateService.create(rtto);
-                        }
-                        updateTreeViewer();
-                    } catch (final SyncopeClientException e) {
-                        if (e.toString().contains("EntityExists")) {
-                            MessageDialog.openError(shell, "Template already exists",
-                                    "A template named " + key + " already exists.");
-                        }
-                    }
-                }
-            }
-        };
-        addAction.setText(ADD_ACTION_TEXT);
-
-        removeAction = new Action() {
-            public void run() {
-                ISelection selection = viewer.getSelection();
-                TreeObject obj = (TreeObject) ((IStructuredSelection) selection).getFirstElement();
-                TreeParent tp = (TreeParent) vcp.getParent(obj);
-                if (MAIL_TEMPLATE_LABEL.equals(tp.getName())) {
-                    MailTemplateService mailTemplateService = SYNCOPE_CLIENT.getService(
-                        MailTemplateService.class);
-                    mailTemplateService.delete(obj.getName());
-                } else if (tp.getName().equals(REPORT_TEMPLATE_LABEL)) {
-                    ReportTemplateService reportTemplateService = SYNCOPE_CLIENT.getService(
-                        ReportTemplateService.class);
-                    reportTemplateService.delete(obj.getName());
-                }
-                updateTreeViewer();
-            }
-        };
-        removeAction.setText(REMOVE_ACTION_TEXT);
-    }
-
-    protected void openTemplateInEditor(final TreeObject obj) {
-        TreeParent tp = (TreeParent) vcp.getParent(obj);
-        if (MAIL_TEMPLATE_LABEL.equals(tp.getName())) {
-            final MailTemplateService mailTemplateService = SYNCOPE_CLIENT.getService(
-                MailTemplateService.class);
-            final String[] templateData = new String[2];
-            final String[] editorTitles = { TEMPLATE_FORMAT_HTML, TEMPLATE_FORMAT_TEXT };
-            final String[] editorToolTips = { obj.getName(), obj.getName() };
-            Job job = new Job(LOADING_TEMPLATE_FORMAT_LABEL) {
-                @Override
-                protected IStatus run(final IProgressMonitor arg0) {
-                    templateData[0] = getStringFromTemplate(
-                        mailTemplateService, obj.getName(), MailTemplateFormat.HTML);
-                    templateData[1] = getStringFromTemplate(
-                        mailTemplateService, obj.getName(), MailTemplateFormat.TEXT);
-                    Display.getDefault().syncExec(new Runnable() {
-                        @Override
-                        public void run() {
-                            try {
-                                getViewSite().getPage().openEditor(new TemplateEditorInput(
-                                    templateData, editorTitles, editorToolTips), TemplateEditor.ID);
-                            } catch (final PartInitException e) {
-                                e.printStackTrace();
-                            }
-                        }
-                    });
-                    return Status.OK_STATUS;
-                }
-                private String getStringFromTemplate(final MailTemplateService mailTemplateService,
-                    final String name, final MailTemplateFormat format) {
-                    try {
-                        InputStream inpstream = (InputStream) (mailTemplateService.getFormat(name, format))
-                            .getEntity();
-                        Scanner sc = new Scanner(inpstream);
-                        String templateContent = sc.nextLine();
-                        while (sc.hasNext()) {
-                            templateContent += "\n" + sc.nextLine();
-                        }
-                        sc.close();
-                        return (templateContent);
-                    } catch (final SyncopeClientException e) {
-                        if (ClientExceptionType.NotFound.equals(e.getType())) {
-                            return "";
-                        }
-                    }
-                    return null;
-                }
-            };
-            job.setUser(true);
-            job.schedule();
-
-        } else if (tp.getName().equals(REPORT_TEMPLATE_LABEL)) {
-            final ReportTemplateService reportTemplateService = SYNCOPE_CLIENT.getService(
-                ReportTemplateService.class);
-            final String[] templateData = new String[3];
-            final String[] editorTitles = { TEMPLATE_FORMAT_CSV, TEMPLATE_FORMAT_XSL_FO, TEMPLATE_FORMAT_XSL_HTML };
-            final String[] editorToolTips = { obj.getName(), obj.getName(), obj.getName() };
-            Job job = new Job(LOADING_TEMPLATE_FORMAT_LABEL) {
-                @Override
-                protected IStatus run(final IProgressMonitor arg0) {
-                    templateData[0] = getStringFromTemplate(reportTemplateService, obj.getName(),
-                        ReportTemplateFormat.CSV);
-                    templateData[1] = getStringFromTemplate(reportTemplateService, obj.getName(),
-                        ReportTemplateFormat.FO);
-                    templateData[2] = getStringFromTemplate(reportTemplateService, obj.getName(),
-                        ReportTemplateFormat.HTML);
-                    Display.getDefault().syncExec(new Runnable() {
-                        @Override
-                        public void run() {
-                            try {
-                                getViewSite().getPage().openEditor(new TemplateEditorInput(
-                                    templateData, editorTitles, editorToolTips),
-                                        TemplateEditor.ID);
-                            } catch (final PartInitException e) {
-                                e.printStackTrace();
-                            }
-                        }
-                    });
-                    return Status.OK_STATUS;
-                }
-                private String getStringFromTemplate(final ReportTemplateService reportTemplateService,
-                    final String name, final ReportTemplateFormat format) {
-                    try {
-                        InputStream inpstream = (InputStream) (reportTemplateService.getFormat(name, format))
-                            .getEntity();
-                        Scanner sc = new Scanner(inpstream);
-                        String templateContent = sc.nextLine();
-                        while (sc.hasNext()) {
-                            templateContent += "\n" + sc.nextLine();
-                        }
-                        sc.close();
-                        return (templateContent);
-                    } catch (final SyncopeClientException e) {
-                        if (ClientExceptionType.NotFound.equals(e.getType())) {
-                            return "";
-                        }
-                    }
-                    return null;
-                }
-            };
-            job.setUser(true);
-            job.schedule();
-        }
-    }
-
-    private void updateTreeViewer() {
-        final Display display = Display.getDefault();
-        Job job = new Job(LOADING_TEMPLATE_LABEL) {
-            @Override
-            protected IStatus run(final IProgressMonitor monitor) {
-                try {
-                    vcp.initialize();
-                } catch (final Exception e) {
-                    display.syncExec(new Runnable() {
-                        public void run() {
-                            Shell shell = viewer.getControl().getShell();
-                            if (e instanceof java.security.AccessControlException) {
-                                MessageDialog.openError(shell, "Incorrect Credentials",
-                                        "Unable to authenticate " + vcp.username);
-                            } else if (e instanceof javax.ws.rs.ProcessingException) {
-                                MessageDialog.openError(shell, "Incorrect Url",
-                                        "Unable to find apache syncope at " + vcp.deploymentUrl);
-                            } else if (e instanceof javax.xml.ws.WebServiceException) {
-                                MessageDialog.openError(shell, "Invalid Url", "Not a valid url " + vcp.username);
-                            } else {
-                                e.printStackTrace();
-                            }
-                        }
-                    });
-                } finally {
-                    display.syncExec(new Runnable() {
-                        public void run() {
-                            refreshAction.setEnabled(true);
-                            SyncopeView.this.viewer.refresh();
-                        }
-                    });
-                }
-                return Status.OK_STATUS;
-            }
-        };
-        job.setUser(true);
-        job.schedule();
-    }
-
-    private void hookDoubleClickAction() {
-        viewer.addDoubleClickListener(new IDoubleClickListener() {
-            public void doubleClick(final DoubleClickEvent event) {
-                doubleClickAction.run();
-            }
-        });
-    }
-
-    public void setFocus() {
-        viewer.getControl().setFocus();
-    }
-
-    public static void setMailTemplateContent(final String key, final MailTemplateFormat format,
-        final String content) {
-        MailTemplateService mailTemplateService = SYNCOPE_CLIENT.getService(MailTemplateService.class);
-        mailTemplateService.setFormat(key, format, new ByteArrayInputStream(content.getBytes()));
-    }
-    public static void setReportTemplateContent(final String key, final ReportTemplateFormat format,
-        final String content) {
-        ReportTemplateService reportTemplateService = SYNCOPE_CLIENT.getService(ReportTemplateService.class);
-        reportTemplateService.setFormat(key, format, new ByteArrayInputStream(content.getBytes()));
-    }
-
-}
diff --git a/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/views/TreeObject.java b/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/views/TreeObject.java
deleted file mode 100644
index 36b1a8b..0000000
--- a/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/views/TreeObject.java
+++ /dev/null
@@ -1,44 +0,0 @@
-/*
- * 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.
- */
-package org.apache.syncope.ide.eclipse.plugin.views;
-
-public class TreeObject {
-    private String name;
-    private TreeParent parent;
-
-    TreeObject(final String name) {
-        this.name = name;
-    }
-
-    public String getName() {
-        return name;
-    }
-
-    public void setParent(final TreeParent parent) {
-        this.parent = parent;
-    }
-
-    public TreeParent getParent() {
-        return parent;
-    }
-
-    public String toString() {
-        return getName();
-    }
-}
diff --git a/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/views/TreeParent.java b/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/views/TreeParent.java
deleted file mode 100644
index d82c444..0000000
--- a/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/java/org/apache/syncope/ide/eclipse/plugin/views/TreeParent.java
+++ /dev/null
@@ -1,49 +0,0 @@
-/*
- * 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.
- */
-package org.apache.syncope.ide.eclipse.plugin.views;
-
-import java.util.ArrayList;
-import java.util.List;
-
-class TreeParent extends TreeObject {
-    private List<TreeObject> children;
-
-    TreeParent(final String name) {
-        super(name);
-        children = new ArrayList<TreeObject>();
-    }
-
-    public void addChild(final TreeObject child) {
-        children.add(child);
-        child.setParent(this);
-    }
-
-    public void removeChild(final TreeObject child) {
-        children.remove(child);
-        child.setParent(null);
-    }
-
-    public TreeObject[] getChildren() {
-        return (TreeObject[]) children.toArray(new TreeObject[children.size()]);
-    }
-
-    public boolean hasChildren() {
-        return children.size() > 0;
-    }
-}
diff --git a/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/resources/HTMLEditor.properties b/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/resources/HTMLEditor.properties
deleted file mode 100644
index d73d046..0000000
--- a/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/resources/HTMLEditor.properties
+++ /dev/null
@@ -1,21 +0,0 @@
-#
-# 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.
-#
-AutoIndentlabel=Auto Indent
-AutoIndenttooltip=Auto Format HTML content
-AutoIndentdescription=Indentation and formatting of HTML content
diff --git a/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/resources/icons/syncope.png b/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/resources/icons/syncope.png
deleted file mode 100644
index 0936395..0000000
Binary files a/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/src/main/resources/icons/syncope.png and /dev/null differ
diff --git a/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.tests/META-INF/MANIFEST.MF b/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.tests/META-INF/MANIFEST.MF
deleted file mode 100644
index 1747fcb..0000000
--- a/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.tests/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,21 +0,0 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: org.apache.syncope.ide.eclipse.tests
-Bundle-SymbolicName: org.apache.syncope.ide.eclipse.tests;singleton:=true
-Bundle-Version: 3.0.0.qualifier
-Bundle-ActivationPolicy: lazy
-Bundle-Vendor: 
-Bundle-RequiredExecutionEnvironment: J2SE-1.5
-Require-Bundle: org.eclipse.swtbot.go,
- org.eclipse.jface.text,
- org.eclipse.core.resources,
- org.eclipse.ui,
- org.eclipse.ui.editors,
- org.eclipse.ui.ide,
- org.eclipse.core.runtime,
- org.eclipse.swtbot.swt.finder,
- org.eclipse.swtbot.eclipse.finder,
- org.apache.log4j,
- org.eclipse.swtbot.junit4_x,
- org.apache.syncope.ide.eclipse.plugin,
- org.eclipse.swtbot.eclipse.ui
diff --git a/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.tests/build.properties b/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.tests/build.properties
deleted file mode 100644
index f397c4d..0000000
--- a/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.tests/build.properties
+++ /dev/null
@@ -1,22 +0,0 @@
-#
-# 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.
-#
-source.. = src/
-output.. = bin/
-bin.includes = META-INF/,\
-               .
diff --git a/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.tests/pom.xml b/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.tests/pom.xml
deleted file mode 100644
index 9177545..0000000
--- a/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.tests/pom.xml
+++ /dev/null
@@ -1,154 +0,0 @@
-<?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.
--->
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
-
-  <modelVersion>4.0.0</modelVersion>
-
-  <parent>
-    <groupId>org.apache.syncope.ide</groupId>
-    <artifactId>syncope-ide-eclipse</artifactId>
-    <version>3.0.0-SNAPSHOT</version>
-    <relativePath>../../</relativePath>
-  </parent>
-
-  <name>Apache Syncope IDE Eclipse Tests</name>
-  <description>Apache Syncope IDE Eclipse Tests</description>
-  <groupId>org.apache.syncope.ide.eclipse</groupId>
-  <artifactId>org.apache.syncope.ide.eclipse.tests</artifactId>
-  <packaging>eclipse-test-plugin</packaging>
-  
-  <properties>
-    <rootpom.basedir>${basedir}/../../../..</rootpom.basedir>
-  </properties>
-
-  <dependencies>
-    <dependency>
-      <groupId>com.h2database</groupId>
-      <artifactId>h2</artifactId>
-      <scope>test</scope>
-    </dependency>
-    <dependency>
-      <groupId>org.apache.syncope.fit</groupId>
-      <artifactId>syncope-fit-core-reference</artifactId>
-      <version>${project.version}</version>
-      <type>war</type>
-      <scope>test</scope>
-    </dependency>
-  </dependencies>
-
-  <profiles>
-    <profile>
-      <id>eclipse-it</id>
-      <build>
-        <plugins>
-          <plugin>
-            <groupId>org.eclipse.tycho</groupId>
-            <artifactId>target-platform-configuration</artifactId>
-            <configuration>
-              <dependency-resolution>
-                <extraRequirements>
-                  <requirement>
-                    <type>eclipse-feature</type>
-                    <id>org.eclipse.e4.rcp</id>
-                    <versionRange>0.0.0</versionRange>
-                  </requirement>
-                  <requirement>
-                    <type>eclipse-feature</type>
-                    <id>org.eclipse.pde</id>
-                    <versionRange>0.0.0</versionRange>
-                  </requirement>
-                  <requirement>
-                    <type>eclipse-feature</type>
-                    <id>org.eclipse.cvs</id>
-                    <versionRange>0.0.0</versionRange>
-                  </requirement>
-                </extraRequirements>
-              </dependency-resolution>
-            </configuration>
-          </plugin>
-          
-          <plugin>		
-            <groupId>org.eclipse.tycho</groupId>		
-            <artifactId>tycho-surefire-plugin</artifactId>		
-            <configuration>		
-              <useUIHarness>true</useUIHarness>		
-              <useUIThread>false</useUIThread>		
-              <product>org.eclipse.sdk.ide</product>		
-              <application>org.eclipse.ui.ide.workbench</application>		
-            </configuration>		
-          </plugin>
- 
-          <plugin>
-            <groupId>org.codehaus.cargo</groupId>
-            <artifactId>cargo-maven2-plugin</artifactId>
-            <inherited>true</inherited>
-            <configuration>
-              <container>
-                <dependencies>
-                  <dependency>
-                    <groupId>com.h2database</groupId>
-                    <artifactId>h2</artifactId>
-                  </dependency>
-                </dependencies>
-              </container>
-              <configuration>
-                <type>standalone</type>
-                <properties>
-                  <cargo.servlet.port>${cargo.servlet.port}</cargo.servlet.port>
-                  <cargo.tomcat.ajp.port>${cargo.tomcat.ajp.port}</cargo.tomcat.ajp.port>
-                  <cargo.rmi.port>${cargo.rmi.port}</cargo.rmi.port>
-
-                  <cargo.jvmargs>-XX:+CMSClassUnloadingEnabled -XX:+UseConcMarkSweepGC -XX:MaxPermSize=512m -Xmx1024m -Xms512m</cargo.jvmargs>
-                </properties>
-              </configuration>
-              <deployables>
-                <deployable>
-                  <location>${basedir}/../../../../fit/core-reference/target/syncope-fit-core-reference-${project.version}.war</location>
-                  <pingURL>http://localhost:${cargo.servlet.port}/syncope/cacheStats.jsp</pingURL>
-                  <pingTimeout>60000</pingTimeout>
-                  <properties>
-                    <context>syncope</context>
-                  </properties>
-                  <type>war</type>
-                </deployable>
-              </deployables>
-            </configuration>
-            <executions>
-              <execution>
-                <id>start-container</id>
-                <phase>pre-integration-test</phase>
-                <goals>
-                  <goal>start</goal>
-                </goals>
-              </execution>
-              <execution>
-                <id>stop-container</id>
-                <phase>post-integration-test</phase>
-                <goals>
-                  <goal>stop</goal>
-                </goals>
-              </execution>
-            </executions>
-          </plugin>
-        </plugins>
-      </build>
-    </profile>
-  </profiles>
-</project>
diff --git a/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.tests/src/main/java/org/apache/syncope/ide/eclipse/tests/SyncopeViewTest.java b/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.tests/src/main/java/org/apache/syncope/ide/eclipse/tests/SyncopeViewTest.java
deleted file mode 100644
index b4a4591..0000000
--- a/ide/eclipse/bundles/org.apache.syncope.ide.eclipse.tests/src/main/java/org/apache/syncope/ide/eclipse/tests/SyncopeViewTest.java
+++ /dev/null
@@ -1,343 +0,0 @@
-/*
- * 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.
- */
-package org.apache.syncope.ide.eclipse.tests;
-
-import static org.junit.jupiter.api.Assertions.assertNotNull;
-import static org.junit.jupiter.api.Assertions.assertTrue;
-
-import org.eclipse.swtbot.eclipse.finder.SWTWorkbenchBot;
-import org.eclipse.swtbot.eclipse.finder.widgets.SWTBotView;
-import org.eclipse.swtbot.swt.finder.SWTBot;
-import org.eclipse.swtbot.swt.finder.junit.SWTBotJunit4ClassRunner;
-import org.eclipse.swtbot.swt.finder.waits.ICondition;
-import org.eclipse.swtbot.swt.finder.widgets.SWTBotShell;
-import org.eclipse.swtbot.swt.finder.widgets.SWTBotTreeItem;
-import org.junit.BeforeClass;
-import org.junit.jupiter.api.Test;
-import org.junit.runner.RunWith;
-
-@RunWith(SWTBotJunit4ClassRunner.class)
-public class SyncopeViewTest {
-
-    private static SWTWorkbenchBot BOT;
-
-    private SWTBotView syncopeView;
-
-    private SWTBotTreeItem mTemplateItem;
-
-    private SWTBotTreeItem rTemplateItem;
-
-    private SWTBotTreeItem[] mtemplateList;
-
-    private SWTBotTreeItem[] rtemplateList;
-
-    protected static final String ADMIN_UNAME = "admin";
-
-    protected static final String ADMIN_PWD = "password";
-
-    protected static final String ADDRESS = "http://localhost:9080/syncope/rest";
-
-    @BeforeClass
-    public static void beforeClass() throws Exception {
-        BOT = new SWTWorkbenchBot();
-    }
-
-    @Test
-    public void canOpenView() throws Exception {
-        BOT.menu("Window").menu("Show View").menu("Other...").click();
-        SWTBotShell shell = BOT.shell("Show View");
-        shell.activate();
-        BOT.tree().expandNode("Apache Syncope").select("Apache Syncope Templates").click();
-        BOT.button("OK").click();
-    }
-
-    @Test
-    public void canOpenLoginDialog() throws Exception {
-        SWTBotView view = BOT.viewByTitle("Apache Syncope Templates");
-        view.getToolbarButtons().get(0).click();
-    }
-
-    @Test
-    public void canLoginAdmin() throws Exception {
-        SWTBotShell loginShell = BOT.activeShell();
-        loginShell.activate();
-        BOT.textWithLabel("Deployment Url").setText(ADDRESS);
-        BOT.textWithLabel("Username").setText(ADMIN_UNAME);
-        BOT.textWithLabel("Password").setText(ADMIN_PWD);
-        BOT.button("Login").click();
-        BOT.waitWhile(new ICondition() {
-
-            @Override
-            public boolean test() throws Exception {
-                String title = BOT.activeShell().getText();
-                return title.equals("Loading Templates");
-            }
-
-            @Override
-            public void init(final SWTBot bot) {
-            }
-
-            @Override
-            public String getFailureMessage() {
-                return "Unable to Login";
-            }
-        });
-    }
-
-    @Test
-    public void hasCorrectTemplates() throws Exception {
-        syncopeView = BOT.viewByTitle("Apache Syncope Templates");
-        mTemplateItem = syncopeView.bot().tree().expandNode("Mail Templates");
-        rTemplateItem = syncopeView.bot().tree().expandNode("Report Templates");
-
-        mtemplateList = mTemplateItem.getItems();
-        rtemplateList = rTemplateItem.getItems();
-
-        assertNotNull(mtemplateList);
-        assertNotNull(rtemplateList);
-
-        assertTrue(checkMailTemplateKeys());
-        assertTrue(checkReportTemplateKeys());
-        assertTrue(canAddMailTemplate());
-        assertTrue(canDeleteMailTemplate());
-        assertTrue(canAddReportTemplate());
-        assertTrue(canDeleteReportTemplate());
-
-        assertTrue(canOpenMailTemplateEditor());
-        assertTrue(canOpenReportTemplateEditor());
-    }
-
-    public boolean checkMailTemplateKeys() {
-        return (mtemplateList[0].getText().equals("confirmPasswordReset")
-                && mtemplateList[1].getText().equals("optin")
-                && mtemplateList[2].getText().equals("requestPasswordReset")
-                && mtemplateList[3].getText().equals("test"));
-    }
-
-    public boolean checkReportTemplateKeys() {
-        return (rtemplateList[0].getText().equals("empty") && rtemplateList[1].getText().equals("sample"));
-    }
-
-    private boolean canAddMailTemplate() {
-        SWTBotTreeItem mTemplateHead = syncopeView.bot().tree().getTreeItem("Mail Templates");
-        mTemplateHead.setFocus();
-        mTemplateHead.select().contextMenu("Add Template").click();
-        BOT.sleep(1000);
-
-        // Filling Dialog details
-        SWTBotShell addTemplateShell = BOT.activeShell();
-        addTemplateShell.activate();
-        BOT.textWithLabel("Key").setText("newMailTemplate");
-        BOT.button("Add").click();
-
-        // wait for template keys reload
-        BOT.waitWhile(new ICondition() {
-
-            @Override
-            public boolean test() throws Exception {
-                String title = BOT.activeShell().getText();
-                return title.equals("Loading Templates");
-            }
-
-            @Override
-            public void init(final SWTBot bot) {
-            }
-
-            @Override
-            public String getFailureMessage() {
-                return "Unable to Login";
-            }
-        });
-
-        // recheck available templates
-        syncopeView = BOT.viewByTitle("Apache Syncope Templates");
-        mTemplateItem = syncopeView.bot().tree().expandNode("Mail Templates");
-        mtemplateList = mTemplateItem.getItems();
-
-        return (mtemplateList.length == 5 && mtemplateList[1].getText().equals("newMailTemplate"));
-    }
-
-    private boolean canAddReportTemplate() {
-        SWTBotTreeItem rTemplateHead = syncopeView.bot().tree().getTreeItem("Report Templates");
-        rTemplateHead.setFocus();
-        rTemplateHead.select().contextMenu("Add Template").click();
-        BOT.sleep(1000);
-
-        // Filling Dialog details
-        SWTBotShell addTemplateShell = BOT.activeShell();
-        addTemplateShell.activate();
-        BOT.textWithLabel("Key").setText("newReportTemplate");
-        BOT.button("Add").click();
-
-        // wait for template keys reload
-        BOT.waitWhile(new ICondition() {
-
-            @Override
-            public boolean test() throws Exception {
-                String title = BOT.activeShell().getText();
-                return title.equals("Loading Templates");
-            }
-
-            @Override
-            public void init(final SWTBot bot) {
-            }
-
-            @Override
-            public String getFailureMessage() {
-                return "Unable to Login";
-            }
-        });
-
-        // recheck available templates
-        syncopeView = BOT.viewByTitle("Apache Syncope Templates");
-        rTemplateItem = syncopeView.bot().tree().expandNode("Report Templates");
-        rtemplateList = rTemplateItem.getItems();
-
-        return (rtemplateList.length == 3 && rtemplateList[1].getText().equals("newReportTemplate"));
-    }
-
-    private boolean canDeleteMailTemplate() {
-        SWTBotTreeItem mTemplateHead = syncopeView.bot().tree().getTreeItem("Mail Templates");
-
-        if (!mTemplateHead.isExpanded()) {
-            mTemplateHead.expand();
-        }
-
-        SWTBotTreeItem mNewTemplate = mTemplateHead.getNode("newMailTemplate");
-
-        mNewTemplate.setFocus();
-        mNewTemplate.select().contextMenu("Remove template").click();
-        BOT.sleep(1000);
-        // wait for template keys reload
-        BOT.waitWhile(new ICondition() {
-
-            @Override
-            public boolean test() throws Exception {
-                String title = BOT.activeShell().getText();
-                return title.equals("Loading Templates");
-            }
-
-            @Override
-            public void init(final SWTBot bot) {
-            }
-
-            @Override
-            public String getFailureMessage() {
-                return "Unable to Login";
-            }
-        });
-
-        // recheck available templates
-        mTemplateItem = syncopeView.bot().tree().expandNode("Mail Templates");
-        mtemplateList = mTemplateItem.getItems();
-
-        return (mtemplateList.length == 4);
-    }
-
-    private boolean canDeleteReportTemplate() {
-        SWTBotTreeItem rTemplateHead = syncopeView.bot().tree().getTreeItem("Report Templates");
-
-        if (!rTemplateHead.isExpanded()) {
-            rTemplateHead.expand();
-        }
-
-        SWTBotTreeItem rNewTemplate = rTemplateHead.getNode("newReportTemplate");
-
-        rNewTemplate.setFocus();
-        rNewTemplate.select().contextMenu("Remove template").click();
-        BOT.sleep(1000);
-        // wait for template keys reload
-        BOT.waitWhile(new ICondition() {
-
-            @Override
-            public boolean test() throws Exception {
-                String title = BOT.activeShell().getText();
-                return title.equals("Loading Templates");
-            }
-
-            @Override
-            public void init(final SWTBot bot) {
-            }
-
-            @Override
-            public String getFailureMessage() {
-                return "Unable to Login";
-            }
-        });
-
-        // recheck available templates
-        rTemplateItem = syncopeView.bot().tree().expandNode("Report Templates");
-        rtemplateList = rTemplateItem.getItems();
-
-        return (rtemplateList.length == 2);
-    }
-
-    public boolean canOpenMailTemplateEditor() {
-        final int initBotEditors = BOT.editors().size();
-        SWTBotTreeItem optin = syncopeView.bot().tree().expandNode("Mail Templates").getNode("optin");
-        optin.setFocus();
-        optin.select().contextMenu("View Template").click();
-
-        // wait for template keys reload
-        BOT.waitWhile(new ICondition() {
-
-            @Override
-            public boolean test() throws Exception {
-                return BOT.editors().size() == initBotEditors;
-            }
-
-            @Override
-            public void init(final SWTBot bot) {
-            }
-
-            @Override
-            public String getFailureMessage() {
-                return "Unable to Login";
-            }
-        });
-        return !BOT.editors().isEmpty();
-    }
-
-    public boolean canOpenReportTemplateEditor() {
-        final int initBotEditors = BOT.editors().size();
-        SWTBotTreeItem sample = syncopeView.bot().tree().expandNode("Report Templates").getNode("sample");
-        sample.setFocus();
-        sample.select().contextMenu("View Template").click();
-
-        // wait for template keys reload
-        BOT.waitWhile(new ICondition() {
-
-            @Override
-            public boolean test() throws Exception {
-                return BOT.editors().size() == initBotEditors;
-            }
-
-            @Override
-            public void init(final SWTBot bot) {
-            }
-
-            @Override
-            public String getFailureMessage() {
-                return "Unable to Login";
-            }
-        });
-        return !BOT.editors().isEmpty();
-    }
-
-}
diff --git a/ide/eclipse/pom.xml b/ide/eclipse/pom.xml
deleted file mode 100644
index 679f7ce..0000000
--- a/ide/eclipse/pom.xml
+++ /dev/null
@@ -1,134 +0,0 @@
-<?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.
--->
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
-
-  <modelVersion>4.0.0</modelVersion>
-
-  <parent>
-    <groupId>org.apache.syncope</groupId>
-    <artifactId>syncope-ide</artifactId>
-    <version>3.0.0-SNAPSHOT</version>
-  </parent>
-
-  <name>Apache Syncope IDE Eclipse</name>
-  <description>Apache Syncope IDE Eclipse</description>
-  <groupId>org.apache.syncope.ide</groupId>
-  <artifactId>syncope-ide-eclipse</artifactId>
-  <packaging>pom</packaging>
-
-  <repositories>
-    <repository>
-      <id>eclipse-mars</id>
-      <layout>p2</layout>
-      <url>http://download.eclipse.org/releases/mars/</url>
-    </repository>
-  </repositories>
-
-  <properties>
-    <rootpom.basedir>${basedir}/../..</rootpom.basedir>
-  </properties>
-
-  <modules>
-    <module>bundles/org.apache.syncope.ide.eclipse.plugin</module>
-    <module>releng/org.apache.syncope.ide.eclipse.site</module>
-  </modules>
-
-  <build>
-    <plugins>
-      <plugin>
-        <groupId>org.eclipse.tycho</groupId>
-        <artifactId>tycho-maven-plugin</artifactId>
-        <extensions>true</extensions>
-      </plugin>
-      
-      <plugin>
-        <groupId>org.eclipse.tycho</groupId>
-        <artifactId>target-platform-configuration</artifactId>
-        <configuration>
-          <environments>
-            <environment>
-              <os>linux</os>
-              <ws>gtk</ws>
-              <arch>x86</arch>
-            </environment>
-            <environment>
-              <os>linux</os>
-              <ws>gtk</ws>
-              <arch>x86_64</arch>
-            </environment>
-            <environment>
-              <os>win32</os>
-              <ws>win32</ws>
-              <arch>x86</arch>
-            </environment>
-            <environment>
-              <os>win32</os>
-              <ws>win32</ws>
-              <arch>x86_64</arch>
-            </environment>
-            <environment>
-              <os>macosx</os>
-              <ws>cocoa</ws>
-              <arch>x86_64</arch>
-            </environment>
-          </environments>
-        </configuration>
-      </plugin>
-      
-      <plugin>
-        <groupId>org.eclipse.tycho</groupId>
-        <artifactId>tycho-p2-repository-plugin</artifactId>
-      </plugin>
-    </plugins>
-  </build>
-  
-  <profiles>
-    <profile>
-      <id>eclipse-it</id>
-      <modules>
-        <module>bundles/org.apache.syncope.ide.eclipse.tests</module>
-      </modules>
-    </profile>
-
-    <profile>
-      <id>apache-release</id>
-
-      <build>
-        <plugins>
-          <plugin>
-            <groupId>org.apache.maven.plugins</groupId>
-            <artifactId>maven-deploy-plugin</artifactId>
-            <configuration>
-              <skip>true</skip>
-            </configuration>
-          </plugin>
-          <plugin>
-            <groupId>org.apache.maven.plugins</groupId>
-            <artifactId>maven-source-plugin</artifactId>
-            <inherited>false</inherited>
-            <configuration>
-              <skipSource>true</skipSource>
-            </configuration>
-          </plugin>
-        </plugins>
-      </build>
-    </profile>
-  </profiles>
-</project>
\ No newline at end of file
diff --git a/ide/eclipse/releng/org.apache.syncope.ide.eclipse.site/category.xml b/ide/eclipse/releng/org.apache.syncope.ide.eclipse.site/category.xml
deleted file mode 100644
index 7410971..0000000
--- a/ide/eclipse/releng/org.apache.syncope.ide.eclipse.site/category.xml
+++ /dev/null
@@ -1,29 +0,0 @@
-<?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.
--->
-<site>
-   <bundle id="org.apache.syncope.ide.eclipse.plugin" version="3.0.0.qualifier">
-      <category name="apachesyncope"/>
-   </bundle>
-   <category-def name="apachesyncope" label="Apache Syncope">
-      <description>
-         Eclipse Plugin for Apache Syncope : Allows user to view and edit Mail Templates and Report Templates from Eclipse itself
-      </description>
-   </category-def>
-</site>
diff --git a/ide/eclipse/releng/org.apache.syncope.ide.eclipse.site/pom.xml b/ide/eclipse/releng/org.apache.syncope.ide.eclipse.site/pom.xml
deleted file mode 100644
index 9e29078..0000000
--- a/ide/eclipse/releng/org.apache.syncope.ide.eclipse.site/pom.xml
+++ /dev/null
@@ -1,103 +0,0 @@
-<?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.
--->
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
-
-  <modelVersion>4.0.0</modelVersion>
-
-  <parent>
-    <groupId>org.apache.syncope.ide</groupId>
-    <artifactId>syncope-ide-eclipse</artifactId>
-    <version>3.0.0-SNAPSHOT</version>
-    <relativePath>../../</relativePath>
-  </parent>
-
-  <name>Apache Syncope IDE Eclipse P2 Site</name>
-  <description>Apache Syncope IDE Eclipse P2 Site</description>
-  <groupId>org.apache.syncope.ide.eclipse</groupId>
-  <artifactId>org.apache.syncope.ide.eclipse.site</artifactId>
-  <packaging>eclipse-repository</packaging>
-
-  <properties>
-    <rootpom.basedir>${basedir}/../../../..</rootpom.basedir>
-  </properties>
-
-  <build>
-    <plugins>
-      <!-- Put the correct LICENSE / NOTICE files into the distributable P2 archive -->
-      <plugin>
-        <groupId>org.apache.maven.plugins</groupId>
-        <artifactId>maven-resources-plugin</artifactId>
-        <executions>
-          <execution>
-            <id>default-resources</id>
-            <configuration>
-              <skip>true</skip>
-            </configuration>
-          </execution>
-          <execution>
-            <id>copy-artifact-legal-files</id>
-            <phase>process-resources</phase>
-            <goals>
-              <goal>copy-resources</goal>
-            </goals>
-            <configuration>
-              <outputDirectory>${project.build.directory}/repository/META-INF</outputDirectory>
-              <resources>
-                <resource>
-                  <directory>${basedir}/../../</directory>
-                  <includes>
-                    <include>LICENSE</include>
-                    <include>NOTICE</include>
-                  </includes>
-                </resource>
-              </resources>
-            </configuration>
-          </execution>
-        </executions>
-      </plugin>
-    </plugins>
-  </build>
-
-  <profiles>
-    <profile>
-      <id>apache-release</id>
-
-      <build>
-        <plugins>
-          <plugin>
-            <groupId>org.apache.maven.plugins</groupId>
-            <artifactId>maven-deploy-plugin</artifactId>
-            <configuration>
-              <skip>true</skip>
-            </configuration>
-          </plugin>
-          <plugin>
-            <groupId>org.apache.maven.plugins</groupId>
-            <artifactId>maven-source-plugin</artifactId>
-            <inherited>false</inherited>
-            <configuration>
-              <skipSource>true</skipSource>
-            </configuration>
-          </plugin>
-        </plugins>
-      </build>
-    </profile>
-  </profiles>
-</project>
diff --git a/ide/pom.xml b/ide/pom.xml
index 04e09a2..0bce134 100644
--- a/ide/pom.xml
+++ b/ide/pom.xml
@@ -37,31 +37,6 @@ under the License.
 
   <profiles>
     <profile>
-      <id>without-eclipse</id>
-
-      <activation>
-	<activeByDefault>false</activeByDefault>
-      </activation>
-
-      <modules>
-	<module>netbeans</module>
-      </modules>
-    </profile>
-
-    <profile>
-      <id>with-eclipse</id>
-
-      <activation>
-	<activeByDefault>true</activeByDefault>
-      </activation>
-
-      <modules>
-	<module>eclipse</module>
-	<module>netbeans</module>
-      </modules>
-    </profile>
-
-    <profile>
       <id>site</id>
 
       <build>
@@ -124,7 +99,6 @@ under the License.
       </build>
 
       <modules>
-	<module>eclipse</module>
 	<module>netbeans</module>
       </modules>
     </profile>
diff --git a/pom.xml b/pom.xml
index ee32e81..4de16a1 100644
--- a/pom.xml
+++ b/pom.xml
@@ -483,7 +483,6 @@ under the License.
     
     <ianal-maven-plugin-version>1.0-alpha-1</ianal-maven-plugin-version>
 
-    <tycho.version>1.3.0</tycho.version>
     <netbeans.version>RELEASE82</netbeans.version>
 
     <antlr4.version>4.7.2</antlr4.version>
@@ -1953,28 +1952,6 @@ under the License.
         </plugin>
               
         <plugin>
-          <groupId>org.eclipse.tycho</groupId>
-          <artifactId>tycho-maven-plugin</artifactId>
-          <version>${tycho.version}</version>
-          <extensions>true</extensions>
-        </plugin>
-        <plugin>
-          <groupId>org.eclipse.tycho</groupId>
-          <artifactId>target-platform-configuration</artifactId>
-          <version>${tycho.version}</version>
-        </plugin>
-        <plugin>
-          <groupId>org.eclipse.tycho</groupId>
-          <artifactId>tycho-p2-repository-plugin</artifactId>
-          <version>${tycho.version}</version>
-        </plugin>   
-        <plugin>
-          <groupId>org.eclipse.tycho</groupId>
-          <artifactId>tycho-surefire-plugin</artifactId>
-          <version>${tycho.version}</version>
-        </plugin>        
-
-        <plugin>
           <groupId>org.codehaus.mojo</groupId>
           <artifactId>nbm-maven-plugin</artifactId>
           <version>4.1</version>
@@ -2308,31 +2285,6 @@ under the License.
         <plugins>
           <plugin>
             <groupId>org.apache.maven.plugins</groupId>
-            <artifactId>maven-assembly-plugin</artifactId>
-            <executions>
-              <execution>
-                <id>source-release-assembly</id>
-                <phase>none</phase>
-              </execution>
-              <execution>
-                <id>source-release-assembly-no-eclipse-libs</id>
-                <phase>package</phase>
-                <goals>
-                  <goal>single</goal>
-                </goals>
-                <configuration>
-                  <runOnlyAtExecutionRoot>true</runOnlyAtExecutionRoot>
-                  <descriptors>
-                    <descriptor>src/assemble/${sourceReleaseAssemblyDescriptor}.xml</descriptor>
-                  </descriptors>
-                  <tarLongFileMode>gnu</tarLongFileMode>
-                </configuration>
-              </execution>
-            </executions>
-          </plugin>
-
-          <plugin>
-            <groupId>org.apache.maven.plugins</groupId>
             <artifactId>maven-deploy-plugin</artifactId>
             <version>2.8.2</version>
           </plugin>
diff --git a/src/assemble/source-release.xml b/src/assemble/source-release.xml
deleted file mode 100644
index e24992a..0000000
--- a/src/assemble/source-release.xml
+++ /dev/null
@@ -1,111 +0,0 @@
-<?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.
--->
-<assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.2"
-          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-          xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.2 
-                              http://maven.apache.org/xsd/assembly-1.1.2.xsd">
-  <id>source-release</id>
-  <formats>
-    <format>zip</format>
-  </formats>
-  <fileSets>
-    <!--  main project directory structure  -->
-    <fileSet>
-      <directory>.</directory>
-      <outputDirectory/>
-      <useDefaultExcludes>true</useDefaultExcludes>
-      <excludes>
-        <!--  build output  -->
-        <exclude>
-          %regex[(?!((?!${project.build.directory}/)[^/]+/)*src/).*${project.build.directory}.*]
-        </exclude>
-	    <!--
-            NOTE: Most of the following excludes should not be required 
-            if the standard release process is followed. This is because the 
-            release plugin checks out project sources into a location like
-            target/checkout, then runs the build from there. The result is
-            a source-release archive that comes from a pretty clean directory
-            structure.
-            
-            HOWEVER, if the release plugin is configured to run extra goals
-            or generate a project website, it's definitely possible that some
-            of these files will be present. So, it's safer to exclude them.
-            
-        -->
-        <!--  IDEs  -->
-        <exclude>
-          %regex[(?!((?!${project.build.directory}/)[^/]+/)*src/)(.*/)?maven-eclipse\.xml]
-        </exclude>
-        <exclude>
-          %regex[(?!((?!${project.build.directory}/)[^/]+/)*src/)(.*/)?\.project]
-        </exclude>
-        <exclude>
-          %regex[(?!((?!${project.build.directory}/)[^/]+/)*src/)(.*/)?\.classpath]
-        </exclude>
-        <exclude>
-          %regex[(?!((?!${project.build.directory}/)[^/]+/)*src/)(.*/)?[^/]*\.iws]
-        </exclude>
-        <exclude>
-          %regex[(?!((?!${project.build.directory}/)[^/]+/)*src/)(.*/)?\.idea(/.*)?]
-        </exclude>
-        <exclude>
-          %regex[(?!((?!${project.build.directory}/)[^/]+/)*src/)(.*/)?out(/.*)?]
-        </exclude>
-        <exclude>
-          %regex[(?!((?!${project.build.directory}/)[^/]+/)*src/)(.*/)?[^/]*\.ipr]
-        </exclude>
-        <exclude>
-          %regex[(?!((?!${project.build.directory}/)[^/]+/)*src/)(.*/)?[^/]*\.iml]
-        </exclude>
-        <exclude>
-          %regex[(?!((?!${project.build.directory}/)[^/]+/)*src/)(.*/)?\.settings(/.*)?]
-        </exclude>
-        <exclude>
-          %regex[(?!((?!${project.build.directory}/)[^/]+/)*src/)(.*/)?\.externalToolBuilders(/.*)?]
-        </exclude>
-        <exclude>
-          %regex[(?!((?!${project.build.directory}/)[^/]+/)*src/)(.*/)?\.deployables(/.*)?]
-        </exclude>
-        <exclude>
-          %regex[(?!((?!${project.build.directory}/)[^/]+/)*src/)(.*/)?\.wtpmodules(/.*)?]
-        </exclude>
-        <!--  misc  -->
-        <exclude>
-          %regex[(?!((?!${project.build.directory}/)[^/]+/)*src/)(.*/)?cobertura\.ser]
-        </exclude>
-        <!--  release-plugin temp files  -->
-        <exclude>
-          %regex[(?!((?!${project.build.directory}/)[^/]+/)*src/)(.*/)?pom\.xml\.releaseBackup]
-        </exclude>
-        <exclude>
-          %regex[(?!((?!${project.build.directory}/)[^/]+/)*src/)(.*/)?release\.properties]
-        </exclude>
-        <!--  Eclipse IDE plugin lib  -->
-        <exclude>
-          ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/lib/**
-        </exclude>        
-        <exclude>
-          ide/eclipse/bundles/org.apache.syncope.ide.eclipse.plugin/bin/**
-        </exclude>        
-      </excludes>
-    </fileSet>
-  </fileSets>
-</assembly>
-
diff --git a/src/main/asciidoc/getting-started/obtain.adoc b/src/main/asciidoc/getting-started/obtain.adoc
index e1445c2..a7504df 100644
--- a/src/main/asciidoc/getting-started/obtain.adoc
+++ b/src/main/asciidoc/getting-started/obtain.adoc
@@ -616,70 +616,6 @@ You can configure any LDAP client (such as http://jxplorer.org/[JXplorer^], for
 
 |===
 
-=== Eclipse IDE Plugin
-
-The Eclipse IDE plugin allows remote management of notification e-mail and report templates.
-
-[[eclipseplugin-installation]]
-==== Installation
-
-After https://syncope.apache.org/downloads[download^], start the most recent Eclipse IDE distribution then go to 
-`Help > Install New Software`:
-
-image::eclipse01.png[eclipse01]
-
-Click on `Add`:
-
-image::eclipse02.png[eclipse02]
-
-Click on `Local` then `Archive` and find the downloaded zip file:
-
-image::eclipse03.png[eclipse03]
-
-image::eclipse04.png[eclipse04]
-
-image::eclipse05.png[eclipse05]
-
-Select `Apache Syncope` and click on `Next`:
-
-image::eclipse06.png[eclipse06]
-
-Click on `Finish` and wait for installation to complete:
-
-image::eclipse07.png[eclipse07]
-
-image::eclipse08.png[eclipse08]
-
-image::eclipse09.png[eclipse09]
-
-==== Setup
-
-After Eclipse IDE restart, go to `Window` > `Show View` > `Other`
-
-image::eclipse10.png[eclipse10]
-
-Select `Apache Syncope Templates`:
-
-image::eclipse11.png[eclipse11]
-
-In the new view, click on `Login`:
-
-image::eclipse12.png[eclipse12]
-
-Provide the base URL for Apache Syncope deployment, username and password:
-
-image::eclipse13.png[eclipse13]
-
-If the information above is correct, two folders should now appear:
-
-image::eclipse14.png[eclipse14]
-
-By double-clicking on each folder, the list of available templates is shown:
-
-image::eclipse15.png[eclipse15]
-
-Each template is now ready for authoring or removal; new templates can also be created.
-
 === Netbeans IDE Plugin
 
 The Netbeans IDE plugin allows remote management of notification e-mail and report templates, and remote editing
diff --git a/src/main/asciidoc/images/eclipse01.png b/src/main/asciidoc/images/eclipse01.png
deleted file mode 100644
index 0fb85a6..0000000
Binary files a/src/main/asciidoc/images/eclipse01.png and /dev/null differ
diff --git a/src/main/asciidoc/images/eclipse02.png b/src/main/asciidoc/images/eclipse02.png
deleted file mode 100644
index 708c9a5..0000000
Binary files a/src/main/asciidoc/images/eclipse02.png and /dev/null differ
diff --git a/src/main/asciidoc/images/eclipse03.png b/src/main/asciidoc/images/eclipse03.png
deleted file mode 100644
index 39d78a5..0000000
Binary files a/src/main/asciidoc/images/eclipse03.png and /dev/null differ
diff --git a/src/main/asciidoc/images/eclipse04.png b/src/main/asciidoc/images/eclipse04.png
deleted file mode 100644
index 1a09a6d..0000000
Binary files a/src/main/asciidoc/images/eclipse04.png and /dev/null differ
diff --git a/src/main/asciidoc/images/eclipse05.png b/src/main/asciidoc/images/eclipse05.png
deleted file mode 100644
index cb5c0b2..0000000
Binary files a/src/main/asciidoc/images/eclipse05.png and /dev/null differ
diff --git a/src/main/asciidoc/images/eclipse06.png b/src/main/asciidoc/images/eclipse06.png
deleted file mode 100644
index 8d0fdf6..0000000
Binary files a/src/main/asciidoc/images/eclipse06.png and /dev/null differ
diff --git a/src/main/asciidoc/images/eclipse07.png b/src/main/asciidoc/images/eclipse07.png
deleted file mode 100644
index fa8f265..0000000
Binary files a/src/main/asciidoc/images/eclipse07.png and /dev/null differ
diff --git a/src/main/asciidoc/images/eclipse08.png b/src/main/asciidoc/images/eclipse08.png
deleted file mode 100644
index 7018c58..0000000
Binary files a/src/main/asciidoc/images/eclipse08.png and /dev/null differ
diff --git a/src/main/asciidoc/images/eclipse09.png b/src/main/asciidoc/images/eclipse09.png
deleted file mode 100644
index 5002915..0000000
Binary files a/src/main/asciidoc/images/eclipse09.png and /dev/null differ
diff --git a/src/main/asciidoc/images/eclipse10.png b/src/main/asciidoc/images/eclipse10.png
deleted file mode 100644
index 2d29368..0000000
Binary files a/src/main/asciidoc/images/eclipse10.png and /dev/null differ
diff --git a/src/main/asciidoc/images/eclipse11.png b/src/main/asciidoc/images/eclipse11.png
deleted file mode 100644
index d5d95b2..0000000
Binary files a/src/main/asciidoc/images/eclipse11.png and /dev/null differ
diff --git a/src/main/asciidoc/images/eclipse12.png b/src/main/asciidoc/images/eclipse12.png
deleted file mode 100644
index 7e30bf8..0000000
Binary files a/src/main/asciidoc/images/eclipse12.png and /dev/null differ
diff --git a/src/main/asciidoc/images/eclipse13.png b/src/main/asciidoc/images/eclipse13.png
deleted file mode 100644
index 45502f3..0000000
Binary files a/src/main/asciidoc/images/eclipse13.png and /dev/null differ
diff --git a/src/main/asciidoc/images/eclipse14.png b/src/main/asciidoc/images/eclipse14.png
deleted file mode 100644
index 8f5f5f8..0000000
Binary files a/src/main/asciidoc/images/eclipse14.png and /dev/null differ
diff --git a/src/main/asciidoc/images/eclipse15.png b/src/main/asciidoc/images/eclipse15.png
deleted file mode 100644
index 044e78b..0000000
Binary files a/src/main/asciidoc/images/eclipse15.png and /dev/null differ
diff --git a/src/main/asciidoc/reference-guide/architecture/architecture.adoc b/src/main/asciidoc/reference-guide/architecture/architecture.adoc
index 600a5a4..e51da37 100644
--- a/src/main/asciidoc/reference-guide/architecture/architecture.adoc
+++ b/src/main/asciidoc/reference-guide/architecture/architecture.adoc
@@ -148,12 +148,6 @@ To reset to the default mode, it is enough to click again on the specific icon.
 Third-party applications are provided full access to IdM services by leveraging the REST interface, either via the 
 Java <<client-library,Client Library>> (the basis of Admin UI and End-user UI) or plain HTTP calls.
 
-==== Eclipse IDE Plugin
-
-The Eclipse IDE plugin allows remote management of <<notification-templates,notification e-mail>> and
-<<report-templates,report>> templates, and constitutes an example of a Java application relying on the Client Library
-for interacting with the Core via REST.
-
 ==== Netbeans IDE Plugin
 
 The Netbeans IDE plugin allows remote management of <<notification-templates,notification e-mail>> and
diff --git a/src/main/asciidoc/reference-guide/concepts/notifications.adoc b/src/main/asciidoc/reference-guide/concepts/notifications.adoc
index 71ac025..65350a6 100644
--- a/src/main/asciidoc/reference-guide/concepts/notifications.adoc
+++ b/src/main/asciidoc/reference-guide/concepts/notifications.adoc
@@ -106,8 +106,8 @@ to be used respectively for plaintext and HTML e-mails, and is available for sel
 
 [NOTE]
 ====
-Notification templates can be easily managed either via the <<console-configuration-notifications,admin console>>,
-the <<eclipse-ide-plugin>> or the <<netbeans-ide-plugin>>.
+Notification templates can be easily managed either via the <<console-configuration-notifications,admin console>>
+or the <<netbeans-ide-plugin>>.
 ====
 
 The full power of JEXL expressions - see http://commons.apache.org/proper/commons-jexl/reference/syntax.html[reference^]
diff --git a/src/main/asciidoc/reference-guide/concepts/reports.adoc b/src/main/asciidoc/reference-guide/concepts/reports.adoc
index 474e696..1e18526 100644
--- a/src/main/asciidoc/reference-guide/concepts/reports.adoc
+++ b/src/main/asciidoc/reference-guide/concepts/reports.adoc
@@ -45,8 +45,7 @@ will be then made available as PDF and RTF
 
 [NOTE]
 ====
-Report templates can be easily managed either via the <<console-reports,admin console>>, the <<eclipse-ide-plugin>> or
-the <<netbeans-ide-plugin>>.
+Report templates can be easily managed either via the <<console-reports,admin console>> or the <<netbeans-ide-plugin>>.
 ====
 
 ==== Reportlets