From c15cc500b3ac107d0ff45aafae1f31f0367837bb Mon Sep 17 00:00:00 2001
From: jnaud <j.naud@alkante.com>
Date: Tue, 22 Oct 2019 10:44:21 +0200
Subject: [PATCH] init

---
 README.txt                                    |    6 +
 config-overrides.properties.dev               |   23 +
 config-overrides.properties.prod              |   23 +
 generate_overlay.sh                           |  155 +
 initialize.sql                                |    3 +
 maven/maven-wrapper.jar                       |  Bin 0 -> 71910 bytes
 maven/maven-wrapper.properties                |    3 +
 mvnw                                          |  234 ++
 mvnw.bat                                      |  174 +
 pom.xml                                       |   21 +
 .../sql/migrate/v304/migrate-default.sql      |    3 +
 .../sql/migrate/v330/migrate-default.sql      |   64 +
 .../sql/migrate/v340/migrate-default.sql      |   10 +
 .../webapp/WEB-INF/config-db/jdbc.properties  |   45 +
 src/main/webapp/WEB-INF/config-gui.xml        |  315 ++
 src/main/webapp/WEB-INF/config-lucene.xml     |  373 ++
 src/main/webapp/WEB-INF/config-node/srv.xml   |   48 +
 .../webapp/WEB-INF/config-overrides-prod.xml  |   43 +
 .../WEB-INF/config-overrides.properties       |   15 +
 .../config-security-cas-database.xml          |   31 +
 .../config-security-cas-ldap.xml              |   45 +
 .../config-security/config-security-cas.xml   |  165 +
 .../config-security/config-security-core.xml  |  382 ++
 .../config-security/config-security-ldap.xml  |  271 ++
 .../config-security-overrides.properties      |   46 +
 .../config-security.properties                |  119 +
 .../config-security/config-security.xml       |   44 +
 .../WEB-INF/config-spring-geonetwork.xml      |  197 +
 src/main/webapp/WEB-INF/config-summary.xml    |  270 ++
 src/main/webapp/WEB-INF/config.xml            |  311 ++
 .../theme/inspire-service-taxonomy.rdf        | 1912 +++++++++
 .../external/thesauri/theme/inspire-theme.rdf | 1614 ++++++++
 .../convert/thesaurus-transformation.xsl      |  323 ++
 .../iso19139/index-fields/default.xsl         | 1103 +++++
 .../layout/layout-custom-fields-keywords.xsl  |  307 ++
 .../iso19139/loc/fre/codelists.xml            | 2127 ++++++++++
 .../schematron-rules-geonetwork.sch           |   71 +
 .../schematron-rules-geonetwork.xsl           |  303 ++
 .../schematron/schematron-rules-inspire.sch   |  736 ++++
 .../schematron/schematron-rules-inspire.xsl   | 2253 ++++++++++
 .../schematron/schematron-rules-iso.sch       |  568 +++
 .../schematron/schematron-rules-iso.xsl       | 2144 ++++++++++
 .../formatter/groovy/common/Functions.groovy  |   69 +
 .../formatter/groovy/common/Handlers.groovy   |  270 ++
 .../formatter/groovy/common/Matchers.groovy   |   11 +
 .../hierarchy_view/config.properties          |    1 +
 .../data/formatter/hierarchy_view/view.groovy |    3 +
 .../data/formatter/html/2-level-entry.html    |   15 +
 .../data/data/formatter/html/associated.html  |   54 +
 .../data/data/formatter/html/bbox.html        |   36 +
 .../data/data/formatter/html/links.html       |    4 +
 .../data/data/formatter/html/list-entry.html  |    7 +
 .../data/data/formatter/html/single-link.html |   31 +
 .../data/data/formatter/html/text-el.html     |    4 +
 .../data/data/formatter/html/url-el.html      |    4 +
 .../data/data/formatter/html/view-header.html |   83 +
 .../data/data/formatter/html/wikitext-el.html |    4 +
 .../formatter/xml_view/highlight-json-xml.js  |    1 +
 .../data/formatter/xml_view/highlightjs.css   |  153 +
 .../data/data/formatter/xml_view/view.groovy  |   19 +
 .../data/formatter/xslt/render-functions.xsl  |  139 +
 .../formatter/xslt/render-layout-fields.xsl   |   27 +
 .../data/formatter/xslt/render-layout.xsl     |  408 ++
 .../data/formatter/xslt/render-variables.xsl  |   69 +
 src/main/webapp/apps_extend/actions.js        | 3643 +++++++++++++++++
 src/main/webapp/apps_extend/admin.js          |  941 +++++
 .../apps_extend/administration_carto.js       | 1434 +++++++
 .../css/bootstrap-submenu.css                 |  126 +
 .../css/bootstrap-submenu.css.map             |    1 +
 .../css/bootstrap-submenu.min.css             |    7 +
 .../js/bootstrap-submenu.js                   |  195 +
 .../js/bootstrap-submenu.min.js               |    7 +
 .../webapp/apps_extend/css/apps_extend.css    |  119 +
 .../webapp/apps_extend/images/FitAll_OFF.gif  |  Bin 0 -> 1122 bytes
 .../webapp/apps_extend/images/FitAll_ON.gif   |  Bin 0 -> 1107 bytes
 .../webapp/apps_extend/images/Infos_OFF.gif   |  Bin 0 -> 1032 bytes
 .../webapp/apps_extend/images/Infos_ON.gif    |  Bin 0 -> 1028 bytes
 .../webapp/apps_extend/images/Marianne.jpg    |  Bin 0 -> 23771 bytes
 .../webapp/apps_extend/images/Mesure_OFF.gif  |  Bin 0 -> 961 bytes
 .../webapp/apps_extend/images/Mesure_ON.gif   |  Bin 0 -> 947 bytes
 .../webapp/apps_extend/images/Minimiser.gif   |  Bin 0 -> 106 bytes
 src/main/webapp/apps_extend/images/Oeil.gif   |  Bin 0 -> 89 bytes
 src/main/webapp/apps_extend/images/PRRA.gif   |  Bin 0 -> 2563 bytes
 .../webapp/apps_extend/images/Pan_Est_OFF.gif |  Bin 0 -> 836 bytes
 .../webapp/apps_extend/images/Pan_Est_ON.gif  |  Bin 0 -> 836 bytes
 .../apps_extend/images/Pan_NordEst_OFF.gif    |  Bin 0 -> 834 bytes
 .../apps_extend/images/Pan_NordEst_ON.gif     |  Bin 0 -> 834 bytes
 .../apps_extend/images/Pan_NordOuest_OFF.gif  |  Bin 0 -> 837 bytes
 .../apps_extend/images/Pan_NordOuest_ON.gif   |  Bin 0 -> 837 bytes
 .../apps_extend/images/Pan_Nord_OFF.gif       |  Bin 0 -> 834 bytes
 .../webapp/apps_extend/images/Pan_Nord_ON.gif |  Bin 0 -> 834 bytes
 .../webapp/apps_extend/images/Pan_OFF.gif     |  Bin 0 -> 995 bytes
 src/main/webapp/apps_extend/images/Pan_ON.gif |  Bin 0 -> 987 bytes
 .../apps_extend/images/Pan_Ouest_OFF.gif      |  Bin 0 -> 837 bytes
 .../apps_extend/images/Pan_Ouest_ON.gif       |  Bin 0 -> 837 bytes
 .../apps_extend/images/Pan_SudEst_OFF.gif     |  Bin 0 -> 837 bytes
 .../apps_extend/images/Pan_SudEst_ON.gif      |  Bin 0 -> 837 bytes
 .../apps_extend/images/Pan_SudOuest_OFF.gif   |  Bin 0 -> 837 bytes
 .../apps_extend/images/Pan_SudOuest_ON.gif    |  Bin 0 -> 837 bytes
 .../webapp/apps_extend/images/Pan_Sud_OFF.gif |  Bin 0 -> 834 bytes
 .../webapp/apps_extend/images/Pan_Sud_ON.gif  |  Bin 0 -> 834 bytes
 .../webapp/apps_extend/images/ZoomIn_OFF.gif  |  Bin 0 -> 1150 bytes
 .../webapp/apps_extend/images/ZoomIn_ON.gif   |  Bin 0 -> 1156 bytes
 .../webapp/apps_extend/images/ZoomOut_OFF.gif |  Bin 0 -> 1147 bytes
 .../webapp/apps_extend/images/ZoomOut_ON.gif  |  Bin 0 -> 1152 bytes
 src/main/webapp/apps_extend/images/add.png    |  Bin 0 -> 733 bytes
 .../webapp/apps_extend/images/ancre_bas.gif   |  Bin 0 -> 850 bytes
 .../webapp/apps_extend/images/ancre_droit.gif |  Bin 0 -> 862 bytes
 .../webapp/apps_extend/images/bandeau.png     |  Bin 0 -> 253 bytes
 .../images/bandeaux/bandeau_bleu.png          |  Bin 0 -> 211 bytes
 .../images/bandeaux/bandeau_gris.png          |  Bin 0 -> 801 bytes
 .../images/bandeaux/bandeau_marron.png        |  Bin 0 -> 908 bytes
 .../images/bandeaux/bandeau_orange.png        |  Bin 0 -> 887 bytes
 .../images/bandeaux/bandeau_rouge.png         |  Bin 0 -> 882 bytes
 .../images/bandeaux/bandeau_vert.png          |  Bin 0 -> 850 bytes
 .../images/bandeaux/bandeau_violet.png        |  Bin 0 -> 877 bytes
 src/main/webapp/apps_extend/images/barre.gif  |  Bin 0 -> 488 bytes
 src/main/webapp/apps_extend/images/basket.gif |  Bin 0 -> 133 bytes
 .../webapp/apps_extend/images/boulerouge.gif  |  Bin 0 -> 102 bytes
 .../webapp/apps_extend/images/carte16.png     |  Bin 0 -> 1087 bytes
 .../webapp/apps_extend/images/carte32.png     |  Bin 0 -> 1771 bytes
 .../webapp/apps_extend/images/checked.gif     |  Bin 0 -> 959 bytes
 .../webapp/apps_extend/images/contact.png     |  Bin 0 -> 437 bytes
 .../apps_extend/images/corbeille 16.gif       |  Bin 0 -> 949 bytes
 .../apps_extend/images/croix rouge 12.gif     |  Bin 0 -> 916 bytes
 .../webapp/apps_extend/images/croix rouge.gif |  Bin 0 -> 337 bytes
 .../webapp/apps_extend/images/data_hide.gif   |  Bin 0 -> 339 bytes
 .../webapp/apps_extend/images/data_show.gif   |  Bin 0 -> 319 bytes
 .../webapp/apps_extend/images/domaines.gif    |  Bin 0 -> 956 bytes
 .../webapp/apps_extend/images/download.gif    |  Bin 0 -> 151 bytes
 .../apps_extend/images/fleche_jaune.gif       |  Bin 0 -> 875 bytes
 .../webapp/apps_extend/images/fondPRRA.jpg    |  Bin 0 -> 37705 bytes
 .../webapp/apps_extend/images/fondPRRA2.jpg   |  Bin 0 -> 113872 bytes
 .../webapp/apps_extend/images/graphique16.png |  Bin 0 -> 1007 bytes
 .../webapp/apps_extend/images/iconevideo.jpeg |  Bin 0 -> 630 bytes
 .../webapp/apps_extend/images/imagesPDF.jpeg  |  Bin 0 -> 698 bytes
 src/main/webapp/apps_extend/images/lbleu.gif  |  Bin 0 -> 879 bytes
 .../webapp/apps_extend/images/legende.png     |  Bin 0 -> 145 bytes
 .../apps_extend/images/legende_carte.gif      |  Bin 0 -> 46 bytes
 .../apps_extend/images/legende_dataset.gif    |  Bin 0 -> 46 bytes
 .../apps_extend/images/legende_donnee.gif     |  Bin 0 -> 46 bytes
 .../apps_extend/images/legende_service.gif    |  Bin 0 -> 46 bytes
 src/main/webapp/apps_extend/images/lgris.png  |  Bin 0 -> 245 bytes
 .../webapp/apps_extend/images/loading.gif     |  Bin 0 -> 771 bytes
 .../images/logos/Logo_Prodige_V0.jpg          |  Bin 0 -> 77205 bytes
 .../apps_extend/images/logos/Marianne.jpg     |  Bin 0 -> 23771 bytes
 src/main/webapp/apps_extend/images/lrouge.gif |  Bin 0 -> 492 bytes
 src/main/webapp/apps_extend/images/lrouge.png |  Bin 0 -> 268 bytes
 src/main/webapp/apps_extend/images/moins.GIF  |  Bin 0 -> 838 bytes
 src/main/webapp/apps_extend/images/ombre.gif  |  Bin 0 -> 859 bytes
 .../webapp/apps_extend/images/ombre_h.gif     |  Bin 0 -> 846 bytes
 .../webapp/apps_extend/images/outils16.png    |  Bin 0 -> 3689 bytes
 src/main/webapp/apps_extend/images/plus.gif   |  Bin 0 -> 65 bytes
 .../apps_extend/images/puce_h2-trans.png      |  Bin 0 -> 704 bytes
 .../webapp/apps_extend/images/puce_h3.gif     |  Bin 0 -> 51 bytes
 src/main/webapp/apps_extend/images/remove.gif |  Bin 0 -> 949 bytes
 src/main/webapp/apps_extend/images/remove.png |  Bin 0 -> 715 bytes
 src/main/webapp/apps_extend/images/rss.gif    |  Bin 0 -> 579 bytes
 src/main/webapp/apps_extend/images/rss32.png  |  Bin 0 -> 2839 bytes
 .../webapp/apps_extend/images/rss_over.gif    |  Bin 0 -> 599 bytes
 src/main/webapp/apps_extend/images/s.gif      |  Bin 0 -> 43 bytes
 .../apps_extend/images/tab-close-on.gif       |  Bin 0 -> 880 bytes
 .../apps_extend/images/tableau-bord.png       |  Bin 0 -> 1010 bytes
 .../apps_extend/images/tableau-bord16.png     |  Bin 0 -> 3563 bytes
 .../apps_extend/images/tableau-bord2.png      |  Bin 0 -> 1087 bytes
 .../apps_extend/images/tableau-bord232.png    |  Bin 0 -> 1771 bytes
 .../apps_extend/images/tableau-bord32.png     |  Bin 0 -> 4904 bytes
 .../webapp/apps_extend/images/tarte16.png     |  Bin 0 -> 1034 bytes
 .../webapp/apps_extend/images/unchecked.gif   |  Bin 0 -> 941 bytes
 src/main/webapp/apps_extend/images/volet.png  |  Bin 0 -> 229 bytes
 .../apps_extend/images/volets/volet_bleu.png  |  Bin 0 -> 1105 bytes
 .../apps_extend/images/volets/volet_gris.png  |  Bin 0 -> 1081 bytes
 .../images/volets/volet_marron.png            |  Bin 0 -> 1011 bytes
 .../images/volets/volet_orange.png            |  Bin 0 -> 1089 bytes
 .../apps_extend/images/volets/volet_rouge.png |  Bin 0 -> 1075 bytes
 .../apps_extend/images/volets/volet_vert.png  |  Bin 0 -> 1104 bytes
 .../images/volets/volet_violet.png            |  Bin 0 -> 1106 bytes
 .../webapp/apps_extend/images/waiting.gif     |  Bin 0 -> 25224 bytes
 .../webapp/apps_extend/locales/fr-extend.json |    3 +
 src/main/webapp/apps_extend/panier.js         |  683 +++
 .../apps_extend/search/css/App-extend.css     |   49 +
 .../webapp/apps_extend/search/home_en.html    |    9 +
 .../webapp/apps_extend/search/home_fr.html    |    9 +
 .../webapp/apps_extend/search/home_fre.html   |    9 +
 .../apps_extend/templates/contact-admin.html  |  120 +
 .../webapp/apps_extend/templates/editor.html  |   82 +
 .../apps_extend/templates/ext-messages.html   |   22 +
 .../templates/harvested-synchronization.html  |   42 +
 .../apps_extend/templates/help-modal.html     |   27 +
 .../templates/metadata-actions.html           |   27 +
 .../apps_extend/templates/metadata-cart.html  |   36 +
 .../apps_extend/templates/top-toolbar.html    |   53 +
 src/main/webapp/apps_extend/util.js           |  152 +
 .../cookieWarning/partials/cookieWarning.html |   16 +
 src/main/webapp/catalog/js/jscompatibility.js |   14 +
 .../catalog/lib/jquery.ext/jquery.cookie.js   |  117 +
 .../webapp/catalog/locales/fr-alk-extend.json |    5 +
 src/main/webapp/catalog/style/gn_viewer.less  |  694 ++++
 src/main/webapp/catalog/style/inspire/iti.css |  776 ++++
 .../webapp/catalog/templates/admin/admin.html |   38 +
 .../webapp/catalog/templates/top-toolbar.html |  156 +
 .../directives/partials/mdactionmenu.html     |  121 +
 .../views/default/templates/results.html      |  117 +
 src/main/webapp/images/logos/favicon.ico      |  Bin 0 -> 14942 bytes
 src/main/webapp/xslt/base-layout.xsl          |  131 +
 .../xslt/extend/base-layout-cssjs-loader.xsl  |   36 +
 .../webapp/xslt/extend/base-variables.xsl     |  100 +
 207 files changed, 28429 insertions(+)
 create mode 100644 README.txt
 create mode 100644 config-overrides.properties.dev
 create mode 100644 config-overrides.properties.prod
 create mode 100644 generate_overlay.sh
 create mode 100644 initialize.sql
 create mode 100644 maven/maven-wrapper.jar
 create mode 100644 maven/maven-wrapper.properties
 create mode 100755 mvnw
 create mode 100755 mvnw.bat
 create mode 100755 pom.xml
 create mode 100644 src/main/webapp/WEB-INF/classes/setup/sql/migrate/v304/migrate-default.sql
 create mode 100644 src/main/webapp/WEB-INF/classes/setup/sql/migrate/v330/migrate-default.sql
 create mode 100644 src/main/webapp/WEB-INF/classes/setup/sql/migrate/v340/migrate-default.sql
 create mode 100644 src/main/webapp/WEB-INF/config-db/jdbc.properties
 create mode 100644 src/main/webapp/WEB-INF/config-gui.xml
 create mode 100644 src/main/webapp/WEB-INF/config-lucene.xml
 create mode 100644 src/main/webapp/WEB-INF/config-node/srv.xml
 create mode 100644 src/main/webapp/WEB-INF/config-overrides-prod.xml
 create mode 100644 src/main/webapp/WEB-INF/config-overrides.properties
 create mode 100644 src/main/webapp/WEB-INF/config-security/config-security-cas-database.xml
 create mode 100644 src/main/webapp/WEB-INF/config-security/config-security-cas-ldap.xml
 create mode 100644 src/main/webapp/WEB-INF/config-security/config-security-cas.xml
 create mode 100644 src/main/webapp/WEB-INF/config-security/config-security-core.xml
 create mode 100644 src/main/webapp/WEB-INF/config-security/config-security-ldap.xml
 create mode 100644 src/main/webapp/WEB-INF/config-security/config-security-overrides.properties
 create mode 100644 src/main/webapp/WEB-INF/config-security/config-security.properties
 create mode 100644 src/main/webapp/WEB-INF/config-security/config-security.xml
 create mode 100644 src/main/webapp/WEB-INF/config-spring-geonetwork.xml
 create mode 100644 src/main/webapp/WEB-INF/config-summary.xml
 create mode 100644 src/main/webapp/WEB-INF/config.xml
 create mode 100644 src/main/webapp/WEB-INF/data/config/codelist/external/thesauri/theme/inspire-service-taxonomy.rdf
 create mode 100644 src/main/webapp/WEB-INF/data/config/codelist/external/thesauri/theme/inspire-theme.rdf
 create mode 100644 src/main/webapp/WEB-INF/data/config/schema_plugins/iso19139/convert/thesaurus-transformation.xsl
 create mode 100644 src/main/webapp/WEB-INF/data/config/schema_plugins/iso19139/index-fields/default.xsl
 create mode 100644 src/main/webapp/WEB-INF/data/config/schema_plugins/iso19139/layout/layout-custom-fields-keywords.xsl
 create mode 100644 src/main/webapp/WEB-INF/data/config/schema_plugins/iso19139/loc/fre/codelists.xml
 create mode 100644 src/main/webapp/WEB-INF/data/config/schema_plugins/iso19139/schematron/schematron-rules-geonetwork.sch
 create mode 100644 src/main/webapp/WEB-INF/data/config/schema_plugins/iso19139/schematron/schematron-rules-geonetwork.xsl
 create mode 100644 src/main/webapp/WEB-INF/data/config/schema_plugins/iso19139/schematron/schematron-rules-inspire.sch
 create mode 100644 src/main/webapp/WEB-INF/data/config/schema_plugins/iso19139/schematron/schematron-rules-inspire.xsl
 create mode 100644 src/main/webapp/WEB-INF/data/config/schema_plugins/iso19139/schematron/schematron-rules-iso.sch
 create mode 100644 src/main/webapp/WEB-INF/data/config/schema_plugins/iso19139/schematron/schematron-rules-iso.xsl
 create mode 100644 src/main/webapp/WEB-INF/data/data/formatter/groovy/common/Functions.groovy
 create mode 100644 src/main/webapp/WEB-INF/data/data/formatter/groovy/common/Handlers.groovy
 create mode 100644 src/main/webapp/WEB-INF/data/data/formatter/groovy/common/Matchers.groovy
 create mode 100644 src/main/webapp/WEB-INF/data/data/formatter/hierarchy_view/config.properties
 create mode 100644 src/main/webapp/WEB-INF/data/data/formatter/hierarchy_view/view.groovy
 create mode 100644 src/main/webapp/WEB-INF/data/data/formatter/html/2-level-entry.html
 create mode 100644 src/main/webapp/WEB-INF/data/data/formatter/html/associated.html
 create mode 100644 src/main/webapp/WEB-INF/data/data/formatter/html/bbox.html
 create mode 100644 src/main/webapp/WEB-INF/data/data/formatter/html/links.html
 create mode 100644 src/main/webapp/WEB-INF/data/data/formatter/html/list-entry.html
 create mode 100644 src/main/webapp/WEB-INF/data/data/formatter/html/single-link.html
 create mode 100644 src/main/webapp/WEB-INF/data/data/formatter/html/text-el.html
 create mode 100644 src/main/webapp/WEB-INF/data/data/formatter/html/url-el.html
 create mode 100644 src/main/webapp/WEB-INF/data/data/formatter/html/view-header.html
 create mode 100644 src/main/webapp/WEB-INF/data/data/formatter/html/wikitext-el.html
 create mode 100644 src/main/webapp/WEB-INF/data/data/formatter/xml_view/highlight-json-xml.js
 create mode 100644 src/main/webapp/WEB-INF/data/data/formatter/xml_view/highlightjs.css
 create mode 100644 src/main/webapp/WEB-INF/data/data/formatter/xml_view/view.groovy
 create mode 100644 src/main/webapp/WEB-INF/data/data/formatter/xslt/render-functions.xsl
 create mode 100644 src/main/webapp/WEB-INF/data/data/formatter/xslt/render-layout-fields.xsl
 create mode 100644 src/main/webapp/WEB-INF/data/data/formatter/xslt/render-layout.xsl
 create mode 100644 src/main/webapp/WEB-INF/data/data/formatter/xslt/render-variables.xsl
 create mode 100644 src/main/webapp/apps_extend/actions.js
 create mode 100644 src/main/webapp/apps_extend/admin.js
 create mode 100644 src/main/webapp/apps_extend/administration_carto.js
 create mode 100644 src/main/webapp/apps_extend/bootstrap-submenu-2.0.4/css/bootstrap-submenu.css
 create mode 100644 src/main/webapp/apps_extend/bootstrap-submenu-2.0.4/css/bootstrap-submenu.css.map
 create mode 100644 src/main/webapp/apps_extend/bootstrap-submenu-2.0.4/css/bootstrap-submenu.min.css
 create mode 100644 src/main/webapp/apps_extend/bootstrap-submenu-2.0.4/js/bootstrap-submenu.js
 create mode 100644 src/main/webapp/apps_extend/bootstrap-submenu-2.0.4/js/bootstrap-submenu.min.js
 create mode 100644 src/main/webapp/apps_extend/css/apps_extend.css
 create mode 100644 src/main/webapp/apps_extend/images/FitAll_OFF.gif
 create mode 100644 src/main/webapp/apps_extend/images/FitAll_ON.gif
 create mode 100644 src/main/webapp/apps_extend/images/Infos_OFF.gif
 create mode 100644 src/main/webapp/apps_extend/images/Infos_ON.gif
 create mode 100644 src/main/webapp/apps_extend/images/Marianne.jpg
 create mode 100644 src/main/webapp/apps_extend/images/Mesure_OFF.gif
 create mode 100644 src/main/webapp/apps_extend/images/Mesure_ON.gif
 create mode 100644 src/main/webapp/apps_extend/images/Minimiser.gif
 create mode 100644 src/main/webapp/apps_extend/images/Oeil.gif
 create mode 100644 src/main/webapp/apps_extend/images/PRRA.gif
 create mode 100644 src/main/webapp/apps_extend/images/Pan_Est_OFF.gif
 create mode 100644 src/main/webapp/apps_extend/images/Pan_Est_ON.gif
 create mode 100644 src/main/webapp/apps_extend/images/Pan_NordEst_OFF.gif
 create mode 100644 src/main/webapp/apps_extend/images/Pan_NordEst_ON.gif
 create mode 100644 src/main/webapp/apps_extend/images/Pan_NordOuest_OFF.gif
 create mode 100644 src/main/webapp/apps_extend/images/Pan_NordOuest_ON.gif
 create mode 100644 src/main/webapp/apps_extend/images/Pan_Nord_OFF.gif
 create mode 100644 src/main/webapp/apps_extend/images/Pan_Nord_ON.gif
 create mode 100644 src/main/webapp/apps_extend/images/Pan_OFF.gif
 create mode 100644 src/main/webapp/apps_extend/images/Pan_ON.gif
 create mode 100644 src/main/webapp/apps_extend/images/Pan_Ouest_OFF.gif
 create mode 100644 src/main/webapp/apps_extend/images/Pan_Ouest_ON.gif
 create mode 100644 src/main/webapp/apps_extend/images/Pan_SudEst_OFF.gif
 create mode 100644 src/main/webapp/apps_extend/images/Pan_SudEst_ON.gif
 create mode 100644 src/main/webapp/apps_extend/images/Pan_SudOuest_OFF.gif
 create mode 100644 src/main/webapp/apps_extend/images/Pan_SudOuest_ON.gif
 create mode 100644 src/main/webapp/apps_extend/images/Pan_Sud_OFF.gif
 create mode 100644 src/main/webapp/apps_extend/images/Pan_Sud_ON.gif
 create mode 100644 src/main/webapp/apps_extend/images/ZoomIn_OFF.gif
 create mode 100644 src/main/webapp/apps_extend/images/ZoomIn_ON.gif
 create mode 100644 src/main/webapp/apps_extend/images/ZoomOut_OFF.gif
 create mode 100644 src/main/webapp/apps_extend/images/ZoomOut_ON.gif
 create mode 100644 src/main/webapp/apps_extend/images/add.png
 create mode 100644 src/main/webapp/apps_extend/images/ancre_bas.gif
 create mode 100644 src/main/webapp/apps_extend/images/ancre_droit.gif
 create mode 100644 src/main/webapp/apps_extend/images/bandeau.png
 create mode 100644 src/main/webapp/apps_extend/images/bandeaux/bandeau_bleu.png
 create mode 100644 src/main/webapp/apps_extend/images/bandeaux/bandeau_gris.png
 create mode 100644 src/main/webapp/apps_extend/images/bandeaux/bandeau_marron.png
 create mode 100644 src/main/webapp/apps_extend/images/bandeaux/bandeau_orange.png
 create mode 100644 src/main/webapp/apps_extend/images/bandeaux/bandeau_rouge.png
 create mode 100644 src/main/webapp/apps_extend/images/bandeaux/bandeau_vert.png
 create mode 100644 src/main/webapp/apps_extend/images/bandeaux/bandeau_violet.png
 create mode 100644 src/main/webapp/apps_extend/images/barre.gif
 create mode 100644 src/main/webapp/apps_extend/images/basket.gif
 create mode 100644 src/main/webapp/apps_extend/images/boulerouge.gif
 create mode 100644 src/main/webapp/apps_extend/images/carte16.png
 create mode 100644 src/main/webapp/apps_extend/images/carte32.png
 create mode 100644 src/main/webapp/apps_extend/images/checked.gif
 create mode 100644 src/main/webapp/apps_extend/images/contact.png
 create mode 100644 src/main/webapp/apps_extend/images/corbeille 16.gif
 create mode 100644 src/main/webapp/apps_extend/images/croix rouge 12.gif
 create mode 100644 src/main/webapp/apps_extend/images/croix rouge.gif
 create mode 100644 src/main/webapp/apps_extend/images/data_hide.gif
 create mode 100644 src/main/webapp/apps_extend/images/data_show.gif
 create mode 100644 src/main/webapp/apps_extend/images/domaines.gif
 create mode 100644 src/main/webapp/apps_extend/images/download.gif
 create mode 100644 src/main/webapp/apps_extend/images/fleche_jaune.gif
 create mode 100644 src/main/webapp/apps_extend/images/fondPRRA.jpg
 create mode 100644 src/main/webapp/apps_extend/images/fondPRRA2.jpg
 create mode 100644 src/main/webapp/apps_extend/images/graphique16.png
 create mode 100644 src/main/webapp/apps_extend/images/iconevideo.jpeg
 create mode 100644 src/main/webapp/apps_extend/images/imagesPDF.jpeg
 create mode 100644 src/main/webapp/apps_extend/images/lbleu.gif
 create mode 100644 src/main/webapp/apps_extend/images/legende.png
 create mode 100644 src/main/webapp/apps_extend/images/legende_carte.gif
 create mode 100644 src/main/webapp/apps_extend/images/legende_dataset.gif
 create mode 100644 src/main/webapp/apps_extend/images/legende_donnee.gif
 create mode 100644 src/main/webapp/apps_extend/images/legende_service.gif
 create mode 100644 src/main/webapp/apps_extend/images/lgris.png
 create mode 100644 src/main/webapp/apps_extend/images/loading.gif
 create mode 100644 src/main/webapp/apps_extend/images/logos/Logo_Prodige_V0.jpg
 create mode 100644 src/main/webapp/apps_extend/images/logos/Marianne.jpg
 create mode 100644 src/main/webapp/apps_extend/images/lrouge.gif
 create mode 100644 src/main/webapp/apps_extend/images/lrouge.png
 create mode 100644 src/main/webapp/apps_extend/images/moins.GIF
 create mode 100644 src/main/webapp/apps_extend/images/ombre.gif
 create mode 100644 src/main/webapp/apps_extend/images/ombre_h.gif
 create mode 100644 src/main/webapp/apps_extend/images/outils16.png
 create mode 100644 src/main/webapp/apps_extend/images/plus.gif
 create mode 100644 src/main/webapp/apps_extend/images/puce_h2-trans.png
 create mode 100644 src/main/webapp/apps_extend/images/puce_h3.gif
 create mode 100644 src/main/webapp/apps_extend/images/remove.gif
 create mode 100644 src/main/webapp/apps_extend/images/remove.png
 create mode 100644 src/main/webapp/apps_extend/images/rss.gif
 create mode 100644 src/main/webapp/apps_extend/images/rss32.png
 create mode 100644 src/main/webapp/apps_extend/images/rss_over.gif
 create mode 100644 src/main/webapp/apps_extend/images/s.gif
 create mode 100644 src/main/webapp/apps_extend/images/tab-close-on.gif
 create mode 100644 src/main/webapp/apps_extend/images/tableau-bord.png
 create mode 100644 src/main/webapp/apps_extend/images/tableau-bord16.png
 create mode 100644 src/main/webapp/apps_extend/images/tableau-bord2.png
 create mode 100644 src/main/webapp/apps_extend/images/tableau-bord232.png
 create mode 100644 src/main/webapp/apps_extend/images/tableau-bord32.png
 create mode 100644 src/main/webapp/apps_extend/images/tarte16.png
 create mode 100644 src/main/webapp/apps_extend/images/unchecked.gif
 create mode 100644 src/main/webapp/apps_extend/images/volet.png
 create mode 100644 src/main/webapp/apps_extend/images/volets/volet_bleu.png
 create mode 100644 src/main/webapp/apps_extend/images/volets/volet_gris.png
 create mode 100644 src/main/webapp/apps_extend/images/volets/volet_marron.png
 create mode 100644 src/main/webapp/apps_extend/images/volets/volet_orange.png
 create mode 100644 src/main/webapp/apps_extend/images/volets/volet_rouge.png
 create mode 100644 src/main/webapp/apps_extend/images/volets/volet_vert.png
 create mode 100644 src/main/webapp/apps_extend/images/volets/volet_violet.png
 create mode 100644 src/main/webapp/apps_extend/images/waiting.gif
 create mode 100644 src/main/webapp/apps_extend/locales/fr-extend.json
 create mode 100644 src/main/webapp/apps_extend/panier.js
 create mode 100644 src/main/webapp/apps_extend/search/css/App-extend.css
 create mode 100644 src/main/webapp/apps_extend/search/home_en.html
 create mode 100644 src/main/webapp/apps_extend/search/home_fr.html
 create mode 100644 src/main/webapp/apps_extend/search/home_fre.html
 create mode 100644 src/main/webapp/apps_extend/templates/contact-admin.html
 create mode 100644 src/main/webapp/apps_extend/templates/editor.html
 create mode 100644 src/main/webapp/apps_extend/templates/ext-messages.html
 create mode 100644 src/main/webapp/apps_extend/templates/harvested-synchronization.html
 create mode 100644 src/main/webapp/apps_extend/templates/help-modal.html
 create mode 100644 src/main/webapp/apps_extend/templates/metadata-actions.html
 create mode 100644 src/main/webapp/apps_extend/templates/metadata-cart.html
 create mode 100644 src/main/webapp/apps_extend/templates/top-toolbar.html
 create mode 100644 src/main/webapp/apps_extend/util.js
 create mode 100644 src/main/webapp/catalog/components/cookieWarning/partials/cookieWarning.html
 create mode 100644 src/main/webapp/catalog/js/jscompatibility.js
 create mode 100644 src/main/webapp/catalog/lib/jquery.ext/jquery.cookie.js
 create mode 100644 src/main/webapp/catalog/locales/fr-alk-extend.json
 create mode 100644 src/main/webapp/catalog/style/gn_viewer.less
 create mode 100644 src/main/webapp/catalog/style/inspire/iti.css
 create mode 100644 src/main/webapp/catalog/templates/admin/admin.html
 create mode 100644 src/main/webapp/catalog/templates/top-toolbar.html
 create mode 100644 src/main/webapp/catalog/views/default/directives/partials/mdactionmenu.html
 create mode 100644 src/main/webapp/catalog/views/default/templates/results.html
 create mode 100644 src/main/webapp/images/logos/favicon.ico
 create mode 100644 src/main/webapp/xslt/base-layout.xsl
 create mode 100644 src/main/webapp/xslt/extend/base-layout-cssjs-loader.xsl
 create mode 100644 src/main/webapp/xslt/extend/base-variables.xsl

diff --git a/README.txt b/README.txt
new file mode 100644
index 0000000..f2d1c54
--- /dev/null
+++ b/README.txt
@@ -0,0 +1,6 @@
+# install geosource war in local maven repository
+#./mvnw install:install-file -DgroupId=org.geonetwork-opensource -DartifactId=geosource -Dversion=3.0.1-0 -Dpackaging=war -Dfile=./source/geosource-3.0.1-0.war
+./mvnw install:install-file -DgroupId=org.geonetwork-opensource -DartifactId=geonetwork -Dversion=3.2.0-0 -Dpackaging=war -Dfile=./source/geonetwork-3.2.0-0.war
+
+# build war overlay
+./mvnw clean package
\ No newline at end of file
diff --git a/config-overrides.properties.dev b/config-overrides.properties.dev
new file mode 100644
index 0000000..bb17732
--- /dev/null
+++ b/config-overrides.properties.dev
@@ -0,0 +1,23 @@
+INFO : Les termes _prefix et _suffix permettent de configurer les urls PRODIGE pour des environnements 
+       - de développement (ie. avec numéro de port en suffixe)
+       - de production (ie. avec prefixe de domaine)
+Utilisez l'option -e dev ou -e prod au lancement du script pour obtenir la configuration par défaut 
+correspondant respectivement aux environnements de développement ou de production
+ 
+prodige_domain=prodige41.alkante.al
+prodige_local_port=:1510
+prodige_catalogue_prefix=
+prodige_catalogue_suffix=${prodige_local_port}2/app_dev.php
+prodige_admincarto_prefix=
+prodige_admincarto_suffix=${prodige_local_port}6/app_dev.php
+prodige_frontcarto_prefix=
+prodige_frontcarto_suffix=${prodige_local_port}3/app_dev.php
+prodige_cas_prefix=
+prodige_cas_suffix=:8444
+prodige_geonetwork_prefix=
+prodige_geonetwork_suffix=:8443
+overrides_ldap_security_credentials=rz01mq9
+overrides_jdbc_database=CATALOGUE
+overrides_jdbc_username=user_prodige
+overrides_jdbc_password=pass_prodige
+ 
diff --git a/config-overrides.properties.prod b/config-overrides.properties.prod
new file mode 100644
index 0000000..14ad90c
--- /dev/null
+++ b/config-overrides.properties.prod
@@ -0,0 +1,23 @@
+INFO : Les termes _prefix et _suffix permettent de configurer les urls PRODIGE pour des environnements 
+       - de développement (ie. avec numéro de port en suffixe)
+       - de production (ie. avec prefixe de domaine)
+Utilisez l'option -e dev ou -e prod au lancement du script pour obtenir la configuration par défaut 
+correspondant respectivement aux environnements de développement ou de production
+ 
+prodige_domain=
+prodige_local_port=
+prodige_catalogue_prefix=catalogue.
+prodige_catalogue_suffix=
+prodige_admincarto_prefix=admincarto.
+prodige_admincarto_suffix=
+prodige_frontcarto_prefix=carto.
+prodige_frontcarto_suffix=
+prodige_cas_prefix=
+prodige_cas_suffix=:8444
+prodige_geonetwork_prefix=
+prodige_geonetwork_suffix=:8443
+overrides_ldap_security_credentials=rz01mq9
+overrides_jdbc_database=CATALOGUE
+overrides_jdbc_username=user_prodige
+overrides_jdbc_password=pass_prodige
+ 
diff --git a/generate_overlay.sh b/generate_overlay.sh
new file mode 100644
index 0000000..6ab76c5
--- /dev/null
+++ b/generate_overlay.sh
@@ -0,0 +1,155 @@
+
+function usage(){
+    printf "Utilisation du script :\n"
+    printf " -c, --config               Configuration interactive de l'installation (urls, connexion DB, mot de passe LDAP)\n"
+    printf " -p, --package              Exécution du 'maven clean package' \n"
+    printf " -e, --env=INSTALL_TYPE     Type d'installation : dev|prod (par défaut=prod)\n"
+    printf " -H, --host=PRODIGE_DOMAIN  Domaine principal de l'installation\n"
+    printf " -D, --dbname=DB_NAME       Nom de la base de données à connecter\n"
+    printf " -U, --dbuser=DB_USER_NAME  Utilisateur de connexion à la base de données\n"
+    printf " -P, --dbpwd=DB_USER_PWD    Mot de passe de connexion à la base de données\n"
+    printf " -h                         Affiche ce message.\n"
+}
+ 
+
+PACKAGE=0
+WITH_CONFIG=0
+CONFIG_ENV=prod
+
+# Propriétés de configuration obligatoires et définissables par les options du script
+# {
+PRODIGE_DOMAIN=
+OVERRIDES_JDBC_DATABASE=
+OVERRIDES_JDBC_USERNAME=
+OVERRIDES_JDBC_PASSWORD=
+# }
+
+options=$(getopt -o:cphe:H:D:U:P: -l help,config,package,env:,host:,dbname:,dbuser:,dbpwd: -- "$@")
+if [[ ! $options ]]
+then
+    # something went wrong, getopt will put out an error message for us
+    exit 1
+fi
+
+eval set -- $options
+while [ $# -gt 0 ]
+do
+  case "$1" in
+    (-h|--help)    usage;                      exit 0;;
+    (-c|--config)  WITH_CONFIG=1;;
+    (-p|--package) PACKAGE=1;;
+    (-e|--env)     CONFIG_ENV=$2;              shift;;
+    (-H|--host)    PRODIGE_DOMAIN=$2;          shift;;
+    (-D|--dbname)  OVERRIDES_JDBC_DATABASE=$2; shift;;
+    (-U|--dbuser)  OVERRIDES_JDBC_USERNAME=$2; shift;;
+    (-P|--dbpwd)   OVERRIDES_JDBC_PASSWORD=$2; shift;;
+    (*)            break;;
+  esac
+  shift
+done
+
+CURDIR=`pwd`
+
+DEFAULT_CONFIG=${CURDIR}/config-overrides.properties.${CONFIG_ENV}
+
+GENERATED_CONFIG=${CURDIR}/config-overrides.properties
+GENERATED_OVERRIDES=${CURDIR}/config-overrides-prod.xml
+
+INITIAL_CONFIG=${CURDIR}/src/main/webapp/WEB-INF/config-overrides.properties
+INITIAL_OVERRIDES=${CURDIR}/src/main/webapp/WEB-INF/config-overrides-prod.xml
+
+cp ${INITIAL_OVERRIDES} ${GENERATED_OVERRIDES}
+cp ${INITIAL_CONFIG} ${GENERATED_CONFIG}
+cp ${INITIAL_OVERRIDES} ${GENERATED_OVERRIDES}.initial
+cp ${INITIAL_CONFIG} ${GENERATED_CONFIG}.initial
+cp ${DEFAULT_CONFIG} ${DEFAULT_CONFIG}.last
+
+
+if [[ -f ${DEFAULT_CONFIG} ]]
+then
+  source <(grep = ${DEFAULT_CONFIG})
+fi;
+if [[ "${WITH_CONFIG}" -eq "1" ]] 
+then
+  echo "Configuration de l'installation : "
+fi;
+
+
+old_IFS=$IFS  # sauvegarde du séparateur de champ  
+IFS=$'\n'     # nouveau séparateur de champ, le caractère fin de ligne  
+for line in `cat ${DEFAULT_CONFIG}`
+do
+
+  if [[ $line =~ ^([a-z_A-Z]+)=(.*)$ ]]
+  then
+    # nom de la variable de config
+    varname=${BASH_REMATCH[1]}
+    # valeur extraite de la lecture du fichier de config par défaut (donc déjà calculée, en cas de variables imbriquées)
+    initial_value=${!varname}
+
+    # evaluation dynamique de la valeur par défaut de config (pour prendre en compte les nouvelles valeurs affectées aux variables imbriquées)
+    default_value=`eval "echo ${BASH_REMATCH[2]}"`
+
+    VARNAME=`echo ${varname^^}`
+    if [ -v "${VARNAME}" -a -n "${!VARNAME}" ]; then
+      echo "Set ${varname} to ${!VARNAME}"
+      default_value="${!VARNAME}"
+    fi;
+
+    # configuration nécessaire si aucun valeur n'est définit sur les paramètres obligatoires
+    if [ -v "${VARNAME}" -a  -z "${default_value}" ]; then
+      WITH_CONFIG=1
+    fi;
+
+    if [[ "${WITH_CONFIG}" -eq "1" ]] 
+    then
+      echo "${varname} [ ${default_value} ] ?"
+      read value
+      value=${value:-${default_value}}
+    else
+      value=${default_value}
+    fi
+
+    # génération de la config d'installation à intégrer à l'overlay
+    sed -i 's/[$][{]'"${varname}"'[}]/'"${value/\//\\\/}"'/g' ${GENERATED_OVERRIDES}
+    sed -i 's/[$][{]'"${varname}"'[}]/'"${value/\//\\\/}"'/g' ${GENERATED_CONFIG}
+
+    # mémorisation de la dernière config d'installation (NB : conserve les variables imbriquées si les nouvelles valeurs correspondent à la formule)
+    if [ "${value}" = "${default_value}" ]; then pattern="${initial_value}"; else pattern="${BASH_REMATCH[2]}"; fi
+    pattern=`echo "${pattern/\//\\\/}"` && pattern=`echo "${pattern/[$]/[$]}"` && pattern=`echo "${pattern/[{]/[{]}"` && pattern=`echo "${pattern/[\}]/[\}]}"`
+    sed -i 's/'"${varname}"'='"${pattern}"'/'"${varname}"'='"${value/\//\\\/}"'/g' ${DEFAULT_CONFIG}.last
+
+    # change la valeur de la variable dans l'environnement bash
+    eval ${varname}=${value}
+  elif [[ "${WITH_CONFIG}" -eq "1" ]] 
+  then
+    echo $line
+  fi;
+done
+IFS=${old_IFS}
+
+echo ""
+echo "Le fichier ${DEFAULT_CONFIG}.last a été généré avec les dernières valeurs de remplacement de l'installation."
+echo "ASTUCE : Si c'est souhaité, le renommer en ${DEFAULT_CONFIG} pour qu'il devienne la config par défaut de l'installation "
+echo ""
+
+if [[ "${PACKAGE}" -eq "1" ]] 
+then
+  sudo systemctl stop tomcat8
+  cd /home/devperso/tomcat/prodige41
+  rm geosource
+  cd ${CURDIR}
+  cp ${GENERATED_CONFIG} ${INITIAL_CONFIG} && cp ${GENERATED_OVERRIDES} ${INITIAL_OVERRIDES} && ./mvnw clean package && mv ${GENERATED_CONFIG}.initial ${INITIAL_CONFIG} && mv ${GENERATED_OVERRIDES}.initial ${INITIAL_OVERRIDES}
+
+  cd /home/devperso/tomcat/prodige41
+  ln -s ${CURDIR}/target/geosource-overlay-3.4.1-0 geosource
+else
+  sudo systemctl stop tomcat8
+  cp -R ${CURDIR}/src/main/webapp/* ${CURDIR}/target/geosource-overlay-3.4.1-0/.
+  cp ${GENERATED_CONFIG} ${CURDIR}/target/geosource-overlay-3.4.1-0/WEB-INF/`basename ${INITIAL_CONFIG}`
+  cp ${GENERATED_OVERRIDES} ${CURDIR}/target/geosource-overlay-3.4.1-0/WEB-INF/`basename ${INITIAL_OVERRIDES}`
+fi;
+cd ${CURDIR}
+rm ${GENERATED_CONFIG}.initial
+rm ${GENERATED_OVERRIDES}.initial
+sudo systemctl restart tomcat8 && tail -f /var/log/tomcat8/catalina.out
diff --git a/initialize.sql b/initialize.sql
new file mode 100644
index 0000000..067a5dd
--- /dev/null
+++ b/initialize.sql
@@ -0,0 +1,3 @@
+ALTER TABLE Settings ALTER COLUMN value TYPE text;
+
+DELETE FROM Settings where name='ui/config';
diff --git a/maven/maven-wrapper.jar b/maven/maven-wrapper.jar
new file mode 100644
index 0000000000000000000000000000000000000000..18ba302c65c4f71f57e0daa0ea1b59cb85759b5c
GIT binary patch
literal 71910
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%0DcoUjNlo--yK~^)z{4lNKY#WT7n%h<Dk`c?
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

literal 0
HcmV?d00001

diff --git a/maven/maven-wrapper.properties b/maven/maven-wrapper.properties
new file mode 100644
index 0000000..8c733ad
--- /dev/null
+++ b/maven/maven-wrapper.properties
@@ -0,0 +1,3 @@
+#Maven download properties
+#Tue Nov 17 21:07:15 MST 2015
+distributionUrl=https\://repository.apache.org/content/repositories/releases/org/apache/maven/apache-maven/3.3.3/apache-maven-3.3.3-bin.zip
diff --git a/mvnw b/mvnw
new file mode 100755
index 0000000..2275ac7
--- /dev/null
+++ b/mvnw
@@ -0,0 +1,234 @@
+#!/bin/sh
+# ----------------------------------------------------------------------------
+# 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.
+# ----------------------------------------------------------------------------
+
+# ----------------------------------------------------------------------------
+# Maven2 Start Up Batch script
+#
+# Required ENV vars:
+# ------------------
+#   JAVA_HOME - location of a JDK home dir
+#
+# Optional ENV vars
+# -----------------
+#   M2_HOME - location of maven2's installed home dir
+#   MAVEN_OPTS - parameters passed to the Java VM when running Maven
+#     e.g. to debug Maven itself, use
+#       set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000
+#   MAVEN_SKIP_RC - flag to disable loading of mavenrc files
+# ----------------------------------------------------------------------------
+
+if [ -z "$MAVEN_SKIP_RC" ] ; then
+
+  if [ -f /etc/mavenrc ] ; then
+    . /etc/mavenrc
+  fi
+
+  if [ -f "$HOME/.mavenrc" ] ; then
+    . "$HOME/.mavenrc"
+  fi
+
+fi
+
+# OS specific support.  $var _must_ be set to either true or false.
+cygwin=false;
+darwin=false;
+mingw=false
+case "`uname`" in
+  CYGWIN*) cygwin=true ;;
+  MINGW*) mingw=true;;
+  Darwin*) darwin=true
+           #
+           # Look for the Apple JDKs first to preserve the existing behaviour, and then look
+           # for the new JDKs provided by Oracle.
+           # 
+           if [ -z "$JAVA_HOME" ] && [ -L /System/Library/Frameworks/JavaVM.framework/Versions/CurrentJDK ] ; then
+             #
+             # Apple JDKs
+             #
+             export JAVA_HOME=/System/Library/Frameworks/JavaVM.framework/Versions/CurrentJDK/Home
+           fi
+           
+           if [ -z "$JAVA_HOME" ] && [ -L /System/Library/Java/JavaVirtualMachines/CurrentJDK ] ; then
+             #
+             # Apple JDKs
+             #
+             export JAVA_HOME=/System/Library/Java/JavaVirtualMachines/CurrentJDK/Contents/Home
+           fi
+             
+           if [ -z "$JAVA_HOME" ] && [ -L "/Library/Java/JavaVirtualMachines/CurrentJDK" ] ; then
+             #
+             # Oracle JDKs
+             #
+             export JAVA_HOME=/Library/Java/JavaVirtualMachines/CurrentJDK/Contents/Home
+           fi           
+
+           if [ -z "$JAVA_HOME" ] && [ -x "/usr/libexec/java_home" ]; then
+             #
+             # Apple JDKs
+             #
+             export JAVA_HOME=`/usr/libexec/java_home`
+           fi
+           ;;
+esac
+
+if [ -z "$JAVA_HOME" ] ; then
+  if [ -r /etc/gentoo-release ] ; then
+    JAVA_HOME=`java-config --jre-home`
+  fi
+fi
+
+if [ -z "$M2_HOME" ] ; then
+  ## resolve links - $0 may be a link to maven's home
+  PRG="$0"
+
+  # need this for relative symlinks
+  while [ -h "$PRG" ] ; do
+    ls=`ls -ld "$PRG"`
+    link=`expr "$ls" : '.*-> \(.*\)$'`
+    if expr "$link" : '/.*' > /dev/null; then
+      PRG="$link"
+    else
+      PRG="`dirname "$PRG"`/$link"
+    fi
+  done
+
+  saveddir=`pwd`
+
+  M2_HOME=`dirname "$PRG"`/..
+
+  # make it fully qualified
+  M2_HOME=`cd "$M2_HOME" && pwd`
+
+  cd "$saveddir"
+  # echo Using m2 at $M2_HOME
+fi
+
+# For Cygwin, ensure paths are in UNIX format before anything is touched
+if $cygwin ; then
+  [ -n "$M2_HOME" ] &&
+    M2_HOME=`cygpath --unix "$M2_HOME"`
+  [ -n "$JAVA_HOME" ] &&
+    JAVA_HOME=`cygpath --unix "$JAVA_HOME"`
+  [ -n "$CLASSPATH" ] &&
+    CLASSPATH=`cygpath --path --unix "$CLASSPATH"`
+fi
+
+# For Migwn, ensure paths are in UNIX format before anything is touched
+if $mingw ; then
+  [ -n "$M2_HOME" ] &&
+    M2_HOME="`(cd "$M2_HOME"; pwd)`"
+  [ -n "$JAVA_HOME" ] &&
+    JAVA_HOME="`(cd "$JAVA_HOME"; pwd)`"
+  # TODO classpath?
+fi
+
+if [ -z "$JAVA_HOME" ]; then
+  javaExecutable="`which javac`"
+  if [ -n "$javaExecutable" ] && ! [ "`expr \"$javaExecutable\" : '\([^ ]*\)'`" = "no" ]; then
+    # readlink(1) is not available as standard on Solaris 10.
+    readLink=`which readlink`
+    if [ ! `expr "$readLink" : '\([^ ]*\)'` = "no" ]; then
+      if $darwin ; then
+        javaHome="`dirname \"$javaExecutable\"`"
+        javaExecutable="`cd \"$javaHome\" && pwd -P`/javac"
+      else
+        javaExecutable="`readlink -f \"$javaExecutable\"`"
+      fi
+      javaHome="`dirname \"$javaExecutable\"`"
+      javaHome=`expr "$javaHome" : '\(.*\)/bin'`
+      JAVA_HOME="$javaHome"
+      export JAVA_HOME
+    fi
+  fi
+fi
+
+if [ -z "$JAVACMD" ] ; then
+  if [ -n "$JAVA_HOME"  ] ; then
+    if [ -x "$JAVA_HOME/jre/sh/java" ] ; then
+      # IBM's JDK on AIX uses strange locations for the executables
+      JAVACMD="$JAVA_HOME/jre/sh/java"
+    else
+      JAVACMD="$JAVA_HOME/bin/java"
+    fi
+  else
+    JAVACMD="`which java`"
+  fi
+fi
+
+if [ ! -x "$JAVACMD" ] ; then
+  echo "Error: JAVA_HOME is not defined correctly." >&2
+  echo "  We cannot execute $JAVACMD" >&2
+  exit 1
+fi
+
+if [ -z "$JAVA_HOME" ] ; then
+  echo "Warning: JAVA_HOME environment variable is not set."
+fi
+
+CLASSWORLDS_LAUNCHER=org.codehaus.plexus.classworlds.launcher.Launcher
+
+# For Cygwin, switch paths to Windows format before running java
+if $cygwin; then
+  [ -n "$M2_HOME" ] &&
+    M2_HOME=`cygpath --path --windows "$M2_HOME"`
+  [ -n "$JAVA_HOME" ] &&
+    JAVA_HOME=`cygpath --path --windows "$JAVA_HOME"`
+  [ -n "$CLASSPATH" ] &&
+    CLASSPATH=`cygpath --path --windows "$CLASSPATH"`
+fi
+
+# traverses directory structure from process work directory to filesystem root
+# first directory with .mvn subdirectory is considered project base directory
+find_maven_basedir() {
+  local basedir=$(pwd)
+  local wdir=$(pwd)
+  while [ "$wdir" != '/' ] ; do
+    wdir=$(cd "$wdir/.."; pwd)
+    if [ -d "$wdir"/.mvn ] ; then
+      basedir=$wdir
+      break
+    fi
+  done
+  echo "${basedir}"
+}
+
+# concatenates all lines of a file
+concat_lines() {
+  if [ -f "$1" ]; then
+    echo "$(tr -s '\n' ' ' < "$1")"
+  fi
+}
+
+export MAVEN_PROJECTBASEDIR=${MAVEN_BASEDIR:-$(find_maven_basedir)}
+MAVEN_OPTS="$(concat_lines "$MAVEN_PROJECTBASEDIR/.mvn/jvm.config") $MAVEN_OPTS"
+
+# Provide a "standardized" way to retrieve the CLI args that will 
+# work with both Windows and non-Windows executions.
+MAVEN_CMD_LINE_ARGS="$MAVEN_CONFIG $@"
+export MAVEN_CMD_LINE_ARGS
+
+WRAPPER_LAUNCHER="org.apache.maven.wrapper.MavenWrapperMain"
+
+exec "$JAVACMD" \
+     $MAVEN_OPTS \
+     "-Dmaven.home=${M2_HOME}" "-Dmaven.multiModuleProjectDirectory=${MAVEN_PROJECTBASEDIR}" \
+  -classpath \
+"$MAVEN_PROJECTBASEDIR/maven/maven-wrapper.jar" \
+  ${WRAPPER_LAUNCHER} "$@"
diff --git a/mvnw.bat b/mvnw.bat
new file mode 100755
index 0000000..f8ede7f
--- /dev/null
+++ b/mvnw.bat
@@ -0,0 +1,174 @@
+@REM ----------------------------------------------------------------------------
+@REM Licensed to the Apache Software Foundation (ASF) under one
+@REM or more contributor license agreements.  See the NOTICE file
+@REM distributed with this work for additional information
+@REM regarding copyright ownership.  The ASF licenses this file
+@REM to you under the Apache License, Version 2.0 (the
+@REM "License"); you may not use this file except in compliance
+@REM with the License.  You may obtain a copy of the License at
+@REM
+@REM    http://www.apache.org/licenses/LICENSE-2.0
+@REM
+@REM Unless required by applicable law or agreed to in writing,
+@REM software distributed under the License is distributed on an
+@REM "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+@REM KIND, either express or implied.  See the License for the
+@REM specific language governing permissions and limitations
+@REM under the License.
+@REM ----------------------------------------------------------------------------
+
+@REM ----------------------------------------------------------------------------
+@REM Maven2 Start Up Batch script
+@REM
+@REM Required ENV vars:
+@REM JAVA_HOME - location of a JDK home dir
+@REM
+@REM Optional ENV vars
+@REM M2_HOME - location of maven2's installed home dir
+@REM MAVEN_BATCH_ECHO - set to 'on' to enable the echoing of the batch commands
+@REM MAVEN_BATCH_PAUSE - set to 'on' to wait for a key stroke before ending
+@REM MAVEN_OPTS - parameters passed to the Java VM when running Maven
+@REM     e.g. to debug Maven itself, use
+@REM set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000
+@REM MAVEN_SKIP_RC - flag to disable loading of mavenrc files
+@REM ----------------------------------------------------------------------------
+
+@REM Begin all REM lines with '@' in case MAVEN_BATCH_ECHO is 'on'
+@echo off
+@REM enable echoing my setting MAVEN_BATCH_ECHO to 'on'
+@if "%MAVEN_BATCH_ECHO%" == "on"  echo %MAVEN_BATCH_ECHO%
+
+@REM set %HOME% to equivalent of $HOME
+if "%HOME%" == "" (set "HOME=%HOMEDRIVE%%HOMEPATH%")
+
+@REM Execute a user defined script before this one
+if not "%MAVEN_SKIP_RC%" == "" goto skipRcPre
+@REM check for pre script, once with legacy .bat ending and once with .cmd ending
+if exist "%HOME%\mavenrc_pre.bat" call "%HOME%\mavenrc_pre.bat"
+if exist "%HOME%\mavenrc_pre.cmd" call "%HOME%\mavenrc_pre.cmd"
+:skipRcPre
+
+@setlocal
+
+set ERROR_CODE=0
+
+@REM To isolate internal variables from possible post scripts, we use another setlocal
+@setlocal
+
+@REM ==== START VALIDATION ====
+if not "%JAVA_HOME%" == "" goto OkJHome
+
+echo.
+echo Error: JAVA_HOME not found in your environment. >&2
+echo Please set the JAVA_HOME variable in your environment to match the >&2
+echo location of your Java installation. >&2
+echo.
+goto error
+
+:OkJHome
+if exist "%JAVA_HOME%\bin\java.exe" goto chkMHome
+
+echo.
+echo Error: JAVA_HOME is set to an invalid directory. >&2
+echo JAVA_HOME = "%JAVA_HOME%" >&2
+echo Please set the JAVA_HOME variable in your environment to match the >&2
+echo location of your Java installation. >&2
+echo.
+goto error
+
+:chkMHome
+if not "%M2_HOME%"=="" goto valMHome
+
+SET "M2_HOME=%~dp0.."
+if not "%M2_HOME%"=="" goto valMHome
+
+echo.
+echo Error: M2_HOME not found in your environment. >&2
+echo Please set the M2_HOME variable in your environment to match the >&2
+echo location of the Maven installation. >&2
+echo.
+goto error
+
+:valMHome
+
+:stripMHome
+if not "_%M2_HOME:~-1%"=="_\" goto checkMCmd
+set "M2_HOME=%M2_HOME:~0,-1%"
+goto stripMHome
+
+:checkMCmd
+if exist "%M2_HOME%\bin\mvn.cmd" goto init
+
+echo.
+echo Error: M2_HOME is set to an invalid directory. >&2
+echo M2_HOME = "%M2_HOME%" >&2
+echo Please set the M2_HOME variable in your environment to match the >&2
+echo location of the Maven installation >&2
+echo.
+goto error
+@REM ==== END VALIDATION ====
+
+:init
+
+set MAVEN_CMD_LINE_ARGS=%*
+
+@REM Find the project base dir, i.e. the directory that contains the folder ".mvn".
+@REM Fallback to current working directory if not found.
+
+set MAVEN_PROJECTBASEDIR=%MAVEN_BASEDIR%
+IF NOT "%MAVEN_PROJECTBASEDIR%"=="" goto endDetectBaseDir
+
+set EXEC_DIR=%CD%
+set WDIR=%EXEC_DIR%
+:findBaseDir
+IF EXIST "%WDIR%"\.mvn goto baseDirFound
+cd ..
+IF "%WDIR%"=="%CD%" goto baseDirNotFound
+set WDIR=%CD%
+goto findBaseDir
+
+:baseDirFound
+set MAVEN_PROJECTBASEDIR=%WDIR%
+cd "%EXEC_DIR%"
+goto endDetectBaseDir
+
+:baseDirNotFound
+set MAVEN_PROJECTBASEDIR=%EXEC_DIR%
+cd "%EXEC_DIR%"
+
+:endDetectBaseDir
+
+IF NOT EXIST "%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config" goto endReadAdditionalConfig
+
+@setlocal EnableExtensions EnableDelayedExpansion
+for /F "usebackq delims=" %%a in ("%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config") do set JVM_CONFIG_MAVEN_PROPS=!JVM_CONFIG_MAVEN_PROPS! %%a
+@endlocal & set JVM_CONFIG_MAVEN_PROPS=%JVM_CONFIG_MAVEN_PROPS%
+
+:endReadAdditionalConfig
+
+SET MAVEN_JAVA_EXE="%JAVA_HOME%\bin\java.exe"
+set WRAPPER_JAR="%MAVEN_PROJECTBASEDIR%\maven\maven-wrapper.jar"
+set WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain
+%MAVEN_JAVA_EXE% %JVM_CONFIG_MAVEN_PROPS% %MAVEN_OPTS% %MAVEN_DEBUG_OPTS% -classpath %WRAPPER_JAR% %WRAPPER_LAUNCHER% %MAVEN_CMD_LINE_ARGS%
+
+if ERRORLEVEL 1 goto error
+goto end
+
+:error
+set ERROR_CODE=1
+
+:end
+@endlocal & set ERROR_CODE=%ERROR_CODE%
+
+if not "%MAVEN_SKIP_RC%" == "" goto skipRcPost
+@REM check for post script, once with legacy .bat ending and once with .cmd ending
+if exist "%HOME%\mavenrc_post.bat" call "%HOME%\mavenrc_post.bat"
+if exist "%HOME%\mavenrc_post.cmd" call "%HOME%\mavenrc_post.cmd"
+:skipRcPost
+
+@REM pause the script if MAVEN_BATCH_PAUSE is set to 'on'
+if "%MAVEN_BATCH_PAUSE%" == "on" pause
+
+if "%MAVEN_TERMINATE_CMD%" == "on" exit %ERROR_CODE%
+
+exit /B %ERROR_CODE%
diff --git a/pom.xml b/pom.xml
new file mode 100755
index 0000000..b25b70d
--- /dev/null
+++ b/pom.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd ">
+    <modelVersion>4.0.0</modelVersion>
+    <groupId>prodige41.alkante.al</groupId>
+    <artifactId>geosource-overlay</artifactId>
+    <packaging>war</packaging>
+    <version>3.4.1-0</version>
+
+    <dependencies>
+        <dependency>
+            <groupId>org.geonetwork-opensource</groupId>
+            <artifactId>geonetwork</artifactId>
+            <version>3.4.1-0</version>
+            <type>war</type>
+            <scope>runtime</scope>
+        </dependency>
+    </dependencies>
+
+</project>
diff --git a/src/main/webapp/WEB-INF/classes/setup/sql/migrate/v304/migrate-default.sql b/src/main/webapp/WEB-INF/classes/setup/sql/migrate/v304/migrate-default.sql
new file mode 100644
index 0000000..babedaf
--- /dev/null
+++ b/src/main/webapp/WEB-INF/classes/setup/sql/migrate/v304/migrate-default.sql
@@ -0,0 +1,3 @@
+UPDATE Settings SET value='3.0.4' WHERE name='system/platform/version';
+UPDATE Settings SET value='0' WHERE name='system/platform/subVersion';
+--ALTER TABLE HarvesterData RENAME COLUMN "key" TO keyvalue;
\ No newline at end of file
diff --git a/src/main/webapp/WEB-INF/classes/setup/sql/migrate/v330/migrate-default.sql b/src/main/webapp/WEB-INF/classes/setup/sql/migrate/v330/migrate-default.sql
new file mode 100644
index 0000000..e67503b
--- /dev/null
+++ b/src/main/webapp/WEB-INF/classes/setup/sql/migrate/v330/migrate-default.sql
@@ -0,0 +1,64 @@
+ALTER TABLE Settings alter column "value" type text;
+INSERT INTO Settings (name, value, datatype, position, internal) VALUES
+  ('ui/config', '{"langDetector":{"fromHtmlTag":false,"regexp":"^/[a-zA-Z0-9_-]+/[a-zA-Z0-9_-]+/([a-z]{3})/","default":"eng"},"nodeDetector":{"regexp":"^/[a-zA-Z0-9_-]+/([a-zA-Z0-9_-]+)/[a-z]{3}/","default":"srv"},"mods":{"header":{"enabled":true,"languages":{"eng":"en","dut":"du","fre":"fr","ger":"ge","kor":"ko","spa":"es","cze":"cz","cat":"ca","fin":"fi","ice":"is"}},"home":{"enabled":true,"appUrl":"../../srv/{{lang}}/catalog.search#/home"},"search":{"enabled":true,"appUrl":"../../srv/{{lang}}/catalog.search#/search","hitsperpageValues":[10,50,100],"paginationInfo":{"hitsPerPage":20},"facetsSummaryType":"details","facetConfig":[],"facetTabField": "","filters":{},"sortbyValues":[{"sortBy":"relevance","sortOrder":""},{"sortBy":"changeDate","sortOrder":""},{"sortBy":"title","sortOrder":"reverse"},{"sortBy":"rating","sortOrder":""},{"sortBy":"popularity","sortOrder":""},{"sortBy":"denominatorDesc","sortOrder":""},{"sortBy":"denominatorAsc","sortOrder":"reverse"}],"sortBy":"relevance","resultViewTpls":[{"tplUrl":"../../catalog/components/search/resultsview/partials/viewtemplates/grid.html","tooltip":"Grid","icon":"fa-th"}],"resultTemplate":"../../catalog/components/search/resultsview/partials/viewtemplates/grid.html","formatter":{"list":[{"label":"full","url":"../api/records/{{md.getUuid()}}/formatters/xsl-view?root=div&view=advanced"}]},"linkTypes":{"links":["LINK","kml"],"downloads":["DOWNLOAD"],"layers":["OGC"],"maps":["ows"]},"isFilterTagsDisplayedInSearch":false},"map":{"enabled":true,"appUrl":"../../srv/{{lang}}/catalog.search#/map","is3DModeAllowed":true,"isSaveMapInCatalogAllowed":true,"bingKey":"AnElW2Zqi4fI-9cYx1LHiQfokQ9GrNzcjOh_p_0hkO1yo78ba8zTLARcLBIf8H6D","storage":"sessionStorage","map":"../../map/config-viewer.xml","listOfServices":{"wms":[],"wmts":[]},"useOSM":true,"context":"","projection":"EPSG:3857","projectionList":[{"code":"EPSG:4326","label":"WGS84(EPSG:4326)"},{"code":"EPSG:3857","label":"Googlemercator(EPSG:3857)"}],"disabledTools":{"processes":true}},"editor":{"enabled":true,"appUrl":"../../srv/{{lang}}/catalog.edit,"isUserRecordsOnly": false","isFilterTagsDisplayed":false},"admin":{"enabled":true,"appUrl":"../../srv/{{lang}}/admin.console"},"signin":{"enabled":true,"appUrl":"../../srv/{{lang}}/catalog.signin"},"signout":{"appUrl":"../../signout"}}}', 3, 10000, 'n');
+
+INSERT INTO Settings (name, value, datatype, position, internal) VALUES
+  ('system/csw/enabledWhenIndexing', 'true', 2, 1211, 'y');
+
+DELETE FROM Settings WHERE  name = 'map/is3DModeAllowed';
+DELETE FROM Settings WHERE  name = 'map/isMapViewerEnabled';
+DELETE FROM Settings WHERE  name = 'map/config';
+DELETE FROM Settings WHERE  name = 'map/proj4js';
+DELETE FROM Settings WHERE  name = 'map/isSaveMapInCatalogAllowed';
+DELETE FROM Settings WHERE  name = 'map/bingKey';
+
+DELETE FROM Settings WHERE name like 'system/shib%';
+
+
+INSERT INTO Selections (id, name, isWatchable) VALUES (0, 'PreferredList', 'n');
+INSERT INTO Selections (id, name, isWatchable) VALUES (1, 'WatchList', 'y');
+INSERT INTO SelectionsDes (iddes, langid, label) VALUES (0,'ara','Preferred records');
+INSERT INTO SelectionsDes (iddes, langid, label) VALUES (1,'ara','Watch list');
+INSERT INTO SelectionsDes (iddes, langid, label) VALUES (0,'cat','Preferred records');
+INSERT INTO SelectionsDes (iddes, langid, label) VALUES (1,'cat','Watch list');
+INSERT INTO SelectionsDes (iddes, langid, label) VALUES (0,'chi','Preferred records');
+INSERT INTO SelectionsDes (iddes, langid, label) VALUES (1,'chi','Watch list');
+INSERT INTO SelectionsDes (iddes, langid, label) VALUES (0,'dut','Preferred records');
+INSERT INTO SelectionsDes (iddes, langid, label) VALUES (1,'dut','Watch list');
+INSERT INTO SelectionsDes (iddes, langid, label) VALUES (0,'eng','Preferred records');
+INSERT INTO SelectionsDes (iddes, langid, label) VALUES (1,'eng','Watch list');
+INSERT INTO SelectionsDes (iddes, langid, label) VALUES (0,'fin','Preferred records');
+INSERT INTO SelectionsDes (iddes, langid, label) VALUES (1,'fin','Watch list');
+INSERT INTO SelectionsDes (iddes, langid, label) VALUES (0,'fre','Fiches préférées');
+INSERT INTO SelectionsDes (iddes, langid, label) VALUES (1,'fre','Fiches observées');
+INSERT INTO SelectionsDes (iddes, langid, label) VALUES (0,'ger','Preferred records');
+INSERT INTO SelectionsDes (iddes, langid, label) VALUES (1,'ger','Watch list');
+INSERT INTO SelectionsDes (iddes, langid, label) VALUES (0,'ita','Preferred records');
+INSERT INTO SelectionsDes (iddes, langid, label) VALUES (1,'ita','Watch list');
+INSERT INTO SelectionsDes (iddes, langid, label) VALUES (0,'nor','Preferred records');
+INSERT INTO SelectionsDes (iddes, langid, label) VALUES (1,'nor','Watch list');
+INSERT INTO SelectionsDes (iddes, langid, label) VALUES (0,'pol','Preferred records');
+INSERT INTO SelectionsDes (iddes, langid, label) VALUES (1,'pol','Watch list');
+INSERT INTO SelectionsDes (iddes, langid, label) VALUES (0,'por','Preferred records');
+INSERT INTO SelectionsDes (iddes, langid, label) VALUES (1,'por','Watch list');
+INSERT INTO SelectionsDes (iddes, langid, label) VALUES (0,'rus','Preferred records');
+INSERT INTO SelectionsDes (iddes, langid, label) VALUES (1,'rus','Watch list');
+INSERT INTO SelectionsDes (iddes, langid, label) VALUES (0,'spa','Preferred records');
+INSERT INTO SelectionsDes (iddes, langid, label) VALUES (1,'spa','Watch list');
+INSERT INTO SelectionsDes (iddes, langid, label) VALUES (0,'tur','Preferred records');
+INSERT INTO SelectionsDes (iddes, langid, label) VALUES (1,'tur','Watch list');
+INSERT INTO SelectionsDes (iddes, langid, label) VALUES (0,'vie','Preferred records');
+INSERT INTO SelectionsDes (iddes, langid, label) VALUES (1,'vie','Watch list');
+
+INSERT INTO Settings (name, value, datatype, position, internal) VALUES ('system/userFeedback/lastNotificationDate', '', 0, 1912, 'y');
+INSERT INTO Settings (name, value, datatype, position, internal) VALUES ('metadata/import/restrict', '', 0, 11000, 'y');
+INSERT INTO Settings (name, value, datatype, position, internal) VALUES ('system/xlinkResolver/referencedDeletionAllowed', 'true', 2, 2313, 'n');
+INSERT INTO Settings (name, value, datatype, position, internal) VALUES ('metadata/backuparchive/enable', 'false', 2, 12000, 'n');
+
+INSERT INTO Settings (name, value, datatype, position, internal) VALUES ('system/userSelfRegistration/recaptcha/enable', 'false', 2, 1910, 'n');
+INSERT INTO Settings (name, value, datatype, position, internal) VALUES ('system/userSelfRegistration/recaptcha/publickey', '', 0, 1910, 'n');
+INSERT INTO Settings (name, value, datatype, position, internal) VALUES ('system/userSelfRegistration/recaptcha/secretkey', '', 0, 1910, 'y');
+
+
+UPDATE Settings SET value='3.3.0' WHERE name='system/platform/version';
+UPDATE Settings SET value='SNAPSHOT' WHERE name='system/platform/subVersion';
diff --git a/src/main/webapp/WEB-INF/classes/setup/sql/migrate/v340/migrate-default.sql b/src/main/webapp/WEB-INF/classes/setup/sql/migrate/v340/migrate-default.sql
new file mode 100644
index 0000000..0cdc729
--- /dev/null
+++ b/src/main/webapp/WEB-INF/classes/setup/sql/migrate/v340/migrate-default.sql
@@ -0,0 +1,10 @@
+DELETE FROM Settings WHERE  name = 'metadata/editor/schemaConfig';
+
+--INSERT INTO Settings (name, value, datatype, position, internal) VALUES
+--  ('ui/config', '{"langDetector":{"fromHtmlTag":false,"regexp":"^/[a-zA-Z0-9_-]+/[a-zA-Z0-9_-]+/([a-z]{3})/","default":"eng"},"nodeDetector":{"regexp":"^/[a-zA-Z0-9_-]+/([a-zA-Z0-9_-]+)/[a-z]{3}/","default":"srv"},"mods":{"header":{"enabled":true,"languages":{"eng":"en","dut":"nl","fre":"fr","ger":"ge","kor":"ko","spa":"es","cze":"cz","cat":"ca","fin":"fi","ice":"is", "rus": "ru", "chi": "zh"}},"home":{"enabled":true,"appUrl":"../../srv/{{lang}}/catalog.search#/home"},"search":{"enabled":true,"appUrl":"../../srv/{{lang}}/catalog.search#/search","hitsperpageValues":[10,50,100],"paginationInfo":{"hitsPerPage":20},"facetsSummaryType":"details","facetConfig":[],"facetTabField":"","filters":{},"sortbyValues":[{"sortBy":"relevance","sortOrder":""},{"sortBy":"changeDate","sortOrder":""},{"sortBy":"title","sortOrder":"reverse"},{"sortBy":"rating","sortOrder":""},{"sortBy":"popularity","sortOrder":""},{"sortBy":"denominatorDesc","sortOrder":""},{"sortBy":"denominatorAsc","sortOrder":"reverse"}],"sortBy":"relevance","resultViewTpls":[{"tplUrl":"../../catalog/components/search/resultsview/partials/viewtemplates/grid.html","tooltip":"Grid","icon":"fa-th"}],"resultTemplate":"../../catalog/components/search/resultsview/partials/viewtemplates/grid.html","formatter":{"list":[{"label":"full","url":"../api/records/{{uuid}}/formatters/xsl-view?root=div&view=advanced"}]},"grid":{"related":["parent","children","services","datasets"]},"linkTypes":{"links":["LINK","kml"],"downloads":["DOWNLOAD"],"layers":["OGC"],"maps":["ows"]},"isFilterTagsDisplayedInSearch":false},"map":{"enabled":true,"appUrl":"../../srv/{{lang}}/catalog.search#/map","is3DModeAllowed":true,"isSaveMapInCatalogAllowed":true,"isExportMapAsImageEnabled":true,"bingKey":"AnElW2Zqi4fI-9cYx1LHiQfokQ9GrNzcjOh_p_0hkO1yo78ba8zTLARcLBIf8H6D","storage":"sessionStorage","map":"../../map/config-viewer.xml","listOfServices":{"wms":[],"wmts":[]},"useOSM":true,"context":"","layer":{"url":"http://www2.demis.nl/mapserver/wms.asp?","layers":"Countries","version":"1.1.1"},"projection":"EPSG:3857","projectionList":[{"code":"EPSG:4326","label":"WGS84(EPSG:4326)"},{"code":"EPSG:3857","label":"Googlemercator(EPSG:3857)"}],"disabledTools":{"processes":false,"addLayers":false,"layers":false,"filter":false,"contexts":false,"print":false,"mInteraction":false,"graticule":false,"syncAllLayers":false,"drawVector":false},"searchMapLayers":[],"viewerMapLayers":[]},"editor":{"enabled":true,"appUrl":"../../srv/{{lang}}/catalog.edit","isUserRecordsOnly":false,"isFilterTagsDisplayed":false,"createPageTpl": "../../catalog/templates/editor/new-metadata-horizontal.html"},"admin":{"enabled":true,"appUrl":"../../srv/{{lang}}/admin.console"},"signin":{"enabled":true,"appUrl":"../../srv/{{lang}}/catalog.signin"},"signout":{"appUrl":"../../signout"}}}', 3, 10000, 'n');
+update settings set value = '{"langDetector":{"fromHtmlTag":false,"regexp":"^/[a-zA-Z0-9_-]+/[a-zA-Z0-9_-]+/([a-z]{3})/","default":"eng"},"nodeDetector":{"regexp":"^/[a-zA-Z0-9_-]+/([a-zA-Z0-9_-]+)/[a-z]{3}/","default":"srv"},"mods":{"header":{"enabled":true,"languages":{"eng":"en","dut":"nl","fre":"fr","ger":"ge","kor":"ko","spa":"es","cze":"cz","cat":"ca","fin":"fi","ice":"is", "rus": "ru", "chi": "zh"}},"home":{"enabled":true,"appUrl":"../../srv/{{lang}}/catalog.search#/home"},"search":{"enabled":true,"appUrl":"../../srv/{{lang}}/catalog.search#/search","hitsperpageValues":[10,50,100],"paginationInfo":{"hitsPerPage":20},"facetsSummaryType":"details","facetConfig":[],"facetTabField":"","filters":{},"sortbyValues":[{"sortBy":"relevance","sortOrder":""},{"sortBy":"changeDate","sortOrder":""},{"sortBy":"title","sortOrder":"reverse"},{"sortBy":"rating","sortOrder":""},{"sortBy":"popularity","sortOrder":""},{"sortBy":"denominatorDesc","sortOrder":""},{"sortBy":"denominatorAsc","sortOrder":"reverse"}],"sortBy":"relevance","resultViewTpls":[{"tplUrl":"../../catalog/components/search/resultsview/partials/viewtemplates/grid.html","tooltip":"Grid","icon":"fa-th"}],"resultTemplate":"../../catalog/components/search/resultsview/partials/viewtemplates/grid.html","formatter":{"list":[{"label":"full","url":"../api/records/{{uuid}}/formatters/xsl-view?root=div&view=advanced"}]},"grid":{"related":["parent","children","services","datasets"]},"linkTypes":{"links":["LINK","kml"],"downloads":["DOWNLOAD"],"layers":["OGC"],"maps":["ows"]},"isFilterTagsDisplayedInSearch":false},"map":{"enabled":true,"appUrl":"../../srv/{{lang}}/catalog.search#/map","is3DModeAllowed":true,"isSaveMapInCatalogAllowed":true,"isExportMapAsImageEnabled":true,"bingKey":"AnElW2Zqi4fI-9cYx1LHiQfokQ9GrNzcjOh_p_0hkO1yo78ba8zTLARcLBIf8H6D","storage":"sessionStorage","map":"../../map/config-viewer.xml","listOfServices":{"wms":[],"wmts":[]},"useOSM":true,"context":"","layer":{"url":"http://www2.demis.nl/mapserver/wms.asp?","layers":"Countries","version":"1.1.1"},"projection":"EPSG:3857","projectionList":[{"code":"EPSG:4326","label":"WGS84(EPSG:4326)"},{"code":"EPSG:3857","label":"Googlemercator(EPSG:3857)"}],"disabledTools":{"processes":false,"addLayers":false,"layers":false,"filter":false,"contexts":false,"print":false,"mInteraction":false,"graticule":false,"syncAllLayers":false,"drawVector":false},"searchMapLayers":[],"viewerMapLayers":[]},"editor":{"enabled":true,"appUrl":"../../srv/{{lang}}/catalog.edit","isUserRecordsOnly":false,"isFilterTagsDisplayed":false,"createPageTpl": "../../catalog/templates/editor/new-metadata-horizontal.html"},"admin":{"enabled":true,"appUrl":"../../srv/{{lang}}/admin.console"},"signin":{"enabled":true,"appUrl":"../../srv/{{lang}}/catalog.signin"},"signout":{"appUrl":"../../signout"}}}',  datatype=3, position=10000, internal= 'n' where name='ui/config';
+
+INSERT INTO Settings (name, value, datatype, position, internal) VALUES ('system/metadata/validation/removeSchemaLocation', 'false', 2, 9170, 'n');
+
+UPDATE Settings SET value='3.4.0' WHERE name='system/platform/version';
+UPDATE Settings SET value='SNAPSHOT' WHERE name='system/platform/subVersion';
diff --git a/src/main/webapp/WEB-INF/config-db/jdbc.properties b/src/main/webapp/WEB-INF/config-db/jdbc.properties
new file mode 100644
index 0000000..913853e
--- /dev/null
+++ b/src/main/webapp/WEB-INF/config-db/jdbc.properties
@@ -0,0 +1,45 @@
+#
+# Copyright (C) 2001-2016 Food and Agriculture Organization of the
+# United Nations (FAO-UN), United Nations World Food Programme (WFP)
+# and United Nations Environment Programme (UNEP)
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or (at
+# your option) any later version.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
+#
+# Contact: Jeroen Ticheler - FAO - Viale delle Terme di Caracalla 2,
+# Rome - Italy. email: geonetwork@osgeo.org
+#
+
+jdbc.username=${overrides.jdbc.username}
+jdbc.password=${overrides.jdbc.password}
+jdbc.database=${overrides.jdbc.database}
+jdbc.host=localhost
+jdbc.port=5432
+jdbc.basic.removeAbandoned=true
+jdbc.basic.removeAbandonedTimeout=120
+jdbc.basic.logAbandoned=true
+jdbc.basic.maxActive=33
+jdbc.basic.maxIdle=${jdbc.basic.maxActive}
+jdbc.basic.initialSize=${jdbc.basic.maxActive}
+jdbc.basic.maxWait=200
+jdbc.basic.testOnBorrow=true
+jdbc.basic.timeBetweenEvictionRunsMillis=10000
+jdbc.basic.minEvictableIdleTimeMillis=1800000
+jdbc.basic.testWhileIdle=true
+jdbc.basic.numTestsPerEvictionRun=3
+jdbc.basic.poolPreparedStatements=true
+jdbc.basic.maxOpenPreparedStatements=1200
+jdbc.basic.validationQuery=SELECT 1
+jdbc.basic.defaultReadOnly=false
+jdbc.basic.defaultAutoCommit=false
diff --git a/src/main/webapp/WEB-INF/config-gui.xml b/src/main/webapp/WEB-INF/config-gui.xml
new file mode 100644
index 0000000..fecefbb
--- /dev/null
+++ b/src/main/webapp/WEB-INF/config-gui.xml
@@ -0,0 +1,315 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ Define here all GUI specific parameters to be used in XSL stylesheet.
+ Each parameter could be retrieved using /root/gui/config/your-parameter-key xpath.
+ Updating a parameter don't need a restart (but need an XSL cache refresh if XSL caching is on).
+-->
+<config>
+ 
+ <!-- Client configuration in order to redirect to default UI 
+  (ie. main.home service) or to another custom client.
+  
+  For widget mode:
+  * parameters attribute is appended to URL. Use it to define a default map extent for example or change default language.
+  * createParameter attribute is appended to URL when the application is called from the administration > New metadata menu.
+  * stateId attribute is the identifier of the search form (if stateful) in the application. It is used to build quick links section in the administration.
+ -->
+ 
+    
+    <client type="redirect" widget="true" url="catalog.search" createParameter="#create" stateId="s"/>
+ 
+ <!-- Classic interface using the xslt layout-templates -->
+ <!-- <client type="redirect" widget="false" url="main.home" parameters="" stateId="" createParameter=""/> -->
+ <!-- Widget client with tabbed interface (metadata documents open in tab) -->
+ <!--<client type="redirect" widget="true" url="tabsearch" createParameter="#create" stateId="s"/>-->
+ <!-- Widget client with sliding panel interface (metadata records open in a window) -->
+ <!--<client type="redirect" widget="true" url="find" parameters="" createParameter="#create" stateId="s"/>-->
+ <!-- As above but with extra parameters set: custom extent in debug mode in french --> 
+ 
+ <!-- Comment out languages to hide them
+ from language selector. -->
+ <languages>
+     <ara/>
+     <cat/>
+     <chi/>
+     <dut/>
+     <eng/>
+     <fin/>
+     <fre/>
+     <ger/>
+     <ita/>
+     <nor/>
+     <pol/>
+     <por/>
+     <rus/>
+     <spa/>
+     <tur/>
+ </languages>
+ 
+ 
+ <map>
+  <!-- Configuration for map displayed in metadata sheet
+  (view or edit mode). -->
+  <metadata>
+   <width>100%</width>
+   <height>300px</height>
+  </metadata>
+  <proj>
+   <!-- List all needed projections for view and editing maps.
+    If more than one projection is available, bounding box
+    coordinates will be displayed in the list of available projection.
+    
+    Default attribute define the default projection to use. Do
+    not define more than one default projection.
+    
+   -->
+   <crs code="EPSG:4326" default="1" edit="1"/><!-- WGS84 is mandatory because ISO store it by default in LatLong-->
+      <crs code="EPSG:900913" def="+proj=merc +lon_0=0 +k=1 +x_0=0 +y_0=0 +ellps=WGS84 +datum=WGS84 +units=m +no_defs "/>
+      <!--
+       <crs code="EPSG:4258" def="+proj=longlat +ellps=GRS80 +no_defs"/>
+       <crs code="EPSG:3786" edit="1" def="+proj=eqc +lat_ts=0 +lon_0=0 +x_0=0 +y_0=0 +a=6371007 +b=6371007 +units=m +no_defs "></crs>
+   <crs code="EPSG:27572" edit="1" def="+proj=lcc +lat_1=46.8 +lat_0=46.8 +lon_0=0 +k_0=0.99987742 +x_0=600000 +y_0=2200000 +a=6378249.2 +b=6356515 +towgs84=-168,-60,320,0,0,0,0 +pm=paris +units=m +no_defs"/>
+   -->
+  </proj>
+
+  <!-- Setting used in the new UI (html5ui) to configure the layers in the maps. TODO: Use also in classic UI
+
+       - If this setting is true OSM is used in the map viewers.
+       - If this setting is false, html5ui uses the layers configured in /geonetwork/maps/mapviewer.wmc
+       You can configure your custom WMS layers in that file.
+  -->
+  <osm_map>true</osm_map>
+ </map>
+
+
+ <!-- Configuration for small map search 
+    mapSearch/@options:     OpenLayers options hash as expected in new OpenLayers.Map(div, options) 
+       
+    layers/layer: 
+        server      url of the server
+        tocName     layer name in map
+        params      OpenLayers params hash as expected in new OpenLayers.Layer.WMS(name, url, params, options)
+        options     OpenLayers options hash as expected in new OpenLayers.Layer.WMS(name, url, params, options)
+ -->
+  <mapSearch options="{projection: 'EPSG:4326', maxExtent: new OpenLayers.Bounds(-180,-90,180,90), units: 'degrees', restrictedExtent: new OpenLayers.Bounds(-180,-90,180,90)}">
+  <layers>
+    <layer server="http://localhost:8080/geoserver/wms" tocName="Borders"  params="{layers: 'gn:ne_50m_boundary_da,gn:ne_50m_boundary_lines_land,gn:ne_50m_coastline', transparent: 'true', format: 'image/png'}"  options="{}" />
+    <layer server="http://localhost:8080/geoserver/wms" tocName="Ortophoto" params="{layers: 'gn:world', format: 'image/jpeg'}" options="{isBaseLayer: true}" />
+  </layers>
+ </mapSearch>
+ 
+  <!-- Configuration for map viewer
+    mapViewer/@options:     OpenLayers options hash as expected in new OpenLayers.Map(div, options)
+
+    proj/crs:       Projections used in mapViewer
+        code        CSR code
+        default     Indicates the default CRS (values: 0, 1)
+        
+    layers/layer: 
+        server      url of the server
+        tocName     layer name in map
+        params      OpenLayers params hash as expected in new OpenLayers.Layer.WMS(name, url, params, options)
+        options     OpenLayers options hash as expected in new OpenLayers.Layer.WMS(name, url, params, options)
+ -->
+  <mapViewer options="{projection: 'EPSG:4326', maxExtent: new OpenLayers.Bounds(-180,-90,180,90), units: 'degrees', restrictedExtent: new OpenLayers.Bounds(-180,-90,180,90)}">
+  <layers>
+    <layer server="http://localhost:8080/geoserver/wms" tocName="Borders"  params="{layers: 'gn:ne_50m_boundary_da,gn:ne_50m_boundary_lines_land,gn:ne_50m_coastline', transparent: 'true', format: 'image/png'}"  options="{}" />
+    <layer server="http://localhost:8080/geoserver/wms" tocName="Ortophoto" params="{layers: 'gn:world', format: 'image/jpeg'}" options="{isBaseLayer: true}" />
+  </layers>
+  <scales values="[7500000, 5000000, 2500000,  1000000, 750000, 500000, 250000, 100000, 75000, 50000, 25000, 10000, 7500, 5000, 2500, 1000]" />
+  <!--scales values="[]" /-->
+  <proj>
+    <crs code="EPSG:4326" default="1" name="WGS84 (lat/lon)" />
+  </proj>  
+  <servers>
+    <server name="NASA JPL OneEarth Web Mapping Server (WMS)" url="http://wms.jpl.nasa.gov/wms.cgi?" />
+    <server name="NASA Earth Observations (NEO) WMS" url="http://neowms.sci.gsfc.nasa.gov/wms/wms?" />
+    <server name="DEMIS World Map Server" url="http://www2.demis.nl/mapserver/wms.asp?" />
+    <server name="Geoserver" url="http://localhost:8080/geoserver/wms?" />
+  </servers>
+ </mapViewer>
+ 
+  <!-- 
+    Google translation service (http://code.google.com/apis/language/translate/overview.html):
+    Set this parameter to "1" to activate google translation service.
+    Google AJAX API Terms of Use http://code.google.com/apis/ajaxlanguage/terms.html
+    
+    WARNING: "The Google Translate API has been officially deprecated as of May 26, 2011...
+    the number of requests you may make per day will be limited and 
+    the API will be shut off completely on December 1, 2011".
+  -->
+ <editor-google-translate>0</editor-google-translate>
+ 
+ 
+ <!-- Metadata relation information
+ Comment out this element to turn off metadata relation display in metadata
+ edit and view mode. 
+ -->
+ <editor-metadata-relation/>
+ <!-- Display error only when loading validation report 
+  <editor-validation-errors-only-on-load/>-->
+ 
+  <!-- Display the geopublisher option for all updloaded files-->
+ 	<editor-geopublisher/>
+ 
+ 
+ <!-- Display metadata tabs in edit and view mode. 
+  ISO and INSPIRE view only available for ISO19139 records.
+  Default view is always visible.
+  
+  Use the flat attribute in order to display elements in simple mode 
+  (ie. could not access to all elements defined in the schema)
+  
+  Use the default attribute in order to use this view in search result panel.
+  It is recommended to use the simple or inspire view because user will not
+  have access to section tab switcher.
+
+  Important:
+    * Visibility of views is now configured in GUI, inside System configuration > Metadata views
+    * Extra/advanced attributes of views like flat or other specific attributes (see INSPIRE panel) are configured in this file
+
+ -->
+ <metadata-tab>
+   <!--   In flat mode, define custom configuration for a view:
+     * ancestorException: define which non existing children of the exception must be displayed (eg. use spatialResolution 
+     in order to be able to add spatialResolution in this view mode. spatialResolution is a complex element which provide a 
+     selection)
+     * exception: define which non existing element must be displayed (eg. pointOfContact)
+     * flatException: define which element to not display using flat mode (eg. topicCategory will allow to remove
+     or add element of that type even in flat mode but the element will be boxed).
+    -->
+  <simple flat="true">
+		<exception schema="sensorML" for="component,input,onlineResource,electronicMailAddress,voice,facsimile,deliveryPoint,coordinate,input,date"/>
+	</simple>
+  <advanced/><!-- This view should not be removed as this is the only view to be able
+  to edit all elements defined in a schema. -->
+  <iso/>
+  <!-- This view display all INSPIRE recommended elements
+  in a view.  -->
+  <inspire flat="true">
+   	 <ancestorException schema="iso19139" for="EX_TemporalExtent,CI_Date,spatialResolution"/>
+     <exception schema="iso19139" for="result,resourceConstraints,pointOfContact,hierarchyLevel,couplingType,operatesOn,distributionInfo,distributionFormat,onLine,identifier,language,characterSet,topicCategory,serviceType,descriptiveKeywords,extent,temporalElement,geographicElement,lineage"/>
+  </inspire>
+  <xml/>
+ </metadata-tab>
+
+<!-- Define the default selection for metadata element substitutions in the editor -->
+ <editor-default-substitutions>
+    <!-- Default for gmd:language from 2 alternatives: gco:CharacterString, gmd:LanguageCode -->
+    <element name="gmd:language" default="gmd:LanguageCode" />
+ </editor-default-substitutions>
+
+ <!-- Add an option to be able to toggle all fieldsets
+  in view and edit mode. -->
+ <metadata-view-toggleTab/>
+ <metadata-show showMapPanel="true"/>
+ 
+ <!-- Actions configuration
+ -->
+ <editor-actions>
+  <!-- Action to allow editors to compute bounding box from keyword analysis. -->
+  <compute-extent-from-keyword/> 
+ </editor-actions>
+ 
+ 
+ 
+ 
+  <!-- Subtemplate configuration.
+  
+  Subtemplate only works with the GUI widget client interface.
+  The configuration allows to define the types of supported subtemplate
+  and their parent (where they can be inserted). 
+  Subtemplate are only supported for iso19139 or profile records.
+  -->
+  
+  <editor-subtemplate>
+    <mapping>
+      <subtemplate type="gmd:CI_ResponsibleParty">
+        <parent id="gmd:pointOfContact"/>
+        <parent id="gmd:userContactInfo"/>
+        <parent id="gmd:distributorContact"/>
+        <parent id="gmd:citedResponsibleParty"/>
+        <parent id="gmd:contact"/>
+        <!--
+          TODO : gmd:source could be find in
+          LI_Lineage an in MD_ExtendedElementInformation_Type
+          <parent id="gmd:source"/>
+          It's not a CI_ResponsibleParty in LI_Lineage
+        -->
+        <parent id="gmd:processor"/>
+        <parent id="gmd:responsibleParty"/>
+      </subtemplate>
+      <subtemplate type="gmd:EX_Extent">
+        <parent id="gmd:extent"/>
+      </subtemplate>
+      <subtemplate type="gmd:MD_Keywords">
+        <parent id="gmd:descriptiveKeywords"/>
+      </subtemplate>
+      <subtemplate type="gmd:DQ_FormatConsistency">
+        <parent id="gmd:report"/>
+      </subtemplate>
+    </mapping>
+  </editor-subtemplate>
+
+ <!-- Proxy URL to use for XHR. 
+ Check that the proxy could query allowed hosts.
+ <proxy-url>/cgi-bin/proxy.cgi</proxy-url>
+ -->
+ <proxy-url>../../proxy?</proxy-url>    
+ 
+ <!-- Display or not category information : Categories are stored in the database and a metadata
+ record could be linked to one or more categories. -->
+ <category>
+  <!-- 
+   To disable that feature
+   comment this out. This will hide categories in search criteria, search results, 
+   metadata editing and administration interface.
+  -->
+  <admin/>
+  
+  <!-- Display category as icon in search results. Categories could be :
+    * define from category table or
+    * define based on schema : iso19139 could be service or dataset and iso19110 is feature catalogue (internal category)
+  
+  mode attribute could be:
+   * all : all categories
+   * db : only from category table
+   * internal : only internal category
+  <display-in-search mode="db"/>
+  -->
+  
+ </category>
+
+ <!-- Display rating feature in search results panel. -->
+ <rating/>
+
+ <search>
+  <!-- Display or not keyword selection panel in advanced search panel 
+   <keyword-selection-panel/> 
+  -->
+	<!-- Optional user interface mechanism for editor - not ready yet
+		<use-separate-window-for-editor-viewer/>
+	-->
+	<!-- Optional user interface mechanism - displays banner functions using
+	     drop down modal box which overlays the current web page instead of 
+			 replacing it.
+			 Banner functions are 'Administration', 'Feedback', 'Links' etc
+			 The idea here is that displaying these light-weight functions in a 
+			 modal box means that the main page is not disturbed
+		<use-modal-box-for-banner-functions/>
+	-->
+	<!-- Show Remote/Distributed search tab - enables distributed/remote search
+	     using Z3950 - note that if you query the Australian Z3950 sites, you 
+			 will need to add the anzmeta plugin schema to GeoNetwork using the 
+			 add schema/profile function on the administration page. If you want to
+			 do this, you should add the schema from a URL as follows:
+			 http://geonetwork.globaldial.com/testdownloads/anzmeta.zip
+		<show-remote-search/> 
+	-->
+ </search>
+	
+	
+  <repository>
+    <thesaurus>http://raw.github.com/geonetwork/util-repository/master/thesaurus.xml</thesaurus>
+  </repository>
+</config>
diff --git a/src/main/webapp/WEB-INF/config-lucene.xml b/src/main/webapp/WEB-INF/config-lucene.xml
new file mode 100644
index 0000000..5eb1069
--- /dev/null
+++ b/src/main/webapp/WEB-INF/config-lucene.xml
@@ -0,0 +1,373 @@
+<?xml version="1.0"?>
+<!--
+  ~ Copyright (C) 2001-2016 Food and Agriculture Organization of the
+  ~ United Nations (FAO-UN), United Nations World Food Programme (WFP)
+  ~ and United Nations Environment Programme (UNEP)
+  ~
+  ~ This program is free software; you can redistribute it and/or modify
+  ~ it under the terms of the GNU General Public License as published by
+  ~ the Free Software Foundation; either version 2 of the License, or (at
+  ~ your option) any later version.
+  ~
+  ~ This program is distributed in the hope that it will be useful, but
+  ~ WITHOUT ANY WARRANTY; without even the implied warranty of
+  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+  ~ General Public License for more details.
+  ~
+  ~ You should have received a copy of the GNU General Public License
+  ~ along with this program; if not, write to the Free Software
+  ~ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
+  ~
+  ~ Contact: Jeroen Ticheler - FAO - Viale delle Terme di Caracalla 2,
+  ~ Rome - Italy. email: geonetwork@osgeo.org
+  -->
+
+<config>
+  <index>
+    <!--
+      The amount of memory to be used for buffering documents in memory.
+      48MB seems to be plenty for running at least two long
+       indexing jobs (eg. importing 20,000 records) and keeping disk
+       activity for lucene index writing to a minimum.
+    -->
+    <RAMBufferSizeMB>48.0d</RAMBufferSizeMB>
+
+    <!-- Determines how often segment indices are merged by addDocument(). -->
+    <MergeFactor>10</MergeFactor>
+
+    <!-- Default Lucene version to use (mainly for Analyzer creation). -->
+    <luceneVersion>4_9</luceneVersion>
+    <!-- How often to check if a commit is required -->
+    <commitInterval>1000</commitInterval>
+    <!-- If true then NRTManagerReopenThread will control how often the reader are reopened.
+    	 If false then the reader will be opened everytime they are obtained.  -->
+    <useNRTManagerReopenThread>true</useNRTManagerReopenThread>
+    <!--
+    	Only applies if useNRTManagerReopenThread is true
+    	Maximum time until a new  reader must be opened; this sets the upper bound
+    	on how slowly reopens may occur
+    	See NRTManagerReopenThread -->
+    <nrtManagerReopenThreadMaxStaleSec>5</nrtManagerReopenThreadMaxStaleSec>
+    <!--
+    	 Only applies if useNRTManagerReopenThread is true
+    	 Minimum time until a new reader can be opened; this sets the lower bound
+         on how quickly reopens may occur, when a caller
+         is waiting for a specific indexing change to become visible
+         See NRTManagerReopenThread-->
+    <nrtManagerReopenThreadMinStaleSec>0.1</nrtManagerReopenThreadMinStaleSec>
+  </index>
+
+
+  <!-- Search parameters are applied at search time and does not need
+    an index rebuild in order to be take into account. -->
+  <search>
+    <!-- Score parameters. Turning these parameters to true, affects performance. -->
+    <!-- Set track doc score to true if score needs to be displayed in results using
+        geonet:info/score element -->
+    <trackDocScores>false</trackDocScores>
+    <trackMaxScore>false</trackMaxScore>
+
+    <!-- Not used because no Scorer defined -->
+    <docsScoredInOrder>false</docsScoredInOrder>
+
+    <!--
+            By default Lucene compute score according to search criteria
+            and the corresponding result set and their index content.
+            In case of search with no criteria, Lucene will return top docs
+            in index order (because none are more relevant than others).
+
+            In order to change the score computation, a boost function could
+            be define. Boosting query needs to be loaded in classpath.
+            * RecencyBoostingQuery will promote recently modified documents
+    -->
+
+    <!--
+      <boostQuery name="org.fao.geonet.kernel.search.function.RecencyBoostingQuery">
+      <Param name="multiplier" type="double" value="2.0"/>
+      <Param name="maxDaysAgo" type="int" value="365"/>
+      <Param name="dayField" type="java.lang.String" value="_changeDate"/>
+      </boostQuery>
+     -->
+
+
+    <!--
+      List of fields to dump when using q service. Fields must be stored in the index.
+
+	  The attribute 'multilingualSortField' flag fields that are used for sorting also may have translations.
+	  This is the solution for http://trac.osgeo.org/geonetwork/ticket/1112
+	  This is an issue where searching by one field and sorting by another will result
+	  in an incorrect sorting. The reason is that sorted field may have multiple translations.
+	  If the document found is one language (say french) and the UI language is english then
+	  then the french translation will be used for sorting even though when the metadata
+	  is viewed by user the metadata will be in english.
+
+	  The following fields are the sort field that can have translations and therefore
+	  need special care when indexing and sorting.
+	   -->
+    <dumpFields>
+      <field name="_isTemplate" tagName="isTemplate"/>
+      <field name="_isHarvested" tagName="isHarvested"/>
+      <field name="_popularity" tagName="popularity"/>
+      <field name="_rating" tagName="rating"/>
+      <field name="_displayOrder" tagName="displayOrder"/>
+      <field name="_view" tagName="view"/>
+      <field name="_notify" tagName="notify"/>
+      <field name="_download" tagName="download"/>
+      <field name="_dynamic" tagName="dynamic"/>
+      <field name="_featured" tagName="featured"/>
+      <field name="_owner" tagName="owner"/>
+      <field name="_userinfo" tagName="userinfo"/>
+      <field name="_ownername" tagName="ownername"/>
+      <field name="_cat" tagName="category"/>
+      <field name="topicCat" tagName="topicCat"/>
+      <field name="inspirethemewithac" tagName="inspirethemewithac"/>
+      <field name="_valid" tagName="valid"/>
+      <field name="_valid_schematron-rules-geonetwork" tagName="valid_schematron-rules-geonetwork"/>
+      <field name="_valid_schematron-rules-iso" tagName="valid_schematron-rules-iso"/>
+      <field name="_valid_schematron-rules-inspire" tagName="valid_schematron-rules-inspire"/>
+      <field name="_valid_xsd" tagName="valid_xsd"/>
+      <field name="_selected" tagName="selected"/>
+      <field name="_source" tagName="source"/>
+      <field name="_status" tagName="mdStatus"/>
+      <field name="_edit" tagName="edit"/>
+      <field name="_root" tagName="root"/>
+      <field name="_title" tagName="title" multilingualSortField="true"/>
+      <field name="_docLocale" tagName="docLocale"/>
+      <field name="_locale" tagName="_locale"/>
+      <field name="_defaultTitle" tagName="defaultTitle"/>
+      <field name="createDate" tagName="creationDate"/>
+      <field name="revisionDate" tagName="revisionDate"/>
+      <field name="publicationDate" tagName="publicationDate"/>
+      <field name="abstract" tagName="abstract" multilingualSortField="true"/>
+      <field name="_defaultAbstract" tagName="defaultAbstract"/>
+      <field name="keyword" tagName="keyword"/>
+      <field name="keywordGroup" tagName="keywordGroup"/>
+      <field name="parentUuid" tagName="parentId"/>
+      <field name="type" tagName="type"/>
+      <field name="identifier" tagName="identifier"/>
+      <field name="image" tagName="image"/>
+      <field name="link" tagName="link"/>
+      <field name="format" tagName="format"/>
+      <field name="denominator" tagName="denominator"/>
+      <field name="resolution" tagName="resolution"/>
+      <field name="crs" tagName="crs"/>
+      <field name="crsDetails" tagName="crsDetails"/>
+      <field name="credit" tagName="credit"/>
+      <field name="cl_status" tagName="status"/>
+      <field name="cl_status_text" tagName="status_text"/>
+      <field name="updateFrequency" tagName="updateFrequency"/>
+      <field name="lineage" tagName="lineage"/>
+      <field name="responsibleParty" tagName="responsibleParty"/>
+      <field name="MD_LegalConstraintsOtherConstraints" tagName="legalConstraints"/>
+      <field name="MD_LegalConstraintsUseLimitation" tagName="legalConstraints"/>
+      <field name="MD_SecurityConstraintsUseLimitation" tagName="securityConstraints"/>
+      <field name="MD_ConstraintsUseLimitation" tagName="resourceConstraints"/>
+      <field name="cl_classification_text" tagName="classification_text"/>
+      <field name="cl_maintenanceAndUpdateFrequency_text"
+             tagName="maintenanceAndUpdateFrequency_text"/>
+      <field name="cl_spatialRepresentationType_text" tagName="spatialRepresentationType_text"/>
+      <field name="datasetLang" tagName="datasetLang"/>
+      <field name="mdLanguage" tagName="mdLanguage"/>
+      <field name="serviceType" tagName="serviceType"/>
+      <field name="tempExtentBegin" tagName="tempExtentBegin"/>
+      <field name="tempExtentEnd" tagName="tempExtentEnd"/>
+      <field name="geoBox" tagName="geoBox"/>
+      <field name="extentDesc" tagName="geoDesc"/>
+      <field name="geoDescCode" tagName="geoDescCode"/>
+      <field name="_indexingError" tagName="idxError"/>
+      <field name="_indexingErrorMsg" tagName="idxMsg"/>
+      <field name="_op0" tagName="publishedForGroup"/>
+      <field name="_groupOwner" tagName="groupOwner"/>
+      <field name="_logo" tagName="logo"/>
+      <field name="standardName" tagName="standardName"/>
+      <field name="_groupWebsite" tagName="groupWebsite"/>
+      <field name="attributeTable" tagName="attributeTable"/>
+    </dumpFields>
+  </search>
+
+
+  <!-- Default analyzer to use for all fields not defined in the fieldSpecificAnalyzer section.
+    If not set, GeoNetwork use a default per field analyzer (ie. fieldSpecificAnalyzer is not
+    take into account). The default analyzer is defined in SearchManager.
+
+    Example:
+    org.apache.lucene.analysis.fr.FrenchAnalyzer
+
+  <defaultAnalyzer name="org.apache.lucene.analysis.standard.StandardAnalyzer">
+  <Param name="version" type="org.apache.lucene.util.Version"/>
+  </defaultAnalyzer>
+  -->
+  <defaultAnalyzer name="org.fao.geonet.kernel.search.GeoNetworkAnalyzer"/>
+  <!-- TODO: Add a language specific analyzer according to:
+     * metadata language
+     * metadata elements language (ie. PT_FreeText elements)
+  -->
+
+
+  <!-- Field analyzer
+    Define here specific analyzer for each fields stored in the index
+
+    For example adding a different analyzer for any (ie. full text search)
+    could be better than a standard analyzer which has a particular way of
+    creating tokens.
+
+    In that situation, when field is "mission AD-T" is tokenized to "mission" "ad" & "t"
+    using StandardAnalyzer. A WhiteSpaceTokenizer tokenized to "mission" "AD-T"
+    which could be better in some situation. But when field is "mission AD-34T" is tokenized
+    to "mission" "ad-34t" using StandardAnalyzer due to number.
+
+    doeleman: UUID must be case insensitive, as its parts are hexadecimal numbers which
+    are not case sensitive. StandardAnalyzer is recommended for UUIDS.
+
+    A list of analyzer is available http://lucene.apache.org/java/2_4_0/api/org/apache/lucene/analysis/Analyzer.html
+    Commons analyzer:
+    * org.apache.lucene.analysis.standard.StandardAnalyzer
+    * org.apache.lucene.analysis.WhitespaceAnalyzer
+    * org.apache.lucene.analysis.SimpleAnalyzer
+    * org.fao.geonet.kernel.search.GeoNetworkAnalyzer (recommended for wildcard query support)
+
+    The analyzer must be in the classpath.
+
+  -->
+  <fieldSpecificAnalyzer>
+    <Field name="_uuid" analyzer="org.fao.geonet.kernel.search.GeoNetworkAnalyzer"/>
+    <Field name="standardName" analyzer="org.apache.lucene.analysis.core.KeywordAnalyzer"/>
+    <Field name="parentUuid" analyzer="org.fao.geonet.kernel.search.GeoNetworkAnalyzer"/>
+    <Field name="operatesOn" analyzer="org.fao.geonet.kernel.search.GeoNetworkAnalyzer"/>
+    <Field name="operatesOnIdentifier" analyzer="org.fao.geonet.kernel.search.GeoNetworkAnalyzer"/>
+    <Field name="hassource" analyzer="org.fao.geonet.kernel.search.GeoNetworkAnalyzer"/>
+    <Field name="hasfeaturecat" analyzer="org.fao.geonet.kernel.search.GeoNetworkAnalyzer"/>
+    <Field name="any" analyzer="org.apache.lucene.analysis.fr.FrenchAnalyzer">
+      <Param name="version" type="org.apache.lucene.util.Version"/>
+    </Field>
+    
+    <!--
+    <Field name="any" analyzer="org.fao.geonet.kernel.search.GeoNetworkAnalyzer"/>
+
+    <Field name="any" analyzer="org.apache.lucene.analysis.standard.StandardAnalyzer">
+      <Param name="version" type="org.apache.lucene.util.Version"/>
+      <Param name="stopWords" type="java.io.File" value="/path/to/resources/stopwords/en.txt"/>
+    </Field>
+    -->
+    <Field name="subject" analyzer="org.apache.lucene.analysis.core.KeywordAnalyzer"/>
+    <Field name="_cat" analyzer="org.apache.lucene.analysis.core.KeywordAnalyzer"/>
+
+
+    <Field name="keyword" analyzer="org.apache.lucene.analysis.core.KeywordAnalyzer"/>
+    <Field name="inspirerelated" analyzer="org.apache.lucene.analysis.core.KeywordAnalyzer"/>
+    <Field name="_groupPublished" analyzer="org.apache.lucene.analysis.core.KeywordAnalyzer"/>
+    <Field name="_source" analyzer="org.apache.lucene.analysis.core.KeywordAnalyzer"/>
+
+  </fieldSpecificAnalyzer>
+
+  <fieldSpecificSearchAnalyzer>
+    <!-- Define here analyzers to be overriden from fieldSpecificAnalyzer.
+      By default, indexing and searching per field analyzers are the same.
+
+      In some case, an analyzer could be applied at indexing and another
+      at searching time. For example when using a SynonymAnalyzer. When adding
+      Londres, Londinium, Londona for London at indexing time, then there is no
+      need to add those synonyms for search if users search for Londres, it will match.
+      We only need synonym expansion during indexing or during searching, not both.
+    -->
+  </fieldSpecificSearchAnalyzer>
+
+  <!-- Document boosting configuration.
+
+    Document boosting allows to define custom boost factor for a document
+    or for document fields at index time which
+    will be use for score computation at search time.
+
+    Note: Do not abuse of document boost
+    because it may lead to promote too much some kind of documents
+    or the contrary and make end-user not so confident of your search engine!
+
+  -->
+  <!-- Boosting factor for fields. This parameter will impact queries using OR operator.
+  <fieldBoosting>
+    <Field name="title" boost="1.5F"/>
+  </fieldBoosting>
+
+  It could be relevant to also remove some field from scoring using this:
+   * If not, user privileges will be take into account to compute the score.
+  -->
+  <fieldBoosting>
+    <Field name="_op0" boost="0.0F"/>
+    <Field name="_op1" boost="0.0F"/>
+    <Field name="_op2" boost="0.0F"/>
+    <Field name="_dummy" boost="0.0F"/>
+    <Field name="_isTemplate" boost="0.0F"/>
+    <Field name="_owner" boost="0.0F"/>
+  </fieldBoosting>
+
+
+  <!-- Boosting factor for document based on document values.
+    Parameters:
+    * fields: A comma separated value of fields.
+    * values: A comma separated value of value for each field. Use NOTNULL to check any field values.
+    * boost: A comma separated value of boost factor for each field (Float).
+
+    "The boost factor values you should use depend on what you’re trying to achieve;
+    you’ll need to do some experimentation and
+    tuning to achieve the desired effect." source: Lucene In Action
+
+  <boostDocument name="org.fao.geonet.kernel.search.function.ImportantDocument">
+    <!- - Example to promote series and not promote records part of a series - ->
+    <Param name="fields" type="java.lang.String" value="type,parentUuid"/>
+    <Param name="values" type="java.lang.String" value="series,NOTNULL"/>
+    <Param name="boosts" type="java.lang.String" value=".1F,-.3F"/>
+    <!- - Example to promote series and service and records with keyword containing elevation
+    <Param name="fields" type="java.lang.String" value="type,type,keyword"/>
+    <Param name="values" type="java.lang.String" value="series,service,Elevation"/>
+    <Param name="boosts" type="java.lang.String" value=".1F,-.3F,.4F"/>- ->
+  </boostDocument>
+  -->
+
+  <!-- All Lucene fields that are tokenized must be kept here because it
+       is impossible unfortunately from Lucene API to work out which fields are
+        tokenized and which aren't unless we read documents and we may not have
+        an index to do this on so since most fields are not tokenized we
+        keep a list of tokenized fields here
+   -->
+  <tokenized>
+    <Field name="any"/>
+    <Field name="anylight"/>
+    <Field name="abstract"/>
+    <Field name="title"/>
+    <Field name="altTitle"/>
+    <Field name="keywordType"/>
+    <!--<Field name="orgName"/>-->
+    <Field name="specificationTitle"/>
+    <Field name="levelName"/>
+    <Field name="subject"/>
+  </tokenized>
+
+  <!-- All Lucene numeric fields.
+    Use of numeric field will increase index size.
+    It could give better search results for numeric values.
+
+    Type attribute : int (default), double, long, float
+    Precision attribute : see NumericUtils.PRECISION_STEP_DEFAULT
+  -->
+  <numeric>
+    <Field name="denominator"/>
+    <Field name="northBL" type="double"/>
+    <Field name="eastBL" type="double"/>
+    <Field name="southBL" type="double"/>
+    <Field name="westBL" type="double"/>
+  </numeric>
+
+  <!-- List all of the lucene field names which will have similarity applied to them
+       To disable set enabled to false.
+
+       If enabled is false or not present then similarity will be applied to all fields (except some special case instances)
+  -->
+  <fuzzyMatching enabled="true">
+    <Field name="any"/>
+    <Field name="anylight"/>
+    <Field name="title"/>
+    <Field name="altTitle"/>
+    <Field name="abstract"/>
+    <Field name="specificationTitle"/>
+  </fuzzyMatching>
+</config>
diff --git a/src/main/webapp/WEB-INF/config-node/srv.xml b/src/main/webapp/WEB-INF/config-node/srv.xml
new file mode 100644
index 0000000..9b7b82e
--- /dev/null
+++ b/src/main/webapp/WEB-INF/config-node/srv.xml
@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+  ~ Copyright (C) 2001-2016 Food and Agriculture Organization of the
+  ~ United Nations (FAO-UN), United Nations World Food Programme (WFP)
+  ~ and United Nations Environment Programme (UNEP)
+  ~
+  ~ This program is free software; you can redistribute it and/or modify
+  ~ it under the terms of the GNU General Public License as published by
+  ~ the Free Software Foundation; either version 2 of the License, or (at
+  ~ your option) any later version.
+  ~
+  ~ This program is distributed in the hope that it will be useful, but
+  ~ WITHOUT ANY WARRANTY; without even the implied warranty of
+  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+  ~ General Public License for more details.
+  ~
+  ~ You should have received a copy of the GNU General Public License
+  ~ along with this program; if not, write to the Free Software
+  ~ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
+  ~
+  ~ Contact: Jeroen Ticheler - FAO - Viale delle Terme di Caracalla 2,
+  ~ Rome - Italy. email: geonetwork@osgeo.org
+  -->
+
+<beans xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+       default-lazy-init="true"
+       xmlns="http://www.springframework.org/schema/beans"
+       xsi:schemaLocation="
+        http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">
+
+  <import resource="classpath*:/config-spring-geonetwork.xml"/>
+  <import resource="../config-db/database_migration.xml"/>
+
+  <bean id="nodeInfo" class="org.fao.geonet.NodeInfo">
+    <property name="id" value="srv"/>
+    <property name="defaultNode" value="true"/>
+  </bean>
+
+  <!-- Uncomment the database configuration you need to use -->
+  <!-- <import resource="../config-db/h2.xml"/>-->
+  <!--<import resource="../config-db/jndi-postgres-postgis.xml"/> -->
+  <!--<import resource="../config-db/oracle.xml"/>-->
+  <!--<import resource="../config-db/mysql.xml"/> -->
+  <!--<import resource="../config-db/db2.xml"/> -->
+  <import resource="../config-db/postgres.xml"/>
+  <!--<import resource="../config-db/sqlserver.xml"/> -->
+  <!--<import resource="../config-db/postgres-postgis.xml"/> -->
+</beans>
diff --git a/src/main/webapp/WEB-INF/config-overrides-prod.xml b/src/main/webapp/WEB-INF/config-overrides-prod.xml
new file mode 100644
index 0000000..31aaf72
--- /dev/null
+++ b/src/main/webapp/WEB-INF/config-overrides-prod.xml
@@ -0,0 +1,43 @@
+<!--
+  ~ Copyright (C) 2001-2016 Food and Agriculture Organization of the
+  ~ United Nations (FAO-UN), United Nations World Food Programme (WFP)
+  ~ and United Nations Environment Programme (UNEP)
+  ~
+  ~ This program is free software; you can redistribute it and/or modify
+  ~ it under the terms of the GNU General Public License as published by
+  ~ the Free Software Foundation; either version 2 of the License, or (at
+  ~ your option) any later version.
+  ~
+  ~ This program is distributed in the hope that it will be useful, but
+  ~ WITHOUT ANY WARRANTY; without even the implied warranty of
+  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+  ~ General Public License for more details.
+  ~
+  ~ You should have received a copy of the GNU General Public License
+  ~ along with this program; if not, write to the Free Software
+  ~ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
+  ~
+  ~ Contact: Jeroen Ticheler - FAO - Viale delle Terme di Caracalla 2,
+  ~ Rome - Italy. email: geonetwork@osgeo.org
+  -->
+
+<overrides>
+  <spring>
+    <setInterceptUrl pattern="/[a-zA-Z0-9_\-]+/[a-z]{2,3}/catalog.signin!?.*" access="hasRole('RegisteredUser')"/>
+  </spring>
+  <file name=".*/WEB-INF/config-gui.xml">
+    <addXML xpath="">
+      <prodige>
+    	<catalogue>
+          <url>https://${prodige_catalogue_prefix}${prodige_domain}${prodige_catalogue_suffix}</url>
+        </catalogue>
+        <broadcast-connect>
+          <url>https://${prodige_admincarto_prefix}${prodige_domain}${prodige_admincarto_suffix}</url>
+          <url>https://${prodige_frontcarto_prefix}${prodige_domain}${prodige_frontcarto_suffix}</url>
+          <url>https://${prodige_telecarto_prefix}${prodige_domain}${prodige_telecarto_suffix}</url>
+        </broadcast-connect>
+      </prodige>
+    </addXML>
+  </file>
+
+</overrides>
diff --git a/src/main/webapp/WEB-INF/config-overrides.properties b/src/main/webapp/WEB-INF/config-overrides.properties
new file mode 100644
index 0000000..4ff0aec
--- /dev/null
+++ b/src/main/webapp/WEB-INF/config-overrides.properties
@@ -0,0 +1,15 @@
+# @usage NOTE : The last value of a key is the final value
+
+# @destination WEB-INF/config-security/config-security.properties
+overrides.ldap.security.credentials=${overrides_ldap_security_credentials}
+overrides.cas.baseURL=https://${prodige_cas_prefix}${prodige_domain}${prodige_cas_suffix}/cas
+overrides.geonetwork.https.url=https://${prodige_geonetwork_prefix}${prodige_domain}${prodige_geonetwork_suffix}/geonetwork
+
+# @destination WEB-INF/config-db/jdbc.properties
+overrides.jdbc.database=${overrides_jdbc_database}
+overrides.jdbc.username=${overrides_jdbc_username}
+overrides.jdbc.password=${overrides_jdbc_password}
+
+# @override WEB-INF/config.properties
+language.default=fre
+language.forceDefault=true
\ No newline at end of file
diff --git a/src/main/webapp/WEB-INF/config-security/config-security-cas-database.xml b/src/main/webapp/WEB-INF/config-security/config-security-cas-database.xml
new file mode 100644
index 0000000..43b3335
--- /dev/null
+++ b/src/main/webapp/WEB-INF/config-security/config-security-cas-database.xml
@@ -0,0 +1,31 @@
+<!--
+  ~ Copyright (C) 2001-2016 Food and Agriculture Organization of the
+  ~ United Nations (FAO-UN), United Nations World Food Programme (WFP)
+  ~ and United Nations Environment Programme (UNEP)
+  ~
+  ~ This program is free software; you can redistribute it and/or modify
+  ~ it under the terms of the GNU General Public License as published by
+  ~ the Free Software Foundation; either version 2 of the License, or (at
+  ~ your option) any later version.
+  ~
+  ~ This program is distributed in the hope that it will be useful, but
+  ~ WITHOUT ANY WARRANTY; without even the implied warranty of
+  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+  ~ General Public License for more details.
+  ~
+  ~ You should have received a copy of the GNU General Public License
+  ~ along with this program; if not, write to the Free Software
+  ~ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
+  ~
+  ~ Contact: Jeroen Ticheler - FAO - Viale delle Terme di Caracalla 2,
+  ~ Rome - Italy. email: geonetwork@osgeo.org
+  -->
+
+<beans
+  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+  xsi:schemaLocation="http://www.springframework.org/schema/beans
+          http://www.springframework.org/schema/beans/spring-beans-3.0.xsd"
+  xmlns="http://www.springframework.org/schema/beans">
+
+  <alias name="geonetworkAuthenticationProvider" alias="casUserService"/>
+</beans>
diff --git a/src/main/webapp/WEB-INF/config-security/config-security-cas-ldap.xml b/src/main/webapp/WEB-INF/config-security/config-security-cas-ldap.xml
new file mode 100644
index 0000000..758e335
--- /dev/null
+++ b/src/main/webapp/WEB-INF/config-security/config-security-cas-ldap.xml
@@ -0,0 +1,45 @@
+<!--
+  ~ Copyright (C) 2001-2016 Food and Agriculture Organization of the
+  ~ United Nations (FAO-UN), United Nations World Food Programme (WFP)
+  ~ and United Nations Environment Programme (UNEP)
+  ~
+  ~ This program is free software; you can redistribute it and/or modify
+  ~ it under the terms of the GNU General Public License as published by
+  ~ the Free Software Foundation; either version 2 of the License, or (at
+  ~ your option) any later version.
+  ~
+  ~ This program is distributed in the hope that it will be useful, but
+  ~ WITHOUT ANY WARRANTY; without even the implied warranty of
+  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+  ~ General Public License for more details.
+  ~
+  ~ You should have received a copy of the GNU General Public License
+  ~ along with this program; if not, write to the Free Software
+  ~ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
+  ~
+  ~ Contact: Jeroen Ticheler - FAO - Viale delle Terme di Caracalla 2,
+  ~ Rome - Italy. email: geonetwork@osgeo.org
+  -->
+
+<beans
+  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+  xsi:schemaLocation="http://www.springframework.org/schema/beans
+          http://www.springframework.org/schema/beans/spring-beans-3.0.xsd"
+  xmlns="http://www.springframework.org/schema/beans">
+
+  <!-- Depends on config-security-ldap.xml also being imported -->
+
+  <bean id="casUserService"
+        class="org.springframework.security.ldap.userdetails.LdapUserDetailsService">
+    <constructor-arg index="0" ref="ldapUserSearch"/>
+    <property name="userDetailsMapper" ref="ldapUserContextMapper"/>
+  </bean>
+
+  <bean id="ldapUserSearch"
+        class="org.springframework.security.ldap.search.FilterBasedLdapUserSearch">
+    <constructor-arg index="0" value="${ldap.sync.user.search.base}"/>
+    <constructor-arg index="1" value="${ldap.sync.user.search.filter}"/>
+    <constructor-arg index="2" ref="contextSource"/>
+  </bean>
+
+</beans>
diff --git a/src/main/webapp/WEB-INF/config-security/config-security-cas.xml b/src/main/webapp/WEB-INF/config-security/config-security-cas.xml
new file mode 100644
index 0000000..da799b8
--- /dev/null
+++ b/src/main/webapp/WEB-INF/config-security/config-security-cas.xml
@@ -0,0 +1,165 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+  ~ Copyright (C) 2001-2016 Food and Agriculture Organization of the
+  ~ United Nations (FAO-UN), United Nations World Food Programme (WFP)
+  ~ and United Nations Environment Programme (UNEP)
+  ~
+  ~ This program is free software; you can redistribute it and/or modify
+  ~ it under the terms of the GNU General Public License as published by
+  ~ the Free Software Foundation; either version 2 of the License, or (at
+  ~ your option) any later version.
+  ~
+  ~ This program is distributed in the hope that it will be useful, but
+  ~ WITHOUT ANY WARRANTY; without even the implied warranty of
+  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+  ~ General Public License for more details.
+  ~
+  ~ You should have received a copy of the GNU General Public License
+  ~ along with this program; if not, write to the Free Software
+  ~ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
+  ~
+  ~ Contact: Jeroen Ticheler - FAO - Viale delle Terme di Caracalla 2,
+  ~ Rome - Italy. email: geonetwork@osgeo.org
+  -->
+
+<beans
+  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+  xsi:schemaLocation="http://www.springframework.org/schema/beans
+          http://www.springframework.org/schema/beans/spring-beans-3.0.xsd"
+  xmlns="http://www.springframework.org/schema/beans">
+
+  <!-- requires that config-security imports a config file that has the casUserService
+        bean -->
+  <!-- override beans in config-security-core with the changes required for
+        cas -->
+  <alias name="casEntryPoint" alias="authenticationEntryPoint"/>
+  <bean id="filterChainFilters" class="java.util.ArrayList">
+    <constructor-arg>
+      <list>
+        <ref bean="securityContextPersistenceFilter"/>
+        <ref bean="requestSingleLogoutFilter"/>
+        <ref bean="logoutFilter"/>
+        <ref bean="singleLogoutFilter"/>
+        <ref bean="casFilter"/>
+        <ref bean="basicAuthenticationFilter"/>
+        <ref bean="requestCacheFilter"/>
+        <ref bean="anonymousFilter"/>
+        <ref bean="sessionMgmtFilter"/>
+        <ref bean="exceptionTranslationFilter"/>
+        <ref bean="filterSecurityInterceptor"/>
+      </list>
+    </constructor-arg>
+  </bean>
+  <!-- Adds the CasAuthenticationProvider to the AuthenticationManager -->
+  <bean id="casAuthenticationProviderPostProcessor"
+        class="jeeves.config.springutil.AddAuthenticationProviderPostProcessor">
+    <constructor-arg value="0"/>
+    <constructor-arg ref="casAuthenticationProvider"></constructor-arg>
+  </bean>
+  <!-- End overrides -->
+
+  <bean id="casServerPropertyUpdater" class="jeeves.config.springutil.ServerBeanPropertyUpdater">
+    <constructor-arg value="${geonetwork.https.url}"/>
+    <constructor-arg>
+      <map>
+        <entry key-ref="serviceProperties" value="service"/>
+        <entry key-ref="casTicketValidator" value="proxyCallbackUrl"/>
+        <entry key-ref="casFilter" value="proxyReceptorUrl"/>
+        <entry key-ref="logoutSuccessHandler" value="defaultTargetUrl"/>
+      </map>
+    </constructor-arg>
+  </bean>
+  <bean id="serviceProperties" class="org.springframework.security.cas.ServiceProperties">
+    <property name="service" value="${geonetwork.https.url}/j_spring_cas_security_check"/>
+    <property name="sendRenew" value="false"/>
+    <property name="artifactParameter" value="ticket"/>
+    <property name="authenticateAllArtifacts" value="true"/>
+  </bean>
+
+  <bean id="casFilter"
+        class="org.springframework.security.cas.web.CasAuthenticationFilter">
+    <property name="authenticationManager" ref="authenticationManager"/>
+    <property name="proxyGrantingTicketStorage" ref="pgtStorage"/>
+    <property name="proxyReceptorUrl"
+              value="/j_spring_cas_security_proxyreceptor"/>
+    <property name="serviceProperties" ref="serviceProperties"/>
+    <property name="authenticationDetailsSource">
+      <bean
+        class="org.springframework.security.cas.web.authentication.ServiceAuthenticationDetailsSource"/>
+    </property>
+    <!-- @vlc start redirect to home page after login -->
+    <property name="authenticationSuccessHandler">
+	<bean class="org.springframework.security.web.authentication.SimpleUrlAuthenticationSuccessHandler">
+            <property name="defaultTargetUrl" value="/"/>
+            <property name="alwaysUseDefaultTargetUrl" value="true"/>
+        </bean>
+    </property>
+    <!-- @vlc end -->
+  </bean>
+
+  <bean id="casEntryPoint"
+        class="org.springframework.security.cas.web.CasAuthenticationEntryPoint">
+    <property name="loginUrl" value="${cas.login.url}"/>
+    <property name="serviceProperties" ref="serviceProperties"/>
+  </bean>
+
+  <bean id="casAuthenticationProvider"
+        class="org.springframework.security.cas.authentication.CasAuthenticationProvider">
+    <property name="authenticationUserDetailsService">
+      <bean
+        class="org.springframework.security.core.userdetails.UserDetailsByNameServiceWrapper">
+        <constructor-arg ref="casUserService"/>
+      </bean>
+    </property>
+    <property name="serviceProperties" ref="serviceProperties"/>
+    <property name="ticketValidator" ref="casTicketValidator"/>
+    <property name="key" value="GeonetworkCasAuthenticatorProviderKey"/>
+    <property name="statelessTicketCache" ref="casStatelessTicketCache"/>
+  </bean>
+
+  <bean id="casTicketValidator" class="org.jasig.cas.client.validation.Cas20ProxyTicketValidator">
+    <!-- Geonetwork class in start method will update the baseurl with the one in the settings table -->
+    <!-- If baseurlTag is not set then the proxyCallbackURL will not be updated -->
+    <constructor-arg index="0" value="${cas.ticket.validator.url}"/>
+    <property name="proxyCallbackUrl" value="${geonetwork.https.url}/j_spring_cas_security_proxyreceptor"/>
+    <property name="proxyGrantingTicketStorage" ref="pgtStorage"/>
+    <property name="acceptAnyProxy" value="true"/>
+  </bean>
+  <!-- TODO implement custom storage, maybe that stores in database -->
+  <bean id="pgtStorage" class="org.jasig.cas.client.proxy.ProxyGrantingTicketStorageImpl"/>
+
+  <!-- This filter handles a Single Logout Request from the CAS Server -->
+  <bean id="singleLogoutFilter" class="org.jasig.cas.client.session.SingleSignOutFilter"/>
+  <!-- This filter redirects to the CAS Server to signal Single Logout should be performed -->
+  <bean id="requestSingleLogoutFilter"
+        class="org.springframework.security.web.authentication.logout.LogoutFilter">
+    <constructor-arg ref="logoutSuccessHandler"/>
+    <constructor-arg>
+      <array>
+        <bean class="jeeves.config.springutil.LogoutUserSessionHandler"/>
+        <bean
+          class="org.springframework.security.web.authentication.logout.SecurityContextLogoutHandler"/>
+      </array>
+    </constructor-arg>
+    <property name="filterProcessesUrl" value="/signout"/>
+  </bean>
+  <bean id="logoutSuccessHandler"
+        class="org.springframework.security.web.authentication.logout.SimpleUrlLogoutSuccessHandler">
+    <property name="defaultTargetUrl" value="${cas.logout.url}"></property>
+  </bean>
+  <bean id="casStatelessTicketCache"
+        class="org.springframework.security.cas.authentication.EhCacheBasedTicketCache">
+    <property name="cache">
+      <bean class="net.sf.ehcache.Cache" init-method="initialise"
+            destroy-method="dispose">
+        <constructor-arg value="casTickets"/>
+        <constructor-arg value="50"/>
+        <constructor-arg value="true"/>
+        <constructor-arg value="false"/>
+        <constructor-arg value="3600"/>
+        <constructor-arg value="900"/>
+        <property name="diskStorePath" value="${java.io.tmpdir}"></property>
+      </bean>
+    </property>
+  </bean>
+</beans>
diff --git a/src/main/webapp/WEB-INF/config-security/config-security-core.xml b/src/main/webapp/WEB-INF/config-security/config-security-core.xml
new file mode 100644
index 0000000..e862d59
--- /dev/null
+++ b/src/main/webapp/WEB-INF/config-security/config-security-core.xml
@@ -0,0 +1,382 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+  ~ Copyright (C) 2001-2016 Food and Agriculture Organization of the
+  ~ United Nations (FAO-UN), United Nations World Food Programme (WFP)
+  ~ and United Nations Environment Programme (UNEP)
+  ~
+  ~ This program is free software; you can redistribute it and/or modify
+  ~ it under the terms of the GNU General Public License as published by
+  ~ the Free Software Foundation; either version 2 of the License, or (at
+  ~ your option) any later version.
+  ~
+  ~ This program is distributed in the hope that it will be useful, but
+  ~ WITHOUT ANY WARRANTY; without even the implied warranty of
+  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+  ~ General Public License for more details.
+  ~
+  ~ You should have received a copy of the GNU General Public License
+  ~ along with this program; if not, write to the Free Software
+  ~ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
+  ~
+  ~ Contact: Jeroen Ticheler - FAO - Viale delle Terme di Caracalla 2,
+  ~ Rome - Italy. email: geonetwork@osgeo.org
+  -->
+
+<beans
+  xmlns:sec="http://www.springframework.org/schema/security"
+  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+  xsi:schemaLocation="http://www.springframework.org/schema/beans
+          http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
+
+
+          http://www.springframework.org/schema/security
+          http://www.springframework.org/schema/security/spring-security-3.2.xsd"
+  xmlns="http://www.springframework.org/schema/beans">
+
+  <alias name="filterChainProxy" alias="springSecurityFilterChain"/>
+
+  <bean id="filterChainProxy" class="org.springframework.security.web.FilterChainProxy">
+    <constructor-arg>
+      <list>
+        <!-- @vlc start pas present dans geonetwork, utile ? -->
+        <sec:filter-chain pattern="/apps/**" filters="" />
+        <sec:filter-chain pattern="/apps_extend/**" filters="" />
+        <sec:filter-chain pattern="/maps/**" filters="" />
+        <sec:filter-chain pattern="/scripts/**" filters="" />
+        <!-- @vlc end -->
+        <sec:filter-chain pattern="/srv/swagger-resources/**" filters=""/>
+        <sec:filter-chain pattern="/srv/v2/**" filters=""/>
+
+        <!-- TODO: This needs to be secured to not access private info -->
+        <sec:filter-chain pattern="/index/**" filters=""/>
+
+        <sec:filter-chain pattern="/dashboards/**" filters=""/>
+
+        <sec:filter-chain pattern="/doc/**" filters=""/>
+        <!-- wroAPI is protected for admin only
+        This is causing issue on node-change-warning page.
+        <sec:filter-chain pattern="/static/wroAPI" filters=""/>-->
+        <sec:filter-chain pattern="/static/**" filters=""/>
+        <sec:filter-chain pattern="/catalog/**" filters=""/>
+        <sec:filter-chain pattern="/test/**" filters=""/>
+        <sec:filter-chain pattern="/" filters=""/>
+        <sec:filter-chain pattern="/*.html" filters=""/>
+        <sec:filter-chain pattern="/*.jsp" filters=""/>
+        <sec:filter-chain pattern="/*.css" filters=""/>
+        <sec:filter-chain pattern="/images/**" filters=""/>
+        <sec:filter-chain pattern="/map/**" filters=""/>
+        <sec:filter-chain pattern="/htmlcache/**" filters=""/>
+        <sec:filter-chain pattern="/pdf/**" filters=""/>
+        <sec:filter-chain pattern="/loc/**" filters=""/>
+        <sec:filter-chain pattern="/xml/csw/test/*" filters=""/>
+        <sec:filter-chain pattern="/xml/schemas/**" filters=""/>
+        <sec:filter-chain pattern="/xsl/harvesting/**" filters=""/>
+        <sec:filter-chain pattern="/xsl/ownership/**" filters=""/>
+        <ref bean="coreFilterChain"/>
+        <!-- <sec:filter-chain pattern="/**" filters="securityContextPersistenceFilter,
+                logoutFilter,
+                formLoginFilter,
+               basicAuthenticationFilter,
+                requestCacheFilter,
+                anonymousFilter,
+                sessionMgmtFilter,
+               exceptionTranslationFilter,
+               filterSecurityInterceptor" /> -->
+      </list>
+    </constructor-arg>
+  </bean>
+
+
+  <bean id="coreFilterChain" class="org.springframework.security.web.DefaultSecurityFilterChain">
+    <constructor-arg>
+      <bean class="org.springframework.security.web.util.AntPathRequestMatcher">
+        <constructor-arg value="/**"/>
+      </bean>
+    </constructor-arg>
+    <constructor-arg>
+      <ref bean="filterChainFilters"/>
+    </constructor-arg>
+  </bean>
+  <bean id="filterChainFilters" class="java.util.ArrayList">
+    <constructor-arg>
+      <list>
+        <ref bean="securityContextPersistenceFilter"/>
+        <!-- To disable csrf security (not recommended) comment the following line -->
+        <ref bean="csrfFilter" />
+        <!-- To disable csrf security (not recommended) comment the upper line -->
+        <ref bean="logoutFilter"/>
+        <!-- A filter that check if an external service already authenticated user
+                     (default implementation does nothing but can be overridden) -->
+        <ref bean="multiNodeAuthenticationFilter"/>
+        <ref bean="preAuthenticationFilter"/>
+        <ref bean="basicAuthenticationFilter"/>
+        <ref bean="formLoginFilter"/>
+        <ref bean="requestCacheFilter"/>
+        <ref bean="anonymousFilter"/>
+        <ref bean="sessionMgmtFilter"/>
+        <ref bean="exceptionTranslationFilter"/>
+        <ref bean="filterSecurityInterceptor"/>
+      </list>
+    </constructor-arg>
+  </bean>
+  <!-- A filter that check if an external service already authenticated user
+                     (default implementation does nothing but can be overridden) -->
+  <bean id="multiNodeAuthenticationFilter"
+        class="jeeves.config.springutil.MultiNodeAuthenticationFilter">
+    <property name="location" value="${wrongNodeRedirectURL}"/>
+  </bean>
+  <bean id="preAuthenticationFilter" class="jeeves.config.springutil.PassthroughFilter"/>
+  <bean id="securityContextPersistenceFilter"
+        class="org.springframework.security.web.context.SecurityContextPersistenceFilter">
+    <property name="securityContextRepository" ref="securityContextRepository"/>
+  </bean>
+
+  <bean id="authenticationManager"
+        class="org.springframework.security.authentication.ProviderManager">
+    <property name="providers">
+      <list>
+        <!-- Check if the preAuthenticationFilter has already authenticated user -->
+        <ref bean="preFilterAuthenticationProvider"/>
+        <ref bean="geonetworkAuthenticationProvider"/>
+      </list>
+    </property>
+  </bean>
+
+  <bean id="securityContextRepository"
+        class='org.springframework.security.web.context.HttpSessionSecurityContextRepository'>
+    <property name="allowSessionCreation" value="true"/>
+  </bean>
+
+  <bean id="formLoginFilter"
+        class="org.springframework.security.web.authentication.UsernamePasswordAuthenticationFilter">
+    <property name="postOnly" value="true"/>
+    <property name="usernameParameter" value="username"/>
+    <property name="passwordParameter" value="password"/>
+    <property name="authenticationManager" ref="authenticationManager"/>
+    <!--<property name="filterProcessesUrl" value="/signin"/>-->
+    <property name="requiresAuthenticationRequestMatcher">
+      <bean class="org.springframework.security.web.util.matcher.AntPathRequestMatcher">
+        <constructor-arg name="pattern" value="/signin"/>
+      </bean>
+    </property>
+    <property name="authenticationDetailsSource" ref="authenticationDetailsSource"/>
+    <property name="authenticationFailureHandler">
+      <bean
+        class="org.springframework.security.web.authentication.SimpleUrlAuthenticationFailureHandler">
+        <constructor-arg value="${loginErrorForm}"></constructor-arg>
+        <property name="redirectStrategy">
+          <bean class="jeeves.config.springutil.JeevesNodeAwareRedirectStrategy"/>
+        </property>
+      </bean>
+    </property>
+    <property name="authenticationSuccessHandler">
+      <bean
+        class="org.springframework.security.web.authentication.SavedRequestAwareAuthenticationSuccessHandler">
+        <property name="defaultTargetUrl" value="/"/>
+        <property name="targetUrlParameter" value="redirectUrl"/>
+      </bean>
+    </property>
+    <property name="sessionAuthenticationStrategy">
+      <bean
+        class="org.springframework.security.web.authentication.session.SessionFixationProtectionStrategy"/>
+    </property>
+  </bean>
+
+  <bean id="basicAuthenticationFilter"
+        class="org.springframework.security.web.authentication.www.BasicAuthenticationFilter">
+    <constructor-arg index="0" ref="authenticationManager"/>
+    <constructor-arg index="1" ref="basicAuthenticationEntryPoint"/>
+    <property name="authenticationDetailsSource" ref="authenticationDetailsSource"/>
+  </bean>
+
+  <bean id="authenticationDetailsSource"
+        class="jeeves.config.springutil.JeevesAuthenticationDetailSource"/>
+
+  <bean id="basicAuthenticationEntryPoint"
+        class="org.springframework.security.web.authentication.www.BasicAuthenticationEntryPoint">
+    <property name="realmName" value="Geonetwork"/>
+  </bean>
+
+  <bean id="logoutFilter"
+        class="org.springframework.security.web.authentication.logout.LogoutFilter">
+    <constructor-arg ref="logoutSuccessHandler"/>
+    <constructor-arg>
+      <list>
+        <bean
+          class="org.springframework.security.web.authentication.logout.SecurityContextLogoutHandler"/>
+        <bean
+          class="org.springframework.security.web.authentication.logout.CookieClearingLogoutHandler">
+          <constructor-arg>
+            <array>
+              <value>JSESSIONID</value>
+            </array>
+          </constructor-arg>
+        </bean>
+      </list>
+    </constructor-arg>
+    <property name="filterProcessesUrl" value="/signout"/>
+  </bean>
+
+  <bean id="logoutSuccessHandler"
+        class="jeeves.config.springutil.JeevesNodeAwareLogoutSuccessHandler">
+    <property name="defaultTargetUrl" value="${logout.success.url}"></property>
+  </bean>
+  <bean id="requestCacheFilter"
+        class="org.springframework.security.web.savedrequest.RequestCacheAwareFilter"/>
+
+  <bean id="exceptionTranslationFilter"
+        class="org.springframework.security.web.access.ExceptionTranslationFilter">
+    <constructor-arg index="0" ref="authenticationEntryPoint"/>
+    <property name="accessDeniedHandler" ref="accessDeniedHandler"/>
+  </bean>
+
+  <bean id="defaultAuthenticationEntryPoint"
+        class="jeeves.config.springutil.JeevesNodeAwareLoginUrlEntryPoint">
+    <constructor-arg name="loginFormUrl" value="${loginForm}"/>
+  </bean>
+
+  <bean id="ajaxEntryPoint" class="org.springframework.security.web.authentication.Http403ForbiddenEntryPoint" />
+
+  <bean id="authenticationEntryPoint"
+        class="org.springframework.security.web.authentication.DelegatingAuthenticationEntryPoint">
+    <constructor-arg>
+      <map>
+        <entry key-ref="apiRequestMatcher" value-ref="ajaxEntryPoint"/>
+      </map>
+    </constructor-arg>
+    <property name="defaultEntryPoint" ref="defaultAuthenticationEntryPoint" />
+  </bean>
+  <bean class="org.springframework.security.web.util.matcher.AntPathRequestMatcher" id="apiRequestMatcher">
+    <constructor-arg name="pattern" value="/*/api/**" />
+  </bean>
+
+  <bean id="accessDeniedHandler"
+        class="jeeves.config.springutil.JeevesAccessDeniedHandler">
+    <property name="errorPage" value="/accessDenied.jsp"/>
+    <property name="onlyStatusResponsePages" value="/*/api/**" />
+  </bean>
+
+  <!-- TODO remember me.
+      <bean id="rememberMeFilter"
+          class="org.springframework.security.web.authentication.rememberme.RememberMeAuthenticationFilter">
+          <property name="rememberMeServices" ref="rememberMeServices" />
+          <property name="authenticationManager" ref="authenticationManager" />
+      </bean>
+
+      <bean id="rememberMeServices" class="org.springframework.security.web.authentication.rememberme.TokenBasedRememberMeServices">
+          <property name="userDetailsService" ref="myUserDetailsService" />
+          <property name="key" value="rememberGeonetwork" />
+      </bean>
+
+      <bean id="rememberMeAuthenticationProvider" class="org.springframework.security.authentication.rememberme.RememberMeAuthenticationProvider">
+          <property name="key" value="rememberGeonetwork" />
+      </bean>
+       -->
+  <!-- TODO session management -->
+
+  <!-- Note: the id is critical since other components of the system will look up the encoder by its id -->
+  <bean class="org.springframework.security.crypto.password.StandardPasswordEncoder"
+        id="geonetworkEncoder">
+    <constructor-arg value="${passwordSalt}"/>
+  </bean>
+
+  <bean class="org.fao.geonet.kernel.security.GeonetworkAuthenticationProvider"
+        id="geonetworkAuthenticationProvider">
+    <property name="checkUserNameOrEmail" value="true"/>
+  </bean>
+
+  <!-- Check if the preAuthenticationFilter has already authenticated user -->
+  <bean
+    class="org.springframework.security.web.authentication.preauth.PreAuthenticatedAuthenticationProvider"
+    id="preFilterAuthenticationProvider">
+    <property name="preAuthenticatedUserDetailsService">
+      <bean id="preAuthenticatedUserDetailsService"
+            class="org.springframework.security.core.userdetails.UserDetailsByNameServiceWrapper">
+        <property name="userDetailsService" ref="geonetworkAuthenticationProvider"/>
+      </bean>
+    </property>
+  </bean>
+
+
+  <bean id="roleHierarchy"
+        class="org.springframework.security.access.hierarchicalroles.RoleHierarchyImpl">
+    <property name="hierarchy">
+      <value>
+        Administrator > UserAdmin
+        UserAdmin > Reviewer
+        Reviewer > Editor
+        Editor > RegisteredUser
+        RegisteredUser > Guest
+      </value>
+    </property>
+  </bean>
+
+  <bean id="accessDecisionManager"
+        class="org.springframework.security.access.vote.AffirmativeBased">
+    <property name="decisionVoters">
+      <list>
+        <bean class="org.springframework.security.access.vote.RoleHierarchyVoter">
+          <constructor-arg ref="roleHierarchy"/>
+        </bean>
+        <bean class="org.springframework.security.access.vote.RoleVoter"/>
+        <bean class="org.springframework.security.web.access.expression.WebExpressionVoter"/>
+        <bean class="org.springframework.security.access.vote.AuthenticatedVoter"/>
+      </list>
+    </property>
+  </bean>
+
+  <bean id="anonymousFilter"
+        class="org.springframework.security.web.authentication.AnonymousAuthenticationFilter">
+    <property name="key" value="GeonetworkAnonymousUser"/>
+    <property name="userAttribute" value="anonymousUser,ROLE_ANONYMOUS"/>
+  </bean>
+
+  <bean id="anonymousProvider"
+        class="org.springframework.security.authentication.AnonymousAuthenticationProvider">
+    <property name="key" value="GeonetworkAnonymousUser"/>
+  </bean>
+
+  <bean id="sessionMgmtFilter"
+        class="org.springframework.security.web.session.SessionManagementFilter">
+    <constructor-arg ref="securityContextRepository"/>
+  </bean>
+
+  <!-- This bean is here to allow evaluation permissions of the current user by Geonetwork -->
+  <bean id="webPrivilegeEvaluatorCore"
+        class="org.springframework.security.web.access.DefaultWebInvocationPrivilegeEvaluator">
+    <constructor-arg ref="filterSecurityInterceptor"/>
+  </bean>
+
+  <!-- Listener to log the last login date in the database -->
+  <bean class="org.fao.geonet.kernel.security.listener.UpdateTimestampListener"
+        id="updateTimestampListener">
+  </bean>
+
+
+  <bean id="csrfFilter" class="org.springframework.security.web.csrf.CsrfFilter">
+    <constructor-arg>
+      <ref bean="csrfTokenRepository"/>
+    </constructor-arg>
+
+    <property name="requireCsrfProtectionMatcher" ref="geonetworkCsrfSecurityRequestMatcher" />
+  </bean>
+
+  <bean class="org.fao.geonet.security.web.csrf.CookieCsrfTokenRepository"
+        id="csrfTokenRepository">
+    <property name="cookieHttpOnly" value="false"/>
+  </bean>
+
+  <!-- RequestMatcher to exclude CSRF token from CSW requests -->
+  <bean id="geonetworkCsrfSecurityRequestMatcher"
+        class="org.fao.geonet.security.web.csrf.GeonetworkCsrfSecurityRequestMatcher">
+    <constructor-arg>
+      <set>
+        <!-- CSW requests -->
+        <value>/[a-zA-Z0-9_\-]+/[a-z]{2,3}/csw-publication!?.*</value>
+        <value>/[a-zA-Z0-9_\-]+/[a-z]{2,3}/csw-.*</value>
+        <value>/[a-zA-Z0-9_\-]+/[a-z]{2,3}/csw!?.*</value>
+        <value>/[a-zA-Z0-9_\-]+/[a-z]{2,3}/xml.search!?</value>
+      </set>
+    </constructor-arg>
+  </bean>
+</beans>
diff --git a/src/main/webapp/WEB-INF/config-security/config-security-ldap.xml b/src/main/webapp/WEB-INF/config-security/config-security-ldap.xml
new file mode 100644
index 0000000..5009cfc
--- /dev/null
+++ b/src/main/webapp/WEB-INF/config-security/config-security-ldap.xml
@@ -0,0 +1,271 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+  ~ Copyright (C) 2001-2016 Food and Agriculture Organization of the
+  ~ United Nations (FAO-UN), United Nations World Food Programme (WFP)
+  ~ and United Nations Environment Programme (UNEP)
+  ~
+  ~ This program is free software; you can redistribute it and/or modify
+  ~ it under the terms of the GNU General Public License as published by
+  ~ the Free Software Foundation; either version 2 of the License, or (at
+  ~ your option) any later version.
+  ~
+  ~ This program is distributed in the hope that it will be useful, but
+  ~ WITHOUT ANY WARRANTY; without even the implied warranty of
+  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+  ~ General Public License for more details.
+  ~
+  ~ You should have received a copy of the GNU General Public License
+  ~ along with this program; if not, write to the Free Software
+  ~ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
+  ~
+  ~ Contact: Jeroen Ticheler - FAO - Viale delle Terme di Caracalla 2,
+  ~ Rome - Italy. email: geonetwork@osgeo.org
+  -->
+
+<beans
+  xmlns:ctx="http://www.springframework.org/schema/context"
+  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+  xsi:schemaLocation="http://www.springframework.org/schema/beans
+          http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
+          http://www.springframework.org/schema/context
+          http://www.springframework.org/schema/context/spring-context-3.0.xsd"
+  xmlns="http://www.springframework.org/schema/beans">
+
+  <ctx:property-override location="WEB-INF/config-security/config-security-overrides.properties"/>
+
+  <!-- Add ldap authentication to authentication manager -->
+  <bean id="ldapAuthenticationProviderPostProcessor"
+        class="jeeves.config.springutil.AddAuthenticationProviderPostProcessor">
+    <constructor-arg ref="ldapAuthProvider"/>
+  </bean>
+
+  <bean id="ldapUtils" class="org.fao.geonet.kernel.security.ldap.LDAPUtils"/>
+
+  <!-- LDAP configuration-->
+  <bean id="contextSource"
+        class="org.springframework.security.ldap.DefaultSpringSecurityContextSource">
+    <constructor-arg value="${ldap.base.provider.url}/${ldap.base.dn}"/>
+    <!-- For non anonymous binding -->
+    <property name="userDn" value="${ldap.security.principal}"/>
+    <property name="password" value="${ldap.security.credentials}"/>
+  </bean>
+
+  <bean id="ldapAuthProvider"
+        class="org.springframework.security.ldap.authentication.LdapAuthenticationProvider">
+    <constructor-arg>
+      <!--
+          A PasswordComparisonAuthenticator
+      <bean class="org.springframework.security.ldap.authentication.PasswordComparisonAuthenticator">
+          <constructor-arg ref="contextSource"/>
+          <property name="userDnPatterns">
+              <list><value>${ldap.base.dn.pattern}</value></list>
+          </property>
+          <property name="passwordAttributeName" value="userPassword"/>
+          <property name="passwordEncoder">
+             <!- - <bean class="org.springframework.security.authentication.encoding.PlaintextPasswordEncoder"/>- ->
+              <bean class="org.springframework.security.authentication.encoding.LdapShaPasswordEncoder"/>
+          </property>
+      </bean>
+  -->
+      <bean class="org.springframework.security.ldap.authentication.BindAuthenticator">
+        <constructor-arg ref="contextSource"/>
+        <property name="userDnPatterns">
+          <list>
+            <value>${ldap.base.dn.pattern}</value>
+          </list>
+        </property>
+      </bean>
+    </constructor-arg>
+    <property name="userDetailsContextMapper" ref="ldapUserContextMapper"/>
+  </bean>
+
+
+  <!-- User information retrieval could be defined in 3 ways by configuration. Only one could be defined
+       for an LDAP provider.                                                                             -->
+
+  <!-- Get all user information from the LDAP user's attributes (including profile and groups)           -->
+  <!-- @vlc start -->
+  <!-- <bean id="ldapUserContextMapper"
+        class="org.fao.geonet.kernel.security.ldap.LDAPUserDetailsContextMapper">
+    <property name="mapping">
+      <map/>
+    </property>
+    <property name="profileMapping">
+      <map/>
+    </property>
+    <property name="ldapBaseDn" value="${ldap.base.dn}"/>
+    <property name="importPrivilegesFromLdap" value="${ldap.privilege.import}"/>
+    <property name="createNonExistingLdapGroup"
+              value="${ldap.privilege.create.nonexisting.groups}"/>
+    <property name="createNonExistingLdapUser" value="${ldap.privilege.create.nonexisting.users}"/>
+    <property name="ldapManager" ref="ldapUserDetailsService"/>
+    <property name="contextSource" ref="contextSource"/>
+  </bean> -->
+  <!-- @vlc end -->
+
+  <!-- Get all user information from the LDAP user's attributes (including profile and groups)
+  where profile and groups are stored in one attribute. A custom pattern is defined to extract
+  those information. -->
+  <!--<bean id="ldapUserContextMapper" class="org.fao.geonet.kernel.security.ldap.LDAPUserDetailsContextMapperWithPattern">
+      <property name="mapping">
+          <map/>
+      </property>
+      <property name="profileMapping">
+          <map/>
+      </property>
+      <property name="importPrivilegesFromLdap" value="${ldap.privilege.import}"/>
+      <property name="createNonExistingLdapGroup" value="${ldap.privilege.create.nonexisting.groups}" />
+      <property name="createNonExistingLdapUser" value="${ldap.privilege.create.nonexisting.users}" />
+
+      <property name="ldapManager" ref="ldapUserDetailsService" />
+
+      <property name="privilegePattern" value="${ldap.privilege.pattern}" />
+      <property name="groupIndexInPattern" value="${ldap.privilege.pattern.idx.group}"/>
+      <property name="profilIndexInPattern" value="${ldap.privilege.pattern.idx.profil}"/>
+
+      <property name="contextSource" ref="contextSource" />
+  </bean>-->
+
+  <!-- Get all user information from the LDAP user's attributes excluding profiles and groups
+      which are searched in another LDAP location. For profiles and groups, define the search
+      location and the extraction pattern. -->
+  <!-- @vlc start -->
+  <bean id="ldapUserContextMapper" class="org.fao.geonet.kernel.security.ldap.LDAPUserDetailsContextMapperWithProfileSearch">
+      <property name="mapping">
+          <map/>
+       </property>
+      <property name="profileMapping">
+          <map/>
+      </property>
+      <property name="importPrivilegesFromLdap" value="${ldap.privilege.import}"/>
+      <property name="createNonExistingLdapGroup" value="${ldap.privilege.create.nonexisting.groups}" />
+      <property name="createNonExistingLdapUser" value="${ldap.privilege.create.nonexisting.users}" />
+
+      <property name="ldapManager" ref="ldapUserDetailsService" />
+
+      <property name="groupAttribute" value="${ldap.privilege.search.group.attribute}"/>
+      <property name="groupObject" value="${ldap.privilege.search.group.object}"/>
+      <property name="groupQuery" value="${ldap.privilege.search.group.query}"/>
+      <property name="groupQueryPattern" value="${ldap.privilege.search.group.pattern}"/>
+
+      <property name="privilegeAttribute" value="${ldap.privilege.search.privilege.attribute}"/>
+      <property name="privilegeObject" value="${ldap.privilege.search.privilege.object}"/>
+      <property name="privilegeQuery" value="${ldap.privilege.search.privilege.query}"/>
+      <property name="privilegeQueryPattern" value="${ldap.privilege.search.privilege.pattern}"/>
+
+      <property name="contextSource" ref="contextSource" />
+  </bean>
+  <!-- @vlc end -->
+
+  <bean name="ldapSynchronizer" class="org.springframework.scheduling.quartz.JobDetailFactoryBean">
+    <property name="jobClass" value="org.fao.geonet.kernel.security.ldap.LDAPSynchronizerJob"/>
+    <property name="jobDataAsMap">
+      <map>
+        <entry key="contextSource" value-ref="contextSource"/>
+        <entry key="ldapUserSearchBase" value="${ldap.sync.user.search.base}"/>
+        <entry key="ldapUserSearchFilter" value="${ldap.sync.user.search.filter}"/>
+        <entry key="ldapUserSearchAttribute" value="${ldap.sync.user.search.attribute}"/>
+
+        <entry key="createNonExistingLdapGroup"
+               value="${ldap.privilege.create.nonexisting.groups}"/>
+        <entry key="ldapGroupSearchBase" value="${ldap.sync.group.search.base}"/>
+        <entry key="ldapGroupSearchFilter" value="${ldap.sync.group.search.filter}"/>
+        <entry key="ldapGroupSearchAttribute" value="${ldap.sync.group.search.attribute}"/>
+        <entry key="ldapGroupSearchPattern" value="${ldap.sync.group.search.pattern}"/>
+
+      </map>
+    </property>
+  </bean>
+
+  <bean id="cronTrigger" class="org.springframework.scheduling.quartz.CronTriggerFactoryBean">
+    <property name="jobDetail" ref="ldapSynchronizer"/>
+    <property name="cronExpression" value="${ldap.sync.cron}"/>
+    <property name="startDelay" value="${ldap.sync.startDelay}"/>
+  </bean>
+
+  <bean class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
+    <property name="jobFactory">
+      <bean class="org.fao.geonet.util.spring.AutowiringSpringBeanJobFactory"/>
+    </property>
+    <property name="triggers">
+      <list>
+        <ref bean="cronTrigger"/>
+      </list>
+    </property>
+  </bean>
+
+  <bean id="ldapUserDetailsService"
+        class="org.fao.geonet.kernel.security.ldap.LdapUserDetailsManager">
+    <constructor-arg ref="contextSource"/>
+    <constructor-arg name="groupMemberAttributeName"
+                     value="${ldap.privilege.search.group.queryprop}"/>
+    <constructor-arg name="query"
+                     value="${ldap.privilege.search.group.query}"/>
+    <property name="groupSearchBase"
+              value="${ldap.privilege.search.group.object}"/>
+    <property name="usernameMapper" ref="usernameMapper"/>
+    <property name="userDetailsMapper" ref="ldapUserContextMapper"/>
+  </bean>
+
+  <bean id="usernameMapper"
+        class="org.springframework.security.ldap.DefaultLdapUsernameToDnMapper">
+    <constructor-arg index="0" type="java.lang.String"
+                     name="userDnBase" value="${ldap.base.search.base}"/>
+    <constructor-arg index="1" type="java.lang.String"
+                     name="usernameAttribute" value="${ldap.sync.user.search.attribute}"/>
+  </bean>
+
+
+  <!-- Uncomment if you want to automatically create groups in LDAP
+  when creating groups on geoNetwork. -->
+  <!-- <bean class="org.fao.geonet.kernel.security.ldap.AutoCreateGroups">
+      <property name="contextSource" ref="contextSource"/>
+      Where should groups be stored.
+      <property name="baseDn" value="${ldap.privilege.search.group.object}"/>
+      Identifier property for groups
+      <property name="groupAttribute" value="${ldap.privilege.search.group.attribute}"/>
+      Should we create a set of groups to define profiles on LDAP?
+      <property name="withProfiles" value="true"/>
+      Used only when withProfiles is true. 0 is the profile, 1 is the group name
+      <property name="profilePattern" value="{1}_{0}"/>
+      Map role names with role identifiers
+      <property name="profileMapping">
+          <map/>
+      </property>
+  </bean> -->
+
+  <!-- Uncomment if you want to sync additions in user group relations with LDAP -->
+  <!-- <bean class="org.fao.geonet.kernel.security.ldap.AutoUpdateUserGroups">
+      <property name="contextSource" ref="contextSource"/>
+      Where should groups be stored.
+      <property name="baseDn" value="${ldap.privilege.search.group.object}"/>
+      Identifier property for groups
+      <property name="groupAttribute" value="${ldap.privilege.search.group.attribute}"/>
+      Should we create a set of groups to define profiles on LDAP?
+      <property name="withProfiles" value="true"/>
+      Used only when withProfiles is true. 0 is the profile, 1 is the group name
+      <property name="profilePattern" value="{1}_{0}"/>
+      Map role names with role identifiers
+      <property name="profileMapping">
+          <map/>
+      </property>
+  </bean> -->
+
+  <!-- Uncomment if you want to sync removal in user group relations with LDAP -->
+  <!-- <bean class="org.fao.geonet.kernel.security.ldap.AutoUpdateUserGroupsOnRemove">
+  <property name="contextSource" ref="contextSource"/>
+  Where should groups be stored.
+  <property name="baseDn" value="${ldap.privilege.search.group.object}"/>
+  Identifier property for groups
+  <property name="groupAttribute" value="${ldap.privilege.search.group.attribute}"/>
+  Should we create a set of groups to define profiles on LDAP?
+  <property name="withProfiles" value="true"/>
+  Used only when withProfiles is true. 0 is the profile, 1 is the group name
+  <property name="profilePattern" value="{1}_{0}"/>
+  Map role names with role identifiers
+  <property name="profileMapping">
+      <map/>
+  </property>
+</bean> -->
+
+</beans>
diff --git a/src/main/webapp/WEB-INF/config-security/config-security-overrides.properties b/src/main/webapp/WEB-INF/config-security/config-security-overrides.properties
new file mode 100644
index 0000000..e3396bc
--- /dev/null
+++ b/src/main/webapp/WEB-INF/config-security/config-security-overrides.properties
@@ -0,0 +1,46 @@
+#
+# Copyright (C) 2001-2016 Food and Agriculture Organization of the
+# United Nations (FAO-UN), United Nations World Food Programme (WFP)
+# and United Nations Environment Programme (UNEP)
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or (at
+# your option) any later version.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
+#
+# Contact: Jeroen Ticheler - FAO - Viale delle Terme di Caracalla 2,
+# Rome - Italy. email: geonetwork@osgeo.org
+#
+
+# Map user information to LDAP attributes and default values
+# Ex : ldapUserContextMapper.mapping[name]=ldap_attribute,default_value
+ldapUserContextMapper.mapping[username]=uid,
+ldapUserContextMapper.mapping[name]=sn,
+ldapUserContextMapper.mapping[surname]=givenName,
+ldapUserContextMapper.mapping[mail]=mail,data@myorganization.org
+ldapUserContextMapper.mapping[organisation]=,
+ldapUserContextMapper.mapping[kind]=,
+ldapUserContextMapper.mapping[address]=,
+ldapUserContextMapper.mapping[zip]=,
+ldapUserContextMapper.mapping[state]=,
+ldapUserContextMapper.mapping[city]=,
+ldapUserContextMapper.mapping[country]=,
+#ldapUserContextMapper.mapping[privilege]=privileges,sample
+# If not set, the default profile is RegisteredUser
+# Valid profiles are http://geonetwork-opensource.org/manuals/trunk/eng/developer/apidocs/geonetwork/org/fao/geonet/constants/Geonet.Profile.html
+ldapUserContextMapper.mapping[profile]=alkProfileName,Administrator
+ldapUserContextMapper.mapping[privilege]=alkMemberOfGroup,
+
+# Map LDAP custom profiles to catalog profiles. Not used if ldap.privilege.pattern is defined.
+#ldapUserContextMapper.profileMapping[Admin]=Administrator
+#ldapUserContextMapper.profileMapping[Editeur]=Reviewer
+#ldapUserContextMapper.profileMapping[Public]=RegisteredUser
diff --git a/src/main/webapp/WEB-INF/config-security/config-security.properties b/src/main/webapp/WEB-INF/config-security/config-security.properties
new file mode 100644
index 0000000..411da68
--- /dev/null
+++ b/src/main/webapp/WEB-INF/config-security/config-security.properties
@@ -0,0 +1,119 @@
+#
+# Copyright (C) 2001-2016 Food and Agriculture Organization of the
+# United Nations (FAO-UN), United Nations World Food Programme (WFP)
+# and United Nations Environment Programme (UNEP)
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or (at
+# your option) any later version.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
+#
+# Contact: Jeroen Ticheler - FAO - Viale delle Terme di Caracalla 2,
+# Rome - Italy. email: geonetwork@osgeo.org
+#
+
+#Core security properties
+
+logout.success.url=/home?node=@@nodeId@@
+loginForm=/signin?node=@@nodeId@@
+loginErrorForm=/login.jsp?node=@@nodeId@@&failure=true
+passwordSalt=secret-hash-salt=
+
+# LDAP Connection Settings
+ldap.base.provider.url=ldap://localhost:389
+ldap.base.dn=dc=alkante,dc=domprodige
+ldap.security.principal=cn=admin,dc=alkante,dc=domprodige
+#ldap.security.credentials=ldap
+ldap.security.credentials=${overrides.ldap.security.credentials}
+
+
+ldap.base.search.base=ou=Users
+ldap.base.dn.pattern=uid={0},${ldap.base.search.base}
+#ldap.base.dn.pattern=mail={0},${ldap.base.search.base}
+
+
+# Define if groups and profile information are imported from LDAP. If not, local database is used.
+# When a new user connect first, the default profile is assigned. A user administrator can update
+# privilege information.
+ldap.privilege.import=true
+
+# Define if LDAP groups should be create in catalog
+# database if they do not exist.
+ldap.privilege.create.nonexisting.groups=true
+
+# Define if users should be saved in the LDAP
+ldap.privilege.create.nonexisting.users=true
+
+
+
+# Define the way to extract profiles and privileges from the LDAP
+# 1. Define one attribute for the profile and one for groups in config-security-overrides.properties
+
+# 2. Define one attribute for the privilege and define a custom pattern (use LDAPUserDetailsContextMapperWithPattern in config-security.xml).
+#ldap.privilege.pattern=
+#ldap.privilege.pattern=CAT_(.*)_(.*)
+#ldap.privilege.pattern.idx.group=1
+#ldap.privilege.pattern.idx.profil=2
+
+
+# 3. Define custom location for extracting group and role (no support for group/role combination) (use LDAPUserDetailsContextMapperWithProfileSearch in config-security.xml).
+ldap.privilege.search.group.attribute=ou
+ldap.privilege.search.group.object=ou=Groups
+ldap.privilege.search.group.queryprop=ou
+#ldap.privilege.search.group.query=(&(objectClass=*)(memberUid=uid={0},${ldap.base.search.base},${ldap.base.dn})(cn=EL_*))
+#ldap.privilege.search.group.query=(&(objectClass=*)(memberUid=uid={0},${ldap.base.search.base},${ldap.base.dn})(|(ou=SP_*)(ou=EL_*)))
+#ldap.privilege.search.group.query=(&(objectClass=alkPerson)(uid={0},${ldap.base.search.base},${ldap.base.dn}))
+ldap.privilege.search.group.query=(&(objectClass=alkOUGroup)(alkMember=${ldap.base.dn.pattern},${ldap.base.dn}))
+#ldap.privilege.search.group.pattern=EL_(.*)
+ldap.privilege.search.group.pattern=(.*)
+
+
+ldap.privilege.search.privilege.attribute=ou
+ldap.privilege.search.privilege.object=ou=Roles
+#ldap.privilege.search.privilege.query=(&(objectClass=*)(memberUid=uid={0},${ldap.base.search.base},${ldap.base.dn})(alkProfileName=SV_*))
+ldap.privilege.search.privilege.query=(&(objectClass=alkOUProfile)(alkMember=${ldap.base.dn.pattern},${ldap.base.dn}))
+#ldap.privilege.search.privilege.pattern=SV_(.*)
+ldap.privilege.search.privilege.pattern=(.*)
+
+
+# Run LDAP sync every day at 23:30
+ldap.sync.cron=0 30 23 * * ?
+#ldap.sync.cron=0 * * * * ?
+#ldap.sync.cron=0 0/1 * 1/1 * ? *
+ldap.sync.startDelay=60000
+ldap.sync.user.search.base=${ldap.base.search.base}
+ldap.sync.user.search.filter=(&(objectClass=alkPerson)(uid={0}))
+ldap.sync.user.search.attribute=uid
+
+ldap.sync.group.search.base=ou=Groups
+#ldap.sync.group.search.filter=(&(objectClass=posixGroup)(ou=EL_*))
+ldap.sync.group.search.filter=(&(objectClass=alkOUGroup)(ou={0}))
+ldap.sync.group.search.attribute=ou
+#ldap.sync.group.search.pattern=EL_(.*)
+ldap.sync.group.search.pattern=(.*)
+
+
+# CAS properties
+cas.baseURL=${overrides.cas.baseURL}
+cas.ticket.validator.url=${cas.baseURL}
+cas.login.url=${cas.baseURL}/login
+#cas.logout.url=${cas.baseURL}/logout?url=${geonetwork.https.url}
+cas.logout.url=${cas.baseURL}/logout?service=${geonetwork.https.url}
+
+# either the hardcoded url to the server
+# or if has the form @blah@ it will be replaced with
+# the server details from the server configuration
+#geonetwork.https.url=@to_be_replaced_at_runtime@
+geonetwork.https.url=${overrides.geonetwork.https.url}
+
+# The url to redirect to if a user logs in to one node then logs into another.
+wrongNodeRedirectURL=/@@nodeId@@/@@lang@@/node-change-warning?oldUserName=@@oldUserName@@&redirectedFrom=@@redirectedFrom@@&oldNodeId=@@oldNodeId@@
diff --git a/src/main/webapp/WEB-INF/config-security/config-security.xml b/src/main/webapp/WEB-INF/config-security/config-security.xml
new file mode 100644
index 0000000..84c3bc0
--- /dev/null
+++ b/src/main/webapp/WEB-INF/config-security/config-security.xml
@@ -0,0 +1,44 @@
+<!--
+  ~ Copyright (C) 2001-2016 Food and Agriculture Organization of the
+  ~ United Nations (FAO-UN), United Nations World Food Programme (WFP)
+  ~ and United Nations Environment Programme (UNEP)
+  ~
+  ~ This program is free software; you can redistribute it and/or modify
+  ~ it under the terms of the GNU General Public License as published by
+  ~ the Free Software Foundation; either version 2 of the License, or (at
+  ~ your option) any later version.
+  ~
+  ~ This program is distributed in the hope that it will be useful, but
+  ~ WITHOUT ANY WARRANTY; without even the implied warranty of
+  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+  ~ General Public License for more details.
+  ~
+  ~ You should have received a copy of the GNU General Public License
+  ~ along with this program; if not, write to the Free Software
+  ~ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
+  ~
+  ~ Contact: Jeroen Ticheler - FAO - Viale delle Terme di Caracalla 2,
+  ~ Rome - Italy. email: geonetwork@osgeo.org
+  -->
+
+<beans
+  xmlns:ctx="http://www.springframework.org/schema/context"
+  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+  xsi:schemaLocation="http://www.springframework.org/schema/beans
+          http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
+          http://www.springframework.org/schema/context
+          http://www.springframework.org/schema/context/spring-context-3.0.xsd"
+  xmlns="http://www.springframework.org/schema/beans">
+  <!-- <sec:debug/> -->
+  <import resource="config-security-core.xml"/>
+  <import resource="config-security-mapping.xml"/>
+  <import resource="config-security-ldap.xml"/>
+  <!-- <import resource="config-security-ecas.xml"/> -->
+  <import resource="config-security-cas.xml"/>
+  <import resource="config-security-cas-ldap.xml"/>
+  <!-- <import resource="config-security-cas-database.xml"/> -->
+  <!-- <import resource="config-security-shibboleth.xml"/>  -->
+  <ctx:property-placeholder location="WEB-INF/config-security/config-security.properties"
+                            file-encoding="UTF-8" ignore-unresolvable="true" order="100"/>
+
+</beans>
diff --git a/src/main/webapp/WEB-INF/config-spring-geonetwork.xml b/src/main/webapp/WEB-INF/config-spring-geonetwork.xml
new file mode 100644
index 0000000..992177d
--- /dev/null
+++ b/src/main/webapp/WEB-INF/config-spring-geonetwork.xml
@@ -0,0 +1,197 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+  ~ Copyright (C) 2001-2016 Food and Agriculture Organization of the
+  ~ United Nations (FAO-UN), United Nations World Food Programme (WFP)
+  ~ and United Nations Environment Programme (UNEP)
+  ~
+  ~ This program is free software; you can redistribute it and/or modify
+  ~ it under the terms of the GNU General Public License as published by
+  ~ the Free Software Foundation; either version 2 of the License, or (at
+  ~ your option) any later version.
+  ~
+  ~ This program is distributed in the hope that it will be useful, but
+  ~ WITHOUT ANY WARRANTY; without even the implied warranty of
+  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+  ~ General Public License for more details.
+  ~
+  ~ You should have received a copy of the GNU General Public License
+  ~ along with this program; if not, write to the Free Software
+  ~ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
+  ~
+  ~ Contact: Jeroen Ticheler - FAO - Viale delle Terme di Caracalla 2,
+  ~ Rome - Italy. email: geonetwork@osgeo.org
+  -->
+
+<beans xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p="http://www.springframework.org/schema/p"
+       xmlns:util="http://www.springframework.org/schema/util"
+       default-lazy-init="true"
+       xmlns="http://www.springframework.org/schema/beans"
+       xmlns:context="http://www.springframework.org/schema/context"
+       xsi:schemaLocation="
+        http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
+        http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util.xsd
+        http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd
+">
+  <context:annotation-config/>
+  
+  <context:property-placeholder location="WEB-INF/config.properties"
+                                file-encoding="UTF-8"
+                                ignore-unresolvable="true" />
+  
+  <context:property-placeholder location="WEB-INF/config-overrides.properties"
+                                file-encoding="UTF-8"
+                                ignore-unresolvable="true" />
+  
+  <import resource="config-spring-env.xml"/>
+  <import resource="config-security/config-security.xml"/>
+  <import resource="config-summary.xml"/>
+  <import resource="classpath:JZkitApplicationContext.xml"/>
+
+  <import resource="config-db/initial_data.xml"/>
+  <import resource="config-print/config-spring-print.xml"/>
+
+  <!-- For database configuration look in the config-node configuration files (config-node/srv.xml) -->
+
+  <!-- Import the versioning configuration (subversion etc...) -->
+  <import resource="config-versioning.xml"/>
+
+  <bean name="statusActionFactory"
+        class="org.fao.geonet.kernel.metadata.StatusActionsFactory">
+    <constructor-arg name="className" value="org.fao.geonet.kernel.metadata.DefaultStatusActions"/>
+  </bean>
+
+
+  <bean id="scheduler" class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
+    <property name="applicationContextSchedulerContextKey" value="applicationContext"/>
+  </bean>
+
+  <bean id="luceneDirectoryFactory" class="org.fao.geonet.kernel.search.index.FSDirectoryFactory"
+        lazy-init="true"/>
+
+  <bean id="httpRequestFactor" class="org.fao.geonet.utils.GeonetHttpRequestFactory">
+    <property name="numberOfConcurrentRequests" value="30"/>
+  </bean>
+
+  <bean id="language" class="org.fao.geonet.web.DefaultLanguage">
+    <property name="language" value="${language.default}"/>
+    <property name="forceDefault" value="${language.forceDefault}"/>
+  </bean>
+  
+  <!-- Define the languages in the UI. Seems like these should come from database
+    at some point but at the moment they are needed here. -->
+  <util:set id="languages" value-type="java.lang.String">
+    <value>ara</value>
+    <value>cat</value>
+    <value>chi</value>
+    <value>dut</value>
+    <value>eng</value>
+    <value>fin</value>
+    <value>fre</value>
+    <value>ger</value>
+    <value>ita</value>
+    <value>nor</value>
+    <value>pol</value>
+    <value>por</value>
+    <value>rus</value>
+    <value>spa</value>
+    <value>tur</value>
+  </util:set>
+
+  <util:map id="jpaPropertyMap">
+    <entry key="shared-cache-mode" value="ENABLE_SELECTIVE"/>
+    <entry key="javax.persistence.lock.timeout" value="30000"/>
+    <entry key="org.hibernate.flushMode" value="AUTO"/>
+    <entry key="access" value="PROPERTY"/>
+    <entry key="hibernate.id.new_generator_mappings" value="true"/>
+    <entry key="hibernate.cache.use_second_level_cache" value="true"/>
+    <!--<entry key="hibernate.cache.region.factory_class" value="org.hibernate.cache.internal.NoCachingRegionFactory"/> -->
+    <entry key="hibernate.cache.region.factory_class"
+           value="org.hibernate.cache.ehcache.EhCacheRegionFactory"/>
+    <entry key="hibernate.jdbc.batch_size" value="3"/>
+    <entry key="hibernate.jdbc.batch_versioned_data" value="true"/>
+    <entry key="hibernate.enable_lazy_load_no_trans" value="true"/>
+    <!-- If a specific schema has to be used
+    <entry key="hibernate.default_schema" value="catalog"/>
+
+    Note: If using more than one catalog in different schema
+    hibernate may failed to create sequence
+    (https://hibernate.atlassian.net/browse/HHH-5538).
+    In that case you may want to use a custom dialect
+    <entry key="hibernate.dialect" value="org.fao.geonet.dialect.CustomPostgreSQLDialect" />
+    -->
+  </util:map>
+
+  <util:list id="wro4jUrlsToInitialize" value-type="java.lang.String">
+    <value>lib.js</value>
+    <value>nv.d3.css</value>
+    <value>gn_search_default.css</value>
+    <value>gn_search_default.js</value>
+    <value>gn_editor_default.css</value>
+    <value>gn_editor.js</value>
+    <value>gn_admin_default.css</value>
+    <value>gn_admin.js</value>
+    <value>gn_login_default.css</value>
+    <value>srv_custom_style.css</value>
+    <value>gn_login.js</value>
+  </util:list>
+
+  <util:list id="formattersToInitialize" value-type="java.lang.String">
+    <value>full_view</value>
+    <value>xsl-view</value>
+    <value>xml_view</value>
+    <value>hierarchy_view</value>
+  </util:list>
+
+  <util:set id="formatterRemoteFormatAllowedHosts" value-type="java.lang.String"></util:set>
+  <bean id="threadResources" class="org.mapfish.print.ThreadResources">
+    <property name="connectionTimeout" value="30000"/>
+    <property name="socketTimeout" value="30000"/>
+    <property name="globalParallelFetches" value="50"/>
+    <property name="perHostParallelFetches" value="10"/>
+  </bean>
+
+  <util:set id="regionGetMapExpandFactors" set-class="java.util.TreeSet">
+    <bean class="org.fao.geonet.services.region.ExpandFactor"
+          p:proportion=".0005" p:factor="2"/>
+    <bean class="org.fao.geonet.services.region.ExpandFactor"
+          p:proportion=".01" p:factor=".5"/>
+    <bean class="org.fao.geonet.services.region.ExpandFactor"
+          p:proportion=".015" p:factor=".2"/>
+  </util:set>
+
+  <util:map id="regionGetMapBackgroundLayers">
+    <entry key="osm"
+           value="http://ows.terrestris.de/osm/service?SERVICE=WMS&amp;REQUEST=GetMap&amp;VERSION=1.1.0&amp;LAYERS=OSM-WMS&amp;STYLES=default&amp;SRS={srs}&amp;BBOX={minx},{miny},{maxx},{maxy}&amp;WIDTH={width}&amp;HEIGHT={height}&amp;FORMAT=image/png"/>
+  </util:map>
+
+
+  <bean id="slashSplitClassifier"
+        class="org.fao.geonet.kernel.search.classifier.Split" lazy-init="true">
+    <constructor-arg name="regex" value="\s*?/\s*?"/>
+  </bean>
+  <!--
+  Example configuration for hierarchical facet based on
+  the GeoNetwork region thesaurus or GEMET.
+
+  Do not forget to add facet configuration on config-summary.xml
+
+  <bean id="regionKeywordClassifier"
+        class="org.fao.geonet.kernel.search.classifier.TermLabel" lazy-init="true">
+    <constructor-arg name="finder" ref="ThesaurusManager"/>
+    <constructor-arg name="conceptScheme" value="http://geonetwork-opensource.org/thesaurus/naturalearth-and-seavox"/>
+    <constructor-arg name="langCode" value="eng"/>
+  </bean>
+  <bean id="gemetKeywordClassifier"
+        class="org.fao.geonet.kernel.search.classifier.TermLabel" lazy-init="true">
+    <constructor-arg name="finder" ref="ThesaurusManager"/>
+    <constructor-arg name="conceptScheme" value="http://geonetwork-opensource.org/gemet"/>
+    <constructor-arg name="langCode" value="eng"/>
+  </bean>
+  -->
+  <bean id="domainKeywordClassifier"
+        class="org.fao.geonet.kernel.search.classifier.TermLabel" lazy-init="true">
+    <constructor-arg name="finder" ref="ThesaurusManager"/>
+    <constructor-arg name="conceptScheme" value="http://geonetwork-opensource.org/domaines"/>
+    <constructor-arg name="langCode" value="eng"/>
+  </bean>
+</beans>
diff --git a/src/main/webapp/WEB-INF/config-summary.xml b/src/main/webapp/WEB-INF/config-summary.xml
new file mode 100644
index 0000000..ee9124f
--- /dev/null
+++ b/src/main/webapp/WEB-INF/config-summary.xml
@@ -0,0 +1,270 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+  ~ Copyright (C) 2001-2016 Food and Agriculture Organization of the
+  ~ United Nations (FAO-UN), United Nations World Food Programme (WFP)
+  ~ and United Nations Environment Programme (UNEP)
+  ~
+  ~ This program is free software; you can redistribute it and/or modify
+  ~ it under the terms of the GNU General Public License as published by
+  ~ the Free Software Foundation; either version 2 of the License, or (at
+  ~ your option) any later version.
+  ~
+  ~ This program is distributed in the hope that it will be useful, but
+  ~ WITHOUT ANY WARRANTY; without even the implied warranty of
+  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+  ~ General Public License for more details.
+  ~
+  ~ You should have received a copy of the GNU General Public License
+  ~ along with this program; if not, write to the Free Software
+  ~ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
+  ~
+  ~ Contact: Jeroen Ticheler - FAO - Viale delle Terme di Caracalla 2,
+  ~ Rome - Italy. email: geonetwork@osgeo.org
+  -->
+
+<bean:beans xmlns:bean="http://www.springframework.org/schema/beans"
+            xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+            default-lazy-init="true"
+            xmlns="http://www.fao.org/geonetwork/spring"
+            xsi:schemaLocation="
+        http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
+        http://www.fao.org/geonetwork/spring http://www.fao.org/geonetwork/spring/gn-spring.xsd
+    "
+>
+  <!--
+      Configuration of the taxonomy index used for faceting and
+      formatting/building facet summaries
+
+      Each facet to be indexed is defined in the facets element. The facets element
+      lists the facets to index and how they should be indexed using attributes on facet elements as follows:
+
+      * name: the name of the facet
+      * indexKey: the name of the indexing field to be used for the facet
+      * label: the label to use for the facet in returned summaries
+      * classifier: (optional) a reference to a spring bean that should be used to
+          determine facet values for the indexing field.
+          The bean must implement the org.fao.kernel.search.classifier.Classifier interface
+          Defaults to a classifier which uses the value of the field to be indexed
+
+      When a facet definitionis modified or added, the index MUST be rebuilt.
+
+      How facet summaries should be built and formatted for each summary type is defined
+      in the summaryTypes element. The summaryTypes element contains a number of summary type elements each
+      of which define a facet summary that can be configured for a service. Each summary type
+      element contains a number of item elements defining facets to be returned and how they
+      should be formatted as follows:
+
+      * facet: the name of a facet defined above
+      * (optional) sortBy: the ordering for the facet. Defaults to by count.
+      * (optional) sortOrder: asc or desc. Defaults is descendant.
+      * (optional) max: the number of values to be returned for the facet. Defaults to 10.
+      * (optional) depth: the depth to which hierarchical facets should be summarised. Defaults to 1.
+      * (optional) format: the format to be used for generating facet summary elements. Defaults to
+          'FACET_NAME'. Can also be 'DIMENSION', which uses a top level
+          dimension tag and category tags for sub-categories which is more suitable for hierarchical facets.
+      * (optional) translator: Define a DB translator to retrieve label from description
+          tables (eg. categoriesdes) or codelist translator to retrieve label from schema
+          codelists files.
+
+    eg. for category
+
+          <item dimension="category" plural="categories" indexKey="_cat" max="45"
+              translator="db:org.fao.geonet.repository.MetadataCategoryRepository:findOneByName"/>
+
+    or for group
+
+          <item dimension="groupOwner" plural="groupOwners" indexKey="_groupOwner"
+          max="99" sortBy="value" translator="db:org.fao.geonet.repository.GroupRepository:findOne:int"/>
+
+  -->
+
+  <facets>
+    <facet name="keyword" indexKey="keyword" label="keywords" localized="true"/>
+    <facet name="topicCat" indexKey="topicCat" label="topicCats" localized="true"/>
+    <facet name="category" indexKey="_cat" label="categories" localized="true"/>
+    <facet name="inspireTheme" indexKey="inspiretheme" label="inspireThemes"/>
+    <facet name="inspireThemeWithAc" indexKey="inspirethemewithac" label="inspireThemesWithAc"/>
+    <facet name="inspireThemeURI" indexKey="inspirethemeuri" label="inspireThemesURI"/>
+    <facet name="denominator" indexKey="denominator" label="denominators"/>
+    <facet name="resolution" indexKey="resolution" label="resolutions"/>
+    <facet name="spatialRepresentationType" indexKey="cl_spatialRepresentationType"
+           label="spatialRepresentationTypes"/>
+    <facet name="orgName" indexKey="orgName" label="orgNames" localized="true"/>
+    <facet name="orgNameTree" indexKey="orgNameTree" label="orgNamesTree"
+           classifier="slashSplitClassifier"/>
+    <facet name="metadataPOC" indexKey="metadataPOC" label="metadataPOCs"/>
+    <facet name="serviceType" indexKey="serviceType" label="serviceTypes"/>
+    <facet name="type" indexKey="type" label="types"/>
+    <facet name="createDateYear" indexKey="createDateYear" label="createDateYears"/>
+    <facet name="format" indexKey="format" label="formats"/>
+    <facet name="title" indexKey="title" label="titles"/>
+    <facet name="metadataType" indexKey="_isTemplate" label="metadataTypes"/>
+    <facet name="isValid" indexKey="_valid" label="isValid" localized="true"/>
+    <facet name="isHarvested" indexKey="_isHarvested" label="isHarvested"/>
+    <facet name="mdStatus" indexKey="_status" label="mdStatus"/>
+    <facet name="status" indexKey="cl_status" label="status"/>
+    <facet name="sourceCatalog" indexKey="_source" label="sourceCatalog"/>
+    <facet name="standard" indexKey="_schema" label="standards"/>
+    <facet name="subTemplateType" indexKey="_root" label="subTemplateTypes"/>
+    <facet name="groupOwner" indexKey="_groupOwner" label="groupOwners"/>
+    <facet name="publishedForGroup" indexKey="_groupPublished" label="publishedForGroup"/>
+	  <facet name="isPublishedToAll" indexKey="_isPublishedToAll" label="isPublishedToAll" />
+    
+    <facet name="domainKeyword"
+       label="Domaines"
+       indexKey="keyword"
+       classifier="domainKeywordClassifier"/>
+       
+    <!--
+    Example configuration for hierarchical facet based on
+    the GeoNetwork region thesaurus or GEMET.
+
+    Do not forget to add classifier configuration on config-spring-geonetwork.xml
+
+    Then add facet in one summaryType having format="DIMENSION" attribute.
+    <facet name="region" label="regions"
+           indexKey="keyword"
+           classifier="regionKeywordClassifier"/>
+    <facet name="gemetKeyword" label="gemetKeywords"
+           indexKey="keyword"
+           classifier="gemetKeywordClassifier"/>
+         -->
+
+    <facet name="maintenanceAndUpdateFrequency" indexKey="cl_maintenanceAndUpdateFrequency"
+           label="maintenanceAndUpdateFrequencies"/>
+    <facet name="mdActions" indexKey="_mdActions" label="mdActions"/>
+  </facets>
+
+  <summaryTypes>
+    <summaryType name="details" format="DIMENSION">
+      <item facet="domainKeyword" depth="3"  max="1000"
+            translator="term:http://geonetwork-opensource.org/domaines"/>
+      
+      <item facet="isHarvested" max="2" sortBy="value" translator="apploc:"/>  
+      <item facet="sourceCatalog"
+            translator="db:org.fao.geonet.repository.SourceRepository:findOneByUuid" max="25"/>
+            
+      <item facet="type" translator="codelist:gmd:MD_ScopeCode"/>
+      <item facet="mdActions"/>
+      <item facet="topicCat" translator="codelist:gmd:MD_TopicCategoryCode" max="20"/>
+      <item facet="inspireThemeURI" sortBy="value" sortOrder="asc" max="35"
+            translator="term:http://geonetwork-opensource.org/inspire-theme"/>
+      <!--<item facet="inspireTheme" sortBy="value" sortOrder="asc" max="35"/>-->
+      <!--<item facet="inspireThemeWithAc" sortBy="value" sortOrder="asc" max="35"/>-->
+      <item facet="keyword" max="15"/>
+      <item facet="orgName" max="25"/>
+      <item facet="sourceCatalog"
+            translator="db:org.fao.geonet.repository.SourceRepository:findOneByUuid"/>
+      <item facet="createDateYear" sortBy="value" sortOrder="desc" max="40"/>
+      <item facet="format" max="15" sortBy="value" sortOrder="asc"/>
+      <item facet="spatialRepresentationType"
+            translator="codelist:gmd:MD_SpatialRepresentationTypeCode"/>
+      <item facet="maintenanceAndUpdateFrequency"
+            translator="codelist:gmd:MD_MaintenanceFrequencyCode"/>
+      <item facet="status" translator="codelist:gmd:MD_ProgressCode"/>
+      <item facet="serviceType"/>
+      <item facet="denominator" sortBy="numValue" sortOrder="desc"/>
+      <item facet="resolution" sortBy="numValue" sortOrder="desc"/>
+      <!--
+      <item facet="region"
+            translator="term:http://geonetwork-opensource.org/thesaurus/naturalearth-and-seavox"/>
+      <item facet="gemetKeyword"
+            translator="term:http://geonetwork-opensource.org/gemet"/>
+      -->
+    </summaryType>
+
+    <summaryType name="manager" format="DIMENSION">
+      <item facet="domainKeyword" depth="3"  max="1000"
+            translator="term:http://geonetwork-opensource.org/domaines"/>
+      <item facet="sourceCatalog"
+            translator="db:org.fao.geonet.repository.SourceRepository:findOneByUuid" max="25"/>
+      <item facet="type" translator="codelist:gmd:MD_ScopeCode"/>
+      <!-- ALK DELETE
+      <item facet="category" max="99" sortBy="value"
+            translator="db:org.fao.geonet.repository.MetadataCategoryRepository:findOneByName"/> -->
+      <item facet="mdStatus" max="10" sortBy="value"
+            translator="db:org.fao.geonet.repository.StatusValueRepository:findOne:int"/>
+            
+      <item facet="isValid" max="3" sortBy="value" translator="apploc:validStatus-"/>
+      <item facet="groupOwner" max="199" sortBy="value"
+            translator="db:org.fao.geonet.repository.GroupRepository:findOne:int"/>
+      <item facet="publishedForGroup" max="199" sortBy="value"
+            translator="db:org.fao.geonet.repository.GroupRepository:findOneByName"/>
+      <item facet="standard" max="15" sortBy="value"/>
+      <item facet="isHarvested" max="2" sortBy="value" translator="apploc:"/>
+      <item facet="metadataType" max="3" sortBy="value" translator="apploc:recordType-"/>
+      <item facet="spatialRepresentationType"
+            translator="codelist:gmd:MD_SpatialRepresentationTypeCode"/>
+	    <item facet="isPublishedToAll" max="2" sortBy="value" translator="apploc:"/>
+    </summaryType>
+
+    <!-- (deprecated) old-style configuration supporting only
+    flat facet. It's recommended to use format="DIMENSION" for facet.
+    See above. -->
+    <summaryType name="hits">
+      <item facet="type" translator="codelist:gmd:MD_ScopeCode"/>
+      <item facet="topicCat" translator="codelist:gmd:MD_TopicCategoryCode" max="20"/>
+      <item facet="inspireTheme" sortBy="value" sortOrder="asc" max="35"/>
+      <item facet="inspireThemeWithAc" sortBy="value" sortOrder="asc" max="35"/>
+      <item facet="inspireThemeURI" sortBy="value" sortOrder="asc" max="35"
+            translator="term:http://geonetwork-opensource.org/inspire-theme"/>
+      <item facet="keyword" max="15"/>
+      <item facet="orgName" max="25"/>
+      <item facet="createDateYear" sortBy="value" sortOrder="desc" max="40"/>
+      <item facet="format" max="15" sortBy="value" sortOrder="asc"/>
+      <item facet="spatialRepresentationType"
+            translator="codelist:gmd:MD_SpatialRepresentationTypeCode"/>
+      <item facet="maintenanceAndUpdateFrequency"
+            translator="codelist:gmd:MD_MaintenanceFrequencyCode"/>
+      <item facet="status" translator="codelist:gmd:MD_ProgressCode"/>
+      <item facet="serviceType"/>
+      <item facet="denominator" sortBy="numValue" sortOrder="desc"/>
+      <item facet="resolution" sortBy="numValue" sortOrder="desc"/>
+      <!--<item facet="metadataPOC" max="15"/>-->
+    </summaryType>
+    <summaryType name="subtemplates">
+      <item facet="subTemplateType"/>
+      <item facet="groupOwner" max="99" sortBy="value"
+            translator="db:org.fao.geonet.repository.GroupRepository:findOne:int"/>
+      <item facet="isValid" max="3" sortBy="value" translator="apploc:validStatus-"/>
+    </summaryType>
+    <summaryType name="contact" format="DIMENSION">
+      <item facet="orgNameTree" max="99"/>
+      <item facet="groupOwner" max="99" sortBy="value"
+            translator="db:org.fao.geonet.repository.GroupRepository:findOne:int"/>
+      <item facet="isValid" max="3" sortBy="value" translator="apploc:validStatus-"/>
+    </summaryType>
+    <summaryType name="titles">
+      <item facet="title" sortOrder="desc" max="100"/>
+    </summaryType>
+    <summaryType name="results">
+      <item facet="keyword" max="100"/>
+    </summaryType>
+    <summaryType name="results_with_summary">
+      <item facet="keyword" max="15"/>
+      <item facet="inspireTheme" sortBy="value" sortOrder="asc" max="35"/>
+      <item facet="denominator" sortBy="value" sortOrder="asc" max="20"/>
+      <item facet="spatialRepresentationType"
+            translator="codelist:gmd:MD_SpatialRepresentationTypeCode"/>
+      <item facet="orgName" max="15"/>
+      <item facet="metadataPOC" max="15"/>
+      <item facet="serviceType"/>
+      <item facet="type" translator="codelist:gmd:MD_ScopeCode"/>
+      <item facet="createDateYear" sortOrder="asc" max="40"/>
+    </summaryType>
+    <summaryType name="suggestions">
+      <item facet="keyword"/>
+      <item facet="title" sortOrder="desc" max="100"/>
+      <item facet="inspireTheme" sortBy="value" sortOrder="asc"/>
+      <item facet="denominator" sortBy="value" sortOrder="asc"/>
+      <item facet="spatialRepresentationType"
+            translator="codelist:gmd:MD_SpatialRepresentationTypeCode"/>
+      <item facet="orgName" max="100"/>
+      <item facet="metadataPOC"/>
+      <item facet="serviceType"/>
+      <item facet="type" translator="codelist:gmd:MD_ScopeCode"/>
+      <item facet="createDateYear" sortOrder="asc"/>
+    </summaryType>
+  </summaryTypes>
+
+</bean:beans>
diff --git a/src/main/webapp/WEB-INF/config.xml b/src/main/webapp/WEB-INF/config.xml
new file mode 100644
index 0000000..998427c
--- /dev/null
+++ b/src/main/webapp/WEB-INF/config.xml
@@ -0,0 +1,311 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+  ~ Copyright (C) 2001-2016 Food and Agriculture Organization of the
+  ~ United Nations (FAO-UN), United Nations World Food Programme (WFP)
+  ~ and United Nations Environment Programme (UNEP)
+  ~
+  ~ This program is free software; you can redistribute it and/or modify
+  ~ it under the terms of the GNU General Public License as published by
+  ~ the Free Software Foundation; either version 2 of the License, or (at
+  ~ your option) any later version.
+  ~
+  ~ This program is distributed in the hope that it will be useful, but
+  ~ WITHOUT ANY WARRANTY; without even the implied warranty of
+  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+  ~ General Public License for more details.
+  ~
+  ~ You should have received a copy of the GNU General Public License
+  ~ along with this program; if not, write to the Free Software
+  ~ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
+  ~
+  ~ Contact: Jeroen Ticheler - FAO - Viale delle Terme di Caracalla 2,
+  ~ Rome - Italy. email: geonetwork@osgeo.org
+  -->
+
+<geonet>
+  <!-- ====================================================================== -->
+
+  <general>
+    <!-- Size must be in megabyte (integer), 100MB by default -->
+    <maxUploadSize>100</maxUploadSize>
+    <uploadDir>./data/tmp</uploadDir>
+    <debug>false</debug>
+  </general>
+
+  <!-- ====================================================================== -->
+
+  <default>
+    <service>home</service>
+    <!-- the following service is called if there is an exception raised
+            during the initialization of resources or
+            the appHandler org.fao.geonet.Geonetwork
+        -->
+    <startupErrorService>error</startupErrorService>
+    <language>fre</language>
+    <localized>true</localized>
+    <contentType>text/html; charset=UTF-8</contentType>
+
+    <gui>
+      <xml name="strings" file="xml/strings.xml"/>
+
+      <call name="isolanguages" class="org.fao.geonet.guiservices.isolanguages.Get"/>
+
+      <call name="session" class="jeeves.guiservices.session.Get"/>
+      <call name="env" class="org.fao.geonet.guiservices.util.Env"/>
+      <call name="systemConfig" class="org.fao.geonet.services.config.Get"/>
+      <call name="results" class="org.fao.geonet.guiservices.search.GetResultsInfo"/>
+      <call name="schemalist" class="org.fao.geonet.guiservices.schemas.Get"/>
+      <call name="svnmanager" class="org.fao.geonet.guiservices.util.GetSvnDetails"/>
+
+      <!-- this service adds labels and codelists from all schemas -->
+      <call name="schemas" class="org.fao.geonet.guiservices.schemas.GetSchemaInfo"/>
+      <!-- @vlc start utile ? -->
+      <xml name="config" file="WEB-INF/config-gui.xml" localized="false" />
+      <!-- @vlc end -->
+    </gui>
+
+    <!-- no privileges to access the service -->
+
+    <error id="service-not-allowed" sheet="../xslt/common/error.xsl" statusCode="403">
+      <xml name="error" file="xml/privileges-error.xml"/>
+    </error>
+
+    <!-- data in upload too big -->
+
+    <error id="file-upload-too-big" sheet="../xslt/common/error.xsl">
+      <xml name="error" file="xml/file-too-big-error.xml"/>
+    </error>
+
+    <!-- general error -->
+
+    <error sheet="../xslt/common/error.xsl">
+      <xml name="error" file="xml/error.xml"/>
+    </error>
+
+  </default>
+
+  <!-- ====================================================================== -->
+
+  <appHandler class="org.fao.geonet.Geonetwork">
+    <!-- language profiles for automatic language detection -->
+    <param name="languageProfilesDir" value="resources/language-profiles"/>
+
+    <param name="licenseDir" value="WEB-INF/licenses"/>
+    <param name="summaryConfig" value="WEB-INF/config-summary.xml"/>
+    <!-- @vlc start utile ? -->
+    <param name="guiConfig" value="WEB-INF/config-gui.xml" />
+    <!-- @vlc end -->
+    <param name="luceneConfig" value="WEB-INF/config-lucene.xml"/>
+
+    <!-- Preferred schema parameter is used on import
+            when a ZIP or MEF file is imported with more than one
+            xml files. For example, export produce one file for
+            iso19139 and on file for the ISO profil (eg. fra, che).
+
+            Recommanded value is iso19139 if user is not
+            interested for having metadata in a specific
+            ISO profil.
+        -->
+    <param name="preferredSchema" value="iso19139"/>
+    <param name="jzkitConfig" value="JZkitApplicationContext.xml"/>
+    <param name="metadataNotifierConfig" value="WEB-INF/config-notifier.xml"/>
+<!-- ALK@4.1: comment params -->
+    <!-- search statistics stuff -->
+    <!-- true to log into DB WKT of spatial objects involved in a search operation
+        CAUTION ! this can lead to HUGE database and CSV export if detailed geo objects are used:
+        several Gb for instance...-->
+<!--     <param name="statLogSpatialObjects" value="false"/> -->
+<!--     <param name="statLogAsynch" value="true"/> -->
+    <!-- The list of Lucene term fields to exlucde from log, to avoid storing unecessary information -->
+<!--     <param name="statLuceneTermsExclude"
+           value="_op0,_op1,_op2,_op3,_op4,_op5,_op6,_isTemplate,_locale,_owner,_groupOwner,_dummy,type"/> -->
+<!-- /ALK@4.1 -->
+
+    <!-- The maximum number of writes in a transaction on the spatial index
+
+            Set to 1 forces the spatialIndexWriter to commit after each spatial
+            feature is written. Set to a large number and commits are delayed until
+            that number of spatial features is written (this should be faster than
+            committing after each write). Be aware that setting this
+            number to anything other than 1 can cause problems with indexing
+            if the connection to the database is closed whilst GeoNetwork is running
+            (eg. if the db admin shuts the database for maintenance reasons).
+        -->
+    <param name="maxWritesInTransaction" value="1"/>
+
+    <param name="DBHeartBeatEnabled" value="false"/>
+    <param name="DBHeartBeatInitialDelaySeconds" value="20"/>
+    <param name="DBHeartBeatFixedDelaySeconds" value="20"/>
+
+    <!-- Define if the schema catalog should be updated on startup.
+        Default is true. -->
+    <param name="createOrUpdateSchemaCatalog" value="true"/>
+  </appHandler>
+
+  <!-- ====================================================================== -->
+
+  <services package="org.fao.geonet">
+
+    <!-- Ext GUIs -->
+    <service name="feedback.send">
+      <class name=".services.feedback.Receptor"/>
+      <output sheet="extjs-feedback-response.xsl" contentType="application/json; charset=UTF-8"/>
+    </service>
+
+    <service name="util.ping">
+      <class name="jeeves.services.Ping"/>
+    </service>
+
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <!-- Resources management services                                 -->
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
+
+    <service name="file.disclaimer">
+      <class name=".services.feedback.AddLimitations"/>
+      <output sheet="file-download-disclaimer.xsl"/>
+    </service>
+
+
+    <service name="file.download">
+      <class name=".services.feedback.Insert"/>
+
+      <output sheet="file-download.xsl"/>
+    </service>
+
+    <service name="prepare.file.download">
+      <class name=".services.metadata.PrepareFileDownload"/>
+      <output sheet="file-download-list.xsl"/>
+    </service>
+
+    <service name="resources.get.archive">
+      <class name=".services.resources.DownloadArchive"/>
+
+      <error id="file-not-found" sheet="error-embedded.xsl" statusCode="404">
+        <xml name="error" file="xml/file-not-found-error.xml"/>
+      </error>
+
+      <output file="true"/>
+    </service>
+
+
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <!-- KML services -->
+    <!-- Show WMS service in GE -->
+    <service name="google.kml">
+      <class name=".services.metadata.Show"/>
+      <output sheet="kml.xsl" contentType="application/kml; charset=UTF-8">
+      </output>
+      <error id="operation-not-allowed" sheet="../xslt/common/error.xsl" statusCode="403">
+        <xml name="error" file="xml/privileges-error.xml"/>
+      </error>
+    </service>
+
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <!-- MEF services -->
+
+    <service name="mef.import">
+      <class name=".services.mef.Import"/>
+      <error sheet="xml-error.xsl" contentType="application/xml; charset=UTF-8"/>
+    </service>
+
+    <service name="xml.mef.import.ui">
+      <!-- TODO rename Catalogue.js -->
+      <class name=".services.mef.Import"/>
+      <output sheet="metadata/md-insert-results.xsl"/>
+
+      <error sheet="error-xml.xsl"/>
+    </service>
+
+    <service name="map.import">
+      <class name=".services.mef.ImportWebMap"/>
+      <error sheet="xml-error.xsl" contentType="application/xml; charset=UTF-8"/>
+    </service>
+
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
+
+    <service name="mef.export">
+      <class name=".services.mef.Export"/>
+      <output file="true"/>
+      <error sheet="xml-error.xsl" contentType="application/xml; charset=UTF-8"/>
+    </service>
+
+
+    <service name="crs.types" deprecated="true">
+      <!-- Still used by ExtJS editor -->
+      <class name=".services.crs.GetCRSTypes"/>
+    </service>
+    <service name="crs.get" deprecated="true">
+      <!-- Still used by ExtJS editor -->
+      <class name=".services.crs.GetCRS"/>
+      <output sheet="crs.xsl" contentType="text/xml; charset=UTF-8"/>
+    </service>
+
+
+    <service name="isolanguages" deprecated="true">
+      <!-- Still used by ExtJS search form criteria on language -->
+      <class name="org.fao.geonet.guiservices.isolanguages.Get"/>
+    </service>
+  </services>
+
+  <!-- ====================================================================== -->
+
+  <include>config-metadata.xml</include>
+  <include>config-metadata-experimental.xml</include>
+  <include>config-portal.xml</include>
+  <include>config-export.xml</include>
+
+  <!-- ====================================================================== -->
+
+  <!-- New section of services based on refactoring
+    guideline https://github.com/geonetwork/core-geonetwork/wiki/RefactoringXSLTAndUserInterface -->
+
+  <include>config/config-service-xml-api.xml</include>
+
+  <include>config/config-service-search.xml</include>
+  <include>config/config-service-sru.xml</include>
+  <include>config/config-service-oai.xml</include>
+  <include>config/config-service-rss.xml</include>
+  <include>config/config-service-csv.xml</include>
+  <include>config/config-service-dcat-rdf.xml</include>
+  <include>config/config-service-pdf.xml</include>
+
+  <include>config/config-service-thesaurus.xml</include>
+  <include>config/config-service-region.xml</include>
+
+  <include>config/config-service-admin.xml</include>
+  <include>config/config-service-admin-harvesting.xml</include>
+
+  <include>config/config-service-admin-schema.xml</include>
+  <include>config/config-service-admin-schematron.xml</include>
+  <include>config/config-service-batch.xml</include>
+
+  <include>config/config-service-admin-notification.xml</include>
+  <include>config/config-service-admin-index.xml</include>
+  <include>config/config-service-admin-io.xml</include>
+  <include>config/config-service-admin-logo.xml</include>
+  <include>config/config-service-admin-user-and-group.xml</include>
+  <include>config/config-service-admin-geoserver-publication.xml</include>
+  <include>config/config-service-admin-transfert-privileges.xml</include>
+  <include>config/config-service-admin-formatter.xml</include>
+
+  <!-- ALK@4.1:comment <include>config/config-service-statistics.xml</include> --> 
+
+  <include>config/config-service-csw.xml</include>
+  <include>config/config-service-csw-virtual.xml</include>
+
+  <include>config/config-service-sitemap.xml</include>
+
+  <include>config/config-service-crs.xml</include>
+
+  <include>config/config-service-subtemplate.xml</include>
+
+  <include>config/config-ui-search.xml</include>
+  <include>config/config-ui-metadata.xml</include>
+  <include>config/config-ui-admin.xml</include>
+
+  <include>config/config-service-monitoring.xml</include>
+
+  <include>config/config-service-reports.xml</include>
+
+  <include>config/config-service-inspireatom.xml</include>
+</geonet>
diff --git a/src/main/webapp/WEB-INF/data/config/codelist/external/thesauri/theme/inspire-service-taxonomy.rdf b/src/main/webapp/WEB-INF/data/config/codelist/external/thesauri/theme/inspire-service-taxonomy.rdf
new file mode 100644
index 0000000..08edcd2
--- /dev/null
+++ b/src/main/webapp/WEB-INF/data/config/codelist/external/thesauri/theme/inspire-service-taxonomy.rdf
@@ -0,0 +1,1912 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:foaf="http://xmlns.com/foaf/0.1/" xmlns:dcterms="http://purl.org/dc/terms/" xmlns:skos="http://www.w3.org/2004/02/skos/core#" xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#" xmlns:exslt="http://exslt.org/common" xmlns:gemet="http://www.eionet.europa.eu/gemet/2004/06/gemet-schema.rdf#">
+  <skos:ConceptScheme rdf:about="http://geonetwork-opensource.org/inspire-service-taxonomy">
+    <dc:title>INSPIRE Service taxonomy</dc:title>
+    <dc:description>INSPIRE service taxonomy for GeoNetwork opensource.
+	Codelist is used for now and should be stored in gmd:keywords elements.
+	Another option could be to add "Translation (codelistValue)" in gmd:keywords.
+	INSPIRE schematron rules could then use contains instead of equal operator.</dc:description>
+    <dc:creator>
+      <foaf:Organization>
+        <foaf:name />
+      </foaf:Organization>
+    </dc:creator>
+    <dcterms:modified>2010-04-22 07:57:15</dcterms:modified>
+  </skos:ConceptScheme>
+  <skos:Concept rdf:about="urn:inspire:service:taxonomy:humanInteractionService">
+    <skos:prefLabel xml:lang="fr">humanInteractionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="en">humanInteractionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="nl">humanInteractionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sv">humanInteractionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sl">humanInteractionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sk">humanInteractionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="ro">humanInteractionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pl">humanInteractionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pt">humanInteractionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="mt">humanInteractionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lv">humanInteractionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lt">humanInteractionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="it">humanInteractionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="hu">humanInteractionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="fi">humanInteractionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="es">humanInteractionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="et">humanInteractionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="el">humanInteractionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="de">humanInteractionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="bg">humanInteractionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="da">humanInteractionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="cs">humanInteractionService</skos:prefLabel>
+  </skos:Concept>
+  <skos:Concept rdf:about="urn:inspire:service:taxonomy:humanCatalogueViewer">
+    <skos:prefLabel xml:lang="fr">humanCatalogueViewer</skos:prefLabel>
+    <skos:prefLabel xml:lang="en">humanCatalogueViewer</skos:prefLabel>
+    <skos:prefLabel xml:lang="nl">humanCatalogueViewer</skos:prefLabel>
+    <skos:prefLabel xml:lang="sv">humanCatalogueViewer</skos:prefLabel>
+    <skos:prefLabel xml:lang="sl">humanCatalogueViewer</skos:prefLabel>
+    <skos:prefLabel xml:lang="sk">humanCatalogueViewer</skos:prefLabel>
+    <skos:prefLabel xml:lang="ro">humanCatalogueViewer</skos:prefLabel>
+    <skos:prefLabel xml:lang="pl">humanCatalogueViewer</skos:prefLabel>
+    <skos:prefLabel xml:lang="pt">humanCatalogueViewer</skos:prefLabel>
+    <skos:prefLabel xml:lang="mt">humanCatalogueViewer</skos:prefLabel>
+    <skos:prefLabel xml:lang="lv">humanCatalogueViewer</skos:prefLabel>
+    <skos:prefLabel xml:lang="lt">humanCatalogueViewer</skos:prefLabel>
+    <skos:prefLabel xml:lang="it">humanCatalogueViewer</skos:prefLabel>
+    <skos:prefLabel xml:lang="hu">humanCatalogueViewer</skos:prefLabel>
+    <skos:prefLabel xml:lang="fi">humanCatalogueViewer</skos:prefLabel>
+    <skos:prefLabel xml:lang="es">humanCatalogueViewer</skos:prefLabel>
+    <skos:prefLabel xml:lang="et">humanCatalogueViewer</skos:prefLabel>
+    <skos:prefLabel xml:lang="el">humanCatalogueViewer</skos:prefLabel>
+    <skos:prefLabel xml:lang="de">humanCatalogueViewer</skos:prefLabel>
+    <skos:prefLabel xml:lang="bg">humanCatalogueViewer</skos:prefLabel>
+    <skos:prefLabel xml:lang="da">humanCatalogueViewer</skos:prefLabel>
+    <skos:prefLabel xml:lang="cs">humanCatalogueViewer</skos:prefLabel>
+  </skos:Concept>
+  <skos:Concept rdf:about="urn:inspire:service:taxonomy:humanGeographicViewer">
+    <skos:prefLabel xml:lang="fr">humanGeographicViewer</skos:prefLabel>
+    <skos:prefLabel xml:lang="en">humanGeographicViewer</skos:prefLabel>
+    <skos:prefLabel xml:lang="nl">humanGeographicViewer</skos:prefLabel>
+    <skos:prefLabel xml:lang="sv">humanGeographicViewer</skos:prefLabel>
+    <skos:prefLabel xml:lang="sl">humanGeographicViewer</skos:prefLabel>
+    <skos:prefLabel xml:lang="sk">humanGeographicViewer</skos:prefLabel>
+    <skos:prefLabel xml:lang="ro">humanGeographicViewer</skos:prefLabel>
+    <skos:prefLabel xml:lang="pl">humanGeographicViewer</skos:prefLabel>
+    <skos:prefLabel xml:lang="pt">humanGeographicViewer</skos:prefLabel>
+    <skos:prefLabel xml:lang="mt">humanGeographicViewer</skos:prefLabel>
+    <skos:prefLabel xml:lang="lv">humanGeographicViewer</skos:prefLabel>
+    <skos:prefLabel xml:lang="lt">humanGeographicViewer</skos:prefLabel>
+    <skos:prefLabel xml:lang="it">humanGeographicViewer</skos:prefLabel>
+    <skos:prefLabel xml:lang="hu">humanGeographicViewer</skos:prefLabel>
+    <skos:prefLabel xml:lang="fi">humanGeographicViewer</skos:prefLabel>
+    <skos:prefLabel xml:lang="es">humanGeographicViewer</skos:prefLabel>
+    <skos:prefLabel xml:lang="et">humanGeographicViewer</skos:prefLabel>
+    <skos:prefLabel xml:lang="el">humanGeographicViewer</skos:prefLabel>
+    <skos:prefLabel xml:lang="de">humanGeographicViewer</skos:prefLabel>
+    <skos:prefLabel xml:lang="bg">humanGeographicViewer</skos:prefLabel>
+    <skos:prefLabel xml:lang="da">humanGeographicViewer</skos:prefLabel>
+    <skos:prefLabel xml:lang="cs">humanGeographicViewer</skos:prefLabel>
+  </skos:Concept>
+  <skos:Concept rdf:about="urn:inspire:service:taxonomy:humanGeographicSpreadsheetViewer">
+    <skos:prefLabel xml:lang="fr">humanGeographicSpreadsheetViewer</skos:prefLabel>
+    <skos:prefLabel xml:lang="en">humanGeographicSpreadsheetViewer</skos:prefLabel>
+    <skos:prefLabel xml:lang="nl">humanGeographicSpreadsheetViewer</skos:prefLabel>
+    <skos:prefLabel xml:lang="sv">humanGeographicSpreadsheetViewer</skos:prefLabel>
+    <skos:prefLabel xml:lang="sl">humanGeographicSpreadsheetViewer</skos:prefLabel>
+    <skos:prefLabel xml:lang="sk">humanGeographicSpreadsheetViewer</skos:prefLabel>
+    <skos:prefLabel xml:lang="ro">humanGeographicSpreadsheetViewer</skos:prefLabel>
+    <skos:prefLabel xml:lang="pl">humanGeographicSpreadsheetViewer</skos:prefLabel>
+    <skos:prefLabel xml:lang="pt">humanGeographicSpreadsheetViewer</skos:prefLabel>
+    <skos:prefLabel xml:lang="mt">humanGeographicSpreadsheetViewer</skos:prefLabel>
+    <skos:prefLabel xml:lang="lv">humanGeographicSpreadsheetViewer</skos:prefLabel>
+    <skos:prefLabel xml:lang="lt">humanGeographicSpreadsheetViewer</skos:prefLabel>
+    <skos:prefLabel xml:lang="it">humanGeographicSpreadsheetViewer</skos:prefLabel>
+    <skos:prefLabel xml:lang="hu">humanGeographicSpreadsheetViewer</skos:prefLabel>
+    <skos:prefLabel xml:lang="fi">humanGeographicSpreadsheetViewer</skos:prefLabel>
+    <skos:prefLabel xml:lang="es">humanGeographicSpreadsheetViewer</skos:prefLabel>
+    <skos:prefLabel xml:lang="et">humanGeographicSpreadsheetViewer</skos:prefLabel>
+    <skos:prefLabel xml:lang="el">humanGeographicSpreadsheetViewer</skos:prefLabel>
+    <skos:prefLabel xml:lang="de">humanGeographicSpreadsheetViewer</skos:prefLabel>
+    <skos:prefLabel xml:lang="bg">humanGeographicSpreadsheetViewer</skos:prefLabel>
+    <skos:prefLabel xml:lang="da">humanGeographicSpreadsheetViewer</skos:prefLabel>
+    <skos:prefLabel xml:lang="cs">humanGeographicSpreadsheetViewer</skos:prefLabel>
+  </skos:Concept>
+  <skos:Concept rdf:about="urn:inspire:service:taxonomy:humanServiceEditor">
+    <skos:prefLabel xml:lang="fr">humanServiceEditor</skos:prefLabel>
+    <skos:prefLabel xml:lang="en">humanServiceEditor</skos:prefLabel>
+    <skos:prefLabel xml:lang="nl">humanServiceEditor</skos:prefLabel>
+    <skos:prefLabel xml:lang="sv">humanServiceEditor</skos:prefLabel>
+    <skos:prefLabel xml:lang="sl">humanServiceEditor</skos:prefLabel>
+    <skos:prefLabel xml:lang="sk">humanServiceEditor</skos:prefLabel>
+    <skos:prefLabel xml:lang="ro">humanServiceEditor</skos:prefLabel>
+    <skos:prefLabel xml:lang="pl">humanServiceEditor</skos:prefLabel>
+    <skos:prefLabel xml:lang="pt">humanServiceEditor</skos:prefLabel>
+    <skos:prefLabel xml:lang="mt">humanServiceEditor</skos:prefLabel>
+    <skos:prefLabel xml:lang="lv">humanServiceEditor</skos:prefLabel>
+    <skos:prefLabel xml:lang="lt">humanServiceEditor</skos:prefLabel>
+    <skos:prefLabel xml:lang="it">humanServiceEditor</skos:prefLabel>
+    <skos:prefLabel xml:lang="hu">humanServiceEditor</skos:prefLabel>
+    <skos:prefLabel xml:lang="fi">humanServiceEditor</skos:prefLabel>
+    <skos:prefLabel xml:lang="es">humanServiceEditor</skos:prefLabel>
+    <skos:prefLabel xml:lang="et">humanServiceEditor</skos:prefLabel>
+    <skos:prefLabel xml:lang="el">humanServiceEditor</skos:prefLabel>
+    <skos:prefLabel xml:lang="de">humanServiceEditor</skos:prefLabel>
+    <skos:prefLabel xml:lang="bg">humanServiceEditor</skos:prefLabel>
+    <skos:prefLabel xml:lang="da">humanServiceEditor</skos:prefLabel>
+    <skos:prefLabel xml:lang="cs">humanServiceEditor</skos:prefLabel>
+  </skos:Concept>
+  <skos:Concept rdf:about="urn:inspire:service:taxonomy:humanChainDefinitionEditor">
+    <skos:prefLabel xml:lang="fr">humanChainDefinitionEditor</skos:prefLabel>
+    <skos:prefLabel xml:lang="en">humanChainDefinitionEditor</skos:prefLabel>
+    <skos:prefLabel xml:lang="nl">humanChainDefinitionEditor</skos:prefLabel>
+    <skos:prefLabel xml:lang="sv">humanChainDefinitionEditor</skos:prefLabel>
+    <skos:prefLabel xml:lang="sl">humanChainDefinitionEditor</skos:prefLabel>
+    <skos:prefLabel xml:lang="sk">humanChainDefinitionEditor</skos:prefLabel>
+    <skos:prefLabel xml:lang="ro">humanChainDefinitionEditor</skos:prefLabel>
+    <skos:prefLabel xml:lang="pl">humanChainDefinitionEditor</skos:prefLabel>
+    <skos:prefLabel xml:lang="pt">humanChainDefinitionEditor</skos:prefLabel>
+    <skos:prefLabel xml:lang="mt">humanChainDefinitionEditor</skos:prefLabel>
+    <skos:prefLabel xml:lang="lv">humanChainDefinitionEditor</skos:prefLabel>
+    <skos:prefLabel xml:lang="lt">humanChainDefinitionEditor</skos:prefLabel>
+    <skos:prefLabel xml:lang="it">humanChainDefinitionEditor</skos:prefLabel>
+    <skos:prefLabel xml:lang="hu">humanChainDefinitionEditor</skos:prefLabel>
+    <skos:prefLabel xml:lang="fi">humanChainDefinitionEditor</skos:prefLabel>
+    <skos:prefLabel xml:lang="es">humanChainDefinitionEditor</skos:prefLabel>
+    <skos:prefLabel xml:lang="et">humanChainDefinitionEditor</skos:prefLabel>
+    <skos:prefLabel xml:lang="el">humanChainDefinitionEditor</skos:prefLabel>
+    <skos:prefLabel xml:lang="de">humanChainDefinitionEditor</skos:prefLabel>
+    <skos:prefLabel xml:lang="bg">humanChainDefinitionEditor</skos:prefLabel>
+    <skos:prefLabel xml:lang="da">humanChainDefinitionEditor</skos:prefLabel>
+    <skos:prefLabel xml:lang="cs">humanChainDefinitionEditor</skos:prefLabel>
+  </skos:Concept>
+  <skos:Concept rdf:about="urn:inspire:service:taxonomy:humanWorkflowEnactmentManager">
+    <skos:prefLabel xml:lang="fr">humanWorkflowEnactmentManager</skos:prefLabel>
+    <skos:prefLabel xml:lang="en">humanWorkflowEnactmentManager</skos:prefLabel>
+    <skos:prefLabel xml:lang="nl">humanWorkflowEnactmentManager</skos:prefLabel>
+    <skos:prefLabel xml:lang="sv">humanWorkflowEnactmentManager</skos:prefLabel>
+    <skos:prefLabel xml:lang="sl">humanWorkflowEnactmentManager</skos:prefLabel>
+    <skos:prefLabel xml:lang="sk">humanWorkflowEnactmentManager</skos:prefLabel>
+    <skos:prefLabel xml:lang="ro">humanWorkflowEnactmentManager</skos:prefLabel>
+    <skos:prefLabel xml:lang="pl">humanWorkflowEnactmentManager</skos:prefLabel>
+    <skos:prefLabel xml:lang="pt">humanWorkflowEnactmentManager</skos:prefLabel>
+    <skos:prefLabel xml:lang="mt">humanWorkflowEnactmentManager</skos:prefLabel>
+    <skos:prefLabel xml:lang="lv">humanWorkflowEnactmentManager</skos:prefLabel>
+    <skos:prefLabel xml:lang="lt">humanWorkflowEnactmentManager</skos:prefLabel>
+    <skos:prefLabel xml:lang="it">humanWorkflowEnactmentManager</skos:prefLabel>
+    <skos:prefLabel xml:lang="hu">humanWorkflowEnactmentManager</skos:prefLabel>
+    <skos:prefLabel xml:lang="fi">humanWorkflowEnactmentManager</skos:prefLabel>
+    <skos:prefLabel xml:lang="es">humanWorkflowEnactmentManager</skos:prefLabel>
+    <skos:prefLabel xml:lang="et">humanWorkflowEnactmentManager</skos:prefLabel>
+    <skos:prefLabel xml:lang="el">humanWorkflowEnactmentManager</skos:prefLabel>
+    <skos:prefLabel xml:lang="de">humanWorkflowEnactmentManager</skos:prefLabel>
+    <skos:prefLabel xml:lang="bg">humanWorkflowEnactmentManager</skos:prefLabel>
+    <skos:prefLabel xml:lang="da">humanWorkflowEnactmentManager</skos:prefLabel>
+    <skos:prefLabel xml:lang="cs">humanWorkflowEnactmentManager</skos:prefLabel>
+  </skos:Concept>
+  <skos:Concept rdf:about="urn:inspire:service:taxonomy:humanGeographicFeatureEditor">
+    <skos:prefLabel xml:lang="fr">humanGeographicFeatureEditor</skos:prefLabel>
+    <skos:prefLabel xml:lang="en">humanGeographicFeatureEditor</skos:prefLabel>
+    <skos:prefLabel xml:lang="nl">humanGeographicFeatureEditor</skos:prefLabel>
+    <skos:prefLabel xml:lang="sv">humanGeographicFeatureEditor</skos:prefLabel>
+    <skos:prefLabel xml:lang="sl">humanGeographicFeatureEditor</skos:prefLabel>
+    <skos:prefLabel xml:lang="sk">humanGeographicFeatureEditor</skos:prefLabel>
+    <skos:prefLabel xml:lang="ro">humanGeographicFeatureEditor</skos:prefLabel>
+    <skos:prefLabel xml:lang="pl">humanGeographicFeatureEditor</skos:prefLabel>
+    <skos:prefLabel xml:lang="pt">humanGeographicFeatureEditor</skos:prefLabel>
+    <skos:prefLabel xml:lang="mt">humanGeographicFeatureEditor</skos:prefLabel>
+    <skos:prefLabel xml:lang="lv">humanGeographicFeatureEditor</skos:prefLabel>
+    <skos:prefLabel xml:lang="lt">humanGeographicFeatureEditor</skos:prefLabel>
+    <skos:prefLabel xml:lang="it">humanGeographicFeatureEditor</skos:prefLabel>
+    <skos:prefLabel xml:lang="hu">humanGeographicFeatureEditor</skos:prefLabel>
+    <skos:prefLabel xml:lang="fi">humanGeographicFeatureEditor</skos:prefLabel>
+    <skos:prefLabel xml:lang="es">humanGeographicFeatureEditor</skos:prefLabel>
+    <skos:prefLabel xml:lang="et">humanGeographicFeatureEditor</skos:prefLabel>
+    <skos:prefLabel xml:lang="el">humanGeographicFeatureEditor</skos:prefLabel>
+    <skos:prefLabel xml:lang="de">humanGeographicFeatureEditor</skos:prefLabel>
+    <skos:prefLabel xml:lang="bg">humanGeographicFeatureEditor</skos:prefLabel>
+    <skos:prefLabel xml:lang="da">humanGeographicFeatureEditor</skos:prefLabel>
+    <skos:prefLabel xml:lang="cs">humanGeographicFeatureEditor</skos:prefLabel>
+  </skos:Concept>
+  <skos:Concept rdf:about="urn:inspire:service:taxonomy:humanGeographicSymbolEditor">
+    <skos:prefLabel xml:lang="fr">humanGeographicSymbolEditor</skos:prefLabel>
+    <skos:prefLabel xml:lang="en">humanGeographicSymbolEditor</skos:prefLabel>
+    <skos:prefLabel xml:lang="nl">humanGeographicSymbolEditor</skos:prefLabel>
+    <skos:prefLabel xml:lang="sv">humanGeographicSymbolEditor</skos:prefLabel>
+    <skos:prefLabel xml:lang="sl">humanGeographicSymbolEditor</skos:prefLabel>
+    <skos:prefLabel xml:lang="sk">humanGeographicSymbolEditor</skos:prefLabel>
+    <skos:prefLabel xml:lang="ro">humanGeographicSymbolEditor</skos:prefLabel>
+    <skos:prefLabel xml:lang="pl">humanGeographicSymbolEditor</skos:prefLabel>
+    <skos:prefLabel xml:lang="pt">humanGeographicSymbolEditor</skos:prefLabel>
+    <skos:prefLabel xml:lang="mt">humanGeographicSymbolEditor</skos:prefLabel>
+    <skos:prefLabel xml:lang="lv">humanGeographicSymbolEditor</skos:prefLabel>
+    <skos:prefLabel xml:lang="lt">humanGeographicSymbolEditor</skos:prefLabel>
+    <skos:prefLabel xml:lang="it">humanGeographicSymbolEditor</skos:prefLabel>
+    <skos:prefLabel xml:lang="hu">humanGeographicSymbolEditor</skos:prefLabel>
+    <skos:prefLabel xml:lang="fi">humanGeographicSymbolEditor</skos:prefLabel>
+    <skos:prefLabel xml:lang="es">humanGeographicSymbolEditor</skos:prefLabel>
+    <skos:prefLabel xml:lang="et">humanGeographicSymbolEditor</skos:prefLabel>
+    <skos:prefLabel xml:lang="el">humanGeographicSymbolEditor</skos:prefLabel>
+    <skos:prefLabel xml:lang="de">humanGeographicSymbolEditor</skos:prefLabel>
+    <skos:prefLabel xml:lang="bg">humanGeographicSymbolEditor</skos:prefLabel>
+    <skos:prefLabel xml:lang="da">humanGeographicSymbolEditor</skos:prefLabel>
+    <skos:prefLabel xml:lang="cs">humanGeographicSymbolEditor</skos:prefLabel>
+  </skos:Concept>
+  <skos:Concept rdf:about="urn:inspire:service:taxonomy:humanFeatureGeneralizationEditor">
+    <skos:prefLabel xml:lang="fr">humanFeatureGeneralizationEditor</skos:prefLabel>
+    <skos:prefLabel xml:lang="en">humanFeatureGeneralizationEditor</skos:prefLabel>
+    <skos:prefLabel xml:lang="nl">humanFeatureGeneralizationEditor</skos:prefLabel>
+    <skos:prefLabel xml:lang="sv">humanFeatureGeneralizationEditor</skos:prefLabel>
+    <skos:prefLabel xml:lang="sl">humanFeatureGeneralizationEditor</skos:prefLabel>
+    <skos:prefLabel xml:lang="sk">humanFeatureGeneralizationEditor</skos:prefLabel>
+    <skos:prefLabel xml:lang="ro">humanFeatureGeneralizationEditor</skos:prefLabel>
+    <skos:prefLabel xml:lang="pl">humanFeatureGeneralizationEditor</skos:prefLabel>
+    <skos:prefLabel xml:lang="pt">humanFeatureGeneralizationEditor</skos:prefLabel>
+    <skos:prefLabel xml:lang="mt">humanFeatureGeneralizationEditor</skos:prefLabel>
+    <skos:prefLabel xml:lang="lv">humanFeatureGeneralizationEditor</skos:prefLabel>
+    <skos:prefLabel xml:lang="lt">humanFeatureGeneralizationEditor</skos:prefLabel>
+    <skos:prefLabel xml:lang="it">humanFeatureGeneralizationEditor</skos:prefLabel>
+    <skos:prefLabel xml:lang="hu">humanFeatureGeneralizationEditor</skos:prefLabel>
+    <skos:prefLabel xml:lang="fi">humanFeatureGeneralizationEditor</skos:prefLabel>
+    <skos:prefLabel xml:lang="es">humanFeatureGeneralizationEditor</skos:prefLabel>
+    <skos:prefLabel xml:lang="et">humanFeatureGeneralizationEditor</skos:prefLabel>
+    <skos:prefLabel xml:lang="el">humanFeatureGeneralizationEditor</skos:prefLabel>
+    <skos:prefLabel xml:lang="de">humanFeatureGeneralizationEditor</skos:prefLabel>
+    <skos:prefLabel xml:lang="bg">humanFeatureGeneralizationEditor</skos:prefLabel>
+    <skos:prefLabel xml:lang="da">humanFeatureGeneralizationEditor</skos:prefLabel>
+    <skos:prefLabel xml:lang="cs">humanFeatureGeneralizationEditor</skos:prefLabel>
+  </skos:Concept>
+  <skos:Concept rdf:about="urn:inspire:service:taxonomy:humanGeographicDataStructureViewer">
+    <skos:prefLabel xml:lang="fr">humanGeographicDataStructureViewer</skos:prefLabel>
+    <skos:prefLabel xml:lang="en">humanGeographicDataStructureViewer</skos:prefLabel>
+    <skos:prefLabel xml:lang="nl">humanGeographicDataStructureViewer</skos:prefLabel>
+    <skos:prefLabel xml:lang="sv">humanGeographicDataStructureViewer</skos:prefLabel>
+    <skos:prefLabel xml:lang="sl">humanGeographicDataStructureViewer</skos:prefLabel>
+    <skos:prefLabel xml:lang="sk">humanGeographicDataStructureViewer</skos:prefLabel>
+    <skos:prefLabel xml:lang="ro">humanGeographicDataStructureViewer</skos:prefLabel>
+    <skos:prefLabel xml:lang="pl">humanGeographicDataStructureViewer</skos:prefLabel>
+    <skos:prefLabel xml:lang="pt">humanGeographicDataStructureViewer</skos:prefLabel>
+    <skos:prefLabel xml:lang="mt">humanGeographicDataStructureViewer</skos:prefLabel>
+    <skos:prefLabel xml:lang="lv">humanGeographicDataStructureViewer</skos:prefLabel>
+    <skos:prefLabel xml:lang="lt">humanGeographicDataStructureViewer</skos:prefLabel>
+    <skos:prefLabel xml:lang="it">humanGeographicDataStructureViewer</skos:prefLabel>
+    <skos:prefLabel xml:lang="hu">humanGeographicDataStructureViewer</skos:prefLabel>
+    <skos:prefLabel xml:lang="fi">humanGeographicDataStructureViewer</skos:prefLabel>
+    <skos:prefLabel xml:lang="es">humanGeographicDataStructureViewer</skos:prefLabel>
+    <skos:prefLabel xml:lang="et">humanGeographicDataStructureViewer</skos:prefLabel>
+    <skos:prefLabel xml:lang="el">humanGeographicDataStructureViewer</skos:prefLabel>
+    <skos:prefLabel xml:lang="de">humanGeographicDataStructureViewer</skos:prefLabel>
+    <skos:prefLabel xml:lang="bg">humanGeographicDataStructureViewer</skos:prefLabel>
+    <skos:prefLabel xml:lang="da">humanGeographicDataStructureViewer</skos:prefLabel>
+    <skos:prefLabel xml:lang="cs">humanGeographicDataStructureViewer</skos:prefLabel>
+  </skos:Concept>
+  <skos:Concept rdf:about="urn:inspire:service:taxonomy:infoManagementService">
+    <skos:prefLabel xml:lang="fr">infoManagementService</skos:prefLabel>
+    <skos:prefLabel xml:lang="en">infoManagementService</skos:prefLabel>
+    <skos:prefLabel xml:lang="nl">infoManagementService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sv">infoManagementService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sl">infoManagementService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sk">infoManagementService</skos:prefLabel>
+    <skos:prefLabel xml:lang="ro">infoManagementService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pl">infoManagementService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pt">infoManagementService</skos:prefLabel>
+    <skos:prefLabel xml:lang="mt">infoManagementService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lv">infoManagementService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lt">infoManagementService</skos:prefLabel>
+    <skos:prefLabel xml:lang="it">infoManagementService</skos:prefLabel>
+    <skos:prefLabel xml:lang="hu">infoManagementService</skos:prefLabel>
+    <skos:prefLabel xml:lang="fi">infoManagementService</skos:prefLabel>
+    <skos:prefLabel xml:lang="es">infoManagementService</skos:prefLabel>
+    <skos:prefLabel xml:lang="et">infoManagementService</skos:prefLabel>
+    <skos:prefLabel xml:lang="el">infoManagementService</skos:prefLabel>
+    <skos:prefLabel xml:lang="de">infoManagementService</skos:prefLabel>
+    <skos:prefLabel xml:lang="bg">infoManagementService</skos:prefLabel>
+    <skos:prefLabel xml:lang="da">infoManagementService</skos:prefLabel>
+    <skos:prefLabel xml:lang="cs">infoManagementService</skos:prefLabel>
+  </skos:Concept>
+  <skos:Concept rdf:about="urn:inspire:service:taxonomy:infoFeatureAccessService">
+    <skos:prefLabel xml:lang="fr">infoFeatureAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="en">infoFeatureAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="nl">infoFeatureAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sv">infoFeatureAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sl">infoFeatureAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sk">infoFeatureAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="ro">infoFeatureAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pl">infoFeatureAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pt">infoFeatureAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="mt">infoFeatureAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lv">infoFeatureAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lt">infoFeatureAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="it">infoFeatureAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="hu">infoFeatureAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="fi">infoFeatureAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="es">infoFeatureAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="et">infoFeatureAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="el">infoFeatureAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="de">infoFeatureAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="bg">infoFeatureAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="da">infoFeatureAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="cs">infoFeatureAccessService</skos:prefLabel>
+  </skos:Concept>
+  <skos:Concept rdf:about="urn:inspire:service:taxonomy:infoMapAccessService">
+    <skos:prefLabel xml:lang="fr">infoMapAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="en">infoMapAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="nl">infoMapAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sv">infoMapAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sl">infoMapAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sk">infoMapAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="ro">infoMapAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pl">infoMapAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pt">infoMapAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="mt">infoMapAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lv">infoMapAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lt">infoMapAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="it">infoMapAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="hu">infoMapAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="fi">infoMapAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="es">infoMapAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="et">infoMapAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="el">infoMapAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="de">infoMapAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="bg">infoMapAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="da">infoMapAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="cs">infoMapAccessService</skos:prefLabel>
+  </skos:Concept>
+  <skos:Concept rdf:about="urn:inspire:service:taxonomy:infoMapAccessService">
+    <skos:prefLabel xml:lang="fr">infoMapAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="en">infoMapAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="nl">infoMapAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sv">infoMapAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sl">infoMapAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sk">infoMapAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="ro">infoMapAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pl">infoMapAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pt">infoMapAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="mt">infoMapAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lv">infoMapAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lt">infoMapAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="it">infoMapAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="hu">infoMapAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="fi">infoMapAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="es">infoMapAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="et">infoMapAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="el">infoMapAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="de">infoMapAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="bg">infoMapAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="da">infoMapAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="cs">infoMapAccessService</skos:prefLabel>
+  </skos:Concept>
+  <skos:Concept rdf:about="urn:inspire:service:taxonomy:infoChartAccessService">
+    <skos:prefLabel xml:lang="fr">infoChartAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="en">infoChartAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="nl">infoChartAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sv">infoChartAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sl">infoChartAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sk">infoChartAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="ro">infoChartAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pl">infoChartAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pt">infoChartAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="mt">infoChartAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lv">infoChartAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lt">infoChartAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="it">infoChartAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="hu">infoChartAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="fi">infoChartAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="es">infoChartAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="et">infoChartAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="el">infoChartAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="de">infoChartAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="bg">infoChartAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="da">infoChartAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="cs">infoChartAccessService</skos:prefLabel>
+  </skos:Concept>
+  <skos:Concept rdf:about="urn:inspire:service:taxonomy:infoSensorDescriptionService">
+    <skos:prefLabel xml:lang="fr">infoSensorDescriptionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="en">infoSensorDescriptionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="nl">infoSensorDescriptionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sv">infoSensorDescriptionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sl">infoSensorDescriptionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sk">infoSensorDescriptionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="ro">infoSensorDescriptionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pl">infoSensorDescriptionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pt">infoSensorDescriptionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="mt">infoSensorDescriptionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lv">infoSensorDescriptionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lt">infoSensorDescriptionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="it">infoSensorDescriptionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="hu">infoSensorDescriptionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="fi">infoSensorDescriptionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="es">infoSensorDescriptionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="et">infoSensorDescriptionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="el">infoSensorDescriptionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="de">infoSensorDescriptionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="bg">infoSensorDescriptionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="da">infoSensorDescriptionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="cs">infoSensorDescriptionService</skos:prefLabel>
+  </skos:Concept>
+  <skos:Concept rdf:about="urn:inspire:service:taxonomy:infoProductAccessService">
+    <skos:prefLabel xml:lang="fr">infoProductAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="en">infoProductAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="nl">infoProductAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sv">infoProductAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sl">infoProductAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sk">infoProductAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="ro">infoProductAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pl">infoProductAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pt">infoProductAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="mt">infoProductAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lv">infoProductAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lt">infoProductAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="it">infoProductAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="hu">infoProductAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="fi">infoProductAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="es">infoProductAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="et">infoProductAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="el">infoProductAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="de">infoProductAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="bg">infoProductAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="da">infoProductAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="cs">infoProductAccessService</skos:prefLabel>
+  </skos:Concept>
+  <skos:Concept rdf:about="urn:inspire:service:taxonomy:infoFeatureTypeService">
+    <skos:prefLabel xml:lang="fr">infoFeatureTypeService</skos:prefLabel>
+    <skos:prefLabel xml:lang="en">infoFeatureTypeService</skos:prefLabel>
+    <skos:prefLabel xml:lang="nl">infoFeatureTypeService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sv">infoFeatureTypeService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sl">infoFeatureTypeService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sk">infoFeatureTypeService</skos:prefLabel>
+    <skos:prefLabel xml:lang="ro">infoFeatureTypeService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pl">infoFeatureTypeService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pt">infoFeatureTypeService</skos:prefLabel>
+    <skos:prefLabel xml:lang="mt">infoFeatureTypeService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lv">infoFeatureTypeService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lt">infoFeatureTypeService</skos:prefLabel>
+    <skos:prefLabel xml:lang="it">infoFeatureTypeService</skos:prefLabel>
+    <skos:prefLabel xml:lang="hu">infoFeatureTypeService</skos:prefLabel>
+    <skos:prefLabel xml:lang="fi">infoFeatureTypeService</skos:prefLabel>
+    <skos:prefLabel xml:lang="es">infoFeatureTypeService</skos:prefLabel>
+    <skos:prefLabel xml:lang="et">infoFeatureTypeService</skos:prefLabel>
+    <skos:prefLabel xml:lang="el">infoFeatureTypeService</skos:prefLabel>
+    <skos:prefLabel xml:lang="de">infoFeatureTypeService</skos:prefLabel>
+    <skos:prefLabel xml:lang="bg">infoFeatureTypeService</skos:prefLabel>
+    <skos:prefLabel xml:lang="da">infoFeatureTypeService</skos:prefLabel>
+    <skos:prefLabel xml:lang="cs">infoFeatureTypeService</skos:prefLabel>
+  </skos:Concept>
+  <skos:Concept rdf:about="urn:inspire:service:taxonomy:infoCatalogueService">
+    <skos:prefLabel xml:lang="fr">infoCatalogueService</skos:prefLabel>
+    <skos:prefLabel xml:lang="en">infoCatalogueService</skos:prefLabel>
+    <skos:prefLabel xml:lang="nl">infoCatalogueService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sv">infoCatalogueService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sl">infoCatalogueService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sk">infoCatalogueService</skos:prefLabel>
+    <skos:prefLabel xml:lang="ro">infoCatalogueService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pl">infoCatalogueService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pt">infoCatalogueService</skos:prefLabel>
+    <skos:prefLabel xml:lang="mt">infoCatalogueService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lv">infoCatalogueService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lt">infoCatalogueService</skos:prefLabel>
+    <skos:prefLabel xml:lang="it">infoCatalogueService</skos:prefLabel>
+    <skos:prefLabel xml:lang="hu">infoCatalogueService</skos:prefLabel>
+    <skos:prefLabel xml:lang="fi">infoCatalogueService</skos:prefLabel>
+    <skos:prefLabel xml:lang="es">infoCatalogueService</skos:prefLabel>
+    <skos:prefLabel xml:lang="et">infoCatalogueService</skos:prefLabel>
+    <skos:prefLabel xml:lang="el">infoCatalogueService</skos:prefLabel>
+    <skos:prefLabel xml:lang="de">infoCatalogueService</skos:prefLabel>
+    <skos:prefLabel xml:lang="bg">infoCatalogueService</skos:prefLabel>
+    <skos:prefLabel xml:lang="da">infoCatalogueService</skos:prefLabel>
+    <skos:prefLabel xml:lang="cs">infoCatalogueService</skos:prefLabel>
+  </skos:Concept>
+  <skos:Concept rdf:about="urn:inspire:service:taxonomy:infoRegistryService">
+    <skos:prefLabel xml:lang="fr">infoRegistryService</skos:prefLabel>
+    <skos:prefLabel xml:lang="en">infoRegistryService</skos:prefLabel>
+    <skos:prefLabel xml:lang="nl">infoRegistryService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sv">infoRegistryService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sl">infoRegistryService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sk">infoRegistryService</skos:prefLabel>
+    <skos:prefLabel xml:lang="ro">infoRegistryService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pl">infoRegistryService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pt">infoRegistryService</skos:prefLabel>
+    <skos:prefLabel xml:lang="mt">infoRegistryService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lv">infoRegistryService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lt">infoRegistryService</skos:prefLabel>
+    <skos:prefLabel xml:lang="it">infoRegistryService</skos:prefLabel>
+    <skos:prefLabel xml:lang="hu">infoRegistryService</skos:prefLabel>
+    <skos:prefLabel xml:lang="fi">infoRegistryService</skos:prefLabel>
+    <skos:prefLabel xml:lang="es">infoRegistryService</skos:prefLabel>
+    <skos:prefLabel xml:lang="et">infoRegistryService</skos:prefLabel>
+    <skos:prefLabel xml:lang="el">infoRegistryService</skos:prefLabel>
+    <skos:prefLabel xml:lang="de">infoRegistryService</skos:prefLabel>
+    <skos:prefLabel xml:lang="bg">infoRegistryService</skos:prefLabel>
+    <skos:prefLabel xml:lang="da">infoRegistryService</skos:prefLabel>
+    <skos:prefLabel xml:lang="cs">infoRegistryService</skos:prefLabel>
+  </skos:Concept>
+  <skos:Concept rdf:about="urn:inspire:service:taxonomy:infoGazetteerService">
+    <skos:prefLabel xml:lang="fr">infoGazetteerService</skos:prefLabel>
+    <skos:prefLabel xml:lang="en">infoGazetteerService</skos:prefLabel>
+    <skos:prefLabel xml:lang="nl">infoGazetteerService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sv">infoGazetteerService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sl">infoGazetteerService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sk">infoGazetteerService</skos:prefLabel>
+    <skos:prefLabel xml:lang="ro">infoGazetteerService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pl">infoGazetteerService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pt">infoGazetteerService</skos:prefLabel>
+    <skos:prefLabel xml:lang="mt">infoGazetteerService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lv">infoGazetteerService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lt">infoGazetteerService</skos:prefLabel>
+    <skos:prefLabel xml:lang="it">infoGazetteerService</skos:prefLabel>
+    <skos:prefLabel xml:lang="hu">infoGazetteerService</skos:prefLabel>
+    <skos:prefLabel xml:lang="fi">infoGazetteerService</skos:prefLabel>
+    <skos:prefLabel xml:lang="es">infoGazetteerService</skos:prefLabel>
+    <skos:prefLabel xml:lang="et">infoGazetteerService</skos:prefLabel>
+    <skos:prefLabel xml:lang="el">infoGazetteerService</skos:prefLabel>
+    <skos:prefLabel xml:lang="de">infoGazetteerService</skos:prefLabel>
+    <skos:prefLabel xml:lang="bg">infoGazetteerService</skos:prefLabel>
+    <skos:prefLabel xml:lang="da">infoGazetteerService</skos:prefLabel>
+    <skos:prefLabel xml:lang="cs">infoGazetteerService</skos:prefLabel>
+  </skos:Concept>
+  <skos:Concept rdf:about="urn:inspire:service:taxonomy:infoOrderHandlingService">
+    <skos:prefLabel xml:lang="fr">infoOrderHandlingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="en">infoOrderHandlingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="nl">infoOrderHandlingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sv">infoOrderHandlingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sl">infoOrderHandlingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sk">infoOrderHandlingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="ro">infoOrderHandlingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pl">infoOrderHandlingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pt">infoOrderHandlingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="mt">infoOrderHandlingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lv">infoOrderHandlingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lt">infoOrderHandlingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="it">infoOrderHandlingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="hu">infoOrderHandlingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="fi">infoOrderHandlingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="es">infoOrderHandlingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="et">infoOrderHandlingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="el">infoOrderHandlingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="de">infoOrderHandlingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="bg">infoOrderHandlingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="da">infoOrderHandlingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="cs">infoOrderHandlingService</skos:prefLabel>
+  </skos:Concept>
+  <skos:Concept rdf:about="urn:inspire:service:taxonomy:infoStandingOrderService">
+    <skos:prefLabel xml:lang="fr">infoStandingOrderService</skos:prefLabel>
+    <skos:prefLabel xml:lang="en">infoStandingOrderService</skos:prefLabel>
+    <skos:prefLabel xml:lang="nl">infoStandingOrderService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sv">infoStandingOrderService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sl">infoStandingOrderService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sk">infoStandingOrderService</skos:prefLabel>
+    <skos:prefLabel xml:lang="ro">infoStandingOrderService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pl">infoStandingOrderService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pt">infoStandingOrderService</skos:prefLabel>
+    <skos:prefLabel xml:lang="mt">infoStandingOrderService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lv">infoStandingOrderService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lt">infoStandingOrderService</skos:prefLabel>
+    <skos:prefLabel xml:lang="it">infoStandingOrderService</skos:prefLabel>
+    <skos:prefLabel xml:lang="hu">infoStandingOrderService</skos:prefLabel>
+    <skos:prefLabel xml:lang="fi">infoStandingOrderService</skos:prefLabel>
+    <skos:prefLabel xml:lang="es">infoStandingOrderService</skos:prefLabel>
+    <skos:prefLabel xml:lang="et">infoStandingOrderService</skos:prefLabel>
+    <skos:prefLabel xml:lang="el">infoStandingOrderService</skos:prefLabel>
+    <skos:prefLabel xml:lang="de">infoStandingOrderService</skos:prefLabel>
+    <skos:prefLabel xml:lang="bg">infoStandingOrderService</skos:prefLabel>
+    <skos:prefLabel xml:lang="da">infoStandingOrderService</skos:prefLabel>
+    <skos:prefLabel xml:lang="cs">infoStandingOrderService</skos:prefLabel>
+  </skos:Concept>
+  <skos:Concept rdf:about="urn:inspire:service:taxonomy:taskManagementService">
+    <skos:prefLabel xml:lang="fr">taskManagementService</skos:prefLabel>
+    <skos:prefLabel xml:lang="en">taskManagementService</skos:prefLabel>
+    <skos:prefLabel xml:lang="nl">infoCoverageAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sv">infoCoverageAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sl">infoCoverageAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sk">infoCoverageAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="ro">infoCoverageAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pl">infoCoverageAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pt">infoCoverageAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="mt">infoCoverageAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lv">infoCoverageAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lt">infoCoverageAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="it">infoCoverageAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="hu">infoCoverageAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="fi">infoCoverageAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="es">infoCoverageAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="et">infoCoverageAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="el">infoCoverageAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="de">infoCoverageAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="bg">infoCoverageAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="da">infoCoverageAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="cs">infoCoverageAccessService</skos:prefLabel>
+  </skos:Concept>
+  <skos:Concept rdf:about="urn:inspire:service:taxonomy:chainDefinitionService">
+    <skos:prefLabel xml:lang="fr">chainDefinitionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="en">chainDefinitionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="nl">infoCoverageAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sv">infoCoverageAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sl">infoCoverageAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sk">infoCoverageAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="ro">infoCoverageAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pl">infoCoverageAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pt">infoCoverageAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="mt">infoCoverageAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lv">infoCoverageAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lt">infoCoverageAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="it">infoCoverageAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="hu">infoCoverageAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="fi">infoCoverageAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="es">infoCoverageAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="et">infoCoverageAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="el">infoCoverageAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="de">infoCoverageAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="bg">infoCoverageAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="da">infoCoverageAccessService</skos:prefLabel>
+    <skos:prefLabel xml:lang="cs">infoCoverageAccessService</skos:prefLabel>
+  </skos:Concept>
+  <skos:Concept rdf:about="urn:inspire:service:taxonomy:workflowEnactmentService">
+    <skos:prefLabel xml:lang="fr">workflowEnactmentService</skos:prefLabel>
+    <skos:prefLabel xml:lang="en">workflowEnactmentService</skos:prefLabel>
+	<skos:prefLabel xml:lang="nl">workflowEnactmentService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sv">workflowEnactmentService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sl">workflowEnactmentService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sk">workflowEnactmentService</skos:prefLabel>
+    <skos:prefLabel xml:lang="ro">workflowEnactmentService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pl">workflowEnactmentService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pt">workflowEnactmentService</skos:prefLabel>
+    <skos:prefLabel xml:lang="mt">workflowEnactmentService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lv">workflowEnactmentService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lt">workflowEnactmentService</skos:prefLabel>
+    <skos:prefLabel xml:lang="it">workflowEnactmentService</skos:prefLabel>
+    <skos:prefLabel xml:lang="hu">workflowEnactmentService</skos:prefLabel>
+    <skos:prefLabel xml:lang="fi">workflowEnactmentService</skos:prefLabel>
+    <skos:prefLabel xml:lang="es">workflowEnactmentService</skos:prefLabel>
+    <skos:prefLabel xml:lang="et">workflowEnactmentService</skos:prefLabel>
+    <skos:prefLabel xml:lang="el">workflowEnactmentService</skos:prefLabel>
+    <skos:prefLabel xml:lang="de">workflowEnactmentService</skos:prefLabel>
+    <skos:prefLabel xml:lang="bg">workflowEnactmentService</skos:prefLabel>
+    <skos:prefLabel xml:lang="da">workflowEnactmentService</skos:prefLabel>
+    <skos:prefLabel xml:lang="cs">workflowEnactmentService</skos:prefLabel>
+  </skos:Concept>
+  <skos:Concept rdf:about="urn:inspire:service:taxonomy:subscriptionService">
+    <skos:prefLabel xml:lang="fr">subscriptionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="en">subscriptionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="nl">subscriptionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sv">subscriptionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sl">subscriptionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sk">subscriptionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="ro">subscriptionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pl">subscriptionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pt">subscriptionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="mt">subscriptionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lv">subscriptionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lt">subscriptionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="it">subscriptionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="hu">subscriptionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="fi">subscriptionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="es">subscriptionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="et">subscriptionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="el">subscriptionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="de">subscriptionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="bg">subscriptionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="da">subscriptionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="cs">subscriptionService</skos:prefLabel>
+  </skos:Concept>
+  <skos:Concept rdf:about="urn:inspire:service:taxonomy:spatialProcessingService">
+    <skos:prefLabel xml:lang="fr">spatialProcessingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="en">spatialProcessingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="nl">spatialProcessingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sv">spatialProcessingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sl">spatialProcessingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sk">spatialProcessingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="ro">spatialProcessingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pl">spatialProcessingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pt">spatialProcessingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="mt">spatialProcessingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lv">spatialProcessingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lt">spatialProcessingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="it">spatialProcessingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="hu">spatialProcessingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="fi">spatialProcessingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="es">spatialProcessingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="et">spatialProcessingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="el">spatialProcessingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="de">spatialProcessingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="bg">spatialProcessingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="da">spatialProcessingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="cs">spatialProcessingService</skos:prefLabel>
+  </skos:Concept>
+  <skos:Concept rdf:about="urn:inspire:service:taxonomy:spatialCoordinateConversionService">
+    <skos:prefLabel xml:lang="fr">spatialCoordinateConversionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="en">spatialCoordinateConversionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="nl">spatialCoordinateConversionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sv">spatialCoordinateConversionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sl">spatialCoordinateConversionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sk">spatialCoordinateConversionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="ro">spatialCoordinateConversionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pl">spatialCoordinateConversionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pt">spatialCoordinateConversionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="mt">spatialCoordinateConversionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lv">spatialCoordinateConversionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lt">spatialCoordinateConversionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="it">spatialCoordinateConversionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="hu">spatialCoordinateConversionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="fi">spatialCoordinateConversionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="es">spatialCoordinateConversionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="et">spatialCoordinateConversionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="el">spatialCoordinateConversionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="de">spatialCoordinateConversionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="bg">spatialCoordinateConversionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="da">spatialCoordinateConversionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="cs">spatialCoordinateConversionService</skos:prefLabel>
+  </skos:Concept>
+  <skos:Concept rdf:about="urn:inspire:service:taxonomy:spatialCoordinateTransformationService">
+    <skos:prefLabel xml:lang="fr">spatialCoordinateTransformationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="en">spatialCoordinateTransformationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="nl">spatialCoordinateTransformationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sv">spatialCoordinateTransformationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sl">spatialCoordinateTransformationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sk">spatialCoordinateTransformationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="ro">spatialCoordinateTransformationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pl">spatialCoordinateTransformationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pt">spatialCoordinateTransformationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="mt">spatialCoordinateTransformationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lv">spatialCoordinateTransformationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lt">spatialCoordinateTransformationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="it">spatialCoordinateTransformationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="hu">spatialCoordinateTransformationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="fi">spatialCoordinateTransformationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="es">spatialCoordinateTransformationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="et">spatialCoordinateTransformationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="el">spatialCoordinateTransformationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="de">spatialCoordinateTransformationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="bg">spatialCoordinateTransformationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="da">spatialCoordinateTransformationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="cs">spatialCoordinateTransformationService</skos:prefLabel>
+  </skos:Concept>
+  <skos:Concept rdf:about="urn:inspire:service:taxonomy:spatialCoverageVectorConversionService">
+    <skos:prefLabel xml:lang="fr">spatialCoverageVectorConversionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="en">spatialCoverageVectorConversionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="nl">spatialCoverageVectorConversionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sv">spatialCoverageVectorConversionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sl">spatialCoverageVectorConversionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sk">spatialCoverageVectorConversionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="ro">spatialCoverageVectorConversionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pl">spatialCoverageVectorConversionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pt">spatialCoverageVectorConversionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="mt">spatialCoverageVectorConversionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lv">spatialCoverageVectorConversionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lt">spatialCoverageVectorConversionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="it">spatialCoverageVectorConversionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="hu">spatialCoverageVectorConversionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="fi">spatialCoverageVectorConversionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="es">spatialCoverageVectorConversionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="et">spatialCoverageVectorConversionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="el">spatialCoverageVectorConversionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="de">spatialCoverageVectorConversionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="bg">spatialCoverageVectorConversionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="da">spatialCoverageVectorConversionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="cs">spatialCoverageVectorConversionService</skos:prefLabel>
+  </skos:Concept>
+  <skos:Concept rdf:about="urn:inspire:service:taxonomy:spatialImageCoordinateConversionService">
+    <skos:prefLabel xml:lang="fr">spatialImageCoordinateConversionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="en">spatialImageCoordinateConversionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="nl">spatialImageCoordinateConversionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sv">spatialImageCoordinateConversionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sl">spatialImageCoordinateConversionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sk">spatialImageCoordinateConversionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="ro">spatialImageCoordinateConversionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pl">spatialImageCoordinateConversionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pt">spatialImageCoordinateConversionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="mt">spatialImageCoordinateConversionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lv">spatialImageCoordinateConversionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lt">spatialImageCoordinateConversionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="it">spatialImageCoordinateConversionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="hu">spatialImageCoordinateConversionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="fi">spatialImageCoordinateConversionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="es">spatialImageCoordinateConversionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="et">spatialImageCoordinateConversionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="el">spatialImageCoordinateConversionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="de">spatialImageCoordinateConversionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="bg">spatialImageCoordinateConversionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="da">spatialImageCoordinateConversionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="cs">spatialImageCoordinateConversionService</skos:prefLabel>
+  </skos:Concept>
+  <skos:Concept rdf:about="urn:inspire:service:taxonomy:spatialRectificationService">
+    <skos:prefLabel xml:lang="fr">spatialRectificationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="en">spatialRectificationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="nl">spatialRectificationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sv">spatialRectificationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sl">spatialRectificationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sk">spatialRectificationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="ro">spatialRectificationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pl">spatialRectificationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pt">spatialRectificationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="mt">spatialRectificationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lv">spatialRectificationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lt">spatialRectificationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="it">spatialRectificationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="hu">spatialRectificationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="fi">spatialRectificationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="es">spatialRectificationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="et">spatialRectificationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="el">spatialRectificationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="de">spatialRectificationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="bg">spatialRectificationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="da">spatialRectificationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="cs">spatialRectificationService</skos:prefLabel>
+  </skos:Concept>
+  <skos:Concept rdf:about="urn:inspire:service:taxonomy:spatialOrthorectificationService">
+    <skos:prefLabel xml:lang="fr">spatialOrthorectificationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="en">spatialOrthorectificationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="nl">spatialOrthorectificationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sv">spatialOrthorectificationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sl">spatialOrthorectificationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sk">spatialOrthorectificationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="ro">spatialOrthorectificationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pl">spatialOrthorectificationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pt">spatialOrthorectificationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="mt">spatialOrthorectificationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lv">spatialOrthorectificationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lt">spatialOrthorectificationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="it">spatialOrthorectificationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="hu">spatialOrthorectificationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="fi">spatialOrthorectificationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="es">spatialOrthorectificationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="et">spatialOrthorectificationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="el">spatialOrthorectificationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="de">spatialOrthorectificationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="bg">spatialOrthorectificationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="da">spatialOrthorectificationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="cs">spatialOrthorectificationService</skos:prefLabel>
+  </skos:Concept>
+  <skos:Concept rdf:about="urn:inspire:service:taxonomy:spatialSensorGeometryModelAdjustmentService">
+    <skos:prefLabel xml:lang="fr">spatialSensorGeometryModelAdjustmentService</skos:prefLabel>
+    <skos:prefLabel xml:lang="en">spatialSensorGeometryModelAdjustmentService</skos:prefLabel>
+    <skos:prefLabel xml:lang="nl">spatialSensorGeometryModelAdjustmentService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sv">spatialSensorGeometryModelAdjustmentService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sl">spatialSensorGeometryModelAdjustmentService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sk">spatialSensorGeometryModelAdjustmentService</skos:prefLabel>
+    <skos:prefLabel xml:lang="ro">spatialSensorGeometryModelAdjustmentService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pl">spatialSensorGeometryModelAdjustmentService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pt">spatialSensorGeometryModelAdjustmentService</skos:prefLabel>
+    <skos:prefLabel xml:lang="mt">spatialSensorGeometryModelAdjustmentService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lv">spatialSensorGeometryModelAdjustmentService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lt">spatialSensorGeometryModelAdjustmentService</skos:prefLabel>
+    <skos:prefLabel xml:lang="it">spatialSensorGeometryModelAdjustmentService</skos:prefLabel>
+    <skos:prefLabel xml:lang="hu">spatialSensorGeometryModelAdjustmentService</skos:prefLabel>
+    <skos:prefLabel xml:lang="fi">spatialSensorGeometryModelAdjustmentService</skos:prefLabel>
+    <skos:prefLabel xml:lang="es">spatialSensorGeometryModelAdjustmentService</skos:prefLabel>
+    <skos:prefLabel xml:lang="et">spatialSensorGeometryModelAdjustmentService</skos:prefLabel>
+    <skos:prefLabel xml:lang="el">spatialSensorGeometryModelAdjustmentService</skos:prefLabel>
+    <skos:prefLabel xml:lang="de">spatialSensorGeometryModelAdjustmentService</skos:prefLabel>
+    <skos:prefLabel xml:lang="bg">spatialSensorGeometryModelAdjustmentService</skos:prefLabel>
+    <skos:prefLabel xml:lang="da">spatialSensorGeometryModelAdjustmentService</skos:prefLabel>
+    <skos:prefLabel xml:lang="cs">spatialSensorGeometryModelAdjustmentService</skos:prefLabel>
+  </skos:Concept>
+  <skos:Concept rdf:about="urn:inspire:service:taxonomy:spatialImageGeometryModelConversionService">
+    <skos:prefLabel xml:lang="fr">spatialImageGeometryModelConversionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="en">spatialImageGeometryModelConversionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="nl">spatialImageGeometryModelConversionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sv">spatialImageGeometryModelConversionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sl">spatialImageGeometryModelConversionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sk">spatialImageGeometryModelConversionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="ro">spatialImageGeometryModelConversionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pl">spatialImageGeometryModelConversionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pt">spatialImageGeometryModelConversionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="mt">spatialImageGeometryModelConversionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lv">spatialImageGeometryModelConversionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lt">spatialImageGeometryModelConversionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="it">spatialImageGeometryModelConversionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="hu">spatialImageGeometryModelConversionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="fi">spatialImageGeometryModelConversionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="es">spatialImageGeometryModelConversionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="et">spatialImageGeometryModelConversionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="el">spatialImageGeometryModelConversionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="de">spatialImageGeometryModelConversionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="bg">spatialImageGeometryModelConversionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="da">spatialImageGeometryModelConversionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="cs">spatialImageGeometryModelConversionService</skos:prefLabel>
+  </skos:Concept>
+  <skos:Concept rdf:about="urn:inspire:service:taxonomy:spatialSubsettingService">
+    <skos:prefLabel xml:lang="fr">spatialSubsettingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="en">spatialSubsettingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="nl">spatialSubsettingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sv">spatialSubsettingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sl">spatialSubsettingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sk">spatialSubsettingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="ro">spatialSubsettingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pl">spatialSubsettingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pt">spatialSubsettingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="mt">spatialSubsettingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lv">spatialSubsettingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lt">spatialSubsettingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="it">spatialSubsettingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="hu">spatialSubsettingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="fi">spatialSubsettingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="es">spatialSubsettingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="et">spatialSubsettingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="el">spatialSubsettingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="de">spatialSubsettingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="bg">spatialSubsettingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="da">spatialSubsettingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="cs">spatialSubsettingService</skos:prefLabel>
+  </skos:Concept>
+  <skos:Concept rdf:about="urn:inspire:service:taxonomy:spatialSamplingService">
+    <skos:prefLabel xml:lang="fr">spatialSamplingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="en">spatialSamplingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="nl">spatialSamplingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sv">spatialSamplingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sl">spatialSamplingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sk">spatialSamplingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="ro">spatialSamplingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pl">spatialSamplingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pt">spatialSamplingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="mt">spatialSamplingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lv">spatialSamplingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lt">spatialSamplingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="it">spatialSamplingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="hu">spatialSamplingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="fi">spatialSamplingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="es">spatialSamplingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="et">spatialSamplingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="el">spatialSamplingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="de">spatialSamplingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="bg">spatialSamplingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="da">spatialSamplingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="cs">spatialSamplingService</skos:prefLabel>
+  </skos:Concept>
+  <skos:Concept rdf:about="urn:inspire:service:taxonomy:spatialTilingChangeService">
+    <skos:prefLabel xml:lang="fr">spatialTilingChangeService</skos:prefLabel>
+    <skos:prefLabel xml:lang="en">spatialTilingChangeService</skos:prefLabel>
+    <skos:prefLabel xml:lang="nl">spatialTilingChangeService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sv">spatialTilingChangeService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sl">spatialTilingChangeService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sk">spatialTilingChangeService</skos:prefLabel>
+    <skos:prefLabel xml:lang="ro">spatialTilingChangeService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pl">spatialTilingChangeService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pt">spatialTilingChangeService</skos:prefLabel>
+    <skos:prefLabel xml:lang="mt">spatialTilingChangeService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lv">spatialTilingChangeService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lt">spatialTilingChangeService</skos:prefLabel>
+    <skos:prefLabel xml:lang="it">spatialTilingChangeService</skos:prefLabel>
+    <skos:prefLabel xml:lang="hu">spatialTilingChangeService</skos:prefLabel>
+    <skos:prefLabel xml:lang="fi">spatialTilingChangeService</skos:prefLabel>
+    <skos:prefLabel xml:lang="es">spatialTilingChangeService</skos:prefLabel>
+    <skos:prefLabel xml:lang="et">spatialTilingChangeService</skos:prefLabel>
+    <skos:prefLabel xml:lang="el">spatialTilingChangeService</skos:prefLabel>
+    <skos:prefLabel xml:lang="de">spatialTilingChangeService</skos:prefLabel>
+    <skos:prefLabel xml:lang="bg">spatialTilingChangeService</skos:prefLabel>
+    <skos:prefLabel xml:lang="da">spatialTilingChangeService</skos:prefLabel>
+    <skos:prefLabel xml:lang="cs">spatialTilingChangeService</skos:prefLabel>
+  </skos:Concept>
+  <skos:Concept rdf:about="urn:inspire:service:taxonomy:spatialDimensionMeasurementService">
+    <skos:prefLabel xml:lang="fr">spatialDimensionMeasurementService</skos:prefLabel>
+    <skos:prefLabel xml:lang="en">spatialDimensionMeasurementService</skos:prefLabel>
+    <skos:prefLabel xml:lang="nl">spatialDimensionMeasurementService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sv">spatialDimensionMeasurementService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sl">spatialDimensionMeasurementService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sk">spatialDimensionMeasurementService</skos:prefLabel>
+    <skos:prefLabel xml:lang="ro">spatialDimensionMeasurementService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pl">spatialDimensionMeasurementService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pt">spatialDimensionMeasurementService</skos:prefLabel>
+    <skos:prefLabel xml:lang="mt">spatialDimensionMeasurementService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lv">spatialDimensionMeasurementService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lt">spatialDimensionMeasurementService</skos:prefLabel>
+    <skos:prefLabel xml:lang="it">spatialDimensionMeasurementService</skos:prefLabel>
+    <skos:prefLabel xml:lang="hu">spatialDimensionMeasurementService</skos:prefLabel>
+    <skos:prefLabel xml:lang="fi">spatialDimensionMeasurementService</skos:prefLabel>
+    <skos:prefLabel xml:lang="es">spatialDimensionMeasurementService</skos:prefLabel>
+    <skos:prefLabel xml:lang="et">spatialDimensionMeasurementService</skos:prefLabel>
+    <skos:prefLabel xml:lang="el">spatialDimensionMeasurementService</skos:prefLabel>
+    <skos:prefLabel xml:lang="de">spatialDimensionMeasurementService</skos:prefLabel>
+    <skos:prefLabel xml:lang="bg">spatialDimensionMeasurementService</skos:prefLabel>
+    <skos:prefLabel xml:lang="da">spatialDimensionMeasurementService</skos:prefLabel>
+    <skos:prefLabel xml:lang="cs">spatialDimensionMeasurementService</skos:prefLabel>
+  </skos:Concept>
+  <skos:Concept rdf:about="urn:inspire:service:taxonomy:spatialFeatureManipulationService">
+    <skos:prefLabel xml:lang="fr">spatialFeatureManipulationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="en">spatialFeatureManipulationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="nl">spatialFeatureManipulationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sv">spatialFeatureManipulationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sl">spatialFeatureManipulationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sk">spatialFeatureManipulationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="ro">spatialFeatureManipulationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pl">spatialFeatureManipulationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pt">spatialFeatureManipulationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="mt">spatialFeatureManipulationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lv">spatialFeatureManipulationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lt">spatialFeatureManipulationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="it">spatialFeatureManipulationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="hu">spatialFeatureManipulationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="fi">spatialFeatureManipulationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="es">spatialFeatureManipulationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="et">spatialFeatureManipulationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="el">spatialFeatureManipulationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="de">spatialFeatureManipulationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="bg">spatialFeatureManipulationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="da">spatialFeatureManipulationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="cs">spatialFeatureManipulationService</skos:prefLabel>
+  </skos:Concept>
+  <skos:Concept rdf:about="urn:inspire:service:taxonomy:spatialFeatureMatchingService">
+    <skos:prefLabel xml:lang="fr">spatialFeatureMatchingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="en">spatialFeatureMatchingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="nl">spatialFeatureMatchingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sv">spatialFeatureMatchingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sl">spatialFeatureMatchingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sk">spatialFeatureMatchingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="ro">spatialFeatureMatchingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pl">spatialFeatureMatchingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pt">spatialFeatureMatchingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="mt">spatialFeatureMatchingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lv">spatialFeatureMatchingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lt">spatialFeatureMatchingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="it">spatialFeatureMatchingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="hu">spatialFeatureMatchingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="fi">spatialFeatureMatchingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="es">spatialFeatureMatchingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="et">spatialFeatureMatchingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="el">spatialFeatureMatchingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="de">spatialFeatureMatchingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="bg">spatialFeatureMatchingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="da">spatialFeatureMatchingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="cs">spatialFeatureMatchingService</skos:prefLabel>
+  </skos:Concept>
+  <skos:Concept rdf:about="urn:inspire:service:taxonomy:spatialFeatureGeneralizationService">
+    <skos:prefLabel xml:lang="fr">spatialFeatureGeneralizationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="en">spatialFeatureGeneralizationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="nl">spatialFeatureGeneralizationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sv">spatialFeatureGeneralizationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sl">spatialFeatureGeneralizationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sk">spatialFeatureGeneralizationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="ro">spatialFeatureGeneralizationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pl">spatialFeatureGeneralizationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pt">spatialFeatureGeneralizationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="mt">spatialFeatureGeneralizationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lv">spatialFeatureGeneralizationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lt">spatialFeatureGeneralizationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="it">spatialFeatureGeneralizationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="hu">spatialFeatureGeneralizationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="fi">spatialFeatureGeneralizationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="es">spatialFeatureGeneralizationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="et">spatialFeatureGeneralizationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="el">spatialFeatureGeneralizationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="de">spatialFeatureGeneralizationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="bg">spatialFeatureGeneralizationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="da">spatialFeatureGeneralizationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="cs">spatialFeatureGeneralizationService</skos:prefLabel>
+  </skos:Concept>
+  <skos:Concept rdf:about="urn:inspire:service:taxonomy:spatialRouteDeterminationService">
+    <skos:prefLabel xml:lang="fr">spatialRouteDeterminationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="en">spatialRouteDeterminationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="nl">spatialRouteDeterminationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sv">spatialRouteDeterminationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sl">spatialRouteDeterminationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sk">spatialRouteDeterminationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="ro">spatialRouteDeterminationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pl">spatialRouteDeterminationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pt">spatialRouteDeterminationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="mt">spatialRouteDeterminationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lv">spatialRouteDeterminationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lt">spatialRouteDeterminationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="it">spatialRouteDeterminationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="hu">spatialRouteDeterminationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="fi">spatialRouteDeterminationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="es">spatialRouteDeterminationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="et">spatialRouteDeterminationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="el">spatialRouteDeterminationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="de">spatialRouteDeterminationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="bg">spatialRouteDeterminationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="da">spatialRouteDeterminationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="cs">spatialRouteDeterminationService</skos:prefLabel>
+  </skos:Concept>
+  <skos:Concept rdf:about="urn:inspire:service:taxonomy:spatialPositioningService">
+    <skos:prefLabel xml:lang="fr">spatialPositioningService</skos:prefLabel>
+    <skos:prefLabel xml:lang="en">spatialPositioningService</skos:prefLabel>
+    <skos:prefLabel xml:lang="nl">spatialPositioningService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sv">spatialPositioningService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sl">spatialPositioningService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sk">spatialPositioningService</skos:prefLabel>
+    <skos:prefLabel xml:lang="ro">spatialPositioningService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pl">spatialPositioningService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pt">spatialPositioningService</skos:prefLabel>
+    <skos:prefLabel xml:lang="mt">spatialPositioningService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lv">spatialPositioningService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lt">spatialPositioningService</skos:prefLabel>
+    <skos:prefLabel xml:lang="it">spatialPositioningService</skos:prefLabel>
+    <skos:prefLabel xml:lang="hu">spatialPositioningService</skos:prefLabel>
+    <skos:prefLabel xml:lang="fi">spatialPositioningService</skos:prefLabel>
+    <skos:prefLabel xml:lang="es">spatialPositioningService</skos:prefLabel>
+    <skos:prefLabel xml:lang="et">spatialPositioningService</skos:prefLabel>
+    <skos:prefLabel xml:lang="el">spatialPositioningService</skos:prefLabel>
+    <skos:prefLabel xml:lang="de">spatialPositioningService</skos:prefLabel>
+    <skos:prefLabel xml:lang="bg">spatialPositioningService</skos:prefLabel>
+    <skos:prefLabel xml:lang="da">spatialPositioningService</skos:prefLabel>
+    <skos:prefLabel xml:lang="cs">spatialPositioningService</skos:prefLabel>
+  </skos:Concept>
+  <skos:Concept rdf:about="urn:inspire:service:taxonomy:spatialProximityAnalysisService">
+    <skos:prefLabel xml:lang="fr">spatialProximityAnalysisService</skos:prefLabel>
+    <skos:prefLabel xml:lang="en">spatialProximityAnalysisService</skos:prefLabel>
+    <skos:prefLabel xml:lang="nl">spatialProximityAnalysisService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sv">spatialProximityAnalysisService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sl">spatialProximityAnalysisService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sk">spatialProximityAnalysisService</skos:prefLabel>
+    <skos:prefLabel xml:lang="ro">spatialProximityAnalysisService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pl">spatialProximityAnalysisService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pt">spatialProximityAnalysisService</skos:prefLabel>
+    <skos:prefLabel xml:lang="mt">spatialProximityAnalysisService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lv">spatialProximityAnalysisService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lt">spatialProximityAnalysisService</skos:prefLabel>
+    <skos:prefLabel xml:lang="it">spatialProximityAnalysisService</skos:prefLabel>
+    <skos:prefLabel xml:lang="hu">spatialProximityAnalysisService</skos:prefLabel>
+    <skos:prefLabel xml:lang="fi">spatialProximityAnalysisService</skos:prefLabel>
+    <skos:prefLabel xml:lang="es">spatialProximityAnalysisService</skos:prefLabel>
+    <skos:prefLabel xml:lang="et">spatialProximityAnalysisService</skos:prefLabel>
+    <skos:prefLabel xml:lang="el">spatialProximityAnalysisService</skos:prefLabel>
+    <skos:prefLabel xml:lang="de">spatialProximityAnalysisService</skos:prefLabel>
+    <skos:prefLabel xml:lang="bg">spatialProximityAnalysisService</skos:prefLabel>
+    <skos:prefLabel xml:lang="da">spatialProximityAnalysisService</skos:prefLabel>
+    <skos:prefLabel xml:lang="cs">spatialProximityAnalysisService</skos:prefLabel>
+  </skos:Concept>
+  <skos:Concept rdf:about="urn:inspire:service:taxonomy:thematicProcessingService">
+    <skos:prefLabel xml:lang="fr">thematicProcessingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="en">thematicProcessingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="nl">thematicProcessingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sv">thematicProcessingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sl">thematicProcessingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sk">thematicProcessingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="ro">thematicProcessingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pl">thematicProcessingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pt">thematicProcessingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="mt">thematicProcessingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lv">thematicProcessingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lt">thematicProcessingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="it">thematicProcessingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="hu">thematicProcessingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="fi">thematicProcessingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="es">thematicProcessingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="et">thematicProcessingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="el">thematicProcessingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="de">thematicProcessingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="bg">thematicProcessingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="da">thematicProcessingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="cs">thematicProcessingService</skos:prefLabel>
+  </skos:Concept>
+  <skos:Concept rdf:about="urn:inspire:service:taxonomy:thematicGoparameterCalculationService">
+    <skos:prefLabel xml:lang="fr">thematicGoparameterCalculationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="en">thematicGoparameterCalculationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="nl">thematicGoparameterCalculationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sv">thematicGoparameterCalculationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sl">thematicGoparameterCalculationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sk">thematicGoparameterCalculationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="ro">thematicGoparameterCalculationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pl">thematicGoparameterCalculationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pt">thematicGoparameterCalculationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="mt">thematicGoparameterCalculationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lv">thematicGoparameterCalculationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lt">thematicGoparameterCalculationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="it">thematicGoparameterCalculationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="hu">thematicGoparameterCalculationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="fi">thematicGoparameterCalculationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="es">thematicGoparameterCalculationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="et">thematicGoparameterCalculationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="el">thematicGoparameterCalculationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="de">thematicGoparameterCalculationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="bg">thematicGoparameterCalculationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="da">thematicGoparameterCalculationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="cs">thematicGoparameterCalculationService</skos:prefLabel>
+  </skos:Concept>
+  <skos:Concept rdf:about="urn:inspire:service:taxonomy:thematicClassificationService">
+    <skos:prefLabel xml:lang="fr">thematicClassificationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="en">thematicClassificationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="nl">thematicClassificationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sv">thematicClassificationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sl">thematicClassificationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sk">thematicClassificationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="ro">thematicClassificationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pl">thematicClassificationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pt">thematicClassificationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="mt">thematicClassificationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lv">thematicClassificationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lt">thematicClassificationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="it">thematicClassificationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="hu">thematicClassificationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="fi">thematicClassificationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="es">thematicClassificationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="et">thematicClassificationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="el">thematicClassificationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="de">thematicClassificationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="bg">thematicClassificationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="da">thematicClassificationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="cs">thematicClassificationService</skos:prefLabel>
+  </skos:Concept>
+  <skos:Concept rdf:about="urn:inspire:service:taxonomy:thematicFeatureGeneralizationService">
+    <skos:prefLabel xml:lang="fr">thematicFeatureGeneralizationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="en">thematicFeatureGeneralizationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="nl">thematicFeatureGeneralizationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sv">thematicFeatureGeneralizationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sl">thematicFeatureGeneralizationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sk">thematicFeatureGeneralizationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="ro">thematicFeatureGeneralizationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pl">thematicFeatureGeneralizationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pt">thematicFeatureGeneralizationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="mt">thematicFeatureGeneralizationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lv">thematicFeatureGeneralizationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lt">thematicFeatureGeneralizationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="it">thematicFeatureGeneralizationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="hu">thematicFeatureGeneralizationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="fi">thematicFeatureGeneralizationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="es">thematicFeatureGeneralizationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="et">thematicFeatureGeneralizationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="el">thematicFeatureGeneralizationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="de">thematicFeatureGeneralizationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="bg">thematicFeatureGeneralizationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="da">thematicFeatureGeneralizationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="cs">thematicFeatureGeneralizationService</skos:prefLabel>
+  </skos:Concept>
+  <skos:Concept rdf:about="urn:inspire:service:taxonomy:thematicSubsettingService">
+    <skos:prefLabel xml:lang="fr">thematicSubsettingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="en">thematicSubsettingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="nl">thematicSubsettingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sv">thematicSubsettingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sl">thematicSubsettingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sk">thematicSubsettingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="ro">thematicSubsettingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pl">thematicSubsettingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pt">thematicSubsettingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="mt">thematicSubsettingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lv">thematicSubsettingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lt">thematicSubsettingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="it">thematicSubsettingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="hu">thematicSubsettingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="fi">thematicSubsettingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="es">thematicSubsettingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="et">thematicSubsettingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="el">thematicSubsettingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="de">thematicSubsettingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="bg">thematicSubsettingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="da">thematicSubsettingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="cs">thematicSubsettingService</skos:prefLabel>
+  </skos:Concept>
+  <skos:Concept rdf:about="urn:inspire:service:taxonomy:thematicSpatialCountingService">
+    <skos:prefLabel xml:lang="fr">thematicSpatialCountingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="en">thematicSpatialCountingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="nl">thematicSpatialCountingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sv">thematicSpatialCountingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sl">thematicSpatialCountingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sk">thematicSpatialCountingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="ro">thematicSpatialCountingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pl">thematicSpatialCountingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pt">thematicSpatialCountingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="mt">thematicSpatialCountingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lv">thematicSpatialCountingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lt">thematicSpatialCountingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="it">thematicSpatialCountingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="hu">thematicSpatialCountingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="fi">thematicSpatialCountingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="es">thematicSpatialCountingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="et">thematicSpatialCountingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="el">thematicSpatialCountingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="de">thematicSpatialCountingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="bg">thematicSpatialCountingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="da">thematicSpatialCountingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="cs">thematicSpatialCountingService</skos:prefLabel>
+  </skos:Concept>
+  <skos:Concept rdf:about="urn:inspire:service:taxonomy:thematicChangeDetectionService">
+    <skos:prefLabel xml:lang="fr">thematicChangeDetectionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="en">thematicChangeDetectionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="nl">thematicChangeDetectionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sv">thematicChangeDetectionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sl">thematicChangeDetectionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sk">thematicChangeDetectionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="ro">thematicChangeDetectionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pl">thematicChangeDetectionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pt">thematicChangeDetectionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="mt">thematicChangeDetectionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lv">thematicChangeDetectionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lt">thematicChangeDetectionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="it">thematicChangeDetectionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="hu">thematicChangeDetectionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="fi">thematicChangeDetectionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="es">thematicChangeDetectionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="et">thematicChangeDetectionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="el">thematicChangeDetectionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="de">thematicChangeDetectionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="bg">thematicChangeDetectionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="da">thematicChangeDetectionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="cs">thematicChangeDetectionService</skos:prefLabel>
+  </skos:Concept>
+  <skos:Concept rdf:about="urn:inspire:service:taxonomy:thematicGeographicInformationExtractionService">
+    <skos:prefLabel xml:lang="fr">thematicGeographicInformationExtractionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="en">thematicGeographicInformationExtractionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="nl">thematicGeographicInformationExtractionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sv">thematicGeographicInformationExtractionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sl">thematicGeographicInformationExtractionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sk">thematicGeographicInformationExtractionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="ro">thematicGeographicInformationExtractionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pl">thematicGeographicInformationExtractionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pt">thematicGeographicInformationExtractionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="mt">thematicGeographicInformationExtractionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lv">thematicGeographicInformationExtractionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lt">thematicGeographicInformationExtractionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="it">thematicGeographicInformationExtractionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="hu">thematicGeographicInformationExtractionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="fi">thematicGeographicInformationExtractionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="es">thematicGeographicInformationExtractionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="et">thematicGeographicInformationExtractionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="el">thematicGeographicInformationExtractionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="de">thematicGeographicInformationExtractionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="bg">thematicGeographicInformationExtractionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="da">thematicGeographicInformationExtractionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="cs">thematicGeographicInformationExtractionService</skos:prefLabel>
+  </skos:Concept>
+  <skos:Concept rdf:about="urn:inspire:service:taxonomy:thematicImageProcessingService">
+    <skos:prefLabel xml:lang="fr">thematicImageProcessingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="en">thematicImageProcessingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="nl">thematicImageProcessingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sv">thematicImageProcessingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sl">thematicImageProcessingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sk">thematicImageProcessingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="ro">thematicImageProcessingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pl">thematicImageProcessingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pt">thematicImageProcessingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="mt">thematicImageProcessingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lv">thematicImageProcessingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lt">thematicImageProcessingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="it">thematicImageProcessingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="hu">thematicImageProcessingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="fi">thematicImageProcessingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="es">thematicImageProcessingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="et">thematicImageProcessingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="el">thematicImageProcessingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="de">thematicImageProcessingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="bg">thematicImageProcessingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="da">thematicImageProcessingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="cs">thematicImageProcessingService</skos:prefLabel>
+  </skos:Concept>
+  <skos:Concept rdf:about="urn:inspire:service:taxonomy:thematicReducedResolutionGenerationService">
+    <skos:prefLabel xml:lang="fr">thematicReducedResolutionGenerationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="en">thematicReducedResolutionGenerationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="nl">thematicReducedResolutionGenerationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sv">thematicReducedResolutionGenerationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sl">thematicReducedResolutionGenerationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sk">thematicReducedResolutionGenerationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="ro">thematicReducedResolutionGenerationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pl">thematicReducedResolutionGenerationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pt">thematicReducedResolutionGenerationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="mt">thematicReducedResolutionGenerationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lv">thematicReducedResolutionGenerationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lt">thematicReducedResolutionGenerationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="it">thematicReducedResolutionGenerationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="hu">thematicReducedResolutionGenerationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="fi">thematicReducedResolutionGenerationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="es">thematicReducedResolutionGenerationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="et">thematicReducedResolutionGenerationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="el">thematicReducedResolutionGenerationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="de">thematicReducedResolutionGenerationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="bg">thematicReducedResolutionGenerationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="da">thematicReducedResolutionGenerationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="cs">thematicReducedResolutionGenerationService</skos:prefLabel>
+  </skos:Concept>
+  <skos:Concept rdf:about="urn:inspire:service:taxonomy:thematicImageManipulationService">
+    <skos:prefLabel xml:lang="fr">thematicImageManipulationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="en">thematicImageManipulationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="nl">thematicImageManipulationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sv">thematicImageManipulationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sl">thematicImageManipulationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sk">thematicImageManipulationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="ro">thematicImageManipulationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pl">thematicImageManipulationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pt">thematicImageManipulationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="mt">thematicImageManipulationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lv">thematicImageManipulationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lt">thematicImageManipulationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="it">thematicImageManipulationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="hu">thematicImageManipulationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="fi">thematicImageManipulationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="es">thematicImageManipulationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="et">thematicImageManipulationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="el">thematicImageManipulationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="de">thematicImageManipulationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="bg">thematicImageManipulationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="da">thematicImageManipulationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="cs">thematicImageManipulationService</skos:prefLabel>
+  </skos:Concept>
+  <skos:Concept rdf:about="urn:inspire:service:taxonomy:thematicImageUnderstandingService">
+    <skos:prefLabel xml:lang="fr">thematicImageUnderstandingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="en">thematicImageUnderstandingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="nl">thematicImageUnderstandingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sv">thematicImageUnderstandingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sl">thematicImageUnderstandingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sk">thematicImageUnderstandingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="ro">thematicImageUnderstandingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pl">thematicImageUnderstandingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pt">thematicImageUnderstandingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="mt">thematicImageUnderstandingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lv">thematicImageUnderstandingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lt">thematicImageUnderstandingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="it">thematicImageUnderstandingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="hu">thematicImageUnderstandingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="fi">thematicImageUnderstandingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="es">thematicImageUnderstandingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="et">thematicImageUnderstandingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="el">thematicImageUnderstandingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="de">thematicImageUnderstandingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="bg">thematicImageUnderstandingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="da">thematicImageUnderstandingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="cs">thematicImageUnderstandingService</skos:prefLabel>
+  </skos:Concept>
+  <skos:Concept rdf:about="urn:inspire:service:taxonomy:thematicImageSynthesisService">
+    <skos:prefLabel xml:lang="fr">thematicImageSynthesisService</skos:prefLabel>
+    <skos:prefLabel xml:lang="en">thematicImageSynthesisService</skos:prefLabel>
+    <skos:prefLabel xml:lang="nl">thematicImageSynthesisService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sv">thematicImageSynthesisService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sl">thematicImageSynthesisService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sk">thematicImageSynthesisService</skos:prefLabel>
+    <skos:prefLabel xml:lang="ro">thematicImageSynthesisService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pl">thematicImageSynthesisService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pt">thematicImageSynthesisService</skos:prefLabel>
+    <skos:prefLabel xml:lang="mt">thematicImageSynthesisService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lv">thematicImageSynthesisService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lt">thematicImageSynthesisService</skos:prefLabel>
+    <skos:prefLabel xml:lang="it">thematicImageSynthesisService</skos:prefLabel>
+    <skos:prefLabel xml:lang="hu">thematicImageSynthesisService</skos:prefLabel>
+    <skos:prefLabel xml:lang="fi">thematicImageSynthesisService</skos:prefLabel>
+    <skos:prefLabel xml:lang="es">thematicImageSynthesisService</skos:prefLabel>
+    <skos:prefLabel xml:lang="et">thematicImageSynthesisService</skos:prefLabel>
+    <skos:prefLabel xml:lang="el">thematicImageSynthesisService</skos:prefLabel>
+    <skos:prefLabel xml:lang="de">thematicImageSynthesisService</skos:prefLabel>
+    <skos:prefLabel xml:lang="bg">thematicImageSynthesisService</skos:prefLabel>
+    <skos:prefLabel xml:lang="da">thematicImageSynthesisService</skos:prefLabel>
+    <skos:prefLabel xml:lang="cs">thematicImageSynthesisService</skos:prefLabel>
+  </skos:Concept>
+  <skos:Concept rdf:about="urn:inspire:service:taxonomy:thematicMultibandImageManipulationService">
+    <skos:prefLabel xml:lang="fr">thematicMultibandImageManipulationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="en">thematicMultibandImageManipulationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="nl">thematicMultibandImageManipulationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sv">thematicMultibandImageManipulationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sl">thematicMultibandImageManipulationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sk">thematicMultibandImageManipulationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="ro">thematicMultibandImageManipulationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pl">thematicMultibandImageManipulationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pt">thematicMultibandImageManipulationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="mt">thematicMultibandImageManipulationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lv">thematicMultibandImageManipulationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lt">thematicMultibandImageManipulationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="it">thematicMultibandImageManipulationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="hu">thematicMultibandImageManipulationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="fi">thematicMultibandImageManipulationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="es">thematicMultibandImageManipulationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="et">thematicMultibandImageManipulationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="el">thematicMultibandImageManipulationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="de">thematicMultibandImageManipulationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="bg">thematicMultibandImageManipulationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="da">thematicMultibandImageManipulationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="cs">thematicMultibandImageManipulationService</skos:prefLabel>
+  </skos:Concept>
+  <skos:Concept rdf:about="urn:inspire:service:taxonomy:thematicObjectDetectionService">
+    <skos:prefLabel xml:lang="fr">thematicObjectDetectionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="en">thematicObjectDetectionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="nl">thematicObjectDetectionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sv">thematicObjectDetectionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sl">thematicObjectDetectionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sk">thematicObjectDetectionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="ro">thematicObjectDetectionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pl">thematicObjectDetectionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pt">thematicObjectDetectionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="mt">thematicObjectDetectionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lv">thematicObjectDetectionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lt">thematicObjectDetectionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="it">thematicObjectDetectionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="hu">thematicObjectDetectionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="fi">thematicObjectDetectionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="es">thematicObjectDetectionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="et">thematicObjectDetectionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="el">thematicObjectDetectionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="de">thematicObjectDetectionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="bg">thematicObjectDetectionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="da">thematicObjectDetectionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="cs">thematicObjectDetectionService</skos:prefLabel>
+  </skos:Concept>
+  <skos:Concept rdf:about="urn:inspire:service:taxonomy:thematicGeoparsingService">
+    <skos:prefLabel xml:lang="fr">thematicGeoparsingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="en">thematicGeoparsingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="nl">thematicGeoparsingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sv">thematicGeoparsingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sl">thematicGeoparsingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sk">thematicGeoparsingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="ro">thematicGeoparsingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pl">thematicGeoparsingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pt">thematicGeoparsingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="mt">thematicGeoparsingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lv">thematicGeoparsingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lt">thematicGeoparsingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="it">thematicGeoparsingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="hu">thematicGeoparsingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="fi">thematicGeoparsingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="es">thematicGeoparsingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="et">thematicGeoparsingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="el">thematicGeoparsingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="de">thematicGeoparsingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="bg">thematicGeoparsingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="da">thematicGeoparsingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="cs">thematicGeoparsingService</skos:prefLabel>
+  </skos:Concept>
+  <skos:Concept rdf:about="urn:inspire:service:taxonomy:thematicGeocodingService">
+    <skos:prefLabel xml:lang="fr">thematicGeocodingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="en">thematicGeocodingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="nl">thematicGeocodingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sv">thematicGeocodingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sl">thematicGeocodingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sk">thematicGeocodingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="ro">thematicGeocodingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pl">thematicGeocodingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pt">thematicGeocodingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="mt">thematicGeocodingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lv">thematicGeocodingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lt">thematicGeocodingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="it">thematicGeocodingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="hu">thematicGeocodingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="fi">thematicGeocodingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="es">thematicGeocodingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="et">thematicGeocodingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="el">thematicGeocodingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="de">thematicGeocodingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="bg">thematicGeocodingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="da">thematicGeocodingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="cs">thematicGeocodingService</skos:prefLabel>
+  </skos:Concept>
+  <skos:Concept rdf:about="urn:inspire:service:taxonomy:temporalProcessingService">
+    <skos:prefLabel xml:lang="fr">temporalProcessingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="en">temporalProcessingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="nl">temporalProcessingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sv">temporalProcessingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sl">temporalProcessingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sk">temporalProcessingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="ro">temporalProcessingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pl">temporalProcessingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pt">temporalProcessingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="mt">temporalProcessingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lv">temporalProcessingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lt">temporalProcessingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="it">temporalProcessingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="hu">temporalProcessingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="fi">temporalProcessingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="es">temporalProcessingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="et">temporalProcessingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="el">temporalProcessingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="de">temporalProcessingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="bg">temporalProcessingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="da">temporalProcessingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="cs">temporalProcessingService</skos:prefLabel>
+  </skos:Concept>
+  <skos:Concept rdf:about="urn:inspire:service:taxonomy:temporalReferenceSystemTransformationService">
+    <skos:prefLabel xml:lang="fr">temporalReferenceSystemTransformationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="en">temporalReferenceSystemTransformationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="nl">temporalReferenceSystemTransformationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sv">temporalReferenceSystemTransformationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sl">temporalReferenceSystemTransformationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sk">temporalReferenceSystemTransformationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="ro">temporalReferenceSystemTransformationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pl">temporalReferenceSystemTransformationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pt">temporalReferenceSystemTransformationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="mt">temporalReferenceSystemTransformationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lv">temporalReferenceSystemTransformationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lt">temporalReferenceSystemTransformationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="it">temporalReferenceSystemTransformationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="hu">temporalReferenceSystemTransformationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="fi">temporalReferenceSystemTransformationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="es">temporalReferenceSystemTransformationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="et">temporalReferenceSystemTransformationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="el">temporalReferenceSystemTransformationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="de">temporalReferenceSystemTransformationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="bg">temporalReferenceSystemTransformationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="da">temporalReferenceSystemTransformationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="cs">temporalReferenceSystemTransformationService</skos:prefLabel>
+  </skos:Concept>
+  <skos:Concept rdf:about="urn:inspire:service:taxonomy:temporalSubsettingService">
+    <skos:prefLabel xml:lang="fr">temporalSubsettingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="en">temporalSubsettingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="nl">temporalSubsettingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sv">temporalSubsettingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sl">temporalSubsettingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sk">temporalSubsettingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="ro">temporalSubsettingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pl">temporalSubsettingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pt">temporalSubsettingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="mt">temporalSubsettingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lv">temporalSubsettingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lt">temporalSubsettingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="it">temporalSubsettingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="hu">temporalSubsettingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="fi">temporalSubsettingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="es">temporalSubsettingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="et">temporalSubsettingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="el">temporalSubsettingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="de">temporalSubsettingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="bg">temporalSubsettingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="da">temporalSubsettingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="cs">temporalSubsettingService</skos:prefLabel>
+  </skos:Concept>
+  <skos:Concept rdf:about="urn:inspire:service:taxonomy:temporalSamplingService">
+    <skos:prefLabel xml:lang="fr">temporalSamplingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="en">temporalSamplingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="nl">temporalSamplingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sv">temporalSamplingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sl">temporalSamplingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sk">temporalSamplingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="ro">temporalSamplingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pl">temporalSamplingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pt">temporalSamplingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="mt">temporalSamplingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lv">temporalSamplingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lt">temporalSamplingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="it">temporalSamplingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="hu">temporalSamplingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="fi">temporalSamplingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="es">temporalSamplingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="et">temporalSamplingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="el">temporalSamplingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="de">temporalSamplingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="bg">temporalSamplingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="da">temporalSamplingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="cs">temporalSamplingService</skos:prefLabel>
+  </skos:Concept>
+  <skos:Concept rdf:about="urn:inspire:service:taxonomy:temporalProximityAnalysisService">
+    <skos:prefLabel xml:lang="fr">temporalProximityAnalysisService</skos:prefLabel>
+    <skos:prefLabel xml:lang="en">temporalProximityAnalysisService</skos:prefLabel>
+    <skos:prefLabel xml:lang="nl">temporalProximityAnalysisService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sv">temporalProximityAnalysisService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sl">temporalProximityAnalysisService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sk">temporalProximityAnalysisService</skos:prefLabel>
+    <skos:prefLabel xml:lang="ro">temporalProximityAnalysisService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pl">temporalProximityAnalysisService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pt">temporalProximityAnalysisService</skos:prefLabel>
+    <skos:prefLabel xml:lang="mt">temporalProximityAnalysisService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lv">temporalProximityAnalysisService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lt">temporalProximityAnalysisService</skos:prefLabel>
+    <skos:prefLabel xml:lang="it">temporalProximityAnalysisService</skos:prefLabel>
+    <skos:prefLabel xml:lang="hu">temporalProximityAnalysisService</skos:prefLabel>
+    <skos:prefLabel xml:lang="fi">temporalProximityAnalysisService</skos:prefLabel>
+    <skos:prefLabel xml:lang="es">temporalProximityAnalysisService</skos:prefLabel>
+    <skos:prefLabel xml:lang="et">temporalProximityAnalysisService</skos:prefLabel>
+    <skos:prefLabel xml:lang="el">temporalProximityAnalysisService</skos:prefLabel>
+    <skos:prefLabel xml:lang="de">temporalProximityAnalysisService</skos:prefLabel>
+    <skos:prefLabel xml:lang="bg">temporalProximityAnalysisService</skos:prefLabel>
+    <skos:prefLabel xml:lang="da">temporalProximityAnalysisService</skos:prefLabel>
+    <skos:prefLabel xml:lang="cs">temporalProximityAnalysisService</skos:prefLabel>
+  </skos:Concept>
+  <skos:Concept rdf:about="urn:inspire:service:taxonomy:metadataProcessingService">
+    <skos:prefLabel xml:lang="fr">metadataProcessingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="en">metadataProcessingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="nl">metadataProcessingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sv">metadataProcessingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sl">metadataProcessingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sk">metadataProcessingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="ro">metadataProcessingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pl">metadataProcessingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pt">metadataProcessingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="mt">metadataProcessingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lv">metadataProcessingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lt">metadataProcessingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="it">metadataProcessingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="hu">metadataProcessingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="fi">metadataProcessingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="es">metadataProcessingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="et">metadataProcessingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="el">metadataProcessingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="de">metadataProcessingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="bg">metadataProcessingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="da">metadataProcessingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="cs">metadataProcessingService</skos:prefLabel>
+  </skos:Concept>
+  <skos:Concept rdf:about="urn:inspire:service:taxonomy:metadataStatisticalCalculationService">
+    <skos:prefLabel xml:lang="fr">metadataStatisticalCalculationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="en">metadataStatisticalCalculationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="nl">metadataStatisticalCalculationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sv">metadataStatisticalCalculationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sl">metadataStatisticalCalculationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sk">metadataStatisticalCalculationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="ro">metadataStatisticalCalculationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pl">metadataStatisticalCalculationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pt">metadataStatisticalCalculationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="mt">metadataStatisticalCalculationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lv">metadataStatisticalCalculationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lt">metadataStatisticalCalculationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="it">metadataStatisticalCalculationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="hu">metadataStatisticalCalculationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="fi">metadataStatisticalCalculationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="es">metadataStatisticalCalculationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="et">metadataStatisticalCalculationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="el">metadataStatisticalCalculationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="de">metadataStatisticalCalculationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="bg">metadataStatisticalCalculationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="da">metadataStatisticalCalculationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="cs">metadataStatisticalCalculationService</skos:prefLabel>
+  </skos:Concept>
+  <skos:Concept rdf:about="urn:inspire:service:taxonomy:metadataGeographicAnnotationService">
+    <skos:prefLabel xml:lang="fr">metadataGeographicAnnotationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="en">metadataGeographicAnnotationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="nl">metadataGeographicAnnotationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sv">metadataGeographicAnnotationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sl">metadataGeographicAnnotationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sk">metadataGeographicAnnotationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="ro">metadataGeographicAnnotationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pl">metadataGeographicAnnotationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pt">metadataGeographicAnnotationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="mt">metadataGeographicAnnotationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lv">metadataGeographicAnnotationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lt">metadataGeographicAnnotationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="it">metadataGeographicAnnotationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="hu">metadataGeographicAnnotationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="fi">metadataGeographicAnnotationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="es">metadataGeographicAnnotationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="et">metadataGeographicAnnotationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="el">metadataGeographicAnnotationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="de">metadataGeographicAnnotationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="bg">metadataGeographicAnnotationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="da">metadataGeographicAnnotationService</skos:prefLabel>
+    <skos:prefLabel xml:lang="cs">metadataGeographicAnnotationService</skos:prefLabel>
+  </skos:Concept>
+  <skos:Concept rdf:about="urn:inspire:service:taxonomy:comService">
+    <skos:prefLabel xml:lang="fr">comService</skos:prefLabel>
+    <skos:prefLabel xml:lang="en">comService</skos:prefLabel>
+    <skos:prefLabel xml:lang="nl">comService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sv">comService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sl">comService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sk">comService</skos:prefLabel>
+    <skos:prefLabel xml:lang="ro">comService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pl">comService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pt">comService</skos:prefLabel>
+    <skos:prefLabel xml:lang="mt">comService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lv">comService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lt">comService</skos:prefLabel>
+    <skos:prefLabel xml:lang="it">comService</skos:prefLabel>
+    <skos:prefLabel xml:lang="hu">comService</skos:prefLabel>
+    <skos:prefLabel xml:lang="fi">comService</skos:prefLabel>
+    <skos:prefLabel xml:lang="es">comService</skos:prefLabel>
+    <skos:prefLabel xml:lang="et">comService</skos:prefLabel>
+    <skos:prefLabel xml:lang="el">comService</skos:prefLabel>
+    <skos:prefLabel xml:lang="de">comService</skos:prefLabel>
+    <skos:prefLabel xml:lang="bg">comService</skos:prefLabel>
+    <skos:prefLabel xml:lang="da">comService</skos:prefLabel>
+    <skos:prefLabel xml:lang="cs">comService</skos:prefLabel>
+  </skos:Concept>
+  <skos:Concept rdf:about="urn:inspire:service:taxonomy:comEncodingService">
+    <skos:prefLabel xml:lang="fr">comEncodingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="en">comEncodingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="nl">comEncodingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sv">comEncodingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sl">comEncodingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sk">comEncodingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="ro">comEncodingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pl">comEncodingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pt">comEncodingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="mt">comEncodingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lv">comEncodingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lt">comEncodingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="it">comEncodingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="hu">comEncodingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="fi">comEncodingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="es">comEncodingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="et">comEncodingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="el">comEncodingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="de">comEncodingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="bg">comEncodingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="da">comEncodingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="cs">comEncodingService</skos:prefLabel>
+  </skos:Concept>
+  <skos:Concept rdf:about="urn:inspire:service:taxonomy:comTransferService">
+    <skos:prefLabel xml:lang="fr">comTransferService</skos:prefLabel>
+    <skos:prefLabel xml:lang="en">comTransferService</skos:prefLabel>
+    <skos:prefLabel xml:lang="nl">comTransferService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sv">comTransferService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sl">comTransferService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sk">comTransferService</skos:prefLabel>
+    <skos:prefLabel xml:lang="ro">comTransferService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pl">comTransferService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pt">comTransferService</skos:prefLabel>
+    <skos:prefLabel xml:lang="mt">comTransferService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lv">comTransferService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lt">comTransferService</skos:prefLabel>
+    <skos:prefLabel xml:lang="it">comTransferService</skos:prefLabel>
+    <skos:prefLabel xml:lang="hu">comTransferService</skos:prefLabel>
+    <skos:prefLabel xml:lang="fi">comTransferService</skos:prefLabel>
+    <skos:prefLabel xml:lang="es">comTransferService</skos:prefLabel>
+    <skos:prefLabel xml:lang="et">comTransferService</skos:prefLabel>
+    <skos:prefLabel xml:lang="el">comTransferService</skos:prefLabel>
+    <skos:prefLabel xml:lang="de">comTransferService</skos:prefLabel>
+    <skos:prefLabel xml:lang="bg">comTransferService</skos:prefLabel>
+    <skos:prefLabel xml:lang="da">comTransferService</skos:prefLabel>
+    <skos:prefLabel xml:lang="cs">comTransferService</skos:prefLabel>
+  </skos:Concept>
+  <skos:Concept rdf:about="urn:inspire:service:taxonomy:comGeographicCompressionService">
+    <skos:prefLabel xml:lang="fr">comGeographicCompressionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="en">comGeographicCompressionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="nl">comGeographicCompressionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sv">comGeographicCompressionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sl">comGeographicCompressionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sk">comGeographicCompressionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="ro">comGeographicCompressionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pl">comGeographicCompressionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pt">comGeographicCompressionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="mt">comGeographicCompressionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lv">comGeographicCompressionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lt">comGeographicCompressionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="it">comGeographicCompressionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="hu">comGeographicCompressionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="fi">comGeographicCompressionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="es">comGeographicCompressionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="et">comGeographicCompressionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="el">comGeographicCompressionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="de">comGeographicCompressionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="bg">comGeographicCompressionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="da">comGeographicCompressionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="cs">comGeographicCompressionService</skos:prefLabel>
+  </skos:Concept>
+  <skos:Concept rdf:about="urn:inspire:service:taxonomy:comGeographicFormatConversionService">
+    <skos:prefLabel xml:lang="fr">comGeographicFormatConversionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="en">comGeographicFormatConversionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="nl">comGeographicFormatConversionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sv">comGeographicFormatConversionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sl">comGeographicFormatConversionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sk">comGeographicFormatConversionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="ro">comGeographicFormatConversionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pl">comGeographicFormatConversionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pt">comGeographicFormatConversionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="mt">comGeographicFormatConversionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lv">comGeographicFormatConversionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lt">comGeographicFormatConversionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="it">comGeographicFormatConversionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="hu">comGeographicFormatConversionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="fi">comGeographicFormatConversionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="es">comGeographicFormatConversionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="et">comGeographicFormatConversionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="el">comGeographicFormatConversionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="de">comGeographicFormatConversionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="bg">comGeographicFormatConversionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="da">comGeographicFormatConversionService</skos:prefLabel>
+    <skos:prefLabel xml:lang="cs">comGeographicFormatConversionService</skos:prefLabel>
+  </skos:Concept>
+  <skos:Concept rdf:about="urn:inspire:service:taxonomy:comMessagingService">
+    <skos:prefLabel xml:lang="fr">comMessagingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="en">comMessagingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="nl">comMessagingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sv">comMessagingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sl">comMessagingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="sk">comMessagingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="ro">comMessagingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pl">comMessagingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="pt">comMessagingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="mt">comMessagingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lv">comMessagingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="lt">comMessagingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="it">comMessagingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="hu">comMessagingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="fi">comMessagingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="es">comMessagingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="et">comMessagingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="el">comMessagingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="de">comMessagingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="bg">comMessagingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="da">comMessagingService</skos:prefLabel>
+    <skos:prefLabel xml:lang="cs">comMessagingService</skos:prefLabel>
+  </skos:Concept>
+  <skos:Concept rdf:about="urn:inspire:service:taxonomy:comRemoteFileAndExecutableManagement">
+    <skos:prefLabel xml:lang="fr">comRemoteFileAndExecutableManagement</skos:prefLabel>
+    <skos:prefLabel xml:lang="en">comRemoteFileAndExecutableManagement</skos:prefLabel>
+    <skos:prefLabel xml:lang="nl">comRemoteFileAndExecutableManagement</skos:prefLabel>
+    <skos:prefLabel xml:lang="sv">comRemoteFileAndExecutableManagement</skos:prefLabel>
+    <skos:prefLabel xml:lang="sl">comRemoteFileAndExecutableManagement</skos:prefLabel>
+    <skos:prefLabel xml:lang="sk">comRemoteFileAndExecutableManagement</skos:prefLabel>
+    <skos:prefLabel xml:lang="ro">comRemoteFileAndExecutableManagement</skos:prefLabel>
+    <skos:prefLabel xml:lang="pl">comRemoteFileAndExecutableManagement</skos:prefLabel>
+    <skos:prefLabel xml:lang="pt">comRemoteFileAndExecutableManagement</skos:prefLabel>
+    <skos:prefLabel xml:lang="mt">comRemoteFileAndExecutableManagement</skos:prefLabel>
+    <skos:prefLabel xml:lang="lv">comRemoteFileAndExecutableManagement</skos:prefLabel>
+    <skos:prefLabel xml:lang="lt">comRemoteFileAndExecutableManagement</skos:prefLabel>
+    <skos:prefLabel xml:lang="it">comRemoteFileAndExecutableManagement</skos:prefLabel>
+    <skos:prefLabel xml:lang="hu">comRemoteFileAndExecutableManagement</skos:prefLabel>
+    <skos:prefLabel xml:lang="fi">comRemoteFileAndExecutableManagement</skos:prefLabel>
+    <skos:prefLabel xml:lang="es">comRemoteFileAndExecutableManagement</skos:prefLabel>
+    <skos:prefLabel xml:lang="et">comRemoteFileAndExecutableManagement</skos:prefLabel>
+    <skos:prefLabel xml:lang="el">comRemoteFileAndExecutableManagement</skos:prefLabel>
+    <skos:prefLabel xml:lang="de">comRemoteFileAndExecutableManagement</skos:prefLabel>
+    <skos:prefLabel xml:lang="bg">comRemoteFileAndExecutableManagement</skos:prefLabel>
+    <skos:prefLabel xml:lang="da">comRemoteFileAndExecutableManagement</skos:prefLabel>
+    <skos:prefLabel xml:lang="cs">comRemoteFileAndExecutableManagement</skos:prefLabel>
+  </skos:Concept>
+</rdf:RDF>
\ No newline at end of file
diff --git a/src/main/webapp/WEB-INF/data/config/codelist/external/thesauri/theme/inspire-theme.rdf b/src/main/webapp/WEB-INF/data/config/codelist/external/thesauri/theme/inspire-theme.rdf
new file mode 100644
index 0000000..0188d68
--- /dev/null
+++ b/src/main/webapp/WEB-INF/data/config/codelist/external/thesauri/theme/inspire-theme.rdf
@@ -0,0 +1,1614 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<rdf:RDF xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:foaf="http://xmlns.com/foaf/0.1/" xmlns:dcterms="http://purl.org/dc/terms/" xmlns:skos="http://www.w3.org/2004/02/skos/core#" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#" xmlns:exslt="http://exslt.org/common" xmlns:gemet="http://www.eionet.europa.eu/gemet/2004/06/gemet-schema.rdf#">
+<skos:ConceptScheme rdf:about="http://geonetwork-opensource.org/inspire-theme">
+<dc:title>GEMET - INSPIRE themes, version 1.0</dc:title>
+<dc:description>INSPIRE themes thesaurus for GeoNetwork opensource.</dc:description>
+<dc:creator>
+<foaf:Organization>
+<foaf:name>EEA</foaf:name>
+</foaf:Organization>
+</dc:creator>
+<dc:uri>http://www.eionet.europa.eu/gemet/about?langcode=en</dc:uri>
+<dc:rights>http://www.eionet.europa.eu/gemet/about?langcode=en</dc:rights>
+<dcterms:issued>2008-06-01</dcterms:issued>
+<dcterms:modified>2008-06-01</dcterms:modified>
+</skos:ConceptScheme>
+<skos:Concept rdf:about="http://rdfdata.eionet.europa.eu/inspirethemes/themes/1">
+<skos:altLabel>rs</skos:altLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sv">Referenskoordinatsystem</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sv">System för att entydigt lägesbestämma rumslig information i rummet som en uppsättning koordinater (x, y, z) och/ eller som latitud, longitud och höjd, på grundval av ett geodetiskt horisontellt och vertikalt datum.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sl">Referenčni koordinatni sistemi</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sk">Súradnicové referenčné systémy</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sl">Sistemi za izključno navajanje prostorskih informacij v prostoru v obliki niza koordinat (x, y, z) in/ali širine in dolžine ter višine, ki temeljijo na horizontalnem in vertikalnem geodetskem podatku.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sk">Systémy pre jednotne referenčné priestorové informácie v priestore v podobe množiny súradníc (x, y, z) a/alebo zemepisnej šírky, dĺžky a výšky založených na geodetickom horizontálnom a vertikálnom východzom bode.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ro">Sisteme de coordonate de referinţă</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ro">Sisteme de referinţă unică în spaţiu a informaţiilor spaţiale, alcătuite dintr-un set de coordonate (x, y, z) şi/sau latitudine şi longitudine şi altitudine, bazate pe un datum orizontal şi pe unul vertical.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pl">Systemy odniesienia za pomocą współrzędnych</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pt">Sistemas para referenciar de forma única a informação geográfica no espaço sob a forma de um conjunto de coordenadas (x, y, z) e/ou latitude e longitude e altitude, com base num datum geodésico horizontal e vertical.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pt">Sistemas de referencia</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="nl">Systemen voor verwijzing door middel van coördinaten</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pl">Systemy dla jednoznacznego przestrzennego odnoszenia informacji przestrzennej za pomocą współrzędnych x, y, z lub za pomocą szerokości, długości lub wysokości na podstawie geodezyjnego poziomego i pionowego układu odniesienia.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="mt">Sistemi ta' referenza ta' koordinati</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="nl">Systemen om aan ruimtelijke informatie een unieke reeks coördinaten (x, y,z) en/of breedte, lengte en hoogte toe te kennen, gebaseerd op een horizontaal en verticaal geodetische datum.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lv">Koordinātu atskaites sistēmas</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="mt">Sistemi biex issir referenza unika ta' informazzjoni ġeografika fl-ispazju bħala sett ta' koordinati (x,y,z) u/jew latitudni u lonġitudni u altitudni, ibbażati fuq datum ġeodetiku orizzontali u vertikali.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lv">Sistēmas viennozīmīgai telpiskās informācijas atskaišu norādīšanai telpā ar koordinātu kopu (x, y, z) un/vai platumu, garumu un augstumu, izmantojot ģeodēziskos horizontālos un vertikālos datus.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lt">Koordinačių atskaitos sistemos</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="it">Sistemi di coordinate</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lt">Vienareikšmio erdvinės informacijos nurodymo erdvėje naudojant koordinačių (x, y, z) derinį ir (arba) platumą, ilgumą bei aukštį sistemos, pagrįstos geodezinės horizontaliosios ir vertikaliosios atskaitos duomenimis.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="hu">Koordinátarendszerek</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="it">Sistemi per referenziare in maniera univoca le informazioni territoriali nello spazio mediante un sistema di coordinate (x, y, z) e/o latitudine e longitudine e quota, sulla base di un dato geodetico orizzontale e verticale.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="hu">Olyan rendszerek, amelyek a térinformáció térbeli helyzetét koordinátákkal (x, y, z) és/vagy vízszintes és függőleges geodéziai adatokon alapuló földrajzi szélességgel, hosszúsággal és magassággal adják meg.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fr">Systèmes de référencement unique des informations géographiques dans l'espace sous forme d'une série de coordonnées (x, y, z) et/ou la latitude et la longitude et l'altitude, en se fondant sur un point géodésique horizontal et vertical.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fr">Référentiels de coordonnées</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fi">Koordinaattijärjestelmät</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="es">Sistemas de coordenadas de referencia</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="et">Süsteemid, milles ruumiandmete asukoht ruumis määratakse üheselt koordinaatide hulgaga (x, y, z) ja/või geodeetilisel referents- ja kõrgussüsteemil põhineva laiuse, pikkuse ja kõrgusega.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="et">Koordinaatsüsteemid</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fi">Järjestelmät, joissa paikkatietoihin liittyvä sijainti esitetään yksikäsitteisesti koordinaattien (x, y, z) ja/tai maantieteellisten pituus- ja leveysasteiden sekä korkeuden avulla ja jotka perustuvat horisontaalisiin ja vertikaalisiin geodeettisiin vertausjärjestelmiin.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="en">Systems for uniquely referencing spatial information in space as a set of coordinates (x, y, z) and/or latitude and longitude and height, based on a geodetic horizontal and vertical datum.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="en">Coordinate reference systems</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="es">Sistemas para referenciar de forma unívoca la información espacial en el espacio como una serie de coordenadas (x, y, z) y/o latitud y longitud y altura, basándose en un punto de referencia geodésico horizontal y vertical.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="el">Συστήματα για μονοσήμαντη αναφορά χωρικών πληροφοριών στον χώρο, ως σύνολο συντεταγμένων (x,y,z) ή/και γεωγραφικό πλάτος και μήκος και ύψος, με βάση γεωδαιτικό οριζόντιο και κατακόρυφο σύστημα αναφοράς (datum).</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="el">Συστήματα συντεταγμένων</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="de">Koordinatenreferenzsysteme</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="bg">Координатни справочни системи</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="de">Systeme zur eindeutigen räumlichen Referenzierung von Geodaten anhand eines Koordinatensatzes (x, y, z) und/oder Angaben zu Breite, Länge und Höhe auf der Grundlage eines geodätischen horizontalen und vertikalen Datums.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="da">Koordinatsystemer</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="cs">Souřadnicové referenční systémy</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="da">Systemer for entydig rumlig stedfæstelse af geografiske informationer ved hjælp af et sæt koordinater (x, y, z) og/eller længde, bredde og højde, baseret på et horisontalt og vertikalt geodætisk datum.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="cs">Systémy umožňující jednoznačné přiřazení polohy prostorovým informacím pomocí souboru souřadnic (x, y, z) nebo zeměpisné šířky, zeměpisné délky a výšky, vycházející z údajů polohových a výškových geodetických systémů.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="bg">Системи за пространствена информация, предназначена изключително за справочни цели, представена в пространството с координати (x, y, z) и/или ширина, дължина и височина, на базата на геодезични хоризонтални и вертикални данни.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ca">Sistemes de coordenades de referència</skos:prefLabel><skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ca">Sistemes per referenciar de manera unívoca la informació espacial en l’espai com una sèrie de coordenades (x, y, z) i/o latitud i longitud i altura, basant-se en un punt de referència geodèsic horitzontal i vertical.</skos:scopeNote></skos:Concept>
+<skos:Concept rdf:about="http://rdfdata.eionet.europa.eu/inspirethemes/themes/10">
+<skos:altLabel>el</skos:altLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sv">Höjd</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pt">Altitude</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ro">Modele digitale de elevaţii ale suprafeţelor terestre, de gheaţă sau oceanice. Include altimetria, batimetria şi linia de coastă.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ro">Elevaţie</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sl">Digitalni model višin</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sv">Digitala höjdmodeller för mark-, is- och havsyta. Inbegriper höjdförhållanden på land, batymetri samt kustlinje.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sl">Digitalni model višin za kopensko, zaledenelo in oceansko površino. Vključuje nadmorske višine, batimetrijo in obalne mreže.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sk">Výška</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sk">Digitálne výškové modely zemského povrchu, ľadovcov a hladín oceánov. Patria sem pevninové vyvýšeniny, batymetria a pobrežná čiara.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pt">Modelos digitais de terreno aplicáveis às superfícies terrestre, gelada e oceânica. Inclui a elevação terrestre, a batimetria e a linha costeira.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="nl">Digitale hoogtemodellen voor land-, ijs- en oceaanoppervlakken, inclusief landhoogte, bathymetrie en kustlijn.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pl">Ukształtowanie terenu</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="nl">Hoogte</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pl">Cyfrowe modele wysokościowe powierzchni lądu, lodu i oceanu. Obejmuje również wysokość topograficzną terenu, batymetrię oraz linię brzegową.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="mt">Mudelli ta' elevazzjoni diġitali għall-art, is-silġ u l-wiċċ ta' l-oċean. Tinkludi l-elevazzjoni ta' l-art, il-batimetrija u l-linja tal-kosta.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="mt">Elevazzjoni</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lv">Digitāli augstuma modeļi zemes, ledus un jūras virsmai. Tie ietver arī sauszemes reljefu, dziļumu un krasta līniju.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lv">Augstums</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lt">Aukštis</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="it">Modelli digitali di elevazione per superfici emerse, ghiacci e superfici oceaniche. La voce comprende l’altitudine terrestre, la batimetria e la linea di costa.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="it">Elevazione</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lt">Sausumos, ledo ir vandenyno paviršių skaitmeniniai aukščio modeliai. Tai apima sausumos aukštį, batimetriją ir pakrantės liniją.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fi">Digitaaliset maan-, jään- ja merenpintaa kuvaavat korkeusmallit. Sisältää maanpinnan korkeussuhteet, syvyystiedot ja rantaviivan.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fi">Korkeus</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fr">Modèles numériques pour l'altitude des surfaces terrestres, glaciaires et océaniques. Comprend l'altitude terrestre, la bathymétrie et la ligne de rivage.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="hu">Domborzat</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fr">Altitude</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="hu">Digitális domborzati modellek a szárazföldi, jéggel borított és óceáni felszínre. Ide tartozik a felszíni és víz alatti domborzat és a partvonal.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="el">Υψομετρία</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="en">Digital elevation models for land, ice and ocean surface. Includes terrestrial elevation, bathymetry and shoreline.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="en">Elevation</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="es">Modelos digitales de elevaciones para las superficies de tierra, hielo y mar. Se incluirán la altimetría, la batimetría y la línea de costa.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="es">Elevaciones</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="et">Maa- ja jääpinna ning ookeani põhja digitaalsed reljeefimudelid. Hõlmab maapinna ja veekogude põhja reljeefi ning kaldajooni.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="et">Kõrgused</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="de">Höhe</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="el">Ψηφιακά υψομετρικά μοντέλα για χερσαίες εκτάσεις, εκτάσεις καλυπτόμενες από πάγους και ωκεανούς. Περιλαμβάνονται, εν προκειμένω, η χερσαία υψομετρία, η βαθυμετρία και οι ακτογραμμές.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="da">Digitale højdemodeller for land, is og havoverflade. Omfatter landhøjder, havdybder og kystlinje.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="da">Højde</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="de">Digitale Höhenmodelle für Land-, Eis- und Meeresflächen. Dazu gehören Geländemodell, Tiefenmessung und Küstenlinie.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="bg">Цифрови релефни модели за земната, ледената и океанската повърхност. Включва земен релеф, батиметрия и брегова линия.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="cs">Nadmořská výška</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="bg">Релеф</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="cs">Digitální výškový model pevniny, povrchu ledovců a oceánů. Zahrnuje nadmořské výšky pevnin, vodní hloubky a pobřežní čáru.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ca">Elevacions</skos:prefLabel><skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ca">Models digitals d’elevacions per a les superfícies de terra, gel i mar. S’inclourà l’altimetria, la batimetria i la línia de costa.</skos:scopeNote></skos:Concept>
+<skos:Concept rdf:about="http://rdfdata.eionet.europa.eu/inspirethemes/themes/11">
+<skos:altLabel>lc</skos:altLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sv">Landtäcke</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sv">Fysiskt och biologiskt landtäcke på jordytan, inbegripet artificiella ytor, jordbruksmark, skogar, (delvis) naturliga områden, våtmarker, vattenförekomster.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sl">Pokrovnost tal</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pt">Ocupação do solo</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ro">Acoperirea fizică şi biologică a suprafeţei terestre, inclusiv suprafeţele artificiale, zonele agricole, pădurile, zonele (semi)naturale, zonele umede şi corpurile de apă.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sk">Krajinná pokrývka (land cover)</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sl">Fizični in biološki pojavi na zemeljski površini, vključno z umetnimi površinami, kmetijskimi območji, gozdovi, (pol-) naravnimi območji, mokrišči, vodnimi telesi.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sk">Fyzikálna a biologická pokrývka zemského povrchu vrátane umelých povrchov, poľnohospodárskych oblastí, lesov, (polo)prírodných oblastí, mokradí, vodných útvarov.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ro">Acoperire terestră</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="nl">Bodemgebruik</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pl">Fizyczne i biologiczne użytkowanie powierzchni Ziemi, włączając w to powierzchnie sztuczne, obszary rolnicze, lasy, obszary (pół-)naturalne, tereny podmokłe, akweny.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pl">Użytkowanie terenu</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pt">Cobertura física e biológica da superfície terrestre, incluindo superfícies artificiais, zonas agrícolas, florestas, zonas naturais ou semi-naturais, zonas húmidas, massas de água.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lv">Zemes virsma</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="mt">Kopertura fiżika u bijoloġika tal-wiċċ tad-dinja inklużi superfiċji artifiċjali, żoni agrikoli, foresti, żoni (semi-)naturali, artijiet mistagħdra, u korpi ta' ilma.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="mt">Kopertura ta' l-art</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="nl">Fysieke en biologische bedekking van het aardoppervlak, met inbegrip van kunstmatige oppervlakken, landbouwgebieden, bossen, halfnatuurlijke gebieden, moeraslanden en wateroppervlakken.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lt">Žemės danga</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lv">Zemes virsmas fiziskais un bioloģiskais segums, tostarp mākslīgu virsmu, lauksaimniecības teritoriju, mežu, (daļēji) dabisku platību, mitrzemju, ūdenstilpņu fiziskais un bioloģiskais segums.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lt">Fizinė ir biologinė žemės paviršiaus danga, įskaitant dirbtinius paviršius, žemės ūkio plotus, miškus, (pusiau) natūralius plotus, šlapžemes, vandens telkinius.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="hu">A felszín borítása</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fr">Occupation des terres</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="hu">A Föld felszínének fizikai és biológiai borítása, beleértve a mesterséges felszínt, a mezőgazdasági területeket, erdőket, a (félig) természetes területeket, a vizes élőhelyeket és a víztesteket.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="it">Copertura fisica e biologica della superficie terrestre comprese le superfici artificiali, le zone agricole, i boschi e le foreste, le aree (semi)naturali, le zone umide, i corpi idrici.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="it">Copertura del suolo</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="es">Cubierta terrestre</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="et">Maapinna elutust või elusainest kate, sealhulgas tehislikud pinnakatted, põllumajandusalad, metsad, (pool-)looduslikud alad, märgalad ning veekogud.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="et">Maakate</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fi">Maapallon pinnan fysikaalinen ja biologinen peite, mukaan luettuina keinotekoiset peitteet, maatalousalueet, metsät, (osaksi) luonnontilassa olevat alueet, kosteikot ja vesistöt.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fi">Maanpeite</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fr">Couverture physique et biologique de la surface terrestre, y compris les surfaces artificielles, les zones agricoles, les forêts, les zones (semi-)naturelles, les zones humides et les masses d'eau.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="el">Κάλυψη γης</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="en">Physical and biological cover of the earth's surface including artificial surfaces, agricultural areas, forests, (semi-)natural areas, wetlands, water bodies.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="de">Physische und biologische Bedeckung der Erdoberfläche, einschließlich künstlicher Flächen, landwirtschaftlicher Flächen, Wäldern, natürlicher (naturnaher) Gebiete, Feuchtgebieten und Wasserkörpern.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="en">Land cover</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="es">Cubierta física y biológica de la superficie de la tierra, incluidas las superficies artificiales, las zonas agrarias, los bosques, las zonas naturales o seminaturales, los humedales, las láminas de agua.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="de">Bodenbedeckung</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="el">Φυσική και βιολογική κάλυψη της γήινης επιφάνειας, όπου συμπεριλαμβάνονται τεχνητές εκτάσεις, γεωργικές εκτάσεις, δάση, (ημι-)φυσικές εκτάσεις, υγρότοποι, υδατικά συστήματα.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="cs">Krajinný pokryv</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="da">Jordens fysiske og biologiske overflade, herunder kunstige overflader, landbrugsarealer, skove, (halv-)naturlige områder, vådområder, vandområder.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="da">Arealdække</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="bg">Физическа или биологична покривка на земната повърхност, включително изкуствени повърхности, селскостопански райони, гори, (полу-) естествени райони, влажни зони, водни маси.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="bg">Земна покривка</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="cs">Fyzický a biologický pokryv zemského povrchu, včetně uměle vytvořených ploch, zemědělských oblastí, lesů, přirozených a částečně přirozených oblastí, mokřadů, vodních těles.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ca">Coberta terrestre</skos:prefLabel><skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ca">Coberta física i biològica de la superfície de la terra, incloses les superfícies artificials, les zones agràries, els boscos, les zones naturals o seminaturals, les àrees humides i les làmines d’aigua.</skos:scopeNote></skos:Concept>
+<skos:Concept rdf:about="http://rdfdata.eionet.europa.eu/inspirethemes/themes/12">
+<skos:altLabel>oi</skos:altLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sl">Geolocirani slikovni podatki zemeljske površine iz satelita ali senzorjev v zraku.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sl">Ortofoto</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ro">Imagini georeferenţiate ale suprafeţei terestre, înregistrate cu senzori plasaţi pe sateliţi sau aeropurtaţi.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ro">Ortoimagini</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sv">Ortofoto</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sv">Georefererade bilddata över jordytan, antingen från satelliter eller från flygburna sensorer.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sk">Georeferencované obrazové údaje o zemskom povrchu buď zo satelitu alebo z leteckých snímačov.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sk">Ortometria</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pl">Sporządzanie ortoobrazów</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pt">Imagens georeferenciadas da superfície terrestre recolhidas por satélite ou sensores aéreos.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pt">Ortoimagens</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="nl">Orthobeeldvorming</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pl">Dane obrazowe powierzchni Ziemi posiadające odniesienie geograficzne, pochodzące z rejestracji z pokładu satelity lub samolotu.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="mt">Orthoimagery</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="nl">Geogerefereerde beeldgegevens van het aardoppervlak, afkomstig van sensoren op satellieten of vliegtuigen.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lv">Ortofotogrāfija</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="mt">Data fil-forma ta' stampa ġeo-referenzjata tal-wiċċ tad-dinja, minn satellita jew minn sensuri fl-ajru.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lt">Ortofotografinis vaizdavimas</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lv">Zemes virsmas attēli ar piekārtotu norādi par ģeogrāfisko novietojumu telpā, kas saņemti no satelīta vai gaisā esošiem sensoriem.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="it">Orto immagini</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lt">Georeferencinis žemės paviršiaus atvaizdas, gaunamas iš palydove arba orlaivyje esančių jutiklių.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="hu">Ortofotók</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="it">Immagini georeferenziate della superficie terrestre prese da satellite o da telesensori.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fr">Images géoréférencées de la surface terrestre, provenant de satellites ou de capteurs aéroportés.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fr">Ortho-imagerie</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="hu">A Föld felszínének földrajzi hivatkozással ellátott, műhold vagy légi adatgyűjtők által készített képi adatai.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="es">Imágenes georreferenciadas de la superficie de la tierra, obtenidas por satélite o por sensores aerotransportados.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="es">Ortoimágenes</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="et">Maapinna georefereeritud kujutised, mis on talletatud satelliitidel või lennuvahenditel asuvate sensorite abil.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fi">Ortoilmakuvat</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="et">Ortokujutised</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fi">Joko satelliittien tai lentokäyttöisten sensorien toimittamia maantieteelliseen koordinaatistoon sidottuja kuvatietoja maapallon pinnasta.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="el">Ορθοφωτογραφία</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="en">Geo-referenced image data of the Earth's surface, from either satellite or airborne sensors.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="el">Γεωαναφερόμενα δεδομένα από εικόνες της επιφάνειας της γης, από δορυφόρους ή αερομεταφερόμενους αισθητήρες.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="en">Orthoimagery</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="da">Ortofoto</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="de">Georeferenzierte Bilddaten der Erdoberfläche von satelliten- oder luftfahrzeuggestützten Sensoren.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="de">Orthofotografie</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="bg">Данни от геоизображение на земната повърхност, направено от сателит или въздушни сензори.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="cs">Ortofotosnímky</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="da">Georefererede billeddata om Jordens overflade optaget fra enten satellit- eller flybaserede sensorer.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="cs">Obrazová data pořízená satelitními nebo leteckými čidly vztažená k zemskému povrchu pomocí zeměpisné soustavy souřadnic.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="bg">Ортоизображение</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ca">Ortoimatges</skos:prefLabel><skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ca">Imatges georeferenciades de la superfície de la terra, obtingudes per satèl·lit o per sensors aerotransportats.</skos:scopeNote></skos:Concept>
+<skos:Concept rdf:about="http://rdfdata.eionet.europa.eu/inspirethemes/themes/13">
+<skos:altLabel>ge</skos:altLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pl">Geologia</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pt">Geologia caracterizada de acordo com a composição e a estrutura. Inclui a base rochosa, os aquíferos e a geomorfologia.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pt">Geologia</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ro">Geologie caracterizată în funcţie de compoziţie şi structură. Include roca de bază, straturile acvifere şi geomorfologia.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ro">Geologie</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sk">Geológia charakterizovaná na základe zloženia a štruktúry. Zahŕňa skalné podložie, zvodnené vrstvy a geomorfológiu.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sk">Geológia</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sl">Geologija je določena v skladu s sestavo in strukturo. Vključuje živo skalo, vodonosnike in geomorfologijo.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sl">Geologija</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sv">Geologiska förhållanden indelade efter sammansättning och struktur. Innefattar berggrund, akviferer och geomorfologi.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sv">Geologi</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="nl">Geologie</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pl">Geologia charakteryzowana na podstawie składu i struktury. Obejmuje podłoże skalne, warstwy wodonośne i geomorfologię.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="mt">Ä eologija</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="nl">Geologie, gekenmerkt volgens samenstelling en structuur, inclusief vast gesteente, waterhoudende grondlagen en geomorfologie.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lv">Ģeoloģija</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="mt">Ġeoloġija kkaratterizzata skond il-kompożizzjoni u l-istruttura. Tinkludi s-sodda tal-blat, l-akwiferi u lġeomorfoloġija.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lv">Ģeoloģiskais stāvoklis, ko raksturo uzbūve un struktūra. Tostarp informācija par pamatiežiem, ūdens nesējslāņiem un ģeomorfoloģiju.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lt">Geologija</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lt">Geologija apibūdinama pagal sudėtį ir struktūrą. Tai apima pamatinę uolieną, vandeninguosius sluoksnius ir geomorfologiją.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="it">Geologia</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="hu">Földtan</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="it">Classificazione geologica in base alla composizione e alla struttura. Questa voce comprende il basamento roccioso, gli acquiferi e la geomorfologia.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fr">Géologie</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="hu">Az összetétel és szerkezet alapján jellemzett földtan. Ide tartozik az alapkőzet, a víztartó rétegek és a geomorfológia is.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="en">Geology characterised according to composition and structure. Includes bedrock, aquifers and geomorphology.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="en">Geology</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="es">Características geológicas según la composición y la estructura. Se incluirán la plataforma de roca firme, los acuíferos y la geomorfología.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="es">Geología</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="et">Maapinna geoloogiline iseloom vastavalt koostisele ja struktuurile. Hõlmab aluskivimeid, põhjaveekihte ja geomorfoloogiat.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="et">Geoloogia</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fi">Geologia kuvattuna koostumuksen ja rakenteen mukaan. Sisältää kallioperän, akviferit ja pinnanmuodot.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fi">Geologia</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fr">Géologie caractérisée en fonction de la composition et de la structure. Englobe le substratum rocheux, les aquifères et la géomorphologie.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="el">Γεωλογία</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="de">Geologie</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="el">Γεωλογικός χαρακτηρισμός με βάση τη σύσταση και τη δομή. Περιλαμβάνονται το μητρικό πέτρωμα, οι υδροφόροι ορίζοντες και η γεωμορφολογία.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="da">Geologi</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="de">Geologische Beschreibung anhand von Zusammensetzung und Struktur. Dies umfasst auch Grundgestein, Grundwasserleiter und Geomorphologie.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="bg">Геология, определена според състава и структурата. Включва земен слой, воден слой и геоморфология.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="bg">Геология</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="cs">Geologie charakterizovaná podle složení a struktury. Zahrnuje skalní podloží, zvodně a geomorfologii.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="cs">Geologie</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="da">Geologi karakteriseret ved sammensætning og struktur. Omfatter grundfjeld, grundvandsmagasiner og geomorfologi.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ca">Geologia</skos:prefLabel><skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ca">Característiques geològiques segons la composició i l’estructura. S’inclourà la plataforma de roca ferma, els aqüífers i la geomorfologia.</skos:scopeNote></skos:Concept>
+<skos:Concept rdf:about="http://rdfdata.eionet.europa.eu/inspirethemes/themes/14">
+<skos:altLabel>su</skos:altLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pt">Unidades estatísticas</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ro">Unităţi de difuzare sau de utilizare a informaţiilor statistice.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ro">Unităţi statistice</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sk">Jednotky pre šírenie alebo využívanie štatistických informácií.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sk">Štatistické jednotky</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sl">Enote za širjenje ali uporabo statističnih podatkov.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sl">Statistični okoliši</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sv">Enheter för spridning och användning av statistisk information.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sv">Statistiska enheter</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="nl">Statistische eenheden</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pl">Jednostki służące do rozpowszechniania lub wykorzystywania informacji statystycznych.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pl">Jednostki statystyczne</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pt">Unidades para fins de divulgação ou utilização da informação estatística.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lt">Vienetai, skirti statistinÄ—s informacijos platinimui ar panaudojimui.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lt">Statistiniai vienetai</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lv">Vienības, kuras izmanto statistikas informācijas izplatīšanā vai izmantošanā.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="mt">Unitajiet statistiċi</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="nl">Eenheden voor verspreiding en gebruik van statistische informatie.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="mt">Unitajiet biex issir disseminazzjoni jew użu ta' informazzjoni ta' l-istatistika.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lv">Statistikas vienības</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="it">Unità statistiche</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fi">Tilastotietojen levittämis- tai käyttöyksiköt.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fi">Tilastoyksiköt</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fr">Unités de diffusion ou d'utilisation d'autres informations statistiques.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fr">Unités statistiques</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="hu">Statisztikai információk terjesztésére vagy felhasználására szolgáló egységek.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="hu">Statisztikai egységek</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="it">Unità per la divulgazione o l'utilizzo di dati statistici.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="es">Unidades estadísticas</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="et">Statistilise teabe levitamise või kasutamise üksused.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="et">Statistilised üksused</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="en">Statistical units</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="es">Unidades para la difusión o el uso de información estadística.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="de">Statistische Einheiten</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="el">Μονάδες διάδοσης ή χρήσης στατιστικών πληροφοριών.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="el">Στατιστικές μονάδες</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="en">Units for dissemination or use of statistical information.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="cs">Jednotky pro šíření nebo používání statistických informací.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="cs">Statistické jednotky</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="da">Enheder for formidling eller anvendelse af statistiske oplysninger.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="da">Statistiske enheder</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="de">Einheiten für die Verbreitung oder Verwendung statistischer Daten.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="bg">Единици, разпространяващи или ползващи статистическа информация.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="bg">Статистически единици</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ca">Unitats estadístiques</skos:prefLabel><skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ca">Unitats per a la difusió o l’ús d’informació estadística.</skos:scopeNote></skos:Concept>
+<skos:Concept rdf:about="http://rdfdata.eionet.europa.eu/inspirethemes/themes/15">
+<skos:altLabel>bu</skos:altLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sl">Prostorska lega stavb.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sl">Stavbe</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sv">Geografiskt läge för byggnader.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sv">Byggnader</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ro">Clădiri</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sk">Zemepisná poloha stavieb.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sk">Stavby</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pt">Edifícios</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ro">Localizarea geografică a clădirilor.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pt">Localização geográfica dos edifícios.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pl">Położenie geograficzne budynków.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pl">Budynki</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lv">Ä’kas</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="mt">Posizzjoni ġeografika ta' bini.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="mt">Bini</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="nl">Geografische locatie van gebouwen.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="nl">Gebouwen</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lv">Ēku ģeogrāfiskā atrašanās vieta.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="el">Γεωγραφική θέση κτιρίων.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="el">Κτίρια</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="en">Geographical location of buildings.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="en">Buildings</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="es">Localización geográfica de los edificios.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="es">Edificios</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="et">Ehitiste geograafiline asukoht.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="et">Ehitised</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fi">Rakennusten maantieteellinen sijainti.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fi">Rakennukset</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fr">Situation géographique des bâtiments.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lt">Pastatai</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lt">Geografinė pastatų buvimo vieta.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="it">Edifici</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="it">Localizzazione geografica degli edifici.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="hu">Épületek</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="hu">Az épületek földrajzi helye.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fr">Bâtiments</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="bg">Географско разположение на сградите.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="bg">Сгради</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="cs">Zeměpisná poloha budov.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="cs">Budovy</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="da">Geografisk stedfæstelse af bygninger.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="da">Bygninger</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="de">Geografischer Standort von Gebäuden.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="de">Gebäude</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ca">Edificis</skos:prefLabel><skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ca">Localització geogràfica dels edificis.</skos:scopeNote></skos:Concept>
+<skos:Concept rdf:about="http://rdfdata.eionet.europa.eu/inspirethemes/themes/16">
+<skos:altLabel>so</skos:altLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sl">Tla</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sv">Jordmåner och jordarter klassificerade efter djup, textur, struktur och innehåll av partiklar och organiskt material, stenighet, erosion, vid behov genomsnittlig lutning och beräknad vattenhållande förmåga.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sv">Mark</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sl">Tla in sloji prsti pod površjem, določeni po debelini, teksturi, zgradbi in vsebnosti delcev in organskih snovi, kamnitosti, eroziji, po potrebi povprečni nagib in predvidene zmogljivosti vodnih zalog.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ro">Soluri şi subsoluri, caracterizate în funcţie de adâncime, textură, structură şi conţinut al particulelor şi materialului organic, schelet, eroziune, înclinaţie medie şi capacitate anticipată de stocare a apei, după caz.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ro">Soluri</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sk">Pôdy a podložia charakterizované podľa hĺbky, textúry, štruktúry a obsahu častíc a organického materiálu, kamenitosti, erózie, prípadne priemerným sklonom a predpokladanou schopnosťou zadržiavať vodu.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pl">Gleby i podglebie charakteryzowane na podstawie głębokości, tekstury, struktury i zawartości cząstek oraz materiału organicznego, kamienistości, erozji, a w odpowiednich przypadkach na podstawie przeciętnego nachylenia oraz przewidywanej zdolności zatrzymywania wody.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pl">Gleba</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sk">Pôda</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pt">Solo e subsolo caracterizado de acordo com a profundidade, textura, estrutura e conteúdo das partículas e material orgânico, carácter pedregoso, erosão, eventualmente declive médio e capacidade estimada de armazenamento de água.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pt">Solo</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lv">Augsne</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="nl">Bodem</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="nl">Bodem en ondergrond, gekenmerkt volgens diepte, textuur, structuur en inhoud van deeltjes en organisch materiaal, steenachtigheid, erosie en, waar passend, gemiddelde hellingsgraad en verwachte wateropslagcapaciteit.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="mt">Ħamrija</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="mt">Tipi ta' ħamrija u sub-ħamrija kkaratterizzati skond il-fond, it-tessut, l-istruttura u l-kontenut ta' partiċelli u materjal organiku, il-kontenut ta' ġebel, it-tgħawwir, fejn xieraq il-medja tax-xaqlib ta' l-art u l-kapaċità antiċipata għall-ħażna ta' l-ilma.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="it">Suolo</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lt">Dirvožemio ir podirvio charakteristikos: gylis, granuliometrinė sudėtis, dalelių ir organinių medžiagų struktūra ir sudėtis, akmeningumas, erozija ir tam tikrais atvejais vidutinis nuolydis bei numatomas vandens sulaikymo pajėgumas.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lv">Augsnes un tās apakškārtas stāvoklis, ko raksturo dziļums, faktūra, struktūra un daļiņu un organisko vielu saturs, akmeņainība, erozija un, attiecīgā gadījumā, vidējais slīpums un prognozējamā ūdens uzkrāšanas spēja.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lt">Dirvožemis</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="it">Caratterizzazione del suolo e del sottosuolo in base a profondità, tessitura (texture), struttura e contenuto delle particelle e della materia organica, pietrosità, erosione, eventualmente pendenza media e capacità prevista di ritenzione dell’acqua.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="hu">Talaj</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="hu">A mélység, állag, szerkezet, a részecskék és szerves anyagok jelenléte, a köves jelleg, az erózió, valamint adott esetben az átlagos lejtés és a becsült víztartó képesség alapján jellemzett talajok és altalaj.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fr">Sols et sous-sol caractérisés selon leur profondeur, texture, structure et teneur en particules et en matières organiques, pierrosité, érosion, le cas échéant pente moyenne et capacité anticipée de stockage de l'eau.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fr">Sols</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fi">Maannoksen ja muuttumattoman pohjamaalajin kuvaaminen syvyyden, raekoostumuksen, rakenteen sekä hiukkasten ja orgaanisen aineksen sisällön, kivisyyden, eroosion ja tarvittaessa keskimääräisen kaltevuuden ja arvioidun veden varastointikapasiteetin mukaan.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fi">Maaperä</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="et">Pinnas</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="et">Pinnas ja aluspinnas, mida iseloomustatakse sügavuse, tekstuuri, struktuuri, osakeste ja orgaanilise materjali sisalduse, kivimisisalduse, erosiooni, vajadusel keskmise kalde ja eeldatava veemahutavuse järgi.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="es">Suelo</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="es">Suelo y subsuelo, caracterizados según su profundidad, textura, estructura y contenido de partículas y material orgánico, pedregosidad, erosión y, cuando proceda, pendiente media y capacidad estimada de almacenamiento de agua.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="el">Χαρακτηρισμός εδάφους και υπεδάφους ανάλογα με το βάθος, την υφή, τη δομή και την περιεκτικότητα σε σωματίδια και οργανικά υλικά, το πετρώδες, τη διάβρωση και, κατά περίπτωση, τη μέση κλίση και την προβλεπόμενη χωρητικότητα αποθήκευσης νερού.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="en">Soil</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="el">Έδαφος</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="en">Soils and subsoil characterised according to depth, texture, structure and content of particles and organic material, stoniness, erosion, where appropriate mean slope and anticipated water storage capacity.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="de">Boden</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="da">Jordbund og underjord karakteriseret efter dybde, tekstur, struktur og indhold af partikler og organisk materiale, stenindhold, erosion, i givet fald gennemsnitlig hældning og forventet vandlagringskapacitet.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="de">Beschreibung von Boden und Unterboden anhand von Tiefe, Textur, Struktur und Gehalt an Teilchen sowie organischem Material, Steinigkeit, Erosion, gegebenenfalls durchschnittliches Gefälle und erwartete Wasserspeicherkapazität.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="da">Jord</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="bg">Почви и подпочви, определени според дълбочина, строеж, структура, механичен състав и съдържание на органични материали, каменливост, ерозия и, по целесъобразност, среден наклон и предполагаема водопопиваемост.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="cs">Půda a její podloží popsané podle hloubky, zrnitosti, struktury a obsahu částic a organického materiálu, podílu skeletu, erozí, případně průměrného sklonu svahu a očekávané kapacity jímavosti vody.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="cs">Půda</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="bg">Почва</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ca">Sòl</skos:prefLabel><skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ca">Sòl i subsòl, caracteritzats segons la seva profunditat, textura, estructura i contingut de partícules i material orgànic, pedregositat, erosió i, quan sigui procedent, pendent mitjà i capacitat estimada d’emmagatzematge d’aigua.</skos:scopeNote></skos:Concept>
+<skos:Concept rdf:about="http://rdfdata.eionet.europa.eu/inspirethemes/themes/17">
+<skos:altLabel>lu</skos:altLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sv">Markanvändning</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sl">Namenska raba tal</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sv">Territorium indelat efter nuvarande och framtida planerade funktion eller socioekonomisk användning (t.ex. bostadsmark, industrimark, handel, jordbruk, skogsbruk, friluftsliv).</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pl">Zagospodarowanie przestrzenne</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pt">Caracterização do território de acordo com a dimensão funcional ou finalidade socioeconómica planeada, presente e futura (por exemplo, residencial, industrial, comercial, agrícola, silvícola, recreativa).</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pt">Uso do solo</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ro">Teritoriu caracterizat în funcţie de dimensiunea funcţională actuală sau viitoare planificată sau de scopul socioeconomic (de exemplu rezidenţial, industrial, comercial, agricol, forestier, de recreaţie).</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ro">Utilizarea terenului</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sk">Územie charakterizované podľa jeho súčasného a budúceho plánovaného funkčného rozmeru alebo socioekonomického účelu (napr. obytný, priemyselný, obchodný, poľnohospodársky, lesnícky, rekreačný).</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sk">Využitie územia</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sl">Ozemlje, opredeljeno glede na svojo sedanjo in v prihodnje načrtovano funkcionalno razsežnost ali socialnoekonomski namen (npr. stanovanjski, industrijski, trgovinski, kmetijski, gozdni, rekreacijski).</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lv">Zemes izmantošana</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="mt">Territorju kkaratterizzat skond id-dimensjoni funzjonali tiegħu ppjanata attwali u futura jew l-iskop soċjo-ekonomiku tiegħu (eż. residenzjali, industrijali, kummerċjali, agrikolu, forestali, rikreazzjonali).</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="mt">Użu ta' l-art</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="nl">Het grondgebied, gekenmerkt volgens zijn huidige en geplande toekomstige functionele dimensie of sociaaleconomische bestemming (bv. wonen, industrieel, commercieel, landbouw, bosbouw, recreatie).</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="nl">Landgebruik</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pl">Terytorium charakteryzowane ze względu na jego obecny lub przyszły wymiar funkcjonalny lub przeznaczenie społeczno-gospodarcze (np. mieszkaniowe, przemysłowe, handlowe, rolnicze, leśne, wypoczynkowe).</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="hu">Földhasználat</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="it">Classificazione del territorio in base alla dimensione funzionale o alla destinazione socioeconomica presenti e programmate per il futuro (ad esempio ad uso residenziale, industriale, commerciale, agricolo, silvicolo, ricreativo).</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="hu">A jelenlegi és a jövőbeli tervezett funkcionális szempontok vagy a társadalmigazdasági rendeltetés (például lakó-, ipari, kereskedelmi, mezőgazdasági, erdő- vagy pihenőövezet) szerint jellemzett területek.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lv">Teritorijas stāvoklis, ko raksturo tās pašreizējās un nākotnē plānotās funkcionālās izmantošanas dimensija vai sociāli ekonomiskais izmantošanas nolūks (piemēram, zeme dzīvojamiem namiem, rūpnieciskiem, komerciāliem, lauksaimniecības, mežniecības, atpūtas mērķiem).</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lt">Žemės naudojimas</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lt">Teritorija apibūdinama pagal jos esamą ir būsimą planuojamą funkcinę arba socialinę ir ekonominę paskirtį (pvz., gyvenamoji, pramoninė, komercinė, žemės ūkio, miškų, rekreacinė).</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="it">Utilizzo del territorio</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="et">Maakasutus</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fi">Alueen kuvaaminen sen nykyisen ja tulevan suunnitellun käyttötarkoituksen tai sosioekonomisen tarkoituksen (esimerkiksi asuin- tai teollisuusalue, liikekeskus, maa- tai metsätalousalue tai virkistysalue) mukaan.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fi">Maankäyttö</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fr">Territoire caractérisé selon sa dimension fonctionnelle prévue ou son objet socioéconomique actuel et futur (par exemple, résidentiel, industriel, commercial, agricole, forestier, récréatif).</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fr">Usage des sols</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="et">Maa-ala iseloomustus olemasolevate ja tulevaste kavandatud kasutusaspektide või sotsiaalmajandusliku sihtotstarbe järgi (nt elamu- tööstus-, äri-, põllumajandus-, metsa- või puhkemaa).</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="el">Χρήσεις γης</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="en">Territory characterised according to its current and future planned functional dimension or socio-economic purpose (e.g. residential, industrial, commercial, agricultural, forestry, recreational).</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="en">Land use</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="es">Caracterización del territorio, de acuerdo con su dimensión funcional o su dedicación socioeconómica actual o futura planificadas (por ejemplo, residencial, industrial, comercial, agrario, forestal, recreativo).</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="es">Uso del suelo</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="bg">Територия, определена според настоящите и бъдещите ѝ планирани функционални параметри или социално- икономическо предназначение (например жилищна, промишлена, търговска, селскостопанска, горска, почивна).</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="bg">Ползване на земята</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="cs">Území popsané podle své současné a plánované funkce nebo společensko-hospodářských účelů (např. obytné, průmyslové, obchodní, zemědělské, lesnické, rekreační).</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="cs">Využití území</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="da">Området karakteriseret ved dets nuværende og fremtidige planlagte funktion eller samfundsøkonomiske formål (f.eks. beboelse, industri, handel, landbrug, skovbrug, rekreation).</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="da">Arealanvendelse</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="de">Beschreibung von Gebieten anhand ihrer derzeitigen und geplanten künftigen Funktion oder ihres sozioökonomischen Zwecks (z. B. Wohn-, Industrie- oder Gewerbegebiete, land- oder forstwirtschaftliche Flächen, Freizeitgebiete).</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="de">Bodennutzung</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="el">Χαρακτηρισμός περιοχών ανάλογα με τη σημερινή και τη μελλοντική σχεδιαζόμενη λειτουργία τους ή τον κοινωνικοοικονομικό σκοπό τους (π.χ. αμιγώς οικιστική, βιομηχανική, εμπορική, γεωργική, δασική, αναψυχής).</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ca">Ús del sòl</skos:prefLabel><skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ca">Caracterització del territori, d’acord amb la seva dimensió funcional o la seva dedicació socioeconòmica actual o futura planificades (per exemple, residencial, industrial, comercial, agrari, forestal, recreatiu).</skos:scopeNote></skos:Concept>
+<skos:Concept rdf:about="http://rdfdata.eionet.europa.eu/inspirethemes/themes/18">
+<skos:altLabel>hh</skos:altLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sv">Människors hälsa och säkerhet</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sk">Geografická distribúcia najčastejších ochorení (alergie, nádorové ochorenia, ochorenia dýchacích ciest atď.), informácie o vplyve na zdravie (biologické ukazovatele, pokles plodnosti, epidémie) alebo telesný či duševný stav ľudí (únava, stres atď.), ktoré priamo (znečistenie ovzdušia, chemikálie, oslabenie ozónovej vrstvy, hluk atď.) alebo nepriamo (strava, geneticky upravené organizmy atď.) súvisia s kvalitou životného prostredia.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sl">Zdravje in varnost prebivalstva</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sv">Geografisk fördelning av dominansen av patologier (allergier, cancer, sjukdomar i andningsorganen osv.), all information om de effekter på människors hälsa (biomarkörer, minskad fertilitet, epidemier osv.) eller välbefinnande (trötthet, stress osv.) som har ett direkt (luftföroreningar, kemikalier, uttunning av ozonskiktet, buller osv.) eller ett indirekt (livsmedel, genetiskt modifierade organismer osv.) samband med miljöns kvalitet.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sk">Ľudské zdravie a bezpečnosť</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sl">Geografska razporeditev pogostih patoloških pojavov (alergije, rakasta obolenja, obolenja dihalnih poti itd.), podatki o učinkih na zdravje (biološki označevalci, zmanjšana rodnost, epidemije) ali počutje ljudi (utrujenost, stres itd.), povezanih neposredno (onesnaženost zraka, kemikalije, tanjšanje ozonskega plašča, hrup itd.) ali posredno (hrana, genetsko spremenjeni organizmi itd.) s kakovostjo okolja.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pl">Rozmieszczenie geograficzne występowania patologii chorobowych (alergii, nowotworów, chorób układu oddechowego itd.), informacje dotyczące wpływu na zdrowie (biomarkery, spadek płodności, epidemie) lub dobre samopoczucie ludzi (zmęczenie, stres itd.) związane bezpośrednio (zanieczyszczenie powietrza, chemikalia, zubożenie warstwy ozonowej, hałas itd.) lub pośrednio (pożywienie, organizmy zmodyfikowane genetycznie itd.) z jakością środowiska.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pl">Zdrowie i bezpieczeństwo ludzi</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pt">Distribuição geográfica da dominância de patologias (alergias, cancros, doenças respiratórias, etc.), informações que indiquem o efeito da qualidade do ambiente sobre a saúde (biomarcadores, declínio da fertilidade, epidemias) ou sobre o bem-estar dos seres humanos (fadiga, tensão, stress, etc.) de forma directa (poluição do ar, produtos químicos, empobrecimento da camada de ozono, ruído, etc.) ou indirecta (alimentação, organismos geneticamente modificados, etc.).</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ro">Sănătate şi siguranţă umană</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pt">Saúde humana e segurança</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ro">Distribuţia geografică a patologiilor dominante (alergii, tipuri de cancer, boli respiratorii etc.), precum şi informaţiile care indică efectul asupra sănătăţii (indicatorii biologici, scăderea fertilităţii, epidemiile) sau asupra bunăstării oamenilor (oboseala, stresul etc.), legat în mod direct (poluarea aerului, substanţele chimice, subţierea stratului de ozon, zgomotul etc.) sau indirect (mâncarea, organismele modificate genetic etc.) de calitatea mediului.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lt">Žmonių sveikata ir sauga</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lv">Dominējošo patoloģiju (alerģiju, vēža, elpošanas ceļu slimību, utt.) ģeogrāfiskā izplatība, informācija, kas norāda uz ietekmi uz veselību (biomarkeri, auglības mazināšana, epidēmijas) vai cilvēku labklājību (nogurumu, stresu, utt.), kas tieši (gaisa piesārņojums, ķīmiskās vielas, ozona slāņa noplicināšanās, trokšņi, utt.) vai netieši (pārtika, ģenētiski modificēti organismi, utt.) saistīta ar vides kvalitāti.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lv">Cilvēku veselība un drošība</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="mt">Distribuzzjoni ġeografika tad-dominanza ta' patoloġiji (allerġiji, kankri, mard respiratorju, eċċ.), informazzjoni li tindika l-effett fuq is-saħħa (bijomarkaturi, tnaqqis fil-fertilità, epidemiji) jew il-benesseri tal-bnedmin (għejja, stress, eċċ.) b'konnessjoni diretta (tniġġis ta' l-arja, kimiki, tnaqqis tas-saff ta' l-ożonu, storbju, eċċ.) jew indiretta (ikel, organiżmi ġenetikament modifikati, eċċ.) mal-kwalità ta' l-ambjent.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="mt">Is-saħħa u s-siġurtà tal-bniedem</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="nl">De geografische spreiding van ziekten (allergieën, kankers, ademhalingsziekten, enz.), informatie over de gevolgen voor de gezondheid (biomarkers, vruchtbaarheidsdaling, epidemieën) of het welzijn van de mens (vermoeidheid, stress, enz.) die direct (luchtvervuiling, chemicaliën, aantasting van de ozonlaag, lawaai, enz.) of indirect (voedsel, genetisch gemodificeerde organismen, enz.) samenhangen met de kwaliteit van het milieu.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="nl">Menselijke gezondheid en veiligheid</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="it">Salute umana e sicurezza</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lt">Patologijų dominavimo geografinis pasiskirstymas (alergijos, vėžys, kvėpavimo takų ligos ir t. t.), informacija apie poveikį žmonių sveikatai (biomarkeriai, vaisingumo sumažėjimas, epidemijos) ar gerovei (nuovargis, stresas ir t. t.), tiesiogiai (oro tarša, cheminės medžiagos, ozono sluoksnio retėjimas, triukšmas ir t. t.) arba netiesiogiai (maistas, genetiškai modifikuoti organizmai ir t. t.) susijusi su aplinkos kokybe.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="it">Distribuzione geografica della prevalenza di patologie (allergie, tumori, malattie respiratorie, ecc.), le informazioni contenenti indicazioni sugli effetti relativi alla salute (indicatori biologici, riduzione della fertilità e epidemie) o al benessere degli esseri umani (affaticamento, stress, ecc.) in relazione alla qualità dell’ambiente, sia in via diretta (inquinamento atmosferico, sostanze chimiche, riduzione dello strato di ozono, rumore, ecc.) che indiretta (alimentazione, organismi geneticamente modificati, ecc.).</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="hu">Emberi egészség és biztonság</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="hu">A környezet minőségéhez közvetlenül (légszennyezés, vegyszerek, az ózonréteg elvékonyodása, zaj stb.) vagy közvetve (élelmiszer, genetikailag módosított szervezetek stb.) kapcsolódó patológiák (allergiás, daganatos és légúti megbetegedések stb.) dominanciájának földrajzi eloszlása, illetve ezen tényezőknek az emberi egészségre (biomarkerek, termékenységcsökkenés, járványok) vagy jólétre (fáradtság, stressz stb.) gyakorolt hatását jellemző információ.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fr">Répartition géographique des pathologies dominantes (allergies, cancers, maladies respiratoires, etc.) liées directement (pollution de l'air, produits chimiques, appauvrissement de la couche d'ozone, bruit, etc.) ou indirectement (alimentation, organismes génétiquement modifiés, etc.) à la qualité de l'environnement, et ensemble des informations relatif à l'effet de celle-ci sur la santé des hommes (marqueurs biologiques, déclin de la fertilité, épidémies) ou leur bienêtre (fatigue, stress, etc.).</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fr">Santé et sécurité des personnes</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fi">Väestön terveys ja turvallisuus</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="es">Salud y seguridad humanas</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="et">Haiguste (allergiad, vähk, hingamisteede haigused jne) domineerimise geograafiline jaotumine, keskkonna kvaliteediga otseselt (õhusaaste, kemikaalid, osoonikihi kahanemine, müra jne) või kaudselt (toit, geneetiliselt muundatud organismid jne) seotud mõjusid inimeste tervisele (biomarkerid, viljatushaiguste sagenemine, epideemiad) või heaolule (väsimus, stress jne) puudutav teave.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="et">Inimeste tervis ja ohutus</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fi">Ympäristön laatuun välittömästi (esimerkiksi ilman pilaantuminen, kemikaalit, otsonikerroksen oheneminen, melu) tai välillisesti (esimerkiksi elintarvikkeet, muuntogeeniset organismit) yhteydessä olevien sairauksien (esimerkiksi allergiat, syövät, hengityselinsairaudet) maantieteellinen esiintyminen, tiedot, jotka osoittavat vaikutuksen terveyteen (esimerkiksi biologiset merkkiaineet, hedelmällisyyden väheneminen, epidemiat) tai ihmisten hyvinvointiin (esimerkiksi väsymys, stressi).</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="da">Sikkerhed</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="de">Geografische Verteilung verstärkt auftretender pathologischer Befunde (Allergien, Krebserkrankungen, Erkrankungen der Atemwege usw.), Informationen über Auswirkungen auf die Gesundheit (Biomarker, Rückgang der Fruchtbarkeit, Epidemien) oder auf das Wohlbefinden (Ermüdung, Stress usw.) der Menschen in unmittelbarem Zusammenhang mit der Umweltqualität (Luftverschmutzung, Chemikalien, Abbau der Ozonschicht, Lärm usw.) oder in mittelbarem Zusammenhang mit der Umweltqualität (Nahrung, genetisch veränderte Organismen usw.).</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="de">Gesundheit und Sicherheit</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="el">Γεωγραφική κατανομή της κυριαρχίας παθολογιών (αλλεργίες, καρκίνοι, αναπνευστικές ασθένειες, κ.λπ.), πληροφορίες που καταδεικνύουν τις επιπτώσεις στην υγεία (βιοδείκτες, πτώση της γονιμότητας, επιδημίες) ή την ευεξία των ανθρώπων (κούραση, υπερένταση, κ.λπ.) που συνδέονται άμεσα (ατμοσφαιρική ρύπανση, χημικές ουσίες, καταστροφή της στιβάδας του όζοντος, θόρυβος, κ.λπ.) ή έμμεσα (τρόφιμα, γενετικώς τροποποιημένοι οργανισμοί, κ.λπ.) με την ποιότητα του περιβάλλοντος.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="el">Ανθρώπινη υγεία και ασφάλεια</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="en">Geographical distribution of dominance of pathologies (allergies, cancers, respiratory diseases, etc.), information indicating the effect on health (biomarkers, decline of fertility, epidemics) or well-being of humans (fatigue, stress, etc.) linked directly (air pollution, chemicals, depletion of the ozone layer, noise, etc.) or indirectly (food, genetically modified organisms, etc.) to the quality of the environment.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="bg">Здраве и безопасност на човека</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="cs">Zeměpisné rozložení převládajícího výskytu patologických stavů (alergií, rakovin, nemocí dýchacího ústrojí atd.), informace o dopadu na zdraví (biomarkery, pokles plodnosti, epidemie) nebo životní podmínky (únava, stres atd.) související přímo (znečištění ovzduší, chemikálie, ztenčování ozonové vrstvy, hluk atd.) nebo nepřímo (potraviny, geneticky modifikované organismy atd.) s kvalitou životního prostředí.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="cs">Lidské zdraví a bezpečnost</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="da">og sundhed Geografisk fordeling af dominansen af patologier (allergier, kræft, luftvejssygdomme, osv.), oplysninger om indvirkningen på menneskers sundhed (biologiske markører, nedsat frugtbarhed, epidemier) eller trivsel (træthed, stress, osv.), der er direkte (luftforurening, kemikalier, udtynding af ozonlaget, støj, osv.) eller indirekte (fødevarer, genmodificerede organismer, osv.) knyttet til miljøkvaliteten.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="en">Human health and safety</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="es">Distribución geográfica de la dominancia de patologías (alergias, cáncer, enfermedades respiratorias, etc.), la información que indique el efecto sobre la salud (marcadores biológicos, declive de la fertilidad, epidemias) o el bienestar humanos (cansancio, estrés, etc.) directamente vinculada con la calidad del medio ambiente (contaminación del aire, productos químicos, enrarecimiento de la capa de ozono, ruido, etc.) o indirectamente vinculada con dicha calidad (alimentos, organismos modificados genéticamente, etc.).</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="bg">Географско разпределение на преобладаващите патологии (алергии, рак, болести на дихателните пътища и др.), информация за въздействието върху човешкото здраве (биомаркери, намаляване на раждаемостта, епидемии) или за физическото състояние на човека (умора, стрес и други), пряко свързани (замърсяване на въздуха, химикали, изтъняване на озоновия слой, шум и др.) или непряко свързани (храна, генетично модифицирани организми и други) с качеството на околната среда.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ca">Salut i seguretat humanes</skos:prefLabel><skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ca">Distribució geogràfica de la dominància de patologies (al·lèrgies, càncer, malalties respiratòries, etc.), de la informació que indiqui l’efecte sobre la salut (marcadors biològics, davallada de la fertilitat, epidèmies) o el benestar humans (cansament, estrès, etc.), directament vinculada amb la qualitat del medi ambient (contaminació de l’aire, productes químics, enrariment de la capa d’ozó, soroll, etc.) o indirectament vinculada amb aquesta qualitat (aliments, organismes modificats genèticament, etc.).</skos:scopeNote></skos:Concept>
+<skos:Concept rdf:about="http://rdfdata.eionet.europa.eu/inspirethemes/themes/19">
+<skos:altLabel>us</skos:altLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sv">Allmännyttiga och offentliga tjänster</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sl">Komunalne in javne storitve</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sv">Inbegriper anläggningar för allmännyttiga tjänster, exempelvis för hantering av avloppsvatten, avfallshantering, energiförsörjning och vattenförsörjning, administrativa och sociala offentliga tjänster såsom offentliga förvaltningar, räddningstjänstens anläggningar, skolor och sjukhus.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ro">Includ instalaţiile de utilitate publică, precum sistemele de canalizare, de gestionare a deşeurilor, de aprovizionare cu energie electrică şi apă, şi serviciile administrative şi sociale publice, precum adăposturile de protecţie civilă, şcolile şi spitalele.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ro">Servicii de utilitate publică şi servicii publice</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sk">Patria sem verejné zariadenia, ako napríklad kanalizácia, nakladanie s odpadom, dodávka energie a dodávka vody, administratívne a sociálne štátne služby, ako napríklad verejná správa, miesta civilnej ochrany, školy a nemocnice.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sk">Verejné a štátne služby</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sl">Vključuje komunalne naprave kot so kanalizacija, ravnanje z odpadki, oskrba z energijo in preskrba z vodo, upravne in socialne vladne službe kot so javne uprave, sedeži civilne zaščite, šole in bolnišnice.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pl">Usługi użyteczności publicznej i służby państwowe</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pt">Inclui instalações e serviços de utilidade pública, como redes de esgotos, gestão de resíduos, fornecimento de energia, abastecimento de água, serviços administrativos e sociais do Estado tais como administrações públicas, instalações da protecção civil, escolas e hospitais.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pt">Serviços de utilidade pública e do Estado</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="nl">Nutsdiensten en overheidsdiensten</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pl">Obejmuje instalacje użyteczności publicznej takie jak: kanalizacja, zarządzanie odpadami, dostawa energii i dostawa wody, administracyjne i społeczne służby państwowe lub samorządowe, takie jak: administracja publiczna, obiekty ochrony cywilnej, szkoły i szpitale.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lt">Komunalinės įmonės ir valstybės tarnybos</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lv">Tas ietver tādu komunālo dienestu iekārtas kā kanalizācija, atkritumu apsaimniekošana, energoapgāde un ūdens apgāde, administratīvos un sociālos valsts dienestus, piemēram, valsts administrāciju, civilās aizsardzības novietnes, skolas un slimnīcas.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="mt">Servizzi ta' utilità u tal-gvern</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="nl">Nutsvoorzieningen zoals riolering, afvalbeheer, energievoorziening, watervoorziening, bestuurlijke en maatschappelijke instanties van de overheid, zoals bestuurlijke overheden, civiele bescherming, scholen en ziekenhuizen.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="mt">Jinkludu faċilitajiet ta' utilità bħad-drenaġġ, l-immaniġġar ta' l-iskart, il-provvista ta' l-enerġija, il-provvista ta' l-ilma, isservizzi amministrattivi u soċjali tal-gvern bħal amministrazzjonijiet pubbliċi, siti għall-protezzjoni ċivili, skejjel u sptarijiet.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lv">Komunālie un valsts dienesti</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="it">Servizi di pubblica utilità e servizi amministrativi</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lt">Tai apima komunalinių įmonių infrastruktūrą, pavyzdžiui, kanalizaciją, atliekų tvarkymą, elektros energijos tiekimą ir vandens tiekimą, administracines ir socialines valstybės tarnybas, pavyzdžiui, viešojo administravimo įstaigas, civilinės saugos tarnybas, mokyklas ir ligonines.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fr">Services d'utilité publique et services publics</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="hu">Magában foglalja az olyan közüzemi létesítményeket, mint például a szennyvíz- és hulladékgazdálkodás, az energiaellátás és a vízellátás, valamint az igazgatási és szociális közszolgáltatásokat, például a közigazgatási szerveket, a polgári védelmi létesítményeket, iskolákat és kórházakat.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="hu">Közüzemi és közszolgáltatások</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="it">Sono compresi sia impianti quali gli impianti fognari, di gestione dei rifiuti, di fornitura energetica, e di distribuzione idrica, sia servizi pubblici amministrativi e sociali quali le amministrazioni pubbliche, i siti della protezione civile, le scuole e gli ospedali.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fi">Yleishyödylliset ja muut julkiset palvelut</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fr">Comprend les installations d'utilité publique, tels que les égouts ou les réseaux et installations liés à la gestion des déchets, à l'approvisionnement énergétique, à l'approvisionnement en eau, ainsi que les services administratifs et sociaux publics, tels que les administrations publiques, les sites de la protection civile, les écoles et les hôpitaux.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="en">Utility and governmental services</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="es">Incluye instalaciones de utilidad pública de alcantarillado, gestión de residuos, suministro de energía y suministro de agua, así como servicios estatales administrativos y sociales tales como administraciones públicas, sitios de protección civil, escuelas y hospitales.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="es">Servicios de utilidad pública y estatales</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="en">Includes utility facilities such as sewage, waste management, energy supply and water supply, administrative and social governmental services such as public administrations, civil protection sites, schools and hospitals.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="et">Kommunaal- ja riiklikud teenused</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fi">Tämä käsittää yleishyödyllisten palvelujen laitokset, kuten viemäröinnin, jätehuollon, energiahuollon ja vesihuollon, sekä hallinnolliset ja sosiaaliset julkiset palvelut, kuten viranomaiset, väestönsuojat, koulut ja sairaalat.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="et">Hõlmab tehnorajatisi nagu näiteks reovee ja jäätmete käitluse, energia- ja veevarustuse võrgud ja rajatised ning riiklikke haldus- ja sotsiaalteenuseid nagu riiklikud haldusorganid, kodanikukaitse alad, koolid ja haiglad.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="da">Omfatter forsyningsvirksomhed så som kloakering, affaldshåndtering, energiforsyning og vandforsyning, administrative og sociale offentlige tjenester som f.eks. offentlige administrationer, civilbeskyttelsesanlæg, skoler og hospitaler.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="da">Offentlig forsyningsvirksomhed og offentlige tjenesteydelser</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="de">Versorgungseinrichtungen wie Abwasser- und Abfallentsorgung, Energieversorgung und Wasserversorgung; staatliche Verwaltungs- und Sozialdienste wie öffentliche Verwaltung, Katastrophenschutz, Schulen und Krankenhäuser.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="de">Versorgungswirtschaft und staatliche Dienste</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="el">Περιλαμβάνονται εγκαταστάσεις υπηρεσιών κοινής ωφελείας, όπως η αποχέτευση, η διαχείριση αποβλήτων, ο ενεργειακός εφοδιασμός και η υδροδότηση, οι διοικητικές και κοινωνικές κρατικές υπηρεσίες, όπως οι δημόσιες διοικήσεις, οι χώροι πολιτικής προστασίας, τα σχολεία και τα νοσοκομεία.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="bg">Включват инфраструктура за комунално-битови услуги, например напоителни системи, управление на отпадъците, електроснабдяване и водоснабдяване, административни и социални обществени услуги, например публични администрации, обекти на гражданската защита, училища и болници.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="bg">Комунално-битови и обществени услуги</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="el">Επιχειρήσεις κοινής ωφελείας και κρατικές υπηρεσίες</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="cs">Veřejné služby a služby veřejné správy</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="cs">Zahrnují zařízení, jako například kanalizace, nakládání s odpady, zásobování energií a zásobování vodou, správní a sociální státní služby, jako například veřejnou správu, zařízení civilní ochrany, školy a nemocnice.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ca">Serveis d'utilitat pública i estatals</skos:prefLabel><skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ca">Inclou instal·lacions d’utilitat pública de clavegueram, gestió de residus, subministrament d’energia i subministrament d’aigua, així com serveis estatals administratius i socials tals com administracions públiques, llocs de protecció civil, escoles i hospitals.</skos:scopeNote></skos:Concept>
+<skos:Concept rdf:about="http://rdfdata.eionet.europa.eu/inspirethemes/themes/2">
+<skos:altLabel>gg</skos:altLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sl">Geografska koordinatna mreža</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sv">Harmoniserade rutnät med flera upplösningar, gemensam utgångspunkt och standardiserad placering och storlek på rutorna.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sv">Geografiska rutnätssystem</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ro">Sisteme de caroiaj geografic</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sk">Harmonizovaná sieť s viacúrovňovým rozlíšením so spoločným počiatočným bodom a štandardizovanou polohou a veľkosťou buniek siete.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sk">Geografické systémy sietí</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sl">Usklajena večločljivostna mreža s skupno točko izvora in standardizirano lokacijo ter velikostjo mrežnih celic.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pl">Systemy siatek geograficznych</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pt">Quadrícula harmonizada multi-resolução com um ponto de origem comum e localização e dimensão normalizadas das células.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pt">Sistemas de quadrículas geográficas</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ro">Caroiaj multirezoluţie armonizat, având un punct de origine comun, precum şi localizare şi mărime standardizate ale celulelor.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="mt">Sistemi ta' grilji ġeografiċi</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="nl">Geharmoniseerde multiresolutieraster met een gemeenschappelijk beginpunt en gestandaardiseerde plaats en grootte van de gridcellen.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="nl">Geografisch rastersysteem</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pl">Zharmonizowana wielorozdzielcza siatka o wspólnym punkcie początkowym i znormalizowanym położeniu oraz wielkości pól siatki.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lv">Ģeogrāfisko koordinātu tīklu sistēmas</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="mt">Grilja multi-risoluzzjoni armonizzata b'punt ta' oriġini komuni u pożizzjoni u daqs taċ-ċelluli tal-grilja standardizzati.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lt">Geografinio tinklelio sistemos</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lv">Saskaņots daudzpakāpju izšķiršanas koordinātu tīkls ar kopēju sākumpunktu un standartizētu tīkla šūnu atrašanās vietu un izmēru.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lt">Suderintas kintamos skiriamosios gebos tinklelis su bendru atskaitos tašku ir standartizuota tinklelio langelių lokacija bei dydžiu.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="it">Griglia multi-risoluzione armonizzata con un punto di origine comune e un posizionamento e una dimensione standard delle celle.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="it">Sistemi di griglie geografiche</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fr">Systèmes de maillage géographique</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="hu">Harmonizált több felbontású rács közös kiindulóponttal és egységesített rácscella-helymeghatározással és -mérettel.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="hu">Földrajzi rácsrendszerek</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fi">Yhdenmukaistettu monitasoinen ruudukko, jossa on yhteinen lähtöpiste ja standardoitu yksittäisen ruudun sijainti ja koko.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fi">Paikannusruudustot</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fr">Grille multi-résolution harmonisée avec un point d'origine commun et une localisation ainsi qu'une taille des cellules harmonisées.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="en">Geographical grid systems</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="es">Cuadrículas armonizadas multirresolución con un punto de origen común y con ubicación y tamaños de cuadrícula normalizados.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="es">Sistema de cuadrículas geográficas</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="et">Ühtlustatud, ühise lähtepunktiga ning võrguruutude standardse paigutuse ja suurusega mitmetasandiline ruutvõrk.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="et">Geograafilised ruutvõrgud</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="el">Συστήματα γεωγραφικού καννάβου</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="en">Harmonised multi-resolution grid with a common point of origin and standardised location and size of grid cells.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="da">Et harmoniseret kvadratnet med flere cellestørrelser samt fælles nulpunkt og standardiseret cellelokalisering og -størrelse.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="da">Geografiske kvadratnetsystemer</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="de">Harmonisiertes Gittersystem mit Mehrfachauflösung, gemeinsamem Ursprungspunkt und standardisierter Lokalisierung und Größe der Gitterzellen.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="de">Geografische Gittersysteme</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="el">Εναρμονισμένος κάνναβος πολλαπλής ανάλυσης με ενιαίο σημείο αφετηρίας και τυποποιημένη θέση και μέγεθος των φατνίων του καννάβου.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="bg">Географски координатни системи</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="cs">Zeměpisné soustavy souřadnicových sítí</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="cs">Harmonizovaná souřadnicová síť s víceúrovňovým rozlišením, normalizovanou polohou a velikostí buněk souřadnicové sítě, a společným vztažným bodem.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="bg">Хармонизирана сложна координатна система с обща начална точка и стандартизирано разположение и размер на квадрантите на координатната система.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ca">Sistema de quadrícules geogràfiques</skos:prefLabel><skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ca">Quadrícules harmonitzades multiresolució amb un punt d’origen comú i amb ubicació i grandària de quadrícula normalitzats.</skos:scopeNote></skos:Concept>
+<skos:Concept rdf:about="http://rdfdata.eionet.europa.eu/inspirethemes/themes/20">
+<skos:altLabel>ef</skos:altLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sv">Anläggningar för miljöövervakning</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sl">Naprave in objekti za monitoring okolja</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sv">Placering och användning av anläggningar för miljöövervakning inbegriper iakttagelse och mätning av utsläpp, av situationen när det gäller miljömedier och av andra parametrar för ekosystemet (biologisk mångfald, ekologiska villkor för växtligheten etc.) som genomförs av offentliga myndigheter eller för deras räkning.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sl">Nahajanje in delovanje naprav in objektov za spremljanje okolja vključuje opazovanje in merjenje emisij, stanja okolja in drugih parametrov ekosistema (biološka raznolikost, ekološki pogoji vegetacije itd.) s strani javnih organov ali v njihovem imenu.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sk">Poloha a prevádzka zariadení na monitorovanie životného prostredia zahŕňa pozorovanie a meranie emisií, stavu zložiek životného prostredia a iných parametrov ekosystému (biodiverzity, ekologických podmienok vegetácie, atď.) vykonávané orgánmi verejnej moci alebo v ich mene.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sk">Zariadenia na monitorovanie životného prostredia</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pt">Instalações de monitorização do ambiente</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ro">Amplasarea şi exploatarea instalaţiilor de supraveghere a mediului implică observarea şi măsurarea emisiilor, a stării mediului înconjurător şi a altor parametri ai ecosistemului (biodiversitate, condiţii ecologice ale vegetaţiei etc.) de către sau în numele autorităţilor publice.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="nl">Milieubewakingsvoorzieningen</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pl">Lokalizacja i funkcjonowanie urządzeń do monitorowania środowiska obejmują obserwację i pomiary emisji, stanu zasobów środowiska i innych parametrów ekosystemu (różnorodności biologicznej, warunków ekologicznych wegetacji itd.) przez organy publiczne lub w ich imieniu.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pl">Urządzenia do monitorowania środowiska</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pt">A localização e funcionamento de instalações de monitorização do ambiente inclui a observação e medição de emissões, do estado das diferentes componentes ambientais e de outros parâmetros dos ecossistemas (biodiversidade, condições ecológicas da vegetação, etc.) pelas autoridades públicas ou por conta destas.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ro">Instalaţii de supraveghere a mediului</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="mt">Faċilitajiet ta' monitoraġġ ambjentali</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="nl">Locatie en werking van milieubewakingsvoorzieningen, met inbegrip van waarneming en meting van emissies, de staat van de milieucompartimenten en van andere ecosysteemparameters (biodiversiteit, ecologische omstandigheden van vegetatie, enz.) door of namens de overheidsinstanties.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="mt">Posizzjoni u operazzjoni ta' faċilitajiet ta' monitoraġġ ambjentali jinkludi l-osservazzjoni u l-kejl ta' emissjonijiet, ta' listat tal-medji ambjentali u ta' parametri oħra ta' l-ekosistema (biodiversità, kondizzjonijiet ekoloġiċi ta' veġetazzjoni, eċċ.) permezz jew f'isem l-awtoritajiet pubbliċi.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lt">Aplinkos stebÄ—senos priemonÄ—s</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lv">Vides monitoringa iekārtu atrašanās vietas un pārvaldība, kas ietver emisiju, apkārtējās vides stāvokļa un citu ekosistēmas parametru (bioloģiskās daudzveidības, veģetācijas ekoloģisko apstākļu, utt.) novērošanu un mērīšanu, ko veic publiskās iestādes vai publisko iestāžu vārdā.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lv">Vides monitoringa iekārtas</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="hu">Környezetvédelmi monitoringlétesítmények</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="it">L'ubicazione e il funzionamento degli impianti di monitoraggio ambientale comprendono l'osservazione e la misurazione delle emissioni, dello stato dei comparti ambientali e di altri parametri dell'ecosistema (biodiversità, condizioni ecologiche della vegetazione, ecc.) da parte o per conto delle autorità pubbliche.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="it">Impianti di monitoraggio ambientale</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lt">Aplinkos stebėsenos priemonių vieta ir veikla, įskaitant valdžios institucijų arba jų vardu atliekamą išmetamų teršalų, aplinkos terpių būklės ir kitų ekosistemos parametrų (biologinės įvairovės, ekologinių augalijos sąlygų ir t. t.) stebėjimą ir matavimą.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="hu">A környezetvédelmi monitoringlétesítmények elhelyezkedése és működése magában foglalja a kibocsátásnak, a környezeti elemek állapotának, valamint az ökoszisztéma egyéb paramétereinek (biodiverzitás, a növényzet ökológiai állapota stb.) a hatóságok általi vagy a nevükben történő megfigyelését és mérését.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fr">Installations de suivi environnemental</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="et">Keskkonnaseirerajatiste asukoht ja kasutamine hõlmab heidete, keskkonnaelementide seisundi ja muude ökosüsteemi parameetrite (bioloogilise mitmekesisuse, taimkatte ökoloogiliste tingimuste jne) vaatlust ja mõõtmist avaliku võimu kandjate poolt või nende nimel.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="et">Keskkonnaseirerajatised</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fi">Ympäristön tilan seurantalaitteiden sijaintiin ja käyttöön kuuluu päästöjen, ilman, maaperän ja veden tilan ja muiden ekosysteemin muuttujien (luonnon monimuotoisuus, kasviston ekologiset olot jne.) seuranta ja mittaukset, joista vastaavat viranomaiset tai muut toimijat viranomaisten puolesta.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fi">Ympäristön tilan seurantalaitteet</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fr">La situation et le fonctionnement des installations de suivi environnemental comprennent l'observation et la mesure des émissions, de l'état du milieu environnemental et d'autres paramètres de l'écosystème (biodiversité, conditions écologiques de la végétation, etc.) par les autorités publiques ou pour leur compte.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="en">Location and operation of environmental monitoring facilities includes observation and measurement of emissions, of the state of environmental media and of other ecosystem parameters (biodiversity, ecological conditions of vegetation, etc.) by or on behalf of public authorities.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="es">Instalaciones de observación del medio ambiente</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="es">La ubicación y funcionamiento de instalaciones de observación del medio ambiente, encargadas de observar y medir emisiones, el estado del medio ambiente y otros parámetros del ecosistema (biodiversidad, condiciones ecológicas de la vegetación, etc.), por parte de las autoridades públicas o en nombre de ellas.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="en">Environmental monitoring facilities</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="el">Εγκαταστάσεις παρακολούθησης του περιβάλλοντος</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="da">Miljøovervågningsfaciliteter</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="de">Standort und Betrieb von Umweltüberwachungseinrichtungen einschließlich Beobachtung und Messung von Schadstoffen, des Zustands von Umweltmedien und anderen Parametern des Ökosystems (Artenvielfalt, ökologischer Zustand der Vegetation usw.) durch oder im Auftrag von öffentlichen Behörden.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="de">Umweltüberwachung</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="el">Η τοποθεσία και η λειτουργία των εγκαταστάσεων παρακολούθησης του περιβάλλοντος περιλαμβάνει την παρατήρηση και τη μέτρηση των εκπομπών, της κατάστασης των στοιχείων του περιβάλλοντος και άλλων παραμέτρων του οικοσυστήματος (βιοποικιλότητα, οικολογική κατάσταση της βλάστησης, κ.λπ.) από τις δημόσιες αρχές ή για λογαριασμό τους.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="da">Lokalisering og drift af miljøovervågningsfaciliteter omfatter observation og måling af emissioner, af miljøelementernes tilstand og af andre økosystemparametre (biodiversitet, plantevækstens økologiske betingelser, osv.) foretaget af eller på vegne af offentlige myndigheder.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="cs">Zařízení pro sledování životního prostředí</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="bg">Местонахождението и действието на съоръжения за мониторинг на околната среда включват наблюдение и измерване на емисиите, на състоянието на факторите на околната среда и на други параметри на екосистемата (биологично разнообразие, екологични условия на флората и други), извършвани от публичните власти или от тяхно име.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="bg">Съоръжения за управление на околната среда</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="cs">Rozmístění a provoz zařízení pro sledování životního prostředí zahrnuje pozorování a měření emisí, stavu složek životního prostředí a dalších ukazatelů ekosystému (druhové rozmanitosti, ekologických podmínek rostlinstva atd.) orgány veřejné správy nebo jejich jménem.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ca">Instal·lacions d'observació del medi ambient</skos:prefLabel><skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ca">Ubicació i funcionament d’instal·lacions d’observació del medi ambient, encarregades d’observar i mesurar emissions, l’estat del medi ambient i altres paràmetres de l’ecosistema (biodiversitat, condicions ecològiques de la vegetació, etc.) per part de les autoritats públiques o en nom d’aquestes.</skos:scopeNote></skos:Concept>
+<skos:Concept rdf:about="http://rdfdata.eionet.europa.eu/inspirethemes/themes/21">
+<skos:altLabel>pf</skos:altLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sv">Industriella produktionsställen, inbegripet anläggningar som omfattas av rådets direktiv 96/61/EG av den 24 september 1996 om samordnande åtgärder för att förebygga och begränsa föroreningar (1) samt vattenverk, gruvor och upplagsplatser.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sv">Produktions- och industrianläggningar</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ro">Instalaţii de producţie şi industriale</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sk">Priemyselné výrobné podniky vrátane zariadení, na ktoré sa vzťahuje smernica Rady 96/61/ES z 24. septembra 1996 o integrovanej prevencii a kontrole znečisťovania životného prostredia (1), a zariadenia na čerpanie vody, bane, sklady.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ro">Parcuri de producţie industrială, inclusiv instalaţiile reglementate de Directiva 96/61/CE a Consiliului din 24 septembrie 1996 privind prevenirea şi controlul integrat al poluării (1), precum şi instalaţiile de captare a apei, de extracţie minieră şi locurile de depozitare.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sl">Proizvodni in industrijski objekti in naprave</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sl">Območja za industrijsko proizvodnjo, vključno z obrati, ki jih zajema Direktiva Sveta 96/61/ES z dne 24. septembra 1996 o celovitem preprečevanju in nadzorovanju onesnaževanja (1) ter objekti in napravami za odvzem vode, rudniki, skladišči.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sk">Výrobné a priemyselné zariadenia</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="nl">Faciliteiten voor productie en industrie</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pl">Zakłady przemysłowe, w tym obiekty objęte dyrektywą 96/61/WE z dnia 24 września 1996 r. dotycząca zintegrowanego zapobiegania zanieczyszczeniom i ich kontroli (1) oraz urządzenia poboru wody, miejsca wydobycia i składowiska.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pt">Instalações industriais e de produção</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pt">Locais de produção industrial, incluindo instalações abrangidas pela Directiva 96/61/CE do Conselho, de 24 de Setembro de 1996, relativa à prevenção e controlo integrados da poluição (1), e instalações de captação de água, minas, locais de armazenagem.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pl">Obiekty produkcyjne i przemysłowe</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lv">Ražošanas un rūpniecības iekārtas</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="mt">Siti ta' produzzjoni industrijali, inklużi installazzjonijiet koperti mid-Direttiva tal-Kunsill 96/61/KE ta' l- 24 ta' Settembru 1996 dwar il-prevenzjoni u l-kontroll integrat tat-tniġġis (1) u faċilitajiet ta' astrazzjoni ta' l-ilma, tħaffir ta' minjieri, siti ta' ħażna.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="mt">Faċilitajiet ta' produzzjoni u industrijali</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lv">Rūpniecības ražošanas novietnes, tostarp iekārtas, kas iekļautas Padomes Direktīvā 96/61/EK (1996. gada 24. septembris) par piesārņojuma integrētu novēršanu un kontroli (1), un iekārtas, ko izmanto ūdens ņemšanai, kalnrūpniecībā vai uzglabāšanai.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="nl">Industriële productievestigingen, met inbegrip van installaties die onder Richtlijn 96/61/EG van de Raad van 24 september 1996 inzake geïntegreerde preventie en bestrijding van verontreiniging (1) vallen en waterontrekkingsfaciliteiten, mijnbouw, opslagplaatsen.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="it">Siti di produzione industriale; compresi gli impianti di cui alla direttiva 96/61/CE del Consiglio, del 24 settembre 1996, sulla prevenzione e la riduzione integrate dell'inquinamento (1) e gli impianti di estrazione dell’acqua, le attività estrattive e i siti di stoccaggio.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="it">Produzione e impianti industriali</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lt">Pramoninės gamybos įmonės, įskaitant įrenginius, kuriems taikoma 1996 m. rugsėjo 24 d. Tarybos direktyva 96/61/EB dėl taršos integruotos prevencijos ir kontrolės (1), ir vandens ėmimo įmones, kasybos, sandėliavimo vietas.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lt">Gamybos ir pramonės įrenginiai</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fi">Tuotanto- ja teollisuuslaitokset</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fr">Sites de production industrielle, y compris les installations couvertes par la directive 96/61/CE du Conseil du 24 septembre 1996 relative à la prévention et à la réduction intégrées de la pollution (1) et les installations de captage d'eau, d'extraction minière et de stockage.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fr">Lieux de production et sites industriels</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="hu">Ipari termelőhelyek, beleértve a környezetszennyezés integrált megelőzéséről és csökkentéséről szóló, 1996. szeptember 24-i 96/61/EK tanácsi irányelv (1) által szabályozott berendezéseket, valamint a vízkivételt, a bányászati és a tárolólétesítményeket.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="hu">Termelő és ipari létesítmények</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fi">Teollisuusalueet, mukaan luettuina ympäristön pilaantumisen ehkäisemisen ja vähentämisen yhtenäistämiseksi 24 päivänä syyskuuta 1996 annetun neuvoston direktiivin 96/61/EY (1) soveltamisalaan kuuluvat laitokset sekä vedenottamot, kaivokset ja varastoalueet.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="et">Tootmis- ja tööstusrajatised</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="es">Instalaciones de producción e industriales</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="et">Tööstusliku tootmise asukohad, sealhulgas nõukogu 24. septembri 1996. aasta direktiiviga 96/61/EÜ saastuse kompleksse vältimise ja kontrolli kohta (1) hõlmatud rajatised ning veevõtukohad, kaevandused ja ladustamiskohad.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="el">Εγκαταστάσεις παραγωγής και βιομηχανικές εγκαταστάσεις</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="en">Industrial production sites, including installations covered by Council Directive 96/61/EC of 24 September 1996 concerning integrated pollution prevention and control (1) and water abstraction facilities, mining, storage sites.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="en">Production and industrial facilities</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="es">Centros de producción industrial, incluidas las instalaciones contempladas en la Directiva 96/61/CE del Consejo, de 24 de septiembre de 1996, sobre la prevención y el control integrado de la contaminación (1), e instalaciones de extracción de agua, instalaciones mineras, centros de almacenamiento.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="de">Produktions- und Industrieanlagen</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="el">Τοποθεσίες βιομηχανικής παραγωγής, συμπεριλαμβανομένων των εγκαταστάσεων που καλύπτονται από την οδηγία 96/61/ΕΚ του Συμβουλίου, της 24ης Σεπτεμβρίου 1996, σχετικά με την ολοκληρωμένη πρόληψη και έλεγχο της ρύπανσης (1), και εγκαταστάσεις υδροληψίας, εξόρυξης, χώροι αποθήκευσης.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="cs">Místa s průmyslovou výrobou, včetně zařízení, na která se vztahuje směrnice Rady 96/61/ES ze dne 24. září 1996 o integrované prevenci a omezování znečištění (1), a zařízení na jímání vody, těžbu, skladiště a úložiště.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="cs">Výrobní a průmyslová zařízení</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="da">Industrielle produktionsanlæg, herunder de anlæg, der er omfattet af Rådets direktiv 96/61/EF af 24. september 1996 om forebyggelse og bekæmpelse af forurening (1), og vandudvindingsanlæg, miner, oplagspladser.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="da">Produktions- og industrifaciliteter</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="de">Standorte für industrielle Produktion, einschließlich durch die Richtlinie 96/61/EG des Rates vom 24. September 1996 über die integrierte Vermeidung und Verminderung der Umweltverschmutzung (1) erfasste Anlagen und Einrichtungen zur Wasserentnahme sowie Bergbau- und Lagerstandorte.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="bg">Производствени и промишлени съоръжения</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="bg">Промишлени обекти, включително инсталации, обхванати от Директива 96/61/ЕО на Съвета от 24 септември 1996 г. за комплексно предотвратяване и контрол на замърсяването (1), и съоръжения за водочерпене, минни съоръжения, складови обекти.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ca">Instal·lacions de producció i industrials</skos:prefLabel><skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ca">Centres de producció industrial, incloses les instal·lacions que preveu la Directiva 96/61/CE del Consell, de 24 de setembre de 1996, sobre la prevenció i el control integrat de la contaminació, i instal·lacions d’extracció d’aigua, instal·lacions mineres i centres d’emmagatzematge.</skos:scopeNote></skos:Concept>
+<skos:Concept rdf:about="http://rdfdata.eionet.europa.eu/inspirethemes/themes/22">
+<skos:altLabel>af</skos:altLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sv">Jordbruks- och vattenbruksanläggningar</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sl">Objekti in naprave za kmetijstvo in ribogojstvo</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sv">Jordbruksutrustning och produktionsanläggningar (inbegripet bevattningssystem, växthus och djurstallar).</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sk">Poľnohospodárske zariadenia a zariadenia akvakultúry</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sl">Kmetijska oprema ter proizvodni objekti in naprave (vključno z namakalnimi sistemi, rastlinjaki in hlevi).</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pt">Instalações agrícolas e aquícolas</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ro">Echipament şi instalaţii de producţie agricolă (inclusiv sisteme de irigaţie, sere şi grajduri).</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ro">Instalaţii agricole şi pentru acvacultură</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sk">Poľnohospodárske vybavenie a výrobné zariadenia (vrátane zavlažovacích systémov, skleníkov a stajní).</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pt">Equipamento e instalações de explorações agrícolas e aquícolas (incluindo sistemas de irrigação, estufas e viveiros, e estábulos).</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pl">Urządzenia rolnicze oraz urządzenia produkcyjne (łącznie z systemami nawadniania, szklarniami i stajniami).</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pl">Obiekty rolnicze oraz akwakultury</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="mt">Tagħmir tal-biedja u faċilitajiet ta' produzzjoni (inklużi sistemi ta' irrigazzjoni, serer u stalel).</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="mt">Faċilitajiet agrikoli u ta' l-akwakultura</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="nl">Landbouwuitrusting en productiefaciliteiten (met inbegrip van irrigatiesystemen, broeikassen en stallen).</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="nl">Faciliteiten voor landbouw en aquacultuur</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lv">Lauksaimniecības ierīces un ražošanas iekārtas (tostarp apūdeņošanas sistēmas, siltumnīcas un staļļi).</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lv">Lauksaimniecības un akvakultūras iekārtas</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lt">Žemės ūkio ir akvakultūros infrastruktūra</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="it">Apparecchiature e impianti di produzione agricola (compresi i sistemi di irrigazione, le serre e le stalle).</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lt">Žemės ūkio įrenginiai ir gamybos infrastruktūra (įskaitant drėkinimo sistemas, šiltnamius ir tvartus).</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="it">Impianti agricoli e di acquacoltura</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="el">Γεωργικές εγκαταστάσεις και εγκαταστάσεις υδατοκαλλιέργειας</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="hu">Mezőgazdasági és akvakultúra-ágazati létesítmények</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="hu">Mezőgazdasági eszközök és termelőlétesítmények (beleértve az öntözőrendszereket, üvegházakat és istállókat).</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fr">Installations agricoles et aquacoles</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fr">Équipement et installations de production agricoles (y compris les systèmes d'irrigation, les serres et les étables).</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fi">Maatalouden tuotantolaitteet ja -laitteistot (mukaan luettuina kastelujärjestelmät, kasvihuoneet ja eläinsuojat).</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fi">Maatalous- ja vesiviljelylaitokset</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="et">Põllumajandus- ja vesiviljelusrajatised</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="et">Põllumajandusseadmed ja tootmisrajatised (sealhulgas niisutussüsteemid, kasvuhooned ja laudad).</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="es">Instalaciones agrícolas y de acuicultura</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="en">Farming equipment and production facilities (including irrigation systems, greenhouses and stables).</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="en">Agricultural and aquaculture facilities</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="es">Equipamiento e instalaciones de producción agraria (incluidos sistemas de regadío, invernaderos y establos).</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="bg">Селскостопански и водностопански съоръжения</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="cs">Vybavení a zařízení zemědělské výroby (včetně zavlažovacích systémů, skleníků a stájí).</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="cs">Zemědělská a akvakulturní zařízení</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="bg">Оборудване за селски стопанства и производствени мощности (включително поливни системи, парници и обори).</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="de">Landwirtschaftliche Anlagen und Aquakulturanlagen</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="el">Γεωργικός εξοπλισμός και εγκαταστάσεις παραγωγής (συμπεριλαμβανομένων των συστημάτων άρδευσης, των θερμοκηπίων και των στάβλων).</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="da">Landbrugsudstyr og -produktionsanlæg (herunder vandingssystemer, drivhuse og stalde).</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="da">Landbrugs- og akvakulturanlæg</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="de">Landwirtschaftliche Anlagen und Produktionsstätten (einschließlich Bewässerungssystemen, Gewächshäusern und Ställen).</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ca">Instal·lacions agrícoles i d'aqüicultura</skos:prefLabel><skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ca">Equipaments i instal·lacions de producció agrària (inclosos sistemes de regadiu, hivernacles i estables).</skos:scopeNote></skos:Concept>
+<skos:Concept rdf:about="http://rdfdata.eionet.europa.eu/inspirethemes/themes/23">
+<skos:altLabel>pd</skos:altLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sv">Befolkningsfördelning – demografi</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sl">Geografska porazdelitev ljudi, vključno z značilnostmi populacije in ravnmi aktivnosti, razvrščenih po koordinatah, regiji, upravni enoti ali drugi analitični enoti.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sl">Porazdelitev prebivalstva – demografski podatki</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sv">Geografisk fördelning av människor, inbegripet befolkningskarakteristiska och sysselsättningsgrader, i rutnät, regioner, administrativa enheter eller andra analysenheter.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ro">Repartizarea populaţiei – demografie</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sk">Geografické rozmiestnenie obyvateľstva vrátane charakteristík obyvateľstva a úrovní činností zoskupené podľa siete, regiónu, administratívnej jednotky alebo inej analytickej jednotky.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ro">Repartizare geografică a populaţiei, inclusiv caracteristicile populaţiei şi nivelurile de activitate, regrupate pe grilă, regiune, unitate administrativă sau altă unitate analitică.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sk">Rozmiestnenie obyvateľstva – demografia</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pt">Distribuição geográfica da população, incluindo características demográficas e níveis de actividade, agregada por quadrícula, região, unidade administrativa ou outra unidade analítica.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pt">Distribuição da população — demografia</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="nl">Spreiding van de bevolking — demografie</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pl">Geograficzne rozmieszczenie ludności, łącznie z poziomami aktywności i charakterystyką ludności, pogrupowanej według siatki geograficznej, regionu, jednostki administracyjnej lub innej jednostki analitycznej.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pl">Rozmieszczenie ludności – demografia</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lv">Iedzīvotāju ģeogrāfiskais sadalījums, tostarp iedzīvotāju raksturojumi un darbības līmeņi, grupējot pēc koordinātu tīkla, reģiona, administratīvām vai citām analītiskām vienībām.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lv">Iedzīvotāju sadalījums – demogrāfija</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="mt">Distribuzzjoni ġeografika ta' nies, inkluż karatteristiċi ta' popolazzjoni u livelli ta' attivitajiet, miġbura flimkien skond il-grilja, ir-reġjun, l-unità amministrattiva jew unità analitika oħra.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="mt">Distribuzzjoni tal-popolazzjoni – demografija</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="nl">Geografische spreiding van de bevolking, met inbegrip van bevolkingskenmerken en activiteitsniveaus, verzameld per raster, regio, administratieve eenheid of andere analytische eenheid.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="it">Distribuzione della popolazione — demografia</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lt">Geografinis žmonių pasiskirstymas, įskaitant gyventojų savybes ir aktyvumo lygius, pagal tinklelį, regioną, administracinį ar kitą analitinį vienetą.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lt">Gyventojų pasiskirstymas – demografija</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fr">Répartition de la population — démographie</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="hu">A népesség földrajzi eloszlása – beleértve a népességi jellemzőket és a tevékenységi szinteket is – térképrács, régió, közigazgatási egység vagy más elemzési egység alapján összesítve.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="hu">A népesség eloszlása – demográfia</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="it">Distribuzione geografica della popolazione, comprese le relative caratteristiche ed i livelli di attività, aggregata per griglia, regione, unità amministrativa o altra unità analitica.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="et">Elanikkonna jaotumine – demograafia</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fi">Väestön maantieteellinen jakautuminen, mukaan lukien väestöä koskevat tunnusluvut ja taloudellisen toimeliaisuuden tasot, yhdisteltynä ruudukoittain, alueittain, hallintoyksiköittäin tai muiden analyyttisten yksiköitten mukaisesti jaoteltuna.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fi">Väestöjakauma – demografia</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fr">Répartition géographique des personnes, avec les caractéristiques de population et les niveaux d'activité, regroupées par grille, région, unité administrative ou autre unité analytique.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="es">Distribución de la población — demografía</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="et">Elanike, sealhulgas rahvastiku näitajate ja tegevuste geograafiline jaotumine ruutvõrgu, piirkondade, haldusüksuste või muude analüütiliste üksuste alusel.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="en">Geographical distribution of people, including population characteristics and activity levels, aggregated by grid, region, administrative unit or other analytical unit.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="el">Γεωγραφική κατανομή του πληθυσμού, συμπεριλαμβανομένων των χαρακτηριστικών του πληθυσμού και των επιπέδων δραστηριοτήτων, ανά κάνναβο, περιοχή, διοικητική ενότητα ή άλλη ενότητα ανάλυσης.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="en">Population distribution — demography</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="es">Distribución geográfica de la población referidas a una cuadrícula, región, unidad administrativa u otro tipo de unidad analítica, incluyendo las características de la población y sus niveles de actividad.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="el">Κατανομή πληθυσμού — δημογραφία</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="cs">Rozložení obyvatelstva – demografie</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="da">Den geografiske fordeling af befolkningen, herunder befolkningskarakteristika og aktivitetsniveauer, i kvadratnetceller, forvaltningsenheder eller andre analytiske enheder.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="bg">Географско разпределение на населението, включително характеристики на населението и нива на дейност, представено обобщено по координати, регион, административна единица или друга аналитична единица.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="de">Verteilung der Bevölkerung — Demografie</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="da">Befolkningsfordeling — demografi</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="de">Geografische Verteilung der Bevölkerung, einschließlich Bevölkerungsmerkmalen und Tätigkeitsebenen, zusammengefasst nach Gitter, Region, Verwaltungseinheit oder sonstigen analytischen Einheiten.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="bg">Разпределение на населението — демография</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="cs">Zeměpisné rozložení osob, včetně charakteristik obyvatelstva a druhů činnosti, seskupených podle souřadnicové sítě, regionu, správní jednotky nebo jiné analytické jednotky.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ca">Distribució de la població - demografia</skos:prefLabel><skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ca">Distribució geogràfica de la població referida a una quadrícula, regió, unitat administrativa o un altre tipus d’unitat analítica, incloent-hi característiques de la població i nivells d’activitat.</skos:scopeNote></skos:Concept>
+<skos:Concept rdf:about="http://rdfdata.eionet.europa.eu/inspirethemes/themes/24">
+<skos:altLabel>am</skos:altLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sk">Spravované/obmedzené/regulované zóny a jednotky podávajúce správy</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sl">Območja, ki se upravljajo, urejajo ali uporabljajo za poročanje na mednarodni, evropski, nacionalni, regionalni in lokalni ravni. Vključujejo odlagališča odpadkov, zaprta območja okrog virov pitne vode, cone, občutljive na nitrate, urejene plovne poti po morju ali velikih celinskih vodah, območja za odlaganje odpadkov, cone z omejitvijo hrupa, območja, kjer je potrebno dovoljenje za iskanje rud in rudarjenje, predele povodij, ustrezne poročevalske enote in območja upravljanja obalnih con.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sv">Områden med särskild förvaltning/begränsningar/reglering samt enheter för rapportering</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sl">Območja upravljanja/zaprta območja/regulirana območja in poročevalske enote</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sv">Områden som förvaltas, regleras eller används för rapportering på internationell, europeisk, nationell, regional och lokal nivå. Innefattar avfallsdeponier, skyddsområden runt dricksvattentäkter, områden som är känsliga för nitratbelastning, reglerade farleder till havs och i större inlandsvatten, områden för dumpning av avfall, områden med bullerrestriktioner, områden med tillstånd för prospektering och gruvbrytning, avrinningsdistrikt, relevanta enheter för rapportering och områden med kustförvaltning.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ro">Zone de administrare/restricţie/reglementare şi unităţi de raportare</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sk">Oblasti, ktoré sú spravované, regulované alebo využívané na podávanie správ na medzinárodnej, európskej, celoštátnej, regionálnej a miestnej úrovni. Patria sem skládky, ochranné pásma v okolí zdrojov pitnej vody, oblasti citlivé na dusík, regulované plavebné cesty na mori alebo na rozsiahlych vnútrozemských vodných plochách a tokoch, oblasti určené na skladovanie odpadu, oblasti s obmedzením hluku, oblasti, v ktorých je povolený prieskum a ťažba, oblasti povodí, príslušné jednotky na podávanie správ a oblasti správy pobrežných zón.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ro">Zone administrate, reglementate sau folosite pentru raportarea la nivel internaţional, european, naţional, regional şi local. Sunt incluse gropile de gunoi, zonele restricţionate din apropierea surselor de apă potabilă, zonele vulnerabile la nitraţi, şenalele navigabile reglementate de pe mare sau din apele interne importante, zonele destinate descărcării deşeurilor, zonele în care au fost introduse limite de zgomot, zonele care fac obiectul unui permis de prospectare şi de exploatare minieră, districtele hidrografice, unităţile de raportare corespunzătoare şi zonele de administrare a litoralului.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="nl">Gebiedsbeheer, gebieden waar beperkingen gelden, gereguleerde gebieden en rapportage-eenheden</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pl">Obszary zarządzane, regulowane lub wykorzystywane do celów sprawozdawczych na poziomie międzynarodowym, europejskim, krajowym, regionalnym i lokalnym. Obejmują również wysypiska śmieci, obszary o ograniczonym dostępie wokół ujęć wody pitnej, strefy zagrożone przez azotany, uregulowane drogi wodne na morzach lub wodach śródlądowych o dużej powierzchni, obszary przeznaczone pod wysypiska śmieci, strefy ograniczeń hałasu, obszary wymagające zezwolenia na poszukiwania i wydobycie, obszary dorzeczy, odpowiednie jednostki sprawozdawcze i obszary zarządzania strefą brzegową.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pt">Zonas de gestão/restrição/regulamentação e unidades de referência</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pl">Gospodarowanie obszarem/strefy ograniczone/regulacyjne oraz jednostki sprawozdawcze</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pt">Zonas geridas, regulamentadas ou utilizadas para a comunicação de dados a nível internacional, europeu, nacional, regional e local. Compreende aterros, zonas de acesso restrito em torno de nascentes de água potável, zonas sensíveis aos nitratos, vias navegáveis regulamentadas no mar ou em águas interiores de grandes dimensões, zonas de descarga de resíduos, zonas de ruído condicionado, zonas autorizadas para efeitos de prospecção e extracção mineira, bacias hidrográficas, unidades de referência pertinentes e zonas abrangidas pela gestão das zonas costeiras.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lv">Apgabala pārvaldības/ierobežojumu/reglamentētas zonas un ziņošanas vienības</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="mt">Żoni amministrati, regolati jew użati għar-rappurtar fuq il-livell internazzjonali, Ewropew, nazzjonali, reġjonali u lokali. Huma inklużi siti użati għar-radam, żoni ristretti madwar għejjun ta' l-ilma għax-xorb, żoni vulnerabbli għannitrati, kanali regolati fil-baħar jew f'ilmijiet interni kbar, żoni għar-radam ta' l-iskart, żoni għar-restrizzjoni ta' listorbju, żoni b'permess għat-tħaffir u għat-tiftix ta' minerali, distretti ta' baċiri tax-xmajjar, unitajiet ta' rapportar rilevanti u żoni ta' amministrazzjoni ta' l-inħawi tal-kosta.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="it">Zone sottoposte a gestione/limitazioni/regolamentazione e unità con obbligo di comunicare dati</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lt">Tvarkomos/ribojamos/reglamentuojamos zonos ir vienetai, už kuriuos atsiskaitoma tarptautiniu, Europos, nacionaliniu, regioniniu arba vietos lygmeniu tvarkomos ir reglamentuojamos zonos arba zonos, apie kurias rengiamos ataskaitos. Tai apima sąvartynus, ribotos veiklos zonas aplink geriamo vandens šaltinius, nitratų pažeidžiamas zonas, reglamentuojamus jūros arba didelių vidaus vandenų farvaterius, atliekų aikšteles, zonas, kuriose ribojamas triukšmas, vietas, kuriose reikalingas leidimas žvalgybai ar kasinėjimui, upių baseinų sritis, atitinkamas vietoves, apie kurias rengiamos ataskaitos, ir pakrančių zonos tvarkymo vietoves.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="mt">Amministrazzjoni ta' żoni/restrizzjoni/żoni regolati u unitajiet ta' rapportar</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="nl">Gebieden die worden beheerd, gereguleerd of gebruikt voor rapportage op internationaal, Europees, nationaal, regionaal en lokaal niveau, met inbegrip van stortplaatsen, gebieden rond drinkwaterbronnen waar beperkingen gelden, nitraatgevoelige gebieden, gereguleerde vaarwegen op zee of op grote binnenwateren, gebieden voor het storten van afval, gebieden waar geluidsbeperkingen gelden, gebieden met toestemming voor exploratie en mijnbouw, stoomgebieden, relevante rapportage-eenheden en gebieden voor kustbeheer.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lt">Tvarkomos teritorijos, ribojamos ir reglamentuojamos zonos bei vienetai, už kuriuos atsiskaitoma</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lv">Apgabali, ko pārvalda, reglamentē vai lieto, lai sniegtu ziņojumus starptautiskā, Eiropas, valsts, reģiona un pašvaldības līmenī. Ietver izgāztuves, liegumus ap dzeramā ūdens avotiem, pret nitrātiem jutīgas zonas, reglamentētus kuģu ceļus jūrā vai lielos iekšzemes ūdeņos, atkritumu izgāšanas apgabalus, zonas ar trokšņu ierobežojumiem, zonas, kurās atļauta ģeoloģisko atradņu izpēte un izrakteņu ieguve, upju baseinu apgabalus, attiecīgas ziņošanas vienības un krasta zonas apsaimniekošanas apgabalus.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="hu">Területgazdálkodási/-korlátozási/-szabályozási övezetek és adatszolgáltató egységek</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="it">Aree gestite, regolamentate o utilizzate per la comunicazione di dati a livello internazionale, europeo, nazionale, regionale e locale. Sono comprese le discariche, le zone vietate attorno alle sorgenti di acqua potabile, le zone sensibili ai nitrati, le vie navigabili regolamentate in mare o in acque interne di grandi dimensioni, le zone per lo smaltimento dei rifiuti, le zone di limitazione del rumore, le zone in cui sono autorizzate attività di prospezione ed estrazione, i distretti idrografici, le pertinenti unità con obbligo di comunicare dati e le aree in cui vigono piani di gestione delle zone costiere.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fr">Zones de gestion, de restriction ou de réglementation et unités de déclaration</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="hu">A nemzetközi, európai, nemzeti, regionális és helyi szintű adatszolgáltatás céljából irányított, szabályozott vagy használt területek. Ide tartoznak a lerakóhelyek, az ivóvízforrásokat övező korlátozás alá tartozó területek, a nitrátérzékeny területek, a tengeri hajóutak vagy nagy kiterjedésű belvizek szabályozott hajózóútjai, a hulladéklerakásra kijelölt területek, a zajvédelmi zónák, az előkészítő és bányászatiengedély-köteles területek, a folyómedri kerületek, a megfelelő adatszolgáltató egységek és a tengerparti igazgatási térségek.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fr">Zones gérées, réglementées ou utilisées pour les rapports aux niveaux international, européen, national, régional et local. Sont inclus les décharges, les zones restreintes aux alentours des sources d'eau potable, les zones vulnérables aux nitrates, les chenaux réglementés en mer ou les eaux intérieures importantes, les zones destinées à la décharge de déchets, les zones soumises à limitation du bruit, les zones faisant l'objet de permis d'exploration et d'extraction minière, les districts hydrographiques, les unités correspondantes utilisées pour les rapports et les zones de gestion du littoral.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fi">Aluesuunnittelun, rajoitusten ja sääntelyn piiriin kuuluvat alueet ja raportointiyksiköt</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="et">Üldplaneering/piirangu-/reguleeritud tsoonid ja aruandlusüksused</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fi">Alueet, joita hoidetaan, säännellään tai käytetään kansainvälisen, Euroopan, kansallisen, alueellisen tai paikallisen tason raportointiin. Sisältää kaatopaikat, juomavedenottopaikkoja ympäröivät suoja-alueet, nitraatin aiheuttamalle pilaantumiselle alttiit alueet, säännellyt laivaväylät merellä tai suurilla sisävesillä, jätteiden upottamiskiellon soveltamisalaan kuuluvat alueet, melurajoitusalueet, luonnonvarojen tai malmin etsintäalueet, ja kaivostoiminnan lupa-alueet, vesipiirit, asiaankuuluvat raportointiyksiköt ja rannikkoalueiden hallinta-alueet.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="et">Alad, mille haldamisest, reguleerimisest või kasutamisest antakse aru rahvusvahelisel, Euroopa, riiklikul, piirkondlikul ja kohalikul tasandil. Hõlmab kaadamiskohti, joogiveeallikate ümber asuvaid piirangutsoone, nitraaditundlikke tsoone, reguleeritavaid laevateid merel või suurtel siseveekogudel, jäätmete kaadamise alasid, mürapiirangutsoone, geoloogiliste uuringute ja kaevanduste alasid, valgalasid, asjakohaseid aruandlusüksusi ning rannikukaitsealasid.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="es">Zonas sujetas a ordenación, a restricciones o reglamentaciones y unidades de notificación</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="es">Zonas gestionadas, reglamentadas o utilizadas para la elaboración de informes para organismos internacionales, europeos, nacionales, regionales y locales. Se incluirán vertederos, zonas restringidas alrededor de lugares de extracción de agua potable, zonas sensibles a los nitratos, rutas marítimas o por grandes vías navegables reglamentadas, zonas de vertido, zonas de restricción de ruidos, zonas de prospección o extracción minera, demarcaciones hidrográficas, las correspondientes unidades de notificación y planes de ordenación de zonas costeras.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="en">Area management/restriction/regulation zones and reporting units</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="de">Bewirtschaftungsgebiete/Schutzgebiete/geregelte Gebiete und Berichterstattungseinheiten</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="el">Εκτάσεις υπό διαχείριση, υπό ρύθμιση ή χρησιμοποιούμενες για αναφορά σε διεθνές, ευρωπαϊκό, εθνικό, περιφερειακό και τοπικό επίπεδο. Περιλαμβάνονται χώροι απόρριψης, προστατευόμενες περιοχές γύρω από πηγές πόσιμου νερού, ζώνες ευάλωτες στη νιτρορρύπανση, κανονιστικά ρυθμιζόμενοι δίαυλοι θαλάσσιας ή εσωτερικής ναυσιπλοΐας, περιοχές για τη βύθιση αποβλήτων, ζώνες προστασίας από τον θόρυβο, περιοχές όπου επιτρέπεται η μεταλλευτική έρευνα και εξόρυξη, διοικητικές περιοχές ποτάμιων λεκανών, σχετικές μονάδες αναφοράς και περιοχές διαχείρισης παράκτιας ζώνης.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="el">Ζώνες διαχείρισης/περιορισμού/ρύθμισης εκτάσεων και μονάδες αναφοράς</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="en">Areas managed, regulated or used for reporting at international, European, national, regional and local levels. Includes dumping sites, restricted areas around drinking water sources, nitrate-vulnerable zones, regulated fairways at sea or large inland waters, areas for the dumping of waste, noise restriction zones, prospecting and mining permit areas, river basin districts, relevant reporting units and coastal zone management areas.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="da">Områder, der forvaltes, reguleres eller benyttes som indberetningsenheder på internationalt, europæisk, nationalt, regionalt og lokalt plan. Omfatter affaldsdepoter, områder med brugsbegrænsninger af hensyn til drikkevandsindvinding, nitratfølsomme områder, regulerede sejlruter til søs og på større indlandsvandområder, områder for dumpning af affald, områder med støjbegrænsning, områder, hvor der er tilladelse til efterforskning og minedrift, vandområdedistrikter, relevante indberetningsenheder samt områder for kystzoneforvaltning.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="de">Auf internationaler, europäischer, nationaler, regionaler und lokaler Ebene bewirtschaftete, geregelte oder zu Zwecken der Berichterstattung herangezogene Gebiete. Dazu zählen Deponien, Trinkwasserschutzgebiete, nitratempfindliche Gebiete, geregelte Fahrwasser auf See oder auf großen Binnengewässern, Gebiete für die Abfallverklappung, Lärmschutzgebiete, für Exploration und Bergbau ausgewiesene Gebiete, Flussgebietseinheiten, entsprechende Berichterstattungseinheiten und Gebiete des Küstenzonenmanagements.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="da">Forvaltede og regulerede områder samt områder med brugsbegrænsning og indberetningsenheder</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="cs">Správní oblasti/chráněná pásma/regulovaná území a jednotky podávající hlášení</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="cs">Oblasti spravované, regulované nebo používané pro hlášení na mezinárodní, evropské, celostátní, regionální nebo místní úrovni. Zahrnuje skládky, pásma hygienické ochrany vodních zdrojů, oblasti zranitelné dusičnany, regulované plavební dráhy na moři nebo rozsáhlých vnitrozemských vodních plochách, oblasti pro ukládání odpadů, pásma s omezením hladiny hluku, povolená průzkumná a těžební území, oblasti povodí, příslušné jednotky pro podávání hlášení a pásma pobřežní správy.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="bg">Управление на територията/ограничени/регулирани зони и отчетни единици</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="bg">Зони, управлявани, регулирани или използвани за докладване на международно, европейско, национално, регионално и местно равнище. Включва складови обекти, ограничени райони около източници на питейна вода, уязвими от замърсяване с нитрати зони, контролирани морски проходи или големи вътрешни водни пътища, райони за складиране на отпадъци, зони с наложени ограничения върху шума, проучвателни и минни райони, райони на речни басейни, съответни отчетни единици и зони за управление на брегови райони. 25.4.2007 г. BG Официален вестник на Европейския съюз L 108/13</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ca">Zones subjectes a ordenació, a restriccions o reglamentacions i unitats de notificació.</skos:prefLabel><skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ca">Zones gestionades, reglamentades o utilitzades per a l’elaboració d’informes per a organismes internacionals, europeus, nacionals, regionals i locals. S’inclouran abocadors, zones restringides al voltant de llocs d’extracció d’aigua potable, zones sensibles als nitrats, rutes marítimes o per grans vies navegables reglamentades, zones d’abocament, zones de restricció de soroll, zones de prospecció o extracció minera, demarcacions hidrogràfiques, les corresponents unitats de notificació i plans d’ordenació de zones costaneres.</skos:scopeNote></skos:Concept>
+<skos:Concept rdf:about="http://rdfdata.eionet.europa.eu/inspirethemes/themes/25">
+<skos:altLabel>nz</skos:altLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sl">Območja nevarnosti naravnih nesreč</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sv">Sårbara områden klassificerade efter naturliga risker (alla atmosfäriska, hydrologiska, seismiska och vulkaniska fenomen samt bränder som på grund av läge, omfattning och frekvens har potential att allvarligt påverka samhället), exempelvis översvämningar, jordskred och sättningar, laviner, skogsbränder, jordbävningar, vulkanutbrott.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sv">Naturliga riskområden</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sl">Ranljiva območja, opredeljena glede na naravna tveganja (vsi atmosferski, hidrološki, seizmični, vulkanski pojavi in požari, ki zaradi svoje lokacije, resnosti in pogostosti lahko resno ogrozijo družbo), npr. poplave, zemeljski plazovi in pogrezanje tal, snežni plazovi, gozdni požari, potresi, vulkanski izbruhi.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sk">Zóny prírodného rizika</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ro">Zone de risc natural</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sk">Citlivé oblasti charakterizované podľa prírodných rizík (všetky atmosférické, hydrologické, seizmické, vulkanické javy a ničivé požiare, ktoré môžu mať s ohľadom na ich polohu, závažnosť a početnosť vážny vplyv na spoločnosť), napr. záplavy, zosuvy pôdy a pokles terénu, lavíny, lesné požiare, zemetrasenia, sopečné výbuchy.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ro">Zone vulnerabile caracterizate în funcţie de riscurile naturale (orice fenomen atmosferic, hidrologic, seismic, vulcanic, precum şi incendiile, care, din cauza locaţiei, a gravităţii şi a frecvenţei, pot afecta grav societatea), precum inundaţiile, alunecările şi surpările de teren, avalanşele, incendiile forestiere, cutremurele de pământ şi erupţiile vulcanice.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pt">Zonas de risco natural</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pl">Strefy zagrożenia naturalnego</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pt">Zonas sensíveis, caracterizadas de acordo com os riscos naturais (todos os fenómenos atmosféricos, hidrológicos, sísmicos, vulcânicos e os incêndios que, pela sua localização, gravidade e frequência, possam afectar gravemente a sociedade), como sejam inundações, deslizamentos de terras e subsidências, avalanches, incêndios florestais, sismos, erupções vulcânicas.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="mt">Żoni ta' riskju naturali</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="nl">Kwetsbare gebieden die worden gekenmerkt door natuurrisico's (alle atmosferische, hydrologische, seismische, vulkanische verschijnselen en ongecontroleerde branden die door hun locatie, hevigheid en frequentie, mogelijk ernstige maatschappelijke gevolgen kunnen hebben), zoals overstromingen, aardverschuivingen en -verzakkingen, lawines, bosbranden, aardbevingen en vulkaanuitbarstingen.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="nl">Gebieden met natuurrisico'es</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="mt">Żoni vulnerabbli kkaratterizzati skond perikli naturali (kull fenomenu atmosferiku, idroloġiku, sismiku, vulkaniku u tan-nirien mifruxa li, minħabba fejn jinsabu, il-qawwa, u l-frekwenza tagħhom, għandhom il-potenzjal li jaffettwaw b'mod gravi s-soċjetà), eż. għargħar, żerżiq ta' l-art u ċediment ta' l-art, valangi, nirien fil-foresti, terremoti, eruzzjonijiet vulkaniċi.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pl">Obszary zagrożone charakteryzowane na podstawie zagrożeń naturalnych (wszystkie zjawiska atmosferyczne, hydrologiczne, sejsmiczne, wulkaniczne oraz pożary, które, ze względu na swoją lokalizację, dotkliwość i częstotliwość mogą wywierać poważny wpływ na społeczeństwo), np. powodzie, osunięcia ziemi i osiadanie gruntu, lawiny, pożary lasów, trzęsienia ziemi, wybuchy wulkanów.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lv">Dabas apdraudējuma zonas</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lt">Gamtinių pavojų zonos</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lv">Apgabali, kam raksturīgi dabas apdraudējumi (visas atmosfēriskās, hidroloģiskās, seismiskās, vulkāniskās parādības un dabiskie ugunsgrēki, kas sakarā ar atrašanās vietu, apjomu vai biežumu var nopietni skart sabiedrību), piemēram, plūdi, zemes nogruvumi un iegrimšana, lavīnas, mežu ugunsgrēki, zemestrīces un vulkānu izvirdumi.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="hu">Természeti kockázati zónák</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="it">Zone sensibili caratterizzate in base ai rischi naturali (cioè tutti i fenomeni atmosferici, idrologici, sismici, vulcanici e gli incendi che, per l’ubicazione, la gravità e la frequenza, possono avere un grave impatto sulla società), ad esempio inondazioni, slavine e subsidenze, valanghe, incendi di boschi/foreste, terremoti, eruzioni vulcaniche.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fr">Zones sensibles caractérisées en fonction des risques naturels (tous les phénomènes atmosphériques, hydrologiques, sismiques, volcaniques, ainsi que les feux de friche qui peuvent, en raison de leur situation, de leur gravité et de leur fréquence, nuire gravement à la société), tels qu'inondations, glissements et affaissements de terrain, avalanches, incendies de forêts, tremblements de terre et éruptions volcaniques.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="it">Zone a rischio naturale</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lt">Pažeidžiamos vietovės, suskirstytos pagal gamtinio pavojaus pobūdį (visi atmosferiniai, hidrologiniai, seisminiai, vulkaniniai ir savaiminių gaisrų reiškiniai, kurie dėl savo vietos, stiprumo ir dažnumo kelia didelę grėsmę visuomenei), pvz., potvyniai, nuošliaužos ir žemės nusėdimas, griūtys, miškų gaisrai, žemės drebėjimai, ugnikalnių išsiveržimai.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fr">Zones à risque naturel</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="hu">Természeti veszélyek, így pl. árvizek, földcsuszamlások, felszínsüllyedések, lavinák, erdőtüzek, földrengések, vulkánkitörések (minden légköri, hidrológiai, szeizmikus, vulkanikus és futótűzjelenség, amely – helye, súlyossága és előfordulási gyakorisága alapján – magában hordozza a komoly társadalmi károk okozásának lehetőségét) alapján jellemzett veszélyeztetett területek.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fi">Luonnonriskialueet</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="et">Looduslikud ohutsoonid</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fi">Luonnonkatastrofien (kaikki ilmakehästä johtuvat, hydrologiset, seismiset, tuliperäiset ja maastopaloilmiöt, joilla sijaintinsa, vakavuutensa ja yleisyytensä vuoksi voi mahdollisesti olla vakavia vaikutuksia yhteiskuntaan), kuten tulvien, maanvyöryjen ja vajoamisen, lumivyöryjen, metsäpalojen, maanjäristysten ja tulivuortenpurkausten, mukaan luokitellut riskialueet.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="es">Zonas de riesgos naturales</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="et">Tundlikud alad, mida iseloomustavad looduslikud riskitegurid (kõik atmosfäärilised, hüdroloogilised, seismilised, vulkaanilised ja looduspõlengute nähtused, mis oma asukoha, intensiivsuse ja sageduse tõttu võivad ühiskonnale tõsist kahju tuua), nt üleujutused, maalihked ja pinnase vajumine, laviinid, metsatulekahjud, maavärinad, vulkaanipursked.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="en">Natural risk zones</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="es">Zonas vulnerables caracterizadas por la existencia de riesgos de carácter natural (cualquier fenómeno atmosférico, hidrológico, sísmico, volcánico o incendio natural que, debido a su localización, gravedad o frecuencia, pueda afectar negativamente a la población), p. ej., inundaciones, corrimientos de tierra y hundimientos, aludes, incendios forestales, terremotos, erupciones volcánicas.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="el">Ζώνες φυσικών κινδύνων</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="en">Vulnerable areas characterised according to natural hazards (all atmospheric, hydrologic, seismic, volcanic and wildfire phenomena that, because of their location, severity, and frequency, have the potential to seriously affect society), e.g. floods, landslides and subsidence, avalanches, forest fires, earthquakes, volcanic eruptions.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="bg">Природни рискови зони</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="cs">Zranitelné oblasti označené podle přírodního nebezpečí (všechny povětrnostní, hydrologické, seismické a sopečné úkazy, jakož i ničivé požáry, které mohou mít vzhledem ke svému výskytu, závažnosti a četnosti vážný dopad na společnost), např. povodně, sesuvy a sesedání půdy, laviny, lesní požáry, zemětřesení, sopečné výbuchy.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="da">Områder med naturlige risici</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="de">Gefährdete Gebiete, eingestuft nach naturbedingten Risiken (sämtliche atmosphärischen, hydrologischen, seismischen, vulkanischen Phänomene sowie Naturfeuer, die aufgrund ihres örtlichen Auftretens sowie ihrer Schwere und Häufigkeit signifikante Auswirkungen auf die Gesellschaft haben können), z. B. Überschwemmungen, Erdrutsche und Bodensenkungen, Lawinen, Waldbrände, Erdbeben oder Vulkanausbrüche.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="de">Gebiete mit naturbedingten Risiken</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="el">Χαρακτηρισμός ευάλωτων περιοχών ανάλογα με τους φυσικούς κινδύνους (όλα τα ατμοσφαιρικά, υδρολογικά, σεισμικά, ηφαιστειακά φαινόμενα και τα φαινόμενα καταστροφικών πυρκαγιών που, λόγω της θέσης, της σφοδρότητας και της συχνότητάς τους, είναι δυνατό να έχουν σοβαρές επιπτώσεις στην κοινωνία), π.χ. πλημμύρες, κατολισθήσεις και καθιζήσεις, χιονοστιβάδες, δασικές πυρκαγιές, σεισμοί, εκρήξεις ηφαιστείων.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="cs">Oblasti ohrožené přírodními riziky</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="da">Sårbare områder, karakteriseret efter naturlige risici (alle atmosfæriske, hydrologiske, seismiske og vulkanske fænomener samt brande, som på grund af stedet, hvor de forekommer, deres omfang og hyppighed kan få alvorlige følger for samfundet), f.eks. oversvømmelser, jordskred og sammensynkning, laviner, skovbrande, jordskælv og vulkanudbrud.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="bg">Уязвими райони, определени в зависимост от вида природен риск (всички атмосферни, хидрологични, сеизмични, вулканични и огнени явления, които поради местонахождението, силата и честотата на проявление могат да засегнат сериозно обществото), например наводнения, свличане и пропадане на земни маси, лавини, горски пожари, земетресения, изригвания на вулкани.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ca">Zones de riscos naturals</skos:prefLabel><skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ca">Zones vulnerables caracteritzades per l’existència de riscos de caràcter natural (qualsevol fenomen atmosfèric, hidrològic, sísmic, volcànic o incendi natural que, atesa la seva localització, gravetat o freqüència, pugui afectar negativament la població), per exemple, inundacions, esllavissades de terres i col·lapses, allaus, incendis forestals, terratrèmols o erupcions volcàniques.</skos:scopeNote></skos:Concept>
+<skos:Concept rdf:about="http://rdfdata.eionet.europa.eu/inspirethemes/themes/26">
+<skos:altLabel>ac</skos:altLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sl">Ozračje</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sv">Fysikaliska förhållanden i atmosfären. Inbegriper rumsliga data baserade på mätningar, modeller eller en kombination av dessa, samt mätpunkternas läge.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sv">Atmosfäriska förhållanden</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ro">Condiţii atmosferice</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sk">Fyzikálne podmienky v atmosfére. Patria sem priestorové údaje založené na meraniach, modeloch alebo na kombinácii meraní a modelov vrátane miest meraní.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sk">Atmosférické podmienky</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sl">Fizikalne razmere v atmosferi. Vključujejo prostorske podatke, ki temeljijo na merjenjih, vzorcih ali na kombinaciji leteh, in merilne lokacije.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pl">Warunki fizyczne w atmosferze. Obejmują dane przestrzenne oparte na pomiarach, modelach lub na kombinacji tych dwóch elementów, a także lokalizacje pomiarów.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pl">Warunki atmosferyczne</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pt">Condições físicas da atmosfera. Inclui dados geográficos baseados em medições, em modelos ou numa combinação de ambos, bem como os sítios de medição.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pt">Condições atmosféricas</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ro">Condiţiile fizice din atmosferă. Sunt incluse datele spaţiale bazate pe măsurători, pe modele sau pe o combinaţie între acestea, precum şi locaţiile de efectuare a măsurătorilor.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="nl">Atmosferische omstandigheden</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="nl">Fysische omstandigheden in de atmosfeer, met inbegrip van ruimtelijke gegevens die gebaseerd zijn op metingen, modellen of een combinatie daarvan, en met inbegrip van meetlocaties.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="mt">Kondizzjonijiet atmosferiċi</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="mt">Kondizzjonijiet fiżiċi fl-atmosfera. Hija inkluża data ġeografika bbażata fuq kejl, fuq mudelli jew fuq il-kombinazzjoni tagħhom kif ukoll is-siti tal-kejl.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lv">Atmosfēras apstākļi</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="it">Condizioni atmosferiche</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lt">Fizinės atmosferos sąlygos. Tai apima matavimais, modeliais arba abiem būdais pagrįstus erdvinius duomenis, nurodant matavimo vietas.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lt">Atmosferos sÄ…lygos</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lv">Fizikālie atmosfēras apstākļi. Tie ietver telpiskos datus, kuru pamatā ir mērījumi vai modeļi, vai to kombinācija, kā arī norādes par to veikšanas vietu.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fr">Conditions physiques dans l'atmosphère. Comprend les données géographiques fondées sur des mesures, sur des modèles ou sur une combinaison des deux, ainsi que les lieux de mesure.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fr">Conditions atmosphériques</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="hu">A légkör fizikai jellemzői. Ide tartoznak a méréseken, modelleken vagy ezek kombinációján alapuló téradatok, továbbá a mérési helyek.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="hu">Légköri viszonyok</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="it">Condizioni fisiche dell’atmosfera. Questa voce comprende i dati territoriali basati su misurazioni, su modelli o su una combinazione dei due e comprende i punti di misurazione.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="et">Füüsikalised tingimused atmosfääris. Hõlmab mõõtmiste ja modelleerimise tulemusel või nende kahe meetodi kombineerimisel saadud ruumiandmeid ning mõõtmiskohti.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="et">Atmosfääritingimused</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fi">Ilmakehän tila</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fi">Ilmakehän fysikaaliset olosuhteet. Sisältää mittauksiin, malleihin tai näiden yhdistelmiin perustuvia paikkatietoja sekä tiedot mittauspaikoista.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="es">Condiciones físicas de la atmósfera. Se incluirán datos espaciales basados en mediciones, modelos o en una combinación de ambos, así como los lugares de medición.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="es">Condiciones atmosféricas</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="en">Physical conditions in the atmosphere. Includes spatial data based on measurements, on models or on a combination thereof and includes measurement locations.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="en">Atmospheric conditions</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="de">Atmosphärische Bedingungen</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="el">Φυσικές ιδιότητες της ατμόσφαιρας. Περιλαμβάνονται χωρικά δεδομένα βασιζόμενα σε μετρήσεις, σε μοντέλα ή σε συνδυασμό τους, καθώς και οι τοποθεσίες μετρήσεων.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="el">Ατμοσφαιρικές συνθήκες</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="cs">Stav ovzduší</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="da">Fysiske forhold i atmosfæren. Omfatter geodata, der bygger på målinger, modeller eller begge dele; omfatter også målepunkternes placering.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="da">Atmosfæriske forhold</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="de">Physikalische Bedingungen in der Atmosphäre. Dazu zählen Geodaten auf der Grundlage von Messungen, Modellen oder einer Kombination aus beiden sowie Angabe der Messstandorte.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="bg">Атмосферни условия</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="cs">Fyzikální stav ovzduší. Zahrnuje prostorová data založená na měřeních, modelech nebo jejich kombinaci, jakož i místa měření.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="bg">Физически атмосферни условия. Включва пространствени данни, основаващи се на измервания, на модели или на комбинация от двете, както и местата, където са направени измерванията.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ca">Condicions atmosfèriques</skos:prefLabel><skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ca">Condicions físiques de l’atmosfera. S’inclouran dades espacials basades en mesures, models o en una combinació d’ambdós, així com els llocs de mesura.</skos:scopeNote></skos:Concept>
+<skos:Concept rdf:about="http://rdfdata.eionet.europa.eu/inspirethemes/themes/27">
+<skos:altLabel>mf</skos:altLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sl">Vremenske razmere in njihova merjenja; padavine, temperatura, izhlapevanje, hitrost in smer vetra.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sl">Meteorološke značilnosti</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sv">Väderförhållanden och mätningar av dessa; nederbörd, temperatur, evapotranspiration, vindhastighet och vindriktning.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sv">Geografiska meteorologiska förhållanden</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sk">Meteorologické geografické prvky</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sk">Poveternostné podmienky a ich merania; zrážky, teplota, evapotranspirácia, rýchlosť a smer vetra.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pt">Condições atmosféricas e sua medição; precipitação, temperatura, evapotranspiração, velocidade e direcção do vento.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pt">Características geometeorológicas</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ro">Condiţiile meteorologice şi măsurătorile acestora: precipitaţii, temperatură, evapotranspiraţie, viteza şi direcţia vântului.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ro">Caracteristici geografice meteorologice</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pl">Warunki atmosferyczne i ich pomiary; opad atmosferyczny, temperatura, ewapotranspiracja, prędkość i kierunek wiatru.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pl">Warunki meteorologiczno-geograficzne</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="nl">Weersomstandigheden en de meting daarvan; neerslag, temperatuur, verdamping, windsnelheid en windrichting.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="nl">Meteorologische geografische kenmerken</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="mt">Karatteristiċi ġeografiċi meteoroloġiċi</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lv">Laika apstākļi un to mērījumi; nokrišņi, temperatūra, iztvaikošana, vēja ātrums un virziens.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lv">Meteoroloģiski ģeogrāfiskie raksturlielumi</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="mt">Il-kondizzjonijiet tat-temp u l-kejl tagħhom; il-preċipitazzjoni, it-temperatura, l-evapotraspirazzjoni, il-veloċità u ddirezzjoni tar-riħ.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lt">Oro sąlygos ir jų matavimai; krituliai, temperatūra, evapotranspiracija, vėjo greitis ir kryptis.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lt">MeteorologinÄ—s geografinÄ—s sÄ…lygos</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="it">Elementi geografici meteorologici</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="hu">Meteorológiai földrajzi jellemzők</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="it">Condizioni meteorologiche e relative misurazioni; precipitazioni, temperatura, evapotraspirazione, velocità e direzione dei venti.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fi">Sääolot ja niihin liittyvät mittaukset; sademäärä, lämpötila, kokonaishaihdunta, tuulen nopeus ja suunta.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fi">Ilmaston maantieteelliset ominaispiirteet</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="hu">Időjárási viszonyok és mérésük; csapadék, hőmérséklet, a felszín és a növényzet párolgása, a szél sebessége és iránya.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fr">Conditions météorologiques et leur mesure: précipitations, température, évapotranspiration, vitesse et direction du vent.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fr">Caractéristiques géographiques météorologiques</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="et">Meteoroloogilis-geograafilised tunnusjooned</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="et">Ilmastikutingimused ja nende mõõtmine; sademed, temperatuur, aurumine, tuule kiirus ja suund.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="el">Μετεωρολογικά γεωγραφικά χαρακτηριστικά</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="en">Weather conditions and their measurements; precipitation, temperature, evapotranspiration, wind speed and direction.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="en">Meteorological geographical features</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="es">Condiciones meteorológicas y sus mediciones; precipitaciones, temperaturas, evapotranspiración, velocidad y dirección del viento.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="es">Aspectos geográficos de carácter meteorológico</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="de">Witterungsbedingungen und deren Messung; Niederschlag, Temperatur, Gesamtverdunstung (Evapotranspiration), Windgeschwindigkeit und Windrichtung.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="de">Meteorologisch-geografische Kennwerte</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="el">Καιρικές συνθήκες και οι μετρήσεις τους· ατμοσφαιρικές κατακρημνίσεις, θερμοκρασία, εξατμισοδιαπνοή, ταχύτητα και διεύθυνση ανέμου.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="da">Meteorologisk-geografiske forhold</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="bg">Атмосферни условия и измерването им; валежи, температура, евапотранспирация, скорост и посока на вятъра.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="bg">Метеорологични географски характеристики</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="cs">Povětrnostní podmínky a jejich měření; srážky, teplota, výpar z půdy a rostlinného pokryvu, rychlost a směr větru.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="cs">Zeměpisné meteorologické prvky</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="da">Vejrforhold og målinger heraf; nedbør, temperatur, evapotranspiration, vindhastighed og -retning.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ca">Aspectes geogràfics de caràcter meteorològic</skos:prefLabel><skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ca">Condicions meteorològiques i les seves mesures: precipitacions, temperatures, evapotranspiració, velocitat i direcció del vent.</skos:scopeNote></skos:Concept>
+<skos:Concept rdf:about="http://rdfdata.eionet.europa.eu/inspirethemes/themes/28">
+<skos:altLabel>of</skos:altLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sv">Geografiska oceanografiska förhållanden</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sv">Fysikaliska förhållanden i oceanerna (strömmar, salthalt, våghöjd osv.).</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sl">Oceanogeografske značilnosti</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pt">Características oceanográficas</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ro">Condiţii fizice ale oceanelor (curenţi, salinitate, înălţimea valurilor etc.).</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ro">Caracteristici geografice oceanografice</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sk">Fyzikálne vlastnosti oceánov (prúdy, slanosť, výška vĺn atď.).</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sk">Oceánografické geografické prvky</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sl">Fizikalne razmere oceanov (tokovi, slanost, višina valov itd.).</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pl">Warunki oceanograficzno-geograficzne</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pt">Condições físicas dos oceanos (correntes, salinidade, altura das ondas, etc.).</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="mt">Karatteristiċi ġeografiċi oċeanografiċi</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="nl">Fysische kenmerken van oceanen (stroming, zoutgehalte, golfhoogte, enz.).</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="nl">Oceanografische geografische kenmerken</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pl">Warunki fizyczne oceanów (prądy, zasolenie, wysokość fal itd.).</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lv">Okeānu fizikālie apstākļi (straumes, sāļums, viļņu augstums, utt.).</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lv">Okeanogrāfiski ģeogrāfiskie raksturlielumi</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="mt">Kondizzjonijiet fiżiċi ta' l-oċeani (kurrenti, imluħa, għoli tal-mewġ, eċċ.).</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="it">Elementi geografici oceanografici</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lt">Fizinės vandenynų charakteristikos (srovės, druskingumas, bangų aukštis ir t. t.).</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lt">OkeanografinÄ—s geografinÄ—s sÄ…lygos</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="it">Condizioni fisiche degli oceani (correnti, salinità, altezza delle onde, ecc.).</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="hu">Az óceánok fizikai jellemzői (áramlatok, sótartalom, hullámmagasság stb.).</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="hu">Oceanográfiai földrajzi jellemzők</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fi">Merialueitten fysikaaliset olosuhteet (esimerkiksi virtaukset, suolapitoisuus ja aaltojen korkeus).</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fr">Conditions physiques des océans (courants, salinité, hauteur des vagues, etc.).</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fr">Caractéristiques géographiques océanographiques</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fi">Merentutkimuksen maantieteelliset ominaispiirteet</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="et">Füüsikalised tingimused ookeanides (hoovused, soolasisaldus, lainekõrgus jne).</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="et">Okeanograafilis-geograafilised tunnusjooned</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="en">Oceanographic geographical features</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="es">Condiciones físicas de los océanos (corrientes, salinidad, altura del oleaje, etc.).</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="es">Rasgos geográficos oceanográficos</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="da">Oceanografiske/geografiske forhold</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="de">Physikalische Bedingungen der Ozeane (Strömungsverhältnisse, Salinität, Wellenhöhe usw.).</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="de">Ozeanografisch-geografische Kennwerte</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="el">Φυσικές ιδιότητες των ωκεανών (ρεύματα, αλατότητα, ύψος κυμάτων, κ.λπ.).</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="el">Ωκεανογραφικά γεωγραφικά χαρακτηριστικά</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="en">Physical conditions of oceans (currents, salinity, wave heights, etc.).</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="cs">Zeměpisné oceánografické prvky</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="da">Fysiske forhold til havs (strømme, saltholdighed, bølgehøjde osv.)</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="bg">Океанографски географски характеристики</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="cs">Fyzikální stav oceánů (proudy, slanost, výška vln atd.).</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="bg">Физическо състояние на океаните (течения, соленост, височина на вълните и други).</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ca">Aspectes geogràfics oceanogràfics</skos:prefLabel><skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ca">Condicions físiques dels oceans (corrents, salinitat, altura de l'onatge, etc.).</skos:scopeNote></skos:Concept>
+<skos:Concept rdf:about="http://rdfdata.eionet.europa.eu/inspirethemes/themes/29">
+<skos:altLabel>sr</skos:altLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sv">Fysikaliska förhållanden i hav och saltsjöar indelade i områden och delområden med likartade egenskaper.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sv">Havsområden</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sl">Fizikalne razmere morij in slanih vodnih teles, razdeljenih v regije in podregije s skupnimi značilnostmi.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sl">Morske regije</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sk">Fyzikálne vlastnosti morí a útvarov slanej vody rozdelených na regióny a podregióny so spoločnými vlastnosťami.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sk">Morské regióny</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ro">Condiţii fizice ale mărilor şi corpurilor de apă sărată divizate în regiuni şi subregiuni cu caracteristici comune.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ro">Regiuni maritime</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="nl">Zeegebieden</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pl">Warunki fizyczne mórz i akwenów słonowodnych w podziale na regiony i subregiony o wspólnych cechach.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pl">Regiony morskie</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pt">Condições físicas dos mares e massas de água salinas divididas em regiões e sub-regiões com características comuns.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pt">Regiões marinhas</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="mt">Reġjuni tal-baħar</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="nl">Fysische kenmerken van zeeën en zoutwateroppervlakken, ingedeeld in regio's en subregio's met gemeenschappelijke kenmerken.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lv">Jūru reģioni</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="mt">Kondizzjonijiet fiżiċi ta' l-ibħra u korpi ta' ilma mielaħ imqassma f'reġjuni u sub-reġjuni b'karatteristiċi komuni.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lt">Jūrų regionai</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lv">Pēc noteiktām kopīgām iezīmēm izveidotos apgabalos un apakšapgabalos sadalītu jūru un sālsūdens ūdenstilpņu fiziskie stāvokļi.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="it">Regioni marine</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lt">Jūrų ir sūrių vandens telkinių, pagal bendras charakteristikas suskirstytų į regionus ir paregionius, fizinės charakteristikos.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="hu">A tengerek és sósvizű víztestek fizikai jellemzői, közös tulajdonságaik alapján régiókra és alrégiókra osztva.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="hu">Tengeri régiók</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="it">Condizioni fisiche dei mari e dei corpi idrici salmastri suddivisi in regioni e sottoregioni con caratteristiche comuni.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fr">Régions maritimes</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fr">Conditions physiques des mers et des masses d'eau salée divisées en régions et en sous-régions à caractéristiques communes.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="et">Merepiirkonnad</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fi">Yhteisten ominaispiirteitten mukaisesti alueisiin ja osa-alueisiin jaoteltujen merien ja suolaisten vesistöjen fyysiset olosuhteet.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fi">Merialueet</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="es">Regiones marinas</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="et">Füüsikalised tingimused meredes ja soolase veega veekogudes, mis on ühiste tunnuste alusel jaotatud piirkondadeks ja alampiirkondadeks.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="en">Sea regions</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="es">Condiciones físicas de los mares y masas de aguas salinas, por regiones y subregiones con características comunes.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="en">Physical conditions of seas and saline water bodies divided into regions and sub-regions with common characteristics.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="el">Θαλάσσιες περιοχές</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="cs">Mořské oblasti</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="da">Fysiske forhold i have og saltholdige søer, opdelt på områder og delområder med fælles egenskaber.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="da">Havområder</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="de">Physikalische Bedingungen von Meeren und salzhaltigen Gewässern, aufgeteilt nach Regionen und Teilregionen mit gemeinsamen Merkmalen.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="de">Meeresregionen</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="el">Φυσικές ιδιότητες των θαλασσών και των αλατούχων υδατικών συστημάτων, με υποδιαίρεση ανά περιοχές και υποπεριοχές με κοινά χαρακτηριστικά.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="cs">Fyzikální stav moří a slaných vod rozdělených do regionů a subregionů se společnými vlastnostmi.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="bg">Физическо състояние на моретата и солени водни маси, разделени на региони и подрегиони с общи характеристики.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="bg">Морски региони</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ca">Regions marines</skos:prefLabel><skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ca">Condicions físiques dels mars i masses d'aigua salina dividides en regions i sub-regions amb característiques comunes.</skos:scopeNote></skos:Concept>
+<skos:Concept rdf:about="http://rdfdata.eionet.europa.eu/inspirethemes/themes/3">
+<skos:altLabel>gn</skos:altLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sl">Zemljepisna imena</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sv">Namn på områden, regioner, platser, städer, förorter, tätorter och annan bebyggelse, samt andra geografiska och topografiska företeelser av allmänt eller historiskt intresse.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sv">Geografiska namn</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sk">Zemepisné názvy</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sl">Imena območij, regij, krajev, velemest, predmestij, mest ali zaselkov ali kateri koli geografski ali topografski pojav javnega ali zgodovinskega pomena.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sk">Názvy oblastí, regiónov, lokalít, veľkomiest, predmestí, miest alebo osád alebo akéhokoľvek zemepisného či topografického prvku verejného alebo historického významu.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ro">Nume de zone, regiuni, localităţi, oraşe mari, suburbii, oraşe mici sau aşezări, sau orice alt element geografic ori topografic de interes public sau istoric.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ro">Denumiri geografice</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pl">Nazwy geograficzne</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pt">Denominações das zonas, regiões, localidades, cidades, subúrbios, pequenas cidades ou povoações, ou de qualquer entidade geográfica ou topográfica de interesse público ou histórico.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pt">Toponímia</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lv">Toponīmi</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="mt">Ismijiet ta' żoni, reġjuni, lokalitajiet, bliet, subborgi, jew inħawi abitati oħra, jew kull karatteristika ġeografika jew topografika ta' interess pubbliku jew storiku.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="mt">Ismijiet ġeografiċi</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="nl">Namen van gebieden, regio's, plaatsen, steden, voorsteden, gemeenten, nederzettingen, of andere geografische of topografische kenmerken van openbaar of historisch belang.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="nl">Geografische namen</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pl">Nazwy obszarów, regionów, miejscowości, miast, przedmieść lub osiedli, albo każdy inny obiekt geograficzny lub topograficzny o znaczeniu publicznym lub historycznym.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fr">Dénominations géographiques</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="hu">Területek, régiók, helységek, nagyvárosok, elővárosok, városok vagy települések, illetve bármely, a nyilvánosság érdeklődésére számot tartó vagy történeti jelentősségre szert tett földrajzi vagy topográfiai jellegzetesség.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="hu">Földrajzi nevek</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="it">Denominazione di aree, regioni, località, città, periferie, paesi o centri abitati, o qualsiasi elemento geografico o topografico di interesse pubblico o storico.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="it">Nomi geografici</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lt">Sričių, regionų, vietovių, miestų, priemiesčių, miestelių, gyvenviečių ar kitų viešąją ar istorinę reikšmę turinčių geografinių ar topografinių elementų pavadinimai.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lt">Geografiniai pavadinimai</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lv">Rajonu, reģionu, apvidu, lielpilsētu, priekšpilsētu, pilsētu, apdzīvotu vietu vai jebkādu valsts mēroga vai vēsturiskas nozīmes ģeogrāfisku vai topogrāfisku objektu nosaukumi.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fr">Noms de zones, de régions, de localités, de grandes villes, de banlieues, de villes moyennes ou d'implantations, ou tout autre élément géographique ou topographique d'intérêt public ou historique.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fi">Maa-alueiden, alueiden, paikkakuntien, suurkaupunkien, esikaupunkien, kaupunkien tai taajamien nimet tai muut sellaisten maantieteellisten tai topografisten kohteiden nimet, joilla on yleistä tai historiallista merkitystä.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fi">Paikannimet</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="et">Alade, piirkondade, kohtade, linnade, äärelinnade, alevite või asulate nimed või muud üldist või ajaloolist huvi pakkuvad mis tahes geograafilised või topograafilised tunnused.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="et">Geograafilised nimed</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="es">Nombres geográficos</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="el">Τοπωνύμια εκτάσεων, περιοχών, τοποθεσιών, πόλεων, προαστίων, κωμοπόλεων ή οικισμών, ή οποιοδήποτε γεωγραφικό ή τοπογραφικό χαρακτηριστικό δημόσιου ή ιστορικού ενδιαφέροντος.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="el">Τοπωνύμια</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="en">Names of areas, regions, localities, cities, suburbs, towns or settlements, or any geographical or topographical feature of public or historical interest.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="en">Geographical names</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="es">Nombres de zonas, regiones, localidades, ciudades, periferias, poblaciones o asentamientos, o cualquier rasgo geográfico o topográfico de interés público o histórico.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="de">Geografische Bezeichnungen</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="bg">Географски наименования</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="cs">Jména oblastí, regionů, míst, velkoměst, předměstí, měst nebo sídel nebo jakýchkoli zeměpisných nebo topografických útvarů veřejného zájmu nebo historického významu.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="cs">Zeměpisné názvy</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="da">Navne på områder, regioner, lokaliteter, byer, forstæder, bebyggelser og alle former for geografiske og topografiske objekter af offentlig eller historisk interesse.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="da">Stednavne</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="de">Namen von Gebieten, Regionen, Orten, Großstädten, Vororten, Städten oder Siedlungen sowie jedes geografische oder topografische Merkmal von öffentlichem oder historischem Interesse.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="bg">Наименования на области, региони, местности, големи градове, предградия, малки градове или населени места, или географска или топографска характеристика от обществен или исторически интерес.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ca">Noms geogràfics</skos:prefLabel><skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ca">Noms de zones, regions, localitats, ciutats, perifèries, poblacions o assentaments, o qualsevol tret geogràfic o topogràfic d’interès públic o històric.</skos:scopeNote></skos:Concept>
+<skos:Concept rdf:about="http://rdfdata.eionet.europa.eu/inspirethemes/themes/30">
+<skos:altLabel>br</skos:altLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sv">Områden som har relativt homogena ekologiska förhållanden med likartade egenskaper.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sv">Biogeografiska regioner</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sl">Biogeografske regije</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sk">Biogeografické regióny</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sl">Območja z relativno homogenimi ekološkimi razmerami s skupnimi značilnostmi.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ro">Regiuni biogeografice</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sk">Oblasti s pomerne rovnorodými ekologickými vlastnosťami so spoločnými vlastnosťami.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pl">Obszary o stosunkowo jednorodnych warunkach ekologicznych i o wspólnych cechach.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pl">Regiony biogeograficzne</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pt">Zonas de condições ecológicas relativamente homogéneas com características comuns.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pt">Regiões biogeográficas</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ro">Zone care prezintă condiţii ecologice relativ omogene, având caracteristici comune.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="nl">Gebieden met betrekkelijk homogene ecologische omstandigheden die gemeenschappelijke kenmerken vertonen.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="nl">Biogeografische gebieden</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lt">Teritorijos, kurioms būdingos palyginti homogeniškos ekologinės sąlygos ir panašios charakteristikos.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lt">Biogeografiniai regionai</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lv">Apgabali ar relatīvi viendabīgiem ekoloģiskiem apstākļiem un noteiktām kopīgam iezīmēm.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lv">Bioģeogrāfiskie reģioni</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="mt">Reġjuni bijo-ġeografiċi</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="mt">Żoni ta' kondizzjonijiet ekoloġiċi relattivament omoġenji b'karatteristiċi komuni.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="it">Aree che presentano condizioni ecologiche relativamente omogenee con caratteristiche comuni.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="it">Regioni biogeografiche</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="hu">Biogeográfiai régiók</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fr">Régions biogéographiques</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="hu">Közös tulajdonságokkal bíró, viszonylag homogén ökológiai jellemzőkkel rendelkező térségek.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fi">Biomaantieteelliset alueet</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fr">Zones présentant des conditions écologiques relativement homogènes avec des caractéristiques communes.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="et">Bio-geograafilised piirkonnad</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fi">Alueet, joilla on suhteellisen yhtenäiset ekologiset olosuhteet ja yhteisiä ominaispiirteitä.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="en">Bio-geographical regions</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="es">Zonas dotadas de condiciones ecológicas relativamente homogéneas con unas características comunes.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="es">Regiones biogeográficas</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="et">Suhteliselt ühetaoliste ökoloogiliste tingimustega ja ühiste tunnustega piirkonnad.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="en">Areas of relatively homogeneous ecological conditions with common characteristics.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="el">Περιοχές σχετικώς ομοιογενών οικολογικών συνθηκών με κοινά χαρακτηριστικά.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="el">Βιογεωγραφικές περιοχές</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="de">Gebiete mit relativ homogenen ökologischen Bedingungen und gemeinsamen Merkmalen.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="de">Biogeografische Regionen</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="da">Biogeografiske regioner</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="da">Områder, der har relativt ensartede økologiske forhold med fælles egenskaber.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="cs">Oblasti s poměrně stejnorodými ekologickými podmínkami a společnými vlastnostmi.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="cs">Bioregiony</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="bg">Биогеографски региони</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="bg">Райони с относително еднородни екологични условия с общи характеристики.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ca">Regions biogeogràfiques</skos:prefLabel><skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ca">Zones dotades de condicions ecològiques relativament homogènies amb unes característiques comunes.</skos:scopeNote></skos:Concept>
+<skos:Concept rdf:about="http://rdfdata.eionet.europa.eu/inspirethemes/themes/31">
+<skos:altLabel>hb</skos:altLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sv">Naturtyper och biotoper</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sl">Habitati in biotopi</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sv">Geografiska områden som kännetecknas av särskilda ekologiska förhållanden, processer, strukturer och (livsstödjande) funktioner och som är fysiska livsmiljöer för organismer som lever där. Inbegriper land- och vattenområden med särskilda geografiska, abiotiska och biotiska egenskaper, oavsett om de är naturliga eller delvis naturliga.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sk">Habitaty a biotopy</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sl">Geografska območja, za katera so značilne posebne ekološke razmere, procesi, struktura in funkcije, ki fizično omogočajo organizmom, da tam živijo. Vključujejo kopenska in vodna območja, ki se razlikujejo po geografskih, abiotskih in biotskih značilnostih, ne glede na to, ali so popolnoma naravna ali polnaravna.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sk">Geografické oblasti, pre ktoré sú charakteristické špecifické ekologické vlastnosti, procesy, štruktúra a (pre život dôležité) funkcie, ktoré fyzikálne podporujú organizmy žijúce na ich území. Patria sem suchozemské a vodné oblasti rozlíšené podľa geografických, abiotických a biotických prvkov, buď výhradne prírodné, alebo poloprírodné.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ro">Habitate ÅŸi biotopuri</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pt">Habitats e biótopos</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ro">Zone geografice caracterizate prin condiţii ecologice specifice, procese, structură şi funcţii (de menţinere a vieţii pe pământ) care sprijină fizic organismele care trăiesc acolo. Sunt incluse zonele terestre şi acvatice care se disting prin caracteristicile lor geografice, abiotice şi biotice, indiferent că acestea sunt naturale sau seminaturale.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pl">Siedliska i obszary przyrodniczo jednorodne</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pt">Zonas geográficas caracterizadas por condições ecológicas, processos, estrutura e funções (de apoio às necessidades básicas) específicos que constituem o suporte físico dos organismos que nelas vivem. Inclui zonas terrestres e aquáticas, naturais ou semi-naturais, diferenciadas pelas suas características geográficas, abióticas e bióticas.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="nl">Habitats en biotopen</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pl">Obszary geograficzne odznaczające się szczególnymi warunkami przyrodniczymi, procesami, strukturą i (podtrzymującymi życie) funkcjami, które fizycznie umożliwiają egzystencję żyjącym na nich organizmom. Obejmują obszary lądowe i wodne wyróżniające się cechami geograficznymi, abiotycznymi i biotycznymi, czy to w całości naturalne czy też półnaturalne.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="mt">L-abitati naturali u l-bijotopi</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="nl">Geografische gebieden die worden gekenmerkt door specifieke ecologische omstandigheden, processen, structuur en (leven ondersteunende) functies die fysiek de daar levende organismen ondersteunen, met inbegrip van volledig natuurlijke of semi-natuurlijke land- en wateroppervlakken, onderscheiden naar geografische, abiotische en biotische kenmerken.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lv">Dzīvotnes un biotopi</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="mt">Żoni ġeografiċi kkaratterizzati minn kondizzjonijiet ekoloġiċi, proċessi, struttura, u funzjonijiet (sostenn tal-ħajja) speċifiċi li jsostnu fiżikament l-organiżmi li jgħixu fihom. Huma inklużi żoni ta' l-art jew ta' l-ilma li jingħarfu permezz ta' karatteristiċi ġeografiċi, abijotiċi u bijotiċi, sew jekk għal kollox naturali kif ukoll jekk semi-naturali.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lt">BuveinÄ—s ir biotopai</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lv">Ģeogrāfiskie apgabali, kuros ir īpaši ekoloģiskie apstākļi, procesi, struktūra, un (dzīvības atbalsta) funkcijas, kas fiziski atbalsta organismus, kuri tajos dzīvo. Tie ietver pilnīgi un daļēji dabīgas sauszemes vai ūdens platības, ko raksturo ģeogrāfiski, abiotiski un biotiski faktori.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="it">Habitat e biotopi</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lt">Geografinės teritorijos, kurioms būdingos specifinės ekologinės sąlygos, procesai, struktūra ir (gyvybės palaikymo) funkcijos, sudarančios gyvenimui tinkamas fizines sąlygas ten gyvenantiems organizmams. Tai apima visiškai natūralias ir pusiau natūralias sausumos ir vandens teritorijas, kurios turi skirtingas geografines, abiotines ir biotines sąlygas.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="it">Aree geografiche caratterizzate da condizioni ecologiche specifiche, processi, strutture e funzioni (di supporto alla vita) che supportano materialmente gli organismi che le abitano. Sono comprese le zone terrestri e acquatiche, interamente naturali o seminaturali, distinte in base agli elementi geografici, abiotici e biotici.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="hu">Olyan földrajzi területek, amelyeket különleges ökológiai feltételek, folyamatok, struktúra és (az élet fenntartásához kapcsolódó) funkciók jellemeznek, amelyek az ott élő organizmusok számára kedvező fizikai feltételeket teremtenek. Ide tartoznak azok a szárazföldi és vízi térségek, amelyeket – akár teljesen természetesek, akár félig természetesek – földrajzi, abiotikus és biotikus jellemzőik alapján különböztetnek meg.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="hu">Élőhelyek és biotópok</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fr">Habitats et biotopes</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fr">Zones géographiques ayant des caractéristiques écologiques particulières — conditions, processus, structures et fonctions (de maintien de la vie) — favorables aux organismes qui y vivent. Sont incluses les zones terrestres et aquatiques qui se distinguent par leurs caractéristiques géographiques, abiotiques ou biotiques, qu'elles soient naturelles ou semi-naturelles.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fi">Elinympäristöt ja biotoopit</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fi">Maantieteelliset alueet, joille ovat ominaisia erityiset ekologiset olosuhteet, prosessit, rakenne ja (elämää ylläpitävät) toiminnot, jotka tukevat fysikaalisesti alueella eläviä organismeja. Sisältää maa- ja vesialueet, joilla on omat maantieteelliset, abioottiset ja bioottiset ominaisuutensa ja jotka ovat joko luonnontilassa tai osittain luonnontilassa.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="et">Elupaigad ja biotoobid</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="et">Geograafilised alad, mida iseloomustavad spetsiifilised ökoloogilised tingimused, protsessid, struktuurid ja (elu alalhoiu-) funktsioonid, mis füüsiliselt toetavad seal elavaid organisme. Hõlmab maa- ja veealasid, mida eristatakse geograafiliste, abiootiliste ja biootiliste tunnuste järgi ja mis on täielikult looduslikud või poollooduslikud.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="en">Habitats and biotopes</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="es">Zonas geográficas caracterizadas por unas condiciones ecológicas específicas, procesos, estructuras y funciones de apoyo vital que sean soporte físico de los organismos que viven en ellas. Se incluirán zonas terrestres y acuáticas diferenciadas por sus características geográficas, abióticas y bióticas, tanto si son enteramente naturales como seminaturales.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="es">Hábitats y biotopos</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="en">Geographical areas characterised by specific ecological conditions, processes, structure, and (life support) functions that physically support the organisms that live there. Includes terrestrial and aquatic areas distinguished by geographical, abiotic and biotic features, whether entirely natural or semi-natural.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="el">Ενδιαιτήματα και βιότοποι</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="de">Lebensräume und Biotope</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="el">Γεωγραφικές περιοχές που χαρακτηρίζονται από ειδικές οικολογικές συνθήκες, διαδικασίες, δομή και λειτουργίες (υποστήριξης της ζωής) οι οποίες στηρίζουν φυσικά τους οργανισμούς που ενδιαιτούν. Περιλαμβάνονται χερσαίες και υδάτινες εκτάσεις, διακρινόμενες ανάλογα με τα γεωγραφικά, αβιοτικά και βιοτικά χαρακτηριστικά τους, ανεξαρτήτως εάν είναι πλήρως φυσικές ή ημιφυσικές.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="de">Geografische Gebiete mit spezifischen ökologischen Bedingungen, Prozessen, Strukturen und (lebensunterstützenden) Funktionen als physische Grundlage für dort lebende Organismen. Dies umfasst auch durch geografische, abiotische und biotische Merkmale gekennzeichnete natürliche oder naturnahe terrestrische und aquatische Gebiete.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="da">Levesteder og biotoper</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="da">Geografiske områder, der er kendetegnet ved særlige økologiske forhold, processer, strukturer og (livsunderstøttende) funktioner, og som er det fysiske grundlag for de organismer, der lever der. Omfatter land- og vandområder, som er kendetegnet ved særlige geografiske, abiotiske eller biotiske forhold, uanset om de er helt eller delvis naturlige.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="bg">Местообитания и биотопи</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="cs">Zeměpisné oblasti vyznačující se zvláštními ekologickými podmínkami, procesy, strukturami a (životně důležitými) funkcemi, které skýtají fyzickou podporu organismům, které v nich žijí. Zahrnují pozemské a vodní oblasti rozlišené podle zeměpisných, abiotických a biotických prvků, přirozené i částečně přirozené povahy.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="cs">Stanoviště a biotopy</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="bg">Географски райони, характеризиращи се със специфични екологични условия, процеси, структура и (животоподпо- магащи) функции, подпомагащи физически организмите, които ги обитават. Включват земни или водни райони, отличаващи се с напълно естествени или полуестествени географски, абиотични и биотични характеристики.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ca">Hàbitats i biòtops</skos:prefLabel><skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ca">Zones geogràfiques caracteritzades per unes condicions ecològiques específiques, processos, estructures i funcions de recolzament vital que siguin suport físic dels organismes que hi viuen. S’inclouran zones terrestres i aquàtiques diferenciades per les seves característiques geogràfiques, abiòtiques i biòtiques, tant si són enterament naturals com seminaturals.</skos:scopeNote></skos:Concept>
+<skos:Concept rdf:about="http://rdfdata.eionet.europa.eu/inspirethemes/themes/32">
+<skos:altLabel>sd</skos:altLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sv">Arters utbredning</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sv">Geografisk fördelning av djur- och växtarters förekomst i rutnät, regioner, administrativa enheter eller andra analytiska enheter.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sl">Geografska porazdelitev pojavljanja živalskih in rastlinskih vrst, razvrščenih po koordinatah, regiji, upravni enoti ali drugi analitični enoti.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sl">Porazdelitev vrst</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sk">Výskyt druhov</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ro">Repartizarea speciilor</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sk">Geografické rozdelenie výskytu živočíšnych a rastlinných druhov zoskupený podľa siete, regiónu, administratívnej jednotky alebo inej analytickej jednotky.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pt">Distribuição das espécies</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ro">Repartizarea geografică a speciilor de animale şi plante, regrupate pe grilă, regiune, unitate administrativă sau altă unitate analitică.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pt">Distribuição geográfica da ocorrência de espécies animais e vegetais agregadas por quadrícula, região, unidade administrativa ou outra unidade analítica.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pl">Rozmieszczenie gatunków</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pl">Geograficzne rozmieszczenie występowania gatunków zwierząt i roślin pogrupowanych według siatki geograficznej, regionu, jednostki administracyjnej lub innej jednostki analitycznej.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="nl">Spreiding van soorten</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="mt">Distribuzzjoni ta' l-ispeċi</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="nl">Geografische spreiding van dier- en plantensoorten per raster, regio, administratieve eenheid of andere analytische eenheid.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lv">Sugu izplatība</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="mt">Distribuzzjoni ġeografika ta' l-okkorrenza ta' speċi ta' annimali u ta' pjanti miġbura flimkien skond il-grilja, ir-reġjun, l-unità amministrattiva jew unità analitika oħra.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lv">Dzīvnieku un augu sugu ģeogrāfiskais sadalījums, grupējot pēc koordinātu tīkla, reģiona, administratīvām vai citām analītiskām vienībām.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lt">Rūšių pasiskirstymas</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="it">Distribuzione delle specie</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lt">Geografinis gyvūnų ir augalų rūšių pasiskirstymas pagal tinklelį, regioną, administracinį ar kitą analitinį vienetą.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="it">Distribuzione geografica delle specie animali e vegetali aggregate per griglia, regione, unità amministrativa o altra unità analitica.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="hu">A fajok megoszlása</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="hu">Az állat- és növényfajok előfordulásának földrajzi eloszlása, térképrács, régió, közigazgatási egység vagy más elemzési egység alapján összesítve.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fr">Répartition des espèces</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fi">Lajien levinneisyys</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fr">Répartition géographique de l'occurrence des espèces animales et végétales regroupées par grille, région, unité administrative ou autre unité analytique.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="et">Liikide jaotumine</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fi">Eläin- ja kasvilajien esiintymien maantieteellinen levinneisyys ruudukoittain, alueittain, hallintoyksiköittäin tai muiden analyyttisten yksiköitten mukaisesti jaoteltuna.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="et">Taime- ja loomaliikide geograafiline levik ruutvõrgu, piirkondade, haldusüksuste või muude jaotusüksuste kaupa.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="es">Distribución de las especies</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="es">Distribución geográfica de las especies animales y vegetales referidas a una cuadrícula, región, unidad administrativa u otro tipo de unidad analítica.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="en">Species distribution</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="el">Κατανομή ειδών</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="en">Geographical distribution of occurrence of animal and plant species aggregated by grid, region, administrative unit or other analytical unit.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="de">Verteilung der Arten</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="el">Γεωγραφική κατανομή ειδών πανίδας και χλωρίδας, ανά κάνναβο, περιοχή, διοικητική ενότητα ή άλλη ενότητα ανάλυσης.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="cs">Rozložení druhů</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="da">Den geografiske fordeling af forekomsten af dyre- og plantearter i kvadratnetceller, forvaltningsenheder eller andre analytiske enheder.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="da">Artsfordeling</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="de">Geografische Verteilung des Auftretens von Tier- und Pflanzenarten, zusammengefasst in Gittern, Region, Verwaltungseinheit oder sonstigen analytischen Einheiten.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="cs">Zeměpisné rozložení výskytu živočišných a rostlinných druhů seskupených podle souřadnicové sítě, regionu, správní jednotky nebo jiné analytické jednotky.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="bg">Разпределение на видовете</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="bg">Географско разпределение на животинските и растителните видове, представено обобщено по координати, регион, административна единица или друга аналитична единица.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ca">Distribució de les espècies</skos:prefLabel><skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ca">Distribució geogràfica de les especies animals i vegetals referides a una quadrícula, regió, unitat administrativa o un altre tipus d’unitat analítica.</skos:scopeNote></skos:Concept>
+<skos:Concept rdf:about="http://rdfdata.eionet.europa.eu/inspirethemes/themes/33">
+<skos:altLabel>er</skos:altLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sk">Zdroje energie</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sl">Energetski viri, vključno z ogljikovodiki, vodno energijo, bioenergijo, soncem, vetrom itd., kjer je to ustrezno vključno s podatki o globini/višini glede velikosti vira.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sl">Energetski viri</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sv">Energiresurser, inbegripet kolväten, vattenkraft, bioenergi, sol, vind osv., i tillämpliga fall med djup-/höjdinformation om resursens omfattning.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sk">Zdroje energie vrátane uhľovodíkov, vodnej energie, energie z biomasy, solárnej energie, veternej energie atď., ak je to možné vrátane informácie o šírke a dĺžke rozlohy zdroja.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sv">Energiresurser</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pt">Recursos energéticos</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ro">Resurse energetice precum hidrocarburi, energia hidraulică, bioenergia, energia solară, energia eoliană etc., însoţite de informaţii privind adâncimea/înălţimea la care se află resursa, după caz.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ro">Resurse energetice</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pl">Zasoby energetyczne</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pt">Recursos energéticos, incluindo os de hidrocarbonetos, hidroeléctricos, de bio-energias, de energia solar, eólica, etc., incluindo, quando pertinente, informação sobre as cotas de profundidade/altura do recurso.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pl">Zasoby energii, w tym węglowodory, energia wodna, bioenergia, energia słoneczna, wiatrowa itd., w odpowiednich przypadkach łącznie z informacjami dotyczącymi głębokości/wysokości i rozmiarów danych zasobów.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="nl">Energiebronnen met inbegrip van koolwaterstof, waterkracht, bio-energie, zon, wind enz., waar passend met inbegrip van diepte/hoogte-informatie over de omvang van de bron.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="nl">Energiebronnen</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lv">Enerģijas resursi</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="mt">Riżorsi ta' enerġija inklużi idrokarboni, enerġija idro-elettrika, bijo-enerġija, bix-xemx, bir-riħ, eċċ., fejn ikun rilevanti, inkluża informazzjoni dwar il-fond/l-għoli rigward id-daqs tar-riżors.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="mt">Riżorsi ta' enerġija</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lt">Energijos ištekliai</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lv">Enerģijas resursi, tostarp ogļūdeņraži, ūdens enerģija, bioenerģija, saules enerģija, vēja enerģija, utt., attiecīgā gadījumā ietverot informāciju par dziļumu/augstumu attiecībā uz resursu apmēru.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="it">Risorse energetiche</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lt">Energijos ištekliai, įskaitant angliavandenilius, hidroenergiją, bioenergiją, saulės ir vėjo energiją ir t. t., tam tikrais atvejais įskaitant informaciją apie išteklių apimties gylį/aukštį.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="it">Risorse energetiche, compresi gli idrocarburi, l'energia idroelettrica, la bioenergia, l'energia solare, eolica, ecc., ove opportuno anche informazioni, in termini di altezza/profondità, sull'entità della risorsa.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="hu">Energiaforrások</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fr">Sources d'énergie</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="hu">Energiaforrások, beleértve a szénhidrogéneket, vízenergiát, bioenergiát, nap- és szélenergiát stb., adott esetben beleértve az erőforrás mértékére vonatkozó mélységi/magassági információt.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fr">Sources d'énergie comprenant les hydrocarbures, l'énergie hydraulique, la bioénergie, l'énergie solaire, l'énergie éolienne, etc., le cas échéant accompagnées d'informations relatives à la profondeur/la hauteur de la source.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fi">Energiavarat</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="et">Energiaressursid</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fi">Energiavarat, mukaan lukien hiilivedyt, vesivoima, bioenergia, aurinko, tuuli jne., mukaan luettuina tarvittaessa syvyys-/korkeustiedot kyseisen luonnonvaran laajuudesta.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="es">Recursos energéticos</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="et">Energiaressursid, sealhulgas süsivesinikud, hüdroenergia, bioenergia, päikese-, tuule- jne energia, sealhulgas koos asjakohase sügavust/kõrgust puudutava teabega ressursi mahu kohta.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="es">Recursos energéticos: hidrocarburos, energía hidroeléctrica, bioenergía, energía solar y eólica, etc., incluyendo, cuando proceda, la información de profundidad y altura del volumen de los recursos.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="en">Energy resources</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="el">Ενεργειακοί πόροι</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="en">Energy resources including hydrocarbons, hydropower, bio-energy, solar, wind, etc., where relevant including depth/height information on the extent of the resource.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="de">Energiequellen</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="de">Energiequellen wie Kohlenwasserstoffe, Wasserkraft, Bioenergie, Sonnen- und Windenergie usw., gegebenenfalls mit Tiefen- bzw. Höhenangaben zur Ausdehnung der Energiequelle.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="el">Ενεργειακοί πόροι, μεταξύ άλλων υδρογονάνθρακες, υδροηλεκτρική ενέργεια, βιοενέργεια, ηλιακή ενέργεια, αιολική ενέργεια, κ.λπ., συμπεριλαμβανομένων, κατά περίπτωση, πληροφοριών περί του βάθους και του ύψους όσον αφορά την έκταση του εκάστοτε πόρου.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="da">Energiressourcer</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="da">Energiressourcer, herunder kulbrinter, vandkraft, bioenergi, sol, vind osv. samt, hvis det er relevant, dybde-/ højdeoplysninger om ressourcens omfang.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="cs">Energetické zdroje</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="bg">Енергийни източници</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="cs">Energetické zdroje, včetně uhlovodíků, vodní energie, bioenergie, sluneční a větrné energie atd., případně včetně informací o hloubce nebo výšce týkajících se rozsahu zdroje.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="bg">Енергийни източници, включително въглеводород, водна енергия, биоенергия, слънчева енергия, енергия от вятър и други; по целесъобразност се включва информация за дълбочина/височина на района на източника.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ca">Recursos energètics</skos:prefLabel><skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ca">Recursos energètics: hidrocarburs, energia hidroelèctrica, bioenergia, energia solar i eòlica, etc., incloent-hi, quan sigui procedent, la informació de profunditat i altura del volum dels recursos.</skos:scopeNote></skos:Concept>
+<skos:Concept rdf:about="http://rdfdata.eionet.europa.eu/inspirethemes/themes/34">
+<skos:altLabel>mr</skos:altLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sl">Mineralni viri</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sv">Mineralfyndigheter, bland annat malm, industrimineraler osv., i tillämpliga fall med djup-/höjdinformation om resursens omfattning.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sv">Mineralfyndigheter</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sk">Zdroje nerastných surovín</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sl">Mineralni viri, vključno s kovinskimi rudami, industrijskimi mineralnimi surovinami itd. kjer je ustrezno, vključno s podatki o globini/višini glede velikosti vira.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ro">Resurse minerale</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sk">Zdroje nerastných surovín vrátane kovových rúd, priemyselných nerastov atď., ak je to možné vrátane informácie o šírke a dĺžke rozlohy zdroja.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pt">Recursos minerais</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ro">Resurse minerale precum minereurile metalifere, minereurile industriale etc., însoţite de informaţii privind adâncimea/ înălţimea la care se află resursa, după caz.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pl">Zasoby mineralne</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pt">Recursos minerais, incluindo minérios metálicos, minerais industriais, etc., incluindo, quando pertinente, informação sobre as cotas de profundidade/altura do recurso.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pl">Zasoby mineralne, w tym rudy metali, minerały przemysłowe itd., w odpowiednich przypadkach łącznie z informacjami dotyczącymi głębokości/wysokości i rozmiarów danych zasobów.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="nl">Minerale bronnen</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="mt">Riżorsi minerali inklużi minerali tal-metall, minerali industrijali, eċċ, fejn rilevanti inkluża informazzjoni dwar il-- fond/l-għoli rigward id-daqs tar-riżors.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="nl">Minerale bronnen met inbegrip van metaalertsen, industriële mineralen enz., waar passend met inbegrip van diepte/ hoogte-informatie over de omvang van de bron.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="mt">Riżorsi minerali</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lv">Derīgo izrakteņu resursi, tostarp metālu rūdas, rūpnieciski iegūstamie izrakteņi, utt., attiecīgā gadījumā ietverot informāciju par dziļumu/augstumu attiecībā uz resursu apmēru.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lv">Derīgo izrakteņu resursi</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lt">Naudingosios iškasenos, įskaitant metalų rūdas, pramonei naudojamas naudingąsias iškasenas ir t. t., tam tikrais atvejais įskaitant informaciją apie išteklių apimties gylį/aukštį.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lt">Naudingosios iškasenos</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="it">Risorse minerarie</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="it">Risorse minerarie, compresi i minerali metallici, i minerali industriali, ecc., ove opportuno anche informazioni, in termini di altezza/profondità, sull'entità della risorsa.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="hu">Ásványi nyersanyagok, beleértve a fémek érceit, ipari ásványokat stb., adott esetben beleértve a nyersanyag kiterjedésére vonatkozó mélységi/magassági információkat.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="hu">Ásványi nyersanyagok</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fr">Ressources minérales</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fi">Mineraalivarat</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fr">Ressources minérales comprenant les minerais métalliques, les minéraux industriels, etc., le cas échéant accompagnées d'informations relatives à la profondeur/la hauteur de la ressource.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="et">Maavarad</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fi">Mineraalivarat, mukaan lukien metallimalmit, teollisuusmineraalit jne., mukaan luettuina tarvittaessa syvyys-/ korkeustiedot kyseisen luonnonvaran laajuudesta.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="et">Maavarad, sealhulgas metallimaagid, tööstuslikud mineraalid jne, sealhulgas koos asjakohase sügavust/kõrgust puudutava teabega ressursi mahu kohta.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="es">Recursos minerales</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="en">Mineral resources</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="es">Recursos minerales: minerales metalíferos, minerales industriales, etc., incluyendo, cuando proceda, la información de profundidad y altura del volumen de los recursos.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="en">Mineral resources including metal ores, industrial minerals, etc., where relevant including depth/height information on the extent of the resource.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="el">Ορυκτοί πόροι</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="el">Ορυκτοί πόροι, μεταξύ άλλων και μεταλλεύματα, βιομηχανικά μεταλλεύματα, κ.λπ., συμπεριλαμβανομένων, κατά περίπτωση, πληροφοριών περί του βάθους και του ύψους όσον αφορά την έκταση του εκάστοτε πόρου.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="de">Mineralische Bodenschätze</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="da">Mineralressourcer</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="de">Mineralische Bodenschätze wie Metallerze, Industrieminerale usw., gegebenenfalls mit Tiefen- bzw. Höhenangaben zur Ausdehnung der Bodenschätze.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="cs">Nerostné suroviny</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="da">Mineralressourcer, herunder metalmalme, industrmineraler osv. samt, hvis det er relevant, dybde-/højdeoplysninger om ressourcens omfang.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="bg">Минерални ресурси</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="cs">Nerostné suroviny, včetně kovových rud, průmyslových surovin atd., případně včetně informací o hloubce nebo výšce týkajících se rozsahu zdroje.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="bg">Минерални ресурси, включително метални руди, промишлени минерали и други; по целесъобразност се включва информация за дълбочина/височина на находището на ресурса.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ca">Recursos minerals</skos:prefLabel><skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ca">Recursos minerals: minerals metal·lífers, minerals industrials, etc., incloent-hi, quan sigui procedent, la informació de la profunditat i altura del volum dels recursos.</skos:scopeNote></skos:Concept>
+<skos:Concept rdf:about="http://rdfdata.eionet.europa.eu/inspirethemes/themes/4">
+<skos:altLabel>au</skos:altLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sl">Upravne enote</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sv">Administrativa enheters, som delar upp områden där medlemsstater har och/eller utövar jurisdiktion, på lokal, regional och nationell nivå, åtskilda av administrativa gränser.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sv">Administrativa enheter</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sl">Upravne enote za lokalno, regionalno in nacionalno upravo, ki razdeljujejo območja, na katerih države članice imajo in/ali izvajajo jurisdikcijo, ločene z upravnimi mejami.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sk">Správne jednotky</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ro">Unităţi administrative</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sk">Správne jednotky rozdeľujúce oblasti, v ktorých členské štáty majú právomoc rozhodovať a/alebo vykonávajú túto právomoc na účely miestneho, regionálneho a celoštátneho riadenia, oddelené správnymi hranicami.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ro">Unităţi de administrare, de delimitare a zonelor în care statele membre deţin şi/sau îşi exercită competenţa, la nivel local, regional şi naţional, separate prin limite administrative.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pl">Jednostki administracyjne</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pt">Unidades administrativas, zonas de divisão sobre as quais os Estados-Membros possuam e/ou exerçam direitos jurisdicionais, para efeitos de governação local, regional e nacional, separadas por fronteiras administrativas.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pt">Unidades administrativas</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="nl">Administratieve eenheden</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pl">Jednostki administracyjne, dzielące obszary, na których państwa członkowskie mają lub wykonują uprawnienia jurysdykcyjne, dla celów sprawowania władzy na poziomie lokalnym, regionalnym i krajowym, oddzielone granicami administracyjnymi.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="nl">Door administratieve grenzen gescheiden lokale, regionale en nationale bestuurlijke eenheden die deel uitmaken van gebieden waarover de lidstaten rechtsbevoegdheid hebben en/of uitoefenen.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="mt">Unitajiet ta' amministrazzjoni, li jaqsmu żoni fejn Stati Membri għandhom u/jew jeżerċitaw drittijiet ġurisdizzjonali, għal governanza reġjonali, lokali u nazzjonali, separati minn konfini amministrattivi.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="mt">Unitajiet amministrattivi</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lv">Administratīvas vienības</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lv">Administratīvas vienības, kas sadala apgabalus, kuros dalībvalstīm ir jurisdikcija un/vai kurā tās to īsteno, pašvaldību, reģionu un valsts pārvaldes nolūkā, kas sadalītas ar administratīvo robežu palīdzību.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="hu">Közigazgatási egységek</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="it">Unità amministrative di suddivisione delle zone su cui gli Stati membri hanno e/o esercitano la loro giurisdizione a livello locale, regionale e nazionale, delimitate da confini amministrativi.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="it">Unità amministrative</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lt">Administracinėmis ribomis atskirti vietos, regionų ir nacionalinės valdžios administraciniai vienetai, į kuriuos padalijamos teritorijos, kurios priklauso valstybės narės jurisdikcijai ir (arba) kuriose ji vykdo jurisdikciją.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lt">Administraciniai vienetai</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fr">Unités administratives</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="hu">Az olyan nemzeti területeket, amelyeken a tagállamok joghatósággal rendelkeznek és/vagy joghatóságot gyakorolnak, helyi, regionális és országos egységekre osztó, közigazgatási határvonalakkal elválasztott igazgatási egységek.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fi">Hallinnolliset yksiköt, jotka jakavat alueen, jolla jäsenvaltioilla on tai jolla ne käyttävät lainkäyttöoikeuksia, paikalliseen, alueelliseen ja valtakunnalliseen hallintoon ja jotka erotetaan toisistaan hallinnollisin rajoin.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fi">Hallinnolliset yksiköt</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fr">Unités d'administration séparées par des limites administratives et délimitant les zones dans lesquelles les États membres détiennent et/ou exercent leurs compétences, aux fins de l'administration locale, régionale et nationale.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="en">Administrative units</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="es">Unidades administrativas en que se dividan las áreas en las que los Estados miembros tienen y/o ejercen derechos jurisdiccionales, a efectos de administración local, regional y nacional, separadas por límites administrativos.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="es">Unidades administrativas</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="et">Halduspiiridega eraldatud haldusüksused, mis jagavad liikmesriikide jurisdiktsiooni all olevad alad kohaliku, piirkondliku ja riikliku juhtimise eesmärgil.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="et">Haldusüksused</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="en">Units of administration, dividing areas where Member States have and/or exercise jurisdictional rights, for local, regional and national governance, separated by administrative boundaries.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="el">Διοικητικές ενότητες που χωρίζουν περιοχές επί των οποίων κράτη μέλη έχουν ή/και ασκούν δικαιοδοτικά δικαιώματα σε τοπικό, περιφερειακό και εθνικό επίπεδο, χωρίζονται από διοικητικά όρια.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="el">Διοικητικές ενότητες</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="de">Verwaltungseinheiten</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="da">Administrative enheder</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="de">Lokale, regionale und nationale Verwaltungseinheiten, die die Gebiete abgrenzen, in denen die Mitgliedstaaten Hoheitsbefugnisse haben und/oder ausüben und die durch Verwaltungsgrenzen voneinander getrennt sind.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="bg">Административни единици</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="bg">Административни единици, отделени с административни граници и отграничаващи райони, върху които държавите-членки имат и/или упражняват юридически правомощия, за целите на местното, регионалното и националнотоуправление.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="cs">Správní jednotky</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="da">Forvaltningsenheder, der inddeler områder, hvor medlemsstaterne har og/eller udøver jurisdiktionelle rettigheder på lokalt, regionalt og nationalt plan, adskilt af administrative grænser.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="cs">Správní jednotky rozdělující území, ve kterém členské státy mají nebo vykonávají svrchovaná práva, pro účely místní, regionální a státní správy, oddělené správními hranicemi.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ca">Unitats administratives</skos:prefLabel><skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ca">Unitats administratives en què es divideixin les àrees en les quals els estats membres tenen i/o exerceixen drets jurisdiccionals, a efectes d’administració local, regional i nacional, separades per límits administratius.</skos:scopeNote></skos:Concept>
+<skos:Concept rdf:about="http://rdfdata.eionet.europa.eu/inspirethemes/themes/5">
+<skos:altLabel>ad</skos:altLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ro">Adrese</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sk">Poloha nehnuteľností založená na identifikátoroch obsiahnutých v adrese, obyčajne podľa názvu ulice, čísla domu, poštového smerovacieho čísla.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sk">Adresy</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sl">Lokacija nepremičnin, ki temelji na identifikatorjih naslova, običajno z imenom ulice, hišno številko, poštno številko.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sl">Naslovi</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sv">Adresser</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sv">Läge för fastigheter på grundval av adressuppgifter, vanligen i form av gatunamn, gatunummer och postnummer.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pt">Endereços</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ro">Localizare a proprietăţilor, bazată pe identificatori de adresă, de obicei numele străzii, numărul casei şi codul poştal.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pl">Adresy</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pt">Localização de propriedades com base em identificadores de endereço, em regra, o nome da rua, o número da porta e o código postal.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="mt">Indirizzi</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="nl">Locatie van onroerende zaken, gebaseerd op adresaanduidingen, gewoonlijk aan de hand van de straatnaam, het huisnummer en de postcode.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="nl">Adressen</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lt">Adresai</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lv">Īpašumu ģeogrāfiskā atrašanās vieta, pamatojoties uz adreses identifikatoriem; parasti tie ir ceļu nosaukumi, māju numuri, pasta indeksi.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lv">Adreses</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="mt">Pożizzjoni ta' proprjetajiet ibbażata fuq identifikaturi ta' l-indirizzi, normalment bl-isem tat-triq, in-numru tad-dar, ilkodiċi postali.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pl">Lokalizacja nieruchomości na podstawie danych adresowych, zazwyczaj nazwy ulicy, numeru budynku, kodu pocztowego.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="hu">Az ingatlanok helye címazonosítók – rendszerint utcanév, házszám, irányítószám – alapján.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="hu">Címek</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="it">Localizzazione delle proprietà basata su identificatori di indirizzo, in genere nome della via, numero civico, codice postale.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="it">Indirizzi</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lt">Nuosavybės vieta pagal adreso duomenis, paprastai gatvės pavadinimą, namo numerį, pašto kodą.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fr">Adresses</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fr">Localisation des propriétés fondée sur les identifiants des adresses, habituellement le nom de la rue, le numéro de la maison et le code postal.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fi">Osoitteet</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fi">Kiinteistöjen sijainti, joka perustuu osoitetietoon, jossa tavallisesti kadunnimi, talon numero ja postinumero.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="es">Localización de las propiedades, basada en identificadores de direcciones, por ejemplo, el nombre de la vía pública, el número de la finca, el código postal.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="es">Direcciones</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="et">Maavalduste asukoht aadressi elementide, tavaliselt tee või tänava nime, majanumbri ja postiindeksi järgi.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="et">Aadressid</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="en">Location of properties based on address identifiers, usually by road name, house number, postal code.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="en">Addresses</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="de">Lokalisierung von Grundstücken anhand von Adressdaten, in der Regel Straßenname, Hausnummer und Postleitzahl.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="de">Adressen</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="el">Θέση ακινήτων με βάση τη διεύθυνση, συνήθως με όνομα οδού, αριθμό οικίας και ταχυδρομικό κώδικα.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="el">Διευθύνσεις</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="da">Adresser</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="cs">Adresy</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="da">Lokalisering af ejendomme på grundlag af adresseidenter, normalt ved hjælp af vejnavn, husnummer og postnummer.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="bg">Местонахождение на имоти, обозначено чрез адресни данни, обичайно чрез наименование на улица, номер на сграда и пощенски код.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="bg">Адреси</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="cs">Poloha nemovitostí podle adresních identifikátorů, obvykle pomocí názvu ulice, čísla domu, poštovního směrovacího čísla.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ca">Adreces</skos:prefLabel><skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ca">Localització de les propietats, basada en identificadors d’adreces, per exemple, el nom de la via pública, el número de la finca o el codi postal.</skos:scopeNote></skos:Concept>
+<skos:Concept rdf:about="http://rdfdata.eionet.europa.eu/inspirethemes/themes/6">
+<skos:altLabel>cp</skos:altLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sv">Områden definierade av fastighetsregister eller motsvarande.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sv">Fastighetsområden</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sl">Katastrske parcele</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sk">Územia vymedzené katastrálnymi registrami alebo rovnocennými registrami.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sk">Katastrálne parcely</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sl">Področja, ki jih opredeljujejo zemljiški kataster ali enakovredni registri.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ro">Zone stabilite de registrele cadastrale sau echivalente.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ro">Parcele cadastrale</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="mt">Żoni ddefiniti b'reġistri katastali jew l-ekwivalenti.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="mt">Pakketti katastali</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="nl">Gebieden die worden bepaald door kadastrale registers of een equivalent daarvan.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="nl">Kadastrale percelen</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pl">Obszary określone na podstawie rejestrów katastralnych lub ich odpowiedników.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pl">Działki katastralne</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pt">Áreas definidas por registos cadastrais ou equivalentes.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pt">Parcelas cadastrais</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lv">Kadastrāli zemes gabali</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lv">Teritorijas, kas noteiktas kadastra reģistros vai līdzīgās sistēmās.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lt">Kadastro sklypai</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="it">Parcelle catastali</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lt">Kadastrų registruose ar panašiai apibrėžti plotai.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fr">Zones définies par les registres cadastraux ou équivalents.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fr">Parcelles cadastrales</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="hu">Kataszteri nyilvántartásokkal – vagy ezzel egyenértékű módon – meghatározott területek.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="hu">Kataszteri parcellák</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="it">Aree definite dai registri catastali o equivalenti.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="el">Γεωτεμάχια κτηματολογίου</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="en">Areas defined by cadastral registers or equivalent.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="en">Cadastral parcels</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="es">Áreas determinadas por registros catastrales o equivalentes.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="es">Parcelas catastrales</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="et">Katastritunnuste või võrdväärsete tunnustega kindlaksmääratud alad.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="et">Katastriüksused</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fi">Alueet, jotka on määritelty kiinteistörekisterissä tai vastaavassa.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fi">Kiinteistöt</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="el">Εκτάσεις που ορίζονται από κτηματολογικά μητρώα ή αντίστοιχες.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="bg">Кадастрални парцели</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="cs">Území vymezená v katastru nemovitostí nebo v obdobném rejstříku.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="cs">Katastrální parcely</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="da">Arealer, der er defineret i matrikelregistre eller lignende.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="da">Matrikulære parceller</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="de">Gebiete, die anhand des Grundbuchs oder gleichwertiger Verzeichnisse bestimmt werden.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="de">Flurstücke/Grundstücke (Katasterparzellen)</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="bg">Райони, посочени в кадастрални регистри или други равностойни документи.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ca">Parcel·les cadastrals</skos:prefLabel><skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ca">Àrees determinades per registres cadastrals o equivalents.</skos:scopeNote></skos:Concept>
+<skos:Concept rdf:about="http://rdfdata.eionet.europa.eu/inspirethemes/themes/7">
+<skos:altLabel>tn</skos:altLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sv">Transportnät</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ro">Reţele de transport rutier, feroviar, aerian şi pe apă şi infrastructura asociată. Cuprinde, de asemenea, legături între diferite reţele. Mai cuprinde şi reţeaua transeuropeană de transport, astfel cum este definită în Decizia nr. 1692/96/CE a Parlamentului European şi a Consiliului din 23 iulie 1996 privind orientările comunitare pentru dezvoltarea reţelei transeuropene de transport (1) şi modificările ulterioare.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sv">Väg-, järnvägs-, luft- och sjötransportnät och tillhörande infrastruktur. Innefattar länkar mellan olika nät. Innefattar också det transeuropeiska transportnät som definieras i Europaparlamentets och rådets beslut nr 1692/96/EG av den 23 juli 1996 om gemenskapens riktlinjer för utbyggnad av det transeuropeiska transportnätet (1) samt framtida ändringar av det beslutet.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sl">Prometna omrežja</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sk">Dopravné siete</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sl">Cestna, železniška, zračna in vodna prometna omrežja ter z njimi povezana infrastruktura. Vključuje povezave med različnimi omrežji. Vključuje tudi vseevropsko prometno omrežje, kakor je določeno v Odločbi št. 1692/96/ES Evropskega parlamenta in Sveta z dne 23. julija 1996 o smernicah Skupnosti za razvoj vseevropskega prometnega omrežja (1), in prihodnje preglede te odločbe.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ro">Reţele de transport</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sk">Cestné, železničné, letecké a vodné dopravné siete a s nimi súvisiaca infraštruktúra. Patria sem prepojenia medzi jednotlivými sieťami. Zahŕňajú tiež transeurópsku dopravnú sieť vymedzenú v rozhodnutí Európskeho parlamentu a Rady č. 1692/96/ES z 23. júla 1996 o základných usmerneniach Spoločenstva pre rozvoj transeurópskej dopravnej siete (1) a budúcich revíziách uvedeného rozhodnutia.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pt">Redes de transporte</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pl">Sieci transportowe</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pt">Redes de transporte rodoviário, ferroviário, aéreo e por via navegável, e respectivas infra-estruturas. Inclui as ligações entre as diferentes redes. Inclui também a rede transeuropeia de transportes definida na Decisão n.o 1692/96/CE do Parlamento Europeu e do Conselho, de 23 de Julho de 1996, sobre as orientações comunitárias para o desenvolvimento da rede transeuropeia de transportes (1), e as futuras revisões dessa decisão.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lv">Autoceļi, dzelzceļa, gaisa un ūdens transporta tīkli un ar tiem saistītā infrastruktūra. Tie ietver arī dažādu tīklu savienojumus. Tie ietver arī Eiropas transporta tīklu, kā tas definēts Eiropas Parlamenta un Padomes Lēmumā Nr. 1692/96/EK (1996. gada 23. jūlijs) par Kopienas pamatnostādnēm Eiropas transporta tīkla attīstībai (1) un minētā lēmuma turpmākajos grozījumos.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lv">Transporta tīkli</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="mt">Networks tat-trasport tat-triq, tal-ferrovija, ta' l-ajru u ta' l-ilma u infrastruttura relatata. Huma inklużi l-kollegamenti bejn networks differenti. Huma inklużi wkoll in-network trans-Ewropew tat-trasport kif definit fid-Deċiżjoni Nru 1692/96/KE tal-Parlament Ewropew u tal-Kunsill tat-23 ta' Lulju 1996 dwar il-Linji Gwida tal-Komunità għalliżvilupp ta' network trans-Ewropew tat-trasport (1) u r-reviżjonijiet futuri ta' dik id-Deċiżjoni.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="mt">Networks tat-trasport</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="nl">Netwerken voor vervoer over de weg, per spoor, in de lucht en over het water en de aanverwante infrastructuur met inbegrip van koppelingen tussen verschillende netwerken en het trans-Europees vervoersnetwerk, zoals gedefinieerd in Beschikking nr. 1692/96/EG van het Europees Parlement en de Raad van 23 juli 1996 betreffende communautaire richtsnoeren voor de ontwikkeling van een trans-Europees vervoersnet (1) en de latere herzieningen van deze beschikking.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="nl">Vervoersnetwerken</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pl">Sieci transportu drogowego, kolejowego, lotniczego i wodnego oraz związana z nimi infrastruktura. Obejmują połączenia pomiędzy różnymi sieciami. Zalicza się do nich także transeuropejską sieć transportową w rozumieniu decyzji nr 1692/96/WE Parlamentu Europejskiego i Rady z dnia 23 czerwca 1996 r. w sprawie wspólnotowych wytycznych dotyczących rozwoju transeuropejskiej sieci transportowej (1) wraz z jej przyszłymi zmianami.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lt">Transporto tinklai</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="hu">Közlekedési hálózatok</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="it">Reti di trasporto su strada, su rotaia, per via aerea e per vie navigabili e relative infrastrutture. Questa voce comprende i collegamenti tra le varie reti e anche la rete transeuropea di trasporto di cui alla decisione n. 1692/96/CE del Parlamento europeo e del Consiglio, del 23 luglio 1996, sugli orientamenti comunitari per lo sviluppo della rete transeuropee dei trasporti (1) e successive revisioni.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="it">Reti di trasporto</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lt">Keliai, geležinkeliai, oro ir vandens transporto tinklai bei su jais susijusi infrastruktūra. Įtraukiamos sąsajos tarp skirtingų tinklų. Taip pat apima 1996 m. liepos 23 d. Europos Parlamente ir Tarybos sprendime Nr. 1692/96/EB, pateikiančiame Bendrijos gaires dėl transeuropinio transporto tinklo plėtros (1), ir jo vėlesniuose pakeitimuose apibrėžtą transeuropinį transporto tinklą.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fi">Liikenneverkot</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fr">Réseaux routier, ferroviaire, aérien et navigable ainsi que les infrastructures associées. Sont également incluses les correspondances entre les différents réseaux, ainsi que le réseau transeuropéen de transport tel que défini dans la décision no 1692/96/CE du Parlement européen et du Conseil du 23 juillet 1996 sur les orientations communautaires pour le développement du réseau transeuropéen de transport (1) et les révisions futures de cette décision.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fr">Réseaux de transport</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="hu">Közúti, vasúti, légi és vízi közlekedési hálózatok és a kapcsolódó infrastruktúra. Ide tartoznak a különféle hálózatok közötti összeköttetések is. Magában foglalja továbbá a transzeurópai közlekedési hálózat fejlesztésére vonatkozó közösségi iránymutatásokról szóló, 1996. július 23-i 1692/96/EK európai parlamenti és tanácsi határozatban (1) meghatározott transzeurópai közlekedési hálózatot és e határozat jövőbeli felülvizsgálatait is.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="et">Transpordivõrgud</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fi">Tie-, raide-, ilma- ja vesiliikenneverkot ja niihin liittyvä infrastruktuuri. Sisältää eri verkkojen väliset yhteydet. Sisältää myös Euroopan laajuisen liikenneverkon sellaisena kuin se on määritelty yhteisön suuntaviivoista Euroopan laajuisen liikenneverkon kehittämiseksi 23 päivänä heinäkuuta 1996 tehdyssä Euroopan parlamentin ja neuvoston päätöksessä N:o 1692/96/EY (1) ja tämän päätöksen tulevissa tarkistuksissa.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="es">Redes de transporte</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="et">Maantee-, raudtee-, õhu- ja veetranspordivõrgud ja nendega seotud infrastruktuurid. Sisaldab eri võrkude vahelisi ühendusi. Hõlmab ka Euroopa Parlamendi ja nõukogu 23. juuli 1996. aasta otsuses 1692/96/EÜ üleeuroopalise transpordivõrgu arendamist käsitlevate ühenduse suuniste kohta, (1) määratletud üleeuroopalist transpordivõrku ja selle otsuse edaspidiseid muudatusi.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="el">Δίκτυα μεταφορών</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="en">Road, rail, air and water transport networks and related infrastructure. Includes links between different networks. Also includes the trans-European transport network as defined in Decision No 1692/96/EC of the European Parliament and of the Council of 23 July 1996 on Community Guidelines for the development of the trans-European transport network (1) and future revisions of that Decision.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="en">Transport networks</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="es">Redes de carreteras, ferrocarril, transporte aéreo y vías navegables, con sus correspondientes infraestructuras. Se incluirán las conexiones entre redes diferentes. Se incluirá también la red transeuropea de transporte, según la definición de la Decisión no 1692/96/CE del Parlamento Europeo y del Consejo, de 23 de julio de 1996, sobre las orientaciones comunitarias para el desarrollo de la red transeuropea de transporte (1), y de las futuras revisiones de dicha Decisión.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="el">Δίκτυα οδικών, σιδηροδρομικών, αεροπορικών και υδάτινων μεταφορών και οι αντίστοιχες υποδομές. Περιλαμβάνονται οι συνδέσεις μεταξύ των διαφόρων δικτύων. Περιλαμβάνεται επίσης το διευρωπαϊκό δίκτυο μεταφορών, όπως ορίζεται στην απόφαση αριθ. 1692/96/EΚ του Ευρωπαϊκού Κοινοβουλίου και του Συμβουλίου, της 23ης Ιουλίου 1996, περί των κοινοτικών προσανατολισμών για την ανάπτυξη του διευρωπαϊκού δικτύου μεταφορών (1) και στις μελλοντικές αναθεωρήσεις της εν λόγω απόφασης.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="de">Verkehrsnetze</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="da">Transportnet</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="de">Verkehrsnetze und zugehörige Infrastruktureinrichtungen für Straßen-, Schienen- und Luftverkehr sowie Schifffahrt. Umfasst auch die Verbindungen zwischen den verschiedenen Netzen. Umfasst auch das transeuropäische Verkehrsnetz im Sinne der Entscheidung Nr. 1692/96/EG des Europäischen Parlaments und des Rates vom 23. Juli 1996 über gemeinschaftliche Leitlinien für den Aufbau eines transeuropäischen Verkehrsnetzes (1) und künftiger Überarbeitungen dieser Entscheidung.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="da">Transportnet for biler, tog, fly og skibe med tilhørende infrastruktur. Omfatter forbindelser mellem de forskellige net. Omfatter også det transeuropæiske transportnet som defineret i Europa-Parlamentets og Rådets beslutning nr. 1692/96/EF af 23. juli 1996 om Fællesskabets retningslinjer for udvikling af det transeuropæiske transportnet (1) og fremtidige ændringer af denne beslutning.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="bg">Транспортни мрежи</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="cs">Silniční, železniční, letecké a vodní dopravní sítě a související infrastruktura. Zahrnují spojnice mezi jednotlivými sítěmi. Zahrnují rovněž transevropskou dopravní síť, jak je vymezena v rozhodnutí Evropského parlamentu a Rady č. 1692/96/ES ze dne 23. července 1996 o hlavních směrech Společenství pro rozvoj transevropské dopravní sítě (1) a v budoucích změnách uvedeného rozhodnutí.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="cs">Dopravní sítě</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="bg">Автомобилни, железопътни, въздушни и водни транспортни мрежи и прилежаща инфраструктура. Включват връзки между различните мрежи. Включват също така и Трансевропейската транспортна мрежа, определена в Решение № 1692/96/ЕО на Европейския парламент и на Съвета от 23 юли 1996 г. относно общностните насоки за развитие на Трансевропейската транспортна мрежа (1) и бъдещо преразглеждане на това решение.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ca">Xarxes de transport</skos:prefLabel><skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ca">Xarxes de carreteres, ferrocarril, transport aeri i vies navegables, amb les seves corresponents infraestructures. S’inclouran les connexions entre xarxes diferents. S’inclourà també la xarxa transeuropea de transport, segons la definició de la Decisió núm. 1692/96/CE del Parlament Europeu i del Consell, de 23 de juliol de 1996, sobre les orientacions comunitàries per al desenvolupament de la xarxa transeuropea de transport i de les futures revisions d’aquesta Decisió.</skos:scopeNote></skos:Concept>
+<skos:Concept rdf:about="http://rdfdata.eionet.europa.eu/inspirethemes/themes/8">
+<skos:altLabel>hy</skos:altLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sl">Hidrografija</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sv">Hydrografiska element, inbegripet havsområden och alla andra vattenförekomster och därtill hörande inslag, inbegripet avrinningsområden och delavrinningsområden. I förekommande fall i enlighet med definitionerna i Europaparlamentets och rådets direktiv 2000/60/EG av den 23 oktober 2000 om upprättande av en ram för gemenskapens åtgärder på vattenpolitikens område (2) och i form av nät.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sv">Hydrografi</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sk">Hydrografia</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sl">Hidrografski elementi, ki vključujejo morska območja ter vsa druga vodna telesa in z njimi povezane dele, vključno s povodji in porečji. Po potrebi v skladu z opredelitvami v Direktivi 2000/60/ES Evropskega parlamenta in Sveta z dne 23. oktobra 2000 o določitvi okvira za ukrepe Skupnosti na področju vodne politike (2) in v obliki omrežij.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pt">Hidrografia</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ro">Elementele hidrografice, inclusiv zonele marine, precum şi toate celelalte corpuri de apă şi elementele legate de acestea, inclusiv bazinele şi sub-bazinele hidrografice. După caz, în conformitate cu definiţiile din Directiva 2000/60/CE a Parlamentului European şi a Consiliului din 23 octombrie 2000 de stabilire a unui cadru de politică comunitară în domeniul apei (2) şi sub formă de reţele.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ro">Hidrografie</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sk">Hydrografické prvky vrátane morských oblastí a všetkých ostatných vodných útvarov a objektov vzťahujúcich sa k nim vrátane povodí riek a čiastkových povodí. Ak je to možné, v súlade s vymedzeniami pojmov ustanovenými v smernici Európskeho parlamentu a Rady 2000/60/ES z 23. októbra 2000, ktorou sa stanovuje rámec pôsobnosti pre opatrenia Spoločenstva v oblasti vodného hospodárstva (2), a v podobe sietí.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pt">Elementos hidrográficos, incluindo zonas marinhas e todas as outras massas de água e elementos com eles relacionados, incluindo bacias e sub-bacias hidrográficas. Quando adequado, de acordo com as definições da Directiva 2000/60/CE do Parlamento Europeu e do Conselho, de 23 de Outubro de 2000, que estabelece um quadro de acção comunitária no domínio da política da água (2), e sob a forma de redes.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pl">Hydrografia</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="nl">Hydrografie</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pl">Elementy hydrograficzne, w tym obszary morskie lub inne części wód oraz związane z nimi obiekty, łącznie z dorzeczami i zlewniami. W odpowiednich przypadkach zgodnie z definicjami zawartymi w dyrektywie 2000/60/WE Parlamentu Europejskiego i Rady z dnia 23 października 2000 r. ustanawiającej ramy wspólnotowego działania w dziedzinie polityki wodnej (2) oraz w formie sieci.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lv">Hidrogrāfijas elementi, tostarp jūras teritorijas un visas citas ūdenstilpnes un ar tiem saistītie elementi, tostarp upju baseini un apakšbaseini. Attiecīgā gadījumā atbilstīgi definīcijām, kas izklāstītas Eiropas Parlamenta un Padomes Direktīvā 2000/60/EK (2000. gada 23. oktobris), ar ko izveido sistēmu Kopienas rīcībai ūdens resursu politikas jomā (2), un tīklu veidā.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="nl">Hydrografische elementen, waaronder mariene gebieden en alle andere waterlichamen en daarmee verband houdende elementen, met inbegrip van stroomgebieden en deelstroomgebieden, in voorkomend geval volgens de omschrijvingen vermeld in Richtlijn 2000/60/EG van het Europees Parlement en de Raad van 23 oktober 2000 tot vaststelling van een kader voor communautaire maatregelen betreffende het waterbeleid (2) en in de vorm van netwerken.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="mt">Idrografija</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="mt">Elementi idrografiċi, inklużi żoni marittimi, u kull korp ieħor ta' l-ilma u oġġetti relatati magħhom, inklużi baċiri taxxmajjar u sub-baċiri. Fejn xieraq, skond id-definizzjonijiet fid-Direttiva 2000/60/KE tal-Parlament Ewropew u tal- Kunsill tat-23 ta' Ottubru 2000 li tistabbilixxi qafas għall-azzjoni Komunitarja fil-qasam tal-politika ta' l-ilma (2) u filforma ta' networks.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lt">Hidrografija</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lv">Hidrogrāfija</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fr">Hydrographie</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="hu">Vízrajzi elemek, beleértve a tengeri területeket, minden egyéb víztestet és azzal kapcsolatos elemet, többek között a vízgyűjtőket és részvízgyűjtőket. Adott esetben a vízpolitika terén a közösségi fellépés kereteinek meghatározásáról szóló, 2000. október 23-i 2000/60/EK európai parlamenti és tanácsi irányelv (2) fogalommeghatározásaival összhangban és hálózati formában.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="it">Idrografia</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lt">Hidrografiniai elementai, įskaitant jūros zonas ir visus kitus vandens telkinius bei su jais susijusius elementus, įskaitant upių baseinus ir pabaseinius. Kur tikslinga, pagal 2000 m. spalio 23 d. Europos Parlamento ir Tarybos direktyvą 2000/60/EB, nustatančią Bendrijos veiksmų vandens politikos srityje pagrindus (2), ir tinklų pavidalu.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="it">Elementi idrografici, comprese le zone marine e tutti gli altri corpi ed elementi idrici ad esse correlati, tra cui i bacini e sub bacini idrografici. Eventualmente in conformità delle definizioni contenute nella direttiva 2000/60/CE del Parlamento europeo e del Consiglio, del 23 ottobre 2000, che istituisce un quadro per l'azione comunitaria in materia di acque (2), e sotto forma di reti.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="hu">Vízrajz</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fr">Éléments hydrographiques, y compris les zones maritimes ainsi que toutes les autres masses d'eau et les éléments qui y sont liés, y compris les bassins et sous-bassins hydrographiques. Conformes, le cas échéant, aux définitions établies par la directive 2000/60/CE du Parlement européen et du Conseil du 23 octobre 2000 établissant un cadre pour une politique communautaire dans le domaine de l'eau (2) et sous forme de réseaux.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fi">Hydrografia</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="et">Hüdrograafia</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fi">Hydrografiset elementit, mukaan luettuina merialueet ja kaikki muut vesimuodostumat ja niihin liittyvät kohteet, mukaan lukien vesistöalueet ja vesistöalueen osat. Tarvittaessa yhteisön vesipolitiikan puitteista 23 päivänä lokakuuta 2000 annetussa Euroopan parlamentin ja neuvoston direktiivissä 2000/60/EY (2) olevien määritelmien mukaan ja verkostomuodossa.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="es">Hidrografía</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="et">Hüdrograafilised objektid, sealhulgas merealad ning kõik muud veekogud ja nendega seotud objektid, sealhulgas vesikonnad ja alamvesikonnad. Kui see on asjakohane, vastavalt Euroopa Parlamendi ja nõukogu 23. oktoobri 2000. aasta direktiivis 2000/60/EÜ, millega kehtestatakse ühenduse veepoliitika alane tegevusraamistik (2) määratletule ning võrkude kujul.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="es">Elementos hidrográficos, incluidas las zonas marinas y todas las otras masas de agua y elementos relacionados con ellas, así como las cuencas y subcuencas hidrográficas. Cuando proceda, según lo definido en la Directiva 2000/60/CE del Parlamento Europeo y del Consejo, de 23 de octubre de 2000, por la que se establece un marco comunitario de actuación en el ámbito de la política de aguas (2), y en forma de redes.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="el">Υδρογραφία</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="en">Hydrographic elements, including marine areas and all other water bodies and items related to them, including river basins and sub-basins. Where appropriate, according to the definitions set out in Directive 2000/60/EC of the European Parliament and of the Council of 23 October 2000 establishing a framework for Community action in the field of water policy (2) and in the form of networks.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="en">Hydrography</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="el">Υδρογραφικά στοιχεία, όπου περιλαμβάνονται οι θαλάσσιες περιοχές και όλα τα άλλα υδατικά συστήματα και σχετιζόμενα στοιχεία, μεταξύ των οποίων και οι λεκάνες και υπολεκάνες απορροής ποταμών. Κατά περίπτωση, σύμφωνα με τους ορισμούς της οδηγίας 2000/60/ΕΚ του Ευρωπαϊκού Κοινοβουλίου και του Συμβουλίου, της 23ης Οκτωβρίου 2000, για τη θέσπιση πλαισίου κοινοτικής δράσης στον τομέα της πολιτικής των υδάτων (2) και υπό μορφή δικτύων.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="de">Gewässernetz</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="da">Hydrografiske elementer, herunder havområder og alle andre vandområder og dertil knyttede forekomster, herunder også vandløbsoplande og vandløbsdeloplande. I givet fald i henhold til definitionerne i Europa-Parlamentets og Rådets direktiv 2000/60/EF af 23. oktober 2000 om fastlæggelse af en ramme for Fællesskabets vandpolitiske foranstaltninger (2) og i form af net.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="da">Hydrograf</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="cs">Vodopis</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="bg">Хидрография</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="cs">Přírodní prvky, včetně mořských oblastí a všech ostatních s nimi souvisejících vodních těles a prvků, včetně povodí a dílčích povodí. Případně v souladu s definicemi uvedenými ve směrnici Evropského parlamentu a Rady 2000/60/ES ze dne 23. října 2000, kterou se stanoví rámec pro činnost Společenství v oblasti vodní politiky (2), a v podobě sítí.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="de">Elemente des Gewässernetzes, einschließlich Meeresgebieten und allen sonstigen Wasserkörpern und hiermit verbundenen Teilsystemen, darunter Einzugsgebiete und Teileinzugsgebiete. Gegebenenfalls gemäß den Definitionen der Richtlinie 2000/60/EG des Europäischen Parlaments und des Rates vom 23. Oktober 2000 zur Schaffung eines Ordnungsrahmens für Maßnahmen der Gemeinschaft im Bereich der Wasserpolitik (2) und in Form von Netzen.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="bg">Хидрографски елементи, включително морски райони и други водни маси и свързани с тях елементи, включително речни басейни и подбасейни. По целесъобразност съгласно определенията, посочени в Директива 2000/60/ЕО на Европейския парламент и на Съвета от 23 октомври 2000 г. за установяване на рамка за действията на Общността в областта на политиката за водите (2) и под формата на мрежи.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ca">Hidrografia</skos:prefLabel><skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ca">Elements hidrogràfics, incloses les zones marines i totes les altres masses d’aigua i elements relacionats amb aquestes, així com les conques i subconques hidrogràfiques. Quan sigui procedent, segons el que defineix la Directiva 2000/60/CE del Parlament Europeu i del Consell, de 23 d’octubre de 2000, per la qual s’estableix un marc comunitari d’actuació en l’àmbit de la política d’aigües i en forma de xarxes.</skos:scopeNote></skos:Concept>
+<skos:Concept rdf:about="http://rdfdata.eionet.europa.eu/inspirethemes/themes/9">
+<skos:altLabel>ps</skos:altLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sl">Zavarovana območja</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sv">Områden som är utsedda eller förvaltas inom ramen för internationell lagstiftning, gemenskapslagstiftning och medlemsstaternas lagstiftning för att uppnå specifika miljövårdsmål.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sv">Skyddade områden</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ro">Zone desemnate sau administrate într-un cadru legislativ internaţional, comunitar sau intern, în vederea îndeplinirii unor obiective specifice de conservare.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ro">Zone protejate</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sk">Oblasti vymedzené alebo spravované v rámci medzinárodných právnych predpisov, právnych predpisov Spoločenstva a právnych predpisov členských štátov na účely dosiahnutia osobitných ochranárskych cieľov.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sk">Chránené územia</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="sl">Področje, ki se določi ali upravlja v okviru mednarodnega prava in prava držav članic in Skupnosti z namenom, da se dosežejo posebni cilji ohranjanja.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pl">Obszary chronione</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pt">Zonas designadas ou geridas no âmbito de legislação internacional, comunitária ou dos Estados-Membros para a prossecução de objectivos específicos de conservação.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pt">Sítios protegidos</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="nl">Beschermde gebieden</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="pl">Obszar wyznaczony lub zarządzany w ramach prawa międzynarodowego, wspólnotowego lub państw członkowskich, w celu osiągnięcia szczególnych celów ochrony.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="mt">Żona indikata jew amministrata f'qafas ta' leġiżlazzjoni internazzjonali, Komunitarja u ta' l-Istati Membri sabiex jintlaħqu objettivi speċifiċi ta' konservazzjoni.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="mt">Siti protetti</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="nl">Gebieden die worden aangeduid of beheerd in het kader van internationale en communautaire wetgeving of wetgeving van de lidstaten om specifieke doelstellingen op het vlak van milieubescherming te verwezenlijken.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lt">Saugomos teritorijos</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lv">Teritorijas, kas noteiktas vai pārvaldītas saistībā ar starptautiskiem, Kopienas un dalībvalstu tiesību aktiem, lai nodrošinātu īpašu dabas aizsardzības mērķu īstenošanu.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lv">Aizsargājamas teritorijas</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="it">Siti protetti</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="lt">Teritorija, nustatyta ar tvarkoma pagal tarptautinius, Bendrijos ir valstybių narių teisės aktus, siekiant konkrečių apsaugos tikslų.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fi">Erityisten suojelutavoitteiden saavuttamiseksi kansainvälisen, yhteisön ja jäsenvaltioiden lainsäädännön puitteissa nimetty tai hoidettu alue.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fi">Suojellut alueet</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fr">Zone désignée ou gérée dans un cadre législatif international, communautaire ou national en vue d'atteindre des objectifs spécifiques de conservation.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="fr">Sites protégés</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="hu">Különleges természetvédelmi célok elérése érdekében – nemzetközi, közösségi és tagállami jogszabályok keretében – kijelölt vagy kezelt terület.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="hu">Védett helyek</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="it">Aree designate o gestite in un quadro legislativo internazionale, comunitario o degli Stati membri per conseguire obiettivi di conservazione specifici.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="et">Kaitsealused kohad</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="et">Ala, mis on kindlaksmääratud või mida hallatakse rahvusvaheliste, ühenduse või liikmesriikide õigusaktide raames konkreetsete kaitse-eesmärkide saavutamiseks.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="es">Lugares protegidos</skos:prefLabel>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="en">Protected sites</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="es">Zonas designadas o gestionadas dentro de un marco legislativo internacional, comunitario o propio de los Estados miembros, para la consecución de unos objetivos de conservación específicos.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="el">Προστατευόμενες τοποθεσίες</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="en">Area designated or managed within a framework of international, Community and Member States' legislation to achieve specific conservation objectives.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="da">Beskyttede lokaliteter</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="de">Gebiete, die im Rahmen des internationalen und des gemeinschaftlichen Rechts sowie des Rechts der Mitgliedstaaten ausgewiesen sind oder verwaltet werden, um spezifische Erhaltungsziele zu erreichen.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="de">Schutzgebiete</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="el">Εκτάσεις χαρακτηρισμένες ή υποκείμενες σε διαχείριση σε ένα πλαίσιο διεθνούς, κοινοτικού και εθνικού δικαίου για την επίτευξη συγκεκριμένων στόχων διατήρησης.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="cs">Chráněná území</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="da">Områder, der er udpeget eller forvaltes inden for en ramme af international, fællesskabs- og medlemsstatslovgivning for at nå bestemte bevaringsmål.</skos:scopeNote>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="bg">Район, определен или управляван съгласно международно законодателство, законодателство на Общността или на държавите-членки за постигане на определени цели за опазване на такива обекти.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="bg">Защитени обекти</skos:prefLabel>
+<skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="cs">Území určená nebo spravovaná v rámci mezinárodních právních předpisů a právních předpisů Společenství a členských států pro dosažení konkrétních cílů jejich ochrany.</skos:scopeNote>
+<skos:prefLabel xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ca">Llocs protegits</skos:prefLabel><skos:scopeNote xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:ns4="http://rdfdata.eionet.europa.eu/inspirethemes/themes/" xml:lang="ca">Zones designades o gestionades dins d’un marc legislatiu internacional, comunitari o propi dels estats membres, per a la consecució d’uns objectius de conservació específics.</skos:scopeNote></skos:Concept>
+</rdf:RDF>
diff --git a/src/main/webapp/WEB-INF/data/config/schema_plugins/iso19139/convert/thesaurus-transformation.xsl b/src/main/webapp/WEB-INF/data/config/schema_plugins/iso19139/convert/thesaurus-transformation.xsl
new file mode 100644
index 0000000..9f053ee
--- /dev/null
+++ b/src/main/webapp/WEB-INF/data/config/schema_plugins/iso19139/convert/thesaurus-transformation.xsl
@@ -0,0 +1,323 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+  ~ Copyright (C) 2001-2016 Food and Agriculture Organization of the
+  ~ United Nations (FAO-UN), United Nations World Food Programme (WFP)
+  ~ and United Nations Environment Programme (UNEP)
+  ~
+  ~ This program is free software; you can redistribute it and/or modify
+  ~ it under the terms of the GNU General Public License as published by
+  ~ the Free Software Foundation; either version 2 of the License, or (at
+  ~ your option) any later version.
+  ~
+  ~ This program is distributed in the hope that it will be useful, but
+  ~ WITHOUT ANY WARRANTY; without even the implied warranty of
+  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+  ~ General Public License for more details.
+  ~
+  ~ You should have received a copy of the GNU General Public License
+  ~ along with this program; if not, write to the Free Software
+  ~ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
+  ~
+  ~ Contact: Jeroen Ticheler - FAO - Viale delle Terme di Caracalla 2,
+  ~ Rome - Italy. email: geonetwork@osgeo.org
+  -->
+
+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+                xmlns:gmx="http://www.isotc211.org/2005/gmx"
+                xmlns:gco="http://www.isotc211.org/2005/gco"
+                xmlns:gmd="http://www.isotc211.org/2005/gmd"
+                xmlns:srv="http://www.isotc211.org/2005/srv"
+                xmlns:geonet="http://www.fao.org/geonetwork"
+                xmlns:xlink="http://www.w3.org/1999/xlink"
+                xmlns:util="java:org.fao.geonet.util.XslUtil"
+                xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+                xmlns:xs="http://www.w3.org/2001/XMLSchema"
+                version="2.0"
+                exclude-result-prefixes="#all">
+
+
+  <!-- A set of templates use to convert thesaurus concept to ISO19139 fragments. -->
+
+
+  <xsl:include href="../process/process-utility.xsl"/>
+
+
+  <!-- Convert a concept to an ISO19139 fragment with an Anchor
+        for each keywords pointing to the concept URI-->
+  <xsl:template name="to-iso19139-keyword-with-anchor">
+    <xsl:call-template name="to-iso19139-keyword">
+      <xsl:with-param name="withAnchor" select="true()"/>
+    </xsl:call-template>
+  </xsl:template>
+
+
+  <!-- Convert a concept to an ISO19139 gmd:MD_Keywords with an XLink which
+    will be resolved by XLink resolver. -->
+  <xsl:template name="to-iso19139-keyword-as-xlink">
+    <xsl:call-template name="to-iso19139-keyword">
+      <xsl:with-param name="withXlink" select="true()"/>
+    </xsl:call-template>
+  </xsl:template>
+
+
+  <!-- Convert a concept to an ISO19139 keywords.
+    If no keyword is provided, only thesaurus section is adaded.
+    -->
+  <xsl:template name="to-iso19139-keyword">
+    <xsl:param name="withAnchor" select="false()"/>
+    <xsl:param name="withXlink" select="false()"/>
+    <!-- Add thesaurus identifier using an Anchor which points to the download link.
+        It's recommended to use it in order to have the thesaurus widget inline editor
+        which use the thesaurus identifier for initialization. -->
+    <xsl:param name="withThesaurusAnchor" select="true()"/>
+
+
+    <!-- The lang parameter contains a list of languages
+    with the main one as the first element. If only one element
+    is provided, then CharacterString or Anchor are created.
+    If more than one language is provided, then PT_FreeText
+    with or without CharacterString can be created. -->
+    <xsl:variable name="listOfLanguage" select="tokenize(/root/request/lang, ',')"/>
+    <xsl:variable name="textgroupOnly"
+                  as="xs:boolean"
+                  select="if (/root/request/textgroupOnly and normalize-space(/root/request/textgroupOnly) != '')
+                          then /root/request/textgroupOnly
+                          else false()"/>
+
+
+    <xsl:apply-templates mode="to-iso19139-keyword" select=".">
+      <xsl:with-param name="withAnchor" select="$withAnchor"/>
+      <xsl:with-param name="withXlink" select="$withXlink"/>
+      <xsl:with-param name="withThesaurusAnchor" select="$withThesaurusAnchor"/>
+      <xsl:with-param name="listOfLanguage" select="$listOfLanguage"/>
+      <xsl:with-param name="textgroupOnly" select="$textgroupOnly"/>
+      <xsl:with-param name="node" select="node()"/>
+    </xsl:apply-templates>
+  </xsl:template>
+
+  <xsl:template mode="to-iso19139-keyword" match="*[not(/root/request/skipdescriptivekeywords)]">
+    <xsl:param name="textgroupOnly"/>
+    <xsl:param name="listOfLanguage"/>
+    <xsl:param name="withAnchor"/>
+    <xsl:param name="withXlink"/>
+    <xsl:param name="withThesaurusAnchor"/>
+    <xsl:param name="node"/>
+
+    <gmd:descriptiveKeywords>
+      <xsl:choose>
+        <xsl:when test="$withXlink">
+          <xsl:variable name="isLocalXlink"
+                        select="util:getSettingValue('system/xlinkResolver/localXlinkEnable')"/>
+          <xsl:variable name="prefixUrl"
+                        select="if ($isLocalXlink = 'true')
+                                then concat('local://', $node, '/')
+                                else $serviceUrl"/>
+
+          <xsl:attribute name="xlink:href"
+                         select="concat(
+                                  $prefixUrl,
+                                  'api/registries/vocabularies/keyword?skipdescriptivekeywords=true&amp;thesaurus=',
+                                   if (thesaurus/key) then thesaurus/key else /root/request/thesaurus,
+                                  '&amp;id=', encode-for-uri(/root/request/id),
+                                  if (/root/request/lang) then concat('&amp;lang=', /root/request/lang) else '',
+                                  if ($textgroupOnly) then '&amp;textgroupOnly' else '')"/>
+        </xsl:when>
+        <xsl:otherwise>
+          <xsl:call-template name="to-md-keywords">
+            <xsl:with-param name="withAnchor" select="$withAnchor"/>
+            <xsl:with-param name="withThesaurusAnchor" select="$withThesaurusAnchor"/>
+            <xsl:with-param name="listOfLanguage" select="$listOfLanguage"/>
+            <xsl:with-param name="textgroupOnly" select="$textgroupOnly"/>
+          </xsl:call-template>
+        </xsl:otherwise>
+      </xsl:choose>
+    </gmd:descriptiveKeywords>
+  </xsl:template>
+
+  <xsl:template mode="to-iso19139-keyword" match="*[/root/request/skipdescriptivekeywords]">
+    <xsl:param name="textgroupOnly"/>
+    <xsl:param name="listOfLanguage"/>
+    <xsl:param name="withAnchor"/>
+    <xsl:param name="withThesaurusAnchor"/>
+
+    <xsl:call-template name="to-md-keywords">
+      <xsl:with-param name="withAnchor" select="$withAnchor"/>
+      <xsl:with-param name="withThesaurusAnchor" select="$withThesaurusAnchor"/>
+      <xsl:with-param name="listOfLanguage" select="$listOfLanguage"/>
+      <xsl:with-param name="textgroupOnly" select="$textgroupOnly"/>
+    </xsl:call-template>
+  </xsl:template>
+
+  <xsl:template name="to-md-keywords">
+    <xsl:param name="textgroupOnly"/>
+    <xsl:param name="listOfLanguage"/>
+    <xsl:param name="withAnchor"/>
+    <xsl:param name="withThesaurusAnchor"/>
+
+    <gmd:MD_Keywords>
+      <!-- Get thesaurus ID from keyword or from request parameter if no keyword found. -->
+      <xsl:variable name="currentThesaurus"
+                    select="if (thesaurus/key) then thesaurus/key else /root/request/thesaurus"/>
+      <!-- Loop on all keyword from the same thesaurus -->
+      <xsl:for-each select="//keyword[thesaurus/key = $currentThesaurus]">
+        <gmd:keyword>
+          <xsl:if test="$currentThesaurus = 'external.none.allThesaurus'">
+            <!--
+                if 'all' thesaurus we need to encode the thesaurus name so that update-fixed-info can re-organize the
+                keywords into the correct thesaurus sections.
+            -->
+            <xsl:variable name="keywordThesaurus"
+                          select="replace(./uri, 'http://org.fao.geonet.thesaurus.all/([^@]+)@@@.+', '$1')"/>
+            <xsl:attribute name="gco:nilReason" select="concat('thesaurus::', $keywordThesaurus)"/>
+          </xsl:if>
+
+          <!-- Multilingual output if more than one requested language -->
+          <xsl:choose>
+            <xsl:when test="count($listOfLanguage) > 1">
+              <xsl:attribute name="xsi:type" select="'gmd:PT_FreeText_PropertyType'"/>
+              <xsl:variable name="keyword" select="."/>
+
+              <xsl:if test="not($textgroupOnly)">
+                <gco:CharacterString>
+                  <xsl:value-of
+                    select="$keyword/values/value[@language = $listOfLanguage[1]]/text()"></xsl:value-of>
+                </gco:CharacterString>
+              </xsl:if>
+
+              <gmd:PT_FreeText>
+                <xsl:for-each select="$listOfLanguage">
+                  <xsl:variable name="lang" select="."/>
+                  <gmd:textGroup>
+                    <gmd:LocalisedCharacterString
+                      locale="#{upper-case(util:twoCharLangCode($lang))}">
+                      <xsl:value-of
+                        select="$keyword/values/value[@language = $lang]/text()"></xsl:value-of>
+                    </gmd:LocalisedCharacterString>
+                  </gmd:textGroup>
+                </xsl:for-each>
+              </gmd:PT_FreeText>
+            </xsl:when>
+            <xsl:otherwise>
+              <!-- ... default mode -->
+              <xsl:choose>
+                <xsl:when test="$withAnchor">
+                  <!-- TODO multilingual Anchor ? -->
+                  <gmx:Anchor
+                    xlink:href="{$serviceUrl}api/registries/vocabularies/keyword?thesaurus={thesaurus/key}&amp;id={uri}">
+                    <xsl:value-of select="value"/>
+                  </gmx:Anchor>
+                </xsl:when>
+                <xsl:otherwise>
+                  <gco:CharacterString>
+                    <xsl:value-of select="value"/>
+                  </gco:CharacterString>
+                </xsl:otherwise>
+              </xsl:choose>
+            </xsl:otherwise>
+          </xsl:choose>
+        </gmd:keyword>
+      </xsl:for-each>
+
+      <!-- If no keyword, add one to avoid invalid metadata -->
+      <xsl:if test="count(//keyword[thesaurus/key = $currentThesaurus]) = 0">
+        <gmd:keyword gco:nilReason="missing">
+          <gco:CharacterString></gco:CharacterString>
+        </gmd:keyword>
+      </xsl:if>
+
+      <xsl:copy-of
+        select="geonet:add-thesaurus-info($currentThesaurus, $withThesaurusAnchor, /root/gui/thesaurus/thesauri, not(/root/request/keywordOnly))"/>
+    </gmd:MD_Keywords>
+  </xsl:template>
+
+  <xsl:function name="geonet:add-thesaurus-info">
+    <xsl:param name="currentThesaurus" as="xs:string"/>
+    <xsl:param name="withThesaurusAnchor" as="xs:boolean"/>
+    <xsl:param name="thesauri" as="node()"/>
+    <xsl:param name="thesaurusInfo" as="xs:boolean"/>
+
+    <!-- Add thesaurus theme -->
+    <gmd:type>
+      <gmd:MD_KeywordTypeCode
+        codeList="http://www.isotc211.org/2005/resources/codeList.xml#MD_KeywordTypeCode"
+        codeListValue="{$thesauri/thesaurus[key = $currentThesaurus]/dname}"/>
+    </gmd:type>
+    <xsl:if test="$thesaurusInfo">
+      <gmd:thesaurusName>
+        <gmd:CI_Citation>
+          <gmd:title>
+            <gco:CharacterString>
+              <xsl:value-of select="$thesauri/thesaurus[key = $currentThesaurus]/title"/>
+            </gco:CharacterString>
+          </gmd:title>
+
+          <xsl:variable name="thesaurusDate"
+                        select="normalize-space($thesauri/thesaurus[key = $currentThesaurus]/date)"/>
+
+          <xsl:if test="$thesaurusDate != ''">
+            <gmd:date>
+              <gmd:CI_Date>
+                <gmd:date>
+                  <xsl:choose>
+                    <xsl:when test="contains($thesaurusDate, 'T')">
+                      <gco:DateTime>
+                        <xsl:value-of select="$thesaurusDate"/>
+                      </gco:DateTime>
+                    </xsl:when>
+                    <xsl:otherwise>
+                      <gco:Date>
+                        <xsl:value-of select="$thesaurusDate"/>
+                      </gco:Date>
+                    </xsl:otherwise>
+                  </xsl:choose>
+                </gmd:date>
+                <gmd:dateType>
+                  <gmd:CI_DateTypeCode
+                    codeList="http://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_19139_Schemas/resources/codelist/ML_gmxCodelists.xml#CI_DateTypeCode"
+                    codeListValue="publication"/>
+                </gmd:dateType>
+              </gmd:CI_Date>
+            </gmd:date>
+          </xsl:if>
+
+          <xsl:if test="$withThesaurusAnchor">
+            <gmd:identifier>
+              <gmd:MD_Identifier>
+                <gmd:code>
+                  <gmx:Anchor xlink:href="{$thesauri/thesaurus[key = $currentThesaurus]/url}">
+                    geonetwork.thesaurus.<xsl:value-of
+                    select="$currentThesaurus"/>
+                  </gmx:Anchor>
+                </gmd:code>
+              </gmd:MD_Identifier>
+            </gmd:identifier>
+          </xsl:if>
+        </gmd:CI_Citation>
+      </gmd:thesaurusName>
+    </xsl:if>
+  </xsl:function>
+
+  <!-- Convert a concept to an ISO19139 extent -->
+  <xsl:template name="to-iso19139-extent">
+    <xsl:param name="isService" select="false()"/>
+
+    <xsl:variable name="currentThesaurus" select="thesaurus/key"/>
+    <!-- Loop on all keyword from the same thesaurus -->
+    <xsl:for-each select="//keyword[thesaurus/key = $currentThesaurus]">
+      <xsl:choose>
+        <xsl:when test="$isService">
+          <srv:extent>
+            <xsl:copy-of
+              select="geonet:make-iso-extent(geo/west, geo/south, geo/east, geo/north, value)"/>
+          </srv:extent>
+        </xsl:when>
+        <xsl:otherwise>
+          <gmd:extent>
+            <xsl:copy-of
+              select="geonet:make-iso-extent(geo/west, geo/south, geo/east, geo/north, value)"/>
+          </gmd:extent>
+        </xsl:otherwise>
+      </xsl:choose>
+    </xsl:for-each>
+  </xsl:template>
+</xsl:stylesheet>
diff --git a/src/main/webapp/WEB-INF/data/config/schema_plugins/iso19139/index-fields/default.xsl b/src/main/webapp/WEB-INF/data/config/schema_plugins/iso19139/index-fields/default.xsl
new file mode 100644
index 0000000..3ae51ba
--- /dev/null
+++ b/src/main/webapp/WEB-INF/data/config/schema_plugins/iso19139/index-fields/default.xsl
@@ -0,0 +1,1103 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!--
+  ~ Copyright (C) 2001-2016 Food and Agriculture Organization of the
+  ~ United Nations (FAO-UN), United Nations World Food Programme (WFP)
+  ~ and United Nations Environment Programme (UNEP)
+  ~
+  ~ This program is free software; you can redistribute it and/or modify
+  ~ it under the terms of the GNU General Public License as published by
+  ~ the Free Software Foundation; either version 2 of the License, or (at
+  ~ your option) any later version.
+  ~
+  ~ This program is distributed in the hope that it will be useful, but
+  ~ WITHOUT ANY WARRANTY; without even the implied warranty of
+  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+  ~ General Public License for more details.
+  ~
+  ~ You should have received a copy of the GNU General Public License
+  ~ along with this program; if not, write to the Free Software
+  ~ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
+  ~
+  ~ Contact: Jeroen Ticheler - FAO - Viale delle Terme di Caracalla 2,
+  ~ Rome - Italy. email: geonetwork@osgeo.org
+  -->
+
+<xsl:stylesheet xmlns:gmd="http://www.isotc211.org/2005/gmd"
+                xmlns:gco="http://www.isotc211.org/2005/gco"
+                xmlns:gml="http://www.opengis.net/gml"
+                xmlns:srv="http://www.isotc211.org/2005/srv"
+                xmlns:geonet="http://www.fao.org/geonetwork"
+                xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+                xmlns:gmx="http://www.isotc211.org/2005/gmx"
+                xmlns:xlink="http://www.w3.org/1999/xlink"
+                xmlns:util="java:org.fao.geonet.util.XslUtil"
+                xmlns:skos="http://www.w3.org/2004/02/skos/core#"
+                xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+                version="2.0"
+                exclude-result-prefixes="#all">
+
+  <xsl:include href="../convert/functions.xsl"/>
+  <xsl:include href="../../../xsl/utils-fn.xsl"/>
+  <xsl:include href="index-subtemplate-fields.xsl"/>
+
+  <!-- This file defines what parts of the metadata are indexed by Lucene
+       Searches can be conducted on indexes defined here.
+       The Field@name attribute defines the name of the search variable.
+       If a variable has to be maintained in the user session, it needs to be
+       added to the GeoNetwork constants in the Java source code.
+       Please keep indexes consistent among metadata standards if they should
+       work across different metadata resources -->
+  <!-- ========================================================================================= -->
+
+  <xsl:output method="xml" version="1.0" encoding="UTF-8" indent="no"/>
+
+
+  <!-- ========================================================================================= -->
+
+  <xsl:param name="thesauriDir"/>
+  <xsl:param name="inspire">false</xsl:param>
+
+  <xsl:variable name="inspire-thesaurus"
+                select="if ($inspire!='false') then document(concat('file:///', replace($thesauriDir, '\\', '/'), '/external/thesauri/theme/inspire-theme.rdf')) else ''"/>
+  <xsl:variable name="inspire-theme"
+                select="if ($inspire!='false') then $inspire-thesaurus//skos:Concept else ''"/>
+
+  <!-- If identification creation, publication and revision date
+    should be indexed as a temporal extent information (eg. in INSPIRE
+    metadata implementing rules, those elements are defined as part
+    of the description of the temporal extent). -->
+  <xsl:variable name="useDateAsTemporalExtent" select="false()"/>
+
+  <!-- Define the way keyword and thesaurus are indexed. If false
+  only keyword, thesaurusName and thesaurusType field are created.
+  If true, advanced field are created to make more details query
+  on keyword type and search by thesaurus. Index size is bigger
+  but more detailed facet can be configured based on each thesaurus.
+  -->
+  <xsl:variable name="indexAllKeywordDetails" select="true()"/>
+
+  <!-- For record not having status obsolete, flag them as non
+  obsolete records. Some catalog like to restrict to non obsolete
+  records only the default search. -->
+  <xsl:variable name="flagNonObseleteRecords" select="false()"/>
+
+
+  <!-- The main metadata language -->
+  <xsl:variable name="isoLangId">
+    <xsl:call-template name="langId19139"/>
+  </xsl:variable>
+
+  <!-- ========================================================================================= -->
+  <xsl:template match="/">
+    <Document locale="{$isoLangId}">
+      <Field name="_locale" string="{$isoLangId}" store="true" index="true"/>
+
+      <Field name="_docLocale" string="{$isoLangId}" store="true" index="true"/>
+
+      <xsl:variable name="_defaultTitle">
+        <xsl:call-template name="defaultTitle">
+          <xsl:with-param name="isoDocLangId" select="$isoLangId"/>
+        </xsl:call-template>
+      </xsl:variable>
+
+      <Field name="_defaultTitle" string="{string($_defaultTitle)}" store="true" index="true"/>
+
+      <!-- not tokenized title for sorting, needed for multilingual sorting -->
+      <xsl:if test="geonet:info/isTemplate != 's'">
+        <Field name="_title" string="{string($_defaultTitle)}" store="true" index="true"/>
+      </xsl:if>
+
+      <xsl:apply-templates select="*[name(.)='gmd:MD_Metadata' or @gco:isoType='gmd:MD_Metadata']"
+                           mode="metadata"/>
+
+      <xsl:apply-templates mode="index" select="*"/>
+
+    </Document>
+  </xsl:template>
+
+
+  <!-- Add index mode template in order to easily add new field in the index (eg. in profiles).
+
+  For example, index some keywords from a specific thesaurus in a new field:
+  <xsl:template mode="index"
+      match="gmd:MD_Keywords[gmd:thesaurusName/gmd:CI_Citation/
+                  gmd:title/gco:CharacterString='My thesaurus']/
+                  gmd:keyword[normalize-space(gco:CharacterString) != '']">
+      <Field name="myThesaurusKeyword" string="{string(.)}" store="true" index="true"/>
+  </xsl:template>
+
+  Note: if more than one template match the same element in a mode, only one will be
+  used (usually the last one).
+
+  If matching a upper level element, apply mode to its child to further index deeper level if required:
+      <xsl:template mode="index" match="gmd:EX_Extent">
+          ... do something
+          ... and continue indexing
+          <xsl:apply-templates mode="index" select="*"/>
+      </xsl:template>
+  -->
+  <xsl:template mode="index" match="*|@*">
+    <xsl:apply-templates mode="index" select="*|@*"/>
+  </xsl:template>
+
+
+  <xsl:template mode="index"
+                match="gmd:extent/gmd:EX_Extent/gmd:description/gco:CharacterString[normalize-space(.) != '']">
+    <Field name="extentDesc" string="{string(.)}" store="false" index="true"/>
+  </xsl:template>
+
+
+  <!-- ========================================================================================= -->
+
+  <xsl:template match="*" mode="metadata">
+
+    <!-- === Data or Service Identification === -->
+
+    <!-- the double // here seems needed to index MD_DataIdentification when
+         it is nested in a SV_ServiceIdentification class -->
+
+    <xsl:for-each select="gmd:identificationInfo//gmd:MD_DataIdentification|
+                gmd:identificationInfo//*[contains(@gco:isoType, 'MD_DataIdentification')]|
+                gmd:identificationInfo/srv:SV_ServiceIdentification">
+
+      <xsl:for-each select="gmd:citation/gmd:CI_Citation">
+        <xsl:for-each select="gmd:identifier/gmd:MD_Identifier/gmd:code/gco:CharacterString">
+          <Field name="identifier" string="{string(.)}" store="true" index="true"/>
+        </xsl:for-each>
+
+        <xsl:for-each select="gmd:identifier/gmd:RS_Identifier/gmd:code/gco:CharacterString">
+          <Field name="identifier" string="{string(.)}" store="true" index="true"/>
+        </xsl:for-each>
+
+
+        <xsl:for-each select="gmd:title/gco:CharacterString">
+          <Field name="title" string="{string(.)}" store="true" index="true"/>
+          <!-- not tokenized title for sorting -->
+          <Field name="_title" string="{string(.)}" store="false" index="true"/>
+        </xsl:for-each>
+
+        <xsl:for-each select="gmd:alternateTitle/gco:CharacterString">
+          <Field name="altTitle" string="{string(.)}" store="true" index="true"/>
+        </xsl:for-each>
+
+        <xsl:for-each
+          select="gmd:date/gmd:CI_Date[gmd:dateType/gmd:CI_DateTypeCode/@codeListValue='revision']/gmd:date">
+          <Field name="revisionDate" string="{string(gco:Date[.!='']|gco:DateTime[.!=''])}"
+                 store="true" index="true"/>
+          <Field name="createDateMonth"
+                 string="{substring(gco:Date[.!='']|gco:DateTime[.!=''], 0, 8)}" store="true"
+                 index="true"/>
+          <Field name="createDateYear"
+                 string="{substring(gco:Date[.!='']|gco:DateTime[.!=''], 0, 5)}" store="true"
+                 index="true"/>
+          <xsl:if test="$useDateAsTemporalExtent">
+            <Field name="tempExtentBegin" string="{string(gco:Date[.!='']|gco:DateTime[.!=''])}"
+                   store="true" index="true"/>
+          </xsl:if>
+        </xsl:for-each>
+
+        <xsl:for-each
+          select="gmd:date/gmd:CI_Date[gmd:dateType/gmd:CI_DateTypeCode/@codeListValue='creation']/gmd:date">
+          <Field name="createDate" string="{string(gco:Date[.!='']|gco:DateTime[.!=''])}"
+                 store="true" index="true"/>
+          <Field name="createDateMonth"
+                 string="{substring(gco:Date[.!='']|gco:DateTime[.!=''], 0, 8)}" store="true"
+                 index="true"/>
+          <Field name="createDateYear"
+                 string="{substring(gco:Date[.!='']|gco:DateTime[.!=''], 0, 5)}" store="true"
+                 index="true"/>
+          <xsl:if test="$useDateAsTemporalExtent">
+            <Field name="tempExtentBegin" string="{string(gco:Date[.!='']|gco:DateTime[.!=''])}"
+                   store="true" index="true"/>
+          </xsl:if>
+        </xsl:for-each>
+
+        <xsl:for-each
+          select="gmd:date/gmd:CI_Date[gmd:dateType/gmd:CI_DateTypeCode/@codeListValue='publication']/gmd:date">
+          <Field name="publicationDate" string="{string(gco:Date[.!='']|gco:DateTime[.!=''])}"
+                 store="true" index="true"/>
+          <xsl:if test="$useDateAsTemporalExtent">
+            <Field name="tempExtentBegin" string="{string(gco:Date[.!='']|gco:DateTime[.!=''])}"
+                   store="true" index="true"/>
+          </xsl:if>
+        </xsl:for-each>
+
+        <!-- fields used to search for metadata in paper or digital format -->
+
+        <xsl:for-each select="gmd:presentationForm">
+          <xsl:if test="contains(gmd:CI_PresentationFormCode/@codeListValue, 'Digital')">
+            <Field name="digital" string="true" store="false" index="true"/>
+          </xsl:if>
+
+          <xsl:if test="contains(gmd:CI_PresentationFormCode/@codeListValue, 'Hardcopy')">
+            <Field name="paper" string="true" store="false" index="true"/>
+          </xsl:if>
+        </xsl:for-each>
+      </xsl:for-each>
+
+      <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
+
+      <xsl:for-each select="gmd:pointOfContact[1]/*/gmd:role/*/@codeListValue">
+        <Field name="responsiblePartyRole" string="{string(.)}" store="true" index="true"/>
+      </xsl:for-each>
+
+      <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
+
+      <xsl:for-each select="gmd:abstract/gco:CharacterString">
+        <Field name="abstract" string="{string(.)}" store="true" index="true"/>
+      </xsl:for-each>
+
+      <xsl:for-each select="gmd:credit/gco:CharacterString">
+        <Field name="credit" string="{string(.)}" store="true" index="true"/>
+      </xsl:for-each>
+
+
+      <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
+
+      <xsl:for-each select="*/gmd:EX_Extent">
+        <xsl:apply-templates select="gmd:geographicElement/gmd:EX_GeographicBoundingBox"
+                             mode="latLon"/>
+
+        <xsl:for-each select="gmd:description/gco:CharacterString[normalize-space(.) != '']">
+          <Field name="extentDesc" string="{string(.)}" store="true" index="true"/>
+        </xsl:for-each>
+
+        <xsl:for-each
+          select="gmd:geographicElement/gmd:EX_GeographicDescription/gmd:geographicIdentifier/gmd:MD_Identifier/gmd:code/gco:CharacterString">
+          <Field name="geoDescCode" string="{string(.)}" store="true" index="true"/>
+        </xsl:for-each>
+
+        <xsl:for-each select="gmd:temporalElement/
+                                  (gmd:EX_TemporalExtent|gmd:EX_SpatialTemporalExtent)/gmd:extent">
+          <xsl:for-each select="gml:TimePeriod">
+
+            <xsl:variable name="times">
+              <xsl:call-template name="newGmlTime">
+                <xsl:with-param name="begin"
+                                select="gml:beginPosition|gml:begin/gml:TimeInstant/gml:timePosition"/>
+                <xsl:with-param name="end"
+                                select="gml:endPosition|gml:end/gml:TimeInstant/gml:timePosition"/>
+              </xsl:call-template>
+            </xsl:variable>
+
+            <Field name="tempExtentBegin" string="{lower-case(substring-before($times,'|'))}"
+                   store="true" index="true"/>
+            <Field name="tempExtentEnd" string="{lower-case(substring-after($times,'|'))}"
+                   store="true" index="true"/>
+          </xsl:for-each>
+
+        </xsl:for-each>
+      </xsl:for-each>
+
+      <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
+
+      <xsl:for-each select="//gmd:MD_Keywords">
+        <!-- Index all keywords as text or anchor -->
+        <xsl:variable name="listOfKeywords"
+                      select="gmd:keyword/gco:CharacterString|
+                                        gmd:keyword/gmx:Anchor"/>
+        <xsl:for-each select="$listOfKeywords">
+          <xsl:variable name="keyword" select="string(.)"/>
+
+          <Field name="keyword" string="{$keyword}" store="true" index="true"/>
+
+          <!-- If INSPIRE is enabled, check if the keyword is one of the 34 themes
+               and index annex, theme and theme in english. -->
+          <xsl:if test="$inspire='true'">
+            <xsl:if test="string-length(.) &gt; 0">
+
+              <xsl:variable name="inspireannex">
+                <xsl:call-template name="determineInspireAnnex">
+                  <xsl:with-param name="keyword" select="$keyword"/>
+                  <xsl:with-param name="inspireThemes" select="$inspire-theme"/>
+                </xsl:call-template>
+              </xsl:variable>
+
+              <xsl:variable name="inspireThemeAcronym">
+                <xsl:call-template name="getInspireThemeAcronym">
+                  <xsl:with-param name="keyword" select="$keyword"/>
+                </xsl:call-template>
+              </xsl:variable>
+
+              <!-- Add the inspire field if it's one of the 34 themes -->
+              <xsl:if test="normalize-space($inspireannex)!=''">
+                <Field name="inspiretheme" string="{$keyword}" store="true" index="true"/>
+                <Field name="inspirethemewithac"
+                       string="{concat($inspireThemeAcronym, '|', $keyword)}"
+                       store="true" index="true"/>
+
+                <!--<Field name="inspirethemeacronym" string="{$inspireThemeAcronym}" store="true" index="true"/>-->
+                <xsl:variable name="inspireThemeURI"
+                              select="$inspire-theme[skos:prefLabel = $keyword]/@rdf:about"/>
+                <Field name="inspirethemeuri" string="{$inspireThemeURI}" store="true"
+                       index="true"/>
+
+                <xsl:variable name="englishInspireTheme">
+                  <xsl:call-template name="translateInspireThemeToEnglish">
+                    <xsl:with-param name="keyword" select="$keyword"/>
+                    <xsl:with-param name="inspireThemes" select="$inspire-theme"/>
+                  </xsl:call-template>
+                </xsl:variable>
+
+                <Field name="inspiretheme_en" string="{$englishInspireTheme}" store="true"
+                       index="true"/>
+                <Field name="inspireannex" string="{$inspireannex}" store="true" index="true"/>
+                <!-- FIXME : inspirecat field will be set multiple time if one record has many themes -->
+                <Field name="inspirecat" string="true" store="false" index="true"/>
+              </xsl:if>
+            </xsl:if>
+          </xsl:if>
+        </xsl:for-each>
+
+        <!-- Index thesaurus name to easily search for records
+        using keyword from a thesaurus. -->
+        <xsl:for-each select="gmd:thesaurusName/gmd:CI_Citation">
+          <xsl:variable name="thesaurusIdentifier"
+                        select="gmd:identifier/gmd:MD_Identifier/gmd:code/gmx:Anchor/text()"/>
+
+          <xsl:if test="$thesaurusIdentifier != ''">
+            <Field name="thesaurusIdentifier"
+                   string="{substring-after($thesaurusIdentifier,'geonetwork.thesaurus.')}"
+                   store="true" index="true"/>
+          </xsl:if>
+          <xsl:if test="gmd:title/gco:CharacterString/text() != ''">
+            <Field name="thesaurusName"
+                   string="{gmd:title/gco:CharacterString/text()}"
+                   store="true" index="true"/>
+          </xsl:if>
+
+
+          <xsl:if test="$indexAllKeywordDetails and $thesaurusIdentifier != ''">
+            <!-- field thesaurus-{{thesaurusIdentifier}}={{keyword}} allows
+            to group all keywords of same thesaurus in a field -->
+            <xsl:variable name="currentType" select="string(.)"/>
+
+            <xsl:for-each select="$listOfKeywords">
+              <Field
+                name="thesaurus-{substring-after($thesaurusIdentifier,'geonetwork.thesaurus.')}"
+                string="{string(.)}"
+                store="true" index="true"/>
+
+            </xsl:for-each>
+          </xsl:if>
+        </xsl:for-each>
+
+        <!-- Index thesaurus type -->
+        <xsl:for-each select="gmd:type/gmd:MD_KeywordTypeCode/@codeListValue">
+          <Field name="keywordType" string="{string(.)}" store="true" index="true"/>
+          <xsl:if test="$indexAllKeywordDetails">
+            <!-- field thesaurusType{{type}}={{keyword}} allows
+            to group all keywords of same type in a field -->
+            <xsl:variable name="currentType" select="string(.)"/>
+            <xsl:for-each select="$listOfKeywords">
+              <Field name="keywordType-{$currentType}"
+                     string="{string(.)}"
+                     store="true" index="true"/>
+            </xsl:for-each>
+          </xsl:if>
+        </xsl:for-each>
+      </xsl:for-each>
+
+      <xsl:variable name="listOfKeywords">{
+        <xsl:variable name="keywordWithNoThesaurus"
+                      select="//gmd:MD_Keywords[
+                                not(gmd:thesaurusName) or gmd:thesaurusName/*/gmd:title/*/text() = '']/
+                                  gmd:keyword[*/text() != '']"/>
+        <xsl:if test="count($keywordWithNoThesaurus) > 0">
+          'keywords': [
+          <xsl:for-each select="$keywordWithNoThesaurus/(gco:CharacterString|gmx:Anchor)">
+            <xsl:value-of select="concat('''', replace(., '''', '\\'''), '''')"/>
+            <xsl:if test="position() != last()">,</xsl:if>
+          </xsl:for-each>
+          ]
+          <xsl:if test="//gmd:MD_Keywords[gmd:thesaurusName]">,</xsl:if>
+        </xsl:if>
+        <xsl:for-each-group select="//gmd:MD_Keywords[gmd:thesaurusName/*/gmd:title/*/text() != '']"
+                            group-by="gmd:thesaurusName/*/gmd:title/*/text()">
+          '<xsl:value-of select="replace(current-grouping-key(), '''', '\\''')"/>' :[
+          <xsl:for-each select="gmd:keyword/(gco:CharacterString|gmx:Anchor)">
+            <xsl:value-of select="concat('''', replace(., '''', '\\'''), '''')"/>
+            <xsl:if test="position() != last()">,</xsl:if>
+          </xsl:for-each>
+          ]
+          <xsl:if test="position() != last()">,</xsl:if>
+        </xsl:for-each-group>
+        }
+      </xsl:variable>
+
+      <Field name="keywordGroup"
+             string="{normalize-space($listOfKeywords)}"
+             store="true"
+             index="false"/>
+
+      <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
+
+      <xsl:for-each select="gmd:pointOfContact">
+        <xsl:apply-templates mode="index-contact"
+                             select="gmd:CI_ResponsibleParty|*[@gco:isoType = 'gmd:CI_ResponsibleParty']">
+          <xsl:with-param name="type" select="'resource'"/>
+          <xsl:with-param name="fieldPrefix" select="'responsibleParty'"/>
+          <xsl:with-param name="position" select="position()"/>
+        </xsl:apply-templates>
+      </xsl:for-each>
+
+      <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
+
+      <xsl:choose>
+        <xsl:when test="gmd:resourceConstraints/gmd:MD_SecurityConstraints">
+          <Field name="secConstr" string="true" store="true" index="true"/>
+        </xsl:when>
+        <xsl:otherwise>
+          <Field name="secConstr" string="false" store="true" index="true"/>
+        </xsl:otherwise>
+      </xsl:choose>
+
+
+      <!-- Add an extra value to the status codelist to indicate all
+      non obsolete records -->
+      <xsl:if test="$flagNonObseleteRecords">
+        <xsl:variable name="isNotObsolete"
+                      select="count(gmd:status[gmd:MD_ProgressCode/@codeListValue = 'obsolete']) = 0"/>
+        <xsl:if test="$isNotObsolete">
+          <Field name="cl_status" string="notobsolete" store="true" index="true"/>
+        </xsl:if>
+      </xsl:if>
+
+      <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
+
+      <xsl:for-each select="gmd:topicCategory/gmd:MD_TopicCategoryCode">
+        <Field name="topicCat" string="{string(.)}" store="true" index="true"/>
+        <Field name="keyword"
+               string="{util:getCodelistTranslation('gmd:MD_TopicCategoryCode', string(.), string($isoLangId))}"
+               store="true" index="true"/>
+      </xsl:for-each>
+
+      <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
+
+      <xsl:for-each
+        select="gmd:language/gco:CharacterString|gmd:language/gmd:LanguageCode/@codeListValue">
+        <Field name="datasetLang" string="{string(.)}" store="true" index="true"/>
+      </xsl:for-each>
+
+      <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
+
+      <xsl:for-each select="gmd:spatialResolution/gmd:MD_Resolution">
+        <xsl:for-each
+          select="gmd:equivalentScale/gmd:MD_RepresentativeFraction/gmd:denominator/gco:Integer">
+          <Field name="denominator" string="{string(.)}" store="true" index="true"/>
+        </xsl:for-each>
+
+        <xsl:for-each select="gmd:distance/gco:Distance">
+          <Field name="distanceVal" string="{string(.)}" store="true" index="true"/>
+        </xsl:for-each>
+
+        <xsl:for-each select="gmd:distance/gco:Distance/@uom">
+          <Field name="distanceUom" string="{string(.)}" store="true" index="true"/>
+        </xsl:for-each>
+
+        <xsl:for-each select="gmd:distance/gco:Distance">
+          <!-- Units may be encoded as
+          http://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_19139_Schemas/resources/uom/ML_gmxUom.xml#m
+          in such case retrieve the unit acronym only. -->
+          <xsl:variable name="unit"
+                        select="if (contains(@uom, '#')) then substring-after(@uom, '#') else @uom"/>
+          <Field name="resolution" string="{concat(string(.), ' ', $unit)}" store="true"
+                 index="true"/>
+        </xsl:for-each>
+      </xsl:for-each>
+
+      <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
+
+      <xsl:for-each select="gmd:resourceMaintenance/
+                                gmd:MD_MaintenanceInformation/gmd:maintenanceAndUpdateFrequency/
+                                gmd:MD_MaintenanceFrequencyCode/@codeListValue[. != '']">
+        <Field name="updateFrequency" string="{string(.)}" store="true" index="true"/>
+      </xsl:for-each>
+
+
+      <xsl:for-each select="gmd:resourceConstraints/*">
+        <xsl:variable name="fieldPrefix" select="local-name()"/>
+
+        <xsl:for-each
+          select="gmd:accessConstraints/gmd:MD_RestrictionCode/@codeListValue[string(.) != 'otherRestrictions']">
+          <Field name="{$fieldPrefix}AccessConstraints"
+                 string="{string(.)}" store="true" index="true"/>
+        </xsl:for-each>
+
+        <xsl:for-each select="gmd:otherConstraints/gco:CharacterString">
+          <Field name="{$fieldPrefix}OtherConstraints"
+                 string="{string(.)}" store="true" index="true"/>
+        </xsl:for-each>
+
+        <xsl:for-each select="gmd:useLimitation/gco:CharacterString">
+            <Field name="{$fieldPrefix}UseLimitation"
+                   string="{string(.)}" store="true" index="true"/>
+        </xsl:for-each>
+
+        <xsl:for-each select="gmd:useLimitation/gmx:Anchor[not(string(@xlink:href))]">
+            <Field name="{$fieldPrefix}UseLimitation"
+                   string="{string(.)}" store="true" index="true"/>
+        </xsl:for-each>
+
+        <xsl:for-each select="gmd:useLimitation/gmx:Anchor[string(@xlink:href)]">
+            <Field name="{$fieldPrefix}UseLimitation"
+                   string="{concat('link|',string(@xlink:href), '|', string(.))}" store="true" index="true"/>
+        </xsl:for-each>
+      </xsl:for-each>
+
+      <!-- Index aggregation info and provides option to query by type of association
+              and type of initiative
+
+      Aggregation info is indexed by adding the following fields to the index:
+       * agg_use: boolean
+       * agg_with_association: {$associationType}
+       * agg_{$associationType}: {$code}
+       * agg_{$associationType}_with_initiative: {$initiativeType}
+       * agg_{$associationType}_{$initiativeType}: {$code}
+
+          Sample queries:
+           * Search for records with siblings: http://localhost:8080/geonetwork/srv/fre/q?agg_use=true
+           * Search for records having a crossReference with another record:
+           http://localhost:8080/geonetwork/srv/fre/q?agg_crossReference=23f0478a-14ba-4a24-b365-8be88d5e9e8c
+           * Search for records having a crossReference with another record:
+           http://localhost:8080/geonetwork/srv/fre/q?agg_crossReference=23f0478a-14ba-4a24-b365-8be88d5e9e8c
+           * Search for records having a crossReference of type "study" with another record:
+           http://localhost:8080/geonetwork/srv/fre/q?agg_crossReference_study=23f0478a-14ba-4a24-b365-8be88d5e9e8c
+           * Search for records having a crossReference of type "study":
+           http://localhost:8080/geonetwork/srv/fre/q?agg_crossReference_with_initiative=study
+           * Search for records having a "crossReference" :
+           http://localhost:8080/geonetwork/srv/fre/q?agg_with_association=crossReference
+      -->
+      <xsl:for-each select="gmd:aggregationInfo/gmd:MD_AggregateInformation">
+        <xsl:variable name="code" select="gmd:aggregateDataSetIdentifier/gmd:MD_Identifier/gmd:code/gco:CharacterString|
+                                                  gmd:aggregateDataSetIdentifier/gmd:RS_Identifier/gmd:code/gco:CharacterString"/>
+        <xsl:if test="$code != ''">
+          <xsl:variable name="associationType"
+                        select="gmd:associationType/gmd:DS_AssociationTypeCode/@codeListValue"/>
+          <xsl:variable name="initiativeType"
+                        select="gmd:initiativeType/gmd:DS_InitiativeTypeCode/@codeListValue"/>
+
+          <Field name="agg_{$associationType}_{$initiativeType}" string="{$code}" store="false"
+                 index="true"/>
+          <Field name="agg_{$associationType}_with_initiative" string="{$initiativeType}"
+                 store="false" index="true"/>
+          <Field name="agg_{$associationType}" string="{$code}" store="true" index="true"/>
+          <Field name="agg_associated" string="{$code}" store="false" index="true"/>
+          <Field name="agg_with_association" string="{$associationType}" store="false"
+                 index="true"/>
+          <Field name="agg_use" string="true" store="false" index="true"/>
+        </xsl:if>
+      </xsl:for-each>
+
+      <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
+      <!--  Fields use to search on Service -->
+
+      <xsl:for-each select="srv:serviceType/gco:LocalName">
+        <Field name="serviceType" string="{string(.)}" store="true" index="true"/>
+        <Field  name="type" string="service-{string(.)}" store="true" index="true"/>
+      </xsl:for-each>
+
+      <xsl:for-each select="srv:serviceTypeVersion/gco:CharacterString">
+        <Field name="serviceTypeVersion" string="{string(.)}" store="true" index="true"/>
+      </xsl:for-each>
+
+      <xsl:for-each select="//srv:SV_OperationMetadata/srv:operationName/gco:CharacterString">
+        <Field name="operation" string="{string(.)}" store="true" index="true"/>
+      </xsl:for-each>
+
+      <xsl:for-each select="srv:operatesOn/@uuidref">
+        <Field name="operatesOn" string="{string(.)}" store="true" index="true"/>
+      </xsl:for-each>
+
+      <xsl:for-each select="srv:operatesOn/@xlink:href">
+        <Field name="operatesOn" string="{string(.)}" store="true" index="true"/>
+      </xsl:for-each>
+
+
+      <xsl:for-each select="srv:coupledResource">
+        <xsl:for-each select="srv:SV_CoupledResource/srv:identifier/gco:CharacterString">
+          <Field name="operatesOnIdentifier" string="{string(.)}" store="true" index="true"/>
+        </xsl:for-each>
+
+        <xsl:for-each select="srv:SV_CoupledResource/srv:operationName/gco:CharacterString">
+          <Field name="operatesOnName" string="{string(.)}" store="true" index="true"/>
+        </xsl:for-each>
+      </xsl:for-each>
+
+      <xsl:for-each
+        select="gmd:graphicOverview/gmd:MD_BrowseGraphic[normalize-space(gmd:fileName/gco:CharacterString) != '']">
+        <xsl:variable name="fileName" select="gmd:fileName/gco:CharacterString"/>
+        <xsl:variable name="fileDescr" select="gmd:fileDescription/gco:CharacterString"/>
+        <xsl:variable name="thumbnailType"
+                      select="if (position() = 1) then 'thumbnail' else 'overview'"/>
+        <!-- First thumbnail is flagged as thumbnail and could be considered the main one -->
+        <Field name="image"
+               string="{concat($thumbnailType, '|', $fileName, '|', $fileDescr)}"
+               store="true" index="false"/>
+      </xsl:for-each>
+    </xsl:for-each>
+
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <!-- === Distribution === -->
+
+    <xsl:for-each select="gmd:distributionInfo/gmd:MD_Distribution">
+      <xsl:for-each select="gmd:distributionFormat/gmd:MD_Format/gmd:name/gco:CharacterString">
+        <Field name="format" string="{string(.)}" store="true" index="true"/>
+      </xsl:for-each>
+
+      <!-- index online protocol -->
+      <xsl:for-each select="gmd:transferOptions/gmd:MD_DigitalTransferOptions">
+        <xsl:variable name="tPosition" select="position()"></xsl:variable>
+        <xsl:for-each select="gmd:onLine/gmd:CI_OnlineResource[gmd:linkage/gmd:URL!='']">
+          <xsl:variable name="download_check">
+            <xsl:text>&amp;fname=&amp;access</xsl:text>
+          </xsl:variable>
+          <xsl:variable name="linkage" select="gmd:linkage/gmd:URL"/>
+          <xsl:variable name="title"
+                        select="normalize-space(gmd:name/gco:CharacterString|gmd:name/gmx:MimeFileType)"/>
+          <xsl:variable name="desc" select="normalize-space(gmd:description/gco:CharacterString)"/>
+          <xsl:variable name="protocol" select="normalize-space(gmd:protocol/gco:CharacterString)"/>
+          <xsl:variable name="mimetype"
+                        select="geonet:protocolMimeType($linkage, $protocol, gmd:name/gmx:MimeFileType/@type)"/>
+
+          <!-- If the linkage points to WMS service and no protocol specified, manage as protocol OGC:WMS -->
+          <xsl:variable name="wmsLinkNoProtocol"
+                        select="contains(lower-case($linkage), 'service=wms') and not(string($protocol))"/>
+
+          <!-- ignore empty downloads -->
+          <xsl:if test="string($linkage)!='' and not(contains($linkage,$download_check))">
+            <Field name="protocol" string="{string($protocol)}" store="true" index="true"/>
+          </xsl:if>
+
+          <xsl:if
+            test="string($title)!='' and string($desc)!='' and not(contains($linkage,$download_check))">
+            <Field name="linkage_name_des" string="{string(concat($title, ':::', $desc))}"
+                   store="true" index="true"/>
+          </xsl:if>
+
+          <xsl:if test="normalize-space($mimetype)!=''">
+            <Field name="mimetype" string="{$mimetype}" store="true" index="true"/>
+          </xsl:if>
+
+          <xsl:if test="contains($protocol, 'WWW:DOWNLOAD')">
+            <Field name="download" string="true" store="false" index="true"/>
+          </xsl:if>
+
+          <xsl:if test="contains($protocol, 'OGC:WMS') or $wmsLinkNoProtocol">
+            <Field name="dynamic" string="true" store="false" index="true"/>
+          </xsl:if>
+
+          <!-- ignore WMS links without protocol (are indexed below with mimetype application/vnd.ogc.wms_xml) -->
+          <xsl:if test="not($wmsLinkNoProtocol)">
+            <Field name="link"
+                   string="{concat($title, '|', $desc, '|', $linkage, '|', $protocol, '|', $mimetype, '|', $tPosition)}"
+                   store="true" index="false"/>
+          </xsl:if>
+
+          <!-- Add KML link if WMS -->
+          <xsl:if
+            test="starts-with($protocol,'OGC:WMS') and string($linkage)!='' and string($title)!=''">
+            <!-- FIXME : relative path -->
+            <Field name="link" string="{concat($title, '|', $desc, '|',
+                                                '../../srv/en/google.kml?uuid=', /gmd:MD_Metadata/gmd:fileIdentifier/gco:CharacterString, '&amp;layers=', $title,
+                                                '|application/vnd.google-earth.kml+xml|application/vnd.google-earth.kml+xml', '|', $tPosition)}"
+                   store="true" index="false"/>
+          </xsl:if>
+
+          <!-- Try to detect Web Map Context by checking protocol or file extension -->
+          <xsl:if test="starts-with($protocol,'OGC:WMC') or contains($linkage,'.wmc')">
+            <Field name="link" string="{concat($title, '|', $desc, '|',
+                                                $linkage, '|application/vnd.ogc.wmc|application/vnd.ogc.wmc', '|', $tPosition)}"
+                   store="true" index="false"/>
+          </xsl:if>
+          <!-- Try to detect OWS Context by checking protocol or file extension -->
+          <xsl:if test="starts-with($protocol,'OGC:OWS-C') or contains($linkage,'.ows')">
+            <Field name="link" string="{concat($title, '|', $desc, '|',
+                                                $linkage, '|application/vnd.ogc.ows|application/vnd.ogc.ows', '|', $tPosition)}"
+                   store="true" index="false"/>
+          </xsl:if>
+
+          <xsl:if test="$wmsLinkNoProtocol">
+            <Field name="link" string="{concat($title, '|', $desc, '|',
+                                                $linkage, '|OGC:WMS|application/vnd.ogc.wms_xml', '|', $tPosition)}"
+                   store="true" index="false"/>
+          </xsl:if>
+        </xsl:for-each>
+      </xsl:for-each>
+
+    </xsl:for-each>
+
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <!-- === Content info === -->
+    <xsl:for-each select="gmd:contentInfo/*/gmd:featureCatalogueCitation[@uuidref]">
+      <Field name="hasfeaturecat" string="{string(@uuidref)}" store="false" index="true"/>
+    </xsl:for-each>
+
+    <!-- === Data Quality  === -->
+    <xsl:for-each select="gmd:dataQualityInfo/*/gmd:lineage//gmd:source[@uuidref]">
+      <Field name="hassource" string="{string(@uuidref)}" store="false" index="true"/>
+    </xsl:for-each>
+
+    <xsl:for-each select="gmd:dataQualityInfo/*/gmd:report/*/gmd:result">
+      <xsl:if test="$inspire='true'">
+        <!--
+            INSPIRE related dataset could contains a conformity section with:
+            * COMMISSION REGULATION (EU) No 1089/2010 of 23 November 2010 implementing Directive 2007/2/EC of the European Parliament and of the Council as regards interoperability of spatial data sets and services
+            * INSPIRE Data Specification on <Theme Name> - <version>
+            * INSPIRE Specification on <Theme Name> - <version> for CRS and GRID
+
+            Index those types of citation title to found dataset related to INSPIRE (which may be better than keyword
+            which are often used for other types of datasets).
+
+            "1089/2010" is maybe too fuzzy but could work for translated citation like "Règlement n°1089/2010, Annexe II-6" TODO improved
+        -->
+        <xsl:if test="(
+                                contains(gmd:DQ_ConformanceResult/gmd:specification/gmd:CI_Citation/gmd:title/gco:CharacterString, '1089/2010') or
+                                contains(gmd:DQ_ConformanceResult/gmd:specification/gmd:CI_Citation/gmd:title/gco:CharacterString, 'INSPIRE Data Specification') or
+                                contains(gmd:DQ_ConformanceResult/gmd:specification/gmd:CI_Citation/gmd:title/gco:CharacterString, 'INSPIRE Specification'))">
+          <Field name="inspirerelated" string="on" store="false" index="true"/>
+        </xsl:if>
+      </xsl:if>
+
+      <xsl:for-each select="//gmd:pass/gco:Boolean">
+        <Field name="degree" string="{string(.)}" store="true" index="true"/>
+      </xsl:for-each>
+
+      <xsl:for-each select="//gmd:specification/*/gmd:title/gco:CharacterString">
+        <Field name="specificationTitle" string="{string(.)}" store="true" index="true"/>
+      </xsl:for-each>
+
+      <xsl:for-each select="//gmd:specification/*/gmd:date/*/gmd:date">
+        <Field name="specificationDate" string="{string(gco:Date[.!='']|gco:DateTime[.!=''])}"
+               store="true" index="true"/>
+      </xsl:for-each>
+
+      <xsl:for-each
+        select="//gmd:specification/*/gmd:date/*/gmd:dateType/gmd:CI_DateTypeCode/@codeListValue">
+        <Field name="specificationDateType" string="{string(.)}" store="true" index="true"/>
+      </xsl:for-each>
+    </xsl:for-each>
+
+    <xsl:for-each select="gmd:dataQualityInfo/*/gmd:lineage/*/gmd:statement/gco:CharacterString">
+      <Field name="lineage" string="{string(.)}" store="true" index="true"/>
+    </xsl:for-each>
+
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <!-- === General stuff === -->
+    <!-- Metadata type  -->
+
+    <!-- Metadata on maps -->
+    <xsl:variable name="isDataset"
+                  select="
+                  count(gmd:hierarchyLevel[gmd:MD_ScopeCode/@codeListValue='dataset']) > 0 or
+                  count(gmd:hierarchyLevel) = 0"/>
+
+    <xsl:variable name="isMapDigital" select="count(gmd:identificationInfo/*/gmd:citation/gmd:CI_Citation/
+                        gmd:presentationForm[gmd:CI_PresentationFormCode/@codeListValue = 'mapDigital']) > 0"/>
+    <xsl:variable name="isStatic" select="count(gmd:distributionInfo/gmd:MD_Distribution/
+                        gmd:distributionFormat/gmd:MD_Format/gmd:name/gco:CharacterString[contains(., 'PDF') or contains(., 'PNG') or contains(., 'JPEG')]) > 0"/>
+    <xsl:variable name="isInteractive" select="count(gmd:distributionInfo/gmd:MD_Distribution/
+                        gmd:distributionFormat/gmd:MD_Format/gmd:name/gco:CharacterString[contains(., 'OGC:WMC') or contains(., 'OGC:OWS-C')]) > 0"/>
+    <xsl:variable name="isPublishedWithWMCProtocol" select="count(gmd:distributionInfo/gmd:MD_Distribution/
+                        gmd:transferOptions/gmd:MD_DigitalTransferOptions/gmd:onLine/gmd:CI_OnlineResource/gmd:protocol[starts-with(gco:CharacterString, 'OGC:WMC')]) > 0"/>
+
+    <xsl:choose>
+      <xsl:when test="$isDataset and $isMapDigital and
+                            ($isStatic or $isInteractive or $isPublishedWithWMCProtocol)">
+        <Field name="type" string="map" store="true" index="true"/>
+        <xsl:choose>
+          <xsl:when test="$isStatic">
+            <Field name="type" string="staticMap" store="true" index="true"/>
+          </xsl:when>
+          <xsl:when test="$isInteractive or $isPublishedWithWMCProtocol">
+            <Field name="type" string="interactiveMap" store="true" index="true"/>
+          </xsl:when>
+        </xsl:choose>
+      </xsl:when>
+      <xsl:when test="$isDataset">
+        <Field name="type" string="dataset" store="true" index="true"/>
+      </xsl:when>
+      <xsl:when test="gmd:hierarchyLevel">
+        <xsl:for-each select="gmd:hierarchyLevel/gmd:MD_ScopeCode/@codeListValue[.!='']">
+          <Field name="type" string="{string(.)}" store="true" index="true"/>
+        </xsl:for-each>
+      </xsl:when>
+    </xsl:choose>
+
+
+    <xsl:choose>
+      <!-- Check if metadata is a service metadata record -->
+      <xsl:when test="gmd:identificationInfo/srv:SV_ServiceIdentification">
+        <Field name="type" string="service" store="false" index="true"/>
+      </xsl:when>
+      <!-- <xsl:otherwise>
+      ... gmd:*_DataIdentification / hierachicalLevel is used and return dataset, serie, ...
+      </xsl:otherwise>-->
+    </xsl:choose>
+
+<!-- ALK : différenciation des services et cartes -->
+      <xsl:choose>
+       <xsl:when test="gmd:identificationInfo/srv:SV_ServiceIdentification">
+        <xsl:choose>
+          <xsl:when test="gmd:identificationInfo/srv:SV_ServiceIdentification/srv:serviceType/gco:LocalName='invoke'">
+            <xsl:choose>
+              <xsl:when test="count(gmd:identificationInfo/srv:SV_ServiceIdentification/gmd:descriptiveKeywords/gmd:MD_Keywords/gmd:keyword/gco:CharacterString[contains(., 'infoChartAccessService')]) > 0">
+                <Field name="type" string="chart" store="true" index="true"/>
+              </xsl:when>
+              <xsl:otherwise>
+                <Field name="type" string="map" store="true" index="true"/>
+              </xsl:otherwise>
+            </xsl:choose>
+        </xsl:when>
+          <xsl:otherwise>
+            <Field name="type" string="service" store="false" index="true"/>
+          </xsl:otherwise>
+        </xsl:choose>
+      </xsl:when>
+       <!-- <xsl:otherwise>
+        ... gmd:*_DataIdentification / hierachicalLevel is used and return dataset, serie, ... 
+        </xsl:otherwise>-->
+      </xsl:choose>
+
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
+
+    <xsl:for-each select="gmd:hierarchyLevelName/gco:CharacterString">
+      <Field name="levelName" string="{string(.)}" store="false" index="true"/>
+    </xsl:for-each>
+
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
+
+    <xsl:for-each select="gmd:language/gco:CharacterString
+                        |gmd:language/gmd:LanguageCode/@codeListValue
+                        |gmd:locale/gmd:PT_Locale/gmd:languageCode/gmd:LanguageCode/@codeListValue">
+      <Field name="language" string="{string(.)}" store="true" index="true"/>
+      <Field name="mdLanguage" string="{string(.)}" store="true" index="true"/>
+    </xsl:for-each>
+
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
+
+    <xsl:for-each select="gmd:fileIdentifier/gco:CharacterString">
+      <Field name="fileId" string="{string(.)}" store="false" index="true"/>
+    </xsl:for-each>
+
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
+
+    <xsl:for-each select="gmd:parentIdentifier/gco:CharacterString">
+      <Field name="parentUuid" string="{string(.)}" store="true" index="true"/>
+    </xsl:for-each>
+    <Field name="isChild" string="{exists(gmd:parentIdentifier)}" store="true" index="true"/>
+
+
+    <xsl:for-each select="gmd:metadataStandardName/gco:CharacterString">
+      <Field name="standardName" string="{string(.)}" store="true" index="true"/>
+    </xsl:for-each>
+
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
+
+    <xsl:for-each select="gmd:dateStamp/*">
+      <Field name="changeDate" string="{string(.)}" store="true" index="true"/>
+    </xsl:for-each>
+
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
+
+    <xsl:for-each select="gmd:contact">
+      <Field name="metadataPOC"
+             string="{string(*/gmd:organisationName/(gco:CharacterString|gmx:Anchor))}"
+             store="true" index="true"/>
+      <xsl:apply-templates mode="index-contact" select="*">
+        <xsl:with-param name="type" select="'metadata'"/>
+        <xsl:with-param name="fieldPrefix" select="'responsibleParty'"/>
+        <xsl:with-param name="position" select="position()"/>
+      </xsl:apply-templates>
+    </xsl:for-each>
+
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <!-- === Reference system info === -->
+
+    <xsl:for-each select="gmd:referenceSystemInfo/gmd:MD_ReferenceSystem">
+        <xsl:for-each select="gmd:referenceSystemIdentifier/gmd:RS_Identifier">
+            <xsl:variable name="crs">
+                <xsl:for-each select="gmd:codeSpace/gco:CharacterString/text() | gmd:code/gco:CharacterString/text()">
+                    <xsl:value-of select="."/>
+                    <xsl:if test="not(position() = last())">::</xsl:if>
+                </xsl:for-each>
+            </xsl:variable>
+
+            <xsl:if test="$crs != ''">
+                <Field name="crs" string="{$crs}" store="true" index="true"/>
+            </xsl:if>
+        </xsl:for-each>
+    </xsl:for-each>
+
+    <xsl:for-each select="gmd:referenceSystemInfo/gmd:MD_ReferenceSystem">
+      <xsl:for-each select="gmd:referenceSystemIdentifier/gmd:RS_Identifier">
+        <Field name="authority" string="{string(gmd:codeSpace/gco:CharacterString)}" store="false"
+               index="true"/>
+        <Field name="crsCode" string="{string(gmd:code/gco:CharacterString)}" store="false"
+               index="true"/>
+        <Field name="crsVersion" string="{string(gmd:version/gco:CharacterString)}" store="false"
+               index="true"/>
+      </xsl:for-each>
+    </xsl:for-each>
+
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <!-- === Free text search === -->
+
+    <Field name="any" store="false" index="true">
+      <xsl:attribute name="string">
+        <xsl:value-of select="normalize-space(string(.))"/>
+        <xsl:text> </xsl:text>
+        <xsl:for-each select="//@codeListValue">
+          <xsl:value-of select="concat(., ' ')"/>
+        </xsl:for-each>
+      </xsl:attribute>
+    </Field>
+
+    <xsl:variable name="identification" select="gmd:identificationInfo//gmd:MD_DataIdentification|
+                        gmd:identificationInfo//*[contains(@gco:isoType, 'MD_DataIdentification')]|
+                        gmd:identificationInfo/srv:SV_ServiceIdentification"/>
+
+
+    <Field name="anylight" store="false" index="true">
+      <xsl:attribute name="string">
+        <xsl:for-each
+          select="$identification/gmd:citation/gmd:CI_Citation/gmd:title/gco:CharacterString|
+                    $identification/gmd:citation/gmd:CI_Citation/gmd:alternateTitle/gco:CharacterString|
+                    $identification/gmd:abstract/gco:CharacterString|
+                    $identification/gmd:credit/gco:CharacterString|
+                    $identification//gmd:organisationName/gco:CharacterString|
+                    $identification/gmd:supplementalInformation/gco:CharacterString|
+                    $identification/gmd:descriptiveKeywords/gmd:MD_Keywords/gmd:keyword/gco:CharacterString|
+                    $identification/gmd:descriptiveKeywords/gmd:MD_Keywords/gmd:keyword/gmx:Anchor">
+          <xsl:value-of select="concat(., ' ')"/>
+        </xsl:for-each>
+      </xsl:attribute>
+    </Field>
+
+
+    <!-- Index all codelist -->
+    <xsl:for-each select=".//*[*/@codeListValue != '']">
+      <Field name="cl_{local-name()}"
+             string="{*/@codeListValue}"
+             store="true" index="true"/>
+      <Field name="cl_{concat(local-name(), '_text')}"
+             string="{util:getCodelistTranslation(name(*), string(*/@codeListValue), string($isoLangId))}"
+             store="true" index="true"/>
+    </xsl:for-each>
+  </xsl:template>
+
+
+  <xsl:template mode="index-contact" match="gmd:CI_ResponsibleParty|*[@gco:isoType = 'gmd:CI_ResponsibleParty']">
+    <xsl:param name="type"/>
+    <xsl:param name="fieldPrefix"/>
+    <xsl:param name="position" select="'0'"/>
+
+    <xsl:variable name="orgName" select="gmd:organisationName/(gco:CharacterString|gmx:Anchor)"/>
+
+    <Field name="orgName" string="{string($orgName)}" store="true" index="true"/>
+    <Field name="orgNameTree" string="{string($orgName)}" store="true" index="true"/>
+
+    <xsl:variable name="uuid" select="@uuid"/>
+    <xsl:variable name="role" select="gmd:role/*/@codeListValue"/>
+    <xsl:variable name="roleTranslation"
+                  select="util:getCodelistTranslation('gmd:CI_RoleCode', string($role), string($isoLangId))"/>
+    <xsl:variable name="logo" select=".//gmx:FileName/@src"/>
+    <xsl:variable name="email"
+                  select="gmd:contactInfo/*/gmd:address/*/gmd:electronicMailAddress/gco:CharacterString"/>
+    <xsl:variable name="phone"
+                  select="gmd:contactInfo/*/gmd:phone/*/gmd:voice[normalize-space(.) != '']/*/text()"/>
+    <xsl:variable name="individualName"
+                  select="gmd:individualName/gco:CharacterString/text()"/>
+    <xsl:variable name="positionName"
+                  select="gmd:positionName/gco:CharacterString/text()"/>
+    <xsl:variable name="address" select="string-join(gmd:contactInfo/*/gmd:address/*/(
+                                        gmd:deliveryPoint|gmd:postalCode|gmd:city|
+                                        gmd:administrativeArea|gmd:country)/gco:CharacterString/text(), ', ')"/>
+
+    <Field name="{$fieldPrefix}"
+           string="{concat($roleTranslation, '|', $type,'|',
+                             $orgName, '|',
+                             $logo, '|',
+                             string-join($email, ','), '|',
+                             $individualName, '|',
+                             $positionName, '|',
+                             $address, '|',
+                             string-join($phone, ','), '|',
+                             $uuid, '|',
+                             $position)}"
+           store="true" index="false"/>
+
+    <xsl:for-each select="$email">
+      <Field name="{$fieldPrefix}Email" string="{string(.)}" store="true" index="true"/>
+      <Field name="{$fieldPrefix}RoleAndEmail" string="{$role}|{string(.)}" store="true" index="true"/>
+    </xsl:for-each>
+    <xsl:for-each select="@uuid">
+      <Field name="{$fieldPrefix}Uuid" string="{string(.)}" store="true" index="true"/>
+      <Field name="{$fieldPrefix}RoleAndUuid" string="{$role}|{string(.)}" store="true" index="true"/>
+    </xsl:for-each>
+  </xsl:template>
+
+  <!-- ========================================================================================= -->
+
+  <!-- inspireThemes is a nodeset consisting of skos:Concept elements -->
+  <!-- each containing a skos:definition and skos:prefLabel for each language -->
+  <!-- This template finds the provided keyword in the skos:prefLabel elements and
+  returns the English one from the same skos:Concept -->
+  <xsl:template name="translateInspireThemeToEnglish">
+    <xsl:param name="keyword"/>
+    <xsl:param name="inspireThemes"/>
+
+    <xsl:value-of
+      select="$inspireThemes/skos:prefLabel[@xml:lang='en' and ../skos:prefLabel = $keyword]/text()"/>
+  </xsl:template>
+
+  <xsl:template name="getInspireThemeAcronym">
+    <xsl:param name="keyword"/>
+
+    <xsl:value-of select="$inspire-theme/skos:altLabel[../skos:prefLabel = $keyword]/text()"/>
+  </xsl:template>
+
+  <xsl:template name="determineInspireAnnex">
+    <xsl:param name="keyword"/>
+    <xsl:param name="inspireThemes"/>
+    <xsl:variable name="englishKeywordMixedCase">
+      <xsl:call-template name="translateInspireThemeToEnglish">
+        <xsl:with-param name="keyword" select="$keyword"/>
+        <xsl:with-param name="inspireThemes" select="$inspireThemes"/>
+      </xsl:call-template>
+    </xsl:variable>
+    <xsl:variable name="englishKeyword" select="lower-case($englishKeywordMixedCase)"/>
+    <!-- Another option could be to add the annex info in the SKOS thesaurus using something
+    like a related concept. -->
+    <xsl:choose>
+      <!-- annex i -->
+      <xsl:when test="$englishKeyword='coordinate reference systems' or $englishKeyword='geographical grid systems'
+                                    or $englishKeyword='geographical names' or $englishKeyword='administrative units'
+                                    or $englishKeyword='addresses' or $englishKeyword='cadastral parcels'
+                                    or $englishKeyword='transport networks' or $englishKeyword='hydrography'
+                                    or $englishKeyword='protected sites'">
+        <xsl:text>i</xsl:text>
+      </xsl:when>
+      <!-- annex ii -->
+      <xsl:when test="$englishKeyword='elevation' or $englishKeyword='land cover'
+                                    or $englishKeyword='orthoimagery' or $englishKeyword='geology'">
+        <xsl:text>ii</xsl:text>
+      </xsl:when>
+      <!-- annex iii -->
+      <xsl:when test="$englishKeyword='statistical units' or $englishKeyword='buildings'
+                                    or $englishKeyword='soil' or $englishKeyword='land use'
+                                    or $englishKeyword='human health and safety' or $englishKeyword='utility and governmental services'
+                                    or $englishKeyword='environmental monitoring facilities' or $englishKeyword='production and industrial facilities'
+                                    or $englishKeyword='agricultural and aquaculture facilities' or $englishKeyword='population distribution — demography'
+                                    or $englishKeyword='area management/restriction/regulation zones and reporting units'
+                                    or $englishKeyword='natural risk zones' or $englishKeyword='atmospheric conditions'
+                                    or $englishKeyword='meteorological geographical features' or $englishKeyword='oceanographic geographical features'
+                                    or $englishKeyword='sea regions' or $englishKeyword='bio-geographical regions'
+                                    or $englishKeyword='habitats and biotopes' or $englishKeyword='species distribution'
+                                    or $englishKeyword='energy resources' or $englishKeyword='mineral resources'">
+        <xsl:text>iii</xsl:text>
+      </xsl:when>
+      <!-- inspire annex cannot be established: leave empty -->
+    </xsl:choose>
+  </xsl:template>
+</xsl:stylesheet>
diff --git a/src/main/webapp/WEB-INF/data/config/schema_plugins/iso19139/layout/layout-custom-fields-keywords.xsl b/src/main/webapp/WEB-INF/data/config/schema_plugins/iso19139/layout/layout-custom-fields-keywords.xsl
new file mode 100644
index 0000000..c2ba2d0
--- /dev/null
+++ b/src/main/webapp/WEB-INF/data/config/schema_plugins/iso19139/layout/layout-custom-fields-keywords.xsl
@@ -0,0 +1,307 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+  ~ Copyright (C) 2001-2016 Food and Agriculture Organization of the
+  ~ United Nations (FAO-UN), United Nations World Food Programme (WFP)
+  ~ and United Nations Environment Programme (UNEP)
+  ~
+  ~ This program is free software; you can redistribute it and/or modify
+  ~ it under the terms of the GNU General Public License as published by
+  ~ the Free Software Foundation; either version 2 of the License, or (at
+  ~ your option) any later version.
+  ~
+  ~ This program is distributed in the hope that it will be useful, but
+  ~ WITHOUT ANY WARRANTY; without even the implied warranty of
+  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+  ~ General Public License for more details.
+  ~
+  ~ You should have received a copy of the GNU General Public License
+  ~ along with this program; if not, write to the Free Software
+  ~ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
+  ~
+  ~ Contact: Jeroen Ticheler - FAO - Viale delle Terme di Caracalla 2,
+  ~ Rome - Italy. email: geonetwork@osgeo.org
+  -->
+
+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+                xmlns:gmd="http://www.isotc211.org/2005/gmd"
+                xmlns:gco="http://www.isotc211.org/2005/gco"
+                xmlns:gmx="http://www.isotc211.org/2005/gmx"
+                xmlns:xs="http://www.w3.org/2001/XMLSchema"
+                xmlns:xlink="http://www.w3.org/1999/xlink"
+                xmlns:gn="http://www.fao.org/geonetwork"
+                xmlns:xslutil="java:org.fao.geonet.util.XslUtil"
+                xmlns:gn-fn-metadata="http://geonetwork-opensource.org/xsl/functions/metadata"
+                xmlns:java="java:org.fao.geonet.util.XslUtil"
+                version="2.0"
+                exclude-result-prefixes="#all">
+
+  <!-- Custom rendering of keyword section
+    * gmd:descriptiveKeywords is boxed element and the title
+    of the fieldset is the thesaurus title
+    * if the thesaurus is available in the catalog, display
+    the advanced editor which provides easy selection of
+    keywords.
+
+  -->
+
+
+  <xsl:template mode="mode-iso19139" priority="2000"
+                match="gmd:descriptiveKeywords">
+    <xsl:param name="schema" select="$schema" required="no"/>
+    <xsl:param name="labels" select="$labels" required="no"/>
+    <xsl:param name="overrideLabel" select="''" required="no"/>
+
+    <xsl:variable name="xpath" select="gn-fn-metadata:getXPath(.)"/>
+    <xsl:variable name="isoType" select="if (../@gco:isoType) then ../@gco:isoType else ''"/>
+    <xsl:variable name="thesaurusTitleEl"
+                  select="gmd:MD_Keywords/gmd:thesaurusName/gmd:CI_Citation/gmd:title"/>
+    
+    <!--Add all Thesaurus as first block of keywords-->
+    <xsl:if test="name(preceding-sibling::*[1]) != name()">
+      <xsl:call-template name="addAllThesaurus">
+        <xsl:with-param name="ref" select="../gn:element/@ref"/>
+      </xsl:call-template>
+    </xsl:if>
+
+    <xsl:variable name="thesaurusTitle">
+      <xsl:choose>
+        <xsl:when test="normalize-space($thesaurusTitleEl/gco:CharacterString) != ''">
+          <xsl:value-of select="if ($overrideLabel != '')
+              then $overrideLabel
+              else concat(
+                      $iso19139strings/keywordFrom,
+                      normalize-space($thesaurusTitleEl/gco:CharacterString))"/>
+        </xsl:when>
+        <xsl:when test="normalize-space($thesaurusTitleEl/gmd:PT_FreeText/
+                          gmd:textGroup/gmd:LocalisedCharacterString[
+                            @locale = concat('#', upper-case(xslutil:twoCharLangCode($lang)))][1]) != ''">
+          <xsl:value-of
+            select="$thesaurusTitleEl/gmd:PT_FreeText/gmd:textGroup/gmd:LocalisedCharacterString[@locale = concat('#', upper-case(xslutil:twoCharLangCode($lang)))][1]"/>
+        </xsl:when>
+        <xsl:when test="$thesaurusTitleEl/gmd:PT_FreeText/
+                          gmd:textGroup/gmd:LocalisedCharacterString[
+                            normalize-space(text()) != ''][1]">
+          <xsl:value-of select="$thesaurusTitleEl/gmd:PT_FreeText/gmd:textGroup/
+                                  gmd:LocalisedCharacterString[normalize-space(text()) != ''][1]"/>
+        </xsl:when>
+        <xsl:otherwise>
+          <xsl:value-of select="gmd:MD_Keywords/gmd:thesaurusName/
+                                  gmd:CI_Citation/gmd:identifier/gmd:MD_Identifier/gmd:code"/>
+        </xsl:otherwise>
+      </xsl:choose>
+    </xsl:variable>
+    <xsl:variable name="attributes">
+      <xsl:if test="$isEditing">
+        <!-- Create form for all existing attribute (not in gn namespace)
+        and all non existing attributes not already present. -->
+        <xsl:apply-templates mode="render-for-field-for-attribute"
+                             select="
+          @*|
+          gn:attribute[not(@name = parent::node()/@*/name())]">
+          <xsl:with-param name="ref" select="gn:element/@ref"/>
+          <xsl:with-param name="insertRef" select="gn:element/@ref"/>
+        </xsl:apply-templates>
+      </xsl:if>
+    </xsl:variable>
+
+
+    <xsl:variable name="thesaurusIdentifier"
+                  select="normalize-space(*/gmd:thesaurusName/gmd:CI_Citation/gmd:identifier/gmd:MD_Identifier/gmd:code/*/text())"/>
+
+    <xsl:variable name="thesaurusConfig"
+                  as="element()?"
+                  select="if ($thesaurusList/thesaurus[@key=substring-after($thesaurusIdentifier, 'geonetwork.thesaurus.')])
+                          then $thesaurusList/thesaurus[@key=substring-after($thesaurusIdentifier, 'geonetwork.thesaurus.')]
+                          else $listOfThesaurus/thesaurus[title=$thesaurusTitle]"/>
+
+    <xsl:choose>
+      <xsl:when test="$thesaurusConfig/@fieldset = 'false'">
+        <xsl:apply-templates mode="mode-iso19139" select="*">
+          <xsl:with-param name="schema" select="$schema"/>
+          <xsl:with-param name="labels" select="$labels"/>
+        </xsl:apply-templates>
+      </xsl:when>
+      <xsl:otherwise>
+
+        <xsl:call-template name="render-boxed-element">
+          <xsl:with-param name="label"
+                          select="if ($thesaurusTitle !='')
+                    then $thesaurusTitle
+                    else gn-fn-metadata:getLabel($schema, name(), $labels, name(..), $isoType, $xpath)/label"/>
+          <xsl:with-param name="editInfo" select="gn:element"/>
+          <xsl:with-param name="cls" select="local-name()"/>
+          <xsl:with-param name="xpath" select="$xpath"/>
+          <xsl:with-param name="attributesSnippet" select="$attributes"/>
+          <xsl:with-param name="subTreeSnippet">
+            <xsl:apply-templates mode="mode-iso19139" select="*">
+              <xsl:with-param name="schema" select="$schema"/>
+              <xsl:with-param name="labels" select="$labels"/>
+            </xsl:apply-templates>
+          </xsl:with-param>
+        </xsl:call-template>
+    </xsl:otherwise>
+  </xsl:choose>
+
+  </xsl:template>
+
+
+  <xsl:template mode="mode-iso19139" match="gmd:MD_Keywords" priority="2000">
+
+
+    <xsl:variable name="thesaurusIdentifier"
+                 select="normalize-space(gmd:thesaurusName/gmd:CI_Citation/gmd:identifier/gmd:MD_Identifier/gmd:code/*/text())"/>
+
+    <xsl:variable name="thesaurusTitle"
+                  select="gmd:thesaurusName/gmd:CI_Citation/gmd:title/(gco:CharacterString|gmd:PT_FreeText/gmd:textGroup/gmd:LocalisedCharacterString)"/>
+
+
+    <xsl:variable name="thesaurusConfig"
+                  as="element()?"
+                  select="if ($thesaurusList/thesaurus[@key=substring-after($thesaurusIdentifier, 'geonetwork.thesaurus.')])
+                          then $thesaurusList/thesaurus[@key=substring-after($thesaurusIdentifier, 'geonetwork.thesaurus.')]
+                           else $listOfThesaurus/thesaurus[title=$thesaurusTitle]"/>
+
+    <xsl:choose>
+      <xsl:when test="$thesaurusConfig">
+
+        <!-- The thesaurus key may be contained in the MD_Identifier field or
+          get it from the list of thesaurus based on its title.
+          -->
+        <xsl:variable name="thesaurusInternalKey"
+                      select="if ($thesaurusIdentifier)
+          then $thesaurusIdentifier
+          else $thesaurusConfig/key"/>
+        <xsl:variable name="thesaurusKey"
+                      select="if (starts-with($thesaurusInternalKey, 'geonetwork.thesaurus.'))
+                      then substring-after($thesaurusInternalKey, 'geonetwork.thesaurus.')
+                      else $thesaurusInternalKey"/>
+
+        <!-- if gui lang eng > #EN -->
+        <xsl:variable name="guiLangId"
+                      select="
+                      if (count($metadata/gmd:locale/gmd:PT_Locale[gmd:languageCode/gmd:LanguageCode/@codeListValue = $lang]) = 1)
+                        then $metadata/gmd:locale/gmd:PT_Locale[gmd:languageCode/gmd:LanguageCode/@codeListValue = $lang]/@id
+                        else $metadata/gmd:locale/gmd:PT_Locale[gmd:languageCode/gmd:LanguageCode/@codeListValue = $metadataLanguage]/@id"/>
+
+        <!--
+        get keyword in gui lang
+        in default language
+        -->
+        <xsl:variable name="keywords" select="string-join(
+                  if ($guiLangId and gmd:keyword//*[@locale = concat('#', $guiLangId)]) then
+                    gmd:keyword//*[@locale = concat('#', $guiLangId)]/replace(text(), ',', ',,')
+                  else gmd:keyword/*[1]/replace(text(), ',', ',,'), ',')"/>
+
+        <!-- Define the list of transformation mode available. -->
+        <xsl:variable name="transformations"
+                      as="xs:string"
+                      select="if ($thesaurusConfig/@transformations != '')
+                              then $thesaurusConfig/@transformations
+                              else 'to-iso19139-keyword,to-iso19139-keyword-with-anchor,to-iso19139-keyword-as-xlink'"/>
+
+        <!-- Get current transformation mode based on XML fragment analysis -->
+        <xsl:variable name="transformation"
+                      select="if (parent::node()/@xlink:href) then 'to-iso19139-keyword-as-xlink'
+          else if (count(gmd:keyword/gmx:Anchor) > 0)
+          then 'to-iso19139-keyword-with-anchor'
+          else 'to-iso19139-keyword'"/>
+
+        <xsl:variable name="parentName" select="name(..)"/>
+
+        <!-- Create custom widget:
+              * '' for item selector,
+              * 'tagsinput' for tags
+              * 'tagsinput' and maxTags = 1 for only one tag
+              * 'multiplelist' for multiple selection list
+        -->
+        <xsl:variable name="widgetMode" select="'tagsinput'"/>
+        <xsl:variable name="maxTags"
+                      as="xs:string"
+                      select="if ($thesaurusConfig/@maxtags)
+                              then $thesaurusConfig/@maxtags
+                              else ''"/>
+        <xsl:variable name="orderById"
+                      as="xs:string"
+                      select="if ($thesaurusConfig/@orderById)
+                              then $thesaurusConfig/@orderById
+                              else 'false'"/>
+        <!--
+          Example: to restrict number of keyword to 1 for INSPIRE
+          <xsl:variable name="maxTags"
+          select="if ($thesaurusKey = 'external.theme.inspire-theme') then '1' else ''"/>
+        -->
+        <!-- Create a div with the directive configuration
+            * elementRef: the element ref to edit
+            * elementName: the element name
+            * thesaurusName: the thesaurus title to use
+            * thesaurusKey: the thesaurus identifier
+            * keywords: list of keywords in the element
+            * transformations: list of transformations
+            * transformation: current transformation
+          -->
+
+        <xsl:variable name="allLanguages"
+                      select="concat($metadataLanguage, ',', $metadataOtherLanguages)"/>
+        <div data-gn-keyword-selector="{$widgetMode}"
+             data-metadata-id="{$metadataId}"
+             data-element-ref="{concat('_X', ../gn:element/@ref, '_replace')}"
+             data-thesaurus-title="{if ($thesaurusConfig/@fieldset = 'false') then $thesaurusTitle else ''}"
+             data-thesaurus-key="{$thesaurusKey}"
+             data-keywords="{$keywords}" 
+             data-transformations="{$transformations}"
+             data-current-transformation="{$transformation}"
+             data-max-tags="{$maxTags}"
+             data-order-by-id="{$orderById}"
+             data-lang="{$metadataOtherLanguagesAsJson}"
+             data-textgroup-only="false">
+        </div>
+
+        <xsl:variable name="isTypePlace"
+                      select="count(gmd:type/gmd:MD_KeywordTypeCode[@codeListValue='place']) > 0"/>
+        <xsl:if test="$isTypePlace">
+          <xsl:call-template name="render-batch-process-button">
+            <xsl:with-param name="process-name" select="'add-extent-from-geokeywords'"/>
+            <xsl:with-param name="process-params">{"replace": true}</xsl:with-param>
+          </xsl:call-template>
+        </xsl:if>
+      </xsl:when>
+      <xsl:otherwise>
+        <xsl:apply-templates mode="mode-iso19139" select="*"/>
+      </xsl:otherwise>
+    </xsl:choose>
+
+  </xsl:template>
+
+
+  <xsl:template name="addAllThesaurus">
+    <xsl:param name="ref"/>
+    <xsl:if test="java:getSettingValue('system/metadata/allThesaurus') = 'true'">
+
+
+      <xsl:variable name="thesaurusConfig"
+                    as="element()?"
+                    select="$thesaurusList/thesaurus[@key='external.none.allThesaurus']"/>
+
+      <xsl:variable name="transformations"
+                    as="xs:string"
+                    select="if ($thesaurusConfig/@transformations != '')
+                              then $thesaurusConfig/@transformations
+                              else 'to-iso19139-keyword,to-iso19139-keyword-with-anchor,to-iso19139-keyword-as-xlink'"/>
+
+      <br></br>
+      <div
+              data-gn-keyword-selector="tagsinput"
+              data-metadata-id=""
+              data-element-ref="_X{$ref}_gmdCOLONdescriptiveKeywords"
+              data-thesaurus-title="{{{{'selectKeyword' | translate}}}}"
+              data-thesaurus-key="external.none.allThesaurus"
+              data-keywords=""
+              data-transformations="{$transformations}"
+              data-current-transformation="to-iso19139-keyword"
+              data-max-tags="" data-lang="{$metadataOtherLanguagesAsJson}"
+              data-textgroup-only="false"
+              class="">
+      </div>
+    </xsl:if>
+  </xsl:template>
+</xsl:stylesheet>
diff --git a/src/main/webapp/WEB-INF/data/config/schema_plugins/iso19139/loc/fre/codelists.xml b/src/main/webapp/WEB-INF/data/config/schema_plugins/iso19139/loc/fre/codelists.xml
new file mode 100644
index 0000000..52c69f6
--- /dev/null
+++ b/src/main/webapp/WEB-INF/data/config/schema_plugins/iso19139/loc/fre/codelists.xml
@@ -0,0 +1,2127 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+  ~ Copyright (C) 2001-2016 Food and Agriculture Organization of the
+  ~ United Nations (FAO-UN), United Nations World Food Programme (WFP)
+  ~ and United Nations Environment Programme (UNEP)
+  ~
+  ~ This program is free software; you can redistribute it and/or modify
+  ~ it under the terms of the GNU General Public License as published by
+  ~ the Free Software Foundation; either version 2 of the License, or (at
+  ~ your option) any later version.
+  ~
+  ~ This program is distributed in the hope that it will be useful, but
+  ~ WITHOUT ANY WARRANTY; without even the implied warranty of
+  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+  ~ General Public License for more details.
+  ~
+  ~ You should have received a copy of the GNU General Public License
+  ~ along with this program; if not, write to the Free Software
+  ~ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
+  ~
+  ~ Contact: Jeroen Ticheler - FAO - Viale delle Terme di Caracalla 2,
+  ~ Rome - Italy. email: geonetwork@osgeo.org
+  -->
+
+<codelists xmlns:gmd="http://www.isotc211.org/2005/gmd">
+  <!-- ==================================================== -->
+  <codelist name="gmd:CI_DateTypeCode">
+    <entry>
+      <code>creation</code>
+      <label>Création</label>
+      <description>Date à laquelle la ressource est créée</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>publication</code>
+      <label>Publication</label>
+      <description>Date à laquelle la ressource est publiée</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>revision</code>
+      <label>Révision</label>
+      <description>Date à laquelle la ressource est révisée</description>
+    </entry>
+    <!-- ISO PROFIL FRA ONLY
+        <entry>
+            <code>validity</code>
+            <label>Validité</label>
+            <description>Date à laquelle la ressource est validée</description>
+        </entry>
+        <entry>
+            <code>useBy</code>
+            <label>Péremption</label>
+            <description>Date de péremption de la ressource</description>
+        </entry>
+-->
+  </codelist>
+  <!-- ==================================================== -->
+  <codelist name="gmd:CI_OnLineFunctionCode" alias="function">
+    <entry>
+      <code>download</code>
+      <label>Téléchargement</label>
+      <description>Téléchargement de la ressource</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>information</code>
+      <label>Information</label>
+      <description>Online information about the resource</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>offlineAccess</code>
+      <label>Commande hors ligne</label>
+      <description>Instruction pour une commande auprès du distributeur</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>order</code>
+      <label>Commande en ligne</label>
+      <description>Commande en ligne pour obtenir la ressource</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>search</code>
+      <label>Interface de recherche</label>
+      <description>Interface de recherche pour trouver la ressource</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+  </codelist>
+  <!-- ==================================================== -->
+  <codelist name="gmd:CI_PresentationFormCode">
+    <entry>
+      <code>documentDigital</code>
+      <label>Document numérique</label>
+      <description>Document numérique contenant du texte et pouvant contenir des illustrations
+      </description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>imageDigital</code>
+      <label>Image numérique</label>
+      <description>Aspects à travers la télédétection, stocké sous format numérique</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>documentHardcopy</code>
+      <label>Document papier</label>
+      <description>Document papier contenant du texte et pouvant contenir des illustrations
+      </description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>imageHardcopy</code>
+      <label>Image papier</label>
+      <description>Aspects à travers la télédétection, reproduit sur un support utilisable par
+        l’homme
+      </description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>mapDigital</code>
+      <label>Carte numérique</label>
+      <description>Carte numérique au format raster ou vecteur</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>mapHardcopy</code>
+      <label>Carte papier</label>
+      <description>Carte imprimée sur papier ou autre support utilisable par l’homme</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>modelDigital</code>
+      <label>Modèle numérique de terrain</label>
+      <description>Modèle numérique 3D sous forme digitale</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>modelHardcopy</code>
+      <label>Modèle numérique physique</label>
+      <description>Modèle numérique 3D physique</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>profileDigital</code>
+      <label>Profil numérique</label>
+      <description>Profil vertical sous forme numérique</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>profileHardcopy</code>
+      <label>Profil papier</label>
+      <description>Profil vertical sous forme papier</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>tableDigital</code>
+      <label>Table numérique</label>
+      <description>Représentation numérique d’informations sous forme de colonnes</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>tableHardcopy</code>
+      <label>Table papier</label>
+      <description>Représentation d’informations sous forme de colonnes sur papier ou autre support
+        utilisable par l’homme
+      </description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>videoDigital</code>
+      <label>Vidéo numérique</label>
+      <description>Vidéo numérique</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>videoHardcopy</code>
+      <label>Vidéo magnétique</label>
+      <description>Vidéo enregistré sur bande</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+  </codelist>
+  <!-- ==================================================== -->
+  <codelist name="gmd:CI_RoleCode" alias="roleCode">
+    <entry>
+      <code>resourceProvider</code>
+      <label>Fournisseur</label>
+      <description>Organisme qui fournit la ressource. Acteur qui délivre physiquement la ressource,
+        soit de manière directe au destinataire, soit par l’intermédiaire d’un diffuseur
+      </description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>custodian</code>
+      <label>Gestionnaire</label>
+      <description>Acteur responsable de la gestion et de la mise à jour de la ressource
+      </description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>owner</code>
+      <label>Propriétaire</label>
+      <description>Organisme qui est propriétaire de la ressource / Acteur qui détient les droits
+        patrimoniaux de la ressource
+      </description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>user</code>
+      <label>Utilisateur</label>
+      <description>Organisme qui utilise ou a utilisé la ressource</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>distributor</code>
+      <label>Distributeur</label>
+      <description>Organisme qui distribue la ressource. Diffuseur de second niveau de la
+        ressource
+      </description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>originator</code>
+      <label>A l’origine de</label>
+      <description>Organisme qui a commandé la ressource. Acteur qui a été habilité à créer la
+        ressource et qui a mis en place les moyens pour la constituer
+      </description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>pointOfContact</code>
+      <label>Point de contact</label>
+      <description>Organisme que l’on peut contacter pour avoir des renseignements détaillés sur la
+        ressource. Acteur à contacter en premier lieu pour obtenir des informations relatives à la
+        ressource
+      </description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>principalInvestigator</code>
+      <label>Point de recherche</label>
+      <description>Personne clé pour obtenir des informations sur la ressource et les recherches
+        conduites autour de la ressource&#xA;Acteur qui a assuré la réalisation de la
+        ressource,éventuellement en faisant appel à des co-traitants ou des sous traitants
+      </description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>processor</code>
+      <label>Exécutant</label>
+      <description>Organisme qui a réalisé des traitements sur la ressource. Acteur qui est
+        intervenu lors de la réalisation de la ressource
+      </description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>publisher</code>
+      <label>Editeur (publication)</label>
+      <description>Organisme qui assure la publication de la ressource.</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>author</code>
+      <label>Auteur</label>
+      <description>Organisme ou personne qui est auteur. Acteur qui dispose des droits moraux
+        relatifs à la ressource
+      </description>
+    </entry>
+    <!-- ISO PROFIL CHE ONLY
+        <entry>
+            <code>editor</code>
+            <label>Editeur</label>
+            <description></description>
+        </entry>
+        <entry>
+            <code>partner</code>
+            <label>Partenaire</label>
+            <description></description>
+        </entry>-->
+  </codelist>
+  <!-- ==================================================== -->
+  <codelist name="gmd:DQ_EvaluationMethodTypeCode">
+    <entry>
+      <code>directInternal</code>
+      <label>Directe interne</label>
+      <description>Méthode d’évaluation de la qualité d’un jeu de données basée sur l’analyse des
+        données du jeu où toutes les données requises sont internes au jeu de données
+      </description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>directExternal</code>
+      <label>Directe externe</label>
+      <description>Méthode d’évaluation de la qualité d’un jeu de données basée sur l’analyse des
+        données du jeu où les références vers des données externes sont requises.
+      </description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>indirect</code>
+      <label>Indirecte</label>
+      <description>Méthode d’évaluation de la qualité basée sur une connaissance externe.
+      </description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+  </codelist>
+  <!-- ==================================================== -->
+  <codelist name="gmd:DS_AssociationTypeCode" alias="associationType">
+    <entry>
+      <code>crossReference</code>
+      <label>Référence croisée</label>
+      <description>Référence d’un jeu de données à un autre</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>largerWorkCitation</code>
+      <label>Référence mère</label>
+      <description>Référence à un jeu de données maître</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>partOfSeamlessDatabase</code>
+      <label>Partie d'une même base de données</label>
+      <description>Référence à un jeu de données stocké dans une même base de données</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>source</code>
+      <label>Source</label>
+      <description>Références vers la source des données qui a permis de produire les cartes,…
+      </description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>stereoMate</code>
+      <label>Stéréo restitution</label>
+      <description>Partie d’un ensemble d’images qui, utilisé ensemble, fournit une vision 3D de
+        l’image.
+      </description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+  </codelist>
+  <!-- ==================================================== -->
+  <codelist name="gmd:DS_InitiativeTypeCode" alias="initiativeType">
+    <entry>
+      <code>campaign</code>
+      <label>Campagne</label>
+      <description>Séries d’actions planifiées</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>collection</code>
+      <label>Collection</label>
+      <description>Accumulation de données dans un but précis</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>exercise</code>
+      <label>Exercice</label>
+      <description>Action spécifique répondant à une ou des fonctions</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>experiment</code>
+      <label>Expérimentation</label>
+      <description>Recherche pour vérifier si une hypothèse est valide</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>investigation</code>
+      <label>Investigation</label>
+      <description>Recherche systématique</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>mission</code>
+      <label>Mission</label>
+      <description>Spécifique opération d’une collecte de données</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>sensor</code>
+      <label>Capteur</label>
+      <description>Part d’un équipement qui détecte une information</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>operation</code>
+      <label>Opération</label>
+      <description>Action qui est une partie d’une série d’action</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>platform</code>
+      <label>Plate-forme</label>
+      <description>Véhicule ou autre support supportant un capteur</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>process</code>
+      <label>Processus</label>
+      <description>Méthode pour faire quelque chose</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>program</code>
+      <label>Programme</label>
+      <description>Action spécifiquement planifiée</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>project</code>
+      <label>Projet</label>
+      <description>Recherche ou développement organisé</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>study</code>
+      <label>Etude</label>
+      <description>Investigation</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>task</code>
+      <label>Tâche</label>
+      <description>Partie d'un travail</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>trial</code>
+      <label>Essai</label>
+      <description>Processus visant à tester ou démontrer quelque chose</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+  </codelist>
+  <!-- ==================================================== -->
+  <codelist name="gmd:MD_CellGeometryCode">
+    <entry>
+      <code>point</code>
+      <label>Point</label>
+      <description>Chaque cellule représente un point</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>area</code>
+      <label>Surface</label>
+      <description>Chaque cellule représente une surface</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+  </codelist>
+  <!-- ==================================================== -->
+  <codelist name="gmd:MD_CharacterSetCode">
+    <entry>
+      <code>ucs2</code>
+      <label>Ucs2</label>
+      <description>16-bit fixed size Universal Character Set, based on ISO 10646</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>ucs4</code>
+      <label>Ucs4</label>
+      <description>32-bit fixed size Universal Character Set, based on ISO/IEC
+        10646
+      </description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>utf7</code>
+      <label>Utf7</label>
+      <description>7-bit variable size UCS Transfer Format, based on ISO/IEC 10646</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>utf8</code>
+      <label>Utf8</label>
+      <description>8-bit variable size UCS Transfer Format, based on ISO/IEC 10646</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>utf16</code>
+      <label>Utf16</label>
+      <description>16-bit variable size UCS Transfer Format, based on ISO/IEC 10646</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>8859part1</code>
+      <label>8859part1</label>
+      <description>ISO/IEC 8859-1, Information technology - 8-bit single byte coded graphic
+        character sets - Part 1 : Latin alphabet No.1
+      </description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>8859part2</code>
+      <label>8859part2</label>
+      <description>ISO/IEC 8859-2, Information technology - 8-bit single byte coded graphic
+        character sets - Part 2 : Latin alphabet No.2
+      </description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>8859part3</code>
+      <label>8859part3</label>
+      <description>ISO/IEC 8859-3, Information technology - 8-bit single byte coded graphic
+        character sets - Part 3 : Latin alphabet No.3
+      </description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>8859part4</code>
+      <label>8859part4</label>
+      <description>ISO/IEC 8859-4, Information technology - 8-bit single byte coded graphic
+        character sets - Part 4 : Latin alphabet No.4
+      </description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>8859part5</code>
+      <label>8859part5</label>
+      <description>ISO/IEC 8859-5, Information technology - 8-bit single byte coded graphic
+        character sets - Part 5 : Latin/Cyrillic alphabet
+      </description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>8859part6</code>
+      <label>8859part6</label>
+      <description>ISO/IEC 8859-6, Information technology - 8-bit single byte coded graphic
+        character sets - Part 6 : Latin/Arabic alphabet
+      </description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>8859part7</code>
+      <label>8859part7</label>
+      <description>ISO/IEC 8859-7, Information technology - 8-bit single byte coded graphic
+        character sets - Part 7 : Latin/Greek alphabet
+      </description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>8859part8</code>
+      <label>8859part8</label>
+      <description>ISO/IEC 8859-8, Information technology - 8-bit single byte coded graphic
+        character sets - Part 8 : Latin/Hebrew alphabet
+      </description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>8859part9</code>
+      <label>8859part9</label>
+      <description>ISO/IEC 8859-9, Information technology - 8-bit single byte coded graphic
+        character sets - Part 9 : Latin alphabet No.5
+      </description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>8859part10</code>
+      <label>8859part10</label>
+      <description>ISO/IEC 8859-10, Information technology - 8-bit single byte coded graphic
+        character sets - Part 10 : Latin alphabet No.6
+      </description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>8859part11</code>
+      <label>8859part11</label>
+      <description>ISO/IEC 8859-11, Information technology - 8-bit single byte coded graphic
+        character sets - Part 11 : Latin/Thai alphabet
+      </description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>8859part13</code>
+      <label>8859part13</label>
+      <description>ISO/IEC 8859-13, Information technology - 8-bit single byte coded graphic
+        character sets - Part 13 : Latin alphabet No.7
+      </description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>8859part14</code>
+      <label>8859part14</label>
+      <description>ISO/IEC 8859-14, Information technology - 8-bit single byte coded graphic
+        character sets - Part 14 : Latin alphabet No.8 (Celtic)
+      </description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>8859part15</code>
+      <label>8859part15</label>
+      <description>ISO/IEC 8859-15, Information technology - 8-bit single byte coded graphic
+        character sets - Part 15 : Latin alphabet No.9
+      </description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>8859part16</code>
+      <label>8859part16</label>
+      <description>ISO/IEC 8859-16, Information technology - 8-bit single byte coded graphic
+        character sets - Part 16 : Latin alphabet No.10
+      </description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>jis</code>
+      <label>Jis</label>
+      <description>Japanese code set used for electronic transmission</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>shiftJIS</code>
+      <label>ShiftJIS</label>
+      <description>Japanese code set used on MS-DOS machines</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>eucJP</code>
+      <label>EucJP</label>
+      <description>Japanese code set used on UNIX based machines</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>usAscii</code>
+      <label>UsAscii</label>
+      <description>United States ASCII code set (ISO 646 US)</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>ebcdic</code>
+      <label>Ebcdic</label>
+      <description>IBM mainframe code set</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>eucKR</code>
+      <label>EucKR</label>
+      <description>Korean code set</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>big5</code>
+      <label>Big5</label>
+      <description>Traditional Chinese code set used in Taiwan, Hong Kong of China and other
+        areas
+      </description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>GB2312</code>
+      <label>GB2312</label>
+      <description>Simplified Chinese code set</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+  </codelist>
+  <!-- ==================================================== -->
+  <codelist name="gmd:MD_ClassificationCode">
+    <entry>
+      <code>unclassified</code>
+      <label>Non classifié</label>
+      <description>La ressource ne revêt pas un caractère sensible</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>restricted</code>
+      <label>Restreint</label>
+      <description>Le caractère sensible de la ressource restreint son utilisation ou sa diffusion
+      </description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>confidential</code>
+      <label>Confidentiel</label>
+      <description>La ressource présente un caractère confidentiel.</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>secret</code>
+      <label>Secret</label>
+      <description>La confidentialité de la ressource implique des mesures de protection
+        particulière
+      </description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>topSecret</code>
+      <label>Top secret</label>
+      <description>La confidentialité de la ressource implique des mesures de protection extrêmes
+      </description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+  </codelist>
+  <!-- ==================================================== -->
+  <codelist name="gmd:MD_CoverageContentTypeCode">
+    <entry>
+      <code>image</code>
+      <label>Image</label>
+      <description>Représentation numérique d’un paramètre physique</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>thematicClassification</code>
+      <label>Classification thématique</label>
+      <description>Codification selon une classification</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>physicalMeasurement</code>
+      <label>Mesure physique</label>
+      <description>Valeur physique mesurée</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+  </codelist>
+  <!-- ==================================================== -->
+  <codelist name="gmd:MD_DatatypeCode">
+    <entry>
+      <code>class</code>
+      <label>Classe</label>
+      <description>Description d’un ensemble d’objet qui ont les mêmes attributs, méthodes …
+      </description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>codelist</code>
+      <label>Liste de codes</label>
+      <description>Enumération modifiable, utilisée pour exprimée une liste de valeurs extensible
+      </description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>enumeration</code>
+      <label>Enumération</label>
+      <description>Enumération, utilisée pour exprimée une liste de valeurs non extensible
+      </description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>codelistElement</code>
+      <label>Elément d'une liste de codes</label>
+      <description>Valeur possible pour une liste de codes</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>abstractClass</code>
+      <label>Classe abstraite</label>
+      <description>Classe qui ne peut être directement instancée</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>aggregateClass</code>
+      <label>Classe agrégée</label>
+      <description>Classe qui est composé d’un ensemble de classes connecté par une relation de type
+        Agrégation.
+      </description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>specifiedClass</code>
+      <label>Classe spécifique</label>
+      <description>Classe qui peut être substituée à une classe de niveau supérieur</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>datatypeClass</code>
+      <label>Classe de type de donnée</label>
+      <description>Classe avec peu ou aucune opération dont le rôle est de gérer l’état d’une autre
+        classe pour les informations relevant de la transmission, le stockage, l’encodage ou la
+        persistance.
+      </description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>interfaceClass</code>
+      <label>Classe d'interface</label>
+      <description>Noms des opérations qui caractérisent le comportement d’une ressource
+      </description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>unionClass</code>
+      <label>Classe d'union</label>
+      <description>Classe décrivant une sélection d’un type spécifique</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>metaClass</code>
+      <label>Méta-classe</label>
+      <description>Classe dont les instances sont des classes</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>typeClass</code>
+      <label>Type de classe</label>
+      <description>Classe utilisée pour spécifier un domaine d’instance (objet) en relation avec les
+        opérations applicables à ces objets. Un type peut avoir des attributs et des associations
+      </description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>characterString</code>
+      <label>Chaîne de caractères</label>
+      <description>Texte libre</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>integer</code>
+      <label>Entier</label>
+      <description>Champ numérique</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>association</code>
+      <label>Association</label>
+      <description>Relation entre deux classes</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+  </codelist>
+  <!-- ==================================================== -->
+  <codelist name="gmd:MD_DimensionNameTypeCode">
+    <entry>
+      <code>row</code>
+      <label>Axe - Y</label>
+      <description>Axe des ordonnées (axe - Y)</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>column</code>
+      <label>Axe - X</label>
+      <description>Axe des abscisses (axe X)</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>vertical</code>
+      <label>Axe - Z</label>
+      <description>Axe vertical (axe Z)</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>track</code>
+      <label>Piste</label>
+      <description>Dans la direction de la ...</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>crossTrack</code>
+      <label>Profil de piste</label>
+      <description>Perpendiculaire ...</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>line</code>
+      <label>Ligne</label>
+      <description>Ligne de scannage d'un capteur</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>sample</code>
+      <label>Echantillon</label>
+      <description>Elément le long d'une ligne de scannage</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>time</code>
+      <label>Temps</label>
+      <description>Durée</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+  </codelist>
+  <!-- ==================================================== -->
+  <codelist name="gmd:MD_GeometricObjectTypeCode">
+    <entry>
+      <code>complex</code>
+      <label>Complexe</label>
+      <description>Ensemble de primitives géométriques représentées comme l'union d'autres
+        primitives
+      </description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>composite</code>
+      <label>Composite</label>
+      <description>Ensemble de lignes connectées entre elles</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>curve</code>
+      <label>Ligne</label>
+      <description>Primitive géométrique à une dimension représentant une image continue d'une
+        ligne
+      </description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>point</code>
+      <label>Point</label>
+      <description>Primitive géométrique à zéro dimension représentant une position sans étendue
+      </description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>solid</code>
+      <label>Volume</label>
+      <description>Primitive géométrique à trois dimensions représentant un volume (définition à
+        revoir)
+      </description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>surface</code>
+      <label>Polygone</label>
+      <description>Primitive géométrique à deux dimensions représentant une surface</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+  </codelist>
+  <!-- ==================================================== -->
+  <codelist name="gmd:MD_ImagingConditionCode">
+    <entry>
+      <code>blurredImage</code>
+      <label>Flou</label>
+      <description>Portion de l’image floue</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>cloud</code>
+      <label>Nuage</label>
+      <description>Portion de l’image partiellement occultée par des nuages</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>degradingObliquity</code>
+      <label>Dégradation oblique</label>
+      <description>Due à l’angle entre le plan de l’écliptique et le plan équatorial</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>fog</code>
+      <label>Brouillard</label>
+      <description>Portion de l’image partiellement occultée par du brouillard</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>heavySmokeOrDust</code>
+      <label>Fumée et poussière</label>
+      <description>Portion de l’image partiellement occultée des fumées ou des poussières
+      </description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>night</code>
+      <label>Nuit</label>
+      <description>Image prise la nuit</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>rain</code>
+      <label>Pluie</label>
+      <description>Image prise durant la pluie</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>semiDarkness</code>
+      <label>Semi obscurité</label>
+      <description>Image prise pendant une semi obscurité</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>shadow</code>
+      <label>Ombre</label>
+      <description>Image obscurcie par une ombre</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>snow</code>
+      <label>Neige</label>
+      <description>Image obscurcie par la neige</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>terrainMasking</code>
+      <label>Terrain masqué</label>
+      <description>Absence de données en raison des caractéristiques topographiques qui masquent les
+        informations recherchées
+      </description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+  </codelist>
+  <!-- ==================================================== -->
+  <codelist name="gmd:MD_KeywordTypeCode">
+    <entry>
+      <code>discipline</code>
+      <label>Discipline</label>
+      <description>Mot-clé en relation avec une branche de la connaissance</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>place</code>
+      <label>Localisation</label>
+      <description>Mot-clé identifiant un lieu</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>stratum</code>
+      <label>Strate</label>
+      <description>Couche géologique</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>temporal</code>
+      <label>Temps</label>
+      <description>Mot clef identifiant une période de temps</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>theme</code>
+      <label>Thème</label>
+      <description>Mot-clé identifiant un sujet particulier</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+  </codelist>
+  <!-- ==================================================== -->
+  <codelist name="gmd:MD_MaintenanceFrequencyCode" sort="fixed">
+    <entry>
+      <code>continual</code>
+      <label>Continue</label>
+      <description>Mise à jour continue</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>daily</code>
+      <label>Journalière</label>
+      <description>Mise à jour quotidienne</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>weekly</code>
+      <label>Hebdomadaire</label>
+      <description>Mise à jour hebdomadaire</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>fortnightly</code>
+      <label>Bi-mensuelle</label>
+      <description>Mise à jour 2 fois par mois</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>monthly</code>
+      <label>Mensuelle</label>
+      <description>Mise à jour mensuelle</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>quarterly</code>
+      <label>Trimestrielle</label>
+      <description>Mise à jour trimestrielle</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>biannually</code>
+      <label>Bi-annuelle</label>
+      <description>Mise à jour bi-annuelle</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>annually</code>
+      <label>Annuelle</label>
+      <description>Mise à jour annuelle</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>asNeeded</code>
+      <label>Lorsque nécessaire</label>
+      <description>Mise à jour lorsque cela est jugé nécessaire</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>irregular</code>
+      <label>Irrégulière</label>
+      <description>Mise à jour irrégulière</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>notPlanned</code>
+      <label>Non planifiée</label>
+      <description>Mise à jour non planifiée</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>unknown</code>
+      <label>Inconnue</label>
+      <description>Mise à jour inconnue</description>
+    </entry>
+    <!-- ISO PROFIL CHE ONLY
+        <entry>
+            <code>userDefined</code>
+            <label>Fréquence personnalisée</label>
+            <description>Dans ce cas l'attribut définissant une fréquence personnalisée doit être utilisée</description>
+        </entry>-->
+  </codelist>
+  <!-- ==================================================== -->
+  <codelist name="gmd:MD_MediumFormatCode">
+    <entry>
+      <code>cpio</code>
+      <label>Cpio</label>
+      <description>Copie en entrée /sortie (commande et fichier au format UNIX)</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>tar</code>
+      <label>Tar</label>
+      <description>Format d’archivage sur bande</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>highSierra</code>
+      <label>High Sierra</label>
+      <description>Système de fichiers High Sierra</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>iso9660</code>
+      <label>Iso9660</label>
+      <description>Système de fichier CD – ROM</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>iso9660RockRidge</code>
+      <label>Iso9660RockRidge</label>
+      <description>Protocole d’échange Rock Ridge (UNIX)</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>iso9660AppleHFS</code>
+      <label>Iso9660AppleHFS</label>
+      <description>Système hiérarchique de fichiers (Macintosh)</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+  </codelist>
+  <!-- ==================================================== -->
+  <codelist name="gmd:MD_MediumNameCode">
+    <entry>
+      <code>cdRom</code>
+      <label>CD-ROM</label>
+      <description>Disque optique en lecture seule</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>dvd</code>
+      <label>DVD</label>
+      <description>Disque numérique universel</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>dvdRom</code>
+      <label>DVD-ROM</label>
+      <description>Disque numérique universel en lecture seule</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>3halfInchFloppy</code>
+      <label>Disquette 3.5 pouces</label>
+      <description>Disquette magnétique de 3.5 pouces</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>5quarterInchFloppy</code>
+      <label>Disquette 5.25 pouces</label>
+      <description>Disquette magnétique de 5.25 pouces</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>7trackTape</code>
+      <label>Bande magnétique 7 pistes</label>
+      <description>Bande magnétique</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>9trackTape</code>
+      <label>Bande magnétique 9 pistes</label>
+      <description>Bande magnétique</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>3480Cartridge</code>
+      <label>Cartouche 3480</label>
+      <description>Cartouche à bande magnétique 3480</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>3490Cartridge</code>
+      <label>Cartouche 3490</label>
+      <description>Cartouche à bande magnétique 3490</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>3580Cartridge</code>
+      <label>Cartouche 3580</label>
+      <description>Cartouche à bande magnétique 3580</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>4mmCartridgeTape</code>
+      <label>Bande magnétique 4 mm</label>
+      <description>Bande magnétique 4 mm</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>8mmCartridgeTape</code>
+      <label>Bande magnétique 8 mm</label>
+      <description>Bande magnétique 8 mm</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>1quarterInchCartridgeTape</code>
+      <label>Bande magnétique 0.25 pouces</label>
+      <description>Bande magnétique 0.25 pouces</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>digitalLinearTape</code>
+      <label>Bande magnétique 0.5 pouces</label>
+      <description>Bande magnétique 0.5 pouces</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>onLine</code>
+      <label>En ligne</label>
+      <description>En ligne</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>satellite</code>
+      <label>Satellite</label>
+      <description>Communication par satellite</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>telephoneLink</code>
+      <label>Communication téléphonique</label>
+      <description>Liens via un réseau téléphonique</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>hardcopy</code>
+      <label>Papier</label>
+      <description>Document papier</description>
+    </entry>
+    <!-- ISO PROFIL CHE ONLY
+            <entry>
+            <code>zip100</code>
+            <label>ZIP 100</label>
+            <description></description>
+        </entry>
+        <entry>
+            <code>zip250</code>
+            <label>ZIP 250</label>
+            <description></description>
+        </entry>      <entry>
+            <code>e-mail</code>
+            <label>E-mail</label>
+            <description></description>
+        </entry>      <entry>
+            <code>zip</code>
+            <label>ZIP</label>
+            <description></description>
+        </entry>      <entry>
+            <code>jaz</code>
+            <label>JAZ</label>
+            <description></description>
+        </entry>      <entry>
+            <code>other</code>
+            <label>Autre</label>
+            <description></description>
+        </entry>-->
+  </codelist>
+  <!-- ==================================================== -->
+  <codelist name="gmd:MD_ObligationCode">
+    <entry>
+      <code>mandatory</code>
+      <label>Obligatoire</label>
+      <description>Obligatoire</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>optional</code>
+      <label>Optionnel</label>
+      <description>Optionnel</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>conditional</code>
+      <label>Conditionnel</label>
+      <description>Conditionnel</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+  </codelist>
+  <!-- ==================================================== -->
+  <codelist name="gmd:MD_PixelOrientationCode">
+    <entry>
+      <code>center</code>
+      <label>Centre</label>
+      <description>Centre</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>lowerLeft</code>
+      <label>Bas gauche</label>
+      <description>Bas gauche</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>lowerRight</code>
+      <label>Bas droit</label>
+      <description>Bas droit</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>upperRight</code>
+      <label>Haut droit</label>
+      <description>Haut droit</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>upperLeft</code>
+      <label>Haut gauche</label>
+      <description>Haut gauche</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+  </codelist>
+  <!-- ==================================================== -->
+  <codelist name="gmd:MD_ProgressCode">
+    <entry>
+      <code>completed</code>
+      <label>Finalisé</label>
+      <description>Production de la ressource finalisée</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>historicalArchive</code>
+      <label>Archivé</label>
+      <description>Ressource archivée hors ligne</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>obsolete</code>
+      <label>Obsolète</label>
+      <description>Ressource obsolète</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>onGoing</code>
+      <label>Mise à jour continue</label>
+      <description>Ressource continuellement mise à jour</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>planned</code>
+      <label>Planifié</label>
+      <description>Ressource créée ou mise à jour sur base d'une date fixée</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>required</code>
+      <label>Création ou mise à jour requise</label>
+      <description>Ressource qui doit être générée ou mise à jour</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>underDevelopment</code>
+      <label>En cours de création</label>
+      <description>Ressource en cours de création</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry hideInEditMode="true">
+      <code>notobsolete</code>
+      <label>Non obsolète</label>
+      <description></description>
+    </entry>
+  </codelist>
+  <!-- ==================================================== -->
+  <codelist name="gmd:MD_RestrictionCode">
+    <entry>
+      <code>copyright</code>
+      <label>Droit d’auteur / Droit moral (copyright)</label>
+      <description>Restriction lié à l’exercice du droit moral</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>patent</code>
+      <label>Brevet</label>
+      <description>Restriction induite par l’existence d’un brevet</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>patentPending</code>
+      <label>Brevet en instance</label>
+      <description>Restriction induite par le dépôt d’un brevet en cours</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>trademark</code>
+      <label>Marque de commerce</label>
+      <description>Restriction lié à l’existence d’un dépôt de marque</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>license</code>
+      <label>Licence</label>
+      <description>Restriction induite par l’existence d’une licence</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>intellectualPropertyRights</code>
+      <label>Droit de propriété intellectuelle / Droit patrimonial</label>
+      <description>Restriction lié à l’exercice du droit patrimonial</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>restricted</code>
+      <label>Restreint</label>
+      <description>Cette valeur n’a pas d’application identifiée en France</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>otherRestrictions</code>
+      <label>Autres restrictions</label>
+      <description>Restrictions non prévues</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+  </codelist>
+  <!-- ==================================================== -->
+  <codelist name="gmd:MD_ScopeCode" editorMode="radio">
+    <entry>
+      <code>attribute</code>
+      <label>Attribut</label>
+      <description>Informations appliquées aux caractéristiques de l’attribut</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>attributeType</code>
+      <label>Type d'attribut</label>
+      <description>Informations appliquées aux caractéristiques de l’entité</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>collectionHardware</code>
+      <label>Collection matérielle</label>
+      <description>Informations appliquées aux caractéristiques d’une collection matérielle
+      </description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>collectionSession</code>
+      <label>Collection de session</label>
+      <description>Informations appliquées aux caractéristiques d’une collection de session
+      </description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>dataset</code>
+      <label>Jeu de données</label>
+      <description>Informations appliquées aux caractéristiques de jeu de données</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>series</code>
+      <label>Collection de données</label>
+      <description>Informations appliquées aux caractéristiques de la collection de données
+      </description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>nonGeographicDataset</code>
+      <label>Jeux de données non géographiques</label>
+      <description>Informations appliquées aux caractéristiques de jeux de données non
+        géographiques
+      </description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>dimensionGroup</code>
+      <label>Dimension d'un groupe</label>
+      <description>Informations appliquées à un groupe</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>feature</code>
+      <label>Entité</label>
+      <description>Informations appliquées à une entité</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>featureType</code>
+      <label>Type d’entité</label>
+      <description>Informations appliquées à un type d’entité</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>propertyType</code>
+      <label>Type de propriété</label>
+      <description>Informations appliquées à un type de propriété</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>fieldSession</code>
+      <label>Champ de session</label>
+      <description>Informations appliquées aux caractéristiques d’un champ de session</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>software</code>
+      <label>Logiciel</label>
+      <description>Informations appliquées à programme ou à une routine</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>service</code>
+      <label>Service</label>
+      <description>Informations appliquées à un service Internet</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>model</code>
+      <label>Modèle</label>
+      <description>Informations appliquées à modèle décrivant les objets ou un ensemble d'objets
+      </description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>tile</code>
+      <label>Tuile</label>
+      <description>Tuile</description>
+    </entry>
+    <!-- ISO PROFIL CHE ONLY
+        <entry>
+            <code>project</code>
+            <label>Projet</label>
+            <description>Le projet décrit le cadre organisationnel défini pour l'accomplissement d'une tâche: il intègre la description des tenants et des aboutissants du problème, les objectifs, les activités prévues, les étapes de réalisation, les délais, les ressources...</description>
+        </entry>
+        <entry>
+            <code>stationSite</code>
+            <label>Station</label>
+            <description>Cet élément décrit les activités d'acquisition de données des stations de mesure ; il ne décrit pas les données mais la manière dont elles ont été saisies (paramètres de saisie, méthodes, instruments)</description>
+        </entry>
+        <entry>
+            <code>publication</code>
+            <label>Publication</label>
+            <description>Ce sont des produits finis tels que les ouvrages, brochures, articles, rapports, matériel audiovisuel...</description>
+        </entry>-->
+
+
+    <!-- Used for facet translation only and not displayed in editor -->
+    <entry>
+      <code>map</code>
+      <label>Carte</label>
+      <description></description>
+    </entry>
+    <entry>
+      <code>staticMap</code>
+      <label>Carte statique</label>
+      <description></description>
+    </entry>
+	<entry>
+      <code>chart</code>
+      <label>Graphe</label>
+      <description></description>
+    </entry>
+    <entry>
+      <code>interactiveMap</code>
+      <label>Carte interactive</label>
+      <description></description>
+    </entry>
+    <entry hideInEditMode="true">
+      <code>featureCatalog</code>
+      <label>Catalogue d'attributs</label>
+      <description></description>
+    </entry>
+  </codelist>
+  <!--
+      Example to customize scope code codelist for a service metadata record.
+      <codelist name="gmd:MD_ScopeCode" displayIf="/ancestor::node()[name()='gmd:MD_Metadata']/gmd:identificationInfo/srv:SV_ServiceIdentification">
+          <entry>
+              <code>service</code>
+              <label>Service</label>
+              <description>Informations appliquées à un service Internet</description>
+          </entry>
+      </codelist>-->
+  <!-- ==================================================== -->
+  <codelist name="gmd:MD_SpatialRepresentationTypeCode">
+    <entry>
+      <code>vector</code>
+      <label>Vecteur</label>
+      <description>Donnée vecteur (point, ligne, polygone)</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>grid</code>
+      <label>Raster</label>
+      <description>Donnée raster ou matricielle</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>textTable</code>
+      <label>Tabulaire</label>
+      <description>Fichier texte ou table</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>tin</code>
+      <label>TIN</label>
+      <description>Réseau de triangle irrégulier (Triangulated Irregular Network)</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>stereoModel</code>
+      <label>Modèle stéréoscopique</label>
+      <description>Vue tridimensionnelle formée par l'intersection des rayons homologues d'une paire
+        d'images se recouvrant
+      </description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>video</code>
+      <label>Vidéo</label>
+      <description>Enregistrement vidéo</description>
+    </entry>
+    <!-- ISO PROFIL CHE ONLY
+        <entry>
+            <code>paperMap</code>
+            <label>Carte papier</label>
+            <description></description>
+        </entry>-->
+  </codelist>
+  <!-- ==================================================== -->
+  <codelist name="gmd:MD_TopicCategoryCode">
+    <entry>
+      <code>farming</code>
+      <label>Agriculture</label>
+      <description>Elevage et/ou cultures. Exemples : agriculture, irrigation, aquaculture,
+        plantations
+      </description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>biota</code>
+      <label>Biote</label>
+      <description>Flore et faune dans un écosystème naturel. Exemples : habitat, écologie, faune
+        sauvage, faune aquatique, sciences biologiques, zones humides, végétation, biodiversité
+      </description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>boundaries</code>
+      <label>Limites</label>
+      <description>Exemples : limites de pays, de provinces, de départements, de communes
+      </description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>climatologyMeteorologyAtmosphere</code>
+      <label>Climatologie/Météorologie/Atmosphère</label>
+      <description>Processus et phénomènes atmosphériques. Exemples : climat, météorologie,
+        conditions atmosphériques, changements climatiques, couverture nuageuse
+      </description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>economy</code>
+      <label>Economie</label>
+      <description>Activités économiques. Exemples : production, travail, revenu, commerce,
+        industrie, tourisme et éco-tourisme, foresterie, pêche, chasse, exploration et exploitation
+        des ressources minières, pétrole, gaz naturel
+      </description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>elevation</code>
+      <label>Altitude</label>
+      <description>Hauteurs au dessous et dessus du niveau de la mer. Exemples : altitude,
+        bathymétrie, MNT, pentes et calculs dérivés de l’altitude
+      </description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>environment</code>
+      <label>Environnement</label>
+      <description>Ressources naturelles, protection, conservation des ressources naturelles.
+        Exemples : pollution, traitement et stockage des déchets, suivi de l’environnement, gestion
+        du risque, réserves naturelles, paysage
+      </description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>geoscientificInformation</code>
+      <label>Informations géoscientifiques</label>
+      <description>Informations relatives aux sciences de la terre. Exemples : composants et
+        processus géophysiques, géologie, minéralogie, tectonique, risque sismique
+      </description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>health</code>
+      <label>Santé</label>
+      <description>Santé, services de santé, épidémiologie. Exemples : maladies et épidémie,
+        facteurs affectant la santé, santé mentale et physique, services de santé
+      </description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>imageryBaseMapsEarthCover</code>
+      <label>Imagerie/Cartes de base/Occupation des terres</label>
+      <description>Carte de référence. Exemples : occupation des terres, imagerie aérienne et
+        satellitale, carte thématiques, carte topographiques
+      </description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>intelligenceMilitary</code>
+      <label>Renseignement/Secteur militaire</label>
+      <description>Bases militaires et infrastructures</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>inlandWaters</code>
+      <label>Eaux intérieures</label>
+      <description>Exemples : fleuves, rivières, glaciers, lacs salés, systèmes hydrographiques,
+        barrages, débits, qualité de l’eau
+      </description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>location</code>
+      <label>Localisation</label>
+      <description>Exemples : zones postales, adresses, points de contrôle, réseau géodésique
+      </description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>oceans</code>
+      <label>Océans</label>
+      <description>Composants et caractéristiques du milieu maritime. Exemples : littoral, récifs,
+        marée, etc.
+      </description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>planningCadastre</code>
+      <label>Planification/Cadastre</label>
+      <description>Exemples : carte d’utilisation des terres, plan d’occupation des sols,
+        planification pour la prévention des risques
+      </description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>society</code>
+      <label>Société</label>
+      <description>Caractéristiques des sociétés et des cultures. Exemples :lois, anthropologie,
+        éducation, données démographiques, archéologique, suivi des systèmes sociaux, croyances, us
+        et coutumes, crimes et justices
+      </description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>structure</code>
+      <label>Structure</label>
+      <description>Aménagements urbains. Exemples : musée, église, usines, maisons, monuments,
+        boutiques, immeubles
+      </description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>transportation</code>
+      <label>Transport</label>
+      <description>Moyens de transports des personnes et des biens. Exemples : routes, aéroports,
+        tunnels, viaducs, ponts, chemin de fer
+      </description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>utilitiesCommunication</code>
+      <label>Services d'utilité publique/Communication</label>
+      <description>Systèmes de distribution de gestion ou de stockage de l’énergie, de l’eau, des
+        déchets. Infrastructures et services de communication. Exemples : source d’énergie solaire,
+        hydroélectrique, nucléaire, épuration et distribution des eaux, réseau de distribution
+        électrique, de gaz, réseau de télécommunication, radio.
+      </description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+  </codelist>
+  <!-- ==================================================== -->
+  <codelist name="gmd:MD_TopologyLevelCode">
+    <entry>
+      <code>geometryOnly</code>
+      <label>Géométrie seulement</label>
+      <description>Objets vecteurs sans aucune structure qui décrit la topologie</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>topology1D</code>
+      <label>Topologie de réseau</label>
+      <description>Réseau sans surface (communément dénommée topologie réseau)</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>planarGraph</code>
+      <label>Graphe planaire</label>
+      <description>Topologie 1D planaire</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>fullPlanarGraph</code>
+      <label>Topologie de réseau complète</label>
+      <description>Topologie 2D planaire</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>surfaceGraph</code>
+      <label>Topologie de surface</label>
+      <description>Topologie 1D avec surfaces</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>fullSurfaceGraph</code>
+      <label>Topologie de surface complète</label>
+      <description>Topologie 2D avec surfaces</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>topology3D</code>
+      <label>Topologie 3D</label>
+      <description>Topologie 3D</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>fullTopology3D</code>
+      <label>Topologie 3D complète</label>
+      <description>Couverture complète d’un espace Euclidien 3D</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>abstract</code>
+      <label>Spaghetti</label>
+      <description>Objets géométriques sans description de la topologie</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+  </codelist>
+  <!-- ==================================================== -->
+  <codelist name="gmd:MX_ScopeCode">
+    <entry>
+      <code>attribute</code>
+      <label>Attribut</label>
+      <description>Informations appliquées aux caractéristiques de l’attribut</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>attributeType</code>
+      <label>Type d'attribut</label>
+      <description>Informations appliquées aux caractéristiques de l’entité</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>collectionHardware</code>
+      <label>Collection matérielle</label>
+      <description>Informations appliquées aux caractéristiques d’une collection matérielle
+      </description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>collectionSession</code>
+      <label>Collection de session</label>
+      <description>Informations appliquées aux caractéristiques d’une collection de session
+      </description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>dataset</code>
+      <label>Jeu de données</label>
+      <description>Informations appliquées aux caractéristiques de jeu de données</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>series</code>
+      <label>Collection de données</label>
+      <description>Informations appliquées aux caractéristiques de la collection de données
+      </description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>nonGeographicDataset</code>
+      <label>Jeux de données non géographiques</label>
+      <description>Informations appliquées aux caractéristiques de jeux de données non
+        géographiques
+      </description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>dimensionGroup</code>
+      <label>Dimension d'un groupe</label>
+      <description>Informations appliquées à un groupe</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>feature</code>
+      <label>Entité</label>
+      <description>Informations appliquées à une entité</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>featureType</code>
+      <label>Type d’entité</label>
+      <description>Informations appliquées à un type d’entité</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>propertyType</code>
+      <label>Type de propriété</label>
+      <description>Informations appliquées à un type de propriété</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>fieldSession</code>
+      <label>Champ de session</label>
+      <description>Informations appliquées aux caractéristiques d’un champ de session</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>software</code>
+      <label>Logiciel</label>
+      <description>Informations appliquées à programme ou à une routine</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>service</code>
+      <label>Service</label>
+      <description>Informations appliquées à un service Internet</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>model</code>
+      <label>Modèle</label>
+      <description>Informations appliquées à modèle décrivant les objets ou un ensemble d'objets
+      </description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>tile</code>
+      <label>Tile</label>
+      <description>Tile</description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>initiative</code>
+      <label>Initiative</label>
+      <description>The referencing entity applies to a transfer aggregate which was originally
+        identified as an initiative (DS_Initiative)
+      </description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>stereomate</code>
+      <label>Stereomate</label>
+      <description>The referencing entity applies to a transfer aggregate which was originally
+        identified as a stereo mate (DS_StereoMate)
+      </description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>sensor</code>
+      <label>Sensor</label>
+      <description>The referencing entity applies to a transfer aggregate which was originally
+        identified as a sensor (DS_Sensor)
+      </description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>platformSeries</code>
+      <label>PlatformSeries</label>
+      <description>The referencing entity applies to a transfer aggregate which was originally
+        identified as a platform series (DS_PlatformSeries)
+      </description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>sensorSeries</code>
+      <label>SensorSeries</label>
+      <description>The referencing entity applies to a transfer aggregate which was originally
+        identified as a sensor series (DS_SensorSeries)
+      </description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>productionSeries</code>
+      <label>ProductionSeries</label>
+      <description>The referencing entity applies to a transfer aggregate which was originally
+        identified as a production series (DS_ProductionSeries)
+      </description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>transferAggregate</code>
+      <label>TransferAggregate</label>
+      <description>The referencing entity applies to a transfer aggregate which has no existence
+        outside of the transfer context
+      </description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+    <entry>
+      <code>otherAggregate</code>
+      <label>OtherAggregate</label>
+      <description>The referencing entity applies to a transfer aggregate which has an existence
+        outside of the transfer context, but which does not pertains to a specific aggregate
+        type.
+      </description>
+    </entry>
+    <!-- - - - - - - - - - - - - - - - - - - - - - - - - -->
+  </codelist>
+  <!-- ==================================================== -->
+  <codelist name="srv:DCPList">
+    <entry>
+      <description>DCP is XML</description>
+      <code>XML</code>
+      <label>XML</label>
+    </entry>
+    <entry>
+      <description>DCP is CORBA</description>
+      <code>CORBA</code>
+      <label>CORBA</label>
+    </entry>
+    <entry>
+      <description>DCP is JAVA</description>
+      <code>JAVA</code>
+      <label>JAVA</label>
+    </entry>
+    <entry>
+      <description>DCP is COM</description>
+      <code>COM</code>
+      <label>COM</label>
+    </entry>
+    <entry>
+      <description>DCP is SQL</description>
+      <code>SQL</code>
+      <label>SQL</label>
+    </entry>
+    <entry>
+      <description>DCP is WebServices</description>
+      <code>WebServices</code>
+      <label>WebServices</label>
+    </entry>
+  </codelist>
+  <!--=== CouplingType from ISO19119 ===-->
+  <codelist name="srv:SV_CouplingType">
+    <entry>
+      <description>Présence d'une donnée associée</description>
+      <code>tight</code>
+      <label>Reserré</label>
+    </entry>
+    <entry>
+      <description>Présence de plusieurs données associées</description>
+      <code>mixed</code>
+      <label>Mixte</label>
+    </entry>
+    <entry>
+      <description>Absence de donnée associée</description>
+      <code>loose</code>
+      <label>Libre</label>
+    </entry>
+  </codelist>
+
+  <codelist name="srv:SV_ParameterDirection">
+    <entry>
+      <code>in</code>
+      <label>Entrée</label>
+    </entry>
+    <entry>
+      <code>out</code>
+      <label>Sortie</label>
+    </entry>
+    <entry>
+      <code>in/out</code>
+      <label>Entrée/Sortie</label>
+    </entry>
+  </codelist>
+
+  <codelist name="gco:nilReason">
+    <entry>
+      <code>missing</code>
+      <label>Manquant</label>
+    </entry>
+    <entry>
+      <code>inapplicable</code>
+      <label>Non appliquable</label>
+    </entry>
+    <entry>
+      <code>template</code>
+      <label>Modèle</label>
+    </entry>
+    <entry>
+      <code>unknown</code>
+      <label>Inconnu</label>
+    </entry>
+    <entry>
+      <code>withheld</code>
+      <label>Avec autorisation</label>
+    </entry>
+  </codelist>
+
+  <codelist name="indeterminatePosition">
+    <entry>
+      <code>after</code>
+      <label>Après</label>
+    </entry>
+    <entry>
+      <code>before</code>
+      <label>Avant</label>
+    </entry>
+    <entry>
+      <code>now</code>
+      <label>Maintenant</label>
+    </entry>
+    <entry>
+      <code>unknown</code>
+      <label>Inconnu</label>
+    </entry>
+  </codelist>
+</codelists>
diff --git a/src/main/webapp/WEB-INF/data/config/schema_plugins/iso19139/schematron/schematron-rules-geonetwork.sch b/src/main/webapp/WEB-INF/data/config/schema_plugins/iso19139/schematron/schematron-rules-geonetwork.sch
new file mode 100644
index 0000000..f319747
--- /dev/null
+++ b/src/main/webapp/WEB-INF/data/config/schema_plugins/iso19139/schematron/schematron-rules-geonetwork.sch
@@ -0,0 +1,71 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+  ~ Copyright (C) 2001-2016 Food and Agriculture Organization of the
+  ~ United Nations (FAO-UN), United Nations World Food Programme (WFP)
+  ~ and United Nations Environment Programme (UNEP)
+  ~
+  ~ This program is free software; you can redistribute it and/or modify
+  ~ it under the terms of the GNU General Public License as published by
+  ~ the Free Software Foundation; either version 2 of the License, or (at
+  ~ your option) any later version.
+  ~
+  ~ This program is distributed in the hope that it will be useful, but
+  ~ WITHOUT ANY WARRANTY; without even the implied warranty of
+  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+  ~ General Public License for more details.
+  ~
+  ~ You should have received a copy of the GNU General Public License
+  ~ along with this program; if not, write to the Free Software
+  ~ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
+  ~
+  ~ Contact: Jeroen Ticheler - FAO - Viale delle Terme di Caracalla 2,
+  ~ Rome - Italy. email: geonetwork@osgeo.org
+  -->
+
+<sch:schema xmlns:sch="http://purl.oclc.org/dsdl/schematron"
+    xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
+
+    <sch:title xmlns="http://www.w3.org/2001/XMLSchema">Schematron validation / GeoNetwork recommendations</sch:title>
+    <sch:ns prefix="gml" uri="http://www.opengis.net/gml"/>
+    <sch:ns prefix="gmd" uri="http://www.isotc211.org/2005/gmd"/>
+    <sch:ns prefix="srv" uri="http://www.isotc211.org/2005/srv"/>
+    <sch:ns prefix="gco" uri="http://www.isotc211.org/2005/gco"/>
+    <sch:ns prefix="geonet" uri="http://www.fao.org/geonetwork"/>
+    <sch:ns prefix="xlink" uri="http://www.w3.org/1999/xlink"/>    
+
+    <!-- =============================================================
+    GeoNetwork schematron rules:
+    ============================================================= -->
+    <sch:pattern>
+        <sch:title>$loc/strings/M500</sch:title>
+        <sch:rule
+            context="//gmd:MD_Metadata|//*[@gco:isoType='gmd:MD_Metadata']">
+        	<sch:let name="language" value="gmd:language/gco:CharacterString|gmd:language/gmd:LanguageCode/@codeListValue"/>
+            <sch:let name="localeAndNoLanguage" value="not(gmd:locale and gmd:language/@gco:nilReason='missing')
+                and not(gmd:locale and not(gmd:language))"/>
+            <sch:let name="duplicateLanguage" value="not(gmd:locale/gmd:PT_Locale/gmd:languageCode/gmd:LanguageCode/@codeListValue=$language)"/>
+   
+   
+            <!--  Check that main language is not defined and gmd:locale element exist. -->
+            <sch:assert test="$localeAndNoLanguage"
+                >$loc/strings/alert.M500</sch:assert>
+            <sch:report test="$localeAndNoLanguage"
+                ><sch:value-of select="$loc/strings/report.M500"/> "<sch:value-of select="normalize-space($language)"/>"</sch:report>
+            
+    
+            <!-- 
+                * Check that main language is defined and does not exist in gmd:locale.
+                * Do not declare a language twice in gmd:locale section.	
+                This should not happen due to XSD error
+                which is usually made before schematron validation:
+                "The value 'XX' of attribute 'id' on element 'gmd:PT_Locale' is not valid with respect to its type, 'ID'. 
+                (Element: gmd:PT_Locale with parent element: gmd:locale)"
+            -->
+            <sch:assert test="$duplicateLanguage"
+                >$loc/strings/alert.M501</sch:assert>
+            <sch:report test="$duplicateLanguage"
+                >$loc/strings/report.M501</sch:report>
+            
+        </sch:rule>
+    </sch:pattern>
+</sch:schema>
diff --git a/src/main/webapp/WEB-INF/data/config/schema_plugins/iso19139/schematron/schematron-rules-geonetwork.xsl b/src/main/webapp/WEB-INF/data/config/schema_plugins/iso19139/schematron/schematron-rules-geonetwork.xsl
new file mode 100644
index 0000000..2963ccf
--- /dev/null
+++ b/src/main/webapp/WEB-INF/data/config/schema_plugins/iso19139/schematron/schematron-rules-geonetwork.xsl
@@ -0,0 +1,303 @@
+<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
+<xsl:stylesheet xmlns:xhtml="http://www.w3.org/1999/xhtml"
+                xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+                xmlns:xs="http://www.w3.org/2001/XMLSchema"
+                xmlns:schold="http://www.ascc.net/xml/schematron"
+                xmlns:iso="http://purl.oclc.org/dsdl/schematron"
+                xmlns:gml="http://www.opengis.net/gml"
+                xmlns:gmd="http://www.isotc211.org/2005/gmd"
+                xmlns:srv="http://www.isotc211.org/2005/srv"
+                xmlns:gco="http://www.isotc211.org/2005/gco"
+                xmlns:geonet="http://www.fao.org/geonetwork"
+                xmlns:xlink="http://www.w3.org/1999/xlink"
+                exclude-result-prefixes="#all"
+                version="2.0"><!--Implementers: please note that overriding process-prolog or process-root is
+      the preferred method for meta-stylesheets to use where possible.
+    -->
+<xsl:param name="archiveDirParameter"/>
+   <xsl:param name="archiveNameParameter"/>
+   <xsl:param name="fileNameParameter"/>
+   <xsl:param name="fileDirParameter"/>
+   <xsl:variable name="document-uri">
+      <xsl:value-of select="document-uri(/)"/>
+   </xsl:variable>
+
+   <!--PHASES-->
+
+
+<!--PROLOG-->
+<xsl:output xmlns:svrl="http://purl.oclc.org/dsdl/svrl" method="xml"
+               omit-xml-declaration="no"
+               standalone="yes"
+               indent="yes"/>
+   <xsl:include xmlns:svrl="http://purl.oclc.org/dsdl/svrl" href="../../../xsl/utils-fn.xsl"/>
+   <xsl:param xmlns:svrl="http://purl.oclc.org/dsdl/svrl" name="lang"/>
+   <xsl:param xmlns:svrl="http://purl.oclc.org/dsdl/svrl" name="thesaurusDir"/>
+   <xsl:param xmlns:svrl="http://purl.oclc.org/dsdl/svrl" name="rule"/>
+   <xsl:variable xmlns:svrl="http://purl.oclc.org/dsdl/svrl" name="loc"
+                 select="document(concat('../loc/', $lang, '/', $rule, '.xml'))"/>
+
+   <!--XSD TYPES FOR XSLT2-->
+
+
+<!--KEYS AND FUNCTIONS-->
+
+
+<!--DEFAULT RULES-->
+
+
+<!--MODE: SCHEMATRON-SELECT-FULL-PATH-->
+<!--This mode can be used to generate an ugly though full XPath for locators
+    -->
+<xsl:template match="*" mode="schematron-select-full-path">
+      <xsl:apply-templates select="." mode="schematron-get-full-path"/>
+   </xsl:template>
+
+   <!--MODE: SCHEMATRON-FULL-PATH-->
+<!--This mode can be used to generate an ugly though full XPath for locators
+    -->
+<xsl:template match="*" mode="schematron-get-full-path">
+      <xsl:apply-templates select="parent::*" mode="schematron-get-full-path"/>
+      <xsl:text>/</xsl:text>
+      <xsl:choose>
+         <xsl:when test="namespace-uri()=''">
+            <xsl:value-of select="name()"/>
+            <xsl:variable name="p_1"
+                          select="1+       count(preceding-sibling::*[name()=name(current())])"/>
+            <xsl:if test="$p_1&gt;1 or following-sibling::*[name()=name(current())]">[<xsl:value-of select="$p_1"/>]</xsl:if>
+         </xsl:when>
+         <xsl:otherwise>
+            <xsl:text>*[local-name()='</xsl:text>
+            <xsl:value-of select="local-name()"/>
+            <xsl:text>']</xsl:text>
+            <xsl:variable name="p_2"
+                          select="1+     count(preceding-sibling::*[local-name()=local-name(current())])"/>
+            <xsl:if test="$p_2&gt;1 or following-sibling::*[local-name()=local-name(current())]">[<xsl:value-of select="$p_2"/>]</xsl:if>
+         </xsl:otherwise>
+      </xsl:choose>
+   </xsl:template>
+   <xsl:template match="@*" mode="schematron-get-full-path">
+      <xsl:text>/</xsl:text>
+      <xsl:choose>
+         <xsl:when test="namespace-uri()=''">@
+              <xsl:value-of select="name()"/>
+         </xsl:when>
+         <xsl:otherwise>
+            <xsl:text>@*[local-name()='</xsl:text>
+            <xsl:value-of select="local-name()"/>
+            <xsl:text>' and namespace-uri()='</xsl:text>
+            <xsl:value-of select="namespace-uri()"/>
+            <xsl:text>']</xsl:text>
+         </xsl:otherwise>
+      </xsl:choose>
+   </xsl:template>
+
+   <!--MODE: SCHEMATRON-FULL-PATH-2-->
+<!--This mode can be used to generate prefixed XPath for humans-->
+<xsl:template match="node() | @*" mode="schematron-get-full-path-2">
+      <xsl:for-each select="ancestor-or-self::*">
+         <xsl:text>/</xsl:text>
+         <xsl:value-of select="name(.)"/>
+         <xsl:if test="preceding-sibling::*[name(.)=name(current())]">
+            <xsl:text>[</xsl:text>
+            <xsl:value-of select="count(preceding-sibling::*[name(.)=name(current())])+1"/>
+            <xsl:text>]</xsl:text>
+         </xsl:if>
+      </xsl:for-each>
+      <xsl:if test="not(self::*)">
+         <xsl:text/>/@
+        <xsl:value-of select="name(.)"/>
+      </xsl:if>
+   </xsl:template>
+   <!--MODE: SCHEMATRON-FULL-PATH-3-->
+<!--This mode can be used to generate prefixed XPath for humans
+      (Top-level element has index)
+    -->
+<xsl:template match="node() | @*" mode="schematron-get-full-path-3">
+      <xsl:for-each select="ancestor-or-self::*">
+         <xsl:text>/</xsl:text>
+         <xsl:value-of select="name(.)"/>
+         <xsl:if test="parent::*">
+            <xsl:text>[</xsl:text>
+            <xsl:value-of select="count(preceding-sibling::*[name(.)=name(current())])+1"/>
+            <xsl:text>]</xsl:text>
+         </xsl:if>
+      </xsl:for-each>
+      <xsl:if test="not(self::*)">
+         <xsl:text/>/@
+        <xsl:value-of select="name(.)"/>
+      </xsl:if>
+   </xsl:template>
+
+   <!--MODE: GENERATE-ID-FROM-PATH-->
+<xsl:template match="/" mode="generate-id-from-path"/>
+   <xsl:template match="text()" mode="generate-id-from-path">
+      <xsl:apply-templates select="parent::*" mode="generate-id-from-path"/>
+      <xsl:value-of select="concat('.text-', 1+count(preceding-sibling::text()), '-')"/>
+   </xsl:template>
+   <xsl:template match="comment()" mode="generate-id-from-path">
+      <xsl:apply-templates select="parent::*" mode="generate-id-from-path"/>
+      <xsl:value-of select="concat('.comment-', 1+count(preceding-sibling::comment()), '-')"/>
+   </xsl:template>
+   <xsl:template match="processing-instruction()" mode="generate-id-from-path">
+      <xsl:apply-templates select="parent::*" mode="generate-id-from-path"/>
+      <xsl:value-of select="concat('.processing-instruction-', 1+count(preceding-sibling::processing-instruction()), '-')"/>
+   </xsl:template>
+   <xsl:template match="@*" mode="generate-id-from-path">
+      <xsl:apply-templates select="parent::*" mode="generate-id-from-path"/>
+      <xsl:value-of select="concat('.@', name())"/>
+   </xsl:template>
+   <xsl:template match="*" mode="generate-id-from-path" priority="-0.5">
+      <xsl:apply-templates select="parent::*" mode="generate-id-from-path"/>
+      <xsl:text>.</xsl:text>
+      <xsl:value-of select="concat('.',name(),'-',1+count(preceding-sibling::*[name()=name(current())]),'-')"/>
+   </xsl:template>
+
+   <!--MODE: GENERATE-ID-2-->
+<xsl:template match="/" mode="generate-id-2">U</xsl:template>
+   <xsl:template match="*" mode="generate-id-2" priority="2">
+      <xsl:text>U</xsl:text>
+      <xsl:number level="multiple" count="*"/>
+   </xsl:template>
+   <xsl:template match="node()" mode="generate-id-2">
+      <xsl:text>U.</xsl:text>
+      <xsl:number level="multiple" count="*"/>
+      <xsl:text>n</xsl:text>
+      <xsl:number count="node()"/>
+   </xsl:template>
+   <xsl:template match="@*" mode="generate-id-2">
+      <xsl:text>U.</xsl:text>
+      <xsl:number level="multiple" count="*"/>
+      <xsl:text>_</xsl:text>
+      <xsl:value-of select="string-length(local-name(.))"/>
+      <xsl:text>_</xsl:text>
+      <xsl:value-of select="translate(name(),':','.')"/>
+   </xsl:template>
+   <!--Strip characters--><xsl:template match="text()" priority="-1"/>
+
+   <!--SCHEMA SETUP-->
+<xsl:template match="/">
+      <svrl:schematron-output xmlns:svrl="http://purl.oclc.org/dsdl/svrl"
+                              title="Schematron validation / GeoNetwork recommendations"
+                              schemaVersion="">
+         <xsl:comment>
+            <xsl:value-of select="$archiveDirParameter"/>
+         
+        <xsl:value-of select="$archiveNameParameter"/>
+         
+        <xsl:value-of select="$fileNameParameter"/>
+         
+        <xsl:value-of select="$fileDirParameter"/>
+         </xsl:comment>
+         <svrl:ns-prefix-in-attribute-values uri="http://www.opengis.net/gml" prefix="gml"/>
+         <svrl:ns-prefix-in-attribute-values uri="http://www.isotc211.org/2005/gmd" prefix="gmd"/>
+         <svrl:ns-prefix-in-attribute-values uri="http://www.isotc211.org/2005/srv" prefix="srv"/>
+         <svrl:ns-prefix-in-attribute-values uri="http://www.isotc211.org/2005/gco" prefix="gco"/>
+         <svrl:ns-prefix-in-attribute-values uri="http://www.fao.org/geonetwork" prefix="geonet"/>
+         <svrl:ns-prefix-in-attribute-values uri="http://www.w3.org/1999/xlink" prefix="xlink"/>
+         <svrl:active-pattern>
+            <xsl:attribute name="document">
+               <xsl:value-of select="document-uri(/)"/>
+            </xsl:attribute>
+            <xsl:attribute name="name">
+               <xsl:value-of select="$loc/strings/M500"/>
+            </xsl:attribute>
+            <xsl:apply-templates/>
+         </svrl:active-pattern>
+         <xsl:apply-templates select="/" mode="M7"/>
+      </svrl:schematron-output>
+   </xsl:template>
+
+   <!--SCHEMATRON PATTERNS-->
+<svrl:text xmlns:svrl="http://purl.oclc.org/dsdl/svrl">Schematron validation / GeoNetwork recommendations</svrl:text>
+
+   <!--PATTERN
+        $loc/strings/M500-->
+<svrl:text xmlns:svrl="http://purl.oclc.org/dsdl/svrl">
+      <xsl:copy-of select="$loc/strings/M500"/>
+   </svrl:text>
+
+  <!--RULE
+      -->
+<xsl:template match="//gmd:MD_Metadata|//*[@gco:isoType='gmd:MD_Metadata']" priority="1000"
+                 mode="M7">
+      <svrl:fired-rule xmlns:svrl="http://purl.oclc.org/dsdl/svrl"
+                       context="//gmd:MD_Metadata|//*[@gco:isoType='gmd:MD_Metadata']"/>
+      <xsl:variable name="language"
+                    select="gmd:language/gco:CharacterString|gmd:language/gmd:LanguageCode/@codeListValue"/>
+      <xsl:variable name="localeAndNoLanguage"
+                    select="not(gmd:locale and gmd:language/@gco:nilReason='missing')                 and not(gmd:locale and not(gmd:language))"/>
+      <xsl:variable name="duplicateLanguage"
+                    select="not(gmd:locale/gmd:PT_Locale/gmd:languageCode/gmd:LanguageCode/@codeListValue=$language)"/>
+
+      <!--ASSERT
+      -->
+<xsl:choose>
+         <xsl:when test="$localeAndNoLanguage"/>
+         <xsl:otherwise>
+            <svrl:failed-assert xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                test="$localeAndNoLanguage">
+               <xsl:attribute name="location">
+                  <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+               </xsl:attribute>
+               <svrl:text>
+                  <xsl:copy-of select="$loc/strings/alert.M500"/>
+               </svrl:text>
+            </svrl:failed-assert>
+         </xsl:otherwise>
+      </xsl:choose>
+
+      <!--REPORT
+      -->
+<xsl:if test="$localeAndNoLanguage">
+         <svrl:successful-report xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                 test="$localeAndNoLanguage">
+            <xsl:attribute name="location">
+               <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+            </xsl:attribute>
+            <svrl:text>
+               <xsl:text/>
+               <xsl:copy-of select="$loc/strings/report.M500"/>
+               <xsl:text/> "<xsl:text/>
+               <xsl:copy-of select="normalize-space($language)"/>
+               <xsl:text/>"</svrl:text>
+         </svrl:successful-report>
+      </xsl:if>
+
+      <!--ASSERT
+      -->
+<xsl:choose>
+         <xsl:when test="$duplicateLanguage"/>
+         <xsl:otherwise>
+            <svrl:failed-assert xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                test="$duplicateLanguage">
+               <xsl:attribute name="location">
+                  <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+               </xsl:attribute>
+               <svrl:text>
+                  <xsl:copy-of select="$loc/strings/alert.M501"/>
+               </svrl:text>
+            </svrl:failed-assert>
+         </xsl:otherwise>
+      </xsl:choose>
+
+      <!--REPORT
+      -->
+<xsl:if test="$duplicateLanguage">
+         <svrl:successful-report xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                 test="$duplicateLanguage">
+            <xsl:attribute name="location">
+               <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+            </xsl:attribute>
+            <svrl:text>
+               <xsl:copy-of select="$loc/strings/report.M501"/>
+            </svrl:text>
+         </svrl:successful-report>
+      </xsl:if>
+      <xsl:apply-templates select="*|comment()|processing-instruction()" mode="M7"/>
+   </xsl:template>
+   <xsl:template match="text()" priority="-1" mode="M7"/>
+   <xsl:template match="@*|node()" priority="-2" mode="M7">
+      <xsl:apply-templates select="*|comment()|processing-instruction()" mode="M7"/>
+   </xsl:template>
+</xsl:stylesheet>
\ No newline at end of file
diff --git a/src/main/webapp/WEB-INF/data/config/schema_plugins/iso19139/schematron/schematron-rules-inspire.sch b/src/main/webapp/WEB-INF/data/config/schema_plugins/iso19139/schematron/schematron-rules-inspire.sch
new file mode 100644
index 0000000..508ad3c
--- /dev/null
+++ b/src/main/webapp/WEB-INF/data/config/schema_plugins/iso19139/schematron/schematron-rules-inspire.sch
@@ -0,0 +1,736 @@
+<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
+<!--
+  ~ Copyright (C) 2001-2016 Food and Agriculture Organization of the
+  ~ United Nations (FAO-UN), United Nations World Food Programme (WFP)
+  ~ and United Nations Environment Programme (UNEP)
+  ~
+  ~ This program is free software; you can redistribute it and/or modify
+  ~ it under the terms of the GNU General Public License as published by
+  ~ the Free Software Foundation; either version 2 of the License, or (at
+  ~ your option) any later version.
+  ~
+  ~ This program is distributed in the hope that it will be useful, but
+  ~ WITHOUT ANY WARRANTY; without even the implied warranty of
+  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+  ~ General Public License for more details.
+  ~
+  ~ You should have received a copy of the GNU General Public License
+  ~ along with this program; if not, write to the Free Software
+  ~ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
+  ~
+  ~ Contact: Jeroen Ticheler - FAO - Viale delle Terme di Caracalla 2,
+  ~ Rome - Italy. email: geonetwork@osgeo.org
+  -->
+
+<sch:schema xmlns:sch="http://purl.oclc.org/dsdl/schematron"
+    xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+    queryBinding="xslt2">
+    <!--
+
+This Schematron define INSPIRE IR on metadata for datasets and services.
+
+    @author Francois Prunayre, 2008-2010
+    @author Etienne Taffoureau, 2008-2010
+
+
+ * 2008-2010 (geosource and geocat.ch sandbox)
+  * First release
+ * 201004
+  * Updates based on INSPIRE metadata validator available here
+  http://www.inspire-geoportal.eu/index.cfm/pageid/48.
+  * Improve gco:nilReason check
+  * Add multilingual INSPIRE theme rule
+  * Add service taxonomy rules
+  * Don't generate error when conformity is missing. Then confomity is only non-evaluated
+
+NOTE : 
+ * A record could be "INSPIRE valid" in GeoNetwork
+and not in INSPIRE metadata validator if INSPIRE theme
+are defined in an other language than english for example (multilingual validation
+not available in INSPIRE geoportal for the time being).
+ * inspired by the schematron_rules.xml released under EUPL by 
+Kristian Senkler (conterra), Gianluca Luraschi (JRC), Ioannis Kanellopoulos (JRC)  
+
+
+TODO :
+ * Service taxonomy is using a codelist value instead of a label
+ (which is not user friendly).
+ * In case of multilingual metadata, some rules may be improved ?
+ * Do no check if keywords comes from realease X of GEMET as far
+ as we check we have one INSPIRE theme.
+ * INSPIRE metadata validation engine is not using same ISO19139 schema
+ gmd:language is a codelist not a gco:CharacterString.
+ 
+ 
+ 
+
+This work is licensed under the Creative Commons Attribution 2.5 License. 
+To view a copy of this license, visit 
+    http://creativecommons.org/licenses/by/2.5/ 
+
+or send a letter to:
+
+Creative Commons, 
+543 Howard Street, 5th Floor, 
+San Francisco, California, 94105, 
+USA.
+
+-->
+
+    <sch:title xmlns="http://www.w3.org/2001/XMLSchema">INSPIRE metadata implementing rule validation</sch:title>
+    <sch:ns prefix="gml" uri="http://www.opengis.net/gml"/>
+    <sch:ns prefix="gmd" uri="http://www.isotc211.org/2005/gmd"/>
+    <sch:ns prefix="gmx" uri="http://www.isotc211.org/2005/gmx"/>
+    <sch:ns prefix="srv" uri="http://www.isotc211.org/2005/srv"/>
+    <sch:ns prefix="gco" uri="http://www.isotc211.org/2005/gco"/>
+    <sch:ns prefix="geonet" uri="http://www.fao.org/geonetwork"/>
+    <sch:ns prefix="skos" uri="http://www.w3.org/2004/02/skos/core#"/>
+    <sch:ns prefix="xlink" uri="http://www.w3.org/1999/xlink"/>
+
+
+    <!-- INSPIRE metadata rules / START -->
+    <sch:pattern>
+        <sch:title>$loc/strings/identification</sch:title>
+
+        <sch:rule context="//gmd:identificationInfo/*/gmd:citation/gmd:CI_Citation">
+            <!-- Title -->
+            <sch:let name="noResourceTitle" value="not(gmd:title) or gmd:title/@gco:nilReason='missing'"/>
+            <sch:let name="resourceTitle" value="gmd:title/*/text()"/>
+
+            <sch:assert test="not($noResourceTitle)"><sch:value-of select="$loc/strings/alert.M35/div"/></sch:assert>
+            <sch:report test="not($noResourceTitle)">
+                <sch:value-of select="$loc/strings/report.M35/div"/><sch:value-of select="$resourceTitle"/>
+            </sch:report>
+
+
+        </sch:rule>
+
+
+        <!-- Online resource
+            Conditional for spatial dataset and spatial dataset
+            series: Mandatory if a URL is available to obtain
+            IR more information on the resources and/or access Obligation / condition related services.
+            • Conditional for services: Mandatory if linkage to the
+            service is available
+        -->
+        <sch:rule context="//gmd:distributionInfo/*/gmd:transferOptions/*/gmd:onLine/gmd:CI_OnlineResource">
+            <sch:let name="resourceLocator" value="gmd:linkage/*/text()"/>
+            <sch:let name="noResourceLocator" value="normalize-space(gmd:linkage/gmd:URL)=''
+					or not(gmd:linkage)"/>
+
+            <sch:assert test="not($noResourceLocator)">
+                <sch:value-of select="$loc/strings/alert.M52/div"/>
+            </sch:assert>
+            <sch:report test="not($noResourceLocator)">
+                <sch:value-of select="$loc/strings/report.M52/div"/>
+                <sch:value-of select="$resourceLocator"/>
+            </sch:report>
+        </sch:rule>
+
+
+
+        <!-- Resource type -->
+        <sch:rule context="//gmd:MD_Metadata">
+            <sch:let name="resourceType_present" value="gmd:hierarchyLevel/*/@codeListValue='dataset'
+				or gmd:hierarchyLevel/*/@codeListValue='series'
+				or gmd:hierarchyLevel/*/@codeListValue='service'"/>
+            <sch:let name="resourceType" value="string-join(gmd:hierarchyLevel/*/@codeListValue, ',')"/>
+
+            <sch:assert test="$resourceType_present">
+                <sch:value-of select="$loc/strings/alert.M37/div"/>
+            </sch:assert>
+            <sch:report test="$resourceType_present">
+                <sch:value-of select="$loc/strings/report.M37/div"/>
+                <sch:value-of select="$resourceType"/>
+            </sch:report>
+        </sch:rule>
+
+
+
+
+        <sch:rule context="//gmd:MD_DataIdentification|
+			//*[@gco:isoType='gmd:MD_DataIdentification']|
+			//srv:SV_ServiceIdentification|
+			//*[@gco:isoType='srv:SV_ServiceIdentification']">
+            <sch:let name="resourceAbstract" value="gmd:abstract/*/text()"/>
+            <sch:let name="noResourceAbstract" value="not(gmd:abstract) or gmd:abstract/@gco:nilReason='missing'"/>
+
+            <!-- Abstract -->
+            <sch:assert test="not($noResourceAbstract)">
+                <sch:value-of select="$loc/strings/alert.M36/div"/>
+            </sch:assert>
+            <sch:report test="not($noResourceAbstract)">
+                <sch:value-of select="$loc/strings/report.M36/div"/>
+                <sch:value-of select="$resourceAbstract"/>
+            </sch:report>
+
+
+        </sch:rule>
+    </sch:pattern>
+
+
+
+    <!-- Dataset and series only -->
+    <sch:pattern>
+        <sch:title>$loc/strings/dataIdentification</sch:title>
+
+        <sch:rule context="//gmd:MD_DataIdentification[
+			normalize-space(../../gmd:hierarchyLevel/gmd:MD_ScopeCode/@codeListValue) = 'series'
+			or normalize-space(../../gmd:hierarchyLevel/gmd:MD_ScopeCode/@codeListValue) = 'dataset'
+			or normalize-space(../../gmd:hierarchyLevel/gmd:MD_ScopeCode/@codeListValue) = '']|
+			//*[@gco:isoType='gmd:MD_DataIdentification' and (
+			normalize-space(../../gmd:hierarchyLevel/gmd:MD_ScopeCode/@codeListValue) = 'series'
+			or normalize-space(../../gmd:hierarchyLevel/gmd:MD_ScopeCode/@codeListValue) = 'dataset'
+			or normalize-space(../../gmd:hierarchyLevel/gmd:MD_ScopeCode/@codeListValue) = '')]">
+            <!-- resource language is only conditional for 'dataset' and 'series'.
+            -->
+            <sch:let name="resourceLanguage" value="string-join(gmd:language/gco:CharacterString|gmd:language/gmd:LanguageCode/@codeListValue, ', ')"/>
+            <sch:let name="euLanguage" value="
+				not(gmd:language/@gco:nilReason='missing') and 
+				geonet:contains-any-of($resourceLanguage, 
+				('eng', 'fre', 'ger', 'spa', 'dut', 'ita', 'cze', 'lav', 'dan', 'lit', 'mlt', 
+				'pol', 'est', 'por', 'fin', 'rum', 'slo', 'slv', 'gre', 'bul', 
+				'hun', 'swe', 'gle'))"/>
+            <sch:assert test="$euLanguage">
+                <sch:value-of select="$loc/strings/alert.M55/div"/>
+            </sch:assert>
+            <sch:report test="$euLanguage">
+                <sch:value-of select="$loc/strings/report.M55/div"/><sch:value-of select="$resourceLanguage"/>
+            </sch:report>
+
+
+
+
+            <!-- Topic category -->
+            <sch:let name="topic" value="gmd:topicCategory/gmd:MD_TopicCategoryCode"/>
+            <sch:let name="noTopic" value="not(gmd:topicCategory)  or
+				gmd:topicCategory/gmd:MD_TopicCategoryCode/text() = ''"/>
+            <sch:assert test="not($noTopic)">
+                <sch:value-of select="$loc/strings/alert.M39/div"/></sch:assert>
+            <sch:report test="not($noTopic)">
+                <sch:value-of select="$loc/strings/report.M39/div"/><sch:value-of select="$topic"/></sch:report>
+
+
+
+
+            <!-- Unique identifier -->
+            <sch:let name="resourceIdentifier" value="gmd:citation/gmd:CI_Citation/gmd:identifier
+				and not(gmd:citation/gmd:CI_Citation/gmd:identifier[*/gmd:code/@gco:nilReason='missing'])"/>
+            <sch:let name="resourceIdentifier_code" value="gmd:citation/gmd:CI_Citation/gmd:identifier/*/gmd:code/*/text()"/>
+            <sch:let name="resourceIdentifier_codeSpace" value="gmd:citation/gmd:CI_Citation/gmd:identifier/*/gmd:codeSpace/*/text()"/>
+
+            <sch:assert test="$resourceIdentifier"><sch:value-of select="$loc/strings/alert.M38/div"/></sch:assert>
+            <sch:report test="$resourceIdentifier_code"><sch:value-of select="$loc/strings/report.M38/div"/>
+                <sch:value-of select="$resourceIdentifier_code"/>
+            </sch:report>
+            <sch:report test="$resourceIdentifier_codeSpace"><sch:value-of select="$loc/strings/report.M38.codespace/div"/>
+                <sch:value-of select="$resourceIdentifier_codeSpace"/>
+            </sch:report>
+        </sch:rule>
+    </sch:pattern>
+
+
+
+    <!-- Service only -->
+    <sch:pattern>
+        <sch:title>$loc/strings/serviceIdentification</sch:title>
+
+        <!-- No operatesOn for services -->
+        <sch:rule context="//srv:SV_ServiceIdentification|
+			//*[@gco:isoType='srv:SV_ServiceIdentification']">
+            <sch:let name="coupledResourceHref" value="string-join(srv:operatesOn/@xlink:href, ', ')"/>
+            <sch:let name="coupledResourceUUID" value="string-join(srv:operatesOn/@uuidref, ', ')"/>
+            <sch:let name="coupledResource" value="../../gmd:hierarchyLevel/gmd:MD_ScopeCode/@codeListValue='service'
+				and //srv:operatesOn"/>
+
+            <!--
+              "Conditional to services: Mandatory if linkage to
+              datasets on which the service operates are available."
+              TODO : maybe check if service couplingType=tight or serviceType=view ?
+            <sch:assert test="$coupledResource">
+                <sch:value-of select="$loc/strings/alert.M51/div"/>
+            </sch:assert>-->
+            <sch:report test="$coupledResource and $coupledResourceHref!=''">
+                <sch:value-of select="$loc/strings/report.M51/div"/><sch:value-of select="$coupledResourceHref"/>
+            </sch:report>
+            <sch:report test="$coupledResource and $coupledResourceUUID!=''">
+                <sch:value-of select="$loc/strings/report.M51/div"/><sch:value-of select="$coupledResourceUUID"/>
+            </sch:report>
+
+            <sch:let name="serviceType" value="srv:serviceType/gco:LocalName"/>
+            <sch:let name="noServiceType" value="geonet:contains-any-of(srv:serviceType/gco:LocalName,
+				('view', 'discovery', 'download', 'transformation', 'invoke', 'other'))"/>
+            <sch:assert test="$noServiceType">
+                <sch:value-of select="$loc/strings/alert.M60/div"/></sch:assert>
+            <sch:report test="$noServiceType">
+                <sch:value-of select="$loc/strings/report.M60/div"/><sch:value-of select="$serviceType"/></sch:report>
+        </sch:rule>
+    </sch:pattern>
+
+
+
+    <sch:pattern>
+        <sch:title>$loc/strings/theme</sch:title>
+
+        <sch:rule context="//gmd:MD_DataIdentification|
+			//*[@gco:isoType='gmd:MD_DataIdentification']">
+            <!-- Check that INSPIRE theme are available.
+                Use INSPIRE thesaurus available on SVN to check keywords in all EU languages.
+            -->
+            <sch:let name="thesaurusURL" value="concat('file:///', $thesaurusDir, '/external/thesauri/theme/inspire-theme.rdf')"/>
+            <sch:let name="inspire-thesaurus" value="document($thesaurusURL)"/>
+            <sch:let name="inspire-theme" value="$inspire-thesaurus//skos:Concept"/>
+
+            <!-- Display error if INSPIRE Theme thesaurus is not available. -->
+            <sch:assert test="count($inspire-theme) > 0">
+                INSPIRE Theme thesaurus not found (at <sch:value-of select="$thesaurusURL" />. Check installation in codelist/external/thesauri/theme.
+                Download thesaurus from https://geonetwork.svn.sourceforge.net/svnroot/geonetwork/utilities/gemet/thesauri/.
+            </sch:assert>
+
+
+            <sch:let name="thesaurus_name" value="gmd:descriptiveKeywords/*/gmd:thesaurusName/*/gmd:title/*/text()"/>
+            <sch:let name="thesaurus_date" value="gmd:descriptiveKeywords/*/gmd:thesaurusName/*/gmd:date/*/gmd:date/*/text()"/>
+            <sch:let name="thesaurus_dateType" value="gmd:descriptiveKeywords/*/gmd:thesaurusName/*/gmd:date/*/gmd:dateType/*/@codeListValue/text()"/>
+            <sch:let name="keyword"
+                value="gmd:descriptiveKeywords/*/gmd:keyword/gco:CharacterString|
+				gmd:descriptiveKeywords/*/gmd:keyword/gmx:Anchor"/>
+            <sch:let name="inspire-theme-found"
+                value="count($inspire-thesaurus//skos:Concept[skos:prefLabel = $keyword])"/>
+            <sch:assert test="$inspire-theme-found > 0">
+                <sch:value-of select="$loc/strings/alert.M40/div"/>
+            </sch:assert>
+            <sch:report test="$inspire-theme-found > 0">
+                <sch:value-of select="$inspire-theme-found"/> <sch:value-of select="$loc/strings/report.M40/div"/>
+            </sch:report>
+            <sch:report test="$thesaurus_name">Thesaurus:
+                <sch:value-of select="$thesaurus_name"/>, <sch:value-of select="$thesaurus_date"/> (<sch:value-of select="$thesaurus_dateType"/>)
+            </sch:report>
+            <!-- TODO : We should check GEMET Thesaurus reference and date is set. -->
+        </sch:rule>
+
+    </sch:pattern>
+
+
+    <sch:pattern>
+        <sch:title>$loc/strings/serviceTaxonomy</sch:title>
+
+        <sch:rule context="//srv:SV_ServiceIdentification|//*[@gco:isoType='srv:SV_ServiceIdentification']">
+            <!-- Check that INSPIRE service taxonomy is available.
+                Use INSPIRE thesaurus available on SVN to check keywords in all EU languages.
+            -->
+            <sch:let name="inspire-thesaurus" value="document(concat('file:///', $thesaurusDir, '/external/thesauri/theme/inspire-service-taxonomy.rdf'))"/>
+            <sch:let name="inspire-st" value="$inspire-thesaurus//skos:Concept"/>
+
+            <!-- Display error if INSPIRE thesaurus is not available. -->
+            <sch:assert test="count($inspire-st) > 0">
+                INSPIRE service taxonomy thesaurus not found. Check installation in codelist/external/thesauri/theme.
+                Download thesaurus from https://geonetwork.svn.sourceforge.net/svnroot/geonetwork/utilities/gemet/thesauri/.
+            </sch:assert>
+
+
+            <sch:let name="keyword"
+                value="gmd:descriptiveKeywords/*/gmd:keyword/gco:CharacterString | gmd:descriptiveKeywords/*/gmd:keyword//gmd:LocalisedCharacterString |
+				gmd:descriptiveKeywords/*/gmd:keyword/gmx:Anchor"/>
+            <sch:let name="inspire-theme-found"
+                value="count($inspire-thesaurus//skos:Concept[skos:prefLabel = $keyword])"/>
+            <sch:assert test="$inspire-theme-found > 0">
+                <sch:value-of select="$loc/strings/alert.M58/div"/>
+            </sch:assert>
+            <sch:report test="$inspire-theme-found > 0">
+                <sch:value-of select="$inspire-theme-found"/> <sch:value-of select="$loc/strings/report.M58/div"/>
+            </sch:report>
+
+        </sch:rule>
+
+
+    </sch:pattern>
+
+
+
+    <sch:pattern>
+        <sch:title>$loc/strings/geo</sch:title>
+
+        <sch:rule context="//gmd:MD_DataIdentification[
+			normalize-space(../../gmd:hierarchyLevel/gmd:MD_ScopeCode/@codeListValue) = 'series'
+			or normalize-space(../../gmd:hierarchyLevel/gmd:MD_ScopeCode/@codeListValue) = 'dataset'
+			or normalize-space(../../gmd:hierarchyLevel/gmd:MD_ScopeCode/@codeListValue) = '']
+			/gmd:extent/*/gmd:geographicElement/gmd:EX_GeographicBoundingBox
+			|
+			//*[@gco:isoType='gmd:MD_DataIdentification' and (
+			normalize-space(../../gmd:hierarchyLevel/gmd:MD_ScopeCode/@codeListValue) = 'series'
+			or normalize-space(../../gmd:hierarchyLevel/gmd:MD_ScopeCode/@codeListValue) = 'dataset'
+			or normalize-space(../../gmd:hierarchyLevel/gmd:MD_ScopeCode/@codeListValue) = '')]
+			/gmd:extent/*/gmd:geographicElement/gmd:EX_GeographicBoundingBox
+			">
+
+            <sch:let name="west" value="number(gmd:westBoundLongitude/gco:Decimal/text())"/>
+            <sch:let name="east" value="number(gmd:eastBoundLongitude/gco:Decimal/text())"/>
+            <sch:let name="north" value="number(gmd:northBoundLatitude/gco:Decimal/text())"/>
+            <sch:let name="south" value="number(gmd:southBoundLatitude/gco:Decimal/text())"/>
+
+            <!-- assertions and report -->
+            <sch:assert test="(-180.00 &lt;= $west) and ( $west &lt;= 180.00)"><sch:value-of select="$loc/strings/alert.M41.W/div"/></sch:assert>
+            <sch:report test="(-180.00 &lt;= $west) and ( $west &lt;= 180.00)"><sch:value-of select="$loc/strings/report.M41.W/div"/>
+                <sch:value-of select="$west"/>
+            </sch:report>
+            <sch:assert test="(-180.00 &lt;= $east) and ($east &lt;= 180.00)"><sch:value-of select="$loc/strings/alert.M41.E/div"/></sch:assert>
+            <sch:report test="(-180.00 &lt;= $east) and ($east &lt;= 180.00)"><sch:value-of select="$loc/strings/report.M41.E/div"/>
+                <sch:value-of select="$east"/>
+            </sch:report>
+            <sch:assert test="(-90.00 &lt;= $south) and ($south &lt;= $north)"><sch:value-of select="$loc/strings/alert.M41.S/div"/></sch:assert>
+            <sch:report test="(-90.00 &lt;= $south) and ($south &lt;= $north)"><sch:value-of select="$loc/strings/report.M41.S/div"/>
+                <sch:value-of select="$south"/>
+            </sch:report>
+            <sch:assert test="($south &lt;= $north) and ($north &lt;= 90.00)"><sch:value-of select="$loc/strings/alert.M41.N/div"/></sch:assert>
+            <sch:report test="($south &lt;= $north) and ($north &lt;= 90.00)"><sch:value-of select="$loc/strings/report.M41.N/div"/>
+                <sch:value-of select="$north"/>
+            </sch:report>
+        </sch:rule>
+        <sch:rule context="//srv:SV_ServiceIdentification[
+			normalize-space(../../gmd:hierarchyLevel/gmd:MD_ScopeCode/@codeListValue) = 'service']
+			/srv:extent/*/gmd:geographicElement/gmd:EX_GeographicBoundingBox">
+            <sch:let name="west" value="number(gmd:westBoundLongitude/gco:Decimal/text())"/>
+            <sch:let name="east" value="number(gmd:eastBoundLongitude/gco:Decimal/text())"/>
+            <sch:let name="north" value="number(gmd:northBoundLatitude/gco:Decimal/text())"/>
+            <sch:let name="south" value="number(gmd:southBoundLatitude/gco:Decimal/text())"/>
+            <!-- report only but we should do assert if outOfBounds ? TODO -->
+            <sch:report test="(-180.00 &lt;= $west) and ( $west &lt;= 180.00)"><sch:value-of select="$loc/strings/report.M41.W/div"/>
+                <sch:value-of select="$west"/>
+            </sch:report>
+            <sch:report test="(-180.00 &lt;= $east) and ($east &lt;= 180.00)"><sch:value-of select="$loc/strings/report.M41.E/div"/>
+                <sch:value-of select="$east"/>
+            </sch:report>
+            <sch:report test="(-90.00 &lt;= $south) and ($south &lt;= $north)"><sch:value-of select="$loc/strings/report.M41.S/div"/>
+                <sch:value-of select="$south"/>
+            </sch:report>
+            <sch:report test="($south &lt;= $north) and ($north &lt;= 90.00)"><sch:value-of select="$loc/strings/report.M41.N/div"/>
+                <sch:value-of select="$north"/>
+            </sch:report>
+        </sch:rule>
+    </sch:pattern>
+
+
+
+    <sch:pattern>
+        <sch:title>$loc/strings/temporal</sch:title>
+        <sch:rule context="//gmd:MD_DataIdentification|
+			//*[@gco:isoType='gmd:MD_DataIdentification']|
+			//srv:SV_ServiceIdentification|
+			//*[@gco:isoType='srv:SV_ServiceIdentification']">
+            <sch:let name="temporalExtentBegin"
+                value="gmd:extent/*/gmd:temporalElement/*/gmd:extent/*/gml:beginPosition/text()"/>
+            <sch:let name="temporalExtentEnd"
+                value="gmd:extent/*/gmd:temporalElement/*/gmd:extent/*/gml:endPosition/text()"/>
+            <sch:let name="publicationDate"
+                value="gmd:citation/*/gmd:date[./*/gmd:dateType/*/@codeListValue='publication']/*/gmd:date/*"/>
+            <sch:let name="creationDate"
+                value="gmd:citation/*/gmd:date[./*/gmd:dateType/*/@codeListValue='creation']/*/gmd:date/*"/>
+            <sch:let name="no_creationDate"
+                value="count(gmd:citation/*/gmd:date[./*/gmd:dateType/*/@codeListValue='creation'])"/>
+            <sch:let name="revisionDate"
+                value="gmd:citation/*/gmd:date[./*/gmd:dateType/*/@codeListValue='revision']/*/gmd:date/*"/>
+
+
+            <sch:assert test="$no_creationDate &lt;= 1">
+                <sch:value-of select="$loc/strings/alert.M42.creation/div"/>
+            </sch:assert>
+
+            <sch:assert test="$publicationDate or $creationDate or $revisionDate or $temporalExtentBegin or $temporalExtentEnd">
+                <sch:value-of select="$loc/strings/alert.M42/div"/></sch:assert>
+            <sch:report test="$temporalExtentBegin">
+                <sch:value-of select="$loc/strings/report.M42.begin/div"/>
+                <sch:value-of select="$temporalExtentBegin"/>
+            </sch:report>
+            <sch:report test="$temporalExtentEnd">
+                <sch:value-of select="$loc/strings/report.M42.end/div"/>
+                <sch:value-of select="$temporalExtentEnd"/>
+            </sch:report>
+            <sch:report test="$publicationDate">
+                <sch:value-of select="$loc/strings/report.M42.publication/div"/>
+                <sch:value-of select="$publicationDate"/>
+            </sch:report>
+            <sch:report test="$revisionDate">
+                <sch:value-of select="$loc/strings/report.M42.revision/div"/>
+                <sch:value-of select="$revisionDate"/>
+            </sch:report>
+            <sch:report test="$creationDate">
+                <sch:value-of select="$loc/strings/report.M42.creation/div"/>
+                <sch:value-of select="$creationDate"/>
+            </sch:report>
+        </sch:rule>
+    </sch:pattern>
+
+
+
+    <sch:pattern>
+        <sch:title>$loc/strings/quality</sch:title>
+        <sch:rule context="//gmd:DQ_DataQuality[../../gmd:identificationInfo/gmd:MD_DataIdentification
+			or ../../gmd:identificationInfo/*/@gco:isoType = 'gmd:MD_DataIdentification']">
+            <sch:let name="lineage" value="not(gmd:lineage/gmd:LI_Lineage/gmd:statement) or (gmd:lineage//gmd:statement/@gco:nilReason)"/>
+            <sch:assert test="not($lineage)"
+                >$loc/strings/alert.M43/div</sch:assert>
+            <sch:report test="not($lineage)"
+                >$loc/strings/report.M43/div</sch:report>
+        </sch:rule>
+
+        <sch:rule context="//gmd:MD_DataIdentification/gmd:spatialResolution|//*[@gco:isoType='gmd:MD_DataIdentification']/gmd:spatialResolution">
+            <sch:assert
+                test="*/gmd:equivalentScale or */gmd:distance"
+                >$loc/strings/alert.M56/div</sch:assert>
+            <sch:report
+                test="*/gmd:equivalentScale or */gmd:distance"
+                >$loc/strings/report.M56/div</sch:report>
+        </sch:rule>
+    </sch:pattern>
+
+
+    <!-- Make a non blocker conformity check operation - no assertion here -->
+    <sch:pattern>
+        <sch:title>$loc/strings/conformity</sch:title>
+        <!-- Search for on quality report result with status ... We don't really know if it's an INSPIRE conformity report or not. -->
+        <sch:rule context="/gmd:MD_Metadata">
+            <sch:let name="degree" value="count(gmd:dataQualityInfo/*/gmd:report/*/gmd:result/*/gmd:pass)"/>
+            <sch:assert test="$degree">
+                <sch:value-of select="$loc/strings/alert.M44.nonev/div"/><sch:value-of select="$degree>0"/>
+            </sch:assert>
+            <sch:report test="$degree">
+                <sch:value-of select="$loc/strings/report.M44.nonev/div"/>
+            </sch:report>
+        </sch:rule>
+
+        <!-- Check specification names and status -->
+        <sch:rule context="//gmd:dataQualityInfo/*/gmd:report/*/gmd:result/*">
+            <sch:let name="degree" value="gmd:pass/*/text()"/>
+			<sch:let name="specification_title" value="gmd:specification/*/gmd:title/*/text()"/>
+            <sch:let name="specification_date" value="gmd:specification/*/gmd:date/*/gmd:date/*/text()"/>
+            <sch:let name="specification_dateType" value="normalize-space(gmd:specification/*/gmd:date/*/gmd:dateType/*/@codeListValue)"/>
+
+            <sch:report test="$specification_title"><sch:value-of select="$loc/strings/report.M44.spec/div"/>
+                <sch:value-of select="$specification_title"/>, (<sch:value-of select="$specification_date"/>, <sch:value-of select="$specification_dateType"/>)
+            </sch:report>
+            <sch:report test="$degree">
+                <sch:value-of select="$loc/strings/report.M44.degree/div"/>
+                <sch:value-of select="$degree"/>
+            </sch:report>
+        </sch:rule>
+    </sch:pattern>
+
+
+
+
+    <sch:pattern>
+        <sch:title>$loc/strings/constraints</sch:title>
+        <sch:rule context="//gmd:MD_DataIdentification|
+			//*[@gco:isoType='gmd:MD_DataIdentification']|
+			//srv:SV_ServiceIdentification|
+			//*[@gco:isoType='srv:SV_ServiceIdentification']">
+            <sch:assert test="count(gmd:resourceConstraints/*) > 0">
+                <sch:value-of select="$loc/strings/alert.M45.rc/div"/>
+            </sch:assert>
+
+            <!-- cardinality of accessconstraints is [1..n] -->
+            <sch:let name="accessConstraints_count" value="count(gmd:resourceConstraints/*/gmd:accessConstraints[*/@codeListValue != ''])"/>
+            <sch:let name="accessConstraints_found" value="$accessConstraints_count > 0"/>
+
+            <!-- If the value of accessConstraints is otherRestrictions
+                there shall be instances of otherConstraints expressing
+                limitations on public access. This is because the
+                limitations on public access required by the INSPIRE
+                Directive may need the use of free text, and
+                otherConstraints is the only element allowing this data
+                type
+            -->
+            <sch:let name="accessConstraints"
+                value="
+				count(gmd:resourceConstraints/*/gmd:accessConstraints/gmd:MD_RestrictionCode[@codeListValue='otherRestrictions'])&gt;0 
+				and (
+				not(gmd:resourceConstraints/*/gmd:otherConstraints)     
+				or gmd:resourceConstraints/*/gmd:otherConstraints[@gco:nilReason='missing']
+				)"/>
+            <sch:let name="otherConstraints"
+                value="
+				gmd:resourceConstraints/*/gmd:otherConstraints and
+				gmd:resourceConstraints/*/gmd:otherConstraints/gco:CharacterString!='' and 
+				count(gmd:resourceConstraints/*/gmd:accessConstraints/gmd:MD_RestrictionCode[@codeListValue='otherRestrictions'])=0
+				"/>
+            <sch:let name="otherConstraintInfo"
+                value="gmd:resourceConstraints/*/gmd:otherConstraints/gco:CharacterString"/>
+
+            <sch:assert test="$accessConstraints_found">
+                <sch:value-of select="$loc/strings/alert.M45.ca/div"/>
+            </sch:assert>
+            <sch:report test="$accessConstraints_found">
+                <sch:value-of select="$accessConstraints_count"/> <sch:value-of select="$loc/strings/report.M45.ca/div"/>
+            </sch:report>
+            <sch:assert test="not($accessConstraints)">
+                <sch:value-of select="$loc/strings/alert.M45.or/div"/>
+            </sch:assert>
+            <sch:assert test="not($otherConstraints)">
+                <sch:value-of select="$loc/strings/alert.M45.or/div"/>
+            </sch:assert>
+            <sch:report test="$otherConstraintInfo!='' and not($accessConstraints) and not($otherConstraints)">
+                <sch:value-of select="$loc/strings/report.M45.or/div"/>
+                <sch:value-of select="$otherConstraintInfo"/>
+            </sch:report>
+
+        </sch:rule>
+
+
+
+        <sch:rule context="//gmd:MD_DataIdentification/gmd:resourceConstraints/*|
+			//*[@gco:isoType='gmd:MD_DataIdentification']/gmd:resourceConstraints/*|
+			//srv:SV_ServiceIdentification/gmd:resourceConstraints/*|
+			//*[@gco:isoType='srv:SV_ServiceIdentification']/gmd:resourceConstraints/*">
+            <sch:let name="accessConstraints" value="string-join(gmd:accessConstraints/*/@codeListValue, ', ')"/>
+            <sch:let name="classification" value="string-join(gmd:classification/*/@codeListValue, ', ')"/>
+            <sch:let name="otherConstraints" value="gmd:otherConstraints/gco:CharacterString/text()"/>
+            <sch:report test="$accessConstraints!=''">
+                <sch:value-of select="$loc/strings/report.M45.ac/div"/>
+                <sch:value-of select="$accessConstraints"/>
+            </sch:report>
+            <sch:report test="$classification!=''">
+                <sch:value-of select="$loc/strings/report.M45.class/div"/>
+                <sch:value-of select="$classification"/>
+            </sch:report>
+        </sch:rule>
+    </sch:pattern>
+
+    <sch:pattern>
+        <sch:title>$loc/strings/constraints</sch:title>
+        <sch:rule context="//gmd:MD_DataIdentification|
+			//*[@gco:isoType='gmd:MD_DataIdentification']|
+			//srv:SV_ServiceIdentification|
+			//*[@gco:isoType='srv:SV_ServiceIdentification']">
+            <sch:let name="useLimitation" value="gmd:resourceConstraints/*/gmd:useLimitation/*/text()"/>
+            <sch:let name="useLimitation_count" value="count(gmd:resourceConstraints/*/gmd:useLimitation/*/text())"/>
+            <sch:assert test="$useLimitation_count">
+                <sch:value-of select="$loc/strings/alert.M45.ul/div"/>
+            </sch:assert>
+            <sch:report test="$useLimitation_count">
+                <sch:value-of select="$loc/strings/report.M45.ul/div"/>
+                <sch:value-of select="$useLimitation"/>
+            </sch:report>
+        </sch:rule>
+    </sch:pattern>
+
+    <sch:pattern>
+        <sch:title>$loc/strings/org</sch:title>
+
+        <sch:rule context="//gmd:identificationInfo">
+            <sch:let name="missing" value="not(*/gmd:pointOfContact)"/>
+            <sch:assert
+                test="not($missing)"
+                ><sch:value-of select="$loc/strings/alert.M47/div"/></sch:assert>
+            <sch:report
+                test="not($missing)"
+                ><sch:value-of select="$loc/strings/report.M47/div"/>
+            </sch:report>
+        </sch:rule>
+
+        <sch:rule context="//gmd:identificationInfo/*/gmd:pointOfContact
+			|//*[@gco:isoType='gmd:MD_DataIdentification']/gmd:pointOfContact
+			|//*[@gco:isoType='srv:SV_ServiceIdentification']/gmd:pointOfContact">
+            <sch:let name="missing" value="not(*/gmd:organisationName)
+				or (*/gmd:organisationName/@gco:nilReason) 
+				or not(*/gmd:contactInfo/*/gmd:address/*/gmd:electronicMailAddress) 
+				or (*/gmd:contactInfo/*/gmd:address/*/gmd:electronicMailAddress/@gco:nilReason)"/>
+            <sch:let name="organisationName" value="*/gmd:organisationName/*/text()"/>
+            <sch:let name="role" value="normalize-space(*/gmd:role/*/@codeListValue)"/>
+            <sch:let name="emptyRole" value="$role=''"/>
+            <sch:let name="emailAddress" value="*/gmd:contactInfo/*/gmd:address/*/gmd:electronicMailAddress/*/text()"/>
+
+            <sch:assert
+                test="not($missing)"
+                ><sch:value-of select="$loc/strings/alert.M47.info/div"/></sch:assert>
+            <sch:assert
+                test="not($emptyRole)"
+                ><sch:value-of select="$loc/strings/alert.M48.role/div"/></sch:assert>
+            <sch:report
+                test="not($missing)"
+                ><sch:value-of select="$loc/strings/report.M47.info/div"/>
+                <sch:value-of select="$organisationName"/>
+                (<sch:value-of select="$role"/>)
+            </sch:report>
+        </sch:rule>
+
+
+    </sch:pattern>
+
+
+    <sch:pattern>
+        <sch:title>$loc/strings/metadata</sch:title>
+        <sch:rule context="//gmd:MD_Metadata">
+            <!--  Date stamp -->
+            <sch:let name="dateStamp" value="gmd:dateStamp/*/text()"/>
+            <sch:assert test="$dateStamp">
+                <sch:value-of select="$loc/strings/alert.M50/div"/>
+            </sch:assert>
+            <sch:report test="$dateStamp">
+                <sch:value-of select="$loc/strings/report.M50/div"/>
+                <sch:value-of select="$dateStamp"/>
+            </sch:report>
+
+
+            <!--  Language -->
+            <sch:let name="language" value="gmd:language/gco:CharacterString|gmd:language/gmd:LanguageCode/@codeListValue"/>
+            <sch:let name="language_present" value="geonet:contains-any-of($language,
+				('eng', 'fre', 'ger', 'spa', 'dut', 'ita', 'cze', 'lav', 'dan', 'lit', 'mlt', 
+				'pol', 'est', 'por', 'fin', 'rum', 'slo', 'slv', 'gre', 'bul', 
+				'hun', 'swe', 'gle'))"/>
+
+            <sch:assert test="$language_present">
+                <sch:value-of select="$loc/strings/alert.M49/div"/>
+            </sch:assert>
+            <sch:report test="$language_present">
+                <sch:value-of select="$loc/strings/report.M49/div"/>
+                <sch:value-of select="normalize-space($language)"/>
+            </sch:report>
+
+
+            <!--  Contact -->
+            <sch:let name="missing" value="not(gmd:contact)"/>
+            <sch:assert
+                test="not($missing)"
+                ><sch:value-of select="$loc/strings/alert.M48/div"/></sch:assert>
+            <sch:report
+                test="not($missing)"
+                ><sch:value-of select="$loc/strings/report.M48/div"/>
+            </sch:report>
+        </sch:rule>
+
+        <sch:rule context="//gmd:MD_Metadata/gmd:contact">
+            <sch:let name="missing" value="not(gmd:CI_ResponsibleParty/gmd:organisationName)
+				or (gmd:CI_ResponsibleParty/gmd:organisationName/@gco:nilReason) 
+				or not(gmd:CI_ResponsibleParty/gmd:contactInfo/*/gmd:address/*/gmd:electronicMailAddress) 
+				or (gmd:CI_ResponsibleParty/gmd:contactInfo/*/gmd:address/*/gmd:electronicMailAddress/@gco:nilReason)"/>
+            <sch:let name="organisationName" value="gmd:CI_ResponsibleParty/gmd:organisationName/*/text()"/>
+            <!--
+                2.11.1 "The role of the responsible party serving as a metadata
+                point of contact is out of scope of the INSPIRE
+                Implementing Rules, but this property is mandated by ISO
+                19115. The default value is pointOfContact."
+                JRC schematron 1.0 validate only if role=pointOfContact
+            -->
+            <sch:let name="role" value="normalize-space(gmd:CI_ResponsibleParty/gmd:role/*/@codeListValue)"/>
+            <sch:let name="emptyRole" value="$role=''"/>
+            <sch:let name="emailAddress" value="gmd:CI_ResponsibleParty/gmd:contactInfo/*/gmd:address/*/gmd:electronicMailAddress/*/text()"/>
+
+            <sch:assert
+                test="not($emptyRole)"
+                ><sch:value-of select="$loc/strings/alert.M48.role/div"/></sch:assert>
+            <sch:assert
+                test="not($missing)"
+                ><sch:value-of select="$loc/strings/alert.M48.info/div"/></sch:assert>
+            <sch:report
+                test="not($missing)"
+                ><sch:value-of select="$loc/strings/report.M48.info/div"/>
+                <sch:value-of select="$organisationName"/>
+                (<sch:value-of select="$role"/>)
+            </sch:report>
+        </sch:rule>
+
+    </sch:pattern>
+
+    <!-- INSPIRE metadata rules / END -->
+
+</sch:schema>
diff --git a/src/main/webapp/WEB-INF/data/config/schema_plugins/iso19139/schematron/schematron-rules-inspire.xsl b/src/main/webapp/WEB-INF/data/config/schema_plugins/iso19139/schematron/schematron-rules-inspire.xsl
new file mode 100644
index 0000000..7999b60
--- /dev/null
+++ b/src/main/webapp/WEB-INF/data/config/schema_plugins/iso19139/schematron/schematron-rules-inspire.xsl
@@ -0,0 +1,2253 @@
+<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
+<xsl:stylesheet xmlns:xhtml="http://www.w3.org/1999/xhtml"
+                xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+                xmlns:xs="http://www.w3.org/2001/XMLSchema"
+                xmlns:schold="http://www.ascc.net/xml/schematron"
+                xmlns:iso="http://purl.oclc.org/dsdl/schematron"
+                xmlns:gml="http://www.opengis.net/gml"
+                xmlns:gmd="http://www.isotc211.org/2005/gmd"
+                xmlns:gmx="http://www.isotc211.org/2005/gmx"
+                xmlns:srv="http://www.isotc211.org/2005/srv"
+                xmlns:gco="http://www.isotc211.org/2005/gco"
+                xmlns:geonet="http://www.fao.org/geonetwork"
+                xmlns:skos="http://www.w3.org/2004/02/skos/core#"
+                xmlns:xlink="http://www.w3.org/1999/xlink"
+                version="2.0"><!--Implementers: please note that overriding process-prolog or process-root is
+      the preferred method for meta-stylesheets to use where possible.
+    -->
+<xsl:param name="archiveDirParameter"/>
+   <xsl:param name="archiveNameParameter"/>
+   <xsl:param name="fileNameParameter"/>
+   <xsl:param name="fileDirParameter"/>
+   <xsl:variable name="document-uri">
+      <xsl:value-of select="document-uri(/)"/>
+   </xsl:variable>
+
+   <!--PHASES-->
+
+
+<!--PROLOG-->
+<xsl:output xmlns:svrl="http://purl.oclc.org/dsdl/svrl" method="xml"
+               omit-xml-declaration="no"
+               standalone="yes"
+               indent="yes"/>
+   <xsl:include xmlns:svrl="http://purl.oclc.org/dsdl/svrl" href="../../../xsl/utils-fn.xsl"/>
+   <xsl:param xmlns:svrl="http://purl.oclc.org/dsdl/svrl" name="lang"/>
+   <xsl:param xmlns:svrl="http://purl.oclc.org/dsdl/svrl" name="thesaurusDir"/>
+   <xsl:param xmlns:svrl="http://purl.oclc.org/dsdl/svrl" name="rule"/>
+   <xsl:variable xmlns:svrl="http://purl.oclc.org/dsdl/svrl" name="loc"
+                 select="document(concat('../loc/', $lang, '/', $rule, '.xml'))"/>
+
+   <!--XSD TYPES FOR XSLT2-->
+
+
+<!--KEYS AND FUNCTIONS-->
+
+
+<!--DEFAULT RULES-->
+
+
+<!--MODE: SCHEMATRON-SELECT-FULL-PATH-->
+<!--This mode can be used to generate an ugly though full XPath for locators
+    -->
+<xsl:template match="*" mode="schematron-select-full-path">
+      <xsl:apply-templates select="." mode="schematron-get-full-path"/>
+   </xsl:template>
+
+   <!--MODE: SCHEMATRON-FULL-PATH-->
+<!--This mode can be used to generate an ugly though full XPath for locators
+    -->
+<xsl:template match="*" mode="schematron-get-full-path">
+      <xsl:apply-templates select="parent::*" mode="schematron-get-full-path"/>
+      <xsl:text>/</xsl:text>
+      <xsl:choose>
+         <xsl:when test="namespace-uri()=''">
+            <xsl:value-of select="name()"/>
+         </xsl:when>
+         <xsl:otherwise>
+            <xsl:text>*:</xsl:text>
+            <xsl:value-of select="local-name()"/>
+            <xsl:text>[namespace-uri()='</xsl:text>
+            <xsl:value-of select="namespace-uri()"/>
+            <xsl:text>']</xsl:text>
+         </xsl:otherwise>
+      </xsl:choose>
+      <xsl:variable name="preceding"
+                    select="count(preceding-sibling::*[local-name()=local-name(current())                                      and namespace-uri() = namespace-uri(current())])"/>
+      <xsl:text>[</xsl:text>
+      <xsl:value-of select="1+ $preceding"/>
+      <xsl:text>]</xsl:text>
+   </xsl:template>
+   <xsl:template match="@*" mode="schematron-get-full-path">
+      <xsl:apply-templates select="parent::*" mode="schematron-get-full-path"/>
+      <xsl:text>/</xsl:text>
+      <xsl:choose>
+         <xsl:when test="namespace-uri()=''">@
+              <xsl:value-of select="name()"/>
+         </xsl:when>
+         <xsl:otherwise>
+            <xsl:text>@*[local-name()='</xsl:text>
+            <xsl:value-of select="local-name()"/>
+            <xsl:text>' and namespace-uri()='</xsl:text>
+            <xsl:value-of select="namespace-uri()"/>
+            <xsl:text>']</xsl:text>
+         </xsl:otherwise>
+      </xsl:choose>
+   </xsl:template>
+
+   <!--MODE: SCHEMATRON-FULL-PATH-2-->
+<!--This mode can be used to generate prefixed XPath for humans-->
+<xsl:template match="node() | @*" mode="schematron-get-full-path-2">
+      <xsl:for-each select="ancestor-or-self::*">
+         <xsl:text>/</xsl:text>
+         <xsl:value-of select="name(.)"/>
+         <xsl:if test="preceding-sibling::*[name(.)=name(current())]">
+            <xsl:text>[</xsl:text>
+            <xsl:value-of select="count(preceding-sibling::*[name(.)=name(current())])+1"/>
+            <xsl:text>]</xsl:text>
+         </xsl:if>
+      </xsl:for-each>
+      <xsl:if test="not(self::*)">
+         <xsl:text/>/@
+        <xsl:value-of select="name(.)"/>
+      </xsl:if>
+   </xsl:template>
+   <!--MODE: SCHEMATRON-FULL-PATH-3-->
+<!--This mode can be used to generate prefixed XPath for humans
+      (Top-level element has index)
+    -->
+<xsl:template match="node() | @*" mode="schematron-get-full-path-3">
+      <xsl:for-each select="ancestor-or-self::*">
+         <xsl:text>/</xsl:text>
+         <xsl:value-of select="name(.)"/>
+         <xsl:if test="parent::*">
+            <xsl:text>[</xsl:text>
+            <xsl:value-of select="count(preceding-sibling::*[name(.)=name(current())])+1"/>
+            <xsl:text>]</xsl:text>
+         </xsl:if>
+      </xsl:for-each>
+      <xsl:if test="not(self::*)">
+         <xsl:text/>/@
+        <xsl:value-of select="name(.)"/>
+      </xsl:if>
+   </xsl:template>
+
+   <!--MODE: GENERATE-ID-FROM-PATH-->
+<xsl:template match="/" mode="generate-id-from-path"/>
+   <xsl:template match="text()" mode="generate-id-from-path">
+      <xsl:apply-templates select="parent::*" mode="generate-id-from-path"/>
+      <xsl:value-of select="concat('.text-', 1+count(preceding-sibling::text()), '-')"/>
+   </xsl:template>
+   <xsl:template match="comment()" mode="generate-id-from-path">
+      <xsl:apply-templates select="parent::*" mode="generate-id-from-path"/>
+      <xsl:value-of select="concat('.comment-', 1+count(preceding-sibling::comment()), '-')"/>
+   </xsl:template>
+   <xsl:template match="processing-instruction()" mode="generate-id-from-path">
+      <xsl:apply-templates select="parent::*" mode="generate-id-from-path"/>
+      <xsl:value-of select="concat('.processing-instruction-', 1+count(preceding-sibling::processing-instruction()), '-')"/>
+   </xsl:template>
+   <xsl:template match="@*" mode="generate-id-from-path">
+      <xsl:apply-templates select="parent::*" mode="generate-id-from-path"/>
+      <xsl:value-of select="concat('.@', name())"/>
+   </xsl:template>
+   <xsl:template match="*" mode="generate-id-from-path" priority="-0.5">
+      <xsl:apply-templates select="parent::*" mode="generate-id-from-path"/>
+      <xsl:text>.</xsl:text>
+      <xsl:value-of select="concat('.',name(),'-',1+count(preceding-sibling::*[name()=name(current())]),'-')"/>
+   </xsl:template>
+
+   <!--MODE: GENERATE-ID-2-->
+<xsl:template match="/" mode="generate-id-2">U</xsl:template>
+   <xsl:template match="*" mode="generate-id-2" priority="2">
+      <xsl:text>U</xsl:text>
+      <xsl:number level="multiple" count="*"/>
+   </xsl:template>
+   <xsl:template match="node()" mode="generate-id-2">
+      <xsl:text>U.</xsl:text>
+      <xsl:number level="multiple" count="*"/>
+      <xsl:text>n</xsl:text>
+      <xsl:number count="node()"/>
+   </xsl:template>
+   <xsl:template match="@*" mode="generate-id-2">
+      <xsl:text>U.</xsl:text>
+      <xsl:number level="multiple" count="*"/>
+      <xsl:text>_</xsl:text>
+      <xsl:value-of select="string-length(local-name(.))"/>
+      <xsl:text>_</xsl:text>
+      <xsl:value-of select="translate(name(),':','.')"/>
+   </xsl:template>
+   <!--Strip characters--><xsl:template match="text()" priority="-1"/>
+
+   <!--SCHEMA SETUP-->
+<xsl:template match="/">
+      <svrl:schematron-output xmlns:svrl="http://purl.oclc.org/dsdl/svrl"
+                              title="INSPIRE metadata implementing rule validation"
+                              schemaVersion="">
+         <xsl:comment>
+            <xsl:value-of select="$archiveDirParameter"/>
+         
+        <xsl:value-of select="$archiveNameParameter"/>
+         
+        <xsl:value-of select="$fileNameParameter"/>
+         
+        <xsl:value-of select="$fileDirParameter"/>
+         </xsl:comment>
+         <svrl:ns-prefix-in-attribute-values uri="http://www.opengis.net/gml" prefix="gml"/>
+         <svrl:ns-prefix-in-attribute-values uri="http://www.isotc211.org/2005/gmd" prefix="gmd"/>
+         <svrl:ns-prefix-in-attribute-values uri="http://www.isotc211.org/2005/gmx" prefix="gmx"/>
+         <svrl:ns-prefix-in-attribute-values uri="http://www.isotc211.org/2005/srv" prefix="srv"/>
+         <svrl:ns-prefix-in-attribute-values uri="http://www.isotc211.org/2005/gco" prefix="gco"/>
+         <svrl:ns-prefix-in-attribute-values uri="http://www.fao.org/geonetwork" prefix="geonet"/>
+         <svrl:ns-prefix-in-attribute-values uri="http://www.w3.org/2004/02/skos/core#" prefix="skos"/>
+         <svrl:ns-prefix-in-attribute-values uri="http://www.w3.org/1999/xlink" prefix="xlink"/>
+         <svrl:active-pattern>
+            <xsl:attribute name="document">
+               <xsl:value-of select="document-uri(/)"/>
+            </xsl:attribute>
+            <xsl:attribute name="name">
+               <xsl:value-of select="$loc/strings/identification"/>
+            </xsl:attribute>
+            <xsl:apply-templates/>
+         </svrl:active-pattern>
+         <xsl:apply-templates select="/" mode="M9"/>
+         <svrl:active-pattern>
+            <xsl:attribute name="document">
+               <xsl:value-of select="document-uri(/)"/>
+            </xsl:attribute>
+            <xsl:attribute name="name">
+               <xsl:value-of select="$loc/strings/dataIdentification"/>
+            </xsl:attribute>
+            <xsl:apply-templates/>
+         </svrl:active-pattern>
+         <xsl:apply-templates select="/" mode="M10"/>
+         <svrl:active-pattern>
+            <xsl:attribute name="document">
+               <xsl:value-of select="document-uri(/)"/>
+            </xsl:attribute>
+            <xsl:attribute name="name">
+               <xsl:value-of select="$loc/strings/serviceIdentification"/>
+            </xsl:attribute>
+            <xsl:apply-templates/>
+         </svrl:active-pattern>
+         <xsl:apply-templates select="/" mode="M11"/>
+         <svrl:active-pattern>
+            <xsl:attribute name="document">
+               <xsl:value-of select="document-uri(/)"/>
+            </xsl:attribute>
+            <xsl:attribute name="name">
+               <xsl:value-of select="$loc/strings/theme"/>
+            </xsl:attribute>
+            <xsl:apply-templates/>
+         </svrl:active-pattern>
+         <xsl:apply-templates select="/" mode="M12"/>
+         <svrl:active-pattern>
+            <xsl:attribute name="document">
+               <xsl:value-of select="document-uri(/)"/>
+            </xsl:attribute>
+            <xsl:attribute name="name">
+               <xsl:value-of select="$loc/strings/serviceTaxonomy"/>
+            </xsl:attribute>
+            <xsl:apply-templates/>
+         </svrl:active-pattern>
+         <xsl:apply-templates select="/" mode="M13"/>
+         <svrl:active-pattern>
+            <xsl:attribute name="document">
+               <xsl:value-of select="document-uri(/)"/>
+            </xsl:attribute>
+            <xsl:attribute name="name">
+               <xsl:value-of select="$loc/strings/geo"/>
+            </xsl:attribute>
+            <xsl:apply-templates/>
+         </svrl:active-pattern>
+         <xsl:apply-templates select="/" mode="M14"/>
+         <svrl:active-pattern>
+            <xsl:attribute name="document">
+               <xsl:value-of select="document-uri(/)"/>
+            </xsl:attribute>
+            <xsl:attribute name="name">
+               <xsl:value-of select="$loc/strings/temporal"/>
+            </xsl:attribute>
+            <xsl:apply-templates/>
+         </svrl:active-pattern>
+         <xsl:apply-templates select="/" mode="M15"/>
+         <svrl:active-pattern>
+            <xsl:attribute name="document">
+               <xsl:value-of select="document-uri(/)"/>
+            </xsl:attribute>
+            <xsl:attribute name="name">
+               <xsl:value-of select="$loc/strings/quality"/>
+            </xsl:attribute>
+            <xsl:apply-templates/>
+         </svrl:active-pattern>
+         <xsl:apply-templates select="/" mode="M16"/>
+         <svrl:active-pattern>
+            <xsl:attribute name="document">
+               <xsl:value-of select="document-uri(/)"/>
+            </xsl:attribute>
+            <xsl:attribute name="name">
+               <xsl:value-of select="$loc/strings/conformity"/>
+            </xsl:attribute>
+            <xsl:apply-templates/>
+         </svrl:active-pattern>
+         <xsl:apply-templates select="/" mode="M17"/>
+         <svrl:active-pattern>
+            <xsl:attribute name="document">
+               <xsl:value-of select="document-uri(/)"/>
+            </xsl:attribute>
+            <xsl:attribute name="name">
+               <xsl:value-of select="$loc/strings/constraints"/>
+            </xsl:attribute>
+            <xsl:apply-templates/>
+         </svrl:active-pattern>
+         <xsl:apply-templates select="/" mode="M18"/>
+         <svrl:active-pattern>
+            <xsl:attribute name="document">
+               <xsl:value-of select="document-uri(/)"/>
+            </xsl:attribute>
+            <xsl:attribute name="name">
+               <xsl:value-of select="$loc/strings/constraints"/>
+            </xsl:attribute>
+            <xsl:apply-templates/>
+         </svrl:active-pattern>
+         <xsl:apply-templates select="/" mode="M19"/>
+         <svrl:active-pattern>
+            <xsl:attribute name="document">
+               <xsl:value-of select="document-uri(/)"/>
+            </xsl:attribute>
+            <xsl:attribute name="name">
+               <xsl:value-of select="$loc/strings/org"/>
+            </xsl:attribute>
+            <xsl:apply-templates/>
+         </svrl:active-pattern>
+         <xsl:apply-templates select="/" mode="M20"/>
+         <svrl:active-pattern>
+            <xsl:attribute name="document">
+               <xsl:value-of select="document-uri(/)"/>
+            </xsl:attribute>
+            <xsl:attribute name="name">
+               <xsl:value-of select="$loc/strings/metadata"/>
+            </xsl:attribute>
+            <xsl:apply-templates/>
+         </svrl:active-pattern>
+         <xsl:apply-templates select="/" mode="M21"/>
+      </svrl:schematron-output>
+   </xsl:template>
+
+   <!--SCHEMATRON PATTERNS-->
+<svrl:text xmlns:svrl="http://purl.oclc.org/dsdl/svrl">INSPIRE metadata implementing rule validation</svrl:text>
+
+   <!--PATTERN
+        $loc/strings/identification-->
+<svrl:text xmlns:svrl="http://purl.oclc.org/dsdl/svrl">
+      <xsl:copy-of select="$loc/strings/identification"/>
+   </svrl:text>
+
+  <!--RULE
+      -->
+<xsl:template match="//gmd:identificationInfo/*/gmd:citation/gmd:CI_Citation" priority="1003"
+                 mode="M9">
+      <svrl:fired-rule xmlns:svrl="http://purl.oclc.org/dsdl/svrl"
+                       context="//gmd:identificationInfo/*/gmd:citation/gmd:CI_Citation"/>
+      <xsl:variable name="noResourceTitle"
+                    select="not(gmd:title) or gmd:title/@gco:nilReason='missing'"/>
+      <xsl:variable name="resourceTitle" select="gmd:title/*/text()"/>
+
+      <!--ASSERT
+      -->
+<xsl:choose>
+         <xsl:when test="not($noResourceTitle)"/>
+         <xsl:otherwise>
+            <svrl:failed-assert xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                test="not($noResourceTitle)">
+               <xsl:attribute name="location">
+                  <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+               </xsl:attribute>
+               <svrl:text>
+                  <xsl:text/>
+                  <xsl:copy-of select="$loc/strings/alert.M35/div"/>
+                  <xsl:text/>
+               </svrl:text>
+            </svrl:failed-assert>
+         </xsl:otherwise>
+      </xsl:choose>
+
+      <!--REPORT
+      -->
+<xsl:if test="not($noResourceTitle)">
+         <svrl:successful-report xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                 test="not($noResourceTitle)">
+            <xsl:attribute name="location">
+               <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+            </xsl:attribute>
+            <svrl:text>
+                <xsl:text/>
+               <xsl:copy-of select="$loc/strings/report.M35/div"/>
+               <xsl:text/>
+               <xsl:text/>
+               <xsl:copy-of select="$resourceTitle"/>
+               <xsl:text/>
+            </svrl:text>
+         </svrl:successful-report>
+      </xsl:if>
+      <xsl:apply-templates select="*" mode="M9"/>
+   </xsl:template>
+
+  <!--RULE
+      -->
+<xsl:template match="//gmd:distributionInfo/*/gmd:transferOptions/*/gmd:onLine/gmd:CI_OnlineResource"
+                 priority="1002"
+                 mode="M9">
+      <svrl:fired-rule xmlns:svrl="http://purl.oclc.org/dsdl/svrl"
+                       context="//gmd:distributionInfo/*/gmd:transferOptions/*/gmd:onLine/gmd:CI_OnlineResource"/>
+      <xsl:variable name="resourceLocator" select="gmd:linkage/*/text()"/>
+      <xsl:variable name="noResourceLocator"
+                    select="normalize-space(gmd:linkage/gmd:URL)=''      or not(gmd:linkage)"/>
+
+      <!--ASSERT
+      -->
+<xsl:choose>
+         <xsl:when test="not($noResourceLocator)"/>
+         <xsl:otherwise>
+            <svrl:failed-assert xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                test="not($noResourceLocator)">
+               <xsl:attribute name="location">
+                  <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+               </xsl:attribute>
+               <svrl:text>
+                  <xsl:text/>
+                  <xsl:copy-of select="$loc/strings/alert.M52/div"/>
+                  <xsl:text/>
+               </svrl:text>
+            </svrl:failed-assert>
+         </xsl:otherwise>
+      </xsl:choose>
+
+      <!--REPORT
+      -->
+<xsl:if test="not($noResourceLocator)">
+         <svrl:successful-report xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                 test="not($noResourceLocator)">
+            <xsl:attribute name="location">
+               <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+            </xsl:attribute>
+            <svrl:text>
+                <xsl:text/>
+               <xsl:copy-of select="$loc/strings/report.M52/div"/>
+               <xsl:text/>
+                <xsl:text/>
+               <xsl:copy-of select="$resourceLocator"/>
+               <xsl:text/>
+            </svrl:text>
+         </svrl:successful-report>
+      </xsl:if>
+      <xsl:apply-templates select="*" mode="M9"/>
+   </xsl:template>
+
+  <!--RULE
+      -->
+<xsl:template match="//gmd:MD_Metadata" priority="1001" mode="M9">
+      <svrl:fired-rule xmlns:svrl="http://purl.oclc.org/dsdl/svrl" context="//gmd:MD_Metadata"/>
+      <xsl:variable name="resourceType_present"
+                    select="gmd:hierarchyLevel/*/@codeListValue='dataset'     or gmd:hierarchyLevel/*/@codeListValue='series'     or gmd:hierarchyLevel/*/@codeListValue='service'"/>
+      <xsl:variable name="resourceType"
+                    select="string-join(gmd:hierarchyLevel/*/@codeListValue, ',')"/>
+
+      <!--ASSERT
+      -->
+<xsl:choose>
+         <xsl:when test="$resourceType_present"/>
+         <xsl:otherwise>
+            <svrl:failed-assert xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                test="$resourceType_present">
+               <xsl:attribute name="location">
+                  <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+               </xsl:attribute>
+               <svrl:text>
+                  <xsl:text/>
+                  <xsl:copy-of select="$loc/strings/alert.M37/div"/>
+                  <xsl:text/>
+               </svrl:text>
+            </svrl:failed-assert>
+         </xsl:otherwise>
+      </xsl:choose>
+
+      <!--REPORT
+      -->
+<xsl:if test="$resourceType_present">
+         <svrl:successful-report xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                 test="$resourceType_present">
+            <xsl:attribute name="location">
+               <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+            </xsl:attribute>
+            <svrl:text>
+                <xsl:text/>
+               <xsl:copy-of select="$loc/strings/report.M37/div"/>
+               <xsl:text/>
+                <xsl:text/>
+               <xsl:copy-of select="$resourceType"/>
+               <xsl:text/>
+            </svrl:text>
+         </svrl:successful-report>
+      </xsl:if>
+      <xsl:apply-templates select="*" mode="M9"/>
+   </xsl:template>
+
+  <!--RULE
+      -->
+<xsl:template match="//gmd:MD_DataIdentification|    //*[@gco:isoType='gmd:MD_DataIdentification']|    //srv:SV_ServiceIdentification|    //*[@gco:isoType='srv:SV_ServiceIdentification']"
+                 priority="1000"
+                 mode="M9">
+      <svrl:fired-rule xmlns:svrl="http://purl.oclc.org/dsdl/svrl"
+                       context="//gmd:MD_DataIdentification|    //*[@gco:isoType='gmd:MD_DataIdentification']|    //srv:SV_ServiceIdentification|    //*[@gco:isoType='srv:SV_ServiceIdentification']"/>
+      <xsl:variable name="resourceAbstract" select="gmd:abstract/*/text()"/>
+      <xsl:variable name="noResourceAbstract"
+                    select="not(gmd:abstract) or gmd:abstract/@gco:nilReason='missing'"/>
+
+      <!--ASSERT
+      -->
+<xsl:choose>
+         <xsl:when test="not($noResourceAbstract)"/>
+         <xsl:otherwise>
+            <svrl:failed-assert xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                test="not($noResourceAbstract)">
+               <xsl:attribute name="location">
+                  <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+               </xsl:attribute>
+               <svrl:text>
+                  <xsl:text/>
+                  <xsl:copy-of select="$loc/strings/alert.M36/div"/>
+                  <xsl:text/>
+               </svrl:text>
+            </svrl:failed-assert>
+         </xsl:otherwise>
+      </xsl:choose>
+
+      <!--REPORT
+      -->
+<xsl:if test="not($noResourceAbstract)">
+         <svrl:successful-report xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                 test="not($noResourceAbstract)">
+            <xsl:attribute name="location">
+               <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+            </xsl:attribute>
+            <svrl:text>
+                <xsl:text/>
+               <xsl:copy-of select="$loc/strings/report.M36/div"/>
+               <xsl:text/>
+                <xsl:text/>
+               <xsl:copy-of select="$resourceAbstract"/>
+               <xsl:text/>
+            </svrl:text>
+         </svrl:successful-report>
+      </xsl:if>
+      <xsl:apply-templates select="*" mode="M9"/>
+   </xsl:template>
+   <xsl:template match="text()" priority="-1" mode="M9"/>
+   <xsl:template match="@*|node()" priority="-2" mode="M9">
+      <xsl:apply-templates select="*" mode="M9"/>
+   </xsl:template>
+
+   <!--PATTERN
+        $loc/strings/dataIdentification-->
+<svrl:text xmlns:svrl="http://purl.oclc.org/dsdl/svrl">
+      <xsl:copy-of select="$loc/strings/dataIdentification"/>
+   </svrl:text>
+
+  <!--RULE
+      -->
+<xsl:template match="//gmd:MD_DataIdentification[    normalize-space(../../gmd:hierarchyLevel/gmd:MD_ScopeCode/@codeListValue) = 'series'    or normalize-space(../../gmd:hierarchyLevel/gmd:MD_ScopeCode/@codeListValue) = 'dataset'    or normalize-space(../../gmd:hierarchyLevel/gmd:MD_ScopeCode/@codeListValue) = '']|    //*[@gco:isoType='gmd:MD_DataIdentification' and (    normalize-space(../../gmd:hierarchyLevel/gmd:MD_ScopeCode/@codeListValue) = 'series'    or normalize-space(../../gmd:hierarchyLevel/gmd:MD_ScopeCode/@codeListValue) = 'dataset'    or normalize-space(../../gmd:hierarchyLevel/gmd:MD_ScopeCode/@codeListValue) = '')]"
+                 priority="1000"
+                 mode="M10">
+      <svrl:fired-rule xmlns:svrl="http://purl.oclc.org/dsdl/svrl"
+                       context="//gmd:MD_DataIdentification[    normalize-space(../../gmd:hierarchyLevel/gmd:MD_ScopeCode/@codeListValue) = 'series'    or normalize-space(../../gmd:hierarchyLevel/gmd:MD_ScopeCode/@codeListValue) = 'dataset'    or normalize-space(../../gmd:hierarchyLevel/gmd:MD_ScopeCode/@codeListValue) = '']|    //*[@gco:isoType='gmd:MD_DataIdentification' and (    normalize-space(../../gmd:hierarchyLevel/gmd:MD_ScopeCode/@codeListValue) = 'series'    or normalize-space(../../gmd:hierarchyLevel/gmd:MD_ScopeCode/@codeListValue) = 'dataset'    or normalize-space(../../gmd:hierarchyLevel/gmd:MD_ScopeCode/@codeListValue) = '')]"/>
+      <xsl:variable name="resourceLanguage"
+                    select="string-join(gmd:language/gco:CharacterString|gmd:language/gmd:LanguageCode/@codeListValue, ', ')"/>
+      <xsl:variable name="euLanguage"
+                    select="     not(gmd:language/@gco:nilReason='missing') and      geonet:contains-any-of($resourceLanguage,      ('eng', 'fre', 'ger', 'spa', 'dut', 'ita', 'cze', 'lav', 'dan', 'lit', 'mlt',      'pol', 'est', 'por', 'fin', 'rum', 'slo', 'slv', 'gre', 'bul',      'hun', 'swe', 'gle'))"/>
+
+      <!--ASSERT
+      -->
+<xsl:choose>
+         <xsl:when test="$euLanguage"/>
+         <xsl:otherwise>
+            <svrl:failed-assert xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                test="$euLanguage">
+               <xsl:attribute name="location">
+                  <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+               </xsl:attribute>
+               <svrl:text>
+                  <xsl:text/>
+                  <xsl:copy-of select="$loc/strings/alert.M55/div"/>
+                  <xsl:text/>
+               </svrl:text>
+            </svrl:failed-assert>
+         </xsl:otherwise>
+      </xsl:choose>
+
+      <!--REPORT
+      -->
+<xsl:if test="$euLanguage">
+         <svrl:successful-report xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                 test="$euLanguage">
+            <xsl:attribute name="location">
+               <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+            </xsl:attribute>
+            <svrl:text>
+                <xsl:text/>
+               <xsl:copy-of select="$loc/strings/report.M55/div"/>
+               <xsl:text/>
+               <xsl:text/>
+               <xsl:copy-of select="$resourceLanguage"/>
+               <xsl:text/>
+            </svrl:text>
+         </svrl:successful-report>
+      </xsl:if>
+      <xsl:variable name="topic" select="gmd:topicCategory/gmd:MD_TopicCategoryCode"/>
+      <xsl:variable name="noTopic"
+                    select="not(gmd:topicCategory)  or     gmd:topicCategory/gmd:MD_TopicCategoryCode/text() = ''"/>
+
+      <!--ASSERT
+      -->
+<xsl:choose>
+         <xsl:when test="not($noTopic)"/>
+         <xsl:otherwise>
+            <svrl:failed-assert xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                test="not($noTopic)">
+               <xsl:attribute name="location">
+                  <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+               </xsl:attribute>
+               <svrl:text>
+                  <xsl:text/>
+                  <xsl:copy-of select="$loc/strings/alert.M39/div"/>
+                  <xsl:text/>
+               </svrl:text>
+            </svrl:failed-assert>
+         </xsl:otherwise>
+      </xsl:choose>
+
+      <!--REPORT
+      -->
+<xsl:if test="not($noTopic)">
+         <svrl:successful-report xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                 test="not($noTopic)">
+            <xsl:attribute name="location">
+               <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+            </xsl:attribute>
+            <svrl:text>
+                <xsl:text/>
+               <xsl:copy-of select="$loc/strings/report.M39/div"/>
+               <xsl:text/>
+               <xsl:text/>
+               <xsl:copy-of select="$topic"/>
+               <xsl:text/>
+            </svrl:text>
+         </svrl:successful-report>
+      </xsl:if>
+      <xsl:variable name="resourceIdentifier"
+                    select="gmd:citation/gmd:CI_Citation/gmd:identifier     and not(gmd:citation/gmd:CI_Citation/gmd:identifier[*/gmd:code/@gco:nilReason='missing'])"/>
+      <xsl:variable name="resourceIdentifier_code"
+                    select="gmd:citation/gmd:CI_Citation/gmd:identifier/*/gmd:code/*/text()"/>
+      <xsl:variable name="resourceIdentifier_codeSpace"
+                    select="gmd:citation/gmd:CI_Citation/gmd:identifier/*/gmd:codeSpace/*/text()"/>
+
+      <!--ASSERT
+      -->
+<xsl:choose>
+         <xsl:when test="$resourceIdentifier"/>
+         <xsl:otherwise>
+            <svrl:failed-assert xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                test="$resourceIdentifier">
+               <xsl:attribute name="location">
+                  <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+               </xsl:attribute>
+               <svrl:text>
+                  <xsl:text/>
+                  <xsl:copy-of select="$loc/strings/alert.M38/div"/>
+                  <xsl:text/>
+               </svrl:text>
+            </svrl:failed-assert>
+         </xsl:otherwise>
+      </xsl:choose>
+
+      <!--REPORT
+      -->
+<xsl:if test="$resourceIdentifier_code">
+         <svrl:successful-report xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                 test="$resourceIdentifier_code">
+            <xsl:attribute name="location">
+               <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+            </xsl:attribute>
+            <svrl:text>
+               <xsl:text/>
+               <xsl:copy-of select="$loc/strings/report.M38/div"/>
+               <xsl:text/>
+                <xsl:text/>
+               <xsl:copy-of select="$resourceIdentifier_code"/>
+               <xsl:text/>
+            </svrl:text>
+         </svrl:successful-report>
+      </xsl:if>
+
+      <!--REPORT
+      -->
+<xsl:if test="$resourceIdentifier_codeSpace">
+         <svrl:successful-report xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                 test="$resourceIdentifier_codeSpace">
+            <xsl:attribute name="location">
+               <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+            </xsl:attribute>
+            <svrl:text>
+               <xsl:text/>
+               <xsl:copy-of select="$loc/strings/report.M38.codespace/div"/>
+               <xsl:text/>
+                <xsl:text/>
+               <xsl:copy-of select="$resourceIdentifier_codeSpace"/>
+               <xsl:text/>
+            </svrl:text>
+         </svrl:successful-report>
+      </xsl:if>
+      <xsl:apply-templates select="*" mode="M10"/>
+   </xsl:template>
+   <xsl:template match="text()" priority="-1" mode="M10"/>
+   <xsl:template match="@*|node()" priority="-2" mode="M10">
+      <xsl:apply-templates select="*" mode="M10"/>
+   </xsl:template>
+
+   <!--PATTERN
+        $loc/strings/serviceIdentification-->
+<svrl:text xmlns:svrl="http://purl.oclc.org/dsdl/svrl">
+      <xsl:copy-of select="$loc/strings/serviceIdentification"/>
+   </svrl:text>
+
+  <!--RULE
+      -->
+<xsl:template match="//srv:SV_ServiceIdentification|    //*[@gco:isoType='srv:SV_ServiceIdentification']"
+                 priority="1000"
+                 mode="M11">
+      <svrl:fired-rule xmlns:svrl="http://purl.oclc.org/dsdl/svrl"
+                       context="//srv:SV_ServiceIdentification|    //*[@gco:isoType='srv:SV_ServiceIdentification']"/>
+      <xsl:variable name="coupledResourceHref"
+                    select="string-join(srv:operatesOn/@xlink:href, ', ')"/>
+      <xsl:variable name="coupledResourceUUID" select="string-join(srv:operatesOn/@uuidref, ', ')"/>
+      <xsl:variable name="coupledResource"
+                    select="../../gmd:hierarchyLevel/gmd:MD_ScopeCode/@codeListValue='service'     and //srv:operatesOn"/>
+
+      <!--REPORT
+      -->
+<xsl:if test="$coupledResource and $coupledResourceHref!=''">
+         <svrl:successful-report xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                 test="$coupledResource and $coupledResourceHref!=''">
+            <xsl:attribute name="location">
+               <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+            </xsl:attribute>
+            <svrl:text>
+                <xsl:text/>
+               <xsl:copy-of select="$loc/strings/report.M51/div"/>
+               <xsl:text/>
+               <xsl:text/>
+               <xsl:copy-of select="$coupledResourceHref"/>
+               <xsl:text/>
+            </svrl:text>
+         </svrl:successful-report>
+      </xsl:if>
+
+      <!--REPORT
+      -->
+<xsl:if test="$coupledResource and $coupledResourceUUID!=''">
+         <svrl:successful-report xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                 test="$coupledResource and $coupledResourceUUID!=''">
+            <xsl:attribute name="location">
+               <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+            </xsl:attribute>
+            <svrl:text>
+                <xsl:text/>
+               <xsl:copy-of select="$loc/strings/report.M51/div"/>
+               <xsl:text/>
+               <xsl:text/>
+               <xsl:copy-of select="$coupledResourceUUID"/>
+               <xsl:text/>
+            </svrl:text>
+         </svrl:successful-report>
+      </xsl:if>
+      <xsl:variable name="serviceType" select="srv:serviceType/gco:LocalName"/>
+      <xsl:variable name="noServiceType"
+                    select="geonet:contains-any-of(srv:serviceType/gco:LocalName,     ('view', 'discovery', 'download', 'transformation', 'invoke', 'other'))"/>
+
+      <!--ASSERT
+      -->
+<xsl:choose>
+         <xsl:when test="$noServiceType"/>
+         <xsl:otherwise>
+            <svrl:failed-assert xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                test="$noServiceType">
+               <xsl:attribute name="location">
+                  <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+               </xsl:attribute>
+               <svrl:text>
+                  <xsl:text/>
+                  <xsl:copy-of select="$loc/strings/alert.M60/div"/>
+                  <xsl:text/>
+               </svrl:text>
+            </svrl:failed-assert>
+         </xsl:otherwise>
+      </xsl:choose>
+
+      <!--REPORT
+      -->
+<xsl:if test="$noServiceType">
+         <svrl:successful-report xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                 test="$noServiceType">
+            <xsl:attribute name="location">
+               <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+            </xsl:attribute>
+            <svrl:text>
+                <xsl:text/>
+               <xsl:copy-of select="$loc/strings/report.M60/div"/>
+               <xsl:text/>
+               <xsl:text/>
+               <xsl:copy-of select="$serviceType"/>
+               <xsl:text/>
+            </svrl:text>
+         </svrl:successful-report>
+      </xsl:if>
+      <xsl:apply-templates select="*" mode="M11"/>
+   </xsl:template>
+   <xsl:template match="text()" priority="-1" mode="M11"/>
+   <xsl:template match="@*|node()" priority="-2" mode="M11">
+      <xsl:apply-templates select="*" mode="M11"/>
+   </xsl:template>
+
+   <!--PATTERN
+        $loc/strings/theme-->
+<svrl:text xmlns:svrl="http://purl.oclc.org/dsdl/svrl">
+      <xsl:copy-of select="$loc/strings/theme"/>
+   </svrl:text>
+
+  <!--RULE
+      -->
+<xsl:template match="//gmd:MD_DataIdentification|    //*[@gco:isoType='gmd:MD_DataIdentification']"
+                 priority="1000"
+                 mode="M12">
+      <svrl:fired-rule xmlns:svrl="http://purl.oclc.org/dsdl/svrl"
+                       context="//gmd:MD_DataIdentification|    //*[@gco:isoType='gmd:MD_DataIdentification']"/>
+      <xsl:variable name="thesaurusURL"
+                    select="concat('file:///', $thesaurusDir, '/external/thesauri/theme/inspire-theme.rdf')"/>
+      <xsl:variable name="inspire-thesaurus" select="document($thesaurusURL)"/>
+      <xsl:variable name="inspire-theme" select="$inspire-thesaurus//skos:Concept"/>
+
+      <!--ASSERT
+      -->
+<xsl:choose>
+         <xsl:when test="count($inspire-theme) &gt; 0"/>
+         <xsl:otherwise>
+            <svrl:failed-assert xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                test="count($inspire-theme) &gt; 0">
+               <xsl:attribute name="location">
+                  <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+               </xsl:attribute>
+               <svrl:text>
+                INSPIRE Theme thesaurus not found (at <xsl:text/>
+                  <xsl:copy-of select="$thesaurusURL"/>
+                  <xsl:text/>. Check installation in codelist/external/thesauri/theme.
+                Download thesaurus from https://geonetwork.svn.sourceforge.net/svnroot/geonetwork/utilities/gemet/thesauri/.
+            </svrl:text>
+            </svrl:failed-assert>
+         </xsl:otherwise>
+      </xsl:choose>
+      <xsl:variable name="thesaurus_name"
+                    select="gmd:descriptiveKeywords/*/gmd:thesaurusName/*/gmd:title/*/text()"/>
+      <xsl:variable name="thesaurus_date"
+                    select="gmd:descriptiveKeywords/*/gmd:thesaurusName/*/gmd:date/*/gmd:date/*/text()"/>
+      <xsl:variable name="thesaurus_dateType"
+                    select="gmd:descriptiveKeywords/*/gmd:thesaurusName/*/gmd:date/*/gmd:dateType/*/@codeListValue/text()"/>
+      <xsl:variable name="keyword"
+                    select="gmd:descriptiveKeywords/*/gmd:keyword/gco:CharacterString|     gmd:descriptiveKeywords/*/gmd:keyword/gmx:Anchor"/>
+      <xsl:variable name="inspire-theme-found"
+                    select="count($inspire-thesaurus//skos:Concept[skos:prefLabel = $keyword])"/>
+
+      <!--ASSERT
+      -->
+<xsl:choose>
+         <xsl:when test="$inspire-theme-found &gt; 0"/>
+         <xsl:otherwise>
+            <svrl:failed-assert xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                test="$inspire-theme-found &gt; 0">
+               <xsl:attribute name="location">
+                  <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+               </xsl:attribute>
+               <svrl:text>
+                  <xsl:text/>
+                  <xsl:copy-of select="$loc/strings/alert.M40/div"/>
+                  <xsl:text/>
+               </svrl:text>
+            </svrl:failed-assert>
+         </xsl:otherwise>
+      </xsl:choose>
+
+      <!--REPORT
+      -->
+<xsl:if test="$inspire-theme-found &gt; 0">
+         <svrl:successful-report xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                 test="$inspire-theme-found &gt; 0">
+            <xsl:attribute name="location">
+               <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+            </xsl:attribute>
+            <svrl:text>
+                <xsl:text/>
+               <xsl:copy-of select="$inspire-theme-found"/>
+               <xsl:text/> 
+               <xsl:text/>
+               <xsl:copy-of select="$loc/strings/report.M40/div"/>
+               <xsl:text/>
+            </svrl:text>
+         </svrl:successful-report>
+      </xsl:if>
+
+      <!--REPORT
+      -->
+<xsl:if test="$thesaurus_name">
+         <svrl:successful-report xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                 test="$thesaurus_name">
+            <xsl:attribute name="location">
+               <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+            </xsl:attribute>
+            <svrl:text>Thesaurus:
+                <xsl:text/>
+               <xsl:copy-of select="$thesaurus_name"/>
+               <xsl:text/>, <xsl:text/>
+               <xsl:copy-of select="$thesaurus_date"/>
+               <xsl:text/> (<xsl:text/>
+               <xsl:copy-of select="$thesaurus_dateType"/>
+               <xsl:text/>)
+            </svrl:text>
+         </svrl:successful-report>
+      </xsl:if>
+      <xsl:apply-templates select="*" mode="M12"/>
+   </xsl:template>
+   <xsl:template match="text()" priority="-1" mode="M12"/>
+   <xsl:template match="@*|node()" priority="-2" mode="M12">
+      <xsl:apply-templates select="*" mode="M12"/>
+   </xsl:template>
+
+   <!--PATTERN
+        $loc/strings/serviceTaxonomy-->
+<svrl:text xmlns:svrl="http://purl.oclc.org/dsdl/svrl">
+      <xsl:copy-of select="$loc/strings/serviceTaxonomy"/>
+   </svrl:text>
+
+  <!--RULE
+      -->
+<xsl:template match="//srv:SV_ServiceIdentification|//*[@gco:isoType='srv:SV_ServiceIdentification']"
+                 priority="1000"
+                 mode="M13">
+      <svrl:fired-rule xmlns:svrl="http://purl.oclc.org/dsdl/svrl"
+                       context="//srv:SV_ServiceIdentification|//*[@gco:isoType='srv:SV_ServiceIdentification']"/>
+      <xsl:variable name="inspire-thesaurus"
+                    select="document(concat('file:///', $thesaurusDir, '/external/thesauri/theme/inspire-service-taxonomy.rdf'))"/>
+      <xsl:variable name="inspire-st" select="$inspire-thesaurus//skos:Concept"/>
+
+      <!--ASSERT
+      -->
+<xsl:choose>
+         <xsl:when test="count($inspire-st) &gt; 0"/>
+         <xsl:otherwise>
+            <svrl:failed-assert xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                test="count($inspire-st) &gt; 0">
+               <xsl:attribute name="location">
+                  <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+               </xsl:attribute>
+               <svrl:text>
+                INSPIRE service taxonomy thesaurus not found. Check installation in codelist/external/thesauri/theme.
+                Download thesaurus from https://geonetwork.svn.sourceforge.net/svnroot/geonetwork/utilities/gemet/thesauri/.
+            </svrl:text>
+            </svrl:failed-assert>
+         </xsl:otherwise>
+      </xsl:choose>
+      <xsl:variable name="keyword"
+                    select="gmd:descriptiveKeywords/*/gmd:keyword/gco:CharacterString | gmd:descriptiveKeywords/*/gmd:keyword//gmd:LocalisedCharacterString |     gmd:descriptiveKeywords/*/gmd:keyword/gmx:Anchor"/>
+      <xsl:variable name="inspire-theme-found"
+                    select="count($inspire-thesaurus//skos:Concept[skos:prefLabel = $keyword])"/>
+
+      <!--ASSERT
+      -->
+<xsl:choose>
+         <xsl:when test="$inspire-theme-found &gt; 0"/>
+         <xsl:otherwise>
+            <svrl:failed-assert xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                test="$inspire-theme-found &gt; 0">
+               <xsl:attribute name="location">
+                  <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+               </xsl:attribute>
+               <svrl:text>
+                  <xsl:text/>
+                  <xsl:copy-of select="$loc/strings/alert.M58/div"/>
+                  <xsl:text/>
+               </svrl:text>
+            </svrl:failed-assert>
+         </xsl:otherwise>
+      </xsl:choose>
+
+      <!--REPORT
+      -->
+<xsl:if test="$inspire-theme-found &gt; 0">
+         <svrl:successful-report xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                 test="$inspire-theme-found &gt; 0">
+            <xsl:attribute name="location">
+               <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+            </xsl:attribute>
+            <svrl:text>
+                <xsl:text/>
+               <xsl:copy-of select="$inspire-theme-found"/>
+               <xsl:text/> 
+               <xsl:text/>
+               <xsl:copy-of select="$loc/strings/report.M58/div"/>
+               <xsl:text/>
+            </svrl:text>
+         </svrl:successful-report>
+      </xsl:if>
+      <xsl:apply-templates select="*" mode="M13"/>
+   </xsl:template>
+   <xsl:template match="text()" priority="-1" mode="M13"/>
+   <xsl:template match="@*|node()" priority="-2" mode="M13">
+      <xsl:apply-templates select="*" mode="M13"/>
+   </xsl:template>
+
+   <!--PATTERN
+        $loc/strings/geo-->
+<svrl:text xmlns:svrl="http://purl.oclc.org/dsdl/svrl">
+      <xsl:copy-of select="$loc/strings/geo"/>
+   </svrl:text>
+
+  <!--RULE
+      -->
+<xsl:template match="//gmd:MD_DataIdentification[    normalize-space(../../gmd:hierarchyLevel/gmd:MD_ScopeCode/@codeListValue) = 'series'    or normalize-space(../../gmd:hierarchyLevel/gmd:MD_ScopeCode/@codeListValue) = 'dataset'    or normalize-space(../../gmd:hierarchyLevel/gmd:MD_ScopeCode/@codeListValue) = '']    /gmd:extent/*/gmd:geographicElement/gmd:EX_GeographicBoundingBox    |    //*[@gco:isoType='gmd:MD_DataIdentification' and (    normalize-space(../../gmd:hierarchyLevel/gmd:MD_ScopeCode/@codeListValue) = 'series'    or normalize-space(../../gmd:hierarchyLevel/gmd:MD_ScopeCode/@codeListValue) = 'dataset'    or normalize-space(../../gmd:hierarchyLevel/gmd:MD_ScopeCode/@codeListValue) = '')]    /gmd:extent/*/gmd:geographicElement/gmd:EX_GeographicBoundingBox    "
+                 priority="1001"
+                 mode="M14">
+      <svrl:fired-rule xmlns:svrl="http://purl.oclc.org/dsdl/svrl"
+                       context="//gmd:MD_DataIdentification[    normalize-space(../../gmd:hierarchyLevel/gmd:MD_ScopeCode/@codeListValue) = 'series'    or normalize-space(../../gmd:hierarchyLevel/gmd:MD_ScopeCode/@codeListValue) = 'dataset'    or normalize-space(../../gmd:hierarchyLevel/gmd:MD_ScopeCode/@codeListValue) = '']    /gmd:extent/*/gmd:geographicElement/gmd:EX_GeographicBoundingBox    |    //*[@gco:isoType='gmd:MD_DataIdentification' and (    normalize-space(../../gmd:hierarchyLevel/gmd:MD_ScopeCode/@codeListValue) = 'series'    or normalize-space(../../gmd:hierarchyLevel/gmd:MD_ScopeCode/@codeListValue) = 'dataset'    or normalize-space(../../gmd:hierarchyLevel/gmd:MD_ScopeCode/@codeListValue) = '')]    /gmd:extent/*/gmd:geographicElement/gmd:EX_GeographicBoundingBox    "/>
+      <xsl:variable name="west" select="number(gmd:westBoundLongitude/gco:Decimal/text())"/>
+      <xsl:variable name="east" select="number(gmd:eastBoundLongitude/gco:Decimal/text())"/>
+      <xsl:variable name="north" select="number(gmd:northBoundLatitude/gco:Decimal/text())"/>
+      <xsl:variable name="south" select="number(gmd:southBoundLatitude/gco:Decimal/text())"/>
+
+      <!--ASSERT
+      -->
+<xsl:choose>
+         <xsl:when test="(-180.00 &lt;= $west) and ( $west &lt;= 180.00)"/>
+         <xsl:otherwise>
+            <svrl:failed-assert xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                test="(-180.00 &lt;= $west) and ( $west &lt;= 180.00)">
+               <xsl:attribute name="location">
+                  <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+               </xsl:attribute>
+               <svrl:text>
+                  <xsl:text/>
+                  <xsl:copy-of select="$loc/strings/alert.M41.W/div"/>
+                  <xsl:text/>
+               </svrl:text>
+            </svrl:failed-assert>
+         </xsl:otherwise>
+      </xsl:choose>
+
+      <!--REPORT
+      -->
+<xsl:if test="(-180.00 &lt;= $west) and ( $west &lt;= 180.00)">
+         <svrl:successful-report xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                 test="(-180.00 &lt;= $west) and ( $west &lt;= 180.00)">
+            <xsl:attribute name="location">
+               <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+            </xsl:attribute>
+            <svrl:text>
+               <xsl:text/>
+               <xsl:copy-of select="$loc/strings/report.M41.W/div"/>
+               <xsl:text/>
+                <xsl:text/>
+               <xsl:copy-of select="$west"/>
+               <xsl:text/>
+            </svrl:text>
+         </svrl:successful-report>
+      </xsl:if>
+
+      <!--ASSERT
+      -->
+<xsl:choose>
+         <xsl:when test="(-180.00 &lt;= $east) and ($east &lt;= 180.00)"/>
+         <xsl:otherwise>
+            <svrl:failed-assert xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                test="(-180.00 &lt;= $east) and ($east &lt;= 180.00)">
+               <xsl:attribute name="location">
+                  <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+               </xsl:attribute>
+               <svrl:text>
+                  <xsl:text/>
+                  <xsl:copy-of select="$loc/strings/alert.M41.E/div"/>
+                  <xsl:text/>
+               </svrl:text>
+            </svrl:failed-assert>
+         </xsl:otherwise>
+      </xsl:choose>
+
+      <!--REPORT
+      -->
+<xsl:if test="(-180.00 &lt;= $east) and ($east &lt;= 180.00)">
+         <svrl:successful-report xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                 test="(-180.00 &lt;= $east) and ($east &lt;= 180.00)">
+            <xsl:attribute name="location">
+               <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+            </xsl:attribute>
+            <svrl:text>
+               <xsl:text/>
+               <xsl:copy-of select="$loc/strings/report.M41.E/div"/>
+               <xsl:text/>
+                <xsl:text/>
+               <xsl:copy-of select="$east"/>
+               <xsl:text/>
+            </svrl:text>
+         </svrl:successful-report>
+      </xsl:if>
+
+      <!--ASSERT
+      -->
+<xsl:choose>
+         <xsl:when test="(-90.00 &lt;= $south) and ($south &lt;= $north)"/>
+         <xsl:otherwise>
+            <svrl:failed-assert xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                test="(-90.00 &lt;= $south) and ($south &lt;= $north)">
+               <xsl:attribute name="location">
+                  <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+               </xsl:attribute>
+               <svrl:text>
+                  <xsl:text/>
+                  <xsl:copy-of select="$loc/strings/alert.M41.S/div"/>
+                  <xsl:text/>
+               </svrl:text>
+            </svrl:failed-assert>
+         </xsl:otherwise>
+      </xsl:choose>
+
+      <!--REPORT
+      -->
+<xsl:if test="(-90.00 &lt;= $south) and ($south &lt;= $north)">
+         <svrl:successful-report xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                 test="(-90.00 &lt;= $south) and ($south &lt;= $north)">
+            <xsl:attribute name="location">
+               <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+            </xsl:attribute>
+            <svrl:text>
+               <xsl:text/>
+               <xsl:copy-of select="$loc/strings/report.M41.S/div"/>
+               <xsl:text/>
+                <xsl:text/>
+               <xsl:copy-of select="$south"/>
+               <xsl:text/>
+            </svrl:text>
+         </svrl:successful-report>
+      </xsl:if>
+
+      <!--ASSERT
+      -->
+<xsl:choose>
+         <xsl:when test="($south &lt;= $north) and ($north &lt;= 90.00)"/>
+         <xsl:otherwise>
+            <svrl:failed-assert xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                test="($south &lt;= $north) and ($north &lt;= 90.00)">
+               <xsl:attribute name="location">
+                  <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+               </xsl:attribute>
+               <svrl:text>
+                  <xsl:text/>
+                  <xsl:copy-of select="$loc/strings/alert.M41.N/div"/>
+                  <xsl:text/>
+               </svrl:text>
+            </svrl:failed-assert>
+         </xsl:otherwise>
+      </xsl:choose>
+
+      <!--REPORT
+      -->
+<xsl:if test="($south &lt;= $north) and ($north &lt;= 90.00)">
+         <svrl:successful-report xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                 test="($south &lt;= $north) and ($north &lt;= 90.00)">
+            <xsl:attribute name="location">
+               <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+            </xsl:attribute>
+            <svrl:text>
+               <xsl:text/>
+               <xsl:copy-of select="$loc/strings/report.M41.N/div"/>
+               <xsl:text/>
+                <xsl:text/>
+               <xsl:copy-of select="$north"/>
+               <xsl:text/>
+            </svrl:text>
+         </svrl:successful-report>
+      </xsl:if>
+      <xsl:apply-templates select="*" mode="M14"/>
+   </xsl:template>
+
+  <!--RULE
+      -->
+<xsl:template match="//srv:SV_ServiceIdentification[    normalize-space(../../gmd:hierarchyLevel/gmd:MD_ScopeCode/@codeListValue) = 'service']    /srv:extent/*/gmd:geographicElement/gmd:EX_GeographicBoundingBox"
+                 priority="1000"
+                 mode="M14">
+      <svrl:fired-rule xmlns:svrl="http://purl.oclc.org/dsdl/svrl"
+                       context="//srv:SV_ServiceIdentification[    normalize-space(../../gmd:hierarchyLevel/gmd:MD_ScopeCode/@codeListValue) = 'service']    /srv:extent/*/gmd:geographicElement/gmd:EX_GeographicBoundingBox"/>
+      <xsl:variable name="west" select="number(gmd:westBoundLongitude/gco:Decimal/text())"/>
+      <xsl:variable name="east" select="number(gmd:eastBoundLongitude/gco:Decimal/text())"/>
+      <xsl:variable name="north" select="number(gmd:northBoundLatitude/gco:Decimal/text())"/>
+      <xsl:variable name="south" select="number(gmd:southBoundLatitude/gco:Decimal/text())"/>
+
+      <!--REPORT
+      -->
+<xsl:if test="(-180.00 &lt;= $west) and ( $west &lt;= 180.00)">
+         <svrl:successful-report xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                 test="(-180.00 &lt;= $west) and ( $west &lt;= 180.00)">
+            <xsl:attribute name="location">
+               <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+            </xsl:attribute>
+            <svrl:text>
+               <xsl:text/>
+               <xsl:copy-of select="$loc/strings/report.M41.W/div"/>
+               <xsl:text/>
+                <xsl:text/>
+               <xsl:copy-of select="$west"/>
+               <xsl:text/>
+            </svrl:text>
+         </svrl:successful-report>
+      </xsl:if>
+
+      <!--REPORT
+      -->
+<xsl:if test="(-180.00 &lt;= $east) and ($east &lt;= 180.00)">
+         <svrl:successful-report xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                 test="(-180.00 &lt;= $east) and ($east &lt;= 180.00)">
+            <xsl:attribute name="location">
+               <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+            </xsl:attribute>
+            <svrl:text>
+               <xsl:text/>
+               <xsl:copy-of select="$loc/strings/report.M41.E/div"/>
+               <xsl:text/>
+                <xsl:text/>
+               <xsl:copy-of select="$east"/>
+               <xsl:text/>
+            </svrl:text>
+         </svrl:successful-report>
+      </xsl:if>
+
+      <!--REPORT
+      -->
+<xsl:if test="(-90.00 &lt;= $south) and ($south &lt;= $north)">
+         <svrl:successful-report xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                 test="(-90.00 &lt;= $south) and ($south &lt;= $north)">
+            <xsl:attribute name="location">
+               <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+            </xsl:attribute>
+            <svrl:text>
+               <xsl:text/>
+               <xsl:copy-of select="$loc/strings/report.M41.S/div"/>
+               <xsl:text/>
+                <xsl:text/>
+               <xsl:copy-of select="$south"/>
+               <xsl:text/>
+            </svrl:text>
+         </svrl:successful-report>
+      </xsl:if>
+
+      <!--REPORT
+      -->
+<xsl:if test="($south &lt;= $north) and ($north &lt;= 90.00)">
+         <svrl:successful-report xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                 test="($south &lt;= $north) and ($north &lt;= 90.00)">
+            <xsl:attribute name="location">
+               <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+            </xsl:attribute>
+            <svrl:text>
+               <xsl:text/>
+               <xsl:copy-of select="$loc/strings/report.M41.N/div"/>
+               <xsl:text/>
+                <xsl:text/>
+               <xsl:copy-of select="$north"/>
+               <xsl:text/>
+            </svrl:text>
+         </svrl:successful-report>
+      </xsl:if>
+      <xsl:apply-templates select="*" mode="M14"/>
+   </xsl:template>
+   <xsl:template match="text()" priority="-1" mode="M14"/>
+   <xsl:template match="@*|node()" priority="-2" mode="M14">
+      <xsl:apply-templates select="*" mode="M14"/>
+   </xsl:template>
+
+   <!--PATTERN
+        $loc/strings/temporal-->
+<svrl:text xmlns:svrl="http://purl.oclc.org/dsdl/svrl">
+      <xsl:copy-of select="$loc/strings/temporal"/>
+   </svrl:text>
+
+  <!--RULE
+      -->
+<xsl:template match="//gmd:MD_DataIdentification|    //*[@gco:isoType='gmd:MD_DataIdentification']|    //srv:SV_ServiceIdentification|    //*[@gco:isoType='srv:SV_ServiceIdentification']"
+                 priority="1000"
+                 mode="M15">
+      <svrl:fired-rule xmlns:svrl="http://purl.oclc.org/dsdl/svrl"
+                       context="//gmd:MD_DataIdentification|    //*[@gco:isoType='gmd:MD_DataIdentification']|    //srv:SV_ServiceIdentification|    //*[@gco:isoType='srv:SV_ServiceIdentification']"/>
+      <xsl:variable name="temporalExtentBegin"
+                    select="gmd:extent/*/gmd:temporalElement/*/gmd:extent/*/gml:beginPosition/text()"/>
+      <xsl:variable name="temporalExtentEnd"
+                    select="gmd:extent/*/gmd:temporalElement/*/gmd:extent/*/gml:endPosition/text()"/>
+      <xsl:variable name="publicationDate"
+                    select="gmd:citation/*/gmd:date[./*/gmd:dateType/*/@codeListValue='publication']/*/gmd:date/*"/>
+      <xsl:variable name="creationDate"
+                    select="gmd:citation/*/gmd:date[./*/gmd:dateType/*/@codeListValue='creation']/*/gmd:date/*"/>
+      <xsl:variable name="no_creationDate"
+                    select="count(gmd:citation/*/gmd:date[./*/gmd:dateType/*/@codeListValue='creation'])"/>
+      <xsl:variable name="revisionDate"
+                    select="gmd:citation/*/gmd:date[./*/gmd:dateType/*/@codeListValue='revision']/*/gmd:date/*"/>
+
+      <!--ASSERT
+      -->
+<xsl:choose>
+         <xsl:when test="$no_creationDate &lt;= 1"/>
+         <xsl:otherwise>
+            <svrl:failed-assert xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                test="$no_creationDate &lt;= 1">
+               <xsl:attribute name="location">
+                  <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+               </xsl:attribute>
+               <svrl:text>
+                  <xsl:text/>
+                  <xsl:copy-of select="$loc/strings/alert.M42.creation/div"/>
+                  <xsl:text/>
+               </svrl:text>
+            </svrl:failed-assert>
+         </xsl:otherwise>
+      </xsl:choose>
+
+      <!--ASSERT
+      -->
+<xsl:choose>
+         <xsl:when test="$publicationDate or $creationDate or $revisionDate or $temporalExtentBegin or $temporalExtentEnd"/>
+         <xsl:otherwise>
+            <svrl:failed-assert xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                test="$publicationDate or $creationDate or $revisionDate or $temporalExtentBegin or $temporalExtentEnd">
+               <xsl:attribute name="location">
+                  <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+               </xsl:attribute>
+               <svrl:text>
+                  <xsl:text/>
+                  <xsl:copy-of select="$loc/strings/alert.M42/div"/>
+                  <xsl:text/>
+               </svrl:text>
+            </svrl:failed-assert>
+         </xsl:otherwise>
+      </xsl:choose>
+
+      <!--REPORT
+      -->
+<xsl:if test="$temporalExtentBegin">
+         <svrl:successful-report xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                 test="$temporalExtentBegin">
+            <xsl:attribute name="location">
+               <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+            </xsl:attribute>
+            <svrl:text>
+                <xsl:text/>
+               <xsl:copy-of select="$loc/strings/report.M42.begin/div"/>
+               <xsl:text/>
+                <xsl:text/>
+               <xsl:copy-of select="$temporalExtentBegin"/>
+               <xsl:text/>
+            </svrl:text>
+         </svrl:successful-report>
+      </xsl:if>
+
+      <!--REPORT
+      -->
+<xsl:if test="$temporalExtentEnd">
+         <svrl:successful-report xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                 test="$temporalExtentEnd">
+            <xsl:attribute name="location">
+               <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+            </xsl:attribute>
+            <svrl:text>
+                <xsl:text/>
+               <xsl:copy-of select="$loc/strings/report.M42.end/div"/>
+               <xsl:text/>
+                <xsl:text/>
+               <xsl:copy-of select="$temporalExtentEnd"/>
+               <xsl:text/>
+            </svrl:text>
+         </svrl:successful-report>
+      </xsl:if>
+
+      <!--REPORT
+      -->
+<xsl:if test="$publicationDate">
+         <svrl:successful-report xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                 test="$publicationDate">
+            <xsl:attribute name="location">
+               <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+            </xsl:attribute>
+            <svrl:text>
+                <xsl:text/>
+               <xsl:copy-of select="$loc/strings/report.M42.publication/div"/>
+               <xsl:text/>
+                <xsl:text/>
+               <xsl:copy-of select="$publicationDate"/>
+               <xsl:text/>
+            </svrl:text>
+         </svrl:successful-report>
+      </xsl:if>
+
+      <!--REPORT
+      -->
+<xsl:if test="$revisionDate">
+         <svrl:successful-report xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                 test="$revisionDate">
+            <xsl:attribute name="location">
+               <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+            </xsl:attribute>
+            <svrl:text>
+                <xsl:text/>
+               <xsl:copy-of select="$loc/strings/report.M42.revision/div"/>
+               <xsl:text/>
+                <xsl:text/>
+               <xsl:copy-of select="$revisionDate"/>
+               <xsl:text/>
+            </svrl:text>
+         </svrl:successful-report>
+      </xsl:if>
+
+      <!--REPORT
+      -->
+<xsl:if test="$creationDate">
+         <svrl:successful-report xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                 test="$creationDate">
+            <xsl:attribute name="location">
+               <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+            </xsl:attribute>
+            <svrl:text>
+                <xsl:text/>
+               <xsl:copy-of select="$loc/strings/report.M42.creation/div"/>
+               <xsl:text/>
+                <xsl:text/>
+               <xsl:copy-of select="$creationDate"/>
+               <xsl:text/>
+            </svrl:text>
+         </svrl:successful-report>
+      </xsl:if>
+      <xsl:apply-templates select="*" mode="M15"/>
+   </xsl:template>
+   <xsl:template match="text()" priority="-1" mode="M15"/>
+   <xsl:template match="@*|node()" priority="-2" mode="M15">
+      <xsl:apply-templates select="*" mode="M15"/>
+   </xsl:template>
+
+   <!--PATTERN
+        $loc/strings/quality-->
+<svrl:text xmlns:svrl="http://purl.oclc.org/dsdl/svrl">
+      <xsl:copy-of select="$loc/strings/quality"/>
+   </svrl:text>
+
+  <!--RULE
+      -->
+<xsl:template match="//gmd:DQ_DataQuality[../../gmd:identificationInfo/gmd:MD_DataIdentification    or ../../gmd:identificationInfo/*/@gco:isoType = 'gmd:MD_DataIdentification']"
+                 priority="1001"
+                 mode="M16">
+      <svrl:fired-rule xmlns:svrl="http://purl.oclc.org/dsdl/svrl"
+                       context="//gmd:DQ_DataQuality[../../gmd:identificationInfo/gmd:MD_DataIdentification    or ../../gmd:identificationInfo/*/@gco:isoType = 'gmd:MD_DataIdentification']"/>
+      <xsl:variable name="lineage"
+                    select="not(gmd:lineage/gmd:LI_Lineage/gmd:statement) or (gmd:lineage//gmd:statement/@gco:nilReason)"/>
+
+      <!--ASSERT
+      -->
+<xsl:choose>
+         <xsl:when test="not($lineage)"/>
+         <xsl:otherwise>
+            <svrl:failed-assert xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                test="not($lineage)">
+               <xsl:attribute name="location">
+                  <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+               </xsl:attribute>
+               <svrl:text>
+                  <xsl:copy-of select="$loc/strings/alert.M43/div"/>
+               </svrl:text>
+            </svrl:failed-assert>
+         </xsl:otherwise>
+      </xsl:choose>
+
+      <!--REPORT
+      -->
+<xsl:if test="not($lineage)">
+         <svrl:successful-report xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                 test="not($lineage)">
+            <xsl:attribute name="location">
+               <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+            </xsl:attribute>
+            <svrl:text>
+               <xsl:copy-of select="$loc/strings/report.M43/div"/>
+            </svrl:text>
+         </svrl:successful-report>
+      </xsl:if>
+      <xsl:apply-templates select="*" mode="M16"/>
+   </xsl:template>
+
+  <!--RULE
+      -->
+<xsl:template match="//gmd:MD_DataIdentification/gmd:spatialResolution|//*[@gco:isoType='gmd:MD_DataIdentification']/gmd:spatialResolution"
+                 priority="1000"
+                 mode="M16">
+      <svrl:fired-rule xmlns:svrl="http://purl.oclc.org/dsdl/svrl"
+                       context="//gmd:MD_DataIdentification/gmd:spatialResolution|//*[@gco:isoType='gmd:MD_DataIdentification']/gmd:spatialResolution"/>
+
+      <!--ASSERT
+      -->
+<xsl:choose>
+         <xsl:when test="*/gmd:equivalentScale or */gmd:distance"/>
+         <xsl:otherwise>
+            <svrl:failed-assert xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                test="*/gmd:equivalentScale or */gmd:distance">
+               <xsl:attribute name="location">
+                  <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+               </xsl:attribute>
+               <svrl:text>
+                  <xsl:copy-of select="$loc/strings/alert.M56/div"/>
+               </svrl:text>
+            </svrl:failed-assert>
+         </xsl:otherwise>
+      </xsl:choose>
+
+      <!--REPORT
+      -->
+<xsl:if test="*/gmd:equivalentScale or */gmd:distance">
+         <svrl:successful-report xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                 test="*/gmd:equivalentScale or */gmd:distance">
+            <xsl:attribute name="location">
+               <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+            </xsl:attribute>
+            <svrl:text>
+               <xsl:copy-of select="$loc/strings/report.M56/div"/>
+            </svrl:text>
+         </svrl:successful-report>
+      </xsl:if>
+      <xsl:apply-templates select="*" mode="M16"/>
+   </xsl:template>
+   <xsl:template match="text()" priority="-1" mode="M16"/>
+   <xsl:template match="@*|node()" priority="-2" mode="M16">
+      <xsl:apply-templates select="*" mode="M16"/>
+   </xsl:template>
+
+   <!--PATTERN
+        $loc/strings/conformity-->
+<svrl:text xmlns:svrl="http://purl.oclc.org/dsdl/svrl">
+      <xsl:copy-of select="$loc/strings/conformity"/>
+   </svrl:text>
+
+  <!--RULE
+      -->
+<xsl:template match="/gmd:MD_Metadata" priority="1001" mode="M17">
+      <svrl:fired-rule xmlns:svrl="http://purl.oclc.org/dsdl/svrl" context="/gmd:MD_Metadata"/>
+      <xsl:variable name="degree"
+                    select="count(gmd:dataQualityInfo/*/gmd:report/*/gmd:result/*/gmd:pass)"/>
+
+      <!--ASSERT
+      -->
+<xsl:choose>
+         <xsl:when test="$degree"/>
+         <xsl:otherwise>
+            <svrl:failed-assert xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                test="$degree">
+               <xsl:attribute name="location">
+                  <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+               </xsl:attribute>
+               <svrl:text>
+                  <xsl:text/>
+                  <xsl:copy-of select="$loc/strings/alert.M44.nonev/div"/>
+                  <xsl:text/>
+                  <xsl:text/>
+                  <xsl:copy-of select="$degree&gt;0"/>
+                  <xsl:text/>
+               </svrl:text>
+            </svrl:failed-assert>
+         </xsl:otherwise>
+      </xsl:choose>
+
+      <!--REPORT
+      -->
+<xsl:if test="$degree">
+         <svrl:successful-report xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                 test="$degree">
+            <xsl:attribute name="location">
+               <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+            </xsl:attribute>
+            <svrl:text>
+                <xsl:text/>
+               <xsl:copy-of select="$loc/strings/report.M44.nonev/div"/>
+               <xsl:text/>
+            </svrl:text>
+         </svrl:successful-report>
+      </xsl:if>
+      <xsl:apply-templates select="*" mode="M17"/>
+   </xsl:template>
+
+  <!--RULE
+      -->
+<xsl:template match="//gmd:dataQualityInfo/*/gmd:report/*/gmd:result/*" priority="1000"
+                 mode="M17">
+      <svrl:fired-rule xmlns:svrl="http://purl.oclc.org/dsdl/svrl"
+                       context="//gmd:dataQualityInfo/*/gmd:report/*/gmd:result/*"/>
+      <xsl:variable name="degree" select="gmd:pass/*/text()"/>
+      <xsl:variable name="specification_title" select="gmd:specification/*/gmd:title/*/text()"/>
+      <xsl:variable name="specification_date"
+                    select="gmd:specification/*/gmd:date/*/gmd:date/*/text()"/>
+      <xsl:variable name="specification_dateType"
+                    select="normalize-space(gmd:specification/*/gmd:date/*/gmd:dateType/*/@codeListValue)"/>
+
+      <!--REPORT
+      -->
+<xsl:if test="$specification_title">
+         <svrl:successful-report xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                 test="$specification_title">
+            <xsl:attribute name="location">
+               <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+            </xsl:attribute>
+            <svrl:text>
+               <xsl:text/>
+               <xsl:copy-of select="$loc/strings/report.M44.spec/div"/>
+               <xsl:text/>
+                <xsl:text/>
+               <xsl:copy-of select="$specification_title"/>
+               <xsl:text/>, (<xsl:text/>
+               <xsl:copy-of select="$specification_date"/>
+               <xsl:text/>, <xsl:text/>
+               <xsl:copy-of select="$specification_dateType"/>
+               <xsl:text/>)
+            </svrl:text>
+         </svrl:successful-report>
+      </xsl:if>
+
+      <!--REPORT
+      -->
+<xsl:if test="$degree">
+         <svrl:successful-report xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                 test="$degree">
+            <xsl:attribute name="location">
+               <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+            </xsl:attribute>
+            <svrl:text>
+                <xsl:text/>
+               <xsl:copy-of select="$loc/strings/report.M44.degree/div"/>
+               <xsl:text/>
+                <xsl:text/>
+               <xsl:copy-of select="$degree"/>
+               <xsl:text/>
+            </svrl:text>
+         </svrl:successful-report>
+      </xsl:if>
+      <xsl:apply-templates select="*" mode="M17"/>
+   </xsl:template>
+   <xsl:template match="text()" priority="-1" mode="M17"/>
+   <xsl:template match="@*|node()" priority="-2" mode="M17">
+      <xsl:apply-templates select="*" mode="M17"/>
+   </xsl:template>
+
+   <!--PATTERN
+        $loc/strings/constraints-->
+<svrl:text xmlns:svrl="http://purl.oclc.org/dsdl/svrl">
+      <xsl:copy-of select="$loc/strings/constraints"/>
+   </svrl:text>
+
+  <!--RULE
+      -->
+<xsl:template match="//gmd:MD_DataIdentification|    //*[@gco:isoType='gmd:MD_DataIdentification']|    //srv:SV_ServiceIdentification|    //*[@gco:isoType='srv:SV_ServiceIdentification']"
+                 priority="1001"
+                 mode="M18">
+      <svrl:fired-rule xmlns:svrl="http://purl.oclc.org/dsdl/svrl"
+                       context="//gmd:MD_DataIdentification|    //*[@gco:isoType='gmd:MD_DataIdentification']|    //srv:SV_ServiceIdentification|    //*[@gco:isoType='srv:SV_ServiceIdentification']"/>
+
+      <!--ASSERT
+      -->
+<xsl:choose>
+         <xsl:when test="count(gmd:resourceConstraints/*) &gt; 0"/>
+         <xsl:otherwise>
+            <svrl:failed-assert xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                test="count(gmd:resourceConstraints/*) &gt; 0">
+               <xsl:attribute name="location">
+                  <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+               </xsl:attribute>
+               <svrl:text>
+                  <xsl:text/>
+                  <xsl:copy-of select="$loc/strings/alert.M45.rc/div"/>
+                  <xsl:text/>
+               </svrl:text>
+            </svrl:failed-assert>
+         </xsl:otherwise>
+      </xsl:choose>
+      <xsl:variable name="accessConstraints_count"
+                    select="count(gmd:resourceConstraints/*/gmd:accessConstraints[*/@codeListValue != ''])"/>
+      <xsl:variable name="accessConstraints_found" select="$accessConstraints_count &gt; 0"/>
+      <xsl:variable name="accessConstraints"
+                    select="     count(gmd:resourceConstraints/*/gmd:accessConstraints/gmd:MD_RestrictionCode[@codeListValue='otherRestrictions'])&gt;0      and (     not(gmd:resourceConstraints/*/gmd:otherConstraints)          or gmd:resourceConstraints/*/gmd:otherConstraints[@gco:nilReason='missing']     )"/>
+      <xsl:variable name="otherConstraints"
+                    select="     gmd:resourceConstraints/*/gmd:otherConstraints and     gmd:resourceConstraints/*/gmd:otherConstraints/gco:CharacterString!='' and      count(gmd:resourceConstraints/*/gmd:accessConstraints/gmd:MD_RestrictionCode[@codeListValue='otherRestrictions'])=0     "/>
+      <xsl:variable name="otherConstraintInfo"
+                    select="gmd:resourceConstraints/*/gmd:otherConstraints/gco:CharacterString"/>
+
+      <!--ASSERT
+      -->
+<xsl:choose>
+         <xsl:when test="$accessConstraints_found"/>
+         <xsl:otherwise>
+            <svrl:failed-assert xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                test="$accessConstraints_found">
+               <xsl:attribute name="location">
+                  <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+               </xsl:attribute>
+               <svrl:text>
+                  <xsl:text/>
+                  <xsl:copy-of select="$loc/strings/alert.M45.ca/div"/>
+                  <xsl:text/>
+               </svrl:text>
+            </svrl:failed-assert>
+         </xsl:otherwise>
+      </xsl:choose>
+
+      <!--REPORT
+      -->
+<xsl:if test="$accessConstraints_found">
+         <svrl:successful-report xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                 test="$accessConstraints_found">
+            <xsl:attribute name="location">
+               <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+            </xsl:attribute>
+            <svrl:text>
+                <xsl:text/>
+               <xsl:copy-of select="$accessConstraints_count"/>
+               <xsl:text/> 
+               <xsl:text/>
+               <xsl:copy-of select="$loc/strings/report.M45.ca/div"/>
+               <xsl:text/>
+            </svrl:text>
+         </svrl:successful-report>
+      </xsl:if>
+
+      <!--ASSERT
+      -->
+<xsl:choose>
+         <xsl:when test="not($accessConstraints)"/>
+         <xsl:otherwise>
+            <svrl:failed-assert xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                test="not($accessConstraints)">
+               <xsl:attribute name="location">
+                  <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+               </xsl:attribute>
+               <svrl:text>
+                  <xsl:text/>
+                  <xsl:copy-of select="$loc/strings/alert.M45.or/div"/>
+                  <xsl:text/>
+               </svrl:text>
+            </svrl:failed-assert>
+         </xsl:otherwise>
+      </xsl:choose>
+
+      <!--ASSERT
+      -->
+<xsl:choose>
+         <xsl:when test="not($otherConstraints)"/>
+         <xsl:otherwise>
+            <svrl:failed-assert xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                test="not($otherConstraints)">
+               <xsl:attribute name="location">
+                  <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+               </xsl:attribute>
+               <svrl:text>
+                  <xsl:text/>
+                  <xsl:copy-of select="$loc/strings/alert.M45.or/div"/>
+                  <xsl:text/>
+               </svrl:text>
+            </svrl:failed-assert>
+         </xsl:otherwise>
+      </xsl:choose>
+
+      <!--REPORT
+      -->
+<xsl:if test="$otherConstraintInfo!='' and not($accessConstraints) and not($otherConstraints)">
+         <svrl:successful-report xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                 test="$otherConstraintInfo!='' and not($accessConstraints) and not($otherConstraints)">
+            <xsl:attribute name="location">
+               <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+            </xsl:attribute>
+            <svrl:text>
+                <xsl:text/>
+               <xsl:copy-of select="$loc/strings/report.M45.or/div"/>
+               <xsl:text/>
+                <xsl:text/>
+               <xsl:copy-of select="$otherConstraintInfo"/>
+               <xsl:text/>
+            </svrl:text>
+         </svrl:successful-report>
+      </xsl:if>
+      <xsl:apply-templates select="*" mode="M18"/>
+   </xsl:template>
+
+  <!--RULE
+      -->
+<xsl:template match="//gmd:MD_DataIdentification/gmd:resourceConstraints/*|    //*[@gco:isoType='gmd:MD_DataIdentification']/gmd:resourceConstraints/*|    //srv:SV_ServiceIdentification/gmd:resourceConstraints/*|    //*[@gco:isoType='srv:SV_ServiceIdentification']/gmd:resourceConstraints/*"
+                 priority="1000"
+                 mode="M18">
+      <svrl:fired-rule xmlns:svrl="http://purl.oclc.org/dsdl/svrl"
+                       context="//gmd:MD_DataIdentification/gmd:resourceConstraints/*|    //*[@gco:isoType='gmd:MD_DataIdentification']/gmd:resourceConstraints/*|    //srv:SV_ServiceIdentification/gmd:resourceConstraints/*|    //*[@gco:isoType='srv:SV_ServiceIdentification']/gmd:resourceConstraints/*"/>
+      <xsl:variable name="accessConstraints"
+                    select="string-join(gmd:accessConstraints/*/@codeListValue, ', ')"/>
+      <xsl:variable name="classification"
+                    select="string-join(gmd:classification/*/@codeListValue, ', ')"/>
+      <xsl:variable name="otherConstraints"
+                    select="gmd:otherConstraints/gco:CharacterString/text()"/>
+
+      <!--REPORT
+      -->
+<xsl:if test="$accessConstraints!=''">
+         <svrl:successful-report xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                 test="$accessConstraints!=''">
+            <xsl:attribute name="location">
+               <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+            </xsl:attribute>
+            <svrl:text>
+                <xsl:text/>
+               <xsl:copy-of select="$loc/strings/report.M45.ac/div"/>
+               <xsl:text/>
+                <xsl:text/>
+               <xsl:copy-of select="$accessConstraints"/>
+               <xsl:text/>
+            </svrl:text>
+         </svrl:successful-report>
+      </xsl:if>
+
+      <!--REPORT
+      -->
+<xsl:if test="$classification!=''">
+         <svrl:successful-report xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                 test="$classification!=''">
+            <xsl:attribute name="location">
+               <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+            </xsl:attribute>
+            <svrl:text>
+                <xsl:text/>
+               <xsl:copy-of select="$loc/strings/report.M45.class/div"/>
+               <xsl:text/>
+                <xsl:text/>
+               <xsl:copy-of select="$classification"/>
+               <xsl:text/>
+            </svrl:text>
+         </svrl:successful-report>
+      </xsl:if>
+      <xsl:apply-templates select="*" mode="M18"/>
+   </xsl:template>
+   <xsl:template match="text()" priority="-1" mode="M18"/>
+   <xsl:template match="@*|node()" priority="-2" mode="M18">
+      <xsl:apply-templates select="*" mode="M18"/>
+   </xsl:template>
+
+   <!--PATTERN
+        $loc/strings/constraints-->
+<svrl:text xmlns:svrl="http://purl.oclc.org/dsdl/svrl">
+      <xsl:copy-of select="$loc/strings/constraints"/>
+   </svrl:text>
+
+  <!--RULE
+      -->
+<xsl:template match="//gmd:MD_DataIdentification|    //*[@gco:isoType='gmd:MD_DataIdentification']|    //srv:SV_ServiceIdentification|    //*[@gco:isoType='srv:SV_ServiceIdentification']"
+                 priority="1000"
+                 mode="M19">
+      <svrl:fired-rule xmlns:svrl="http://purl.oclc.org/dsdl/svrl"
+                       context="//gmd:MD_DataIdentification|    //*[@gco:isoType='gmd:MD_DataIdentification']|    //srv:SV_ServiceIdentification|    //*[@gco:isoType='srv:SV_ServiceIdentification']"/>
+      <xsl:variable name="useLimitation"
+                    select="gmd:resourceConstraints/*/gmd:useLimitation/*/text()"/>
+      <xsl:variable name="useLimitation_count"
+                    select="count(gmd:resourceConstraints/*/gmd:useLimitation/*/text())"/>
+
+      <!--ASSERT
+      -->
+<xsl:choose>
+         <xsl:when test="$useLimitation_count"/>
+         <xsl:otherwise>
+            <svrl:failed-assert xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                test="$useLimitation_count">
+               <xsl:attribute name="location">
+                  <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+               </xsl:attribute>
+               <svrl:text>
+                  <xsl:text/>
+                  <xsl:copy-of select="$loc/strings/alert.M45.ul/div"/>
+                  <xsl:text/>
+               </svrl:text>
+            </svrl:failed-assert>
+         </xsl:otherwise>
+      </xsl:choose>
+
+      <!--REPORT
+      -->
+<xsl:if test="$useLimitation_count">
+         <svrl:successful-report xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                 test="$useLimitation_count">
+            <xsl:attribute name="location">
+               <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+            </xsl:attribute>
+            <svrl:text>
+                <xsl:text/>
+               <xsl:copy-of select="$loc/strings/report.M45.ul/div"/>
+               <xsl:text/>
+                <xsl:text/>
+               <xsl:copy-of select="$useLimitation"/>
+               <xsl:text/>
+            </svrl:text>
+         </svrl:successful-report>
+      </xsl:if>
+      <xsl:apply-templates select="*" mode="M19"/>
+   </xsl:template>
+   <xsl:template match="text()" priority="-1" mode="M19"/>
+   <xsl:template match="@*|node()" priority="-2" mode="M19">
+      <xsl:apply-templates select="*" mode="M19"/>
+   </xsl:template>
+
+   <!--PATTERN
+        $loc/strings/org-->
+<svrl:text xmlns:svrl="http://purl.oclc.org/dsdl/svrl">
+      <xsl:copy-of select="$loc/strings/org"/>
+   </svrl:text>
+
+  <!--RULE
+      -->
+<xsl:template match="//gmd:identificationInfo" priority="1001" mode="M20">
+      <svrl:fired-rule xmlns:svrl="http://purl.oclc.org/dsdl/svrl" context="//gmd:identificationInfo"/>
+      <xsl:variable name="missing" select="not(*/gmd:pointOfContact)"/>
+
+      <!--ASSERT
+      -->
+<xsl:choose>
+         <xsl:when test="not($missing)"/>
+         <xsl:otherwise>
+            <svrl:failed-assert xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                test="not($missing)">
+               <xsl:attribute name="location">
+                  <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+               </xsl:attribute>
+               <svrl:text>
+                  <xsl:text/>
+                  <xsl:copy-of select="$loc/strings/alert.M47/div"/>
+                  <xsl:text/>
+               </svrl:text>
+            </svrl:failed-assert>
+         </xsl:otherwise>
+      </xsl:choose>
+
+      <!--REPORT
+      -->
+<xsl:if test="not($missing)">
+         <svrl:successful-report xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                 test="not($missing)">
+            <xsl:attribute name="location">
+               <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+            </xsl:attribute>
+            <svrl:text>
+               <xsl:text/>
+               <xsl:copy-of select="$loc/strings/report.M47/div"/>
+               <xsl:text/>
+            </svrl:text>
+         </svrl:successful-report>
+      </xsl:if>
+      <xsl:apply-templates select="*" mode="M20"/>
+   </xsl:template>
+
+  <!--RULE
+      -->
+<xsl:template match="//gmd:identificationInfo/*/gmd:pointOfContact    |//*[@gco:isoType='gmd:MD_DataIdentification']/gmd:pointOfContact    |//*[@gco:isoType='srv:SV_ServiceIdentification']/gmd:pointOfContact"
+                 priority="1000"
+                 mode="M20">
+      <svrl:fired-rule xmlns:svrl="http://purl.oclc.org/dsdl/svrl"
+                       context="//gmd:identificationInfo/*/gmd:pointOfContact    |//*[@gco:isoType='gmd:MD_DataIdentification']/gmd:pointOfContact    |//*[@gco:isoType='srv:SV_ServiceIdentification']/gmd:pointOfContact"/>
+      <xsl:variable name="missing"
+                    select="not(*/gmd:organisationName)     or (*/gmd:organisationName/@gco:nilReason)      or not(*/gmd:contactInfo/*/gmd:address/*/gmd:electronicMailAddress)      or (*/gmd:contactInfo/*/gmd:address/*/gmd:electronicMailAddress/@gco:nilReason)"/>
+      <xsl:variable name="organisationName" select="*/gmd:organisationName/*/text()"/>
+      <xsl:variable name="role" select="normalize-space(*/gmd:role/*/@codeListValue)"/>
+      <xsl:variable name="emptyRole" select="$role=''"/>
+      <xsl:variable name="emailAddress"
+                    select="*/gmd:contactInfo/*/gmd:address/*/gmd:electronicMailAddress/*/text()"/>
+
+      <!--ASSERT
+      -->
+<xsl:choose>
+         <xsl:when test="not($missing)"/>
+         <xsl:otherwise>
+            <svrl:failed-assert xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                test="not($missing)">
+               <xsl:attribute name="location">
+                  <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+               </xsl:attribute>
+               <svrl:text>
+                  <xsl:text/>
+                  <xsl:copy-of select="$loc/strings/alert.M47.info/div"/>
+                  <xsl:text/>
+               </svrl:text>
+            </svrl:failed-assert>
+         </xsl:otherwise>
+      </xsl:choose>
+
+      <!--ASSERT
+      -->
+<xsl:choose>
+         <xsl:when test="not($emptyRole)"/>
+         <xsl:otherwise>
+            <svrl:failed-assert xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                test="not($emptyRole)">
+               <xsl:attribute name="location">
+                  <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+               </xsl:attribute>
+               <svrl:text>
+                  <xsl:text/>
+                  <xsl:copy-of select="$loc/strings/alert.M48.role/div"/>
+                  <xsl:text/>
+               </svrl:text>
+            </svrl:failed-assert>
+         </xsl:otherwise>
+      </xsl:choose>
+
+      <!--REPORT
+      -->
+<xsl:if test="not($missing)">
+         <svrl:successful-report xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                 test="not($missing)">
+            <xsl:attribute name="location">
+               <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+            </xsl:attribute>
+            <svrl:text>
+               <xsl:text/>
+               <xsl:copy-of select="$loc/strings/report.M47.info/div"/>
+               <xsl:text/>
+                <xsl:text/>
+               <xsl:copy-of select="$organisationName"/>
+               <xsl:text/>
+                (<xsl:text/>
+               <xsl:copy-of select="$role"/>
+               <xsl:text/>)
+            </svrl:text>
+         </svrl:successful-report>
+      </xsl:if>
+      <xsl:apply-templates select="*" mode="M20"/>
+   </xsl:template>
+   <xsl:template match="text()" priority="-1" mode="M20"/>
+   <xsl:template match="@*|node()" priority="-2" mode="M20">
+      <xsl:apply-templates select="*" mode="M20"/>
+   </xsl:template>
+
+   <!--PATTERN
+        $loc/strings/metadata-->
+<svrl:text xmlns:svrl="http://purl.oclc.org/dsdl/svrl">
+      <xsl:copy-of select="$loc/strings/metadata"/>
+   </svrl:text>
+
+  <!--RULE
+      -->
+<xsl:template match="//gmd:MD_Metadata" priority="1001" mode="M21">
+      <svrl:fired-rule xmlns:svrl="http://purl.oclc.org/dsdl/svrl" context="//gmd:MD_Metadata"/>
+      <xsl:variable name="dateStamp" select="gmd:dateStamp/*/text()"/>
+
+      <!--ASSERT
+      -->
+<xsl:choose>
+         <xsl:when test="$dateStamp"/>
+         <xsl:otherwise>
+            <svrl:failed-assert xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                test="$dateStamp">
+               <xsl:attribute name="location">
+                  <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+               </xsl:attribute>
+               <svrl:text>
+                  <xsl:text/>
+                  <xsl:copy-of select="$loc/strings/alert.M50/div"/>
+                  <xsl:text/>
+               </svrl:text>
+            </svrl:failed-assert>
+         </xsl:otherwise>
+      </xsl:choose>
+
+      <!--REPORT
+      -->
+<xsl:if test="$dateStamp">
+         <svrl:successful-report xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                 test="$dateStamp">
+            <xsl:attribute name="location">
+               <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+            </xsl:attribute>
+            <svrl:text>
+                <xsl:text/>
+               <xsl:copy-of select="$loc/strings/report.M50/div"/>
+               <xsl:text/>
+                <xsl:text/>
+               <xsl:copy-of select="$dateStamp"/>
+               <xsl:text/>
+            </svrl:text>
+         </svrl:successful-report>
+      </xsl:if>
+      <xsl:variable name="language"
+                    select="gmd:language/gco:CharacterString|gmd:language/gmd:LanguageCode/@codeListValue"/>
+      <xsl:variable name="language_present"
+                    select="geonet:contains-any-of($language,     ('eng', 'fre', 'ger', 'spa', 'dut', 'ita', 'cze', 'lav', 'dan', 'lit', 'mlt',      'pol', 'est', 'por', 'fin', 'rum', 'slo', 'slv', 'gre', 'bul',      'hun', 'swe', 'gle'))"/>
+
+      <!--ASSERT
+      -->
+<xsl:choose>
+         <xsl:when test="$language_present"/>
+         <xsl:otherwise>
+            <svrl:failed-assert xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                test="$language_present">
+               <xsl:attribute name="location">
+                  <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+               </xsl:attribute>
+               <svrl:text>
+                  <xsl:text/>
+                  <xsl:copy-of select="$loc/strings/alert.M49/div"/>
+                  <xsl:text/>
+               </svrl:text>
+            </svrl:failed-assert>
+         </xsl:otherwise>
+      </xsl:choose>
+
+      <!--REPORT
+      -->
+<xsl:if test="$language_present">
+         <svrl:successful-report xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                 test="$language_present">
+            <xsl:attribute name="location">
+               <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+            </xsl:attribute>
+            <svrl:text>
+                <xsl:text/>
+               <xsl:copy-of select="$loc/strings/report.M49/div"/>
+               <xsl:text/>
+                <xsl:text/>
+               <xsl:copy-of select="normalize-space($language)"/>
+               <xsl:text/>
+            </svrl:text>
+         </svrl:successful-report>
+      </xsl:if>
+      <xsl:variable name="missing" select="not(gmd:contact)"/>
+
+      <!--ASSERT
+      -->
+<xsl:choose>
+         <xsl:when test="not($missing)"/>
+         <xsl:otherwise>
+            <svrl:failed-assert xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                test="not($missing)">
+               <xsl:attribute name="location">
+                  <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+               </xsl:attribute>
+               <svrl:text>
+                  <xsl:text/>
+                  <xsl:copy-of select="$loc/strings/alert.M48/div"/>
+                  <xsl:text/>
+               </svrl:text>
+            </svrl:failed-assert>
+         </xsl:otherwise>
+      </xsl:choose>
+
+      <!--REPORT
+      -->
+<xsl:if test="not($missing)">
+         <svrl:successful-report xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                 test="not($missing)">
+            <xsl:attribute name="location">
+               <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+            </xsl:attribute>
+            <svrl:text>
+               <xsl:text/>
+               <xsl:copy-of select="$loc/strings/report.M48/div"/>
+               <xsl:text/>
+            </svrl:text>
+         </svrl:successful-report>
+      </xsl:if>
+      <xsl:apply-templates select="*" mode="M21"/>
+   </xsl:template>
+
+  <!--RULE
+      -->
+<xsl:template match="//gmd:MD_Metadata/gmd:contact" priority="1000" mode="M21">
+      <svrl:fired-rule xmlns:svrl="http://purl.oclc.org/dsdl/svrl"
+                       context="//gmd:MD_Metadata/gmd:contact"/>
+      <xsl:variable name="missing"
+                    select="not(gmd:CI_ResponsibleParty/gmd:organisationName)     or (gmd:CI_ResponsibleParty/gmd:organisationName/@gco:nilReason)      or not(gmd:CI_ResponsibleParty/gmd:contactInfo/*/gmd:address/*/gmd:electronicMailAddress)      or (gmd:CI_ResponsibleParty/gmd:contactInfo/*/gmd:address/*/gmd:electronicMailAddress/@gco:nilReason)"/>
+      <xsl:variable name="organisationName"
+                    select="gmd:CI_ResponsibleParty/gmd:organisationName/*/text()"/>
+      <xsl:variable name="role"
+                    select="normalize-space(gmd:CI_ResponsibleParty/gmd:role/*/@codeListValue)"/>
+      <xsl:variable name="emptyRole" select="$role=''"/>
+      <xsl:variable name="emailAddress"
+                    select="gmd:CI_ResponsibleParty/gmd:contactInfo/*/gmd:address/*/gmd:electronicMailAddress/*/text()"/>
+
+      <!--ASSERT
+      -->
+<xsl:choose>
+         <xsl:when test="not($emptyRole)"/>
+         <xsl:otherwise>
+            <svrl:failed-assert xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                test="not($emptyRole)">
+               <xsl:attribute name="location">
+                  <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+               </xsl:attribute>
+               <svrl:text>
+                  <xsl:text/>
+                  <xsl:copy-of select="$loc/strings/alert.M48.role/div"/>
+                  <xsl:text/>
+               </svrl:text>
+            </svrl:failed-assert>
+         </xsl:otherwise>
+      </xsl:choose>
+
+      <!--ASSERT
+      -->
+<xsl:choose>
+         <xsl:when test="not($missing)"/>
+         <xsl:otherwise>
+            <svrl:failed-assert xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                test="not($missing)">
+               <xsl:attribute name="location">
+                  <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+               </xsl:attribute>
+               <svrl:text>
+                  <xsl:text/>
+                  <xsl:copy-of select="$loc/strings/alert.M48.info/div"/>
+                  <xsl:text/>
+               </svrl:text>
+            </svrl:failed-assert>
+         </xsl:otherwise>
+      </xsl:choose>
+
+      <!--REPORT
+      -->
+<xsl:if test="not($missing)">
+         <svrl:successful-report xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                 test="not($missing)">
+            <xsl:attribute name="location">
+               <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+            </xsl:attribute>
+            <svrl:text>
+               <xsl:text/>
+               <xsl:copy-of select="$loc/strings/report.M48.info/div"/>
+               <xsl:text/>
+                <xsl:text/>
+               <xsl:copy-of select="$organisationName"/>
+               <xsl:text/>
+                (<xsl:text/>
+               <xsl:copy-of select="$role"/>
+               <xsl:text/>)
+            </svrl:text>
+         </svrl:successful-report>
+      </xsl:if>
+      <xsl:apply-templates select="*" mode="M21"/>
+   </xsl:template>
+   <xsl:template match="text()" priority="-1" mode="M21"/>
+   <xsl:template match="@*|node()" priority="-2" mode="M21">
+      <xsl:apply-templates select="*" mode="M21"/>
+   </xsl:template>
+</xsl:stylesheet>
\ No newline at end of file
diff --git a/src/main/webapp/WEB-INF/data/config/schema_plugins/iso19139/schematron/schematron-rules-iso.sch b/src/main/webapp/WEB-INF/data/config/schema_plugins/iso19139/schematron/schematron-rules-iso.sch
new file mode 100644
index 0000000..a55982e
--- /dev/null
+++ b/src/main/webapp/WEB-INF/data/config/schema_plugins/iso19139/schematron/schematron-rules-iso.sch
@@ -0,0 +1,568 @@
+<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
+<!--
+  ~ Copyright (C) 2001-2016 Food and Agriculture Organization of the
+  ~ United Nations (FAO-UN), United Nations World Food Programme (WFP)
+  ~ and United Nations Environment Programme (UNEP)
+  ~
+  ~ This program is free software; you can redistribute it and/or modify
+  ~ it under the terms of the GNU General Public License as published by
+  ~ the Free Software Foundation; either version 2 of the License, or (at
+  ~ your option) any later version.
+  ~
+  ~ This program is distributed in the hope that it will be useful, but
+  ~ WITHOUT ANY WARRANTY; without even the implied warranty of
+  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+  ~ General Public License for more details.
+  ~
+  ~ You should have received a copy of the GNU General Public License
+  ~ along with this program; if not, write to the Free Software
+  ~ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
+  ~
+  ~ Contact: Jeroen Ticheler - FAO - Viale delle Terme di Caracalla 2,
+  ~ Rome - Italy. email: geonetwork@osgeo.org
+  -->
+
+<sch:schema xmlns:sch="http://purl.oclc.org/dsdl/schematron"
+	xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
+	<!--
+
+This Schematron schema merges three sets of Schematron rules
+1. Schematron rules embedded in the GML 3.2 schema
+2. Schematron rules implementing the Additional Constraints described in 
+   ISO 19139 Table A.1
+3. INSPIRE IR on metadata for datasets and services.
+
+
+This script was written by CSIRO for the Australia-New Zealand Land 
+Information Council (ANZLIC) as part of a project to develop an XML 
+implementation of the ANZLIC ISO Metadata Profile. 
+
+December 2006, March 2007
+
+Port back to good old Schematron-1.5 for use with schematron-report.xsl
+and change titles for use as bare bones 19115/19139 schematron checker 
+in GN 2.2 onwards.
+
+Simon Pigot, 2007
+Francois Prunayre, 2008
+Etienne Taffoureau, 2008
+
+This work is licensed under the Creative Commons Attribution 2.5 License. 
+To view a copy of this license, visit 
+    http://creativecommons.org/licenses/by/2.5/au/ 
+
+or send a letter to:
+
+Creative Commons, 
+543 Howard Street, 5th Floor, 
+San Francisco, California, 94105, 
+USA.
+
+-->
+
+	<sch:title xmlns="http://www.w3.org/2001/XMLSchema">Schematron validation for ISO
+		19115(19139)</sch:title>
+	<sch:ns prefix="gml" uri="http://www.opengis.net/gml"/>
+	<sch:ns prefix="gmd" uri="http://www.isotc211.org/2005/gmd"/>
+	<sch:ns prefix="srv" uri="http://www.isotc211.org/2005/srv"/>
+	<sch:ns prefix="gco" uri="http://www.isotc211.org/2005/gco"/>
+	<sch:ns prefix="geonet" uri="http://www.fao.org/geonetwork"/>
+	<sch:ns prefix="xlink" uri="http://www.w3.org/1999/xlink"/>
+
+	<!-- Test that every CharacterString element has content or it's parent has a
+   		 valid nilReason attribute value - this is not necessary for geonetwork 
+			 because update-fixed-info.xsl supplies a gco:nilReason of missing for 
+			 all gco:CharacterString elements with no content and removes it if the
+			 user fills in a value - this is the same for all gco:nilReason tests 
+			 used below - the test for gco:nilReason in 'inapplicable....' etc is
+			 "mickey mouse" for that reason. -->
+	<sch:pattern>
+		<sch:title>$loc/strings/M6</sch:title>
+		<sch:rule context="*[gco:CharacterString]">
+			<sch:report
+				test="(normalize-space(gco:CharacterString) = '') and (not(@gco:nilReason) or not(contains('inapplicable missing template unknown withheld',@gco:nilReason)))"
+				>$loc/strings/alert.M6.characterString</sch:report>
+		</sch:rule>
+	</sch:pattern>
+
+	<sch:pattern>
+		<sch:title>$loc/strings/M7</sch:title>
+		<!-- UNVERIFIED -->
+		<sch:rule id="CRSLabelsPosType" context="//gml:DirectPositionType">
+			<sch:report test="not(@srsDimension) or @srsName"
+				>$loc/strings/alert.M6.directPosition</sch:report>
+			<sch:report test="not(@axisLabels) or @srsName"
+				>$loc/strings/alert.M7.axisAndSrs</sch:report>
+			<sch:report test="not(@uomLabels) or @srsName"
+				>$loc/strings/alert.M7.uomAndSrs</sch:report>
+			<sch:report
+				test="(not(@uomLabels) and not(@axisLabels)) or (@uomLabels and @axisLabels)"
+				>$loc/strings/alert.M7.uomAndAxis</sch:report>
+		</sch:rule>
+	</sch:pattern>
+
+	<!--anzlic/trunk/gml/3.2.0/gmd/citation.xsd-->
+	<!-- TEST 21 FXCHECK -->
+	<sch:pattern>
+		<sch:title>$loc/strings/M8</sch:title>
+		<sch:rule context="//*[gmd:CI_ResponsibleParty]">
+			<sch:let name="count" value="(count(gmd:CI_ResponsibleParty/gmd:individualName[@gco:nilReason!='missing' or not(@gco:nilReason)]) 
+				+ count(gmd:CI_ResponsibleParty/gmd:organisationName[@gco:nilReason!='missing' or not(@gco:nilReason)])
+				+ count(gmd:CI_ResponsibleParty/gmd:positionName[@gco:nilReason!='missing' or not(@gco:nilReason)]))"/>
+			<sch:assert
+				test="$count > 0"
+				>$loc/strings/alert.M8</sch:assert>
+			<sch:report
+				test="$count > 0"
+				><sch:value-of select="$loc/strings/report.M8"/> 
+				<sch:value-of select="gmd:CI_ResponsibleParty/gmd:organisationName"/>-
+				<sch:value-of select="gmd:CI_ResponsibleParty/gmd:individualName"/>
+			</sch:report>
+		</sch:rule>
+	</sch:pattern>
+	<!-- anzlic/trunk/gml/3.2.0/gmd/constraints.xsd-->
+	<!-- TEST  4 FXCHECK -->
+	<sch:pattern>
+		<sch:title>$loc/strings/M9</sch:title>
+		<sch:rule context="//gmd:MD_LegalConstraints[gmd:accessConstraints/gmd:MD_RestrictionCode/@codeListValue='otherRestrictions']
+			|//*[@gco:isoType='gmd:MD_LegalConstraints' and gmd:accessConstraints/gmd:MD_RestrictionCode/@codeListValue='otherRestrictions']">
+			<sch:let name="access" value="not(gmd:otherConstraints) 
+				or count(gmd:otherConstraints[gco:CharacterString = '']) > 0 
+				or gmd:otherConstraints/@gco:nilReason='missing'"/>
+			<sch:assert
+				test="$access = false()"
+				>
+				<sch:value-of select="$loc/strings/alert.M9.access"/>
+			</sch:assert>
+			<sch:report
+				test="$access = false()"
+				><sch:value-of select="$loc/strings/report.M9"/>
+				<sch:value-of select="gmd:otherConstraints/gco:CharacterString"/>
+			</sch:report>
+		</sch:rule>
+		<sch:rule context="//gmd:MD_LegalConstraints[gmd:useConstraints/gmd:MD_RestrictionCode/@codeListValue='otherRestrictions']
+			|//*[@gco:isoType='gmd:MD_LegalConstraints' and gmd:accessConstraints/gmd:MD_RestrictionCode/@codeListValue='otherRestrictions']">
+			<sch:let name="use" value="(not(gmd:otherConstraints) or not(string(gmd:otherConstraints/gco:CharacterString)) or gmd:otherConstraints/@gco:nilReason='missing')"/>
+			<sch:assert
+				test="$use = false()"
+				><sch:value-of select="$loc/strings/alert.M9.use"/>
+			</sch:assert>
+			<sch:report
+				test="$use = false()"
+				><sch:value-of select="$loc/strings/report.M9"/>
+				<sch:value-of select="gmd:otherConstraints/gco:CharacterString"/>
+			</sch:report>
+		</sch:rule>
+	</sch:pattern>
+	<!-- anzlic/trunk/gml/3.2.0/gmd/content.xsd-->
+	<!-- TEST 13 FXCHECK -->
+	<sch:pattern>
+		<sch:title>$loc/strings/M10</sch:title>
+		<sch:rule context="//gmd:MD_Band[gmd:maxValue or gmd:minValue]">
+			<sch:let name="values" value="(gmd:maxValue[@gco:nilReason!='missing' or not(@gco:nilReason)]
+				or gmd:minValue[@gco:nilReason!='missing' or not(@gco:nilReason)]) 
+				and not(gmd:units)"/>
+			<sch:assert test="$values = false()"
+				><sch:value-of select="$loc/strings/alert.M9"/>
+			</sch:assert>
+			<sch:report test="$values = false()"
+				>
+				<sch:value-of select="$loc/strings/report.M9.min"/>
+				<sch:value-of select="gmd:minValue"/> / 
+				<sch:value-of select="$loc/strings/report.M9.max"/>
+				<sch:value-of select="gmd:maxValue"/> [
+				<sch:value-of select="$loc/strings/report.M9.units"/>
+				<sch:value-of select="gmd:units"/>]
+			</sch:report>
+			<!-- FIXME : Rename to alert M10 -->
+		</sch:rule>
+	</sch:pattern>
+	<!-- anzlic/trunk/gml/3.2.0/gmd/dataQuality.xsd -->
+	<!-- TEST 10 FXCHECK -->
+	<sch:pattern>
+		<sch:title>$loc/strings/M11</sch:title>
+		<sch:rule context="//gmd:LI_Source">
+			<sch:let name="extent" value="gmd:description[@gco:nilReason!='missing' or not(@gco:nilReason)] or gmd:sourceExtent"/>
+			<sch:assert test="$extent"
+				>$loc/strings/alert.M11</sch:assert>
+			<sch:report test="$extent"
+				>$loc/strings/report.M11</sch:report>
+		</sch:rule>
+	</sch:pattern>
+	<!-- TEST  7 FXCHECK -->
+	<sch:pattern>
+		<sch:title>$loc/strings/M13</sch:title>
+		<sch:rule context="//gmd:DQ_DataQuality[gmd:scope/gmd:DQ_Scope/gmd:level/gmd:MD_ScopeCode/@codeListValue='dataset' 
+			or gmd:scope/gmd:DQ_Scope/gmd:level/gmd:MD_ScopeCode/@codeListValue='series']">
+			<sch:let name="emptyStatement" value="
+				count(*/gmd:LI_Lineage/gmd:source) + count(*/gmd:LI_Lineage/gmd:processStep) = 0 
+				and not(gmd:lineage/gmd:LI_Lineage/gmd:statement[@gco:nilReason!='missing' or not(@gco:nilReason)]) 
+				"/>
+			<sch:assert
+				test="$emptyStatement = false()"
+				>$loc/strings/alert.M13</sch:assert>
+			<sch:report
+				test="$emptyStatement = false()"
+				>$loc/strings/report.M13</sch:report>
+		</sch:rule>
+	</sch:pattern>
+	<!-- TEST  8 FXCHECK -->
+	<sch:pattern>
+		<sch:title>$loc/strings/M14</sch:title>
+		<sch:rule context="//gmd:LI_Lineage">
+			<sch:let name="emptySource" value="not(gmd:source) 
+				and not(gmd:statement[@gco:nilReason!='missing' or not(@gco:nilReason)]) 
+				and not(gmd:processStep)"/>
+			<sch:assert test="$emptySource = false()"
+				>$loc/strings/alert.M14</sch:assert>
+			<sch:report test="$emptySource = false()"
+				>$loc/strings/report.M14</sch:report>
+
+			<sch:let name="emptyProcessStep" value="not(gmd:processStep) 
+				and not(gmd:statement[@gco:nilReason!='missing' or not(@gco:nilReason)])
+				and not(gmd:source)"/>
+			<sch:assert test="$emptyProcessStep = false()"
+				>$loc/strings/alert.M15</sch:assert>
+			<sch:report test="$emptyProcessStep = false()"
+				>$loc/strings/report.M15</sch:report>
+		</sch:rule>
+	</sch:pattern>
+	<!-- TEST 5 FXCHECK -->
+	<sch:pattern>
+		<sch:title>$loc/strings/M16</sch:title>
+		<sch:rule context="//gmd:DQ_DataQuality[gmd:scope/gmd:DQ_Scope/gmd:level/gmd:MD_ScopeCode/@codeListValue='dataset']">
+			<sch:let name="noReportNorLineage" value="not(gmd:report) 
+				and not(gmd:lineage)"/>
+			<sch:assert
+				test="$noReportNorLineage = false()"
+				>$loc/strings/alert.M16</sch:assert>
+			<sch:report
+				test="$noReportNorLineage = false()"
+				>$loc/strings/report.M16</sch:report>
+		</sch:rule>
+	</sch:pattern>
+	<!-- TEST  6 FXCHECK -->
+	<sch:pattern>
+		<sch:title>$loc/strings/M17</sch:title>
+		<sch:rule context="//gmd:DQ_Scope">
+			<sch:let name="levelDesc" value="gmd:level/gmd:MD_ScopeCode/@codeListValue='dataset' 
+				or gmd:level/gmd:MD_ScopeCode/@codeListValue='series' 
+				or (gmd:levelDescription and ((normalize-space(gmd:levelDescription) != '') 
+				or (gmd:levelDescription/gmd:MD_ScopeDescription) 
+				or (gmd:levelDescription/@gco:nilReason 
+				and contains('inapplicable missing template unknown withheld',gmd:levelDescription/@gco:nilReason))))"/>
+			<sch:assert
+				test="$levelDesc"
+				>$loc/strings/alert.M17</sch:assert>
+			<sch:report
+				test="$levelDesc"
+				><sch:value-of select="$loc/strings/report.M17"/> <sch:value-of select="gmd:levelDescription"/></sch:report>
+		</sch:rule>
+	</sch:pattern>
+	<!-- anzlic/trunk/gml/3.2.0/gmd/distribution.xsd-->
+	<!-- TEST 14 FXCHECK -->
+	<sch:pattern>
+		<sch:title>$loc/strings/M18</sch:title>
+		<sch:rule context="//gmd:MD_Medium">
+			<sch:let name="density" value="gmd:density and not(gmd:densityUnits[@gco:nilReason!='missing' or not(@gco:nilReason)])"/>
+			<sch:assert test="$density = false()"
+				>$loc/strings/alert.M18</sch:assert>
+			<sch:report test="$density = false()"
+				><sch:value-of select="$loc/strings/report.M18"/> <sch:value-of select="gmd:density"/> 
+				<sch:value-of select="gmd:densityUnits/gco:CharacterString"/></sch:report>
+		</sch:rule>
+	</sch:pattern>
+	<!-- TEST15 FXCHECK -->
+	<sch:pattern>
+		<sch:title>$loc/strings/M19</sch:title>
+		<sch:rule context="//gmd:MD_Distribution">
+			<sch:let name="total" value="count(gmd:distributionFormat) +
+				count(gmd:distributor/gmd:MD_Distributor/gmd:distributorFormat)"/>
+			<sch:let name="count" value="count(gmd:distributionFormat)>0 
+				or count(gmd:distributor/gmd:MD_Distributor/gmd:distributorFormat)>0"/>
+			<sch:assert
+				test="$count"
+				>$loc/strings/alert.M19</sch:assert>
+			<sch:report
+				test="$count"
+				><sch:value-of select="$total"/> <sch:value-of select="$loc/strings/report.M19"/></sch:report>
+		</sch:rule>
+	</sch:pattern>
+	<!-- anzlic/trunk/gml/3.2.0/gmd/extent.xsd-->
+	<!-- TEST 20 FXCHECK -->
+	<sch:pattern>
+		<sch:title>$loc/strings/M20</sch:title>
+		<sch:rule context="//gmd:EX_Extent">
+			<sch:let name="count" value="count(gmd:description[@gco:nilReason!='missing' or not(@gco:nilReason)])>0 
+				or count(gmd:geographicElement)>0 
+				or count(gmd:temporalElement)>0 
+				or count(gmd:verticalElement)>0"/>
+			<sch:assert
+				test="$count"
+				>$loc/strings/alert.M20</sch:assert>
+			<sch:report
+				test="$count"
+				>$loc/strings/report.M20</sch:report>
+		</sch:rule>
+	</sch:pattern>
+	<!-- TEST  1 -->
+	<sch:pattern>
+		<sch:title>$loc/strings/M21</sch:title>
+		<sch:rule context="//gmd:MD_DataIdentification|//*[contains(@gco:isoType, 'MD_DataIdentification')]">
+			<sch:let name="extent" value="(not(../../gmd:hierarchyLevel) 
+				or ../../gmd:hierarchyLevel/gmd:MD_ScopeCode/@codeListValue='dataset' 
+				or ../../gmd:hierarchyLevel/gmd:MD_ScopeCode/@codeListValue='') 
+				and (count(gmd:extent/*/gmd:geographicElement/gmd:EX_GeographicBoundingBox) 
+				+ count (gmd:extent/*/gmd:geographicElement/gmd:EX_GeographicDescription))=0"/>
+			<sch:assert
+				test="$extent = false()"
+				>$loc/strings/alert.M21</sch:assert>
+			<sch:report
+				test="$extent = false()"
+				>$loc/strings/report.M21</sch:report>
+		</sch:rule>
+	</sch:pattern>
+	<!-- TEST  2 -->
+	<sch:pattern>
+		<sch:title>$loc/strings/M22</sch:title>
+		<sch:rule context="//gmd:MD_DataIdentification|//*[contains(@gco:isoType, 'MD_DataIdentification')]">
+			<sch:let name="topic" value="(not(../../gmd:hierarchyLevel) 
+				or ../../gmd:hierarchyLevel/gmd:MD_ScopeCode/@codeListValue='dataset' 
+				or ../../gmd:hierarchyLevel/gmd:MD_ScopeCode/@codeListValue='series'  
+				or ../../gmd:hierarchyLevel/gmd:MD_ScopeCode/@codeListValue='' )
+				and not(gmd:topicCategory)"/>
+			<sch:assert
+				test="$topic = false()"
+				>$loc/strings/alert.M6</sch:assert>
+			<sch:report
+				test="$topic = false()"
+			  ><sch:value-of select="$loc/strings/report.M6"/> "<sch:value-of select="gmd:topicCategory/gmd:MD_TopicCategoryCode/text()"/>"</sch:report>
+		</sch:rule>
+	</sch:pattern>
+	<!-- TEST  3 -->
+	<sch:pattern>
+		<sch:title>$loc/strings/M23</sch:title>
+		<sch:rule context="//gmd:MD_AggregateInformation">
+			<sch:assert test="gmd:aggregateDataSetName or gmd:aggregateDataSetIdentifier"
+				>$loc/strings/alert.M23</sch:assert>
+			<sch:report test="gmd:aggregateDataSetName or gmd:aggregateDataSetIdentifier"
+				>$loc/strings/report.M23</sch:report>
+		</sch:rule>
+	</sch:pattern>
+	<!-- anzlic/trunk/gml/3.2.0/gmd/metadataEntity.xsd: -->
+	<!--<sch:pattern>
+		<sch:title>$loc/strings/M24</sch:title>
+		<!-\- UNVERIFIED -\->
+		<sch:rule
+			context="//gmd:MD_Metadata/gmd:language|//*[@gco:isoType='gmd:MD_Metadata']/gmd:language">
+			<sch:assert
+				test=". and ((normalize-space(.) != '') 
+      				or (normalize-space(./gco:CharacterString) != '') 
+      				or (./gmd:LanguageCode) 
+      				or (./@gco:nilReason 
+      					and contains('inapplicable missing template unknown withheld',./@gco:nilReason)))"
+				>$loc/strings/alert.M24</sch:assert>
+			<!-\- language: documented if not defined by the encoding standard. 
+					 It can't be documented by the encoding because GML doesn't 
+					 include xml:language. -\->
+		</sch:rule>
+	</sch:pattern>-->
+	<sch:pattern>
+		<sch:title>$loc/strings/M25</sch:title>
+		<!-- UNVERIFIED -->
+		<sch:rule context="//gmd:MD_Metadata|//*[@gco:isoType='gmd:MD_Metadata']">
+			<!-- characterSet: documented if ISO/IEC 10646 not used and not defined by
+        the encoding standard. Can't tell if XML declaration has an encoding
+        attribute. -->
+		</sch:rule>
+	</sch:pattern>
+
+	<!-- anzlic/trunk/gml/3.2.0/gmd/metadataExtension.xsd-->
+	<!-- TEST 16 -->
+	<sch:pattern>
+		<sch:title>$loc/strings/M26</sch:title>
+		<sch:rule context="//gmd:MD_ExtendedElementInformation">
+			<sch:assert
+				test="(gmd:dataType/gmd:MD_DatatypeCode/@codeListValue='codelist' 
+				or gmd:dataType/gmd:MD_DatatypeCode/@codeListValue='enumeration' 
+				or gmd:dataType/gmd:MD_DatatypeCode/@codeListValue='codelistElement') 
+				or (gmd:obligation and ((normalize-space(gmd:obligation) != '')  
+				or (gmd:obligation/gmd:MD_ObligationCode) 
+				or (gmd:obligation/@gco:nilReason and contains('inapplicable missing template unknown withheld',gmd:obligation/@gco:nilReason))))"
+				>$loc/strings/alert.M26.obligation</sch:assert>
+			<sch:assert
+				test="(gmd:dataType/gmd:MD_DatatypeCode/@codeListValue='codelist' 
+				or gmd:dataType/gmd:MD_DatatypeCode/@codeListValue='enumeration' 
+				or gmd:dataType/gmd:MD_DatatypeCode/@codeListValue='codelistElement') 
+				or (gmd:maximumOccurrence and ((normalize-space(gmd:maximumOccurrence) != '')  
+				or (normalize-space(gmd:maximumOccurrence/gco:CharacterString) != '') 
+				or (gmd:maximumOccurrence/@gco:nilReason and contains('inapplicable missing template unknown withheld',gmd:maximumOccurrence/@gco:nilReason))))"
+				>$loc/strings/alert.M26.maximumOccurence</sch:assert>
+			<sch:assert
+				test="(gmd:dataType/gmd:MD_DatatypeCode/@codeListValue='codelist' 
+				or gmd:dataType/gmd:MD_DatatypeCode/@codeListValue='enumeration' 
+				or gmd:dataType/gmd:MD_DatatypeCode/@codeListValue='codelistElement') 
+				or (gmd:domainValue and ((normalize-space(gmd:domainValue) != '')  
+				or (normalize-space(gmd:domainValue/gco:CharacterString) != '') 
+				or (gmd:domainValue/@gco:nilReason and contains('inapplicable missing template unknown withheld',gmd:domainValue/@gco:nilReason))))"
+				>$loc/strings/alert.M26.domainValue</sch:assert>
+		</sch:rule>
+	</sch:pattern>
+	<!-- TEST 17 -->
+	<sch:pattern>
+		<sch:title>$loc/strings/M27</sch:title>
+		<sch:rule context="//gmd:MD_ExtendedElementInformation">
+			<sch:let name="condition" value="gmd:obligation/gmd:MD_ObligationCode='conditional'
+				and (not(gmd:condition) or count(gmd:condition[@gco:nilReason='missing'])>0)"/>
+			<sch:assert
+				test="$condition = false()"
+				>
+				<sch:value-of select="$loc/strings/alert.M27"/>
+			</sch:assert>
+			<sch:report
+				test="$condition = false()"
+				>
+				<sch:value-of select="$loc/strings/report.M27"/>
+			</sch:report>
+		</sch:rule>
+	</sch:pattern>
+	<!-- TEST 18 -->
+	<sch:pattern>
+		<sch:title>$loc/strings/M28</sch:title>
+		<sch:rule context="//gmd:MD_ExtendedElementInformation">
+			<sch:let name="domain" value="gmd:dataType/gmd:MD_DatatypeCode/@codeListValue='codelistElement' and not(gmd:domainCode)"/>
+			<sch:assert
+				test="$domain = false()"
+				>$loc/strings/alert.M28</sch:assert>
+			<sch:report
+				test="$domain = false()"
+				>$loc/strings/report.M28</sch:report>
+		</sch:rule>
+	</sch:pattern>
+	<!-- TEST 19 -->
+	<sch:pattern>
+		<sch:title>$loc/strings/M29</sch:title>
+		<sch:rule context="//gmd:MD_ExtendedElementInformation">
+			<sch:let name="shortName" value="gmd:dataType/gmd:MD_DatatypeCode/@codeListValue!='codelistElement' and not(gmd:shortName)"/>
+			<sch:assert
+				test="$shortName = false()"
+				>$loc/strings/alert.M29</sch:assert>
+			<sch:report
+				test="$shortName = false()"
+				>$loc/strings/report.M29</sch:report>
+		</sch:rule>
+	</sch:pattern>
+	<!-- anzlic/trunk/gml/3.2.0/gmd/spatialRepresentation.xsd-->
+	<!-- TEST 12 -->
+	<sch:pattern>
+		<sch:title>$loc/strings/M30</sch:title>
+		<sch:rule context="//gmd:MD_Georectified">
+			<sch:let name="cpd" value="(gmd:checkPointAvailability/gco:Boolean='1' or gmd:checkPointAvailability/gco:Boolean='true') and 
+				(not(gmd:checkPointDescription) or count(gmd:checkPointDescription[@gco:nilReason='missing'])>0)"/>
+			<sch:assert
+				test="$cpd = false()"
+				>$loc/strings/alert.M30</sch:assert>
+			<sch:report
+				test="$cpd = false()"
+				>$loc/strings/report.M30</sch:report>
+		</sch:rule>
+	</sch:pattern>
+	<!--  -->
+	<sch:pattern>
+		<sch:title>$loc/strings/M61</sch:title>
+		<sch:rule context="//gmd:MD_Metadata/gmd:hierarchyLevel|//*[@gco:isoType='gmd:MD_Metadata']/gmd:hierarchyLevel">
+			<sch:let name="hl" value="count(../gmd:hierarchyLevel/gmd:MD_ScopeCode[@codeListValue='dataset' or @codeListValue=''])=0 and 
+				(not(../gmd:hierarchyLevelName) or ../gmd:hierarchyLevelName/@gco:nilReason)"/>
+			<sch:let name="resourceType" value="string-join(../gmd:hierarchyLevel/*/@codeListValue, ',')"/>
+			
+			<sch:assert
+				test="$hl = false()"
+				>$loc/strings/alert.M61</sch:assert>
+			<sch:report
+				test="$hl = false()"
+				><sch:value-of select=" $loc/strings/report.M61"/> "<sch:value-of select="$resourceType"/>"</sch:report>
+		</sch:rule>
+	</sch:pattern>
+
+
+    <sch:pattern>
+        <sch:title>$loc/strings/requiredElements</sch:title>
+        <sch:rule context="//gmd:identificationInfo/*/gmd:abstract">
+            <sch:let name="text" value="(gco:CharacterString | .//gmd:LocalisedCharacterString)[normalize-space(text()) != '']"/>
+            <sch:let name="nilReason" value="@gco:nilReason and not(./node())"/>
+            <sch:assert test="$text or $nilReason">
+                <sch:value-of select="$loc/strings/alert.requiredAbstract"/>
+            </sch:assert>
+            <sch:report test="$text or $nilReason" >
+                <sch:value-of select="$loc/strings/report.requiredAbstract"/>
+            </sch:report>
+        </sch:rule>
+        <sch:rule context="//gmd:identificationInfo/*/gmd:citation/*/gmd:title">
+            <sch:let name="text" value="(gco:CharacterString | .//gmd:LocalisedCharacterString)[normalize-space(text()) != '']"/>
+            <sch:let name="nilReason" value="@gco:nilReason and not(./node())"/>
+            <sch:assert test="$text or $nilReason">
+                <sch:value-of select="$loc/strings/alert.requiredTitle"/>
+            </sch:assert>
+            <sch:report test="$text or $nilReason" >
+                <sch:value-of select="$loc/strings/report.requiredTitle"/>
+            </sch:report>
+        </sch:rule>
+        <sch:rule context="//gmd:identificationInfo/*/gmd:citation/*/gmd:date/*/gmd:date">
+            <sch:let name="text" value="gco:Date|gco:DateTime"/>
+            <sch:let name="nilReason" value="@gco:nilReason and not(./node())"/>
+            <sch:assert test="$text or $nilReason">
+                <sch:value-of select="$loc/strings/alert.requiredDate"/>
+            </sch:assert>
+            <sch:report test="$text or $nilReason" >
+                <sch:value-of select="$loc/strings/report.requiredDate"/>
+            </sch:report>
+        </sch:rule>
+        <sch:rule context="//gmd:identificationInfo/*/gmd:citation/*/gmd:date/*/gmd:dateType">
+            <sch:let name="text" value="gmd:CI_DateTypeCode"/>
+            <sch:let name="nilReason" value="@gco:nilReason and not(./node())"/>
+            <sch:assert test="$text or $nilReason">
+                <sch:value-of select="$loc/strings/alert.requiredDateType"/>
+            </sch:assert>
+            <sch:report test="$text or $nilReason" >
+                <sch:value-of select="$loc/strings/report.requiredDateType"/>
+            </sch:report>
+        </sch:rule>
+        <sch:rule context="/*/gmd:contact">
+            <sch:assert test="node() | @gco:nilReason">
+                <sch:value-of select="$loc/strings/alert.requiredContact"/>
+            </sch:assert>
+            <sch:report test="node() | @gco:nilReason" >
+                <sch:value-of select="$loc/strings/report.requiredContact"/>
+            </sch:report>
+        </sch:rule>
+        <sch:rule context="/*/gmd:language">
+            <sch:assert test="node() | @gco:nilReason">
+                <sch:value-of select="$loc/strings/alert.requiredLanguage"/>
+            </sch:assert>
+            <sch:report test="node() | @gco:nilReason" >
+                <sch:value-of select="$loc/strings/report.requiredLanguage"/>
+            </sch:report>
+        </sch:rule>
+        <sch:rule context="//gmd:identificationInfo/*/gmd:language">
+            <sch:assert test="node() | @gco:nilReason">
+                <sch:value-of select="$loc/strings/alert.requiredLanguage"/>
+            </sch:assert>
+            <sch:report test="node() | @gco:nilReason" >
+                <sch:value-of select="$loc/strings/report.requiredLanguage"/>
+            </sch:report>
+        </sch:rule>
+    </sch:pattern>
+
+    <sch:pattern>
+        <sch:title>$loc/strings/requireCitation</sch:title>
+        <sch:rule context="//gmd:identificationInfo/*/gmd:citation">
+            <sch:assert test="gmd:CI_Citation | @gco:nilReason">
+                <sch:value-of select="$loc/strings/alert.requiredCitation"/>
+            </sch:assert>
+            <sch:report test="gmd:CI_Citation | @gco:nilReason" >
+                <sch:value-of select="$loc/strings/report.requiredCitation"/>
+            </sch:report>
+        </sch:rule>
+    </sch:pattern>
+
+</sch:schema>
diff --git a/src/main/webapp/WEB-INF/data/config/schema_plugins/iso19139/schematron/schematron-rules-iso.xsl b/src/main/webapp/WEB-INF/data/config/schema_plugins/iso19139/schematron/schematron-rules-iso.xsl
new file mode 100644
index 0000000..1e91364
--- /dev/null
+++ b/src/main/webapp/WEB-INF/data/config/schema_plugins/iso19139/schematron/schematron-rules-iso.xsl
@@ -0,0 +1,2144 @@
+<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
+<xsl:stylesheet xmlns:xhtml="http://www.w3.org/1999/xhtml"
+                xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+                xmlns:xs="http://www.w3.org/2001/XMLSchema"
+                xmlns:schold="http://www.ascc.net/xml/schematron"
+                xmlns:iso="http://purl.oclc.org/dsdl/schematron"
+                xmlns:gml="http://www.opengis.net/gml"
+                xmlns:gmd="http://www.isotc211.org/2005/gmd"
+                xmlns:srv="http://www.isotc211.org/2005/srv"
+                xmlns:gco="http://www.isotc211.org/2005/gco"
+                xmlns:geonet="http://www.fao.org/geonetwork"
+                xmlns:xlink="http://www.w3.org/1999/xlink"
+                exclude-result-prefixes="#all"
+                version="2.0"><!--Implementers: please note that overriding process-prolog or process-root is
+      the preferred method for meta-stylesheets to use where possible.
+    -->
+<xsl:param name="archiveDirParameter"/>
+   <xsl:param name="archiveNameParameter"/>
+   <xsl:param name="fileNameParameter"/>
+   <xsl:param name="fileDirParameter"/>
+   <xsl:variable name="document-uri">
+      <xsl:value-of select="document-uri(/)"/>
+   </xsl:variable>
+
+   <!--PHASES-->
+
+
+<!--PROLOG-->
+<xsl:output xmlns:svrl="http://purl.oclc.org/dsdl/svrl" method="xml"
+               omit-xml-declaration="no"
+               standalone="yes"
+               indent="yes"/>
+   <xsl:include xmlns:svrl="http://purl.oclc.org/dsdl/svrl" href="../../../xsl/utils-fn.xsl"/>
+   <xsl:param xmlns:svrl="http://purl.oclc.org/dsdl/svrl" name="lang"/>
+   <xsl:param xmlns:svrl="http://purl.oclc.org/dsdl/svrl" name="thesaurusDir"/>
+   <xsl:param xmlns:svrl="http://purl.oclc.org/dsdl/svrl" name="rule"/>
+   <xsl:variable xmlns:svrl="http://purl.oclc.org/dsdl/svrl" name="loc"
+                 select="document(concat('../loc/', $lang, '/', $rule, '.xml'))"/>
+
+   <!--XSD TYPES FOR XSLT2-->
+
+
+<!--KEYS AND FUNCTIONS-->
+
+
+<!--DEFAULT RULES-->
+
+
+<!--MODE: SCHEMATRON-SELECT-FULL-PATH-->
+<!--This mode can be used to generate an ugly though full XPath for locators
+    -->
+<xsl:template match="*" mode="schematron-select-full-path">
+      <xsl:apply-templates select="." mode="schematron-get-full-path"/>
+   </xsl:template>
+
+   <!--MODE: SCHEMATRON-FULL-PATH-->
+<!--This mode can be used to generate an ugly though full XPath for locators
+    -->
+<xsl:template match="*" mode="schematron-get-full-path">
+      <xsl:apply-templates select="parent::*" mode="schematron-get-full-path"/>
+      <xsl:text>/</xsl:text>
+      <xsl:choose>
+         <xsl:when test="namespace-uri()=''">
+            <xsl:value-of select="name()"/>
+            <xsl:variable name="p_1"
+                          select="1+       count(preceding-sibling::*[name()=name(current())])"/>
+            <xsl:if test="$p_1&gt;1 or following-sibling::*[name()=name(current())]">[<xsl:value-of select="$p_1"/>]</xsl:if>
+         </xsl:when>
+         <xsl:otherwise>
+            <xsl:text>*[local-name()='</xsl:text>
+            <xsl:value-of select="local-name()"/>
+            <xsl:text>']</xsl:text>
+            <xsl:variable name="p_2"
+                          select="1+     count(preceding-sibling::*[local-name()=local-name(current())])"/>
+            <xsl:if test="$p_2&gt;1 or following-sibling::*[local-name()=local-name(current())]">[<xsl:value-of select="$p_2"/>]</xsl:if>
+         </xsl:otherwise>
+      </xsl:choose>
+   </xsl:template>
+   <xsl:template match="@*" mode="schematron-get-full-path">
+      <xsl:text>/</xsl:text>
+      <xsl:choose>
+         <xsl:when test="namespace-uri()=''">@
+              <xsl:value-of select="name()"/>
+         </xsl:when>
+         <xsl:otherwise>
+            <xsl:text>@*[local-name()='</xsl:text>
+            <xsl:value-of select="local-name()"/>
+            <xsl:text>' and namespace-uri()='</xsl:text>
+            <xsl:value-of select="namespace-uri()"/>
+            <xsl:text>']</xsl:text>
+         </xsl:otherwise>
+      </xsl:choose>
+   </xsl:template>
+
+   <!--MODE: SCHEMATRON-FULL-PATH-2-->
+<!--This mode can be used to generate prefixed XPath for humans-->
+<xsl:template match="node() | @*" mode="schematron-get-full-path-2">
+      <xsl:for-each select="ancestor-or-self::*">
+         <xsl:text>/</xsl:text>
+         <xsl:value-of select="name(.)"/>
+         <xsl:if test="preceding-sibling::*[name(.)=name(current())]">
+            <xsl:text>[</xsl:text>
+            <xsl:value-of select="count(preceding-sibling::*[name(.)=name(current())])+1"/>
+            <xsl:text>]</xsl:text>
+         </xsl:if>
+      </xsl:for-each>
+      <xsl:if test="not(self::*)">
+         <xsl:text/>/@
+        <xsl:value-of select="name(.)"/>
+      </xsl:if>
+   </xsl:template>
+   <!--MODE: SCHEMATRON-FULL-PATH-3-->
+<!--This mode can be used to generate prefixed XPath for humans
+      (Top-level element has index)
+    -->
+<xsl:template match="node() | @*" mode="schematron-get-full-path-3">
+      <xsl:for-each select="ancestor-or-self::*">
+         <xsl:text>/</xsl:text>
+         <xsl:value-of select="name(.)"/>
+         <xsl:if test="parent::*">
+            <xsl:text>[</xsl:text>
+            <xsl:value-of select="count(preceding-sibling::*[name(.)=name(current())])+1"/>
+            <xsl:text>]</xsl:text>
+         </xsl:if>
+      </xsl:for-each>
+      <xsl:if test="not(self::*)">
+         <xsl:text/>/@
+        <xsl:value-of select="name(.)"/>
+      </xsl:if>
+   </xsl:template>
+
+   <!--MODE: GENERATE-ID-FROM-PATH-->
+<xsl:template match="/" mode="generate-id-from-path"/>
+   <xsl:template match="text()" mode="generate-id-from-path">
+      <xsl:apply-templates select="parent::*" mode="generate-id-from-path"/>
+      <xsl:value-of select="concat('.text-', 1+count(preceding-sibling::text()), '-')"/>
+   </xsl:template>
+   <xsl:template match="comment()" mode="generate-id-from-path">
+      <xsl:apply-templates select="parent::*" mode="generate-id-from-path"/>
+      <xsl:value-of select="concat('.comment-', 1+count(preceding-sibling::comment()), '-')"/>
+   </xsl:template>
+   <xsl:template match="processing-instruction()" mode="generate-id-from-path">
+      <xsl:apply-templates select="parent::*" mode="generate-id-from-path"/>
+      <xsl:value-of select="concat('.processing-instruction-', 1+count(preceding-sibling::processing-instruction()), '-')"/>
+   </xsl:template>
+   <xsl:template match="@*" mode="generate-id-from-path">
+      <xsl:apply-templates select="parent::*" mode="generate-id-from-path"/>
+      <xsl:value-of select="concat('.@', name())"/>
+   </xsl:template>
+   <xsl:template match="*" mode="generate-id-from-path" priority="-0.5">
+      <xsl:apply-templates select="parent::*" mode="generate-id-from-path"/>
+      <xsl:text>.</xsl:text>
+      <xsl:value-of select="concat('.',name(),'-',1+count(preceding-sibling::*[name()=name(current())]),'-')"/>
+   </xsl:template>
+
+   <!--MODE: GENERATE-ID-2-->
+<xsl:template match="/" mode="generate-id-2">U</xsl:template>
+   <xsl:template match="*" mode="generate-id-2" priority="2">
+      <xsl:text>U</xsl:text>
+      <xsl:number level="multiple" count="*"/>
+   </xsl:template>
+   <xsl:template match="node()" mode="generate-id-2">
+      <xsl:text>U.</xsl:text>
+      <xsl:number level="multiple" count="*"/>
+      <xsl:text>n</xsl:text>
+      <xsl:number count="node()"/>
+   </xsl:template>
+   <xsl:template match="@*" mode="generate-id-2">
+      <xsl:text>U.</xsl:text>
+      <xsl:number level="multiple" count="*"/>
+      <xsl:text>_</xsl:text>
+      <xsl:value-of select="string-length(local-name(.))"/>
+      <xsl:text>_</xsl:text>
+      <xsl:value-of select="translate(name(),':','.')"/>
+   </xsl:template>
+   <!--Strip characters--><xsl:template match="text()" priority="-1"/>
+
+   <!--SCHEMA SETUP-->
+<xsl:template match="/">
+      <svrl:schematron-output xmlns:svrl="http://purl.oclc.org/dsdl/svrl"
+                              title="Schematron validation for ISO&#xA;&#x9;&#x9;19115(19139)"
+                              schemaVersion="">
+         <xsl:comment>
+            <xsl:value-of select="$archiveDirParameter"/>
+         
+        <xsl:value-of select="$archiveNameParameter"/>
+         
+        <xsl:value-of select="$fileNameParameter"/>
+         
+        <xsl:value-of select="$fileDirParameter"/>
+         </xsl:comment>
+         <svrl:ns-prefix-in-attribute-values uri="http://www.opengis.net/gml" prefix="gml"/>
+         <svrl:ns-prefix-in-attribute-values uri="http://www.isotc211.org/2005/gmd" prefix="gmd"/>
+         <svrl:ns-prefix-in-attribute-values uri="http://www.isotc211.org/2005/srv" prefix="srv"/>
+         <svrl:ns-prefix-in-attribute-values uri="http://www.isotc211.org/2005/gco" prefix="gco"/>
+         <svrl:ns-prefix-in-attribute-values uri="http://www.fao.org/geonetwork" prefix="geonet"/>
+         <svrl:ns-prefix-in-attribute-values uri="http://www.w3.org/1999/xlink" prefix="xlink"/>
+         <svrl:active-pattern>
+            <xsl:attribute name="document">
+               <xsl:value-of select="document-uri(/)"/>
+            </xsl:attribute>
+            <xsl:attribute name="name">
+               <xsl:value-of select="$loc/strings/M6"/>
+            </xsl:attribute>
+            <xsl:apply-templates/>
+         </svrl:active-pattern>
+         <xsl:apply-templates select="/" mode="M7"/>
+         <svrl:active-pattern>
+            <xsl:attribute name="document">
+               <xsl:value-of select="document-uri(/)"/>
+            </xsl:attribute>
+            <xsl:attribute name="name">
+               <xsl:value-of select="$loc/strings/M7"/>
+            </xsl:attribute>
+            <xsl:apply-templates/>
+         </svrl:active-pattern>
+         <xsl:apply-templates select="/" mode="M8"/>
+         <svrl:active-pattern>
+            <xsl:attribute name="document">
+               <xsl:value-of select="document-uri(/)"/>
+            </xsl:attribute>
+            <xsl:attribute name="name">
+               <xsl:value-of select="$loc/strings/M8"/>
+            </xsl:attribute>
+            <xsl:apply-templates/>
+         </svrl:active-pattern>
+         <xsl:apply-templates select="/" mode="M9"/>
+         <svrl:active-pattern>
+            <xsl:attribute name="document">
+               <xsl:value-of select="document-uri(/)"/>
+            </xsl:attribute>
+            <xsl:attribute name="name">
+               <xsl:value-of select="$loc/strings/M9"/>
+            </xsl:attribute>
+            <xsl:apply-templates/>
+         </svrl:active-pattern>
+         <xsl:apply-templates select="/" mode="M10"/>
+         <svrl:active-pattern>
+            <xsl:attribute name="document">
+               <xsl:value-of select="document-uri(/)"/>
+            </xsl:attribute>
+            <xsl:attribute name="name">
+               <xsl:value-of select="$loc/strings/M10"/>
+            </xsl:attribute>
+            <xsl:apply-templates/>
+         </svrl:active-pattern>
+         <xsl:apply-templates select="/" mode="M11"/>
+         <svrl:active-pattern>
+            <xsl:attribute name="document">
+               <xsl:value-of select="document-uri(/)"/>
+            </xsl:attribute>
+            <xsl:attribute name="name">
+               <xsl:value-of select="$loc/strings/M11"/>
+            </xsl:attribute>
+            <xsl:apply-templates/>
+         </svrl:active-pattern>
+         <xsl:apply-templates select="/" mode="M12"/>
+         <svrl:active-pattern>
+            <xsl:attribute name="document">
+               <xsl:value-of select="document-uri(/)"/>
+            </xsl:attribute>
+            <xsl:attribute name="name">
+               <xsl:value-of select="$loc/strings/M13"/>
+            </xsl:attribute>
+            <xsl:apply-templates/>
+         </svrl:active-pattern>
+         <xsl:apply-templates select="/" mode="M13"/>
+         <svrl:active-pattern>
+            <xsl:attribute name="document">
+               <xsl:value-of select="document-uri(/)"/>
+            </xsl:attribute>
+            <xsl:attribute name="name">
+               <xsl:value-of select="$loc/strings/M14"/>
+            </xsl:attribute>
+            <xsl:apply-templates/>
+         </svrl:active-pattern>
+         <xsl:apply-templates select="/" mode="M14"/>
+         <svrl:active-pattern>
+            <xsl:attribute name="document">
+               <xsl:value-of select="document-uri(/)"/>
+            </xsl:attribute>
+            <xsl:attribute name="name">
+               <xsl:value-of select="$loc/strings/M16"/>
+            </xsl:attribute>
+            <xsl:apply-templates/>
+         </svrl:active-pattern>
+         <xsl:apply-templates select="/" mode="M15"/>
+         <svrl:active-pattern>
+            <xsl:attribute name="document">
+               <xsl:value-of select="document-uri(/)"/>
+            </xsl:attribute>
+            <xsl:attribute name="name">
+               <xsl:value-of select="$loc/strings/M17"/>
+            </xsl:attribute>
+            <xsl:apply-templates/>
+         </svrl:active-pattern>
+         <xsl:apply-templates select="/" mode="M16"/>
+         <svrl:active-pattern>
+            <xsl:attribute name="document">
+               <xsl:value-of select="document-uri(/)"/>
+            </xsl:attribute>
+            <xsl:attribute name="name">
+               <xsl:value-of select="$loc/strings/M18"/>
+            </xsl:attribute>
+            <xsl:apply-templates/>
+         </svrl:active-pattern>
+         <xsl:apply-templates select="/" mode="M17"/>
+         <svrl:active-pattern>
+            <xsl:attribute name="document">
+               <xsl:value-of select="document-uri(/)"/>
+            </xsl:attribute>
+            <xsl:attribute name="name">
+               <xsl:value-of select="$loc/strings/M19"/>
+            </xsl:attribute>
+            <xsl:apply-templates/>
+         </svrl:active-pattern>
+         <xsl:apply-templates select="/" mode="M18"/>
+         <svrl:active-pattern>
+            <xsl:attribute name="document">
+               <xsl:value-of select="document-uri(/)"/>
+            </xsl:attribute>
+            <xsl:attribute name="name">
+               <xsl:value-of select="$loc/strings/M20"/>
+            </xsl:attribute>
+            <xsl:apply-templates/>
+         </svrl:active-pattern>
+         <xsl:apply-templates select="/" mode="M19"/>
+         <svrl:active-pattern>
+            <xsl:attribute name="document">
+               <xsl:value-of select="document-uri(/)"/>
+            </xsl:attribute>
+            <xsl:attribute name="name">
+               <xsl:value-of select="$loc/strings/M21"/>
+            </xsl:attribute>
+            <xsl:apply-templates/>
+         </svrl:active-pattern>
+         <xsl:apply-templates select="/" mode="M20"/>
+         <svrl:active-pattern>
+            <xsl:attribute name="document">
+               <xsl:value-of select="document-uri(/)"/>
+            </xsl:attribute>
+            <xsl:attribute name="name">
+               <xsl:value-of select="$loc/strings/M22"/>
+            </xsl:attribute>
+            <xsl:apply-templates/>
+         </svrl:active-pattern>
+         <xsl:apply-templates select="/" mode="M21"/>
+         <svrl:active-pattern>
+            <xsl:attribute name="document">
+               <xsl:value-of select="document-uri(/)"/>
+            </xsl:attribute>
+            <xsl:attribute name="name">
+               <xsl:value-of select="$loc/strings/M23"/>
+            </xsl:attribute>
+            <xsl:apply-templates/>
+         </svrl:active-pattern>
+         <xsl:apply-templates select="/" mode="M22"/>
+         <svrl:active-pattern>
+            <xsl:attribute name="document">
+               <xsl:value-of select="document-uri(/)"/>
+            </xsl:attribute>
+            <xsl:attribute name="name">
+               <xsl:value-of select="$loc/strings/M25"/>
+            </xsl:attribute>
+            <xsl:apply-templates/>
+         </svrl:active-pattern>
+         <xsl:apply-templates select="/" mode="M23"/>
+         <svrl:active-pattern>
+            <xsl:attribute name="document">
+               <xsl:value-of select="document-uri(/)"/>
+            </xsl:attribute>
+            <xsl:attribute name="name">
+               <xsl:value-of select="$loc/strings/M26"/>
+            </xsl:attribute>
+            <xsl:apply-templates/>
+         </svrl:active-pattern>
+         <xsl:apply-templates select="/" mode="M24"/>
+         <svrl:active-pattern>
+            <xsl:attribute name="document">
+               <xsl:value-of select="document-uri(/)"/>
+            </xsl:attribute>
+            <xsl:attribute name="name">
+               <xsl:value-of select="$loc/strings/M27"/>
+            </xsl:attribute>
+            <xsl:apply-templates/>
+         </svrl:active-pattern>
+         <xsl:apply-templates select="/" mode="M25"/>
+         <svrl:active-pattern>
+            <xsl:attribute name="document">
+               <xsl:value-of select="document-uri(/)"/>
+            </xsl:attribute>
+            <xsl:attribute name="name">
+               <xsl:value-of select="$loc/strings/M28"/>
+            </xsl:attribute>
+            <xsl:apply-templates/>
+         </svrl:active-pattern>
+         <xsl:apply-templates select="/" mode="M26"/>
+         <svrl:active-pattern>
+            <xsl:attribute name="document">
+               <xsl:value-of select="document-uri(/)"/>
+            </xsl:attribute>
+            <xsl:attribute name="name">
+               <xsl:value-of select="$loc/strings/M29"/>
+            </xsl:attribute>
+            <xsl:apply-templates/>
+         </svrl:active-pattern>
+         <xsl:apply-templates select="/" mode="M27"/>
+         <svrl:active-pattern>
+            <xsl:attribute name="document">
+               <xsl:value-of select="document-uri(/)"/>
+            </xsl:attribute>
+            <xsl:attribute name="name">
+               <xsl:value-of select="$loc/strings/M30"/>
+            </xsl:attribute>
+            <xsl:apply-templates/>
+         </svrl:active-pattern>
+         <xsl:apply-templates select="/" mode="M28"/>
+         <svrl:active-pattern>
+            <xsl:attribute name="document">
+               <xsl:value-of select="document-uri(/)"/>
+            </xsl:attribute>
+            <xsl:attribute name="name">
+               <xsl:value-of select="$loc/strings/M61"/>
+            </xsl:attribute>
+            <xsl:apply-templates/>
+         </svrl:active-pattern>
+         <xsl:apply-templates select="/" mode="M29"/>
+         <svrl:active-pattern>
+            <xsl:attribute name="document">
+               <xsl:value-of select="document-uri(/)"/>
+            </xsl:attribute>
+            <xsl:attribute name="name">
+               <xsl:value-of select="$loc/strings/requiredElements"/>
+            </xsl:attribute>
+            <xsl:apply-templates/>
+         </svrl:active-pattern>
+         <xsl:apply-templates select="/" mode="M30"/>
+         <svrl:active-pattern>
+            <xsl:attribute name="document">
+               <xsl:value-of select="document-uri(/)"/>
+            </xsl:attribute>
+            <xsl:attribute name="name">
+               <xsl:value-of select="$loc/strings/requireCitation"/>
+            </xsl:attribute>
+            <xsl:apply-templates/>
+         </svrl:active-pattern>
+         <xsl:apply-templates select="/" mode="M31"/>
+      </svrl:schematron-output>
+   </xsl:template>
+
+   <!--SCHEMATRON PATTERNS-->
+<svrl:text xmlns:svrl="http://purl.oclc.org/dsdl/svrl">Schematron validation for ISO
+		19115(19139)</svrl:text>
+
+   <!--PATTERN
+        $loc/strings/M6-->
+<svrl:text xmlns:svrl="http://purl.oclc.org/dsdl/svrl">
+      <xsl:copy-of select="$loc/strings/M6"/>
+   </svrl:text>
+
+  <!--RULE
+      -->
+<xsl:template match="*[gco:CharacterString]" priority="1000" mode="M7">
+      <svrl:fired-rule xmlns:svrl="http://purl.oclc.org/dsdl/svrl" context="*[gco:CharacterString]"/>
+
+      <!--REPORT
+      -->
+<xsl:if test="(normalize-space(gco:CharacterString) = '') and (not(@gco:nilReason) or not(contains('inapplicable missing template unknown withheld',@gco:nilReason)))">
+         <svrl:successful-report xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                 test="(normalize-space(gco:CharacterString) = '') and (not(@gco:nilReason) or not(contains('inapplicable missing template unknown withheld',@gco:nilReason)))">
+            <xsl:attribute name="location">
+               <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+            </xsl:attribute>
+            <svrl:text>
+               <xsl:copy-of select="$loc/strings/alert.M6.characterString"/>
+            </svrl:text>
+         </svrl:successful-report>
+      </xsl:if>
+      <xsl:apply-templates select="*" mode="M7"/>
+   </xsl:template>
+   <xsl:template match="text()" priority="-1" mode="M7"/>
+   <xsl:template match="@*|node()" priority="-2" mode="M7">
+      <xsl:apply-templates select="*" mode="M7"/>
+   </xsl:template>
+
+   <!--PATTERN
+        $loc/strings/M7-->
+<svrl:text xmlns:svrl="http://purl.oclc.org/dsdl/svrl">
+      <xsl:copy-of select="$loc/strings/M7"/>
+   </svrl:text>
+
+  <!--RULE
+      CRSLabelsPosType-->
+<xsl:template match="//gml:DirectPositionType" priority="1000" mode="M8">
+      <svrl:fired-rule xmlns:svrl="http://purl.oclc.org/dsdl/svrl" context="//gml:DirectPositionType"
+                       id="CRSLabelsPosType"/>
+
+      <!--REPORT
+      -->
+<xsl:if test="not(@srsDimension) or @srsName">
+         <svrl:successful-report xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                 test="not(@srsDimension) or @srsName">
+            <xsl:attribute name="location">
+               <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+            </xsl:attribute>
+            <svrl:text>
+               <xsl:copy-of select="$loc/strings/alert.M6.directPosition"/>
+            </svrl:text>
+         </svrl:successful-report>
+      </xsl:if>
+
+      <!--REPORT
+      -->
+<xsl:if test="not(@axisLabels) or @srsName">
+         <svrl:successful-report xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                 test="not(@axisLabels) or @srsName">
+            <xsl:attribute name="location">
+               <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+            </xsl:attribute>
+            <svrl:text>
+               <xsl:copy-of select="$loc/strings/alert.M7.axisAndSrs"/>
+            </svrl:text>
+         </svrl:successful-report>
+      </xsl:if>
+
+      <!--REPORT
+      -->
+<xsl:if test="not(@uomLabels) or @srsName">
+         <svrl:successful-report xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                 test="not(@uomLabels) or @srsName">
+            <xsl:attribute name="location">
+               <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+            </xsl:attribute>
+            <svrl:text>
+               <xsl:copy-of select="$loc/strings/alert.M7.uomAndSrs"/>
+            </svrl:text>
+         </svrl:successful-report>
+      </xsl:if>
+
+      <!--REPORT
+      -->
+<xsl:if test="(not(@uomLabels) and not(@axisLabels)) or (@uomLabels and @axisLabels)">
+         <svrl:successful-report xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                 test="(not(@uomLabels) and not(@axisLabels)) or (@uomLabels and @axisLabels)">
+            <xsl:attribute name="location">
+               <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+            </xsl:attribute>
+            <svrl:text>
+               <xsl:copy-of select="$loc/strings/alert.M7.uomAndAxis"/>
+            </svrl:text>
+         </svrl:successful-report>
+      </xsl:if>
+      <xsl:apply-templates select="*" mode="M8"/>
+   </xsl:template>
+   <xsl:template match="text()" priority="-1" mode="M8"/>
+   <xsl:template match="@*|node()" priority="-2" mode="M8">
+      <xsl:apply-templates select="*" mode="M8"/>
+   </xsl:template>
+
+   <!--PATTERN
+        $loc/strings/M8-->
+<svrl:text xmlns:svrl="http://purl.oclc.org/dsdl/svrl">
+      <xsl:copy-of select="$loc/strings/M8"/>
+   </svrl:text>
+
+  <!--RULE
+      -->
+<xsl:template match="//*[gmd:CI_ResponsibleParty]" priority="1000" mode="M9">
+      <svrl:fired-rule xmlns:svrl="http://purl.oclc.org/dsdl/svrl"
+                       context="//*[gmd:CI_ResponsibleParty]"/>
+      <xsl:variable name="count"
+                    select="(count(gmd:CI_ResponsibleParty/gmd:individualName[@gco:nilReason!='missing' or not(@gco:nilReason)])      + count(gmd:CI_ResponsibleParty/gmd:organisationName[@gco:nilReason!='missing' or not(@gco:nilReason)])     + count(gmd:CI_ResponsibleParty/gmd:positionName[@gco:nilReason!='missing' or not(@gco:nilReason)]))"/>
+
+      <!--ASSERT
+      -->
+<xsl:choose>
+         <xsl:when test="$count &gt; 0"/>
+         <xsl:otherwise>
+            <svrl:failed-assert xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                test="$count &gt; 0">
+               <xsl:attribute name="location">
+                  <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+               </xsl:attribute>
+               <svrl:text>
+                  <xsl:copy-of select="$loc/strings/alert.M8"/>
+               </svrl:text>
+            </svrl:failed-assert>
+         </xsl:otherwise>
+      </xsl:choose>
+
+      <!--REPORT
+      -->
+<xsl:if test="$count &gt; 0">
+         <svrl:successful-report xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                 test="$count &gt; 0">
+            <xsl:attribute name="location">
+               <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+            </xsl:attribute>
+            <svrl:text>
+               <xsl:text/>
+               <xsl:copy-of select="$loc/strings/report.M8"/>
+               <xsl:text/> 
+				           <xsl:text/>
+               <xsl:copy-of select="gmd:CI_ResponsibleParty/gmd:organisationName"/>
+               <xsl:text/>-
+				<xsl:text/>
+               <xsl:copy-of select="gmd:CI_ResponsibleParty/gmd:individualName"/>
+               <xsl:text/>
+			         </svrl:text>
+         </svrl:successful-report>
+      </xsl:if>
+      <xsl:apply-templates select="*" mode="M9"/>
+   </xsl:template>
+   <xsl:template match="text()" priority="-1" mode="M9"/>
+   <xsl:template match="@*|node()" priority="-2" mode="M9">
+      <xsl:apply-templates select="*" mode="M9"/>
+   </xsl:template>
+
+   <!--PATTERN
+        $loc/strings/M9-->
+<svrl:text xmlns:svrl="http://purl.oclc.org/dsdl/svrl">
+      <xsl:copy-of select="$loc/strings/M9"/>
+   </svrl:text>
+
+  <!--RULE
+      -->
+<xsl:template match="//gmd:MD_LegalConstraints[gmd:accessConstraints/gmd:MD_RestrictionCode/@codeListValue='otherRestrictions']    |//*[@gco:isoType='gmd:MD_LegalConstraints' and gmd:accessConstraints/gmd:MD_RestrictionCode/@codeListValue='otherRestrictions']"
+                 priority="1001"
+                 mode="M10">
+      <svrl:fired-rule xmlns:svrl="http://purl.oclc.org/dsdl/svrl"
+                       context="//gmd:MD_LegalConstraints[gmd:accessConstraints/gmd:MD_RestrictionCode/@codeListValue='otherRestrictions']    |//*[@gco:isoType='gmd:MD_LegalConstraints' and gmd:accessConstraints/gmd:MD_RestrictionCode/@codeListValue='otherRestrictions']"/>
+      <xsl:variable name="access"
+                    select="not(gmd:otherConstraints)      or count(gmd:otherConstraints[gco:CharacterString = '']) &gt; 0      or gmd:otherConstraints/@gco:nilReason='missing'"/>
+
+      <!--ASSERT
+      -->
+<xsl:choose>
+         <xsl:when test="$access = false()"/>
+         <xsl:otherwise>
+            <svrl:failed-assert xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                test="$access = false()">
+               <xsl:attribute name="location">
+                  <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+               </xsl:attribute>
+               <svrl:text>
+				              <xsl:text/>
+                  <xsl:copy-of select="$loc/strings/alert.M9.access"/>
+                  <xsl:text/>
+			            </svrl:text>
+            </svrl:failed-assert>
+         </xsl:otherwise>
+      </xsl:choose>
+
+      <!--REPORT
+      -->
+<xsl:if test="$access = false()">
+         <svrl:successful-report xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                 test="$access = false()">
+            <xsl:attribute name="location">
+               <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+            </xsl:attribute>
+            <svrl:text>
+               <xsl:text/>
+               <xsl:copy-of select="$loc/strings/report.M9"/>
+               <xsl:text/>
+				           <xsl:text/>
+               <xsl:copy-of select="gmd:otherConstraints/gco:CharacterString"/>
+               <xsl:text/>
+			         </svrl:text>
+         </svrl:successful-report>
+      </xsl:if>
+      <xsl:apply-templates select="*" mode="M10"/>
+   </xsl:template>
+
+  <!--RULE
+      -->
+<xsl:template match="//gmd:MD_LegalConstraints[gmd:useConstraints/gmd:MD_RestrictionCode/@codeListValue='otherRestrictions']    |//*[@gco:isoType='gmd:MD_LegalConstraints' and gmd:accessConstraints/gmd:MD_RestrictionCode/@codeListValue='otherRestrictions']"
+                 priority="1000"
+                 mode="M10">
+      <svrl:fired-rule xmlns:svrl="http://purl.oclc.org/dsdl/svrl"
+                       context="//gmd:MD_LegalConstraints[gmd:useConstraints/gmd:MD_RestrictionCode/@codeListValue='otherRestrictions']    |//*[@gco:isoType='gmd:MD_LegalConstraints' and gmd:accessConstraints/gmd:MD_RestrictionCode/@codeListValue='otherRestrictions']"/>
+      <xsl:variable name="use"
+                    select="(not(gmd:otherConstraints) or not(string(gmd:otherConstraints/gco:CharacterString)) or gmd:otherConstraints/@gco:nilReason='missing')"/>
+
+      <!--ASSERT
+      -->
+<xsl:choose>
+         <xsl:when test="$use = false()"/>
+         <xsl:otherwise>
+            <svrl:failed-assert xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                test="$use = false()">
+               <xsl:attribute name="location">
+                  <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+               </xsl:attribute>
+               <svrl:text>
+                  <xsl:text/>
+                  <xsl:copy-of select="$loc/strings/alert.M9.use"/>
+                  <xsl:text/>
+			            </svrl:text>
+            </svrl:failed-assert>
+         </xsl:otherwise>
+      </xsl:choose>
+
+      <!--REPORT
+      -->
+<xsl:if test="$use = false()">
+         <svrl:successful-report xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                 test="$use = false()">
+            <xsl:attribute name="location">
+               <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+            </xsl:attribute>
+            <svrl:text>
+               <xsl:text/>
+               <xsl:copy-of select="$loc/strings/report.M9"/>
+               <xsl:text/>
+				           <xsl:text/>
+               <xsl:copy-of select="gmd:otherConstraints/gco:CharacterString"/>
+               <xsl:text/>
+			         </svrl:text>
+         </svrl:successful-report>
+      </xsl:if>
+      <xsl:apply-templates select="*" mode="M10"/>
+   </xsl:template>
+   <xsl:template match="text()" priority="-1" mode="M10"/>
+   <xsl:template match="@*|node()" priority="-2" mode="M10">
+      <xsl:apply-templates select="*" mode="M10"/>
+   </xsl:template>
+
+   <!--PATTERN
+        $loc/strings/M10-->
+<svrl:text xmlns:svrl="http://purl.oclc.org/dsdl/svrl">
+      <xsl:copy-of select="$loc/strings/M10"/>
+   </svrl:text>
+
+  <!--RULE
+      -->
+<xsl:template match="//gmd:MD_Band[gmd:maxValue or gmd:minValue]" priority="1000" mode="M11">
+      <svrl:fired-rule xmlns:svrl="http://purl.oclc.org/dsdl/svrl"
+                       context="//gmd:MD_Band[gmd:maxValue or gmd:minValue]"/>
+      <xsl:variable name="values"
+                    select="(gmd:maxValue[@gco:nilReason!='missing' or not(@gco:nilReason)]     or gmd:minValue[@gco:nilReason!='missing' or not(@gco:nilReason)])      and not(gmd:units)"/>
+
+      <!--ASSERT
+      -->
+<xsl:choose>
+         <xsl:when test="$values = false()"/>
+         <xsl:otherwise>
+            <svrl:failed-assert xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                test="$values = false()">
+               <xsl:attribute name="location">
+                  <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+               </xsl:attribute>
+               <svrl:text>
+                  <xsl:text/>
+                  <xsl:copy-of select="$loc/strings/alert.M9"/>
+                  <xsl:text/>
+			            </svrl:text>
+            </svrl:failed-assert>
+         </xsl:otherwise>
+      </xsl:choose>
+
+      <!--REPORT
+      -->
+<xsl:if test="$values = false()">
+         <svrl:successful-report xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                 test="$values = false()">
+            <xsl:attribute name="location">
+               <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+            </xsl:attribute>
+            <svrl:text>
+				           <xsl:text/>
+               <xsl:copy-of select="$loc/strings/report.M9.min"/>
+               <xsl:text/>
+				           <xsl:text/>
+               <xsl:copy-of select="gmd:minValue"/>
+               <xsl:text/> / 
+				<xsl:text/>
+               <xsl:copy-of select="$loc/strings/report.M9.max"/>
+               <xsl:text/>
+				           <xsl:text/>
+               <xsl:copy-of select="gmd:maxValue"/>
+               <xsl:text/> [
+				<xsl:text/>
+               <xsl:copy-of select="$loc/strings/report.M9.units"/>
+               <xsl:text/>
+				           <xsl:text/>
+               <xsl:copy-of select="gmd:units"/>
+               <xsl:text/>]
+			</svrl:text>
+         </svrl:successful-report>
+      </xsl:if>
+      <xsl:apply-templates select="*" mode="M11"/>
+   </xsl:template>
+   <xsl:template match="text()" priority="-1" mode="M11"/>
+   <xsl:template match="@*|node()" priority="-2" mode="M11">
+      <xsl:apply-templates select="*" mode="M11"/>
+   </xsl:template>
+
+   <!--PATTERN
+        $loc/strings/M11-->
+<svrl:text xmlns:svrl="http://purl.oclc.org/dsdl/svrl">
+      <xsl:copy-of select="$loc/strings/M11"/>
+   </svrl:text>
+
+  <!--RULE
+      -->
+<xsl:template match="//gmd:LI_Source" priority="1000" mode="M12">
+      <svrl:fired-rule xmlns:svrl="http://purl.oclc.org/dsdl/svrl" context="//gmd:LI_Source"/>
+      <xsl:variable name="extent"
+                    select="gmd:description[@gco:nilReason!='missing' or not(@gco:nilReason)] or gmd:sourceExtent"/>
+
+      <!--ASSERT
+      -->
+<xsl:choose>
+         <xsl:when test="$extent"/>
+         <xsl:otherwise>
+            <svrl:failed-assert xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                test="$extent">
+               <xsl:attribute name="location">
+                  <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+               </xsl:attribute>
+               <svrl:text>
+                  <xsl:copy-of select="$loc/strings/alert.M11"/>
+               </svrl:text>
+            </svrl:failed-assert>
+         </xsl:otherwise>
+      </xsl:choose>
+
+      <!--REPORT
+      -->
+<xsl:if test="$extent">
+         <svrl:successful-report xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                 test="$extent">
+            <xsl:attribute name="location">
+               <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+            </xsl:attribute>
+            <svrl:text>
+               <xsl:copy-of select="$loc/strings/report.M11"/>
+            </svrl:text>
+         </svrl:successful-report>
+      </xsl:if>
+      <xsl:apply-templates select="*" mode="M12"/>
+   </xsl:template>
+   <xsl:template match="text()" priority="-1" mode="M12"/>
+   <xsl:template match="@*|node()" priority="-2" mode="M12">
+      <xsl:apply-templates select="*" mode="M12"/>
+   </xsl:template>
+
+   <!--PATTERN
+        $loc/strings/M13-->
+<svrl:text xmlns:svrl="http://purl.oclc.org/dsdl/svrl">
+      <xsl:copy-of select="$loc/strings/M13"/>
+   </svrl:text>
+
+  <!--RULE
+      -->
+<xsl:template match="//gmd:DQ_DataQuality[gmd:scope/gmd:DQ_Scope/gmd:level/gmd:MD_ScopeCode/@codeListValue='dataset'     or gmd:scope/gmd:DQ_Scope/gmd:level/gmd:MD_ScopeCode/@codeListValue='series']"
+                 priority="1000"
+                 mode="M13">
+      <svrl:fired-rule xmlns:svrl="http://purl.oclc.org/dsdl/svrl"
+                       context="//gmd:DQ_DataQuality[gmd:scope/gmd:DQ_Scope/gmd:level/gmd:MD_ScopeCode/@codeListValue='dataset'     or gmd:scope/gmd:DQ_Scope/gmd:level/gmd:MD_ScopeCode/@codeListValue='series']"/>
+      <xsl:variable name="emptyStatement"
+                    select="     count(*/gmd:LI_Lineage/gmd:source) + count(*/gmd:LI_Lineage/gmd:processStep) = 0      and not(gmd:lineage/gmd:LI_Lineage/gmd:statement[@gco:nilReason!='missing' or not(@gco:nilReason)])      "/>
+
+      <!--ASSERT
+      -->
+<xsl:choose>
+         <xsl:when test="$emptyStatement = false()"/>
+         <xsl:otherwise>
+            <svrl:failed-assert xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                test="$emptyStatement = false()">
+               <xsl:attribute name="location">
+                  <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+               </xsl:attribute>
+               <svrl:text>
+                  <xsl:copy-of select="$loc/strings/alert.M13"/>
+               </svrl:text>
+            </svrl:failed-assert>
+         </xsl:otherwise>
+      </xsl:choose>
+
+      <!--REPORT
+      -->
+<xsl:if test="$emptyStatement = false()">
+         <svrl:successful-report xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                 test="$emptyStatement = false()">
+            <xsl:attribute name="location">
+               <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+            </xsl:attribute>
+            <svrl:text>
+               <xsl:copy-of select="$loc/strings/report.M13"/>
+            </svrl:text>
+         </svrl:successful-report>
+      </xsl:if>
+      <xsl:apply-templates select="*" mode="M13"/>
+   </xsl:template>
+   <xsl:template match="text()" priority="-1" mode="M13"/>
+   <xsl:template match="@*|node()" priority="-2" mode="M13">
+      <xsl:apply-templates select="*" mode="M13"/>
+   </xsl:template>
+
+   <!--PATTERN
+        $loc/strings/M14-->
+<svrl:text xmlns:svrl="http://purl.oclc.org/dsdl/svrl">
+      <xsl:copy-of select="$loc/strings/M14"/>
+   </svrl:text>
+
+  <!--RULE
+      -->
+<xsl:template match="//gmd:LI_Lineage" priority="1000" mode="M14">
+      <svrl:fired-rule xmlns:svrl="http://purl.oclc.org/dsdl/svrl" context="//gmd:LI_Lineage"/>
+      <xsl:variable name="emptySource"
+                    select="not(gmd:source)      and not(gmd:statement[@gco:nilReason!='missing' or not(@gco:nilReason)])      and not(gmd:processStep)"/>
+
+      <!--ASSERT
+      -->
+<xsl:choose>
+         <xsl:when test="$emptySource = false()"/>
+         <xsl:otherwise>
+            <svrl:failed-assert xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                test="$emptySource = false()">
+               <xsl:attribute name="location">
+                  <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+               </xsl:attribute>
+               <svrl:text>
+                  <xsl:copy-of select="$loc/strings/alert.M14"/>
+               </svrl:text>
+            </svrl:failed-assert>
+         </xsl:otherwise>
+      </xsl:choose>
+
+      <!--REPORT
+      -->
+<xsl:if test="$emptySource = false()">
+         <svrl:successful-report xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                 test="$emptySource = false()">
+            <xsl:attribute name="location">
+               <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+            </xsl:attribute>
+            <svrl:text>
+               <xsl:copy-of select="$loc/strings/report.M14"/>
+            </svrl:text>
+         </svrl:successful-report>
+      </xsl:if>
+      <xsl:variable name="emptyProcessStep"
+                    select="not(gmd:processStep)      and not(gmd:statement[@gco:nilReason!='missing' or not(@gco:nilReason)])     and not(gmd:source)"/>
+
+      <!--ASSERT
+      -->
+<xsl:choose>
+         <xsl:when test="$emptyProcessStep = false()"/>
+         <xsl:otherwise>
+            <svrl:failed-assert xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                test="$emptyProcessStep = false()">
+               <xsl:attribute name="location">
+                  <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+               </xsl:attribute>
+               <svrl:text>
+                  <xsl:copy-of select="$loc/strings/alert.M15"/>
+               </svrl:text>
+            </svrl:failed-assert>
+         </xsl:otherwise>
+      </xsl:choose>
+
+      <!--REPORT
+      -->
+<xsl:if test="$emptyProcessStep = false()">
+         <svrl:successful-report xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                 test="$emptyProcessStep = false()">
+            <xsl:attribute name="location">
+               <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+            </xsl:attribute>
+            <svrl:text>
+               <xsl:copy-of select="$loc/strings/report.M15"/>
+            </svrl:text>
+         </svrl:successful-report>
+      </xsl:if>
+      <xsl:apply-templates select="*" mode="M14"/>
+   </xsl:template>
+   <xsl:template match="text()" priority="-1" mode="M14"/>
+   <xsl:template match="@*|node()" priority="-2" mode="M14">
+      <xsl:apply-templates select="*" mode="M14"/>
+   </xsl:template>
+
+   <!--PATTERN
+        $loc/strings/M16-->
+<svrl:text xmlns:svrl="http://purl.oclc.org/dsdl/svrl">
+      <xsl:copy-of select="$loc/strings/M16"/>
+   </svrl:text>
+
+  <!--RULE
+      -->
+<xsl:template match="//gmd:DQ_DataQuality[gmd:scope/gmd:DQ_Scope/gmd:level/gmd:MD_ScopeCode/@codeListValue='dataset']"
+                 priority="1000"
+                 mode="M15">
+      <svrl:fired-rule xmlns:svrl="http://purl.oclc.org/dsdl/svrl"
+                       context="//gmd:DQ_DataQuality[gmd:scope/gmd:DQ_Scope/gmd:level/gmd:MD_ScopeCode/@codeListValue='dataset']"/>
+      <xsl:variable name="noReportNorLineage" select="not(gmd:report)      and not(gmd:lineage)"/>
+
+      <!--ASSERT
+      -->
+<xsl:choose>
+         <xsl:when test="$noReportNorLineage = false()"/>
+         <xsl:otherwise>
+            <svrl:failed-assert xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                test="$noReportNorLineage = false()">
+               <xsl:attribute name="location">
+                  <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+               </xsl:attribute>
+               <svrl:text>
+                  <xsl:copy-of select="$loc/strings/alert.M16"/>
+               </svrl:text>
+            </svrl:failed-assert>
+         </xsl:otherwise>
+      </xsl:choose>
+
+      <!--REPORT
+      -->
+<xsl:if test="$noReportNorLineage = false()">
+         <svrl:successful-report xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                 test="$noReportNorLineage = false()">
+            <xsl:attribute name="location">
+               <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+            </xsl:attribute>
+            <svrl:text>
+               <xsl:copy-of select="$loc/strings/report.M16"/>
+            </svrl:text>
+         </svrl:successful-report>
+      </xsl:if>
+      <xsl:apply-templates select="*" mode="M15"/>
+   </xsl:template>
+   <xsl:template match="text()" priority="-1" mode="M15"/>
+   <xsl:template match="@*|node()" priority="-2" mode="M15">
+      <xsl:apply-templates select="*" mode="M15"/>
+   </xsl:template>
+
+   <!--PATTERN
+        $loc/strings/M17-->
+<svrl:text xmlns:svrl="http://purl.oclc.org/dsdl/svrl">
+      <xsl:copy-of select="$loc/strings/M17"/>
+   </svrl:text>
+
+  <!--RULE
+      -->
+<xsl:template match="//gmd:DQ_Scope" priority="1000" mode="M16">
+      <svrl:fired-rule xmlns:svrl="http://purl.oclc.org/dsdl/svrl" context="//gmd:DQ_Scope"/>
+      <xsl:variable name="levelDesc"
+                    select="gmd:level/gmd:MD_ScopeCode/@codeListValue='dataset'      or gmd:level/gmd:MD_ScopeCode/@codeListValue='series'      or (gmd:levelDescription and ((normalize-space(gmd:levelDescription) != '')      or (gmd:levelDescription/gmd:MD_ScopeDescription)      or (gmd:levelDescription/@gco:nilReason      and contains('inapplicable missing template unknown withheld',gmd:levelDescription/@gco:nilReason))))"/>
+
+      <!--ASSERT
+      -->
+<xsl:choose>
+         <xsl:when test="$levelDesc"/>
+         <xsl:otherwise>
+            <svrl:failed-assert xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                test="$levelDesc">
+               <xsl:attribute name="location">
+                  <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+               </xsl:attribute>
+               <svrl:text>
+                  <xsl:copy-of select="$loc/strings/alert.M17"/>
+               </svrl:text>
+            </svrl:failed-assert>
+         </xsl:otherwise>
+      </xsl:choose>
+
+      <!--REPORT
+      -->
+<xsl:if test="$levelDesc">
+         <svrl:successful-report xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                 test="$levelDesc">
+            <xsl:attribute name="location">
+               <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+            </xsl:attribute>
+            <svrl:text>
+               <xsl:text/>
+               <xsl:copy-of select="$loc/strings/report.M17"/>
+               <xsl:text/> 
+               <xsl:text/>
+               <xsl:copy-of select="gmd:levelDescription"/>
+               <xsl:text/>
+            </svrl:text>
+         </svrl:successful-report>
+      </xsl:if>
+      <xsl:apply-templates select="*" mode="M16"/>
+   </xsl:template>
+   <xsl:template match="text()" priority="-1" mode="M16"/>
+   <xsl:template match="@*|node()" priority="-2" mode="M16">
+      <xsl:apply-templates select="*" mode="M16"/>
+   </xsl:template>
+
+   <!--PATTERN
+        $loc/strings/M18-->
+<svrl:text xmlns:svrl="http://purl.oclc.org/dsdl/svrl">
+      <xsl:copy-of select="$loc/strings/M18"/>
+   </svrl:text>
+
+  <!--RULE
+      -->
+<xsl:template match="//gmd:MD_Medium" priority="1000" mode="M17">
+      <svrl:fired-rule xmlns:svrl="http://purl.oclc.org/dsdl/svrl" context="//gmd:MD_Medium"/>
+      <xsl:variable name="density"
+                    select="gmd:density and not(gmd:densityUnits[@gco:nilReason!='missing' or not(@gco:nilReason)])"/>
+
+      <!--ASSERT
+      -->
+<xsl:choose>
+         <xsl:when test="$density = false()"/>
+         <xsl:otherwise>
+            <svrl:failed-assert xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                test="$density = false()">
+               <xsl:attribute name="location">
+                  <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+               </xsl:attribute>
+               <svrl:text>
+                  <xsl:copy-of select="$loc/strings/alert.M18"/>
+               </svrl:text>
+            </svrl:failed-assert>
+         </xsl:otherwise>
+      </xsl:choose>
+
+      <!--REPORT
+      -->
+<xsl:if test="$density = false()">
+         <svrl:successful-report xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                 test="$density = false()">
+            <xsl:attribute name="location">
+               <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+            </xsl:attribute>
+            <svrl:text>
+               <xsl:text/>
+               <xsl:copy-of select="$loc/strings/report.M18"/>
+               <xsl:text/> 
+               <xsl:text/>
+               <xsl:copy-of select="gmd:density"/>
+               <xsl:text/> 
+				           <xsl:text/>
+               <xsl:copy-of select="gmd:densityUnits/gco:CharacterString"/>
+               <xsl:text/>
+            </svrl:text>
+         </svrl:successful-report>
+      </xsl:if>
+      <xsl:apply-templates select="*" mode="M17"/>
+   </xsl:template>
+   <xsl:template match="text()" priority="-1" mode="M17"/>
+   <xsl:template match="@*|node()" priority="-2" mode="M17">
+      <xsl:apply-templates select="*" mode="M17"/>
+   </xsl:template>
+
+   <!--PATTERN
+        $loc/strings/M19-->
+<svrl:text xmlns:svrl="http://purl.oclc.org/dsdl/svrl">
+      <xsl:copy-of select="$loc/strings/M19"/>
+   </svrl:text>
+
+  <!--RULE
+      -->
+<xsl:template match="//gmd:MD_Distribution" priority="1000" mode="M18">
+      <svrl:fired-rule xmlns:svrl="http://purl.oclc.org/dsdl/svrl" context="//gmd:MD_Distribution"/>
+      <xsl:variable name="total"
+                    select="count(gmd:distributionFormat) +     count(gmd:distributor/gmd:MD_Distributor/gmd:distributorFormat)"/>
+      <xsl:variable name="count"
+                    select="count(gmd:distributionFormat)&gt;0      or count(gmd:distributor/gmd:MD_Distributor/gmd:distributorFormat)&gt;0"/>
+
+      <!--ASSERT
+      -->
+<xsl:choose>
+         <xsl:when test="$count"/>
+         <xsl:otherwise>
+            <svrl:failed-assert xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                test="$count">
+               <xsl:attribute name="location">
+                  <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+               </xsl:attribute>
+               <svrl:text>
+                  <xsl:copy-of select="$loc/strings/alert.M19"/>
+               </svrl:text>
+            </svrl:failed-assert>
+         </xsl:otherwise>
+      </xsl:choose>
+
+      <!--REPORT
+      -->
+<xsl:if test="$count">
+         <svrl:successful-report xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                 test="$count">
+            <xsl:attribute name="location">
+               <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+            </xsl:attribute>
+            <svrl:text>
+               <xsl:text/>
+               <xsl:copy-of select="$total"/>
+               <xsl:text/> 
+               <xsl:text/>
+               <xsl:copy-of select="$loc/strings/report.M19"/>
+               <xsl:text/>
+            </svrl:text>
+         </svrl:successful-report>
+      </xsl:if>
+      <xsl:apply-templates select="*" mode="M18"/>
+   </xsl:template>
+   <xsl:template match="text()" priority="-1" mode="M18"/>
+   <xsl:template match="@*|node()" priority="-2" mode="M18">
+      <xsl:apply-templates select="*" mode="M18"/>
+   </xsl:template>
+
+   <!--PATTERN
+        $loc/strings/M20-->
+<svrl:text xmlns:svrl="http://purl.oclc.org/dsdl/svrl">
+      <xsl:copy-of select="$loc/strings/M20"/>
+   </svrl:text>
+
+  <!--RULE
+      -->
+<xsl:template match="//gmd:EX_Extent" priority="1000" mode="M19">
+      <svrl:fired-rule xmlns:svrl="http://purl.oclc.org/dsdl/svrl" context="//gmd:EX_Extent"/>
+      <xsl:variable name="count"
+                    select="count(gmd:description[@gco:nilReason!='missing' or not(@gco:nilReason)])&gt;0      or count(gmd:geographicElement)&gt;0      or count(gmd:temporalElement)&gt;0      or count(gmd:verticalElement)&gt;0"/>
+
+      <!--ASSERT
+      -->
+<xsl:choose>
+         <xsl:when test="$count"/>
+         <xsl:otherwise>
+            <svrl:failed-assert xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                test="$count">
+               <xsl:attribute name="location">
+                  <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+               </xsl:attribute>
+               <svrl:text>
+                  <xsl:copy-of select="$loc/strings/alert.M20"/>
+               </svrl:text>
+            </svrl:failed-assert>
+         </xsl:otherwise>
+      </xsl:choose>
+
+      <!--REPORT
+      -->
+<xsl:if test="$count">
+         <svrl:successful-report xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                 test="$count">
+            <xsl:attribute name="location">
+               <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+            </xsl:attribute>
+            <svrl:text>
+               <xsl:copy-of select="$loc/strings/report.M20"/>
+            </svrl:text>
+         </svrl:successful-report>
+      </xsl:if>
+      <xsl:apply-templates select="*" mode="M19"/>
+   </xsl:template>
+   <xsl:template match="text()" priority="-1" mode="M19"/>
+   <xsl:template match="@*|node()" priority="-2" mode="M19">
+      <xsl:apply-templates select="*" mode="M19"/>
+   </xsl:template>
+
+   <!--PATTERN
+        $loc/strings/M21-->
+<svrl:text xmlns:svrl="http://purl.oclc.org/dsdl/svrl">
+      <xsl:copy-of select="$loc/strings/M21"/>
+   </svrl:text>
+
+  <!--RULE
+      -->
+<xsl:template match="//gmd:MD_DataIdentification|//*[contains(@gco:isoType, 'MD_DataIdentification')]"
+                 priority="1000"
+                 mode="M20">
+      <svrl:fired-rule xmlns:svrl="http://purl.oclc.org/dsdl/svrl"
+                       context="//gmd:MD_DataIdentification|//*[contains(@gco:isoType, 'MD_DataIdentification')]"/>
+      <xsl:variable name="extent"
+                    select="(not(../../gmd:hierarchyLevel)      or ../../gmd:hierarchyLevel/gmd:MD_ScopeCode/@codeListValue='dataset'      or ../../gmd:hierarchyLevel/gmd:MD_ScopeCode/@codeListValue='')      and (count(gmd:extent/*/gmd:geographicElement/gmd:EX_GeographicBoundingBox)      + count (gmd:extent/*/gmd:geographicElement/gmd:EX_GeographicDescription))=0"/>
+
+      <!--ASSERT
+      -->
+<xsl:choose>
+         <xsl:when test="$extent = false()"/>
+         <xsl:otherwise>
+            <svrl:failed-assert xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                test="$extent = false()">
+               <xsl:attribute name="location">
+                  <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+               </xsl:attribute>
+               <svrl:text>
+                  <xsl:copy-of select="$loc/strings/alert.M21"/>
+               </svrl:text>
+            </svrl:failed-assert>
+         </xsl:otherwise>
+      </xsl:choose>
+
+      <!--REPORT
+      -->
+<xsl:if test="$extent = false()">
+         <svrl:successful-report xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                 test="$extent = false()">
+            <xsl:attribute name="location">
+               <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+            </xsl:attribute>
+            <svrl:text>
+               <xsl:copy-of select="$loc/strings/report.M21"/>
+            </svrl:text>
+         </svrl:successful-report>
+      </xsl:if>
+      <xsl:apply-templates select="*" mode="M20"/>
+   </xsl:template>
+   <xsl:template match="text()" priority="-1" mode="M20"/>
+   <xsl:template match="@*|node()" priority="-2" mode="M20">
+      <xsl:apply-templates select="*" mode="M20"/>
+   </xsl:template>
+
+   <!--PATTERN
+        $loc/strings/M22-->
+<svrl:text xmlns:svrl="http://purl.oclc.org/dsdl/svrl">
+      <xsl:copy-of select="$loc/strings/M22"/>
+   </svrl:text>
+
+  <!--RULE
+      -->
+<xsl:template match="//gmd:MD_DataIdentification|//*[contains(@gco:isoType, 'MD_DataIdentification')]"
+                 priority="1000"
+                 mode="M21">
+      <svrl:fired-rule xmlns:svrl="http://purl.oclc.org/dsdl/svrl"
+                       context="//gmd:MD_DataIdentification|//*[contains(@gco:isoType, 'MD_DataIdentification')]"/>
+      <xsl:variable name="topic"
+                    select="(not(../../gmd:hierarchyLevel)      or ../../gmd:hierarchyLevel/gmd:MD_ScopeCode/@codeListValue='dataset'      or ../../gmd:hierarchyLevel/gmd:MD_ScopeCode/@codeListValue='series'       or ../../gmd:hierarchyLevel/gmd:MD_ScopeCode/@codeListValue='' )     and not(gmd:topicCategory)"/>
+
+      <!--ASSERT
+      -->
+<xsl:choose>
+         <xsl:when test="$topic = false()"/>
+         <xsl:otherwise>
+            <svrl:failed-assert xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                test="$topic = false()">
+               <xsl:attribute name="location">
+                  <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+               </xsl:attribute>
+               <svrl:text>
+                  <xsl:copy-of select="$loc/strings/alert.M6"/>
+               </svrl:text>
+            </svrl:failed-assert>
+         </xsl:otherwise>
+      </xsl:choose>
+
+      <!--REPORT
+      -->
+<xsl:if test="$topic = false()">
+         <svrl:successful-report xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                 test="$topic = false()">
+            <xsl:attribute name="location">
+               <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+            </xsl:attribute>
+            <svrl:text>
+               <xsl:text/>
+               <xsl:copy-of select="$loc/strings/report.M6"/>
+               <xsl:text/> "<xsl:text/>
+               <xsl:copy-of select="gmd:topicCategory/gmd:MD_TopicCategoryCode/text()"/>
+               <xsl:text/>"</svrl:text>
+         </svrl:successful-report>
+      </xsl:if>
+      <xsl:apply-templates select="*" mode="M21"/>
+   </xsl:template>
+   <xsl:template match="text()" priority="-1" mode="M21"/>
+   <xsl:template match="@*|node()" priority="-2" mode="M21">
+      <xsl:apply-templates select="*" mode="M21"/>
+   </xsl:template>
+
+   <!--PATTERN
+        $loc/strings/M23-->
+<svrl:text xmlns:svrl="http://purl.oclc.org/dsdl/svrl">
+      <xsl:copy-of select="$loc/strings/M23"/>
+   </svrl:text>
+
+  <!--RULE
+      -->
+<xsl:template match="//gmd:MD_AggregateInformation" priority="1000" mode="M22">
+      <svrl:fired-rule xmlns:svrl="http://purl.oclc.org/dsdl/svrl"
+                       context="//gmd:MD_AggregateInformation"/>
+
+      <!--ASSERT
+      -->
+<xsl:choose>
+         <xsl:when test="gmd:aggregateDataSetName or gmd:aggregateDataSetIdentifier"/>
+         <xsl:otherwise>
+            <svrl:failed-assert xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                test="gmd:aggregateDataSetName or gmd:aggregateDataSetIdentifier">
+               <xsl:attribute name="location">
+                  <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+               </xsl:attribute>
+               <svrl:text>
+                  <xsl:copy-of select="$loc/strings/alert.M23"/>
+               </svrl:text>
+            </svrl:failed-assert>
+         </xsl:otherwise>
+      </xsl:choose>
+
+      <!--REPORT
+      -->
+<xsl:if test="gmd:aggregateDataSetName or gmd:aggregateDataSetIdentifier">
+         <svrl:successful-report xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                 test="gmd:aggregateDataSetName or gmd:aggregateDataSetIdentifier">
+            <xsl:attribute name="location">
+               <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+            </xsl:attribute>
+            <svrl:text>
+               <xsl:copy-of select="$loc/strings/report.M23"/>
+            </svrl:text>
+         </svrl:successful-report>
+      </xsl:if>
+      <xsl:apply-templates select="*" mode="M22"/>
+   </xsl:template>
+   <xsl:template match="text()" priority="-1" mode="M22"/>
+   <xsl:template match="@*|node()" priority="-2" mode="M22">
+      <xsl:apply-templates select="*" mode="M22"/>
+   </xsl:template>
+
+   <!--PATTERN
+        $loc/strings/M25-->
+<svrl:text xmlns:svrl="http://purl.oclc.org/dsdl/svrl">
+      <xsl:copy-of select="$loc/strings/M25"/>
+   </svrl:text>
+
+  <!--RULE
+      -->
+<xsl:template match="//gmd:MD_Metadata|//*[@gco:isoType='gmd:MD_Metadata']" priority="1000"
+                 mode="M23">
+      <svrl:fired-rule xmlns:svrl="http://purl.oclc.org/dsdl/svrl"
+                       context="//gmd:MD_Metadata|//*[@gco:isoType='gmd:MD_Metadata']"/>
+      <xsl:apply-templates select="*" mode="M23"/>
+   </xsl:template>
+   <xsl:template match="text()" priority="-1" mode="M23"/>
+   <xsl:template match="@*|node()" priority="-2" mode="M23">
+      <xsl:apply-templates select="*" mode="M23"/>
+   </xsl:template>
+
+   <!--PATTERN
+        $loc/strings/M26-->
+<svrl:text xmlns:svrl="http://purl.oclc.org/dsdl/svrl">
+      <xsl:copy-of select="$loc/strings/M26"/>
+   </svrl:text>
+
+  <!--RULE
+      -->
+<xsl:template match="//gmd:MD_ExtendedElementInformation" priority="1000" mode="M24">
+      <svrl:fired-rule xmlns:svrl="http://purl.oclc.org/dsdl/svrl"
+                       context="//gmd:MD_ExtendedElementInformation"/>
+
+      <!--ASSERT
+      -->
+<xsl:choose>
+         <xsl:when test="(gmd:dataType/gmd:MD_DatatypeCode/@codeListValue='codelist'      or gmd:dataType/gmd:MD_DatatypeCode/@codeListValue='enumeration'      or gmd:dataType/gmd:MD_DatatypeCode/@codeListValue='codelistElement')      or (gmd:obligation and ((normalize-space(gmd:obligation) != '')       or (gmd:obligation/gmd:MD_ObligationCode)      or (gmd:obligation/@gco:nilReason and contains('inapplicable missing template unknown withheld',gmd:obligation/@gco:nilReason))))"/>
+         <xsl:otherwise>
+            <svrl:failed-assert xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                test="(gmd:dataType/gmd:MD_DatatypeCode/@codeListValue='codelist' or gmd:dataType/gmd:MD_DatatypeCode/@codeListValue='enumeration' or gmd:dataType/gmd:MD_DatatypeCode/@codeListValue='codelistElement') or (gmd:obligation and ((normalize-space(gmd:obligation) != '') or (gmd:obligation/gmd:MD_ObligationCode) or (gmd:obligation/@gco:nilReason and contains('inapplicable missing template unknown withheld',gmd:obligation/@gco:nilReason))))">
+               <xsl:attribute name="location">
+                  <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+               </xsl:attribute>
+               <svrl:text>
+                  <xsl:copy-of select="$loc/strings/alert.M26.obligation"/>
+               </svrl:text>
+            </svrl:failed-assert>
+         </xsl:otherwise>
+      </xsl:choose>
+
+      <!--ASSERT
+      -->
+<xsl:choose>
+         <xsl:when test="(gmd:dataType/gmd:MD_DatatypeCode/@codeListValue='codelist'      or gmd:dataType/gmd:MD_DatatypeCode/@codeListValue='enumeration'      or gmd:dataType/gmd:MD_DatatypeCode/@codeListValue='codelistElement')      or (gmd:maximumOccurrence and ((normalize-space(gmd:maximumOccurrence) != '')       or (normalize-space(gmd:maximumOccurrence/gco:CharacterString) != '')      or (gmd:maximumOccurrence/@gco:nilReason and contains('inapplicable missing template unknown withheld',gmd:maximumOccurrence/@gco:nilReason))))"/>
+         <xsl:otherwise>
+            <svrl:failed-assert xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                test="(gmd:dataType/gmd:MD_DatatypeCode/@codeListValue='codelist' or gmd:dataType/gmd:MD_DatatypeCode/@codeListValue='enumeration' or gmd:dataType/gmd:MD_DatatypeCode/@codeListValue='codelistElement') or (gmd:maximumOccurrence and ((normalize-space(gmd:maximumOccurrence) != '') or (normalize-space(gmd:maximumOccurrence/gco:CharacterString) != '') or (gmd:maximumOccurrence/@gco:nilReason and contains('inapplicable missing template unknown withheld',gmd:maximumOccurrence/@gco:nilReason))))">
+               <xsl:attribute name="location">
+                  <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+               </xsl:attribute>
+               <svrl:text>
+                  <xsl:copy-of select="$loc/strings/alert.M26.maximumOccurence"/>
+               </svrl:text>
+            </svrl:failed-assert>
+         </xsl:otherwise>
+      </xsl:choose>
+
+      <!--ASSERT
+      -->
+<xsl:choose>
+         <xsl:when test="(gmd:dataType/gmd:MD_DatatypeCode/@codeListValue='codelist'      or gmd:dataType/gmd:MD_DatatypeCode/@codeListValue='enumeration'      or gmd:dataType/gmd:MD_DatatypeCode/@codeListValue='codelistElement')      or (gmd:domainValue and ((normalize-space(gmd:domainValue) != '')       or (normalize-space(gmd:domainValue/gco:CharacterString) != '')      or (gmd:domainValue/@gco:nilReason and contains('inapplicable missing template unknown withheld',gmd:domainValue/@gco:nilReason))))"/>
+         <xsl:otherwise>
+            <svrl:failed-assert xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                test="(gmd:dataType/gmd:MD_DatatypeCode/@codeListValue='codelist' or gmd:dataType/gmd:MD_DatatypeCode/@codeListValue='enumeration' or gmd:dataType/gmd:MD_DatatypeCode/@codeListValue='codelistElement') or (gmd:domainValue and ((normalize-space(gmd:domainValue) != '') or (normalize-space(gmd:domainValue/gco:CharacterString) != '') or (gmd:domainValue/@gco:nilReason and contains('inapplicable missing template unknown withheld',gmd:domainValue/@gco:nilReason))))">
+               <xsl:attribute name="location">
+                  <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+               </xsl:attribute>
+               <svrl:text>
+                  <xsl:copy-of select="$loc/strings/alert.M26.domainValue"/>
+               </svrl:text>
+            </svrl:failed-assert>
+         </xsl:otherwise>
+      </xsl:choose>
+      <xsl:apply-templates select="*" mode="M24"/>
+   </xsl:template>
+   <xsl:template match="text()" priority="-1" mode="M24"/>
+   <xsl:template match="@*|node()" priority="-2" mode="M24">
+      <xsl:apply-templates select="*" mode="M24"/>
+   </xsl:template>
+
+   <!--PATTERN
+        $loc/strings/M27-->
+<svrl:text xmlns:svrl="http://purl.oclc.org/dsdl/svrl">
+      <xsl:copy-of select="$loc/strings/M27"/>
+   </svrl:text>
+
+  <!--RULE
+      -->
+<xsl:template match="//gmd:MD_ExtendedElementInformation" priority="1000" mode="M25">
+      <svrl:fired-rule xmlns:svrl="http://purl.oclc.org/dsdl/svrl"
+                       context="//gmd:MD_ExtendedElementInformation"/>
+      <xsl:variable name="condition"
+                    select="gmd:obligation/gmd:MD_ObligationCode='conditional'     and (not(gmd:condition) or count(gmd:condition[@gco:nilReason='missing'])&gt;0)"/>
+
+      <!--ASSERT
+      -->
+<xsl:choose>
+         <xsl:when test="$condition = false()"/>
+         <xsl:otherwise>
+            <svrl:failed-assert xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                test="$condition = false()">
+               <xsl:attribute name="location">
+                  <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+               </xsl:attribute>
+               <svrl:text>
+				              <xsl:text/>
+                  <xsl:copy-of select="$loc/strings/alert.M27"/>
+                  <xsl:text/>
+			            </svrl:text>
+            </svrl:failed-assert>
+         </xsl:otherwise>
+      </xsl:choose>
+
+      <!--REPORT
+      -->
+<xsl:if test="$condition = false()">
+         <svrl:successful-report xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                 test="$condition = false()">
+            <xsl:attribute name="location">
+               <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+            </xsl:attribute>
+            <svrl:text>
+				           <xsl:text/>
+               <xsl:copy-of select="$loc/strings/report.M27"/>
+               <xsl:text/>
+			         </svrl:text>
+         </svrl:successful-report>
+      </xsl:if>
+      <xsl:apply-templates select="*" mode="M25"/>
+   </xsl:template>
+   <xsl:template match="text()" priority="-1" mode="M25"/>
+   <xsl:template match="@*|node()" priority="-2" mode="M25">
+      <xsl:apply-templates select="*" mode="M25"/>
+   </xsl:template>
+
+   <!--PATTERN
+        $loc/strings/M28-->
+<svrl:text xmlns:svrl="http://purl.oclc.org/dsdl/svrl">
+      <xsl:copy-of select="$loc/strings/M28"/>
+   </svrl:text>
+
+  <!--RULE
+      -->
+<xsl:template match="//gmd:MD_ExtendedElementInformation" priority="1000" mode="M26">
+      <svrl:fired-rule xmlns:svrl="http://purl.oclc.org/dsdl/svrl"
+                       context="//gmd:MD_ExtendedElementInformation"/>
+      <xsl:variable name="domain"
+                    select="gmd:dataType/gmd:MD_DatatypeCode/@codeListValue='codelistElement' and not(gmd:domainCode)"/>
+
+      <!--ASSERT
+      -->
+<xsl:choose>
+         <xsl:when test="$domain = false()"/>
+         <xsl:otherwise>
+            <svrl:failed-assert xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                test="$domain = false()">
+               <xsl:attribute name="location">
+                  <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+               </xsl:attribute>
+               <svrl:text>
+                  <xsl:copy-of select="$loc/strings/alert.M28"/>
+               </svrl:text>
+            </svrl:failed-assert>
+         </xsl:otherwise>
+      </xsl:choose>
+
+      <!--REPORT
+      -->
+<xsl:if test="$domain = false()">
+         <svrl:successful-report xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                 test="$domain = false()">
+            <xsl:attribute name="location">
+               <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+            </xsl:attribute>
+            <svrl:text>
+               <xsl:copy-of select="$loc/strings/report.M28"/>
+            </svrl:text>
+         </svrl:successful-report>
+      </xsl:if>
+      <xsl:apply-templates select="*" mode="M26"/>
+   </xsl:template>
+   <xsl:template match="text()" priority="-1" mode="M26"/>
+   <xsl:template match="@*|node()" priority="-2" mode="M26">
+      <xsl:apply-templates select="*" mode="M26"/>
+   </xsl:template>
+
+   <!--PATTERN
+        $loc/strings/M29-->
+<svrl:text xmlns:svrl="http://purl.oclc.org/dsdl/svrl">
+      <xsl:copy-of select="$loc/strings/M29"/>
+   </svrl:text>
+
+  <!--RULE
+      -->
+<xsl:template match="//gmd:MD_ExtendedElementInformation" priority="1000" mode="M27">
+      <svrl:fired-rule xmlns:svrl="http://purl.oclc.org/dsdl/svrl"
+                       context="//gmd:MD_ExtendedElementInformation"/>
+      <xsl:variable name="shortName"
+                    select="gmd:dataType/gmd:MD_DatatypeCode/@codeListValue!='codelistElement' and not(gmd:shortName)"/>
+
+      <!--ASSERT
+      -->
+<xsl:choose>
+         <xsl:when test="$shortName = false()"/>
+         <xsl:otherwise>
+            <svrl:failed-assert xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                test="$shortName = false()">
+               <xsl:attribute name="location">
+                  <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+               </xsl:attribute>
+               <svrl:text>
+                  <xsl:copy-of select="$loc/strings/alert.M29"/>
+               </svrl:text>
+            </svrl:failed-assert>
+         </xsl:otherwise>
+      </xsl:choose>
+
+      <!--REPORT
+      -->
+<xsl:if test="$shortName = false()">
+         <svrl:successful-report xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                 test="$shortName = false()">
+            <xsl:attribute name="location">
+               <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+            </xsl:attribute>
+            <svrl:text>
+               <xsl:copy-of select="$loc/strings/report.M29"/>
+            </svrl:text>
+         </svrl:successful-report>
+      </xsl:if>
+      <xsl:apply-templates select="*" mode="M27"/>
+   </xsl:template>
+   <xsl:template match="text()" priority="-1" mode="M27"/>
+   <xsl:template match="@*|node()" priority="-2" mode="M27">
+      <xsl:apply-templates select="*" mode="M27"/>
+   </xsl:template>
+
+   <!--PATTERN
+        $loc/strings/M30-->
+<svrl:text xmlns:svrl="http://purl.oclc.org/dsdl/svrl">
+      <xsl:copy-of select="$loc/strings/M30"/>
+   </svrl:text>
+
+  <!--RULE
+      -->
+<xsl:template match="//gmd:MD_Georectified" priority="1000" mode="M28">
+      <svrl:fired-rule xmlns:svrl="http://purl.oclc.org/dsdl/svrl" context="//gmd:MD_Georectified"/>
+      <xsl:variable name="cpd"
+                    select="(gmd:checkPointAvailability/gco:Boolean='1' or gmd:checkPointAvailability/gco:Boolean='true') and      (not(gmd:checkPointDescription) or count(gmd:checkPointDescription[@gco:nilReason='missing'])&gt;0)"/>
+
+      <!--ASSERT
+      -->
+<xsl:choose>
+         <xsl:when test="$cpd = false()"/>
+         <xsl:otherwise>
+            <svrl:failed-assert xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                test="$cpd = false()">
+               <xsl:attribute name="location">
+                  <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+               </xsl:attribute>
+               <svrl:text>
+                  <xsl:copy-of select="$loc/strings/alert.M30"/>
+               </svrl:text>
+            </svrl:failed-assert>
+         </xsl:otherwise>
+      </xsl:choose>
+
+      <!--REPORT
+      -->
+<xsl:if test="$cpd = false()">
+         <svrl:successful-report xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                 test="$cpd = false()">
+            <xsl:attribute name="location">
+               <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+            </xsl:attribute>
+            <svrl:text>
+               <xsl:copy-of select="$loc/strings/report.M30"/>
+            </svrl:text>
+         </svrl:successful-report>
+      </xsl:if>
+      <xsl:apply-templates select="*" mode="M28"/>
+   </xsl:template>
+   <xsl:template match="text()" priority="-1" mode="M28"/>
+   <xsl:template match="@*|node()" priority="-2" mode="M28">
+      <xsl:apply-templates select="*" mode="M28"/>
+   </xsl:template>
+
+   <!--PATTERN
+        $loc/strings/M61-->
+<svrl:text xmlns:svrl="http://purl.oclc.org/dsdl/svrl">
+      <xsl:copy-of select="$loc/strings/M61"/>
+   </svrl:text>
+
+  <!--RULE
+      -->
+<xsl:template match="//gmd:MD_Metadata/gmd:hierarchyLevel|//*[@gco:isoType='gmd:MD_Metadata']/gmd:hierarchyLevel"
+                 priority="1000"
+                 mode="M29">
+      <svrl:fired-rule xmlns:svrl="http://purl.oclc.org/dsdl/svrl"
+                       context="//gmd:MD_Metadata/gmd:hierarchyLevel|//*[@gco:isoType='gmd:MD_Metadata']/gmd:hierarchyLevel"/>
+      <xsl:variable name="hl"
+                    select="count(../gmd:hierarchyLevel/gmd:MD_ScopeCode[@codeListValue='dataset' or @codeListValue=''])=0 and      (not(../gmd:hierarchyLevelName) or ../gmd:hierarchyLevelName/@gco:nilReason)"/>
+      <xsl:variable name="resourceType"
+                    select="string-join(../gmd:hierarchyLevel/*/@codeListValue, ',')"/>
+
+      <!--ASSERT
+      -->
+<xsl:choose>
+         <xsl:when test="$hl = false()"/>
+         <xsl:otherwise>
+            <svrl:failed-assert xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                test="$hl = false()">
+               <xsl:attribute name="location">
+                  <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+               </xsl:attribute>
+               <svrl:text>
+                  <xsl:copy-of select="$loc/strings/alert.M61"/>
+               </svrl:text>
+            </svrl:failed-assert>
+         </xsl:otherwise>
+      </xsl:choose>
+
+      <!--REPORT
+      -->
+<xsl:if test="$hl = false()">
+         <svrl:successful-report xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                 test="$hl = false()">
+            <xsl:attribute name="location">
+               <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+            </xsl:attribute>
+            <svrl:text>
+               <xsl:text/>
+               <xsl:copy-of select=" $loc/strings/report.M61"/>
+               <xsl:text/> "<xsl:text/>
+               <xsl:copy-of select="$resourceType"/>
+               <xsl:text/>"</svrl:text>
+         </svrl:successful-report>
+      </xsl:if>
+      <xsl:apply-templates select="*" mode="M29"/>
+   </xsl:template>
+   <xsl:template match="text()" priority="-1" mode="M29"/>
+   <xsl:template match="@*|node()" priority="-2" mode="M29">
+      <xsl:apply-templates select="*" mode="M29"/>
+   </xsl:template>
+
+   <!--PATTERN
+        $loc/strings/requiredElements-->
+<svrl:text xmlns:svrl="http://purl.oclc.org/dsdl/svrl">
+      <xsl:copy-of select="$loc/strings/requiredElements"/>
+   </svrl:text>
+
+  <!--RULE
+      -->
+<xsl:template match="//gmd:identificationInfo/*/gmd:abstract" priority="1006" mode="M30">
+      <svrl:fired-rule xmlns:svrl="http://purl.oclc.org/dsdl/svrl"
+                       context="//gmd:identificationInfo/*/gmd:abstract"/>
+      <xsl:variable name="text"
+                    select="(gco:CharacterString | .//gmd:LocalisedCharacterString)[normalize-space(text()) != '']"/>
+      <xsl:variable name="nilReason" select="@gco:nilReason and not(./node())"/>
+
+      <!--ASSERT
+      -->
+<xsl:choose>
+         <xsl:when test="$text or $nilReason"/>
+         <xsl:otherwise>
+            <svrl:failed-assert xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                test="$text or $nilReason">
+               <xsl:attribute name="location">
+                  <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+               </xsl:attribute>
+               <svrl:text>
+                  <xsl:text/>
+                  <xsl:copy-of select="$loc/strings/alert.requiredAbstract"/>
+                  <xsl:text/>
+               </svrl:text>
+            </svrl:failed-assert>
+         </xsl:otherwise>
+      </xsl:choose>
+
+      <!--REPORT
+      -->
+<xsl:if test="$text or $nilReason">
+         <svrl:successful-report xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                 test="$text or $nilReason">
+            <xsl:attribute name="location">
+               <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+            </xsl:attribute>
+            <svrl:text>
+                <xsl:text/>
+               <xsl:copy-of select="$loc/strings/report.requiredAbstract"/>
+               <xsl:text/>
+            </svrl:text>
+         </svrl:successful-report>
+      </xsl:if>
+      <xsl:apply-templates select="*" mode="M30"/>
+   </xsl:template>
+
+  <!--RULE
+      -->
+<xsl:template match="//gmd:identificationInfo/*/gmd:citation/*/gmd:title" priority="1005"
+                 mode="M30">
+      <svrl:fired-rule xmlns:svrl="http://purl.oclc.org/dsdl/svrl"
+                       context="//gmd:identificationInfo/*/gmd:citation/*/gmd:title"/>
+      <xsl:variable name="text"
+                    select="(gco:CharacterString | .//gmd:LocalisedCharacterString)[normalize-space(text()) != '']"/>
+      <xsl:variable name="nilReason" select="@gco:nilReason and not(./node())"/>
+
+      <!--ASSERT
+      -->
+<xsl:choose>
+         <xsl:when test="$text or $nilReason"/>
+         <xsl:otherwise>
+            <svrl:failed-assert xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                test="$text or $nilReason">
+               <xsl:attribute name="location">
+                  <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+               </xsl:attribute>
+               <svrl:text>
+                  <xsl:text/>
+                  <xsl:copy-of select="$loc/strings/alert.requiredTitle"/>
+                  <xsl:text/>
+               </svrl:text>
+            </svrl:failed-assert>
+         </xsl:otherwise>
+      </xsl:choose>
+
+      <!--REPORT
+      -->
+<xsl:if test="$text or $nilReason">
+         <svrl:successful-report xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                 test="$text or $nilReason">
+            <xsl:attribute name="location">
+               <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+            </xsl:attribute>
+            <svrl:text>
+                <xsl:text/>
+               <xsl:copy-of select="$loc/strings/report.requiredTitle"/>
+               <xsl:text/>
+            </svrl:text>
+         </svrl:successful-report>
+      </xsl:if>
+      <xsl:apply-templates select="*" mode="M30"/>
+   </xsl:template>
+
+  <!--RULE
+      -->
+<xsl:template match="//gmd:identificationInfo/*/gmd:citation/*/gmd:date/*/gmd:date"
+                 priority="1004"
+                 mode="M30">
+      <svrl:fired-rule xmlns:svrl="http://purl.oclc.org/dsdl/svrl"
+                       context="//gmd:identificationInfo/*/gmd:citation/*/gmd:date/*/gmd:date"/>
+      <xsl:variable name="text" select="gco:Date|gco:DateTime"/>
+      <xsl:variable name="nilReason" select="@gco:nilReason and not(./node())"/>
+
+      <!--ASSERT
+      -->
+<xsl:choose>
+         <xsl:when test="$text or $nilReason"/>
+         <xsl:otherwise>
+            <svrl:failed-assert xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                test="$text or $nilReason">
+               <xsl:attribute name="location">
+                  <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+               </xsl:attribute>
+               <svrl:text>
+                  <xsl:text/>
+                  <xsl:copy-of select="$loc/strings/alert.requiredDate"/>
+                  <xsl:text/>
+               </svrl:text>
+            </svrl:failed-assert>
+         </xsl:otherwise>
+      </xsl:choose>
+
+      <!--REPORT
+      -->
+<xsl:if test="$text or $nilReason">
+         <svrl:successful-report xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                 test="$text or $nilReason">
+            <xsl:attribute name="location">
+               <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+            </xsl:attribute>
+            <svrl:text>
+                <xsl:text/>
+               <xsl:copy-of select="$loc/strings/report.requiredDate"/>
+               <xsl:text/>
+            </svrl:text>
+         </svrl:successful-report>
+      </xsl:if>
+      <xsl:apply-templates select="*" mode="M30"/>
+   </xsl:template>
+
+  <!--RULE
+      -->
+<xsl:template match="//gmd:identificationInfo/*/gmd:citation/*/gmd:date/*/gmd:dateType"
+                 priority="1003"
+                 mode="M30">
+      <svrl:fired-rule xmlns:svrl="http://purl.oclc.org/dsdl/svrl"
+                       context="//gmd:identificationInfo/*/gmd:citation/*/gmd:date/*/gmd:dateType"/>
+      <xsl:variable name="text" select="gmd:CI_DateTypeCode"/>
+      <xsl:variable name="nilReason" select="@gco:nilReason and not(./node())"/>
+
+      <!--ASSERT
+      -->
+<xsl:choose>
+         <xsl:when test="$text or $nilReason"/>
+         <xsl:otherwise>
+            <svrl:failed-assert xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                test="$text or $nilReason">
+               <xsl:attribute name="location">
+                  <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+               </xsl:attribute>
+               <svrl:text>
+                  <xsl:text/>
+                  <xsl:copy-of select="$loc/strings/alert.requiredDateType"/>
+                  <xsl:text/>
+               </svrl:text>
+            </svrl:failed-assert>
+         </xsl:otherwise>
+      </xsl:choose>
+
+      <!--REPORT
+      -->
+<xsl:if test="$text or $nilReason">
+         <svrl:successful-report xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                 test="$text or $nilReason">
+            <xsl:attribute name="location">
+               <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+            </xsl:attribute>
+            <svrl:text>
+                <xsl:text/>
+               <xsl:copy-of select="$loc/strings/report.requiredDateType"/>
+               <xsl:text/>
+            </svrl:text>
+         </svrl:successful-report>
+      </xsl:if>
+      <xsl:apply-templates select="*" mode="M30"/>
+   </xsl:template>
+
+  <!--RULE
+      -->
+<xsl:template match="/*/gmd:contact" priority="1002" mode="M30">
+      <svrl:fired-rule xmlns:svrl="http://purl.oclc.org/dsdl/svrl" context="/*/gmd:contact"/>
+
+      <!--ASSERT
+      -->
+<xsl:choose>
+         <xsl:when test="node() | @gco:nilReason"/>
+         <xsl:otherwise>
+            <svrl:failed-assert xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                test="node() | @gco:nilReason">
+               <xsl:attribute name="location">
+                  <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+               </xsl:attribute>
+               <svrl:text>
+                  <xsl:text/>
+                  <xsl:copy-of select="$loc/strings/alert.requiredContact"/>
+                  <xsl:text/>
+               </svrl:text>
+            </svrl:failed-assert>
+         </xsl:otherwise>
+      </xsl:choose>
+
+      <!--REPORT
+      -->
+<xsl:if test="node() | @gco:nilReason">
+         <svrl:successful-report xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                 test="node() | @gco:nilReason">
+            <xsl:attribute name="location">
+               <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+            </xsl:attribute>
+            <svrl:text>
+                <xsl:text/>
+               <xsl:copy-of select="$loc/strings/report.requiredContact"/>
+               <xsl:text/>
+            </svrl:text>
+         </svrl:successful-report>
+      </xsl:if>
+      <xsl:apply-templates select="*" mode="M30"/>
+   </xsl:template>
+
+  <!--RULE
+      -->
+<xsl:template match="/*/gmd:language" priority="1001" mode="M30">
+      <svrl:fired-rule xmlns:svrl="http://purl.oclc.org/dsdl/svrl" context="/*/gmd:language"/>
+
+      <!--ASSERT
+      -->
+<xsl:choose>
+         <xsl:when test="node() | @gco:nilReason"/>
+         <xsl:otherwise>
+            <svrl:failed-assert xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                test="node() | @gco:nilReason">
+               <xsl:attribute name="location">
+                  <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+               </xsl:attribute>
+               <svrl:text>
+                  <xsl:text/>
+                  <xsl:copy-of select="$loc/strings/alert.requiredLanguage"/>
+                  <xsl:text/>
+               </svrl:text>
+            </svrl:failed-assert>
+         </xsl:otherwise>
+      </xsl:choose>
+
+      <!--REPORT
+      -->
+<xsl:if test="node() | @gco:nilReason">
+         <svrl:successful-report xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                 test="node() | @gco:nilReason">
+            <xsl:attribute name="location">
+               <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+            </xsl:attribute>
+            <svrl:text>
+                <xsl:text/>
+               <xsl:copy-of select="$loc/strings/report.requiredLanguage"/>
+               <xsl:text/>
+            </svrl:text>
+         </svrl:successful-report>
+      </xsl:if>
+      <xsl:apply-templates select="*" mode="M30"/>
+   </xsl:template>
+
+  <!--RULE
+      -->
+<xsl:template match="//gmd:identificationInfo/*/gmd:language" priority="1000" mode="M30">
+      <svrl:fired-rule xmlns:svrl="http://purl.oclc.org/dsdl/svrl"
+                       context="//gmd:identificationInfo/*/gmd:language"/>
+
+      <!--ASSERT
+      -->
+<xsl:choose>
+         <xsl:when test="node() | @gco:nilReason"/>
+         <xsl:otherwise>
+            <svrl:failed-assert xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                test="node() | @gco:nilReason">
+               <xsl:attribute name="location">
+                  <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+               </xsl:attribute>
+               <svrl:text>
+                  <xsl:text/>
+                  <xsl:copy-of select="$loc/strings/alert.requiredLanguage"/>
+                  <xsl:text/>
+               </svrl:text>
+            </svrl:failed-assert>
+         </xsl:otherwise>
+      </xsl:choose>
+
+      <!--REPORT
+      -->
+<xsl:if test="node() | @gco:nilReason">
+         <svrl:successful-report xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                 test="node() | @gco:nilReason">
+            <xsl:attribute name="location">
+               <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+            </xsl:attribute>
+            <svrl:text>
+                <xsl:text/>
+               <xsl:copy-of select="$loc/strings/report.requiredLanguage"/>
+               <xsl:text/>
+            </svrl:text>
+         </svrl:successful-report>
+      </xsl:if>
+      <xsl:apply-templates select="*" mode="M30"/>
+   </xsl:template>
+   <xsl:template match="text()" priority="-1" mode="M30"/>
+   <xsl:template match="@*|node()" priority="-2" mode="M30">
+      <xsl:apply-templates select="*" mode="M30"/>
+   </xsl:template>
+
+   <!--PATTERN
+        $loc/strings/requireCitation-->
+<svrl:text xmlns:svrl="http://purl.oclc.org/dsdl/svrl">
+      <xsl:copy-of select="$loc/strings/requireCitation"/>
+   </svrl:text>
+
+  <!--RULE
+      -->
+<xsl:template match="//gmd:identificationInfo/*/gmd:citation" priority="1000" mode="M31">
+      <svrl:fired-rule xmlns:svrl="http://purl.oclc.org/dsdl/svrl"
+                       context="//gmd:identificationInfo/*/gmd:citation"/>
+
+      <!--ASSERT
+      -->
+<xsl:choose>
+         <xsl:when test="gmd:CI_Citation | @gco:nilReason"/>
+         <xsl:otherwise>
+            <svrl:failed-assert xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                test="gmd:CI_Citation | @gco:nilReason">
+               <xsl:attribute name="location">
+                  <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+               </xsl:attribute>
+               <svrl:text>
+                  <xsl:text/>
+                  <xsl:copy-of select="$loc/strings/alert.requiredCitation"/>
+                  <xsl:text/>
+               </svrl:text>
+            </svrl:failed-assert>
+         </xsl:otherwise>
+      </xsl:choose>
+
+      <!--REPORT
+      -->
+<xsl:if test="gmd:CI_Citation | @gco:nilReason">
+         <svrl:successful-report xmlns:svrl="http://purl.oclc.org/dsdl/svrl" ref="#_{geonet:element/@ref}"
+                                 test="gmd:CI_Citation | @gco:nilReason">
+            <xsl:attribute name="location">
+               <xsl:apply-templates select="." mode="schematron-select-full-path"/>
+            </xsl:attribute>
+            <svrl:text>
+                <xsl:text/>
+               <xsl:copy-of select="$loc/strings/report.requiredCitation"/>
+               <xsl:text/>
+            </svrl:text>
+         </svrl:successful-report>
+      </xsl:if>
+      <xsl:apply-templates select="*" mode="M31"/>
+   </xsl:template>
+   <xsl:template match="text()" priority="-1" mode="M31"/>
+   <xsl:template match="@*|node()" priority="-2" mode="M31">
+      <xsl:apply-templates select="*" mode="M31"/>
+   </xsl:template>
+</xsl:stylesheet>
\ No newline at end of file
diff --git a/src/main/webapp/WEB-INF/data/data/formatter/groovy/common/Functions.groovy b/src/main/webapp/WEB-INF/data/data/formatter/groovy/common/Functions.groovy
new file mode 100644
index 0000000..12cf4df
--- /dev/null
+++ b/src/main/webapp/WEB-INF/data/data/formatter/groovy/common/Functions.groovy
@@ -0,0 +1,69 @@
+package common
+
+import org.fao.geonet.api.records.formatters.FormatType
+import org.fao.geonet.api.records.formatters.groovy.Environment
+import org.nibor.autolink.*;
+
+public class Functions {
+    org.fao.geonet.api.records.formatters.groovy.Handlers handlers;
+    def org.fao.geonet.api.records.formatters.groovy.Functions f
+    def Environment env
+
+    def isHtmlOutput = {
+        env.formatType == FormatType.html || env.formatType == FormatType.pdf ||
+                env.formatType == FormatType.testpdf
+    }
+
+    def isPDFOutput = {
+        env.formatType == FormatType.pdf || env.formatType == FormatType.testpdf
+    }
+
+    /**
+     * Creates the default html for a label -> text pair.  This is the element for primitive/simple data.
+     * This does not return a function it is returns the actual html and thus can be used within handlers/functions to
+     * directly get the html
+     */
+    def textEl(label, text) {
+        return handlers.fileResult("html/text-el.html", ["label": label, "text" : text])
+    }
+
+    /**
+     * Same as textEl but doesn't escape the XML
+     */
+    def wikiTextEl(label, text) {
+        return handlers.fileResult("html/wikitext-el.html", ["label": label, "text" : text])
+    }
+
+    /**
+     * Creates the default html for a label -> text pair.  This is the element for primitive/simple data.
+     * This does not return a function it is returns the actual html and thus can be used within handlers/functions to
+     * directly get the html
+     */
+    def urlEl(label, href, text) {
+        return handlers.fileResult("html/url-el.html", ["label": label, "href" : href, "text" :
+                text.length() > 50 ? (text.substring(0, 50) + "...") : text])
+    }
+
+    def textColEl(content, cols) {
+        return '<div class="col-md-' + cols + '">' + content + '</div>'
+    }
+
+    def urlToHtml(content) {
+        LinkExtractor linkExtractor = LinkExtractor.builder()
+                .linkTypes(EnumSet.of(LinkType.URL)) // limit to URLs
+                .build();
+
+        Iterable<LinkSpan> links = linkExtractor.extractLinks(content);
+        String result = Autolink.renderLinks(content, links, new LinkRenderer()  {
+            void render(LinkSpan link, CharSequence text, StringBuilder sb) {
+                sb.append("<a target=\"_blank\" href=\"");
+                sb.append(text, link.getBeginIndex(), link.getEndIndex());
+                sb.append("\">");
+                sb.append(text, link.getBeginIndex(), link.getEndIndex());
+                sb.append("</a>");
+            }
+        });
+        return result
+    }
+
+}
diff --git a/src/main/webapp/WEB-INF/data/data/formatter/groovy/common/Handlers.groovy b/src/main/webapp/WEB-INF/data/data/formatter/groovy/common/Handlers.groovy
new file mode 100644
index 0000000..5173808
--- /dev/null
+++ b/src/main/webapp/WEB-INF/data/data/formatter/groovy/common/Handlers.groovy
@@ -0,0 +1,270 @@
+package common
+
+import jeeves.server.context.ServiceContext
+import org.fao.geonet.api.records.MetadataUtils
+import org.fao.geonet.api.records.formatters.groovy.Environment
+import org.fao.geonet.api.records.formatters.groovy.util.*
+import org.fao.geonet.api.records.model.related.RelatedItemType
+import org.fao.geonet.constants.Geonet
+import org.fao.geonet.kernel.GeonetworkDataDirectory
+import org.fao.geonet.utils.Xml
+import org.jdom.Element
+
+public class Handlers {
+    private org.fao.geonet.api.records.formatters.groovy.Handlers handlers;
+    private org.fao.geonet.api.records.formatters.groovy.Functions f
+    private Environment env
+
+    common.Matchers matchers
+    common.Functions func
+    boolean requireValidMetadataForPublish = false;
+
+    public Handlers(handlers, f, env) {
+        this.handlers = handlers
+        this.f = f
+        this.env = env
+        func = new common.Functions(handlers: handlers, f:f, env:env)
+        matchers =  new common.Matchers(handlers: handlers, f:f, env:env)
+    }
+
+    def addDefaultStartAndEndHandlers() {
+        handlers.start htmlOrXmlStart
+        handlers.end htmlOrXmlEnd
+    }
+
+    def entryEl(labeller) {
+        return entryEl(labeller, null)
+    }
+    /**
+     * Creates a function that will process all children and sort then according to the sorter that applies to the elements. Then
+     * returns the default html for the container elements.
+     *
+     * @param labeller a function for creating a label from the element
+     * @param classer a function taking the element class(es) to add to the entry element.  The method should return a string.
+     */
+    def entryEl(labeller, classer) {
+        return { el ->
+            def childData = handlers.processElements(el.children(), el);
+            def replacement = [label: labeller(el), childData: childData, name:'']
+
+            if (classer != null) {
+                replacement.name = classer(el);
+            }
+
+            if (!childData.isEmpty()) {
+                return handlers.fileResult('html/2-level-entry.html', replacement)
+            }
+            return null
+        }
+    }
+    def processChildren(childSelector) {
+        return {el ->
+            handlers.processElements(childSelector(el), el);
+        }
+    }
+    /**
+     * Creates a function which will:
+     *
+     * 1. Select a single element using the selector function
+     * 2. Process all children of the element selected in step 1 with sorter that applies to the element selected in step 1
+     * 3. Create a label using executing the labeller on the element passed to handler functions (not element selected in step 1)
+     *
+     * @param selector a function that will select a single element from the descendants of the element passed to it
+     * @param labeller a function for creating a label from the element
+     */
+    def flattenedEntryEl(selector, labeller) {
+        return { parentEl ->
+            def el = selector(parentEl)
+            def childData = handlers.processElements(el.children(), el);
+
+            if (!childData.isEmpty()) {
+                return handlers.fileResult('html/2-level-entry.html', [label: labeller(el), childData: childData])
+            }
+            return null
+        }
+    }
+
+    def selectIsotype(name) {
+        return {
+            it.children().find { ch ->
+                ch.name() == name || ch['@gco:isoType'].text() == name
+            }
+        }
+    }
+
+
+    def htmlOrXmlStart = {
+        if (func.isHtmlOutput()) {
+            def minimize = ''
+            def baseUrl = func.f.fparams.url;
+            if (env.param("debug").toBool()) {
+                minimize = '?minimize=false'
+            }
+            String cssLinks = """
+    <link rel="stylesheet" href="$baseUrl../../static/gn_bootstrap.css$minimize"/>
+    <link rel="stylesheet" href="$baseUrl../../static/gn_metadata.css$minimize"/>""";
+
+            if (func.isPDFOutput()) {
+                cssLinks = """<link rel="stylesheet" href="$baseUrl../../static/gn_metadata_pdf.css$minimize"/>"""
+            }
+            return """
+<!DOCTYPE html>
+<html>
+<head lang="en">
+    <meta charset="UTF-8"/>
+    $cssLinks
+    <script src="$baseUrl../../static/lib.js$minimize"></script>
+    <script src="$baseUrl../../static/gn_formatter_lib.js$minimize"></script>
+</head>
+<body>
+"""
+        } else {
+            return ''
+        }
+    }
+
+    def htmlOrXmlEnd = {
+        def required = "";
+        if (!func.isPDFOutput()) {
+            required = """
+<script type="text/javascript">
+//<![CDATA[
+    gnFormatter.formatterOnComplete();
+//]]>
+</script>"""
+        }
+        if (func.isHtmlOutput()) {
+            return required + '</body></html>'
+        } else {
+            return required
+        }
+    }
+
+
+    NavBarItem createXmlNavBarItem() {
+        return new NavBarItem(f.translate("xml"), f.translate("xml"), "", "xml.metadata.get?uuid=${env.metadataUUID}")
+    }
+
+    def loadHierarchyLinkBlocks() {
+        def uuid = this.env.metadataUUID
+        def id = this.env.metadataId
+
+        LinkBlock hierarchy = new LinkBlock("associated-link", "fa fa-sitemap")
+        Element related = getRelatedReport(id, uuid)
+
+        related.getChildren().each { rel ->
+            def type = rel.name
+
+            rel.getChildren("item").each { item ->
+                def direction = Direction.CHILD
+                def association
+                if (type == "siblings") {
+                    association = item.getChildText("associationType")
+                    if (association != null && association != '') {
+                        type = association;
+                        direction = Direction.PARENT
+                    }
+                } else if (type == "services" || type == "sources" || type == "parent" || type == "fcats") {
+                    direction = Direction.PARENT
+                } else if( type == 'associated') {
+                    Element aggIndexEl = item.getChildren().find{it.getName() startsWith "agg_"}
+                    if (aggIndexEl != null) {
+                        type = aggIndexEl.name.substring(4)
+                    }
+                } else if (type == "onlines" || type == "thumbnails") {
+                    return;
+                }
+
+                def relatedIdInfo = addRelation(hierarchy, uuid, item, type, direction)
+
+                if (relatedIdInfo != null && direction == Direction.PARENT) {
+                    def parentUUID = relatedIdInfo['uuid'] as String
+                    def report = getRelatedReport(relatedIdInfo['id'] as int, parentUUID)
+
+                    report.getChildren().each { potentialSiblingRel ->
+                        def relType = potentialSiblingRel.name
+                        potentialSiblingRel.getChildren("item").each { potentialSiblingItem ->
+                            if (association != null) {
+                                boolean isAggSibling = potentialSiblingItem.getChildren("agg_$association").any {
+                                    it.getTextTrim() == parentUUID
+                                }
+                                if (isAggSibling) {
+                                    addRelation(hierarchy, parentUUID, potentialSiblingItem, association, Direction.SIBLING)
+                                }
+                            } else if (relType == 'datasets' || relType == 'hassource' || relType == 'hasfeaturecat') {
+                                addRelation(hierarchy, parentUUID, potentialSiblingItem, relType, Direction.SIBLING)
+                            } else if (relType == 'children') {
+                                addRelation(hierarchy, parentUUID, potentialSiblingItem, "siblings", Direction.SIBLING)
+                            }
+
+                        }
+                    }
+                }
+            }
+        }
+        return hierarchy;
+    }
+
+    private Element getRelatedReport(int id, String uuid) {
+        def relatedXsl = this.env.getBean(GeonetworkDataDirectory).getWebappDir().resolve("xslt/services/metadata/relation.xsl");
+        def RelatedItemType[] types = [];
+        def raw = MetadataUtils.getRelated(ServiceContext.get(), id, uuid, types, 1, 1000, true)
+        def withGui = new Element("root").addContent(Arrays.asList(
+                new Element("gui").addContent(Arrays.asList(
+                        new Element("language").setText(env.lang3),
+                        new Element("locUrl").setText(env.getLocalizedUrl())
+                )),
+                raw));
+        def related = Xml.transform(withGui, relatedXsl);
+        related
+    }
+
+    private Map addRelation(hierarchy, uuid, rel, type, direction) {
+        def arrow;
+        switch (direction) {
+            case Direction.CHILD:
+                arrow = "pad-left fa-long-arrow-down"
+                break
+            case Direction.PARENT:
+                arrow = "pad-left fa-long-arrow-up"
+                break
+            default:
+                arrow = "fa-arrows-h"
+        }
+        def linkType = new LinkType()
+        linkType.name = type
+        linkType.relationDirection = direction
+        linkType.iconHtml = """
+  <i class="fa ${arrow}" title="${f.translate(direction.name().toLowerCase() + "-plural")}"></i>
+"""
+      def relUuid = rel.getChild("id").getText()
+      def relId = rel.getChild("mdid").getText()
+      def title = rel.getChild("title").getChild("value").getText()
+      def desc = rel.getChild("description").getChild("value").getText()
+      if (title == null || title.isEmpty()) {
+        title = relUuid;
+      }
+
+      def href = createShowMetadataHref(relUuid)
+      def cls = uuid.trim().isEmpty() ? "text-muted" : ''
+
+      def link = new AssociatedLink(href, title, cls)
+      link.setAbstract(desc);
+      link.metadataId = relUuid;
+      link.setLogo(rel.getChildText('logo'));
+
+      hierarchy.put(linkType, link)
+
+      return ['uuid': relUuid, 'id': relId]
+
+    }
+
+    private String createShowMetadataHref(String uuid) {
+        if (uuid.trim().isEmpty()) {
+            return "javascript:alert('" + this.f.translate("noUuidInLink") + "');"
+        } else {
+            return this.env.localizedUrl + "display#/" + URLEncoder.encode(uuid, "UTF-8") + "/formatters/full_view"
+        }
+    }
+
+}
diff --git a/src/main/webapp/WEB-INF/data/data/formatter/groovy/common/Matchers.groovy b/src/main/webapp/WEB-INF/data/data/formatter/groovy/common/Matchers.groovy
new file mode 100644
index 0000000..4d522a1
--- /dev/null
+++ b/src/main/webapp/WEB-INF/data/data/formatter/groovy/common/Matchers.groovy
@@ -0,0 +1,11 @@
+package common
+
+public class Matchers {
+    def handlers;
+    def f
+    def env
+
+    def hasChild(childName) {
+        return { !it.children().find {it.name() == childName}.isEmpty() }
+    }
+}
diff --git a/src/main/webapp/WEB-INF/data/data/formatter/hierarchy_view/config.properties b/src/main/webapp/WEB-INF/data/data/formatter/hierarchy_view/config.properties
new file mode 100644
index 0000000..10e7956
--- /dev/null
+++ b/src/main/webapp/WEB-INF/data/data/formatter/hierarchy_view/config.properties
@@ -0,0 +1 @@
+published=false
\ No newline at end of file
diff --git a/src/main/webapp/WEB-INF/data/data/formatter/hierarchy_view/view.groovy b/src/main/webapp/WEB-INF/data/data/formatter/hierarchy_view/view.groovy
new file mode 100644
index 0000000..750399f
--- /dev/null
+++ b/src/main/webapp/WEB-INF/data/data/formatter/hierarchy_view/view.groovy
@@ -0,0 +1,3 @@
+handlers.add select: ~/.*/, {els ->
+    handlers.fileResult("html/associated.html", ["associated" : new common.Handlers(handlers, f, env).loadHierarchyLinkBlocks()])
+}
\ No newline at end of file
diff --git a/src/main/webapp/WEB-INF/data/data/formatter/html/2-level-entry.html b/src/main/webapp/WEB-INF/data/data/formatter/html/2-level-entry.html
new file mode 100644
index 0000000..0e8e44f
--- /dev/null
+++ b/src/main/webapp/WEB-INF/data/data/formatter/html/2-level-entry.html
@@ -0,0 +1,15 @@
+<div class="entry {{name}}">
+
+  <h3>
+    <button type="button" class="btn btn-default toggler" target="{{'' | generateUUID}}">
+      <i class="fa fa-arrow-circle-down"></i>
+    </button>
+    {{label}}
+  </h3>
+
+  <div id="{{'' | lastUUID}}">
+    <dl class="dl-horizontal">
+      {{childData}}
+    </dl>
+  </div>
+</div>
diff --git a/src/main/webapp/WEB-INF/data/data/formatter/html/associated.html b/src/main/webapp/WEB-INF/data/data/formatter/html/associated.html
new file mode 100644
index 0000000..d414cce
--- /dev/null
+++ b/src/main/webapp/WEB-INF/data/data/formatter/html/associated.html
@@ -0,0 +1,54 @@
+<div fmt-repeat="linkBlock in associated"
+     class="summary-links summary-links-{{linkBlock.name | escapeXmlAttrs}}">
+  <div fmt-if="isPDF">
+    <div fmt-include="html/single-link.html" fmt-include-replace="true"/>
+  </div>
+  <div fmt-if="!isPDF">
+    <h3>
+      <button type="button" class="btn btn-default toggler" target="{{'' | generateUUID}}">
+        <i class="fa fa-arrow-circle-down"></i>
+      </button>
+      <i fmt-if="linkBlock.iconClasses" class="{{linkBlock.iconClasses}} pad-right"></i><span
+      fmt-translate="">{{linkBlock.name | escapeXmlContent}}</span>
+    </h3>
+    <table id="{{'' | lastUUID}}" class="table row">
+      <tr fmt-repeat="link in linkBlock.links" class="row">
+        <td class="col-md-2 link-block-title">
+          <h3>
+            <button type="button" class="btn btn-default toggler" target="{{'' | generateUUID}}">
+              <i class="fa fa-arrow-circle-down"></i>
+            </button>
+            <span fmt-if="link.type.iconHtml" fmt-only-children="true">{{link.type.iconHtml}}</span>
+            <i fmt-if="link.type.iconClasses" class="{{link.type.iconClasses}} pad-right"
+               title="{{link.type.iconTitle | capitalize}}"></i>
+            <img fmt-if="link.type.icon" src="{{link.type.icon}}"
+                 title="{{link.type.iconTitle | capitalize}}" class="icon pad-right"></img>
+            <span fmt-translate="">{{link.type.name}}-link</span>
+          </h3>
+        </td>
+        <td class="col-md-10">
+          <div id="{{'' | lastUUID}}">
+            <div fmt-repeat="link in link.links">
+              <a onclick="gnFormatter.loadAssociated(event, 'div#associated-{{- | generateUUID}}', '{{link.metadataId}}');"
+                 title="{{link.tip}}" class="{{link.cls}} associated-link-a"
+                 target="{{'' | lastUUID}}">{{link.text | escapeXmlContent}}</a>
+              <a href="{{link.href}}" target="_blank" title="{{link.href}}" class="{{link.cls}}">
+                <i class="fa fa-external-link"></i>
+              </a>
+
+              <div id="{{'' | lastUUID}}" style="display: none;" class="associated-link-row">
+                <img class="logo" src="{{link.logo}}" fmt-if="link.logo"/>
+                <h3 class="text-justify" >{{link.tip | capitalize}}</h3>
+                <p class="text-justify" fmt-if="link.abstract">{{link.abstract}}</p>
+
+
+                <div id="associated-{{'' | lastUUID}}"/>
+              </div>
+            </div>
+          </div>
+        </td>
+      </tr>
+      <span fmt-if="linkBlock.html">{{linkBlock.html}}</span>
+    </table>
+  </div>
+</div>
diff --git a/src/main/webapp/WEB-INF/data/data/formatter/html/bbox.html b/src/main/webapp/WEB-INF/data/data/formatter/html/bbox.html
new file mode 100644
index 0000000..b0fa512
--- /dev/null
+++ b/src/main/webapp/WEB-INF/data/data/formatter/html/bbox.html
@@ -0,0 +1,36 @@
+<div fmt-transclude="html/2-level-entry.html" fmt-transclude-model="childData">
+  <div class="thumbnail extent">
+    <span fmt-if="!pdfOutput" fmt-only-children="true">
+      <div class="input-group coord coord-north">
+        <input type="text" class="form-control" value="{{n}}" readonly=""/>
+        <span class="input-group-addon">N</span>
+      </div>
+      <div class="input-group coord coord-south">
+        <input type="text" class="form-control" value="{{s}}" readonly=""/>
+        <span class="input-group-addon">S</span>
+      </div>
+      <div class="input-group coord coord-east">
+        <input type="text" class="form-control" value="{{e}}" readonly=""/>
+        <span class="input-group-addon">E</span>
+      </div>
+      <div class="input-group coord coord-west">
+        <input type="text" class="form-control" value="{{w}}" readonly=""/>
+        <span class="input-group-addon">W</span>
+      </div>
+    </span>
+    <img
+      src="region.getmap.png?mapsrs={{mapconfig.mapproj}}&amp;amp;width={{mapconfig.width}}&amp;amp;background={{mapconfig.background}}&amp;amp;geom=Polygon(({{w}}%20{{n}},{{e}}%20{{n}},{{e}}%20{{s}},{{w}}%20{{s}},{{w}}%20{{n}}))&amp;amp;geomsrs={{geomproj}}"
+      style="min-width:{{minwidth}}px; min-height:{{minheight}}px;"
+      alt=""/>
+    <div fmt-if="pdfOutput">
+      <div>
+        <span class="value">{{n}}</span> <span class="input-group-addon">N</span>
+        <span class="value">{{s}}</span> <span class="input-group-addon">S</span>
+      </div>
+      <div>
+        <span class="value">{{w}}</span> <span class="input-group-addon">W</span>
+        <span class="value">{{e}}</span> <span class="input-group-addon">E</span>
+      </div>
+    </div>
+  </div>
+</div>
diff --git a/src/main/webapp/WEB-INF/data/data/formatter/html/links.html b/src/main/webapp/WEB-INF/data/data/formatter/html/links.html
new file mode 100644
index 0000000..a729d50
--- /dev/null
+++ b/src/main/webapp/WEB-INF/data/data/formatter/html/links.html
@@ -0,0 +1,4 @@
+<div fmt-repeat="linkBlock in links"
+     class="summary-links summary-links-{{linkBlock.name | escapeXmlAttrs}}">
+  <div fmt-include="html/single-link.html" fmt-include-replace="true"/>
+</div>
diff --git a/src/main/webapp/WEB-INF/data/data/formatter/html/list-entry.html b/src/main/webapp/WEB-INF/data/data/formatter/html/list-entry.html
new file mode 100644
index 0000000..05d393d
--- /dev/null
+++ b/src/main/webapp/WEB-INF/data/data/formatter/html/list-entry.html
@@ -0,0 +1,7 @@
+<div fmt-transclude="html/2-level-entry.html" fmt-transclude-model="childData">
+  <ul class="md-value-list">
+    <li fmt-repeat="item in listItems">
+      {{item}}
+    </li>
+  </ul>
+</div>
diff --git a/src/main/webapp/WEB-INF/data/data/formatter/html/single-link.html b/src/main/webapp/WEB-INF/data/data/formatter/html/single-link.html
new file mode 100644
index 0000000..d875140
--- /dev/null
+++ b/src/main/webapp/WEB-INF/data/data/formatter/html/single-link.html
@@ -0,0 +1,31 @@
+<div>
+  <h3>
+    <button type="button" class="btn btn-default toggler" target="{{'' | generateUUID}}">
+      <i class="fa fa-arrow-circle-down"></i>
+    </button>
+    <i fmt-if="linkBlock.iconClasses" class="{{linkBlock.iconClasses}} pad-right"></i><span
+    fmt-translate="">{{linkBlock.name | escapeXmlContent}}</span>
+  </h3>
+  <table id="{{'' | lastUUID}}" class="table row target">
+    <tr fmt-repeat="link in linkBlock.links" class="row">
+      <td class="col-md-2 link-block-title">
+        <span fmt-if="link.type.iconHtml" fmt-only-children="true">{{link.type.iconHtml}}</span>
+        <i fmt-if="link.type.iconClasses" title="{{link.type.iconTitle | capitalize}}"
+           class="{{link.type.iconClasses}} pad-right"></i>
+        <img fmt-if="link.type.icon" src="{{link.type.icon}}"
+             title="{{link.type.iconTitle | capitalize}}" class="icon pad-right"></img>
+        <span fmt-translate="">{{link.type.name}}-link</span>
+      </td>
+      <td class="col-md-10">
+        <div fmt-repeat="link in link.links">
+          <a fmt-if="isPDF" href="{{link.href | escapeXmlAttrs}}" target="_blank"
+             title="{{link.tip | escapeXmlAttrs}}" class="{{link.cls}}">{{link.text |
+            escapeXmlContent}}</a>
+          <a fmt-if="!isPDF" href="{{link.href}}" target="_blank" title="{{link.tip}}"
+             class="{{link.cls}}">{{link.text | escapeXmlContent}}</a>
+        </div>
+      </td>
+    </tr>
+    <span fmt-if="linkBlock.html">{{linkBlock.html}}</span>
+  </table>
+</div>
diff --git a/src/main/webapp/WEB-INF/data/data/formatter/html/text-el.html b/src/main/webapp/WEB-INF/data/data/formatter/html/text-el.html
new file mode 100644
index 0000000..5fc7a2a
--- /dev/null
+++ b/src/main/webapp/WEB-INF/data/data/formatter/html/text-el.html
@@ -0,0 +1,4 @@
+<div fmt-if="text" class="md-text">
+    <dt title="{{label | escapeXmlContent}}">{{label | escapeXmlContent}}</dt>
+    <dd>{{text | escapeXmlContent}}</dd>
+</div>
\ No newline at end of file
diff --git a/src/main/webapp/WEB-INF/data/data/formatter/html/url-el.html b/src/main/webapp/WEB-INF/data/data/formatter/html/url-el.html
new file mode 100644
index 0000000..4a3fa2b
--- /dev/null
+++ b/src/main/webapp/WEB-INF/data/data/formatter/html/url-el.html
@@ -0,0 +1,4 @@
+<div fmt-if="text" class="md-text">
+    <dt title="{{label | escapeXmlContent}}">{{label | escapeXmlContent}}</dt>
+    <dd><a href="{{href | escapeXmlAttrs}}" title="{{href | escapeXmlAttrs}}">{{text | escapeXmlContent}}</a></dd>
+</div>
\ No newline at end of file
diff --git a/src/main/webapp/WEB-INF/data/data/formatter/html/view-header.html b/src/main/webapp/WEB-INF/data/data/formatter/html/view-header.html
new file mode 100644
index 0000000..2fc948a
--- /dev/null
+++ b/src/main/webapp/WEB-INF/data/data/formatter/html/view-header.html
@@ -0,0 +1,83 @@
+<div class="container gn-metadata-view gn-metadata-view-groovy">
+  <script type="application/javascript" fmt-if="isHTML">
+    //<![CDATA[
+    document.title = "{{pageTitle}}";
+    var headEl = $("head");
+    var iconLink = headEl.children("link[rel='shortcut icon']");
+    if (iconLink.length > 0) {
+      iconLink.attr("href", "{{logo}}");
+    } else {
+      headEl.append("<link rel='shortcut icon' type='image/x-icon' href='{{logo}}'></link>");
+    }
+    //]]>
+  </script>
+  <h1>
+    <img fmt-if="logo" class="logo" src="{{logo | escapeXmlAttrs}}"></img>
+    <i fmt-if="!logo" class="fa fa-arrow-circle-down"></i>
+    <span class="title">{{title | escapeXmlContent}}</span>
+  </h1>
+  <ul fmt-if="!isPDF" class="view-outline nav nav-tabs">
+    <li fmt-if="addOverviewNavItem"><a href="" rel=".overview" fmt-translate="">overview</a></li>
+    <li fmt-if="associated">
+      <a href="" rel=".container > .associated"><span fmt-translate="">associated-link</span>&amp;nbsp;
+        <i class="fa fa-circle-o-notch fa-spin associated-spinner"></i></a>
+    </li>
+    <li fmt-if="addCompleteNavItem"><a fmt-translate="" href=""
+                                       rel=".container > .entry:not(.overview)">complete</a></li>
+    <li fmt-repeat="item in navBar" title="{{item.name | escapeXmlAttrs}}">
+      <a fmt-if="item.href" href="{{item.href | escapeXmlAttrs}}" target="_blank">{{item.abbrName |
+        escapeXmlContent}}</a>
+      <a fmt-if="item.rel" rel="{{item.rel | escapeXmlAttrs}}">{{item.abbrName |
+        escapeXmlContent}}</a>
+    </li>
+    <li fmt-if="showNavOverflow" class="dropdown">
+      <a class="dropdown-toggle" data-toggle="dropdown" title="More information"><i
+        class="fa fa-ellipsis-h"></i><b class="caret"></b></a>
+      <ul class="dropdown-menu">
+        <li fmt-repeat="item in navBarOverflow">
+          <a fmt-if="item.href" href="{{item.href | escapeXmlAttrs}}" target="_blank">{{item.abbrName
+            | escapeXmlContent}}</a>
+          <a fmt-if="item.rel" rel="{{item.rel | escapeXmlAttrs}}">{{item.abbrName |
+            escapeXmlContent}}</a>
+        </li>
+      </ul>
+    </li>
+  </ul>
+  <div class="entry overview" data-fmt-if="!isPDF">
+    <h3>
+      <button type="button" class="btn btn-default toggler" target="{{'' | generateUUID}}">
+        <i class="fa fa-arrow-circle-down"></i>
+      </button>
+      <span fmt-translate="">overview</span>
+    </h3>
+
+    <div id="{{'' | lastUUID}}" class="entry target">
+      <img fmt-if="thumbnail" class="thumbnail" src="{{thumbnail | escapeXmlAttrs}}"></img>
+      <div fmt-if="abstract" class="entry abstract">
+        <h3>
+          <button type="button" class="btn btn-default toggler" target="{{'' | generateUUID}}">
+            <i class="fa fa-arrow-circle-down"></i>
+          </button>
+          <span fmt-translate="">abstract</span>
+        </h3>
+
+        <dd id="{{'' | lastUUID}}" class="target">
+          {{abstract}}
+        </dd>
+      </div>
+      {{keywords}}
+      {{formats}}
+      {{extents}}
+
+      <div fmt-include="html/links.html" fmt-include-replace="true"/>
+    </div>
+  </div>
+
+  {{content}}
+  <div class="entry associated">
+        <span data-fmt-if="isPDF">
+            <div fmt-include="html/links.html" fmt-include-replace="true"/>
+        </span>
+    <div fmt-include="html/associated.html" fmt-include-replace="true"/>
+  </div>
+</div>
diff --git a/src/main/webapp/WEB-INF/data/data/formatter/html/wikitext-el.html b/src/main/webapp/WEB-INF/data/data/formatter/html/wikitext-el.html
new file mode 100644
index 0000000..c2a47b9
--- /dev/null
+++ b/src/main/webapp/WEB-INF/data/data/formatter/html/wikitext-el.html
@@ -0,0 +1,4 @@
+<div fmt-if="text" class="md-text">
+    <dt title="{{label | escapeXmlContent}}">{{label | escapeXmlContent}}</dt>
+    <dd>{{text}}</dd>
+</div>
\ No newline at end of file
diff --git a/src/main/webapp/WEB-INF/data/data/formatter/xml_view/highlight-json-xml.js b/src/main/webapp/WEB-INF/data/data/formatter/xml_view/highlight-json-xml.js
new file mode 100644
index 0000000..543a36d
--- /dev/null
+++ b/src/main/webapp/WEB-INF/data/data/formatter/xml_view/highlight-json-xml.js
@@ -0,0 +1 @@
+var hljs=new function(){function e(e){return e.replace(/&/gm,"&amp;").replace(/</gm,"&lt;").replace(/>/gm,"&gt;")}function t(e){return e.nodeName.toLowerCase()}function n(e,t){var n=e&&e.exec(t);return n&&0==n.index}function r(e){var t=(e.className+" "+(e.parentNode?e.parentNode.className:"")).split(/\s+/);return t=t.map(function(e){return e.replace(/^lang(uage)?-/,"")}),t.filter(function(e){return m(e)||/no(-?)highlight/.test(e)})[0]}function i(e,t){var n={};for(var r in e)n[r]=e[r];if(t)for(var r in t)n[r]=t[r];return n}function a(e){var n=[];return function r(e,i){for(var a=e.firstChild;a;a=a.nextSibling)3==a.nodeType?i+=a.nodeValue.length:1==a.nodeType&&(n.push({event:"start",offset:i,node:a}),i=r(a,i),t(a).match(/br|hr|img|input/)||n.push({event:"stop",offset:i,node:a}));return i}(e,0),n}function s(n,r,i){function a(){return n.length&&r.length?n[0].offset!=r[0].offset?n[0].offset<r[0].offset?n:r:"start"==r[0].event?n:r:n.length?n:r}function s(n){function r(t){return" "+t.nodeName+'="'+e(t.value)+'"'}l+="<"+t(n)+Array.prototype.map.call(n.attributes,r).join("")+">"}function o(e){l+="</"+t(e)+">"}function c(e){("start"==e.event?s:o)(e.node)}for(var u=0,l="",f=[];n.length||r.length;){var h=a();if(l+=e(i.substr(u,h[0].offset-u)),u=h[0].offset,h==n){f.reverse().forEach(o);do c(h.splice(0,1)[0]),h=a();while(h==n&&h.length&&h[0].offset==u);f.reverse().forEach(s)}else"start"==h[0].event?f.push(h[0].node):f.pop(),c(h.splice(0,1)[0])}return l+e(i.substr(u))}function o(e){function t(e){return e&&e.source||e}function n(n,r){return RegExp(t(n),"m"+(e.cI?"i":"")+(r?"g":""))}function r(a,s){if(!a.compiled){if(a.compiled=!0,a.k=a.k||a.bK,a.k){var o={},c=function(t,n){e.cI&&(n=n.toLowerCase()),n.split(" ").forEach(function(e){var n=e.split("|");o[n[0]]=[t,n[1]?Number(n[1]):1]})};"string"==typeof a.k?c("keyword",a.k):Object.keys(a.k).forEach(function(e){c(e,a.k[e])}),a.k=o}a.lR=n(a.l||/\b[A-Za-z0-9_]+\b/,!0),s&&(a.bK&&(a.b="\\b("+a.bK.split(" ").join("|")+")\\b"),a.b||(a.b=/\B|\b/),a.bR=n(a.b),a.e||a.eW||(a.e=/\B|\b/),a.e&&(a.eR=n(a.e)),a.tE=t(a.e)||"",a.eW&&s.tE&&(a.tE+=(a.e?"|":"")+s.tE)),a.i&&(a.iR=n(a.i)),void 0===a.r&&(a.r=1),a.c||(a.c=[]);var u=[];a.c.forEach(function(e){e.v?e.v.forEach(function(t){u.push(i(e,t))}):u.push("self"==e?a:e)}),a.c=u,a.c.forEach(function(e){r(e,a)}),a.starts&&r(a.starts,s);var l=a.c.map(function(e){return e.bK?"\\.?("+e.b+")\\.?":e.b}).concat([a.tE,a.i]).map(t).filter(Boolean);a.t=l.length?n(l.join("|"),!0):{exec:function(){return null}}}}r(e)}function c(t,r,i,a){function s(e,t){for(var r=0;r<t.c.length;r++)if(n(t.c[r].bR,e))return t.c[r]}function l(e,t){return n(e.eR,t)?e:e.eW?l(e.parent,t):void 0}function f(e,t){return!i&&n(t.iR,e)}function h(e,t){var n=x.cI?t[0].toLowerCase():t[0];return e.k.hasOwnProperty(n)&&e.k[n]}function g(e,t,n,r){var i=r?"":N.classPrefix,a='<span class="'+i,s=n?"":"</span>";return a+=e+'">',a+t+s}function p(){if(!w.k)return e(B);var t="",n=0;w.lR.lastIndex=0;for(var r=w.lR.exec(B);r;){t+=e(B.substr(n,r.index-n));var i=h(w,r);i?(y+=i[1],t+=g(i[0],e(r[0]))):t+=e(r[0]),n=w.lR.lastIndex,r=w.lR.exec(B)}return t+e(B.substr(n))}function v(){if(w.sL&&!E[w.sL])return e(B);var t=w.sL?c(w.sL,B,!0,L[w.sL]):u(B);return w.r>0&&(y+=t.r),"continuous"==w.subLanguageMode&&(L[w.sL]=t.top),g(t.language,t.value,!1,!0)}function b(){return void 0!==w.sL?v():p()}function d(t,n){var r=t.cN?g(t.cN,"",!0):"";t.rB?(M+=r,B=""):t.eB?(M+=e(n)+r,B=""):(M+=r,B=n),w=Object.create(t,{parent:{value:w}})}function R(t,n){if(B+=t,void 0===n)return M+=b(),0;var r=s(n,w);if(r)return M+=b(),d(r,n),r.rB?0:n.length;var i=l(w,n);if(i){var a=w;a.rE||a.eE||(B+=n),M+=b();do w.cN&&(M+="</span>"),y+=w.r,w=w.parent;while(w!=i.parent);return a.eE&&(M+=e(n)),B="",i.starts&&d(i.starts,""),a.rE?0:n.length}if(f(n,w))throw new Error('Illegal lexeme "'+n+'" for mode "'+(w.cN||"<unnamed>")+'"');return B+=n,n.length||1}var x=m(t);if(!x)throw new Error('Unknown language: "'+t+'"');o(x);for(var w=a||x,L={},M="",k=w;k!=x;k=k.parent)k.cN&&(M=g(k.cN,"",!0)+M);var B="",y=0;try{for(var C,I,j=0;;){if(w.t.lastIndex=j,C=w.t.exec(r),!C)break;I=R(r.substr(j,C.index-j),C[0]),j=C.index+I}R(r.substr(j));for(var k=w;k.parent;k=k.parent)k.cN&&(M+="</span>");return{r:y,value:M,language:t,top:w}}catch(A){if(-1!=A.message.indexOf("Illegal"))return{r:0,value:e(r)};throw A}}function u(t,n){n=n||N.languages||Object.keys(E);var r={r:0,value:e(t)},i=r;return n.forEach(function(e){if(m(e)){var n=c(e,t,!1);n.language=e,n.r>i.r&&(i=n),n.r>r.r&&(i=r,r=n)}}),i.language&&(r.second_best=i),r}function l(e){return N.tabReplace&&(e=e.replace(/^((<[^>]+>|\t)+)/gm,function(e,t){return t.replace(/\t/g,N.tabReplace)})),N.useBR&&(e=e.replace(/\n/g,"<br>")),e}function f(e,t,n){var r=t?R[t]:n,i=[e.trim()];return e.match(/(\s|^)hljs(\s|$)/)||i.push("hljs"),r&&i.push(r),i.join(" ").trim()}function h(e){var t=r(e);if(!/no(-?)highlight/.test(t)){var n;N.useBR?(n=document.createElementNS("http://www.w3.org/1999/xhtml","div"),n.innerHTML=e.innerHTML.replace(/\n/g,"").replace(/<br[ \/]*>/g,"\n")):n=e;var i=n.textContent,o=t?c(t,i,!0):u(i),h=a(n);if(h.length){var g=document.createElementNS("http://www.w3.org/1999/xhtml","div");g.innerHTML=o.value,o.value=s(h,a(g),i)}o.value=l(o.value),e.innerHTML=o.value,e.className=f(e.className,t,o.language),e.result={language:o.language,re:o.r},o.second_best&&(e.second_best={language:o.second_best.language,re:o.second_best.r})}}function g(e){N=i(N,e)}function p(){if(!p.called){p.called=!0;var e=document.querySelectorAll("pre code");Array.prototype.forEach.call(e,h)}}function v(){addEventListener("DOMContentLoaded",p,!1),addEventListener("load",p,!1)}function b(e,t){var n=E[e]=t(this);n.aliases&&n.aliases.forEach(function(t){R[t]=e})}function d(){return Object.keys(E)}function m(e){return E[e]||E[R[e]]}var N={classPrefix:"hljs-",tabReplace:null,useBR:!1,languages:void 0},E={},R={};this.highlight=c,this.highlightAuto=u,this.fixMarkup=l,this.highlightBlock=h,this.configure=g,this.initHighlighting=p,this.initHighlightingOnLoad=v,this.registerLanguage=b,this.listLanguages=d,this.getLanguage=m,this.inherit=i,this.IR="[a-zA-Z][a-zA-Z0-9_]*",this.UIR="[a-zA-Z_][a-zA-Z0-9_]*",this.NR="\\b\\d+(\\.\\d+)?",this.CNR="(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)",this.BNR="\\b(0b[01]+)",this.RSR="!|!=|!==|%|%=|&|&&|&=|\\*|\\*=|\\+|\\+=|,|-|-=|/=|/|:|;|<<|<<=|<=|<|===|==|=|>>>=|>>=|>=|>>>|>>|>|\\?|\\[|\\{|\\(|\\^|\\^=|\\||\\|=|\\|\\||~",this.BE={b:"\\\\[\\s\\S]",r:0},this.ASM={cN:"string",b:"'",e:"'",i:"\\n",c:[this.BE]},this.QSM={cN:"string",b:'"',e:'"',i:"\\n",c:[this.BE]},this.PWM={b:/\b(a|an|the|are|I|I'm|isn't|don't|doesn't|won't|but|just|should|pretty|simply|enough|gonna|going|wtf|so|such)\b/},this.CLCM={cN:"comment",b:"//",e:"$",c:[this.PWM]},this.CBCM={cN:"comment",b:"/\\*",e:"\\*/",c:[this.PWM]},this.HCM={cN:"comment",b:"#",e:"$",c:[this.PWM]},this.NM={cN:"number",b:this.NR,r:0},this.CNM={cN:"number",b:this.CNR,r:0},this.BNM={cN:"number",b:this.BNR,r:0},this.CSSNM={cN:"number",b:this.NR+"(%|em|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc|px|deg|grad|rad|turn|s|ms|Hz|kHz|dpi|dpcm|dppx)?",r:0},this.RM={cN:"regexp",b:/\//,e:/\/[gimuy]*/,i:/\n/,c:[this.BE,{b:/\[/,e:/\]/,r:0,c:[this.BE]}]},this.TM={cN:"title",b:this.IR,r:0},this.UTM={cN:"title",b:this.UIR,r:0}};hljs.registerLanguage("xml",function(){var t="[A-Za-z0-9\\._:-]+",e={b:/<\?(php)?(?!\w)/,e:/\?>/,sL:"php",subLanguageMode:"continuous"},c={eW:!0,i:/</,r:0,c:[e,{cN:"attribute",b:t,r:0},{b:"=",r:0,c:[{cN:"value",c:[e],v:[{b:/"/,e:/"/},{b:/'/,e:/'/},{b:/[^\s\/>]+/}]}]}]};return{aliases:["html","xhtml","rss","atom","xsl","plist"],cI:!0,c:[{cN:"doctype",b:"<!DOCTYPE",e:">",r:10,c:[{b:"\\[",e:"\\]"}]},{cN:"comment",b:"<!--",e:"-->",r:10},{cN:"cdata",b:"<\\!\\[CDATA\\[",e:"\\]\\]>",r:10},{cN:"tag",b:"<style(?=\\s|>|$)",e:">",k:{title:"style"},c:[c],starts:{e:"</style>",rE:!0,sL:"css"}},{cN:"tag",b:"<script(?=\\s|>|$)",e:">",k:{title:"script"},c:[c],starts:{e:"</script>",rE:!0,sL:"javascript"}},e,{cN:"pi",b:/<\?\w+/,e:/\?>/,r:10},{cN:"tag",b:"</?",e:"/?>",c:[{cN:"title",b:/[^ \/><\n\t]+/,r:0},c]}]}});
\ No newline at end of file
diff --git a/src/main/webapp/WEB-INF/data/data/formatter/xml_view/highlightjs.css b/src/main/webapp/WEB-INF/data/data/formatter/xml_view/highlightjs.css
new file mode 100644
index 0000000..bdaaa35
--- /dev/null
+++ b/src/main/webapp/WEB-INF/data/data/formatter/xml_view/highlightjs.css
@@ -0,0 +1,153 @@
+/*
+
+Original style from softwaremaniacs.org (c) Ivan Sagalaev <Maniac@SoftwareManiacs.Org>
+
+*/
+
+.hljs {
+  display: block;
+  overflow-x: auto;
+  padding: 0.5em;
+  background: #f0f0f0;
+  -webkit-text-size-adjust: none;
+}
+
+.hljs,
+.hljs-subst,
+.hljs-tag .hljs-title,
+.nginx .hljs-title {
+  color: black;
+}
+
+.hljs-string,
+.hljs-title,
+.hljs-constant,
+.hljs-parent,
+.hljs-tag .hljs-value,
+.hljs-rules .hljs-value,
+.hljs-preprocessor,
+.hljs-pragma,
+.haml .hljs-symbol,
+.ruby .hljs-symbol,
+.ruby .hljs-symbol .hljs-string,
+.hljs-template_tag,
+.django .hljs-variable,
+.smalltalk .hljs-class,
+.hljs-addition,
+.hljs-flow,
+.hljs-stream,
+.bash .hljs-variable,
+.apache .hljs-tag,
+.apache .hljs-cbracket,
+.tex .hljs-command,
+.tex .hljs-special,
+.erlang_repl .hljs-function_or_atom,
+.asciidoc .hljs-header,
+.markdown .hljs-header,
+.coffeescript .hljs-attribute {
+  color: #800;
+}
+
+.smartquote,
+.hljs-comment,
+.hljs-annotation,
+.hljs-template_comment,
+.diff .hljs-header,
+.hljs-chunk,
+.asciidoc .hljs-blockquote,
+.markdown .hljs-blockquote {
+  color: #888;
+}
+
+.hljs-number,
+.hljs-date,
+.hljs-regexp,
+.hljs-literal,
+.hljs-hexcolor,
+.smalltalk .hljs-symbol,
+.smalltalk .hljs-char,
+.go .hljs-constant,
+.hljs-change,
+.lasso .hljs-variable,
+.makefile .hljs-variable,
+.asciidoc .hljs-bullet,
+.markdown .hljs-bullet,
+.asciidoc .hljs-link_url,
+.markdown .hljs-link_url {
+  color: #080;
+}
+
+.hljs-label,
+.hljs-javadoc,
+.ruby .hljs-string,
+.hljs-decorator,
+.hljs-filter .hljs-argument,
+.hljs-localvars,
+.hljs-array,
+.hljs-attr_selector,
+.hljs-important,
+.hljs-pseudo,
+.hljs-pi,
+.haml .hljs-bullet,
+.hljs-doctype,
+.hljs-deletion,
+.hljs-envvar,
+.hljs-shebang,
+.apache .hljs-sqbracket,
+.nginx .hljs-built_in,
+.tex .hljs-formula,
+.erlang_repl .hljs-reserved,
+.hljs-prompt,
+.asciidoc .hljs-link_label,
+.markdown .hljs-link_label,
+.vhdl .hljs-attribute,
+.clojure .hljs-attribute,
+.asciidoc .hljs-attribute,
+.lasso .hljs-attribute,
+.coffeescript .hljs-property,
+.hljs-phony {
+  color: #88f;
+}
+
+.hljs-keyword,
+.hljs-id,
+.hljs-title,
+.hljs-built_in,
+.css .hljs-tag,
+.hljs-javadoctag,
+.hljs-phpdoc,
+.hljs-dartdoc,
+.hljs-yardoctag,
+.smalltalk .hljs-class,
+.hljs-winutils,
+.bash .hljs-variable,
+.apache .hljs-tag,
+.hljs-type,
+.hljs-typename,
+.tex .hljs-command,
+.asciidoc .hljs-strong,
+.markdown .hljs-strong,
+.hljs-request,
+.hljs-status {
+  font-weight: bold;
+}
+
+.asciidoc .hljs-emphasis,
+.markdown .hljs-emphasis {
+  font-style: italic;
+}
+
+.nginx .hljs-built_in {
+  font-weight: normal;
+}
+
+.coffeescript .javascript,
+.javascript .xml,
+.lasso .markup,
+.tex .hljs-formula,
+.xml .javascript,
+.xml .vbscript,
+.xml .css,
+.xml .hljs-cdata {
+  opacity: 0.5;
+}
diff --git a/src/main/webapp/WEB-INF/data/data/formatter/xml_view/view.groovy b/src/main/webapp/WEB-INF/data/data/formatter/xml_view/view.groovy
new file mode 100644
index 0000000..4f1e59c
--- /dev/null
+++ b/src/main/webapp/WEB-INF/data/data/formatter/xml_view/view.groovy
@@ -0,0 +1,19 @@
+import groovy.xml.XmlUtil
+
+new common.Handlers(handlers, f, env).addDefaultStartAndEndHandlers()
+
+handlers.add {true} { el ->
+    def out = new StringWriter()
+    new XmlNodePrinter(new PrintWriter(out)).print(new XmlParser().parseText(XmlUtil.serialize(el)))
+    def xmlString = XmlUtil.escapeXml(out.toString())
+    """
+<link rel='stylesheet' href='${env.resourceUrl}highlightjs.css' />
+ <pre>
+  <code class='html'>
+  $xmlString
+  </code>
+ </pre>
+ <script src="${env.resourceUrl}highlight-json-xml.js"></script>
+ <script>hljs.initHighlightingOnLoad();</script>
+"""
+}
\ No newline at end of file
diff --git a/src/main/webapp/WEB-INF/data/data/formatter/xslt/render-functions.xsl b/src/main/webapp/WEB-INF/data/data/formatter/xslt/render-functions.xsl
new file mode 100644
index 0000000..dbe52cb
--- /dev/null
+++ b/src/main/webapp/WEB-INF/data/data/formatter/xslt/render-functions.xsl
@@ -0,0 +1,139 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+                xmlns:xs="http://www.w3.org/2001/XMLSchema"
+                xmlns:util="java:org.fao.geonet.util.XslUtil"
+                xmlns:gn-fn-render="http://geonetwork-opensource.org/xsl/functions/render"
+                version="2.0"
+                exclude-result-prefixes="#all">
+
+
+  <xsl:function name="gn-fn-render:get-schema-strings" as="xs:string">
+    <xsl:param name="strings" as="node()"/>
+    <xsl:param name="key" as="xs:string"/>
+
+    <xsl:variable name="nameInStrings"
+                  select="$strings/*[name() = $key]"/>
+    <xsl:value-of select="if ($nameInStrings != '')
+                          then $nameInStrings
+                          else $key"/>
+  </xsl:function>
+
+  <!-- Render coordinates of bbox and an images of the geometry
+  using the region API -->
+  <xsl:function name="gn-fn-render:bbox">
+    <xsl:param name="west" as="xs:double"/>
+    <xsl:param name="south" as="xs:double"/>
+    <xsl:param name="east" as="xs:double"/>
+    <xsl:param name="north" as="xs:double"/>
+
+    <xsl:variable name="boxGeometry"
+                  select="concat('POLYGON((',
+                  $east, ' ', $south, ',',
+                  $east, ' ', $north, ',',
+                  $west, ' ', $north, ',',
+                  $west, ' ', $south, ',',
+                  $east, ' ', $south, '))')"/>
+    <xsl:variable name="numberFormat" select="'0.00'"/>
+
+    <div class="thumbnail extent"
+         itemprop="spatial"
+         itemscope="itemscope"
+         itemtype="http://schema.org/Place">
+      <span itemprop="geo"
+            itemscope="itemscope"
+            itemtype="http://schema.org/geoShape">
+        <div class="input-group coord coord-north">
+          <input type="text" class="form-control"
+                 value="{format-number($north, $numberFormat)}" readonly=""/>
+          <span class="input-group-addon">N</span>
+        </div>
+        <div class="input-group coord coord-south">
+          <input type="text" class="form-control"
+                 value="{format-number($south, $numberFormat)}" readonly=""/>
+          <span class="input-group-addon">S</span>
+        </div>
+        <div class="input-group coord coord-east">
+          <input type="text" class="form-control"
+                 value="{format-number($east, $numberFormat)}" readonly=""/>
+          <span class="input-group-addon">E</span>
+        </div>
+        <div class="input-group coord coord-west">
+          <input type="text" class="form-control"
+                 value="{format-number($west, $numberFormat)}" readonly=""/>
+          <span class="input-group-addon">W</span>
+        </div>
+        <meta itemprop="box"
+              content="{$south},{$east} {$north},{$west}"/>
+
+      </span>
+      <xsl:copy-of select="gn-fn-render:geometry($boxGeometry)"/>
+    </div>
+  </xsl:function>
+
+
+  <!-- Use region API to display an image -->
+  <xsl:function name="gn-fn-render:geometry">
+    <xsl:param name="geometry" as="xs:string"/>
+
+    <!-- TODO get system config -->
+    <xsl:if test="$geometry">
+      <xsl:variable name="background"
+                    select="util:getSettingValue('region/getmap/background')"/>
+      <xsl:variable name="width"
+                    select="util:getSettingValue('region/getmap/width')"/>
+      <xsl:variable name="mapproj"
+                    select="util:getSettingValue('region/getmap/mapproj')"/>
+
+      <img class="gn-img-extent"
+           src="{$baseUrl}region.getmap.png?mapsrs={if ($mapproj != '')
+                                         then $mapproj
+                                         else 'EPSG:3857'}&amp;width={
+                                         if ($width != '')
+                                         then $width
+                                         else '600'
+                                         }&amp;background={
+                                         if ($background != '')
+                                         then $background
+                                         else 'osm'
+                                         }&amp;geomsrs=EPSG:4326&amp;geom={$geometry}"/>
+    </xsl:if>
+
+  </xsl:function>
+
+  <!-- Template to get metadata title using its uuid.
+         Title is loaded from current language index if available.
+         If not, default title is returned.
+         If failed, return uuid. -->
+  <xsl:function name="gn-fn-render:getMetadataTitle">
+    <xsl:param name="uuid" as="xs:string"/>
+    <xsl:param name="language" as="xs:string"/>
+
+    <xsl:variable name="metadataTitle"
+                  select="util:getIndexField(
+                  $language,
+                  $uuid,
+                  'title',
+                  $language)"/>
+    <xsl:choose>
+      <xsl:when test="$metadataTitle=''">
+        <xsl:variable name="metadataDefaultTitle"
+                      select="util:getIndexField(
+                      $language,
+                      $uuid,
+                      '_defaultTitle',
+                      $language)"/>
+        <xsl:choose>
+          <xsl:when test="$metadataDefaultTitle=''">
+            <xsl:value-of select="$uuid"/>
+          </xsl:when>
+          <xsl:otherwise>
+            <xsl:value-of select="$metadataDefaultTitle"/>
+          </xsl:otherwise>
+        </xsl:choose>
+      </xsl:when>
+      <xsl:otherwise>
+        <xsl:value-of select="$metadataTitle"/>
+      </xsl:otherwise>
+    </xsl:choose>
+  </xsl:function>
+</xsl:stylesheet>
diff --git a/src/main/webapp/WEB-INF/data/data/formatter/xslt/render-layout-fields.xsl b/src/main/webapp/WEB-INF/data/data/formatter/xslt/render-layout-fields.xsl
new file mode 100644
index 0000000..aa47908
--- /dev/null
+++ b/src/main/webapp/WEB-INF/data/data/formatter/xslt/render-layout-fields.xsl
@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+                xmlns:xs="http://www.w3.org/2001/XMLSchema"
+                exclude-result-prefixes="#all"
+                version="2.0">
+
+
+  <!-- This template should be overriden in the
+  schema plugin for other types of layouts. -->
+  <xsl:template mode="render-field" match="*|@*">
+    <xsl:param name="fieldName" select="''" as="xs:string"/>
+    <dl>
+      <dt>
+        <xsl:value-of select="if ($fieldName != '')
+                              then $fieldName
+                              else name(.)"/>
+      </dt>
+      <dd>
+        <xsl:apply-templates mode="render-value"/>
+      </dd>
+    </dl>
+  </xsl:template>
+
+  <xsl:template mode="render-value" match="*|@*">
+    <xsl:value-of select="."/>
+  </xsl:template>
+</xsl:stylesheet>
\ No newline at end of file
diff --git a/src/main/webapp/WEB-INF/data/data/formatter/xslt/render-layout.xsl b/src/main/webapp/WEB-INF/data/data/formatter/xslt/render-layout.xsl
new file mode 100644
index 0000000..fc40b3d
--- /dev/null
+++ b/src/main/webapp/WEB-INF/data/data/formatter/xslt/render-layout.xsl
@@ -0,0 +1,408 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+                xmlns:gn-fn-render="http://geonetwork-opensource.org/xsl/functions/render"
+                xmlns:gn-fn-core="http://geonetwork-opensource.org/xsl/functions/core"
+                xmlns:saxon="http://saxon.sf.net/"
+                extension-element-prefixes="saxon"
+                exclude-result-prefixes="#all"
+                version="2.0">
+
+  <xsl:import href="common/render-html.xsl"/>
+  <xsl:import href="common/functions-core.xsl"/>
+  <xsl:import href="render-variables.xsl"/>
+  <xsl:import href="render-functions.xsl"/>
+  <xsl:import href="render-layout-fields.xsl"/>
+
+  <xsl:output method="html"/>
+
+  <!-- Those templates should be overriden in the schema plugin - start -->
+  <xsl:template mode="getMetadataTitle" match="*"/>
+  <xsl:template mode="getMetadataAbstract" match="*"/>
+  <xsl:template mode="getMetadataHierarchyLevel" match="*"/>
+  <xsl:template mode="getOverviews" match="*"/>
+  <xsl:template mode="getMetadataHeader" match="*"/>
+  <!-- Those templates should be overriden in the schema plugin - end -->
+
+  <!-- Starting point -->
+  <xsl:template match="/">
+    <xsl:choose>
+      <xsl:when test="$root = 'div'">
+        <!-- Render only a DIV with the record details -->
+        <xsl:call-template name="render-record"/>
+      </xsl:when>
+      <xsl:otherwise>
+        <!-- Render complete HTML page -->
+        <xsl:call-template name="render-html">
+          <xsl:with-param name="content">
+            <xsl:call-template name="render-record"/>
+          </xsl:with-param>
+          <xsl:with-param name="title">
+            <xsl:apply-templates mode="getMetadataTitle" select="$metadata"/>
+          </xsl:with-param>
+          <xsl:with-param name="description">
+            <xsl:apply-templates mode="getMetadataAbstract" select="$metadata"/>
+          </xsl:with-param>
+        </xsl:call-template>
+      </xsl:otherwise>
+    </xsl:choose>
+  </xsl:template>
+
+  <xsl:template name="render-record">
+    <div class="container-fluid gn-metadata-view gn-schema-{$schema}">
+
+      <xsl:variable name="type">
+        <xsl:apply-templates mode="getMetadataHierarchyLevel" select="$metadata"/>
+      </xsl:variable>
+
+      <xsl:variable name="title">
+        <xsl:apply-templates mode="getMetadataTitle" select="$metadata"/>
+      </xsl:variable>
+
+
+      <article id="gn-metadata-view-{$metadataId}"
+               class="gn-md-view gn-metadata-display"
+               itemscope="itemscope"
+               itemtype="{gn-fn-core:get-schema-org-class($type)}">
+
+
+
+        <div class="row">
+          <div class="col-md-8">
+
+            <header>
+              <h1 itemprop="name"
+                  itemscope="itemscope"
+                  itemtype="http://schema.org/name">
+                <i class="fa gn-icon-{$type}">&#160;</i>
+                <xsl:value-of select="$title"/>
+              </h1>
+
+              <xsl:apply-templates mode="getMetadataHeader" select="$metadata"/>
+
+              <div gn-related="md"
+                   data-user="user"
+                   data-types="onlines">&#160;</div>
+            </header>
+
+            <div>
+              <xsl:apply-templates mode="render-toc" select="$viewConfig"/>
+              <!-- Tab panes -->
+              <div class="tab-content">
+                <xsl:for-each select="$viewConfig/*">
+                  <xsl:sort select="@formatter-order"
+                            data-type="number"/>
+                  <xsl:apply-templates mode="render-view"
+                                       select="."/>
+                </xsl:for-each>
+              </div>
+            </div>
+          </div>
+          <div class="gn-md-side gn-md-side-advanced col-md-4">
+            <xsl:apply-templates mode="getOverviews" select="$metadata"/>
+
+            <section class="gn-md-side-providedby">
+              <h4>
+                <i class="fa fa-fw fa-cog">&#160;</i>
+                <span><xsl:value-of select="$schemaStrings/providedBy"/></span>
+              </h4>
+              <img class="gn-source-logo"
+                   src="{$nodeUrl}../images/logos/{$source}.png" />
+            </section>
+
+            <section class="gn-md-side-social">
+              <h4>
+                <i class="fa fa-fw fa-share-square-o">&#160;</i>
+                <span><xsl:value-of select="$schemaStrings/shareOnSocialSite"/></span>
+              </h4>
+              <a href="https://twitter.com/share?url={encode-for-uri($nodeUrl)}api%2Frecords%2F{$metadataUuid}"
+                 target="_blank" class="btn btn-default">
+                <i class="fa fa-fw fa-twitter">&#160;</i>
+              </a>
+              <a href="https://plus.google.com/share?url={encode-for-uri($nodeUrl)}api%2Frecords%2F{$metadataUuid}"
+                 target="_blank" class="btn btn-default">
+                <i class="fa fa-fw fa-google-plus">&#160;</i>
+              </a>
+              <a href="https://www.facebook.com/sharer.php?u={encode-for-uri($nodeUrl)}api%2Frecords%2F{$metadataUuid}"
+                 target="_blank" class="btn btn-default">
+                <i class="fa fa-fw fa-facebook">&#160;</i>
+              </a>
+              <a href="http://www.linkedin.com/shareArticle?mini=true&amp;summary=Hydrological Basins in Africa (Sample record, please remove!)&amp;url={encode-for-uri($nodeUrl)}api%2Frecords%2F{$metadataUuid}"
+                 target="_blank" class="btn btn-default">
+                <i class="fa fa-fw fa-linkedin">&#160;</i>
+              </a>
+              <a href="mailto:?subject={$title}&amp;body={encode-for-uri($nodeUrl)}api%2Frecords%2F{$metadataUuid}"
+                 target="_blank" class="btn btn-default">
+                <i class="fa fa-fw fa-envelope-o">&#160;</i>
+              </a>
+            </section>
+
+            <section class="gn-md-side-viewmode">
+              <h4>
+                <i class="fa fa-fw fa-eye">&#160;</i>
+                <span><xsl:value-of select="$schemaStrings/viewMode"/></span>
+              </h4>
+              <xsl:for-each select="$configuration/editor/views/view[not(@disabled)]">
+                <ul>
+                  <li>
+                    <a>
+                      <xsl:attribute name="href">
+                        <xsl:choose>
+                          <xsl:when test="@name = 'xml'">
+                            <xsl:value-of select="concat($nodeUrl, 'api/records/', $metadataUuid, '/formatters/xml')"/>
+                          </xsl:when>
+                          <xsl:otherwise>
+                            <xsl:value-of select="concat($nodeUrl, 'api/records/', $metadataUuid, '/formatters/xsl-view?view=', @name, '&amp;portalLink=', $portalLink)"/>
+                          </xsl:otherwise>
+                        </xsl:choose>
+                      </xsl:attribute>
+                      <xsl:variable name="name" select="@name"/>
+                      <xsl:value-of select="$schemaStrings/*[name(.) = $name]"/>
+                    </a>
+                  </li>
+                </ul>
+              </xsl:for-each>
+            </section>
+
+            <section class="gn-md-side-access">
+              <div class="well text-center">
+                <span itemprop="identifier"
+                    itemscope="itemscope"
+                    itemtype="http://schema.org/identifier" 
+                    class="hidden">
+                  <xsl:value-of select="$metadataUuid"/>
+                </span>
+                <a itemprop="url"
+                   itemscope="itemscope"
+                   itemtype="http://schema.org/url" 
+                   class="btn btn-block btn-primary"
+                   href="{if ($portalLink != '')
+                          then replace($portalLink, '\$\{uuid\}', $metadataUuid)
+                          else concat($nodeUrl, $language, '/catalog.search#/metadata/', $metadataUuid)}">
+                  <i class="fa fa-fw fa-link">&#160;</i>
+                  <xsl:value-of select="$schemaStrings/linkToPortal"/>
+                </a>
+                <xsl:value-of select="$schemaStrings/linkToPortal-help"/>
+              </div>
+            </section>
+
+            <section class="gn-md-side-associated">
+              <h4>
+                <i class="fa fa-fw fa-link">&#160;</i>
+                <span><xsl:value-of select="$schemaStrings/associatedResources"/></span>
+              </h4>
+              <div gn-related="md"
+                   data-user="user"
+                   data-types="parent|children|services|datasets|hassources|sources|fcats|siblings|associated">
+                Not available
+              </div>
+            </section>
+          </div>
+        </div>
+
+        <!--
+        TODO: scrollspy or tabs on header ?
+        <div class="gn-scroll-spy"
+             data-gn-scroll-spy="gn-metadata-view-{$metadataId}"
+             data-watch=""
+             data-filter="div > h3"/>-->
+        <footer>
+
+        </footer>
+      </article>
+      <br/>
+      <br/>
+    </div>
+  </xsl:template>
+
+  <!-- Render list of tabs in the current view -->
+  <xsl:template mode="render-toc" match="view">
+    <xsl:if test="count(tab) > 1">
+      <ul class="view-outline nav nav-tabs nav-tabs-advanced">
+        <xsl:for-each select="tab">
+          <li>
+            <a href="#gn-tab-{@id}">
+              <xsl:value-of select="gn-fn-render:get-schema-strings($schemaStrings, @id)"/>
+            </a>
+          </li>
+        </xsl:for-each>
+      </ul>
+    </xsl:if>
+  </xsl:template>
+
+
+  <!-- Render a tab. Tab id is defined in strings
+  and set the title of the section -->
+  <xsl:template mode="render-view" match="tab">
+    <xsl:variable name="content">
+      <xsl:apply-templates mode="render-view" select="*|@*"/>
+    </xsl:variable>
+
+    <!-- Display a tab only if it contains something -->
+    <xsl:if test="$content != ''">
+      <xsl:variable name="title"
+                    select="gn-fn-render:get-schema-strings($schemaStrings, @id)"/>
+
+      <div id="gn-tab-{@id}" class="tab-pane">
+        <xsl:if test="count(following-sibling::tab) > 0">
+          <h1 class="view-header">
+            <xsl:value-of select="$title"/>
+          </h1>
+        </xsl:if>
+        <xsl:choose>
+          <xsl:when test="normalize-space($content) = ''">
+            No information
+          </xsl:when>
+          <xsl:otherwise>
+            <xsl:copy-of select="$content"/>&#160;
+          </xsl:otherwise>
+        </xsl:choose>
+      </div>
+    </xsl:if>
+  </xsl:template>
+
+
+  <!-- Render sections. 2 types of sections could be
+  defined:
+  1) section with xpath matching an element
+  2) section with name create a set of fields
+  -->
+  <xsl:template mode="render-view"
+                match="section[@xpath]">
+    <div id="gn-view-{generate-id()}" class="gn-tab-content">
+      <xsl:apply-templates mode="render-view" select="@xpath"/>
+    </div>
+  </xsl:template>
+
+
+  <xsl:template mode="render-view"
+                match="section[not(@xpath)]">
+    <div id="gn-section-{generate-id()}" class="gn-tab-content">
+      <xsl:if test="@name">
+        <xsl:variable name="title"
+                      select="gn-fn-render:get-schema-strings($schemaStrings, @name)"/>
+
+        <xsl:element name="h{3 + count(ancestor-or-self::*[name(.) = 'section'])}">
+          <xsl:attribute name="class" select="'view-header'"/>
+          <xsl:value-of select="$title"/>
+        </xsl:element>
+      </xsl:if>
+      <xsl:apply-templates mode="render-view"
+                           select="section|field"/>&#160;
+    </div>
+  </xsl:template>
+
+
+  <!-- Render metadata elements defined by XPath -->
+  <xsl:template mode="render-view"
+                match="field[not(template)]">
+    <xsl:param name="base" select="$metadata"/>
+
+    <!-- Matching nodes -->
+    <xsl:variable name="nodes">
+      <saxon:call-template name="{concat('evaluate-', $schema)}">
+        <xsl:with-param name="base" select="$base"/>
+        <xsl:with-param name="in" select="concat('/../', @xpath)"/>
+      </saxon:call-template>
+    </xsl:variable>
+
+    <xsl:variable name="fieldName">
+      <xsl:if test="@name">
+        <xsl:value-of select="gn-fn-render:get-schema-strings($schemaStrings, @name)"/>
+      </xsl:if>
+    </xsl:variable>
+
+    <xsl:for-each select="$nodes">
+      <xsl:apply-templates mode="render-field">
+        <xsl:with-param name="fieldName" select="$fieldName"/>
+      </xsl:apply-templates>
+    </xsl:for-each>
+  </xsl:template>
+
+
+  <xsl:template mode="render-view"
+                match="field[template]"
+                priority="2">
+    <xsl:param name="base" select="$metadata"/>
+    <xsl:if test="@name">
+      <xsl:variable name="title"
+                    select="gn-fn-render:get-schema-strings($schemaStrings, @name)"/>
+
+      <xsl:element name="h{3 + 1 + count(ancestor-or-self::*[name(.) = 'section'])}">
+        <xsl:attribute name="class" select="'view-header'"/>
+        <xsl:value-of select="$title"/>
+      </xsl:element>
+    </xsl:if>
+
+    <xsl:variable name="fieldXpath"
+                  select="@xpath"/>
+    <xsl:variable name="fields" select="template/values/key"/>
+
+    <xsl:variable name="elements">
+      <saxon:call-template name="{concat('evaluate-', $schema)}">
+        <xsl:with-param name="base" select="$base"/>
+        <xsl:with-param name="in"
+                        select="concat('/../', $fieldXpath)"/>
+      </saxon:call-template>
+    </xsl:variable>
+
+    <!-- Loop on each element matching current field -->
+    <xsl:for-each select="$elements/*">
+      <xsl:variable name="element" select="."/>
+
+      <!-- Loop on each fields -->
+      <xsl:for-each select="$fields">
+        <xsl:variable name="nodes">
+          <saxon:call-template name="{concat('evaluate-', $schema)}">
+            <xsl:with-param name="base" select="$element"/>
+            <xsl:with-param name="in"
+                            select="concat('/./',
+                           replace(@xpath, '/gco:CharacterString', ''))"/>
+          </saxon:call-template>
+        </xsl:variable>
+
+        <xsl:variable name="fieldName">
+          <xsl:if test="@label">
+            <xsl:value-of select="gn-fn-render:get-schema-strings($schemaStrings, @label)"/>
+          </xsl:if>
+        </xsl:variable>
+
+        <xsl:for-each select="$nodes">
+          <xsl:apply-templates mode="render-field">
+            <xsl:with-param name="fieldName" select="$fieldName"/>
+          </xsl:apply-templates>
+        </xsl:for-each>
+      </xsl:for-each>
+    </xsl:for-each>
+  </xsl:template>
+
+  <!-- Render metadata elements defined by XPath -->
+  <xsl:template mode="render-view" match="@xpath">
+    <xsl:param name="base" select="$metadata"/>
+
+    <!-- Matching nodes -->
+    <xsl:variable name="nodes">
+      <saxon:call-template name="{concat('evaluate-', $schema)}">
+        <xsl:with-param name="base" select="$base"/>
+        <xsl:with-param name="in" select="concat('/../', .)"/>
+      </saxon:call-template>
+    </xsl:variable>
+
+    <xsl:variable name="fieldName">
+      <xsl:if test="../@name">
+        <xsl:value-of select="gn-fn-render:get-schema-strings($schemaStrings, ../@name)"/>
+      </xsl:if>
+    </xsl:variable>
+
+    <xsl:for-each select="$nodes">
+      <xsl:apply-templates mode="render-field">
+        <xsl:with-param name="fieldName" select="$fieldName"/>
+      </xsl:apply-templates>
+    </xsl:for-each>
+  </xsl:template>
+
+
+  <!-- Forgot all none matching elements -->
+  <xsl:template mode="render-view" match="*|@*"/>
+  <xsl:template mode="render-field" match="*|@*|text()"/>
+
+</xsl:stylesheet>
diff --git a/src/main/webapp/WEB-INF/data/data/formatter/xslt/render-variables.xsl b/src/main/webapp/WEB-INF/data/data/formatter/xslt/render-variables.xsl
new file mode 100644
index 0000000..ca2106d
--- /dev/null
+++ b/src/main/webapp/WEB-INF/data/data/formatter/xslt/render-variables.xsl
@@ -0,0 +1,69 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+                version="2.0">
+
+  <!-- All URL parameters could be available as params -->
+
+  <!-- Define the view to be rendered as defined in
+  the config-editor.xml file of the schema. -->
+  <xsl:param name="view" select="'default'"/>
+
+  <!-- Choose the type of HTML to return:
+  * html render a full HTML page
+  * div render a div element to be embedded in an existing webpage. -->
+  <xsl:param name="root" select="'html'"/>
+
+  <!-- Define the full portal link. By default, it will link
+  to the catalog.search main page of the catalog. To configure a custom
+  use {{uuid}} to be replaced by the record UUID.
+  eg. http://another.portal.org/${uuid}
+  -->
+  <xsl:param name="portalLink" select="''"/>
+
+
+  <!-- TODO: schema is not part of the XML -->
+  <xsl:variable name="schema"
+                select="/root/info/record/datainfo/schemaid"/>
+  <xsl:variable name="source"
+                select="/root/info/record/sourceinfo/sourceid"/>
+  <xsl:variable name="metadataId"
+                select="/root/info/record/id"/>
+  <xsl:variable name="metadataUuid"
+                select="/root/info/record/uuid"/>
+
+  <xsl:variable name="schemaCodelists">
+    <null/>
+  </xsl:variable>
+
+  <xsl:variable name="metadata"
+                select="/root/undefined"/>
+  <xsl:variable name="language"
+                select="/root/lang/text()"/>
+  <xsl:variable name="baseUrl"
+                select="/root/url"/>
+  <xsl:variable name="nodeUrl"
+                select="/root/gui/nodeUrl"/>
+
+  <!-- Date formating -->
+  <xsl:variable name="dateFormats">
+    <dateTime>
+      <for lang="eng" default="true">[H1]:[m01]:[s01] on [D1] [MNn] [Y]</for>
+      <for lang="fre">[H1]:[m01]:[s01] le [D1] [MNn] [Y]</for>
+    </dateTime>
+    <date>
+      <for lang="eng" default="true">[D1] [MNn] [Y]</for>
+      <for lang="fre">[D1] [MNn] [Y]</for>
+    </date>
+  </xsl:variable>
+
+
+  <xsl:variable name="schemaStrings"
+                select="/root/schemas/*[name() = $schema]/strings"/>
+
+  <!-- Get params from requests parameters or use the first view configured -->
+  <xsl:variable name="viewConfig" select="$configuration/editor/views/view[@name = $view]"/>
+
+  <!-- Flat mode is defined in the first tab of the view -->
+  <xsl:variable name="isFlatMode"
+                select="$viewConfig/tab[1]/@mode = 'flat'"/>
+</xsl:stylesheet>
diff --git a/src/main/webapp/apps_extend/actions.js b/src/main/webapp/apps_extend/actions.js
new file mode 100644
index 0000000..c857943
--- /dev/null
+++ b/src/main/webapp/apps_extend/actions.js
@@ -0,0 +1,3643 @@
+if ( typeof Ext == "undefined" ) Ext = {};
+if ( typeof Ext.menu == "undefined" ) Ext.menu = {};
+if ( typeof Ext.Msg == "undefined" ) Ext.Msg = {};
+if ( typeof Ext.menu.Item == "undefined" ) Ext.menu.Item = {};
+if ( typeof Ext.DomQuery == "undefined" ) Ext.DomQuery = {};
+
+/**
+ * define class Ext.menu.Item
+ */
+Ext.menu.ItemPro = function(config) {
+  angular.extend(this, config);
+};
+angular.extend(Ext.menu.ItemPro.prototype, {
+  items : [],
+  getEl : function(){
+    this.disabled = false;
+    if ( this.el ) return this.el;
+    var me = this;
+    this.el = document.createElement('li');
+    this.el.className = "dropdown-submenu";
+
+    this.anchor = document.createElement('a');
+    $(this.anchor).click(function(){me.handler && me.handler()});
+    $(this.anchor).html(' '+this.text);
+    this.el.appendChild(this.anchor);
+    // iconCls
+    $(this.anchor).prepend($('<i class="'+me.iconCls+'"></i>'));
+
+    if (this.menu.items && this.menu.items.length) {
+      this.submenu = document.createElement('ul');
+      this.submenu.className = "dropdown-menu dropdown-menu-right";
+      this.el.appendChild(this.submenu);
+      this.menu.items.forEach(function(action, index) {
+        //console.log(index, action.getEl());
+        $(action.getEl()).appendTo(me.submenu)
+      })
+    }
+    return this.el;
+  },
+  setText : function(text) {
+    this.text = text;
+    $(this.anchor).html(' '+this.text);
+  },
+  setDisabled : function(bDisabled) {
+    this.disabled = bDisabled || false;
+    if( this.disabled ) $(this.el).attr("disabled", bDisabled).addClass("disabled");
+    else                $(this.el).removeAttr("disabled").removeClass("disabled")
+    //$(this.el).toggleClass("disabled", this.disabled);
+  },
+  show : function(bDisabled) {
+    this.setDisabled(bDisabled);
+    $(this.el).toggle(true);
+    if (this.actionMenu && this.refreshActionMenu) {
+      this.actionMenu.showAt(this.actionMenu.getPosition());
+    }
+    if (this.actionMenu && this.actionMenu.nbActionPro) {
+      this.actionMenu.nbActionPro--;
+      if (this.actionMenu.nbActionPro == 0) {
+        if (this.actionMenu.menu_loading) {
+          this.actionMenu.menu_loading.style.display = "none";
+        }
+      }
+    }
+  },
+  hide : function() {
+    this.setDisabled(true);
+    $(this.el).toggle(false);
+    if (this.actionMenu && this.refreshActionMenu) {
+      this.actionMenu.showAt(this.actionMenu.getPosition());
+    }
+    if (this.actionMenu && this.actionMenu.nbActionPro) {
+      this.actionMenu.nbActionPro--;
+      if (this.actionMenu.nbActionPro == 0) {
+        if (this.actionMenu.menu_loading) {
+          this.actionMenu.menu_loading.style.display = "none";
+        }
+      }
+    }
+  },
+  /**
+   * all instances must implement this function and call this.hide() or
+   * this.show()
+   */
+  setVisibility : function(catalogue) {
+    this.hide();
+  },
+  getTraitement : function(catalogue) {
+    var tabTraitement = [];
+    if (this.menu.items) {
+      this.menu.items.forEach(function(action, index) {
+        if (catalogue.isIdentified() && action.bConnect
+            || !catalogue.isIdentified() && action.bSearch) {
+          if (action.traitement) {
+            if (action.traitement instanceof Array) {
+              tabTraitement = tabTraitement.concat(action.traitement);
+            } else {
+              tabTraitement.push(action.traitement);
+            }
+          }
+        }
+      });
+    }
+    if (catalogue.isIdentified() && this.bConnect
+        || !catalogue.isIdentified() && this.bSearch) {
+      if (this.traitement) {
+        if (this.traitement instanceof Array) {
+          tabTraitement = tabTraitement.concat(this.traitement);
+        } else {
+          tabTraitement.push(this.traitement);
+        }
+      }
+    }
+    return tabTraitement.join("|");
+  },
+  setAttr : function(attr, val) {
+    this[attr] = val;
+    if (this.menu.items) {
+      this.menu.items.forEach(function(action, index) {
+            action[attr] = val;
+            action.setHandler(action.handler, action);
+          });
+    }
+  },
+  setHandler : function(handler, scope){
+    this.handler = function(){handler.call(scope||this)};
+  }
+});
+
+/**
+ * define class Ext.ActionPro
+ */
+Ext.ActionPro = function(config) {
+  angular.extend(this, config);
+};
+angular.extend(Ext.ActionPro.prototype, {
+  items : [],
+  getEl : function(){
+    this.disabled = false;
+    if ( this.el ) return this.el;
+    var me = this;
+    this.el = document.createElement('li');
+    this.anchor = document.createElement('a');
+    $(this.anchor).click(function(){me.handler()});
+    $(this.anchor).html(' '+this.text);
+    this.el.appendChild(this.anchor);
+    // iconCls
+    $(this.anchor).prepend($('<i class="'+me.iconCls+'"></i>'));
+    return this.el;
+  },
+  setText : function(text) {
+    this.text = text;
+    $(this.anchor).html(' '+this.text);
+  },
+  setDisabled : function(bDisabled) {
+    this.disabled = bDisabled || false;
+    if( this.disabled ) $(this.el).attr("disabled", bDisabled).addClass("disabled");
+    else                $(this.el).removeAttr("disabled").removeClass("disabled")
+    //$(this.el).toggleClass("disabled", this.disabled);
+  },
+  show : function(bDisabled) {
+    this.setDisabled(bDisabled);
+    $(this.el).toggle(true);
+    if (this.actionMenu && this.refreshActionMenu) {
+      this.actionMenu.showAt(this.actionMenu.getPosition());
+    }
+    this.resetToolTip();
+    if (this.actionMenu && this.actionMenu.nbActionPro) {
+      this.actionMenu.nbActionPro--;
+      if (this.actionMenu.nbActionPro == 0) {
+        if (this.actionMenu.menu_loading) {
+          this.actionMenu.menu_loading.style.display = "none";
+        }
+      }
+    }
+  },
+  hide : function() {
+    this.setDisabled(true);
+    $(this.el).toggle(false);
+    if (this.actionMenu && this.refreshActionMenu) {
+      this.actionMenu.showAt(this.actionMenu.getPosition());
+    }
+    if (this.actionMenu && this.actionMenu.nbActionPro) {
+      this.actionMenu.nbActionPro--;
+      if (this.actionMenu.nbActionPro == 0) {
+        if (this.actionMenu.menu_loading) {
+          this.actionMenu.menu_loading.style.display = "none";
+        }
+      }
+    }
+  },
+  /**
+   * all instances must implement this function and call this.hide() or
+   * this.show()
+   */
+  setVisibility : function(catalogue) {
+    this.hide();
+  },
+  getTraitement : function(catalogue) {
+    if ((catalogue.isIdentified() && this.bConnect)
+        || (!catalogue.isIdentified() && this.bSearch)) {
+      if (this.traitement instanceof Array) {
+        return this.traitement.join("|");
+      } else {
+        return this.traitement;
+      }
+    } else {
+      return "";
+    }
+  },
+  resetToolTip : function() {
+    if (this.oMetadataSelect) {
+      setToolTipToActionSelection(this);
+    } else {
+      setToolTipToAction(this);
+    }
+  },
+  setAttr : function(attr, val) {
+    this[attr] = val;
+  },
+  setHandler : function(handler, scope){
+    this.handler = function(){handler.call(scope||this)};
+  }
+});
+
+/**
+ * set a toolTip to an action
+ */
+function setToolTipToAction(actionPro, toolTip) {
+  actionPro.items.forEach(function(item) {
+    if (item.oToolTip) {
+      item.oToolTip.destroy();
+    }
+    _toolTip = (toolTip ? toolTip : (actionPro.toolTip
+        ? actionPro.toolTip
+        : ""));
+    if (_toolTip) {
+      item.oTolTip = new Ext.ToolTip({
+            target : item.id,
+            title : _toolTip
+          });
+    }
+  });
+}
+
+/**
+ * set a toolTip to an action on selection
+ */
+function setToolTipToActionSelection(actionPro, toolTip) {
+  actionPro.items.forEach(function(item) {
+    if (item.oToolTip) {
+      item.oToolTip.destroy();
+    }
+    _toolTip = (toolTip ? toolTip : (actionPro.toolTip
+        ? actionPro.toolTip
+        : ""));
+    if (_toolTip) {
+      item.oToolTip = new Ext.ToolTip({
+            target : item.id,
+            title : _toolTip,
+            anchor : "anchor"
+          });
+    }
+  });
+}
+
+/**
+ * set metadata actions
+ */
+function setMetadataActions($rootScope, $scope, actionMenu, record, addOnVisible, catalogue) {
+  // add actions only if actionMenu exists
+
+    // set toolTip before showing actions
+//    actionMenu.on("beforeshow", function(menu) {
+//      for (var i = 0; i < actionMenu.tabActionPro.length; i++) {
+//        if (actionMenu.tabActionPro[i].resetToolTip) {
+//          actionMenu.tabActionPro[i].resetToolTip();
+//        }
+//      }
+//      // set toolTip to existing actions
+//      if (actionMenu.viewAction) {
+//        setToolTipToAction(actionMenu.viewAction,
+//            "Consulter la fiche de métadonnée");
+//      }
+//      if (actionMenu.viewXMLAction) {
+//        setToolTipToAction(actionMenu.viewXMLAction,
+//            "Exporter la fiche de métadonnée au format XML");
+//      }
+//      if (actionMenu.viewXMLAction) {
+//        setToolTipToAction(actionMenu.printAction,
+//            "Exporter la fiche de métadonnée au format PDF");
+//      }
+//      if (actionMenu.getMEFAction) {
+//        setToolTipToAction(actionMenu.getMEFAction,
+//            "Exporter la fiche de métadonnée au format ZIP");
+//      }
+//    });
+
+    // show loading
+
+    if ($scope.metadata_uuid==record.get("uuid"))  return;
+
+    $(actionMenu).html('')
+    // add loading
+    $scope.getting_rights = true;
+    $scope.metadata_uuid = record.get("uuid");
+    actionMenu.tabActionPro = [];
+    var index = 0;
+    /**PRODIGE40 : REMOVE
+    // add action "Editer"
+    index++;
+    actionMenu.editNewAction = getEditNewAction(catalogue);
+    actionMenu.insert(index, actionMenu.editNewAction);
+    actionMenu.tabActionPro.push(actionMenu.editNewAction);*/
+    // add action "Editer le catalogue d'attributs"
+    /*index++;
+    actionMenu.catalogueProAction = getCatalogueAction(catalogue);
+    actionMenu.insert(index, actionMenu.catalogueProAction);
+    actionMenu.tabActionPro.push(actionMenu.catalogueProAction);*/
+    // add action "Importer les données"
+    /*index++;
+    actionMenu.insert(index, new Ext.ActionPro({
+        text : "DEVELOPPEMENT : Ext Alert",
+        handler : function(){ Ext.Msg.alert('TODO DEVELOPPEMENT : Ext Alert', "contenu<br>Sur plusieurs lignes <br>Fin.", function(){alert('ok')}) },
+        setVisibility : function(){return true;}
+      })
+    );
+    index++;
+    actionMenu.insert(index, new Ext.ActionPro({
+        text : "DEVELOPPEMENT : Ext Confirm",
+        handler : function(){ Ext.Msg.confirm('TODO DEVELOPPEMENT : Ext Confirm', "contenu<br>Sur plusieurs lignes <br>Fin.", function(){alert('ok')}) },
+        setVisibility : function(){return true;}
+      })
+    );*/
+    // add action "Synchronisation des données SIG"
+    actionMenu.synchronisationAction = getHarvestedSynchronizationAction(catalogue);
+    actionMenu.insert(index, actionMenu.synchronisationAction);
+    actionMenu.tabActionPro.push(actionMenu.synchronisationAction);
+    // aadd action "Importer les données"
+    index++;
+    actionMenu.importDataAction = getImportDataAction(catalogue);
+    actionMenu.insert(index, actionMenu.importDataAction);
+    actionMenu.tabActionPro.push(actionMenu.importDataAction);
+    // add action "Créer une donnée"
+    index++;
+    actionMenu.createStructureAction = getCreateStructureDataAction(catalogue);
+    actionMenu.insert(index, actionMenu.createStructureAction);
+    actionMenu.tabActionPro.push(actionMenu.createStructureAction);
+    // add action "Dupliquer"
+    /*index++;
+    actionMenu.duplicateProAction = getDuplicateProAction(catalogue);
+    actionMenu.insert(index, actionMenu.duplicateProAction);
+    actionMenu.tabActionPro.push(actionMenu.duplicateProAction);*/
+    // add action "Administrer la jointure"
+    index++;
+    actionMenu.adminJoinAction = getAdminJoinAction(catalogue);
+    actionMenu.insert(index, actionMenu.adminJoinAction);
+    actionMenu.tabActionPro.push(actionMenu.adminJoinAction);
+    // add action "Paramétrer la carte"
+    index++;
+    actionMenu.paramCarteAction = getParamCarteAction(catalogue);
+    actionMenu.insert(index, actionMenu.paramCarteAction);
+    actionMenu.tabActionPro.push(actionMenu.paramCarteAction);
+    index++;
+    
+    if(catalogue.PRO_IS_RAWGRAPH_ACTIF=="on"){
+      actionMenu.paramChartAction = getParamChartAction(catalogue);
+      actionMenu.insert(index, actionMenu.paramChartAction);
+      actionMenu.tabActionPro.push(actionMenu.paramChartAction);
+      index++;
+    }
+    
+    // add action "Renommer la carte"
+    /*index++;
+    actionMenu.renameCarteAction = getRenameCarteAction(catalogue);
+    actionMenu.insert(index, actionMenu.renameCarteAction);
+    actionMenu.tabActionPro.push(actionMenu.renameCarteAction);*/
+    // add action "Créer une métadonnée enfant"
+    /*index++;
+    actionMenu.createChildAction = getCreateChildAction(catalogue);
+    actionMenu.insert(index, actionMenu.createChildAction);
+    actionMenu.tabActionPro.push(actionMenu.createChildAction);*/
+    // add action "Représentation par défaut"
+    
+    actionMenu.representationActions = getRepresentationActions(catalogue);
+    actionMenu.insert(index, actionMenu.representationActions);
+    actionMenu.tabActionPro.push(actionMenu.representationActions);
+	
+	  index++;
+    actionMenu.qualiteActions = getQualiteActions(catalogue);
+    actionMenu.insert(index, actionMenu.qualiteActions);
+    actionMenu.tabActionPro.push(actionMenu.qualiteActions);
+	
+    // add sub-menu "Gérer l'accès public"
+    index++;
+    actionMenu.publicAccessActions = getPublicAccessActions(catalogue);
+    actionMenu.insert(index, actionMenu.publicAccessActions);
+    actionMenu.tabActionPro.push(actionMenu.publicAccessActions);
+    // add sub-menu "Modifier le statut"
+    /*index++;
+    actionMenu.updateStatutActions = getUpdateStatutActions(catalogue);
+    actionMenu.insert(index, actionMenu.updateStatutActions);
+    actionMenu.tabActionPro.push(actionMenu.updateStatutActions);*/
+    // add action "Supprimer"
+    // add action "Ajouter au panier"
+    index += 5;
+    actionMenu.addPanierAction = getAddToPanierAction(catalogue);
+    actionMenu.insert(index, actionMenu.addPanierAction);
+    actionMenu.tabActionPro.push(actionMenu.addPanierAction);
+    // add action "Visualiser"
+	
+    index++;
+    actionMenu.visualiserAction = getVisualiserAction(catalogue);
+    actionMenu.insert(index, actionMenu.visualiserAction);
+    actionMenu.tabActionPro.push(actionMenu.visualiserAction);
+	
+	  index++;
+    if(catalogue.PRO_IS_RAWGRAPH_ACTIF=="on"){
+      actionMenu.visualiserChartAction = getVisualiserChartAction(catalogue);
+      actionMenu.insert(index, actionMenu.visualiserChartAction);
+      actionMenu.tabActionPro.push(actionMenu.visualiserChartAction);
+    }
+	
+	
+    // add action "Export PDF complet"
+    index += 5;
+    actionMenu.exportPDFCompletAction = getExportPDFCompletAction(catalogue);
+    actionMenu.insert(index, actionMenu.exportPDFCompletAction);
+    actionMenu.tabActionPro.push(actionMenu.exportPDFCompletAction);
+
+    index++;
+    actionMenu.deleteProAction = getDeleteProAction(catalogue);
+    actionMenu.insert(index, actionMenu.deleteProAction);
+    actionMenu.tabActionPro.push(actionMenu.deleteProAction);
+
+  // set visibility on actions
+  if (actionMenu
+      && (!addOnVisible || addOnVisible
+          && actionMenu.getEl().dom.style.top.substr(0, 1) != "-")) {
+    if (addOnVisible) {
+      actionMenu.showAt(actionMenu.getPosition());
+    }
+    // disable action "Editer"
+    if (actionMenu.editAction) {
+      actionMenu.editAction.hide();
+      actionMenu.editAction.setDisabled(true);
+    }
+    if (actionMenu.extEditorAction) {
+      actionMenu.extEditorAction.hide();
+      actionMenu.extEditorAction.setDisabled(true);
+    }
+    if (actionMenu.angularEditorAction) {
+      actionMenu.angularEditorAction.hide();
+      actionMenu.angularEditorAction.setDisabled(true);
+    }
+    if (actionMenu.editNewAction) {
+      actionMenu.editNewAction.hide();
+      actionMenu.editNewAction.setDisabled(true);
+    }
+    // hide default action "Supprimer"
+    if (actionMenu.deleteAction) {
+      actionMenu.deleteAction.hide();
+      actionMenu.deleteAction.setDisabled(true);
+    }
+    // hide action "Autres actions"
+    if (actionMenu.otherActions) {
+      actionMenu.otherActions.hide();
+      actionMenu.otherActions.setDisabled(true);
+    }
+    if (catalogue.isIdentified()) {
+      // hide action "Zoomer vers"
+      if (actionMenu.zoomToAction) {
+        actionMenu.zoomToAction.hide();
+        actionMenu.zoomToAction.setDisabled(true);
+      }
+    }
+    var tabTraitement = [];
+
+    // init all actions visibility
+    for (var i = 0; i < actionMenu.tabActionPro.length; i++) {
+      actionMenu.tabActionPro[i].setAttr("actionMenu", actionMenu);
+      actionMenu.tabActionPro[i].setAttr("record", record);
+      actionMenu.tabActionPro[i].setAttr("refreshActionMenu", addOnVisible);
+      actionMenu.tabActionPro[i].setVisibility(catalogue, true);
+      var traitements = actionMenu.tabActionPro[i].getTraitement(catalogue);
+      if ( !traitements ) traitements = [];
+      if ( !(traitements instanceof Array) ) traitements = traitements.split("|");
+      traitements.forEach(function(traitement){
+        if ( traitement && tabTraitement.indexOf(traitement)==-1 )
+          tabTraitement.push(traitement);
+      })
+    }
+    // get user rights and show actions
+
+    /**
+     * fonction de verification des droits sur les actions du menu
+     */
+    var verifyRights = function() {
+      if ( $scope.getting_rights ){
+        $.ajax({
+          //crossDomain: true,
+          url : catalogue.routes.catalogue.prodige_verify_rights_url,
+          data : {
+            ID : record.get("id"),
+            OBJET_TYPE : record.get('type'),
+            OBJET_STYPE : ( in_array("chart", record.type) ? "chart" : 
+			    (record.get('type') == "service"
+                && record.get('serviceType') && record.get("isharvested") == "n"
+                ? record.get('serviceType')
+                : "")),
+            TRAITEMENTS : tabTraitement.join("|")
+          },
+          success : function(oResUserRights) {
+            $scope.getting_rights = true /*false*/;
+            $scope.$digest()
+
+            var oRights = (typeof oResUserRights=="string" ? eval("(" + oResUserRights + ")") : oResUserRights);
+            if (actionMenu.editNewAction) {
+              if (typeof oRights["CMS"] != 'undefined' && oRights["CMS"]) {
+                actionMenu.editNewAction.show();
+                actionMenu.editNewAction.setDisabled(false);
+              } else {
+                actionMenu.editNewAction.hide();
+                actionMenu.editNewAction.setDisabled(true);
+              }
+            }
+            actionMenu.nbActionPro = actionMenu.tabActionPro.length;
+  //alert("TODO apps_extend/actions.js/setMetadataActions::ajax => restituer l'action setVisibility" );
+            for (var i = 0; i < actionMenu.tabActionPro.length; i++) {
+              actionMenu.tabActionPro[i].setAttr("oRights", oRights);
+
+              RESTITUER : actionMenu.tabActionPro[i].setVisibility(catalogue);
+
+  //            /*TO DELETE {*/
+  //            if ( actionMenu.tabActionPro[i].action_id == 'catalogue' ){
+  //              actionMenu.tabActionPro[i].setVisibility(catalogue);
+  //            } else {
+  //              actionMenu.tabActionPro[i].show();
+  //              actionMenu.tabActionPro[i].setDisabled(false);
+  //            }
+  //            /*}TO DELETE*/
+            }
+            // hide default action "Supprimer"
+            if (actionMenu.deleteAction) {
+              actionMenu.deleteAction.hide();
+              actionMenu.deleteAction.setDisabled(true);
+            }
+            // hide default action "Supprimer"
+            if (actionMenu.angularEditorAction) {
+              actionMenu.angularEditorAction.hide();
+              actionMenu.angularEditorAction.setDisabled(true);
+            }
+            // hide action "Autres actions"
+            if (actionMenu.otherActions) {
+              actionMenu.otherActions.hide();
+              actionMenu.otherActions.setDisabled(true);
+            }
+
+          },
+          failure : function() {
+            $scope.getting_rights = true /*false*/;
+            console.log("failure");
+          }
+        });
+      }
+    } // end verifyRights
+    $(actionMenu).on('beforeshow', verifyRights);
+    $(actionMenu).trigger('beforeshow');
+
+  }
+}
+
+/**
+ * set metadata actions on selection
+ */
+function setSelectionMetadataActions(actionMenu, topToolBar, catalogue) {
+  if (actionMenu) {
+
+    if (!actionMenu.bProSelectionActionsAdded) {
+
+      actionMenu.on("beforeshow", function(menu) {
+        if (menu.tabSelectionActionPro) {
+          menu.nbActionPro = menu.tabSelectionActionPro.length;
+        }
+        // show loading
+        var menu_selection_loading = document
+            .getElementById('menu_selection_loading_' + menu.getId());
+        if (menu_selection_loading) {
+          menu_selection_loading.style.display = "";
+        } else {
+          // add loading
+          if (menu.getEl()) {
+            var div = document.createElement('div');
+            div.setAttribute('id', 'menu_selection_loading_' + menu.getId());
+            div
+                .setAttribute(
+                    'style',
+                    'position:absolute;top:0;width:100%;height:100%;background-color:rgba(255, 255, 255, 0.5)');
+            var img = document.createElement('img');
+            img.setAttribute('src', catalogue.URL + "/images/spinner.gif");
+            img.setAttribute('style', 'display:block;margin:0 auto');
+            div.appendChild(img);
+            menu.getEl().dom.appendChild(div);
+            menu.menu_loading = div;
+          }
+        }
+        $.ajax({
+              crossDomain: true,
+              url : urlParent + "Services/selectMetadata.php",
+              data : {
+                action : "get",
+                query : catalogue.services.rootUrl
+                    + catalogue.metadataStore.service
+                    + "?"
+                    + GeoNetwork.util.SearchTools.buildQueryFromForm(Ext
+                            .getCmp("searchForm"), catalogue.startRecord,
+                        GeoNetwork.util.SearchTools.sortBy,
+                        catalogue.metadataStore.fast)
+              },
+              success : function(oResMetadataSelect) {
+                var oMetadataSelect = eval("("
+                    + oResMetadataSelect + ")");
+                this.tabSelectionActionPro.forEach(function(action) {
+                  action.setAttr("oMetadataSelect", oMetadataSelect);
+                  action.setVisibility(catalogue);
+                });
+              },
+              scope : this
+            });
+        // set toolTip to existing actions on selection
+        setToolTipToActionSelection(topToolBar.selectionActions[0],
+            "Exporter la sélection au format ZIP");
+        setToolTipToActionSelection(topToolBar.selectionActions[1],
+            "Exporter la sélection au format CSV");
+        setToolTipToActionSelection(topToolBar.selectionActions[2],
+            "Exporter la sélection au format PDF");
+        setToolTipToActionSelection(topToolBar.selectionActions[6],
+            "Affecter une (des) catégorie(s)");
+      });
+
+      actionMenu.tabSelectionActionPro = [];
+      var index = 1;
+      // add action "Ajouter au panier"
+      actionMenu.addSelectionToPanierActionPro = getAddToPanierAction(catalogue);
+      actionMenu.insert(index, actionMenu.addSelectionToPanierActionPro);
+      actionMenu.tabSelectionActionPro.push(actionMenu.addSelectionToPanierActionPro);
+
+      // add action "Modifier le statut"
+      actionMenu.addSelectionUpdateStatutActionsPro = getUpdateStatutActions(catalogue);
+      actionMenu.insert(index, actionMenu.addSelectionUpdateStatutActionsPro);
+      actionMenu.tabSelectionActionPro.push(actionMenu.addSelectionUpdateStatutActionsPro);
+
+      // add action "Supprimer"
+      index++;
+      actionMenu.addSelectionDeleteActionPro = getDeleteProAction(catalogue);
+      actionMenu.insert(index, actionMenu.addSelectionDeleteActionPro);
+      actionMenu.tabSelectionActionPro.push(actionMenu.addSelectionDeleteActionPro);
+
+      // add "Categories"
+      /*index++
+      actionMenu.addSelectionCategoriesActionPro = getCategoriesProAction(catalogue, topToolBar);
+      actionMenu.insert(index, actionMenu.addSelectionCategoriesActionPro);
+      actionMenu.tabSelectionActionPro.push(actionMenu.addSelectionCategoriesActionPro);
+      */
+      // attach actionMenu to action => useful to show/hide loading menu
+      for (var i = 0; i < actionMenu.tabSelectionActionPro.length; i++) {
+        actionMenu.tabSelectionActionPro[i].setAttr("actionMenu", actionMenu);
+      }
+
+   //   actionMenu.fireEvent("beforeshow", actionMenu);
+
+      actionMenu.bProSelectionActionsAdded = true;
+    }
+  }
+}
+
+/**
+ * return action "Importer les données"
+ */
+function getImportDataAction(catalogue) {
+  return new Ext.ActionPro({
+        text : "Importer les données...",
+        iconCls : "fa fa-fw fa-upload",
+        traitement : "CMS",
+        bConnect : true,
+        bSearch : false,
+        handler : function() {
+          if( this.disabled ) return;
+          import_data(catalogue, this.record.get("uuid"));
+        },
+        setVisibility : function(catalogue, bInit) {
+          if (catalogue.isIdentified() && this.bConnect
+              || !catalogue.isIdentified() && this.bSearch) {
+            if (bInit) {
+              this.hide();
+              return;
+            }
+            var sdom_isset = (this.oRights.sdom_dispose_metadata || false);
+            switch (this.record.get('type') ) {
+              case "series" :
+                switch (this.oRights["couche_type"]) {
+                  case "1" : // type "jointure"
+                    this.show();
+                  break;
+                  default : // type "vector"
+                    this.hide();
+                  break;
+                }
+              case "dataset" :
+                switch (this.oRights["couche_type"]) {
+                  case "-4" : // type "jointure"
+                    //this.hide();
+                  //break;
+                  default : // type "données", "majic", "table"
+                    var enable = this.oRights[this.traitement];
+                    //verify rights to edit metadata (creation mode for non harvested data)
+                    /*if(!enable && this.record.get("isharvested")=="n"){
+                      enable = Boolean( this.record["geonet:info"].edit ? this.record["geonet:info"].edit : false ) ;
+                    }*/
+                    this.show( !(sdom_isset && enable));
+                  break;
+                }
+              break;
+              case "nonGeographicDataset" :
+                this.show( !(sdom_isset && this.oRights[this.traitement]));
+              break;
+              default :
+                this.hide();
+              break;
+            }
+          } else {
+            this.hide();
+          }
+        },
+        getTraitement : function(catalogue) {
+          if (catalogue.isIdentified() && this.bConnect
+              || !catalogue.isIdentified() && this.bSearch) {
+            return this.traitement;
+          } else {
+            return "";
+          }
+        }
+      });
+}
+
+/**
+ * return action "Créer la Structure des données"
+ */
+function getCreateStructureDataAction(catalogue) {
+  return new Ext.ActionPro({
+        text : "Créer la structure de données",
+        iconCls : "fa fa-fw fa-edit",
+        traitement : "CMS",
+        bConnect : true,
+        bSearch : false,
+        handler : function() {
+          if( this.disabled ) return;
+          administration_carto_creerStructure(catalogue, this.record.get('id'),
+              this.oRights["layer_table"]||null, window.location.href,
+              this.oRights["color_theme_id"], this.oRights["server_url"]);
+        },
+        setVisibility : function(catalogue, bInit) {
+          if (catalogue.isIdentified() && this.bConnect
+              || !catalogue.isIdentified() && this.bSearch) {
+            if (bInit) {
+              this.hide();
+              return;
+            }
+            switch (this.record.get('type') ) {
+              case "dataset" :
+                switch (this.oRights["couche_type"]) {
+                  case undefined :
+                    if (this.oRights["CMS"] && this.oRights["PRO_EDITION"]){
+                      var enable = this.oRights[this.traitement];
+                      //verify rights to edit metadata (creation mode for non harvested data)
+                      if(!enable && this.record.get("isharvested")=="n"){
+                        enable = this.record["geonet:info"].edit ? this.record["geonet:info"].edit :false ;
+                      }
+                      this.show(!enable);
+                    }else{
+                      this.hide();
+                    }
+                  break;
+				  case "" : // type "donnee"
+                  case "1" : // type "donnee"
+                    this.hide();
+                  break;
+                  default : // type "données", "majic", "table"
+                    this.hide();
+                  break;
+                }
+              break;
+              default :
+                this.hide();
+              break;
+            }
+          } else {
+            this.hide();
+          }
+        },
+        getTraitement : function(catalogue) {
+          if (catalogue.isIdentified() && this.bConnect
+              || !catalogue.isIdentified() && this.bSearch) {
+            return this.traitement;
+          } else {
+            return "";
+          }
+        }
+      });
+}
+
+/**
+ * return action "Affecter une(des) catégorie(s)
+ */
+/*
+function getCategoriesProAction(catalogue, toptoolbar) {
+  return new Ext.ActionPro({
+    text : "Affecter une(des) catégorie(s)",
+    iconCls : "",
+    traitement : ["CMS"],
+    bConnect : true,
+    bSearch : false,
+    handler : function() {
+      if( $(this.el).prop('disabled') ) return;
+      if (this.oMetadataSelect) {
+        var tabMetadataDisallowedName = [];
+        var tabMetadataDisallowed = [];
+        var nbMetadataSelect = this.oMetadataSelect.length;
+        this.oMetadataSelect.forEach(function(metadata) {
+          $.ajax({
+            //crossDomain: true,
+            scope : this,
+            url : catalogue.routes.catalogue.prodige_verify_rights_url,
+            data : {
+              ID : metadata.id,
+              OBJET_TYPE : metadata.type,
+              OBJET_STYPE : (metadata.type == "service" && metadata.serviceType
+                  ? metadata.serviceType
+                  : ""),
+              TRAITEMENTS : this.traitement.join("|")
+            },
+            success : function(oResUserRights) {
+              var oRights = (typeof oResUserRights=="string" ? eval("(" + oResUserRights + ")") : oResUserRights);
+              if (!oRights[this.traitement[0]]) {
+                tabMetadataDisallowed.push(metadata["uuid"]);
+                tabMetadataDisallowedName.push(metadata["title"]);
+              }
+              nbMetadataSelect--;
+              if (nbMetadataSelect == 0) {
+                // On deselectionne les metadonnees dont les droits sont
+                // insuffisants
+                catalogue.metadataSelect('remove', tabMetadataDisallowed);
+                // On affiche la fenetre des categories
+                catalogue.massiveOp('Categories', function() {
+                  var modalWindow = Ext.getCmp("modalWindow");
+                  modalWindow.on("destroy", function() {
+                    catalogue.metadataSelect('add', tabMetadataDisallowed);
+                    var tabMetadataDisallowedLength = tabMetadataDisallowedName.length;
+                    tabMetadataDisallowedName = tabMetadataDisallowedName
+                        .join(", ");
+                    if (tabMetadataDisallowedLength > 0) {
+                      Ext.Msg.alert("Droits insuffisants",
+                          (tabMetadataDisallowedLength == 1
+                              ? "La couche "
+                              : "Les couches ")
+                              + tabMetadataDisallowedName
+                              + (tabMetadataDisallowedLength == 1
+                                  ? " n'a pu être mise "
+                                  : " n'ont pu être mises ")
+                              + "à jour. Droits insuffisants.");
+                    }
+                  });
+                });
+              }
+            }
+          });
+        }, this);
+      }
+    },
+    setVisibility : function(catalogue, bInit) {
+      if ((catalogue.isIdentified() && this.bConnect) || (!catalogue.isIdentified() && this.bSearch)) {
+        this.show(bInit);
+        this.mode = "";
+        if (this.oMetadataSelect) {
+          if (this.oMetadataSelect.length == 0) {
+            this.show(true);
+          } else {
+            this.show();
+          }
+        }
+        if (this.oRights) {
+          var type = this.record.get('type') ;
+          var sub_type = (this.record.get('serviceType') || this.oRights["couche_type"]);
+          this.mode = getMode(type, sub_type);
+        }
+      } else {
+        this.hide();
+      }
+    }
+  });
+}
+*/
+/**
+ * return action "Supprimer"
+ */
+function getDeleteProAction(catalogue) {
+  //var doDelete = function(catalogue, uuid, type) {
+
+    /*switch (type) {
+      case "dataset" :
+        administration_carto_delCouche(oRights["pk_data"], oRights["fmeta_id"],
+            oRights["layer_table"], oRights["couche_type"],
+            oRights["server_url"], title, onSuccess, tabParams);
+      break;
+      case "nonGeographicDataset" :
+        administration_carto_delCoucheMajic(oRights["pk_data"],
+            oRights["fmeta_id"], title, onSuccess, tabParams);
+      break;
+      case "series" :
+        confirm_administration_carto_delDataConfirmed(oRights["pk_data"],
+            oRights["fmeta_id"], 0, title, onSuccess, tabParams);
+      break;
+      case "service" :
+        if (typeof oRights["pk_data"] != 'undefined'
+            && typeof oRights["pk_stockage_carte"] != 'undefined') {
+          administration_carto_delMap(oRights["pk_data"],
+              oRights["pk_stockage_carte"], oRights["fmeta_id"], title,
+              onSuccess, tabParams);
+        } else {
+          administration_carto_delService(oRights["fmeta_id"], title,
+              onSuccess, tabParams);
+        }
+      break;
+    }*/
+  //}
+  function doSelectionDelete(type, tabMetadataDelete) {
+    if (tabMetadataDelete.length == 0) {
+      Ext.Msg
+          .alert(
+              "Suppression de " + (type == "service" ? "carte" : "couche"),
+              "Vous n'avez pas les droits suffisants pour supprimer les métadonnées sélectionnées.");
+    } else {
+      var doDeleteNext = function(doDelete, tabMetadataDelete) {
+        var metadataDelete = tabMetadataDelete.pop();
+        if (metadataDelete) {
+          doDelete(metadataDelete.metadata.type, metadataDelete.metadata.title,
+              metadataDelete.oRights, doDeleteNext, [doDelete, tabMetadataDelete]);
+        } else {
+          search();
+        }
+      };
+      doDeleteNext(doDelete, tabMetadataDelete);
+    }
+  }
+
+  return new Ext.ActionPro({
+        text : "Supprimer",
+        iconCls : "fa fa-fw fa-trash-o",
+        traitement : "CMS",
+        bConnect : true,
+        bSearch : false,
+        handler : function() {
+          if( this.disabled ) return;
+          if (this.oMetadataSelect) {
+            var nbDel = this.oMetadataSelect.length;
+            var tabMetadataDelete = [];
+            this.oMetadataSelect.forEach(function(metadata) {
+                  $.ajax({
+                        //crossDomain: true,
+                        scope : this,
+                        url : catalogue.routes.catalogue.prodige_verify_rights_url,
+                        data : {
+                          ID : metadata.id,
+                          OBJET_TYPE : metadata.type,
+                          OBJET_STYPE : (metadata.type == "service"
+                              && metadata.serviceType
+                              ? metadata.serviceType
+                              : ""),
+                          TRAITEMENTS : this.traitement
+                        },
+                        success : function(oResUserRights) {
+                          var enable = Boolean( this.record["geonet:info"].edit ? this.record["geonet:info"].edit : false ) ;
+                          var oRights = (typeof oResUserRights=="string" ? eval("(" + oResUserRights + ")") : oResUserRights);
+                          //for metadata not associated to PRODIGE data, take geonetwork rights
+                          if (this.record.get('isharvested')=="n" && (oRights[this.traitement] || enable)) {
+                            tabMetadataDelete.push({
+                                  metadata : metadata,
+                                  oRights : oRights
+                                });
+                          }
+                          nbDel--;
+                          if (nbDel == 0) {
+                            doSelectionDelete(metadata.type, tabMetadataDelete);
+                          }
+                        }
+                      });
+                }, this);
+          } else {
+            //doDelete(this.record.get('type') , this.record.get("title"), this.oRights);
+            deleteData(catalogue, this.record.get("uuid"), this.record.get("type"), this.oRights, this.record);
+          }
+        },
+        setVisibility : function(catalogue, bInit) {
+          if (catalogue.isIdentified() && this.bConnect
+              || !catalogue.isIdentified() && this.bSearch) {
+            if (bInit) {
+              this.show(true);
+              return;
+            }
+            if (this.oMetadataSelect) {
+              if (this.oMetadataSelect.length == 0) {
+                this.show(true);
+              } else {
+                this.show();
+              }
+            } else {
+              //action not visible for directory
+              if(this.record.get('istemplate')=="s" /*|| this.record.get('type')=="featureCatalog"*/){
+                this.hide();
+                return;
+              }
+              var scope = this;
+              var enable = Boolean( this.record["geonet:info"].edit ? this.record["geonet:info"].edit : false ) ;
+              //for metadata not associated to PRODIGE data, take geonetwork rights
+              if (this.record.get('isharvested')=="n" && (this.oRights[this.traitement] || enable)) {
+                //@TODO MIGRATION 4.0 (?? visible si il y a des enfants ??)
+                /*switch (this.record.get('type') ) {
+                  case "series" :
+                    ajaxRelatedMetadata("children", "json", this, this.record, function(oRes) {
+                      if ( !oRes ){scope.show(false);return;}
+                      if ( (oRes.relation instanceof Array ? oRes.relation.length > 0 : oRes.relation["@type"]=="children") )  {
+                        scope.show(true);
+                            } else {
+                        scope.show(false);
+                            }
+                        });
+                  break;
+                  default :
+                    this.show(bInit);
+                  break;
+                }*/
+                this.show(bInit);
+              } else {
+                this.show(true);
+              }
+            }
+          } else {
+            this.hide();
+          }
+        },
+        getTraitement : function(catalogue) {
+          if (catalogue.isIdentified() && this.bConnect
+              || !catalogue.isIdentified() && this.bSearch) {
+            return this.traitement;
+          } else {
+            return "";
+          }
+        }
+      });
+}
+
+/**
+ * return action "Dupliquer"
+ */
+/*
+function getDuplicateProAction(catalogue) {
+  return new Ext.ActionPro({
+        text : "Dupliquer",
+        iconCls : "md-mn-copy",
+        traitement : "CMS",
+        bConnect : true,
+        bSearch : false,
+        handler : function() {
+          if( $(this.el).prop('disabled') ) return;
+          switch (this.record.get('type') ) {
+            case "dataset" :
+            case "nonGeographicDataset" :
+              administration_carto_copyCouche(this.oRights["pk_data"],
+                  this.oRights["fmeta_id"], parent.domaines_getCurentDomaine(),
+                  parent.domaines_getCurentSousDomaine());
+            break;
+            case "service" :
+              administration_carto_copyMap(this.oRights["pk_data"],
+                  this.oRights["pk_stockage_carte"], this.oRights["fmeta_id"]);
+            break;
+          }
+        },
+        setVisibility : function(catalogue, bInit) {
+          if (catalogue.isIdentified() && this.bConnect
+              || !catalogue.isIdentified() && this.bSearch) {
+            switch (this.record.get('type') ) {
+              case "series" :
+                this.hide();
+              break;
+              case "service" :
+                if ( (this.record.get('serviceType') || (this.record.get('serviceType') ? this.record.get('serviceType') : null)) == 'invoke') {
+                  this.show((bInit ? true : !this.oRights[this.traitement]));
+                } else {
+                  this.hide();
+                }
+              break;
+              default :
+                this.show((bInit ? true : !this.oRights[this.traitement]));
+              break;
+            }
+          } else {
+            this.hide();
+          }
+        },
+        getTraitement : function(catalogue) {
+          if (catalogue.isIdentified() && this.bConnect
+              || !catalogue.isIdentified() && this.bSearch) {
+            return this.traitement;
+          } else {
+            return "";
+          }
+        }
+      });
+}*/
+
+/**
+ * return action "Editer" (la fiche de métadonnées)
+ */
+function getEditNewAction(catalogue) {
+/**PRODIGE 40 : remove*/
+return;
+
+  return new Ext.ActionPro({
+        text : "Éditer",
+        iconCls : "fa fa-fw fa-pencil",
+        traitement : "CMS",
+        bConnect : true,
+        bSearch : false,
+        handler : function() {
+          if( this.disabled ) return;
+          var id = this.record.get("id");
+          metadataEdit2(id)
+          // catalogue.editorWindow.setPosition(0, 0);
+        },
+        setVisibility : function(catalogue, bInit) {
+          if (catalogue.isIdentified() && this.bConnect
+              || !catalogue.isIdentified() && this.bSearch) {
+            switch (this.record.get('type') ) {
+              case "dataset" :
+              case "nonGeographicDataset" :
+              case "series" :
+              case "service" :
+                if (bInit) {
+                  this.show(true);
+                  return;
+                }
+                $.ajax({
+                      crossDomain: true,
+                      url : catalogue.services.mdRelation,
+                      data : {
+                        type : "related",
+                        fast : false,
+                        uuid : this.record.get("uuid")
+                      },
+                      success : function(oRes) {
+                        var xmlDoc = oRes.responseXML;
+                        var tabCatalogue = Ext.DomQuery.jsSelect("relations/relation", xmlDoc);
+                        if (tabCatalogue.length > 0) {
+                          this.show(!this.oRights[this.traitement]);
+                        } else {
+                          this.show(!this.oRights[this.traitement]);
+                        }
+                      },
+                      scope : this
+                    });
+              break;
+            }
+          } else {
+            this.hide();
+          }
+        },
+        getTraitement : function(catalogue) {
+          if (catalogue.isIdentified() && this.bConnect
+              || !catalogue.isIdentified() && this.bSearch) {
+            if (this.record.get('type') || this.record.get('type') == "dataset") {
+              return this.traitement;
+            } else {
+              return "";
+            }
+          } else {
+            return "";
+          }
+        }
+      });
+}
+
+/**
+ * return action "Créer/Editer le catalogue d'attributs"
+ */
+/*
+function getCatalogueAction(catalogue) {
+  return new Ext.ActionPro({
+    text : "Créer le catalogue d'attributs",
+    iconCls : "md-mn-edit",
+    traitement : "CMS",
+    action_id : 'catalogue',
+    bConnect : true,
+    bSearch : false,
+    handler : function() {
+      if( $(this.el).prop('disabled') ) return;
+      var me = this;
+      switch (this.record.get('type') ) {
+        case "dataset" :
+          if (this.catalogue_uuid == -1) {
+            // création du catalogue d'attributs
+            $.ajax({
+              crossDomain: true,
+              dataType : 'json',
+              url : 'md.create',
+              data : angular.extend({
+                _content_type : 'json',
+                id : catalogue.id_template_catalogue,
+                template : 'n',
+                child : 'n'
+              }, (this.record.get('groupowner') ? {group : this.record.get('groupowner') } : {fullPrivileges : true, group : 0})),
+              success : function(results) {
+                var catalogue_id = results.id;
+                if ( !results.id ) return;
+                // get UUID du catalogue d'attributs
+                $.ajax({
+                  crossDomain: true,
+                  url : 'q',
+                  data : {
+                    _content_type : 'json',
+                    _id : catalogue_id,
+                    _isTemplate : 'y or n or s',
+                    fast : 'index', from : 1, to : 1
+                  },
+                  success : function(results){
+                    if ( !results.metadata )return;
+                    me.catalogue_uuid = results.metadata['geonet:info'].uuid;
+                    // rattachement en tant que catalogue d'attributs
+                    $.ajax({
+                      crossDomain: true,
+                      url : 'md.processing',
+                      data : {
+                        id : me.record.get("id"),
+                        uuidref : me.catalogue_uuid,
+                        process : "fcats-add"
+                      },
+                      success : function(oRes) {
+                        // édition du catalogue d'attributs
+                        metadataEdit2(me.catalogue_uuid);
+                      }
+                    })
+                  }
+                })
+              }
+            });
+          } else {
+            metadataEdit2(me.catalogue_uuid);
+          }
+        break;
+      }
+    },
+    setVisibility : function(catalogue, bInit) {
+      var me = this;
+      if ((catalogue.isIdentified() && this.bConnect) || (!catalogue.isIdentified() && this.bSearch)) {
+        switch (this.record.get('type') ) {
+          case "dataset" :
+            if (bInit) {
+              this.setText("Créer le catalogue d'attributs");
+              this.show(true);
+              return;
+            }
+
+            ajaxRelatedMetadata("fcat", "xml",
+              this,
+              this.record,
+              function(documentXML) {
+                var tabCatalogue = documentXML.getElementsByTagName('info');
+                if (tabCatalogue.length > 0) {
+                  me.setText("Editer le catalogue d'attributs");
+                  me.show(!me.oRights[me.traitement]);
+                  me.catalogue_uuid = tabCatalogue[0].getElementsByTagName("uuid")[0].innerHTML;
+                } else {
+                  me.setText("Créer le catalogue d'attributs");
+                  me.show(!me.oRights[me.traitement]);
+                  me.catalogue_uuid = -1;
+                }
+              });
+          break;
+          case "nonGeographicDataset" :
+          case "series" :
+          case "service" :
+            this.hide();
+          break;
+        }
+      } else {
+        this.hide();
+      }
+    },
+    getTraitement : function(catalogue) {
+      if ((catalogue.isIdentified() && this.bConnect) || (!catalogue.isIdentified() && this.bSearch)) {
+        if (this.record.get('type') || this.record.get('type') == "dataset") {
+          return this.traitement;
+        } else {
+          return "";
+        }
+      } else {
+        return "";
+      }
+    }
+  });
+}
+*/
+/**
+ * return sub-menu "Représentation par défaut"
+ */
+function getRepresentationActions(catalogue) {
+  var representationParamAction = new Ext.ActionPro({
+        text : "Paramétrer...",
+        iconCls : "fa fa-fw fa-wrench",
+        handler : function() {
+          if( this.disabled ) return;
+          administration_carto_paramCarto(catalogue, this.record.get("uuid"));
+        }
+      });
+
+  var representationInitAction = new Ext.ActionPro({
+    text : "Réinitialiser",
+    iconCls : "fa fa-fw fa-undo",
+    handler : function() {
+      if( this.disabled ) return;
+      reinitParamCarto(catalogue, this.record.get("uuid"));
+    }
+  });
+
+  return new Ext.menu.ItemPro({
+        text : "Représentation par défaut",
+        iconCls : "fa fa-fw fa-globe",
+        traitement : "CMS",
+        bConnect : true,
+        bSearch : false,
+        menu : {
+          items : [representationParamAction, representationInitAction]
+        },
+        setVisibility : function(catalogue, bInit) {
+
+          if (catalogue.isIdentified() && this.bConnect
+              || !catalogue.isIdentified() && this.bSearch) {
+
+            if (bInit || !this.oRights["visualisable"]) {
+              this.hide();
+              return;
+            }
+            switch (this.record.get('type') ) {
+              case "dataset" :
+                switch (this.oRights["couche_type"]) {
+                  case "-3" : // type "table"
+                    this.hide();
+                    this.menu.items.forEach(function(action, index) {
+                          action.hide();
+                        });
+                  break;
+                  default : // other types
+                    this.show(!this.oRights[this.traitement]);
+                    this.menu.items.forEach(function(action, index) {
+                          action.show(!this.oRights[this.traitement]);
+                        }, this);
+                  break;
+                }
+              break;
+              default :
+                this.hide();
+                this.menu.items.forEach(function(action, index) {
+                      action.hide();
+                    });
+              break;
+            }
+          } else {
+            this.hide();
+          }
+        },
+        getTraitement : function(catalogue) {
+          if (catalogue.isIdentified() && this.bConnect
+              || !catalogue.isIdentified() && this.bSearch) {
+            if (this.record.get('type') || this.record.get('type') == "dataset") {
+              return this.traitement;
+            } else {
+              return "";
+            }
+          } else {
+            return "";
+          }
+        }
+      });
+}
+
+/**
+ * Mise en conformité d'un dataset
+ */
+function conformiteQualite(catalogue, uuid){
+	Ext.Msg.confirm(
+              'Module Qualité',
+                "Vous êtes sur le point d'effectuer une mise en conformité de la fiche de métadonnée vis à vis d'uns standard. Cela inscrira cette confomité dans la fiche de métadonnée. Confirmez-vous cette action ?"
+              
+              , function(id, value) {
+                if (id === 'yes') {
+                  $.ajax({
+                    crossDomain: true,
+                    url : catalogue.URL + "/standards/conformite",
+                    data : {
+                      uuid : uuid
+                    },
+                    success : function(oRes) {
+                      if (oRes.success) {                        
+                          Ext.Msg.alert("Succès",
+                              " la mise en conformité a été effectuée.");
+                        } else {
+                          Ext.Msg.alert("Echec", "Impossible d'effectuer la mise en conformité.");
+                      }
+                    },
+					failure : function() {
+					  
+					  console.log("failure");
+					},	
+                    scope : this
+                  });
+                }
+              }, this);
+	
+}
+
+
+/**
+ * Controle qualité d'un dataset
+ */
+function controleQualite(catalogue, uuid){
+	window.open(catalogue.URL +'/standards/qualite/'+uuid);
+}
+/**
+ * return sub-menu "Qualité"
+ */
+function getQualiteActions(catalogue) {
+  var controleQualiteAction = new Ext.ActionPro({
+        text : "Contrôle qualité",
+        iconCls : "fa fa-fw fa-list-alt",
+        handler : function() {
+          if( this.disabled ) return;
+          controleQualite(catalogue, this.record.get("uuid"));
+        }
+      });
+
+  var conformiteAction = new Ext.ActionPro({
+    text : "Mise en conformité vis d'un standard",
+    iconCls : "fa fa-fw fa-check",
+    handler : function() {
+      if( this.disabled ) return;
+      conformiteQualite(catalogue, this.record.get("uuid"));
+    }
+  });
+
+  return new Ext.menu.ItemPro({
+        text : "Qualité",
+        iconCls : "fa fa-fw fa-thumbs-up",
+        traitement : "CMS",
+        bConnect : true,
+        bSearch : false,
+        menu : {
+          items : [controleQualiteAction, conformiteAction]
+        },
+        setVisibility : function(catalogue, bInit) {
+
+          if (catalogue.isIdentified() && this.bConnect
+              || !catalogue.isIdentified() && this.bSearch) {
+
+            if (bInit || !this.oRights["visualisable"] || this.oRights["PRO_MODULE_STANDARDS"]!="on") {
+              this.hide();
+              return;
+            }
+            switch (this.record.get('type') ) {
+              case "dataset" :
+              case "series" :
+                this.show(!this.oRights[this.traitement]);
+                    this.menu.items.forEach(function(action, index) {
+                          action.show(!this.oRights[this.traitement]);
+                        }, this);
+              break;
+              default :
+                this.hide();
+                this.menu.items.forEach(function(action, index) {
+                      action.hide();
+                    });
+              break;
+            }
+          } else {
+            this.hide();
+          }
+        },
+        getTraitement : function(catalogue) {
+          if (catalogue.isIdentified() && this.bConnect
+              || !catalogue.isIdentified() && this.bSearch) {
+            if (this.record.get('type') || this.record.get('type') == "dataset") {
+              return this.traitement;
+            } else {
+              return "";
+            }
+          } else {
+            return "";
+          }
+        }
+      });
+}
+
+/**
+ * return action "Créer une métadonnée enfant"
+ */
+function getCreateChildAction(catalogue) {
+  return new Ext.ActionPro({
+        text : "Créer une métadonnée enfant",
+        iconCls : "fa fa-fw fa-sitemap",
+        traitement : "CMS",
+        bConnect : true,
+        bSearch : false,
+        handler : function() {
+          if( this.disabled ) return;
+          administration_carto_addFicheEnfant(this.oRights["fmeta_id"], parent
+                  .domaines_getCurentDomaine(), parent
+                  .domaines_getCurentSousDomaine());
+        },
+        setVisibility : function(catalogue, bInit) {
+          if (catalogue.isIdentified() && this.bConnect
+              || !catalogue.isIdentified() && this.bSearch) {
+            switch (this.record.get('type') ) {
+              case "series" :
+                this.show((bInit ? true : !this.oRights[this.traitement]));
+              break;
+              default :
+                this.hide();
+              break;
+            }
+          } else {
+            this.hide();
+          }
+        },
+        getTraitement : function(catalogue) {
+          if (catalogue.isIdentified() && this.bConnect
+              || !catalogue.isIdentified() && this.bSearch) {
+            if ((this.record.get('type') ) == "series") {
+              return this.traitement;
+            } else {
+              return "";
+            }
+          } else {
+            return "";
+          }
+        }
+      });
+}
+
+/**
+ * return action "Administrer la jointure"
+ */
+function getHarvestedSynchronizationAction(catalogue) {
+  return new Ext.ActionPro({
+        text : "Synchroniser les données",
+        iconCls : "fa fa-fw fa-refresh",
+        traitement : "CMS",
+        bConnect : true,
+        bSearch : false,
+        handler : function() {
+          if( this.disabled ) return;
+          window.open(catalogue.admincartoURL.replace(/\/$/g, '')+'/prodige/synchronisation/admin/'+this.record.get('uuid'));
+        },
+        setVisibility : function(catalogue, bInit) {
+          this.hide();
+          if (catalogue.isIdentified() && this.bConnect 
+          || !catalogue.isIdentified() && this.bSearch
+          ) {
+            if (bInit) {
+              this.hide();
+              return;
+            }
+            var links = this.record.get('links'),
+                hasDataLink = false;
+            links.forEach(function(link){
+              hasDataLink = hasDataLink || (["OGC:WFS","WWW:DOWNLOAD"].indexOf(link.protocol.replace(/^(\w+:\w+).*/, "$1").toUpperCase())!=-1);
+              return !hasDataLink;
+            });
+            if ( (this.record.get('isharvested')=="n" && !this.oRights["SYNCHRONIZE"])
+             ||  this.record.get('type')=="featureCatalog"
+             || !eval(this.record["geonet:info"].edit)
+             || !hasDataLink
+            ) {
+              this.hide();
+            } else {
+              this.show(false)
+            }
+          }
+        },
+        getTraitement : function(catalogue) {
+          if (catalogue.isIdentified() && this.bConnect
+              || !catalogue.isIdentified() && this.bSearch) {
+            if ((this.record.get('type') ) == "dataset") {
+              return this.traitement;
+            } else {
+              return "";
+            }
+          } else {
+            return "";
+          }
+        }
+      });
+}
+
+/**
+ * return action "Administrer la jointure"
+ */
+function getAdminJoinAction(catalogue) {
+  return new Ext.ActionPro({
+        text : "Administrer la jointure",
+        iconCls : "fa fa-fw fa-table",
+        traitement : "CMS",
+        bConnect : true,
+        bSearch : false,
+        handler : function() {
+          if( this.disabled ) return;
+          administration_carto_adminView(this.record.get('id'),
+              this.oRights["pk_data"], this.oRights["layer_table"],
+              window.location.href, this.oRights["color_theme_id"],
+              prodigeConfig.URL);
+        },
+        setVisibility : function(catalogue, bInit) {
+          this.hide();return;
+          if (catalogue.isIdentified() && this.bConnect
+              || !catalogue.isIdentified() && this.bSearch) {
+            if (bInit) {
+              this.hide();
+              return;
+            }
+            switch (this.record.get('type') ) {
+              case "dataset" :
+                switch (this.oRights["couche_type"]) {
+                  case "-4" : // type "jointure"
+                    this.show(!this.oRights[this.traitement]);
+                  break;
+                  default : // other types
+                    this.hide();
+                  break;
+                }
+              break;
+              default :
+                this.hide();
+              break;
+            }
+          } else {
+            this.hide();
+          }
+        },
+        getTraitement : function(catalogue) {
+          if (catalogue.isIdentified() && this.bConnect
+              || !catalogue.isIdentified() && this.bSearch) {
+            if ((this.record.get('type') ) == "dataset") {
+              return this.traitement;
+            } else {
+              return "";
+            }
+          } else {
+            return "";
+          }
+        }
+      });
+}
+/**
+ * return action "Paramétrer la carte"
+ */
+function getParamChartAction(catalogue) {
+  return new Ext.ActionPro({
+        text : "Paramétrer le graphe...",
+        iconCls : "fa fa-fw fa-bar-chart",
+        traitement : "CMS",
+        bConnect : true,
+        bSearch : false,
+        handler : function() {
+          if( this.disabled ) return;
+          window.open(catalogue.URL + "/graph/update?uuid="+ this.record.get("uuid"));
+        },
+        setVisibility : function(catalogue, bInit) {
+          if (catalogue.isIdentified() && this.bConnect
+              || !catalogue.isIdentified() && this.bSearch) {
+            if (bInit) {
+              this.hide();
+              return;
+            }
+            var sdom_isset = (this.oRights.sdom_dispose_metadata || false);
+
+            switch (this.record.get('type') ) {
+              case "service" :
+                if(in_array("chart", this.record.type)){
+                //if ((this.record.get('serviceType')) == "invoke") {
+                  var enable = this.oRights[this.traitement];
+				  
+                  //verify rights to edit metadata (creation mode for non harvested data)
+                  /*if(!enable && this.record.get("isharvested")=="n"){
+                    enable = Boolean( this.record["geonet:info"].edit ? this.record["geonet:info"].edit : false ) ;
+                  }*/
+                  this.show( !(sdom_isset && enable));
+                } else {
+                  this.hide();
+                }
+              break;
+              default :
+                this.hide();
+              break;
+            }
+          } else {
+            this.hide();
+          }
+        },
+        getTraitement : function(catalogue) {
+          if (catalogue.isIdentified() && this.bConnect
+              || !catalogue.isIdentified() && this.bSearch) {
+            if (this.record.get('type') == "service") {
+              return this.traitement;
+            } else {
+              return "";
+            }
+          } else {
+            return "";
+          }
+        }
+      });
+}
+/**
+ * return action "Paramétrer la carte"
+ */
+function getParamCarteAction(catalogue) {
+  return new Ext.ActionPro({
+        text : "Paramétrer la carte...",
+        iconCls : "fa fa-fw fa-globe",
+        traitement : "CMS",
+        bConnect : true,
+        bSearch : false,
+        handler : function() {
+          if( this.disabled ) return;
+          window.open(catalogue.admincartoURL + "/geosource/init_map/"+ this.record.get("uuid"));
+        },
+        setVisibility : function(catalogue, bInit) {
+          if (catalogue.isIdentified() && this.bConnect
+              || !catalogue.isIdentified() && this.bSearch) {
+            if (bInit) {
+              this.hide();
+              return;
+            }
+            var sdom_isset = (this.oRights.sdom_dispose_metadata || false);
+            switch (this.record.get('type') ) {
+              case "service" :
+                if ((this.record.get('serviceType')) == "invoke") {
+                  if(in_array("chart", this.record.type)){
+                     this.hide();
+                  }else{
+                  var enable = this.oRights[this.traitement];
+                  //verify rights to edit metadata (creation mode for non harvested data)
+                  /*if(!enable && this.record.get("isharvested")=="n"){
+                    enable = Boolean( this.record["geonet:info"].edit ? this.record["geonet:info"].edit : false ) ;
+                  }*/
+                  this.show( !(sdom_isset && enable));
+                  }
+                } else {
+                  this.hide();
+                }
+              break;
+              default :
+                this.hide();
+              break;
+            }
+          } else {
+            this.hide();
+          }
+        },
+        getTraitement : function(catalogue) {
+          if (catalogue.isIdentified() && this.bConnect
+              || !catalogue.isIdentified() && this.bSearch) {
+            if (this.record.get('type') == "service") {
+              return this.traitement;
+            } else {
+              return "";
+            }
+          } else {
+            return "";
+          }
+        }
+      });
+}
+
+
+/**
+ * return action "Renommer la carte"
+ */
+function getRenameCarteAction(catalogue) {
+  return new Ext.ActionPro({
+        text : "Renommer la carte...",
+        iconCls : "fa fa-fw fa-terminal",
+        traitement : "CMS",
+        bConnect : true,
+        bSearch : false,
+        handler : function() {
+          if( this.disabled ) return;
+          map_change_name(this.oRights["srv"], this.oRights["path"],
+              this.oRights["pk_stockage_carte"], document.location.href);
+        },
+        setVisibility : function(catalogue, bInit) {
+          if (catalogue.isIdentified() && this.bConnect
+              || !catalogue.isIdentified() && this.bSearch) {
+            if (bInit) {
+              this.hide();
+              return;
+            }
+            switch (this.record.get('type')) {
+              case "service" :
+                if (this.record.get('serviceType')
+                    && this.record.get('serviceType') == "invoke") {
+                  if (this.oRights["carte_type"] == 0) { // carte
+                    // interactive
+                    this.show(!this.oRights[this.traitement]);
+                  } else { // autre carte
+                    this.hide();
+                  }
+                } else {
+                  this.hide();
+                }
+              break;
+              default :
+                this.hide();
+              break;
+            }
+          } else {
+            this.hide();
+          }
+        },
+        getTraitement : function(catalogue) {
+          if (catalogue.isIdentified() && this.bConnect
+              || !catalogue.isIdentified() && this.bSearch) {
+            if (this.record.get('type') == "service") {
+              return this.traitement;
+            } else {
+              return "";
+            }
+          } else {
+            return "";
+          }
+        }
+      });
+}
+
+/**
+ * return sub-menu "Modifier le statut"
+ */
+function getUpdateStatutActions(catalogue) {
+  function getMode(type, sub_type) {
+    var mode = "";
+    switch (type) {
+      case "dataset" :
+        switch (sub_type) {
+          case "1" : // vecteur
+          case "0" : // raster
+          case "-1" : // lot
+            mode = "couche";
+          break;
+          case "-2" : // majic
+            mode = "majic";
+          break;
+          case "-3" : // table
+            mode = "table";
+          break;
+          case "-4" : // vue
+            mode = "vue";
+          break;
+          default :
+            mode = "couche";
+          break;
+        }
+      break;
+      case "service" :
+        mode = "carte"; // enough for service and carte
+      break;
+      default :
+        mode = "couche";
+      break;
+    }
+    return mode;
+  }
+
+  var retirerAction = new Ext.ActionPro({
+    text : "Retirer",
+    iconCls : "fa fa-fw fa-minus",
+    traitement : ["PROPOSITION", "PUBLICATION"],
+    bConnect : true,
+    bSearch : false,
+    handler : function() {
+      if( this.disabled ) return;
+      if (this.oMetadataSelect) {
+        var tabMetadataAllowed = [];
+        var nbMetadataSelect = this.oMetadataSelect.length;
+        this.oMetadataSelect.forEach(function(metadata) {
+              $.ajax({
+                    crossDomain: true,
+                    scope : this,
+                    url : catalogue.routes.catalogue.prodige_verify_rights_url,
+                    data : {
+                      ID : metadata.id,
+                      OBJET_TYPE : metadata.type,
+                      OBJET_STYPE : (metadata.type == "service"
+                          && metadata.serviceType ? metadata.serviceType : ""),
+                      TRAITEMENTS : this.traitement.join("|")
+                    },
+                    success : function(oResUserRights) {
+                      var oRights = (typeof oResUserRights=="string" ? eval("(" + oResUserRights + ")") : oResUserRights);
+                      if (oRights["statut"] == 2 && oRights[this.traitement[0]]
+                          || oRights["statut"] == 3
+                          && oRights[this.traitement[0]]
+                          && oRights[this.traitement[1]]
+                          || oRights["statut"] == 4
+                          && oRights[this.traitement[1]]) {
+                        metadata.statut = oRights["statut"];
+                        tabMetadataAllowed.push(metadata);
+                      }
+                      nbMetadataSelect--;
+                      if (nbMetadataSelect == 0) {
+                        var type = this.oMetadataSelect.type;
+                        var sub_type = (metadata.serviceType
+                            ? metadata.serviceType
+                            : oRights["couche_type"]);
+                        administration_carto_action_changeStatut(
+                            tabMetadataAllowed,
+                            1,
+                            getMode(type, sub_type),
+                            (getUrlParam("modePropositionActif", "off") == "on"),
+                            setMetadataDecoration);
+                      }
+                    }
+                  });
+            }, this);
+      } else {
+        administration_carto_changeStatut(this.oRights["fmeta_id"], this.record
+                .get("title"), 1, this.mode, setMetadataDecoration);
+      }
+    },
+    setVisibility : function(catalogue, bInit) {
+      if ((catalogue.isIdentified() && this.bConnect) || (!catalogue.isIdentified() && this.bSearch)) {
+        if (bInit) {
+          this.hide();
+          return;
+        }
+        if (this.oMetadataSelect) {
+          this.show();
+        } else {
+          switch (this.oRights["statut"]) {
+            case "1" : // en cours
+              this.hide();
+            break;
+            case "2" : // attente validation
+              this.show(!this.oRights[this.traitement[0]]);
+            break;
+            case "3" : // validée
+              this.show(!this.oRights[this.traitement[0]]
+                  && !this.oRights[this.traitement[1]]);
+            break;
+            case "4" : // publiée
+              this.show(!this.oRights[this.traitement[1]]);
+            break;
+            default : // incohérent
+              this.show(true);
+            break;
+          }
+        }
+      } else {
+        this.hide();
+      }
+    }
+  });
+  var proposerAction = new Ext.ActionPro({
+    text : "Proposer",
+    iconCls : "fa fa-fw fa-thumbs-o-up",
+    traitement : ["CMS_MODE_PROPOSITION"],
+    bConnect : true,
+    bSearch : false,
+    handler : function() {
+      if( this.disabled ) return;
+      if (this.oMetadataSelect) {
+        var tabMetadataAllowed = [];
+        var nbMetadataSelect = this.oMetadataSelect.length;
+        this.oMetadataSelect.forEach(function(metadata) {
+              $.ajax({
+                    crossDomain: true,
+                    scope : this,
+                    url : catalogue.routes.catalogue.prodige_verify_rights_url,
+                    data : {
+                      ID : metadata.id,
+                      OBJET_TYPE : metadata.type,
+                      OBJET_STYPE : (metadata.type == "service"
+                          && metadata.serviceType ? metadata.serviceType : ""),
+                      TRAITEMENTS : this.traitement.join("|")
+                    },
+                    success : function(oResUserRights) {
+                      var oRights = (typeof oResUserRights=="string" ? eval("(" + oResUserRights + ")") : oResUserRights);
+                      if (oRights["statut"] == 1 && oRights[this.traitement[0]]) {
+                        metadata.statut = oRights["statut"];
+                        tabMetadataAllowed.push(metadata);
+                      }
+                      nbMetadataSelect--;
+                      if (nbMetadataSelect == 0) {
+                        var type = this.oMetadataSelect.type;
+                        var sub_type = (metadata.serviceType
+                            ? metadata.serviceType
+                            : oRights["couche_type"]);
+                        administration_carto_action_changeStatut(
+                            tabMetadataAllowed,
+                            2,
+                            getMode(type, sub_type),
+                            (getUrlParam("modePropositionActif", "off") == "on"),
+                            setMetadataDecoration);
+                      }
+                    }
+                  });
+            }, this);
+      } else {
+        administration_carto_changeStatut(this.oRights["fmeta_id"], this.record
+                .get("title"), 2, this.mode, setMetadataDecoration);
+      }
+    },
+    setVisibility : function(catalogue, bInit) {
+      if ((catalogue.isIdentified() && this.bConnect) || (!catalogue.isIdentified() && this.bSearch)) {
+        if (bInit) {
+          this.hide();
+          return;
+        }
+        if (this.oMetadataSelect) {
+          if (getUrlParam("modePropositionActif", "off") == "on") {
+            this.show();
+          } else {
+            this.hide();
+          }
+        } else {
+          switch (this.oRights["statut"]) {
+            case "1" : // en cours
+              if (getUrlParam("modePropositionActif", "off") == "on") {
+                this.show(!this.oRights[this.traitement[0]]);
+              } else {
+                this.hide();
+              }
+            break;
+            case "2" : // attente validation
+            case "3" : // validée
+            case "4" : // publiée
+              this.hide();
+            break;
+            default : // incohérent
+              this.show(true);
+            break;
+          }
+        }
+      } else {
+        this.hide();
+      }
+    }
+  });
+  var validerAction = new Ext.ActionPro({
+    text : "Valider",
+    iconCls : "fa fa-fw fa-check",
+    traitement : ["CMS", "PROPOSITION"],
+    bConnect : true,
+    bSearch : false,
+    handler : function() {
+      if( this.disabled ) return;
+      if (this.oMetadataSelect) {
+        var tabMetadataAllowed = [];
+        var nbMetadataSelect = this.oMetadataSelect.length;
+        this.oMetadataSelect.forEach(function(metadata) {
+          $.ajax({
+                crossDomain: true,
+                scope : this,
+                url : catalogue.routes.catalogue.prodige_verify_rights_url,
+                data : {
+                  ID : metadata.id,
+                  OBJET_TYPE : metadata.type,
+                  OBJET_STYPE : (metadata.type == "service"
+                      && metadata.serviceType ? metadata.serviceType : ""),
+                  TRAITEMENTS : this.traitement.join("|")
+                },
+                success : function(oResUserRights) {
+                  var oRights = (typeof oResUserRights=="string" ? eval("(" + oResUserRights + ")") : oResUserRights);
+                  if (oRights["statut"] == 1 && oRights[this.traitement[0]]
+                      || oRights["statut"] == 2 && oRights[this.traitement[1]]) {
+                    metadata.statut = oRights["statut"];
+                    tabMetadataAllowed.push(metadata);
+                  }
+                  nbMetadataSelect--;
+                  if (nbMetadataSelect == 0) {
+                    var type = this.oMetadataSelect.type;
+                    var sub_type = (metadata.serviceType
+                        ? metadata.serviceType
+                        : oRights["couche_type"]);
+                    administration_carto_action_changeStatut(
+                        tabMetadataAllowed, 3, getMode(type, sub_type),
+                        (getUrlParam("modePropositionActif", "off") == "on"),
+                        setMetadataDecoration);
+                  }
+                }
+              });
+        }, this);
+      } else {
+        administration_carto_changeStatut(this.oRights["fmeta_id"], this.record
+                .get("title"), 3, this.mode, setMetadataDecoration);
+      }
+    },
+    setVisibility : function(catalogue, bInit) {
+      if ((catalogue.isIdentified() && this.bConnect) || (!catalogue.isIdentified() && this.bSearch)) {
+        if (bInit) {
+          this.hide();
+          return;
+        }
+        if (this.oMetadataSelect) {
+          this.show();
+        } else {
+          switch (this.oRights["statut"]) {
+            case "1" : // en cours
+              if (getUrlParam("modePropositionActif", "off") == "on") {
+                validerAction.hide();
+              } else {
+                this.show(!this.oRights[this.traitement[0]]);
+              }
+            break;
+            case "2" : // attente validation
+              this.show(!this.oRights[this.traitement[1]]);
+            break;
+            case "3" : // validée
+            case "4" : // publiée
+              this.hide();
+            break;
+            default : // incohérent
+              this.show(true);
+            break;
+          }
+        }
+      } else {
+        this.hide();
+      }
+    }
+  });
+  var publierAction = new Ext.ActionPro({
+    text : "Publier",
+    iconCls : "fa fa-fw fa-flag",
+    traitement : ["PUBLICATION"],
+    bConnect : true,
+    bSearch : false,
+    handler : function() {
+      if( this.disabled ) return;
+      if (this.oMetadataSelect) {
+        var tabMetadataAllowed = [];
+        var nbMetadataSelect = this.oMetadataSelect.length;
+        this.oMetadataSelect.forEach(function(metadata) {
+              $.ajax({
+                    crossDomain: true,
+                    scope : this,
+                    url : catalogue.routes.catalogue.prodige_verify_rights_url,
+                    data : {
+                      ID : metadata.id,
+                      OBJET_TYPE : metadata.type,
+                      OBJET_STYPE : (metadata.type == "service"
+                          && metadata.serviceType ? metadata.serviceType : ""),
+                      TRAITEMENTS : this.traitement.join("|")
+                    },
+                    success : function(oResUserRights) {
+                      var oRights = (typeof oResUserRights=="string" ? eval("(" + oResUserRights + ")") : oResUserRights);
+                      if (oRights["statut"] == 3 && oRights[this.traitement[0]]) {
+                        metadata.statut = oRights["statut"];
+                        tabMetadataAllowed.push(metadata);
+                      }
+                      nbMetadataSelect--;
+                      if (nbMetadataSelect == 0) {
+                        var type = this.oMetadataSelect.type;
+                        var sub_type = (metadata.serviceType
+                            ? metadata.serviceType
+                            : oRights["couche_type"]);
+                        administration_carto_action_changeStatut(
+                            tabMetadataAllowed,
+                            4,
+                            getMode(type, sub_type),
+                            (getUrlParam("modePropositionActif", "off") == "on"),
+                            setMetadataDecoration);
+                      }
+                    }
+                  });
+            }, this);
+      } else {
+        administration_carto_changeStatut(this.oRights["fmeta_id"], this.record
+                .get("title"), 4, this.mode, setMetadataDecoration);
+      }
+    },
+    setVisibility : function(catalogue, bInit) {
+      if ((catalogue.isIdentified() && this.bConnect) || (!catalogue.isIdentified() && this.bSearch)) {
+        if (bInit) {
+          this.hide();
+          return;
+        }
+        if (this.oMetadataSelect) {
+          this.show();
+        } else {
+          switch (this.oRights["statut"]) {
+            case "1" : // en cours
+            case "2" : // attente validation
+              this.hide();
+            break;
+            case "3" : // validée
+              this.show(!this.oRights[this.traitement[0]]);
+            break;
+            case "4" : // publiée
+              this.hide();
+            break;
+            default : // incohérent
+              this.show(true);
+            break;
+          }
+        }
+      } else {
+        this.hide();
+      }
+    }
+  });
+
+  return new Ext.menu.ItemPro({
+        text : "Modifier le statut",
+        iconCls : "fa fa-fw fa-check",
+        bConnect : true,
+        bSearch : false,
+        menu : {
+          items : [proposerAction, validerAction, publierAction, retirerAction]
+        },
+        handler : function() {
+        },
+        setVisibility : function(catalogue, bInit) {
+          if (catalogue.isIdentified() && this.bConnect
+              || !catalogue.isIdentified() && this.bSearch) {
+            this.show(bInit);
+            this.mode = "";
+            if (this.oMetadataSelect) {
+              if (this.oMetadataSelect.length == 0) {
+                this.show(true);
+              } else {
+                this.show();
+              }
+            }
+            if (this.oRights) {
+              var type = this.record.get('type');
+              var sub_type = (this.record.get('serviceType')
+                  && this.record.get('serviceType')
+                  ? this.record.get('serviceType')
+                  : this.oRights["couche_type"]);
+              this.mode = getMode(type, sub_type);
+            }
+            this.menu.items.forEach(function(action) {
+                  action.mode = this.mode;
+                  var old_show = action.show;
+                  action.show = function(bDisabled) {
+                    this.setDisabled(bDisabled);
+                    old_show.call(this);
+                    if (this.actionMenu && this.refreshActionMenu) {
+                      this.actionMenu.showAt(this.actionMenu.getPosition());
+                    }
+                  };
+                  action.setVisibility(catalogue, bInit);
+                }, this);
+          } else {
+            this.hide();
+          }
+        }
+      });
+}
+
+/**
+ * @brief ajoute une couche WMS au serveur
+ * @param pk_couche
+ * @param type_service
+ */
+function administration_carto_webservice(pk_data, type_service, login, pwd, type_data){
+  var   params;
+  var   i;
+  var   param;
+  var   curdom = null;
+  var   cursdom = null;
+  var   url;
+  var   deldata = false;
+
+  params = document.location.search.substr(1).split("&");
+  for (i = 0; i < params.length; i++)
+  {
+    param = params[i].split("=");
+    if (param[0] == "domaine")
+      curdom = param[1];
+    if (param[0] == "sousdomaine")
+      cursdom = param[1];
+  }
+  url = IHM_getBaseUrl();
+  if(type_data == 0) //couche
+    url += "administration_carto_webservices.php?action="+type_service+"&coucheId=" + pk_data+"&login="+login+"&pass="+pwd+"&type_data="+type_data;
+  if(type_data == 1)//carte
+    url += "administration_carto_webservices.php?action="+type_service+"&carteId=" + pk_data+"&login="+login+"&pass="+pwd+"&type_data="+type_data;
+  if (curdom){
+    url += "&domaine=" + escape(curdom);
+    if (cursdom)
+      url += "&sousdomaine=" + escape(cursdom);
+  }
+  if(type_data == 0) //couche
+    window.location = url;
+  if(type_data == 1){
+    var iframe = this;
+    var ajaxUrl = url;
+    var queryParams = {};//{action:"valid",metadataId:metadata_id,statut:statut,mode:mode};
+    iframe.tabParams = null;
+    iframe.onSuccess = function(responseText){
+      var oRes = eval("("+responseText+")");
+      if ( oRes.success ) {
+        //alert("La carte est publié en WMS.");
+        Ext.Msg.alert("Publication WMS", (oRes.enable ? "La carte a été correctement publiée en WMS" : "Le service WMS associé à la carte a été supprimé")) ;
+      } else {
+        Ext.Msg.alert("Echec", oRes.msg);
+      }
+    };
+    AjaxRequest(ajaxUrl, queryParams, iframe);
+  }//carte
+}
+
+/**
+ * return sub-menu "Gérer l'accès public"
+ */
+function getPublicAccessActions(catalogue) {
+  var WMSAction = new Ext.ActionPro({
+        text : "WMS",
+        iconCls : "",
+        traitement : ["CMS"],
+        bConnect : true,
+        bSearch : false,
+        handler : function() {
+          if( this.disabled ) return;
+          var type = (this.oRights["carte_type"] == "0" ? 1 : 0);
+          var del = this.oRights['carte_wms'] != 0;
+          var url = catalogue.URL + "/geosource/wxs/mapAddToWebService/"+this.record.get("uuid")+"?action="+type+"&carteId=" + this.oRights["pk_data"]+"&type_data=1";
+
+          $.ajax({
+            crossDomain: true,
+            url : url,
+            success : function(oRes) {
+              if ( oRes.success ) {
+                //alert("La carte est publié en WMS.");
+                Ext.Msg.alert("Publication WMS", (oRes.enable ? "La carte a été correctement publiée en WMS" : "Le service WMS associé à la carte a été supprimé")) ;
+                this.scope.setState(oRes.enable);
+              } else {
+                Ext.Msg.alert("Echec", oRes.msg);
+              }
+            },
+            scope : this
+          });
+
+        },
+        setVisibility : function(catalogue, bInit) {
+
+          if (catalogue.isIdentified() && this.bConnect
+              || !catalogue.isIdentified() && this.bSearch) {
+            if (bInit) {
+              this.hide();
+              return;
+            }
+            if (!this.oRights["visualisable"]
+                && !(this.oRights["CMS"] && this.oRights["carte_type"] == "0")) {
+              this.hide();
+              return;
+            }
+            switch (this.record.get('type')) {
+              case "service" :
+                switch (this.oRights["carte_type"]) {
+                  case "0" : // carte interactive
+                    this.show(!this.oRights[this.traitement[0]]);
+                    var wms = this.oRights['carte_wms'] == "0" ? 0 : 1;
+                    this.setState(wms);
+                  break;
+                  default :
+                    this.hide();
+                  break;
+                }
+              break;
+
+              case "dataset" :
+                  this.hide();
+              break;
+
+              default :
+                this.hide();
+              break;
+            }
+          } else {
+            this.hide();
+          }
+        },
+        setState : function(bWMS) {
+          this.bWMS = bWMS;
+          if (this.bWMS) {
+            this.setText("WMS : <span style=\"color:green\">oui</span>");
+          } else {
+            this.setText("WMS : <span style=\"color:red\">non</span>");
+          }
+          this.setHandler(this.handler, this);
+        }
+      });/*
+  var WFSAction = new Ext.ActionPro({
+        text : "WFS",
+        iconCls : "",
+        traitement : ["CMS"],
+        bConnect : true,
+        bSearch : false,
+        handler : function() {
+          if( $(this.el).prop('disabled') ) return;
+
+
+          administration_carto_webservice(this.oRights["pk_data"], 'wfs',
+              this.oRights["login"], this.oRights["pwd"], 0);
+        },
+        setVisibility : function(catalogue, bInit) {
+          if (catalogue.isIdentified() && this.bConnect
+              || !catalogue.isIdentified() && this.bSearch) {
+            if (bInit || !this.oRights["visualisable"]) {
+              this.hide();
+              return;
+            }
+            switch (this.record.get('type')) {
+              case "dataset" :
+                switch (this.oRights["couche_type"]) {
+                  case "1" : // type "vecteur"
+                  case "0" : // type "raster"
+                  case "-4" : // type "jointure"
+                    this.show(!this.oRights[this.traitement[0]]);
+                  break;
+                  case "-3" : // type "tabulaire"
+                    this.hide();
+                  break;
+                  default :
+                    this.hide();
+                  break;
+                }
+              break;
+              default :
+                this.hide();
+              break;
+            }
+            this.setState(this.oRights['wfs']);
+          } else {
+            this.hide();
+          }
+        },
+        setState : function(bWFS) {
+          this.bWFS = bWFS;
+          if (this.bWFS) {
+            this.setText("WFS : <span style=\"color:green\">oui</span>");
+          } else {
+            this.setText("WFS : <span style=\"color:red\">non</span>");
+          }
+          this.setHandler(this.handler, this);
+        }
+      });*/
+  var downloadAction = new Ext.ActionPro({
+    text : "En Téléchargement libre",
+    iconCls : "",
+    traitement : ["CMS"],
+    bConnect : true,
+    bSearch : false,
+    handler : function() {
+
+      if( this.disabled ) return;
+      Ext.Msg.confirm(
+              'Téléchargement libre',
+              (this.bDownload ?
+                "Vous êtes sur le point de désactiver le téléchargement libre pour cette métadonnée, souhaitez-vous continuer ?"
+              :
+                (this.record.get("type") == "series"
+                  ? "Attention, la publication d'un ensemble de séries de données en téléchargement libre donne accès aux données enfant quel que soit le niveau de publication de celles-ci, souhaitez-vous continuer ?"
+                  : "Attention, la publication d'une série de données en téléchargement libre donne accès aux données quels que soient les droits appliqués par ailleurs, souhaitez-vous continuer ?"
+                )
+              )
+              , function(id, value) {
+                if (id === 'yes') {
+                  $.ajax({
+                    crossDomain: true,
+                    url : catalogue.URL + "/geosource/setMetaDataDownload",//urlParent + "Services/setMetadataDownload.php",
+                    data : {
+                      metadata_id : this.record.get("id"),
+                      type : this.record.get("type"),
+                      mode : (this.bDownload ? "remove" : "add")
+                    },
+                    success : function(oRes) {
+                      if (oRes.update_success) {
+
+                        this.scope.setState(!this.scope.bDownload);
+                          Ext.Msg.alert("Succès",
+                              "Le téléchargement libre a été "
+                                  + (this.scope.bDownload ? "activé" : "désactivé")
+                                  + " correctement.");
+                        } else {
+                        this.scope.setState(this.scope.bDownload);
+                        Ext.Msg.alert("Echec", "Impossible "
+                                + (this.scope.bDownload
+                                    ? "de désactiver"
+                                    : "d'activer")
+                                + " le téléchargement libre.");
+                      }
+                    },
+                    scope : this
+                  });
+                }
+              }, this);
+
+    },
+    setVisibility : function(catalogue, bInit) {
+      if ((catalogue.isIdentified() && this.bConnect) || (!catalogue.isIdentified() && this.bSearch)) {
+        if (bInit) {
+          this.hide();
+          return;
+        }
+
+        switch (this.record.get('type')) {
+          case "dataset" :
+		      case "nonGeographicDataset":
+            switch (this.oRights["couche_type"]) {
+              case "1" : // type "vecteur"
+                if (this.oRights["visualisable"]){
+                  this.show(!this.oRights[this.traitement[0]]);
+                }else {
+                  this.hide();
+                  return;
+                }
+                
+              case "0" : // type "raster"
+              case "-4" : // type "jointure"
+              case "-3" : // type "tabulaire"
+                this.show(!this.oRights[this.traitement[0]]);
+              break;
+              default :
+                this.hide();
+                return;
+              break;
+            }
+          break;
+          // type ensemble (ajout BF, prodige 3.4)
+          case "series" :
+            switch (this.oRights["couche_type"]) {
+              case "-1" :
+                this.show(!this.oRights[this.traitement[0]]);
+              break;
+            }
+          break;
+
+          default :
+            this.hide();
+            return;
+          break;
+        }
+        this.setState(this.oRights["download"]);
+      } else {
+        this.hide();
+      }
+    },
+    setState : function(bDownload) {
+      this.bDownload = bDownload;
+      if (this.bDownload) {
+        this
+            .setText("<span title=\"Désactiver le téléchargement libre\">En téléchargement libre : <span style=\"color:green\">oui</span></span>");
+      } else {
+        this
+            .setText("<span title=\"Activer le téléchargement libre\">En téléchargement libre : <span style=\"color:red\">non</span></span>");
+      }
+      this.setHandler(this.handler, this);
+    }
+  });
+  var domainsPubAction = new Ext.ActionPro({
+        text : "Domaines de publication...",
+        iconCls : "fa fa-fw fa-list-ul",
+        traitement : ["CMS"],
+        bConnect : true,
+        bSearch : false,
+        handler : function() {
+          if( this.disabled ) return;
+          var type = this.record.get('type');
+          switch (type) {
+            case "dataset" :
+            case "nonGeographicDataset" :
+              mode = "couche";
+            break;
+            case "series" :
+              mode = "couche";
+            break;
+            case "service" :
+                if (this.record.get('serviceType') && this.record.get('serviceType') == "invoke") {
+                  if(in_array("chart", this.record.type)){
+				    mode = "chart";
+				  }else{
+                  mode = "carte";
+				  }
+                }else{
+                  return false;
+                }
+            break;
+          }
+          setDomSdom(catalogue, this.record.get("uuid"), mode);
+
+          /*openPopupDomainsPub(this.record.get("id"), this.record.get("title"),
+              type, sub_type);*/
+        },
+        setVisibility : function(catalogue, bInit) {
+          var type = this.record.get('type');
+          var serviceType = this.record.get('serviceType');
+          var allowedType = false;
+          if(type=="dataset" || (type == "service" && serviceType=="invoke") || type == "nonGeographicDataset" || type=="series"){
+            allowedType = true;
+          }
+          if (allowedType && catalogue.isIdentified() && this.bConnect
+              || !catalogue.isIdentified() && this.bSearch
+              ) {
+            if (bInit) {
+              this.hide();
+              return;
+            }
+            
+            
+            var enable = this.oRights[this.traitement[0]];
+            //verify rights to edit metadata (creation mode)
+            if(!enable && this.record.get("isharvested")=="n"){
+              enable = Boolean( this.record["geonet:info"].edit ? this.record["geonet:info"].edit : false ) ;
+            }
+            this.show(!enable);
+
+          } else {
+            
+            this.hide();
+          }
+        }
+      });
+      
+  return new Ext.menu.ItemPro({
+        text : "Gérer l'accès public",
+        iconCls : "fa fa-fw fa-flag-o",
+        bConnect : true,
+        bSearch : false,
+        menu : {
+          items : [WMSAction,/* WFSAction,*/ downloadAction, domainsPubAction
+              /*categories*/]
+        },
+        handler : function() {
+        },
+        setVisibility : function(catalogue, bInit) {
+          if (catalogue.isIdentified() && this.bConnect
+              || !catalogue.isIdentified() && this.bSearch) {
+
+            if(this.record.get('istemplate')=="s" || this.record.get('type')=="featureCatalog"){
+              this.hide();
+              return;
+            }
+            this.show(bInit || true);
+            var bParentDisabled = bInit || true;
+            this.menu.items.forEach(function(action, index) {
+                  var old_show = action.show;
+                  action.show = function(bDisabled) {
+                    bParentDisabled = bParentDisabled && bDisabled;
+                    this.setDisabled(bDisabled);
+                    old_show.call(this, bDisabled);
+                    if (this.actionMenu && this.refreshActionMenu) {
+                      this.actionMenu.showAt(this.actionMenu.getPosition());
+                    }
+                  };
+                  action.setVisibility(catalogue, bInit);
+                }, this);
+            this.show(bParentDisabled);
+          } else {
+            this.hide();
+          }
+        }
+      });
+}
+
+/**
+ * open ExtJS popup to manage domains/sub-domains publication
+ */
+function openPopupDomainsPub(fmeta_id, metadata_name, type, sub_type) {
+  var treePanel = new Ext.tree.TreePanel({
+        root : new Ext.tree.AsyncTreeNode({
+              nodeType : "async",
+              loader : new Ext.tree.TreeLoader({
+                    url : urlParent + "Services/getDomaines.php",
+                    baseParams : {
+                      fmeta_id : fmeta_id
+                    }
+                  })
+            }),
+        rootVisible : false,
+        border : true,
+        autoScroll : true,
+        enableDD : false,
+        fieldLabel : "Domaine/Sous-domaine",
+        height : 300
+      });
+
+  var mode = "";
+  var metadataFieldLabel = "";
+  switch (type) {
+    case "dataset" :
+    case "nonGeographicDataset" :
+      mode = "couche";
+      metadataFieldLabel = "Nom de la série de données";
+    break;
+    case "series" :
+      mode = "couche";
+      metadataFieldLabel = "Nom de l'ensemble de série de données";
+    break;
+    case "service" :
+      if (sub_type == "invoke") {
+        mode = "carte";
+        metadataFieldLabel = "Nom de la carte";
+      } else {
+        mode = "carte";
+        metadataFieldLabel = "Nom du service";
+      }
+    break;
+  }
+
+  var popup = new Ext.Window({
+    id : "popupDomainsPub",
+    width : "auto",
+    height : "auto",
+    constrain : true,
+    title : "Sélection des domaines/sous-domaines de publication",
+    resizable : true,
+    maximizable : true,
+    items : new Ext.form.FormPanel({
+          labelWidth : 150,
+          items : [{
+                xtype : 'label',
+                fieldLabel : metadataFieldLabel,
+                width : 200,
+                text : metadata_name
+              }, treePanel]
+        }),
+    buttons : [{
+      text : 'Valider',
+      handler : function() {
+        var tabSDom = [];
+        selNodes = treePanel.getChecked();
+        selNodes.forEach(function(node) {
+              var tabTmp = node.id.split("_");
+              tabSDom.push(tabTmp[1]);
+            });
+        if (tabSDom.length == 0) {
+          Ext.Msg.alert("Domaine/sous-domaine",
+              "Veuillez sélectionner au moins un sous-domaine.");
+        } else {
+          $.ajax({
+            crossDomain: true,
+            url : urlParent + "Services/getDomaines.php",
+            data : {
+              mode : 2
+            },
+            success : function(oRes) {
+              oRes = eval("(" + oRes + ")");
+              var bRight = false;
+              tabSDom.forEach(function(sDomSelected) {
+                   oRes.forEach(function(sDomRight) {
+                          if (sDomSelected == sDomRight.id) {
+                            bRight = true;
+                            return false;
+                          }
+                        });
+                    if (bRight) {
+                      return false;
+                    }
+                  });
+              if (bRight) {
+                $.ajax({
+                  crossDomain: true,
+                  url : urlParent + "Services/setMetadataDomSdom.php",
+                  data : {
+                    id : fmeta_id,
+                    mode : mode,
+                    "sdom[]" : tabSDom
+                  },
+                  success : function(oRes) {
+                    var oRes = eval("(" + oRes + ")");
+                    if (oRes.success) {
+                      popup.destroy();
+                      location.reload();
+                    } else {
+                      Ext.Msg
+                          .alert("Erreur",
+                              "Impossible de mettre à jour les domaines/sous-domaines.");
+                    }
+                  }
+                });
+              } else {
+                var tabSDomRight = [];
+                /*
+                 * Ext.each(oRes, function(sDomRight){
+                 * tabSDomRight.push(sDomRight.nom); });
+                 */
+                Ext.Msg
+                    .alert(
+                        "Domaine/sous-domaine",
+                        "Veuillez sélectionner au moins un sous-domaine pour lequel vous avez les droits d'administration."/*
+                                                                                                                             * + "
+                                                                                                                             * Ceux-ci
+                                                                                                                             * sont
+                                                                                                                             * listés
+                                                                                                                             * ci-dessous :<br/>"+ "<ul><li>"+tabSDomRight.join('</li><li>')+"</li></ul>"
+                                                                                                                             */);
+              }
+            }
+          });
+        }
+      }
+    }, {
+      text : 'Annuler',
+      handler : function() {
+        popup.destroy();
+      }
+    }]
+  });
+  popup.show();
+}
+
+/**
+ * return action "Ajouter au panier"
+ */
+function getAddToPanierAction(catalogue) {
+  return new Ext.ActionPro({
+    text : "Choisir cette donnée",
+    toolTip : "Choisir cette donnée pour préparer le téléchargement ou la covisualisation",
+    iconCls : "fa fa-fw fa-star",
+    traitement : ["TELECHARGEMENT", "NAVIGATION"],
+    bConnect : true,
+    bSearch : true,
+    bCumulError : false,
+    handler : function(action, event, onSuccess) {
+      if( this.disabled ) return;
+      // action on metadata selection
+      if (this.oMetadataSelect) {
+        var reader = new Ext.data.JsonReader({
+          fields : [{
+            name : 'uuid',
+            mapping : 'uuid'
+          }, {
+            name : 'id',
+            mapping : 'id'
+          }, {
+            name : 'title',
+            mapping : 'uuid'
+          }, {
+            name : 'type',
+            mapping : 'type'
+          }, {
+            name : 'isharvested',
+            mapping : 'isharvested'
+          }, {
+            name : 'links',
+            mapping : 'links'
+          }]
+        });
+        var store = new Ext.data.JsonStore({
+          fields : ['uuid', 'id', 'title', 'type', 'isharvested', 'links'],
+          data : this.oMetadataSelect
+        });
+        var addToPanierAction = getAddToPanierAction(catalogue);
+        this.nbAdd = this.oMetadataSelect.length;
+        addToPanierAction.bCumulError = true;
+        parent.lastError = [];
+        this.tabForbidden = [];
+        this.tabImpossible = [];
+        this.oMetadataSelect.forEach(function(metadata, index) {
+          addToPanierAction.setAttr("record", store.getAt(index));
+          $.ajax({
+                crossDomain: true,
+                scope : this,
+                url : catalogue.routes.catalogue.prodige_verify_rights_url,
+                data : {
+                  ID : metadata.id,
+                  OBJET_TYPE : metadata.type,
+                  OBJET_STYPE : (metadata.type == "service"
+                      && metadata.serviceType ? metadata.serviceType : ""),
+                  TRAITEMENTS : addToPanierAction.getTraitement(catalogue)
+                },
+                success : function(oResUserRights) {
+                  var oRights = (typeof oResUserRights=="string" ? eval("(" + oResUserRights + ")") : oResUserRights);
+                  addToPanierAction.setAttr("record", store.getAt(index));
+                  addToPanierAction.setAttr("oRights", oRights);
+                  addToPanierAction.setVisibility(catalogue);
+                  if (addToPanierAction.isHidden()) {
+                    this.tabImpossible.push(metadata.title);
+                    this.onAddFinished();
+                  } else if (addToPanierAction.isDisabled()) {
+                    this.tabForbidden.push(metadata.title);
+                    this.onAddFinished();
+                  } else {
+                    addToPanierAction.handler(null, null, Ext.createDelegate(this.onAddFinished, this));
+                  }
+                }
+              });
+        }, this);
+      }
+      // action on one metadata
+      else {
+        var type = this.record.get("type");
+        switch (type) {
+          case "dataset" :
+          case "nonGeographicDataset" :
+          case "series" :
+            panier_ajouter(this.record, this.bCumulError);
+            if (onSuccess)
+              onSuccess();
+          break;
+        /* case "series" :
+            ajaxRelatedMetadata(null,null,
+              this,
+              this.record,
+              function(json) {
+                if ( !json ) return;
+                alert('TODO : geosource/apps_extend/actions.js::getAddToPanierAction / ajax / relatedMetadata');
+                console.error('TODO : geosource/apps_extend/actions.js::getAddToPanierAction / ajax / relatedMetadata', json);
+                return;
+
+                var xmlDoc = oRes.responseXML;
+                var tabChildren = Ext.DomQuery.jsSelect("relations/relation", xmlDoc);
+                if (!this.bCumulError) {
+                  parent.lastError = [];
+                }
+                for (var i = 0; i < tabChildren.length; i++) {
+                  parent.panier_ajouterElement(
+                    Ext.DomQuery.selectValue("uuid", tabChildren[i])
+                  , Ext.DomQuery.selectValue("id", tabChildren[i])
+                  , Ext.DomQuery.selectValue("title", tabChildren[i])
+                  , this.record, true);
+                }
+                if (!this.bCumulError && parent.lastError.length > 0) {
+                  if (parent.lastError.length == 1) {
+                    Ext.Msg.alert('Panier', 'La couche '
+                            + parent.lastError.join(', ')
+                            + ' est déjà présente dans le panier.');
+                  } else {
+                    Ext.Msg.alert('Panier', 'Les couches '
+                            + parent.lastError.join(', ')
+                            + ' sont déjà présentes dans le panier.');
+                  }
+                  parent.lastError = [];
+                }
+                if (onSuccess)
+                  onSuccess();
+              },
+              null
+            );
+          break;*/
+        }
+      }
+    },
+    setVisibility : function(catalogue, bInit) {
+      if ((catalogue.isIdentified() && this.bConnect) || (!catalogue.isIdentified() && this.bSearch)) {
+        // visibility on metadata selection action
+        if (this.oMetadataSelect) {
+          this.toolTip = "Ajouter la sélection aux données choisies pour préparer le téléchargement ou la covisualisation";
+          if (this.oMetadataSelect.length > 0) {
+            var bDisabled = true;
+            this.oMetadataSelect.forEach(function(metadata) {
+                  if (metadata.type != "service") {
+                    bDisabled = false;
+                    return false;
+                  }
+                });
+            this.show(bDisabled);
+          } else {
+            this.show(true);
+          }
+        }
+        // visibility on one metadata action
+        else {
+          if(this.record.get('istemplate')=="s" || this.record.get('type')=="featureCatalog"){
+            this.hide();
+            return;
+          }
+          var type = this.record.get("type");
+          switch (type) {
+            case "dataset" :
+            case "nonGeographicDataset" :
+            case "series" :
+              switch (this.record.get("isharvested")) {
+                case "y" :
+                  var tabLinks = this.record.get("links");
+                  if (tabLinks.length == 0) {
+                    this.hide();
+                  } else {
+                    this.show(bInit);
+                  }
+                break;
+                case "n" :
+                  this.show(bInit || !(this.oRights[this.traitement[0]] || this.oRights[this.traitement[1]]));
+                break;
+              }
+            break;
+            /*case "series" :
+              this.show(bInit || !(this.oRights[this.traitement[0]] || this.oRights[this.traitement[1]]));
+            break;*/
+            case "service" :
+              this.hide();
+            break;
+          }
+        }
+      } else {
+        this.hide();
+      }
+    },
+    getTraitement : function(catalogue) {
+      if ((catalogue.isIdentified() && this.bConnect) || (!catalogue.isIdentified() && this.bSearch)) {
+        if (this.oMetadataSelect) {
+          return this.traitement;
+        } else {
+          var type = this.record.get("type");
+          if ( ["series", "dataset", "nonGeographicDataset"].indexOf(type)!=-1 && this.record.get("isharvested") == "n") {
+            if (this.traitement instanceof Array) {
+              return this.traitement.join("|");
+            } else {
+              return this.traitement;
+            }
+          } else {
+            return "";
+          }
+        }
+      } else {
+        return "";
+      }
+    },
+    onAddFinished : function() {
+      this.nbAdd--;
+      if (this.nbAdd == 0
+          && (parent.lastError.length > 0 || this.tabForbidden.length > 0 || this.tabImpossible.length > 0)) {
+        var tabMsg = [];
+        if (parent.lastError.length == 1) {
+          tabMsg.push("La couche " + parent.lastError.join(", ")
+              + " est déjà présente dans les données choisies.");
+        } else if (parent.lastError.length > 1) {
+          tabMsg.push("Les couches " + parent.lastError.join(", ")
+              + " sont déjà présentes dans les données choisies.");
+        }
+        if (this.tabForbidden.length == 1) {
+          tabMsg
+              .push("Vous ne possédez pas les droits suffisants pour télécharger la couche suivante :<br/>"
+                  + this.tabForbidden.join(", "));
+        } else if (this.tabForbidden.length > 1) {
+          tabMsg
+              .push("Vous ne possédez pas les droits suffisants pour télécharger les couches suivantes :<br/>"
+                  + this.tabForbidden.join(", "));
+        }
+        if (this.tabImpossible.length == 1) {
+          tabMsg.push("La couche " + this.tabImpossible.join(", ")
+              + " n'est pas téléchargeable.");
+        } else if (this.tabImpossible.length > 1) {
+          tabMsg.push("Les couches " + this.tabImpossible.join(", ")
+              + " ne sont pas téléchargeables.");
+        }
+        if (tabMsg.length > 0) {
+          Ext.Msg.alert('Panier', tabMsg.join("<br/><br/>"));
+        }
+        parent.lastError = [];
+        this.tabForbidden = [];
+        this.tabImpossible = [];
+      }
+    }
+  });
+}
+
+/**
+ * return action "Visualiser"
+ */
+function getVisualiserAction(catalogue) {
+  return new Ext.ActionPro({
+    text : "Visualiser",
+    toolTip : "Voir les données sur l'interface cartographique",
+    iconCls : "fa fa-fw fa-globe",
+    traitement : "NAVIGATION",
+    bConnect : true,
+    bSearch : true,
+    handler : function() {
+      if( this.disabled ) return;
+      switch (this.record.get('type')) {
+        case "dataset" :
+
+          //addLog('WMS', (typeof(this.record.get("title"))!="undefined" ? this.record.get("title").replace(",",";") : "")+","+this.record.get("id"));
+          var isharvested = this.record.get("isharvested");
+          switch (isharvested) {
+            case "y" :
+              //window.open(urlParent + "consultation_wms.php?IDT="+ this.record.get("id") + this.paramVisu);
+              window.open(catalogue.URL + "/geosource/consultationWMS?IDT="+ this.record.get("id") + this.paramVisu);
+            break;
+            default :
+            case "n" :
+              //window.open(urlParent + "consultation_wms.php?IDT="+ this.record.get("id"));
+              window.open(catalogue.URL + "/geosource/consultationWMS?IDT="+ this.record.get("id"));
+            break;
+          }
+        break;
+        case "series" :
+          // nothing to do
+        break;
+        case "service" :
+          if(in_array("chart", this.record.type)){
+            //chart link
+             window.open(catalogue.URL + "/graph/readOnly?uuid=" + this.record.get("uuid"));
+          }
+          else if ((this.record.get('serviceType') == 'invoke')) {
+            // statistiques de consultation de carte
+            /*
+             * $.ajax({ url:urlParent+"consultation_addLog.php",
+             * params:{logFile:"ConsultationCarte", objectName :
+             * this.record.get("title").replace(",",
+             * ";")+","+this.record.get("id")} });
+             */
+            //addLog('ConsultationCarte', (typeof(this.record.get("title"))!="undefined" ? this.record.get("title").replace(",",";") : "")+","+this.record.get("id"));
+            var isharvested = this.record.get("isharvested");
+            switch (isharvested) {
+              case "y" :
+                var tabLinks = this.record.get("links");
+                if (tabLinks.length > 0) {
+                  window.open(tabLinks[0].href);
+                }
+              break;
+              case "n" :
+                //alert('TODO apps_extend/actions.js/getVisualiserAction::handler(service|map, n) => controller catalogue consultation.php');return;
+                //window.open(urlParent + "consultation.php?id=" + this.record.get("id"));
+                window.open(catalogue.URL + "/geosource/consultation?id=" + this.record.get("id"));
+              break;
+            }
+          } else {
+            var tabLinks = this.record.get("links");
+            if (tabLinks.length > 0) {
+              window.open(tabLinks[0].href);
+            }
+          }
+        break;
+      }
+    },
+    setVisibility : function(catalogue, bInit) {
+      if ((catalogue.isIdentified() && this.bConnect) || (!catalogue.isIdentified() && this.bSearch)) {
+        if (this.record.get('istemplate')=="s" || this.record.get('type')=="featureCatalog"){
+          this.hide();
+          return;
+        }
+        switch (this.record.get('type')) {
+          case "dataset" :
+            if (this.record.get('spatialRepresentationType') == "Tabulaire") {
+              this.hide();
+            } else {
+              switch (this.record.get("isharvested")) {
+                case "y" :
+                  this.paramVisu = "";
+                  if (bInit) {
+                    this.hide();
+                  } else {
+                        var me = this;
+                    ajaxServicesMetadata(this, this.record
+                    , function(oRes) {
+                        /*
+                         * var xmlDoc = oRes.responseXML; var tabService =
+                         * Ext.DomQuery .jsSelect( "relations/relation",
+                         * xmlDoc); if (tabService.length > 0) { // pas de //
+                         * vérification de // droits pour les // données
+                         * associées // à un service de // covisu WMS/WFS
+                         * this.paramVisu = "&layerTitle=" + this.record
+                         * .get("title") + "&Mode=WMS&uuidService="; for ( var i =
+                         * 0; i < tabService.length; i++) { this.paramVisu +=
+                         * Ext.DomQuery .selectValue( "uuid", tabService[i]) +
+                         * "|"; } this.paramVisu += "&uuidData=" + this.record
+                         * .get("uuid"); this.show(); } else {
+                         */
+                        var tabLinks = me.record.get("links");
+                        if (tabLinks.length > 0) {
+                          var oLink = {};
+                          tabLinks.forEach(function(link) {
+                            if (link.protocol && link.protocol != "" && new RegExp(/^OGC:WMS/i).test(link.protocol)) {
+                              if (link.href && link.href != "" && link.name && link.name != "") {
+                                oLink.wms = "&layerTitle="
+                                    + me.record.get("title")
+                                    + "&Mode=WMS&protocol=GetMap&connection="
+                                    + link.href + "&layer=" + link.name;
+                              }
+                            }
+                            if (link.protocol && link.protocol != "" && new RegExp(/^OGC:WFS/i).test(link.protocol)) {
+                              if (link.href && link.href != "" && link.name && link.name != "") {
+                                oLink.wfs = "&layerTitle="
+                                    + me.record.get("title")
+                                    + "&Mode=WMS&protocol=GetFeatures&connection="
+                                    + link.href + "&layer=" + link.name;
+                              }
+                            }
+                          }, me);
+                          if (oLink.wms) {
+                            me.paramVisu = oLink.wms;
+                            me.show();
+                          } else if (oLink.wfs) {
+                            me.paramVisu = oLink.wfs;
+                            me.show();
+                          } else {
+                            me.hide();
+                          }
+                        } else {
+                          me.hide();
+                        }
+                        // }
+                      });
+                  }
+                  this.setHandler(this.handler, this);
+                break;
+                case "n" :
+                  this.show((bInit ? true : (this.oRights["visualisable"]
+                      ? !this.oRights[this.traitement]
+                      : true)));
+                break;
+              }
+            }
+          break;
+          case "series" :
+            this.hide();
+          break;
+          case "nonGeographicDataset" :
+            this.hide();
+          break;
+          case "service" :
+            if ((this.record.get('serviceType') == 'invoke')) {
+              if(in_array("chart", this.record.type)){
+				  this.hide();
+			  }else{
+              switch (this.record.get("isharvested")) {
+                case "y" :
+                  var tabLinks = this.record.get("links");
+                  if (tabLinks.length > 0) {
+                    this.show();
+                  } else {
+                    this.hide();
+                  }
+                break;
+                case "n" :
+                  this.show((bInit ? true : !this.oRights[this.traitement]));
+                break;
+              }
+             }
+            } else {
+              var tabLinks = this.record.get("links");
+              if (tabLinks.length > 0) {
+                this.show();
+              } else {
+                this.hide();
+              }
+            }
+          break;
+        }
+      } else {
+        this.hide();
+      }
+    },
+    getTraitement : function(catalogue) {
+      if ((catalogue.isIdentified() && this.bConnect) || (!catalogue.isIdentified() && this.bSearch)) {
+        if (this.record.get('type') == "service"
+            || this.record.get('type') == "dataset"
+            && this.record.get("isharvested") == "n") {
+          return this.traitement;
+        } else {
+          return "";
+        }
+      } else {
+        return "";
+      }
+    }
+  });
+}
+
+
+/**
+ * return action "Importer les données"
+ */
+function getVisualiserChartAction(catalogue) {
+  return new Ext.ActionPro({
+        text : "Visualiser le graphe...",
+        iconCls : "fa fa-fw fa-bar-chart",
+        traitement : "NAVIGATION",
+        bConnect : true,
+        bSearch : false,
+        handler : function() {
+          if( this.disabled ) return;
+          window.open(catalogue.URL + "/graph/readOnly?uuid="
+          + this.record.get("uuid"));
+        },
+        setVisibility : function(catalogue, bInit) {
+          if (catalogue.isIdentified() && this.bConnect
+              || !catalogue.isIdentified() && this.bSearch) {
+            if (bInit) {
+              this.hide();
+              return;
+            }
+			this.table = "";
+		    switch (this.record.get('type') ) {
+		      case "service" :
+		  
+			  if(in_array("chart", this.record.type)){
+			    var disable = !this.oRights[this.traitement];
+			    //this.table = this.oRights["tableName"];
+			    this.show(disable);
+			  } else {
+			    this.hide();
+			  }
+			  break;
+			  default :
+			    this.hide();
+			  break;
+		    }
+          } else {
+            this.hide();
+          }
+        },
+        getTraitement : function(catalogue) {
+          if (catalogue.isIdentified() && this.bConnect
+              || !catalogue.isIdentified() && this.bSearch) {
+            return this.traitement;
+          } else {
+            return "";
+          }
+        }
+      });
+}
+
+
+/**
+ * return action "Export PDF Complet"
+ */
+function getExportPDFCompletAction(catalogue) {
+  return new Ext.ActionPro({
+    text : "Export PDF complet (ZIP)",
+    toolTip : "Exporter la fiche de métadonnée et ses métadonnées asssociées au format PDF",
+    iconCls : "fa fa-fw fa-file-zip-o",
+    bConnect : false,
+    bSearch : true,
+    handler : function() {
+    if( this.disabled ) return;
+    //alert('TODO apps_extend/actions.js/getExportPDFCompletAction::handler => controller catalogue Services/getMetadataPDFComplet.php');return;
+      window.location = catalogue.URL + "/metadata/pdf?uuid="//"Services/getMetadataPDFComplet.php?uuid="
+          + this.record.get("uuid");
+    },
+    setVisibility : function(catalogue, bInit) {
+      this.show();
+    }
+  });
+}
+/**
+ * return action
+ */
+function getSubMenuAction(catalogue, texte, url, target) {
+  return new Ext.ActionPro({
+        text : texte,
+        bConnect : false,
+        bSearch : true,
+        handler : function() {
+          if (target == "_blank")
+            window.open(url);
+          else
+            window.location = url;
+        },
+        setVisibility : function(catalogue, bInit) {
+          if (bInit)
+            this.show();
+          else
+            this.hide();
+        }
+      });
+}
+
+function ajaxRelatedMetadata(type, content_type, scope, metadata, successFn, failureFn){
+  $.ajax({
+    crossDomain: true,
+    dataType: "json",
+    accepts: {
+        text: "application/json"
+    },
+    url : '/geonetwork/srv/api/records/'+metadata.get("uuid")+'/related',
+    data : {
+      type : type||["siblings", "associated", "related"]
+    },
+    success : successFn,
+    failure : failureFn,
+    scope : scope
+  });
+}
+function ajaxServicesMetadata(scope, metadata, successFn, failureFn){
+  $.ajax({
+    crossDomain: true,
+    dataType: "json",
+    accepts: {
+        text: "application/json"
+    },
+    url : '/geonetwork/srv/api/records/'+metadata.get("uuid")+'/related',
+    data : {
+      type : "services"
+    },
+    success : successFn,
+    failure : failureFn,
+    scope : scope
+  });
+}
+
+/**
+ * @version 3.2
+ * effectue un appel Ajax
+ * @param ajaxUrl        URL de l'appel
+ * @param queryParams    paramètres de l'appel
+ * @param iframe         objet contenant les fonctions "onSuccess" ainsi que les paramètres "tabParams" associés
+ * @param method         méthode de l'appel ("GET" par défaut)
+ */
+function AjaxRequest(ajaxUrl, queryParams, iframe, method, async){
+  if ( typeof method=="undefined" ) method = 'GET';
+  if ( typeof async=="undefined" ) async = true;
+  switch(ajaxUrl){
+    case "Services/getUserRights.php" : ajaxUrl = prodigeConfig.routes.catalogue.prodige_verify_rights_url; break;
+  }
+  $.ajax({
+                dataType: "json",
+                accepts: {
+                    text: "application/json"
+                },
+    async : async,
+    crossDomain: true,
+    url : ajaxUrl ,
+    data : queryParams,
+    method : ( method ? method : 'GET' ),
+    success : function(result){
+      var fn;
+      if ( typeof iframe.onSuccess == 'function' ) {
+        fn = iframe.onSuccess;
+        if ( !iframe.onSuccess.createDelegate ) {
+          fn = function(){
+            return iframe.onSuccess.apply(this, arguments)
+          }
+        }
+        var response = (typeof result == "string" ? result.replace(/^\((.*)\)$/g, '$1') : result);
+        fn.createDelegate(this, ( iframe.tabParams && iframe.tabParams.concat && typeof iframe.tabParams.concat == 'function' ? iframe.tabParams.concat(response) : [response] )).call();
+      }
+    },
+    failure : function(result){
+      console.log("failedAjax")
+      console.log(result);
+    }
+  });
+}
+Function.prototype.createDelegate = function(obj, args, appendArgs){
+  var method = this;
+  return function() {
+    var callArgs = args || arguments;
+    if (appendArgs === true){
+      callArgs = Array.prototype.slice.call(arguments, 0);
+      callArgs = callArgs.concat(args);
+    }else if (typeof appendArgs === 'number' && isFinite(appendArgs)){
+      callArgs = Array.prototype.slice.call(arguments, 0); // copy arguments first
+      var applyArgs = [appendArgs, 0].concat(args); // create method call params
+      Array.prototype.splice.apply(callArgs, applyArgs); // splice them in
+    }
+    return method.apply(obj || window, callArgs);
+  };
+}
+
+
+
+    function getMetadataEditURL(id, create, group, child, isTemplate, schema){
+        var url = 'catalog.edit#/';
+        if (create) {
+          if (id) {
+            if (child) {
+              url += 'create?childOf=' + id;
+            } else {
+              url += 'create?from=' + id;
+            }
+          } else {
+            url += 'create';
+          }
+        } else {
+          url += 'metadata/' + id;
+        }
+        return url;
+    }
+    function metadataEdit2(id, create, group, child, isTemplate, schema){
+        var url = getMetadataEditURL(id, create, group, child, isTemplate, schema);
+        window.open(url, 'metadata_'+id);
+    };
+
+
+    /**
+     * @brief open the map in a simplified mode to edit the default representation of the layer
+     * @param action : url to open
+     */
+    function  administration_carto_paramCarto(catalogue, uuid)
+    {
+      //open map in popup
+      parent.administration_carto_win_cartodynamique = window.open(catalogue.URL+"/geosource/layerAddToMap/"+uuid/*, "Cartographie_dynamique", "directories=0, fullscreen=yes, menubar=0, status=1, toolbar=0, resizable=1"*/);
+    }
+
+    /**
+     * @brief open in new window import data interface
+     * @param uuid metadata uuid
+     */
+    function  import_data(catalogue, uuid)
+    {
+       window.open(catalogue.admincartoURL+"/prodige/importdata/manage/"+uuid/*, "Cartographie_dynamique", "directories=0, fullscreen=yes, menubar=0, status=1, toolbar=0, resizable=1"*/);
+    }
+
+    function setDomSdom (catalogue, uuid, mode)
+    {
+      window.open(catalogue.URL+"/geosource/setDomsdom/"+uuid+"?mode="+mode/*, "Cartographie_dynamique", "directories=0, fullscreen=yes, menubar=0, status=1, toolbar=0, resizable=1"*/);
+    }
+
+    function deleteData(catalogue, uuid, type, oRights, record){
+      confirmActionDelete = function(id, value){
+        if (id === 'yes') {
+        	var msg = $('body').append('<div id="msg-remove" class="modal fade" tabindex="-1" role="dialog" >  ' +
+        			'<div  class="modal-dialog" role="document">' +
+        			'<div class="modal-content">' +
+        			'<div class="modal-body" ng-bind-html="body">Suppression en cours...</div>')
+        	var closeFn = Ext.Msg.info('Suppression', "Suppression en cours...");
+          $.ajax({
+            crossDomain: true,
+            url : catalogue.URL+"/geosource/deleteMetaData/"+ uuid,
+            success : function(oResUserRights) {
+              $("#msg-remove").remove();
+              var msg = Ext.Msg.alert('Suppression', "La ressource a été supprimée");
+              setTimeout(function(){
+              	msg && msg.close && msg.close();
+              // relancer la recherche pour actualiser les résultats
+              $('.gn-top-search button[data-ng-click="triggerSearch()"]').click();
+              }, 3000);
+            },
+            failure : function() {
+              $("#msg-remove").remove();
+              console.log("failure");
+            }
+          });
+        }
+
+      };
+      var name =  record.title || record.defaultTitle;
+      if(type=="dataset" && (oRights["couche_type"]==1 || oRights["couche_type"]==0 || oRights["couche_type"]==4)){
+        //first verify maps
+        $.ajax({
+          crossDomain: true,
+          url : catalogue.URL+"/geosource/canDeleteMetaData/"+ uuid,
+          success : function(response) {
+            var message = [];
+            if ( response.maps.length ){
+              message.push('La métadonnée sera supprimée des cartes suivantes :' +
+                  '<ul><li>'+response.maps.join('</li><li>')+'</li></ul>');
+            } else {
+              message.push("Aucune carte ne contient la métadonnée.");
+            }
+            if ( response.joins.length ){
+              message.push('Les vues de base de données suivantes seront supprimées :' +
+                  '<br/><em>(Les configurations associées restent inchangées)</em>' +
+                  '<ul><li>'+response.joins.join('</li><li>')+'</li></ul>');
+            } else {
+              message.push("Aucune vues de jointures ne contient la métadonnée.");
+            }
+            Ext.Msg.confirm('Suppression de la métadonnée "'+name+'"',
+                ('Examen de l\'utilisation des couches de la métadonnée "'+name+'" dans les cartes et les jointures :' +
+                '<ul><li>'+message.join('</li><li>')+'</li></ul>' +
+                '<br/><b>Souhaitez-vous poursuivre la suppression ?</b>'), confirmActionDelete, this);
+
+            return;
+            var tabmaps = eval(oResUserRights);
+            if(tabmaps.length == 0){
+              Ext.Msg.confirm("Suppression de couche", "Aucune carte ne contient la couche "+name+", souhaitez-vous poursuivre la suppression ?", confirmActionDelete, this);
+            }else{
+              var strMaps ="";
+              for (var i=0; i<tabmaps.length;i++){
+                strMaps+= tabmaps[i]+", ";
+              }
+              strMaps = strMaps.slice(0,-2)+".";
+              Ext.Msg.confirm("Suppression de couche", "La couche "+name+" est contenue dans les cartes suivantes :" +
+                                  strMaps+ "La couche sera supprimée des cartes. Souhaitez-vous poursuivre la suppression ?", confirmActionDelete, this);
+            }
+
+          },
+          failure : function() {
+            console.log("failure");
+          }
+        });
+      }else{
+      	Ext.Msg.confirm('Suppression de la métadonnée "'+name+'"',
+             "Souhaitez-vous poursuivre la suppression ?", confirmActionDelete, this);
+      }
+
+
+
+    }
+
+    /**
+     * Réinitialisation de la représentation par défaut
+     */
+    function reinitParamCarto(catalogue, uuid)
+    {
+      $.ajax({
+        crossDomain: true,
+        url : catalogue.URL+"/geosource/mapDelete/"+ uuid,
+        success : function(oResUserRights) {
+          //Ext.Msg.alert("La représentation par défaut a été réinitialisée");
+          Ext.Msg.alert('Représentation par défaut', "La représentation par défaut a été réinitialisée", function(){});
+        },
+        failure : function() {
+          console.log("failure");
+        }
+      });
+    }
+
+/**
+ * Open the UserDetails prodige form in a popup
+ */
+function openUserDetails()
+{
+  var width   = 680;
+  var left    = (screen.width/2)-(width/2);
+  window.open(prodigeConfig.routes.catalogue.geosource_user_details, "Ma fiche utilisateur", "height=400,top=300,width="+width+",left="+left+", directories=0, fullscreen=yes, menubar=0, status=1, toolbar=0, resizable=1");
+}
+
+/**
+ * @param logFile
+ * @param objectName
+ */
+function addLog(logFile, objectName)
+{
+  $.get(
+    __PRODIGE_CATALOGUE_CONFIG_URL__+'/prodige/add_log',
+    { logFile:logFile, objectName : objectName }
+  )
+  .fail(function(){
+    console.log("Erreur d'ecriture du log '"+logFile+"'");
+  });
+}
diff --git a/src/main/webapp/apps_extend/admin.js b/src/main/webapp/apps_extend/admin.js
new file mode 100644
index 0000000..a71f37e
--- /dev/null
+++ b/src/main/webapp/apps_extend/admin.js
@@ -0,0 +1,941 @@
+var SSO_ENABLED = true;
+if ( typeof Ext == "undefined" ) Ext = {};
+if ( typeof Ext.menu == "undefined" ) Ext.menu = {};
+if ( typeof Ext.Msg == "undefined" ) Ext.Msg = {};
+if ( typeof Ext.menu.Item == "undefined" ) Ext.menu.Item = {};
+
+
+if ( $.cookie && $.cookie("__PRODIGE_CATALOGUE_CONFIG_URL__") ){
+    __PRODIGE_CATALOGUE_CONFIG_URL__ = $.cookie("__PRODIGE_CATALOGUE_CONFIG_URL__");
+}
+
+if ( $.cookie && $.cookie("__PRODIGE_BROADCAST_CONNECT_URL__") ){
+    __PRODIGE_BROADCAST_CONNECT_URL__ = $.cookie("__PRODIGE_BROADCAST_CONNECT_URL__").split(',');
+}
+//(function() {
+if (module){
+  
+  
+  (initProdigeCatalogue = function (){
+    $.ajaxSetup({
+      xhrFields: {
+        withCredentials: true
+      }
+    });
+    prodigeConfig = angular.extend({}, window.catalogue||{});
+    var gn_prodige = document.createElement('div');
+    gn_prodige.setAttribute('ng-controller', 'gn_prodige_controller');
+   // gn_prodige.setAttribute('ng-init', 'callXhrAsynchronous()');
+    document.body.appendChild(gn_prodige);
+    
+    
+    module.controller('gn_prodige_controller', [
+    '$rootScope', '$scope', '$controller', '$http', '$q'/*, '$templateCache'*/, 
+    function ($rootScope, $scope, $controller, $http, $q/*, $templateCache*/) {
+      $rootScope.prodige = {
+        isIdentified : function(){
+          return $scope.$parent && $scope.$parent.authenticated;
+        },
+        loaded : false
+      };
+
+      __PRODIGE_BROADCAST_CONNECT_URL__ = __PRODIGE_BROADCAST_CONNECT_URL__ || [];
+      if ( __PRODIGE_BROADCAST_CONNECT_URL__.indexOf(__PRODIGE_CATALOGUE_CONFIG_URL__)==-1 )
+        __PRODIGE_BROADCAST_CONNECT_URL__ = [__PRODIGE_CATALOGUE_CONFIG_URL__].concat(__PRODIGE_BROADCAST_CONNECT_URL__);
+        
+          var urls = __PRODIGE_BROADCAST_CONNECT_URL__;
+      var ln = urls.length;
+      var attemptConnect = {};
+      var G_I = 0;
+      var onSiteConnect = function(json, casuser){
+        
+        var i = (SSO_ENABLED ? G_I : json.index);
+        if ( i<ln && !attemptConnect[i] ){
+          attemptConnect[i] = true;
+          $.ajax({
+            async: false,
+            xhrFields: {
+                 withCredentials: true
+            },
+            crossDomain: true,
+            dataType: "jsonp",
+            url : (SSO_ENABLED
+             ? (urls[i])+'/prodige/connect?index='+i+'&sessionid='+json.sessionid
+             : (urls[i])+'/prodige/connect?casuser='+casuser+'&index='+i+'&sessionid='+json.sessionid
+            ),
+            success : function(data){
+              if ( urls[i]==__PRODIGE_CATALOGUE_CONFIG_URL__ ) $scope.callXhrAsynchronous();
+              if (SSO_ENABLED) {
+                G_I++;
+              }
+              onSiteConnect(data, casuser)
+            },
+            failure : function(){
+              if ( urls[i]==__PRODIGE_CATALOGUE_CONFIG_URL__ ) $scope.callXhrAsynchronous();
+              if (SSO_ENABLED) {
+                G_I++;
+              }
+              onSiteConnect(data, casuser)
+            }
+          });
+        }
+      };
+      var connectUser = function(casuser){
+        if ( SSO_ENABLED || casuser ){
+          var i = (SSO_ENABLED ? G_I : 0);
+          if ( i<ln  && !attemptConnect[i] ){
+            attemptConnect[i] = true;
+            $.ajax({
+              xhrFields: {
+                withCredentials: true
+              },
+              async: false,
+              crossDomain: true,
+              dataType: "jsonp",
+              url : (SSO_ENABLED
+               ? (urls[i])+'/prodige/connect?index='+i
+               : (urls[i])+'/prodige/connect?casuser='+casuser+'&index='+i
+              ),
+              success : function(data){
+                if ( urls[i]==__PRODIGE_CATALOGUE_CONFIG_URL__ ) $scope.callXhrAsynchronous();
+                if (SSO_ENABLED) {
+                  G_I++;
+                }
+                onSiteConnect(data, casuser)
+              },
+              failure : function(){
+                if ( urls[i]==__PRODIGE_CATALOGUE_CONFIG_URL__ ) $scope.callXhrAsynchronous();
+                if (SSO_ENABLED) {
+                  G_I++;
+                }
+                onSiteConnect(data, casuser)
+              }
+            });
+          }
+        }
+      }
+      /**
+       * watch $parent.user to force a prodige auth connection and get the user config
+       */
+      $scope.$parent.$watch('user', function() {
+        if( $scope.$parent.user ) {
+          $scope.$parent.$watch('authenticated', function(){$scope.$parent.authenticated && connectUser($scope.$parent.user['username'])});
+        } else {
+          connectUser('vinternet');
+        }
+      });/*
+      $scope.$parent.$watch('user', function() {
+        if( typeof $scope.$parent.user['@authenticated'] != "undefined" ) {
+          var casuser = $scope.$parent.user['@authenticated'] == "true" ? $scope.$parent.user['username'] : 'vinternet';
+          jQuery('body').append('<iframe id="footerexec" style="display:none;">');
+          jQuery('#footerexec').on('load', function(){
+            $scope.callXhrAsynchronous();
+          }).attr('src', __PRODIGE_CATALOGUE_CONFIG_URL__+'/prodige/connect?casuser='+casuser);
+        }
+      });*/
+
+      $scope.myXhr = function(){
+        var deferred = $q.defer();
+        $.ajax({
+          xhrFields: {
+            withCredentials: true
+          },
+          async: false,
+          crossDomain: true,
+          dataType: "jsonp",
+          url : __PRODIGE_CATALOGUE_CONFIG_URL__+'/geosource/get_config', 
+          method: 'GET',
+          headers: {'Content-Type': 'application/x-www-form-urlencoded'},
+          success : function(data,status,headers,config){
+              //resolve the promise
+              deferred.resolve(data);
+          },
+        //if request is not successful
+          failure : function(data,status,headers,config){
+              //reject the promise
+            console.log(status);
+            console.log(data);
+            console.log(headers);
+            console.log(config);
+            deferred.reject('ERROR');
+          }
+        });
+        //return the promise
+        return deferred.promise;
+      };
+      $scope.callXhrAsynchronous = function(){
+        /**
+         * disable 'Users and groups' button in admin.console
+         */
+        angular.element('a[href="#organization"]').addClass('disabled hidden');
+
+        var myPromise = $scope.myXhr();
+        // wait until the promise return resolve or eject
+        //"then" has 2 functions (resolveFunction, rejectFunction)
+        myPromise.then(function(data){
+          angular.extend($rootScope.prodige, data);
+          $rootScope.prodige.loaded = true;
+          prodigeConfig = angular.extend({}, $rootScope.prodige);
+        }, 
+        function(reject){
+        });
+      };
+
+    }]);
+      
+    /**
+     * Chargement des fichiers de langue de l'extension Alkante
+     */
+    module.config(['$LOCALES', function($LOCALES) {
+      $LOCALES.push('alk-extend');
+    }]);
+    
+  })();
+  
+  (topToolbar = function (){
+    module.directive('navbarHeader', function($compile, $rootScope){
+      return {
+        restrict: 'C',
+        scope: false,
+        link : function(scope, element){
+          $rootScope.$watch('prodige.loaded', function(){
+            if ( !$rootScope.prodige.loaded ) return;
+            var div = document.createElement('div')
+            div.setAttribute('ng-controller', "toolbar");
+            div.setAttribute('data-ng-include', "'../../apps_extend/templates/top-toolbar.html'");
+            $(element).parent().find('ul.navbar-right').parent().append($(div));
+            $compile($(div))(scope);
+          })
+        }
+      }
+    });
+    module.directive('wellMd', function($compile, $rootScope){
+      return {
+        restrict: 'C',
+        scope: false,
+        link : function(scope, element){
+          var img = document.createElement('img');
+          img.className = "big-logo";
+          img.setAttribute('data-ng-src', '../../images/logos/{{info.site.siteId}}.png?{{info.site.lastUpdate}}');
+          var div = document.createElement('h1');
+          div.appendChild(img);
+          $(element).addClass('prodige-home');
+          $(element).prepend($(div))
+          $compile($(div))(scope);
+        }
+      }
+    });
+    module.directive('userAccountExpirationMsg', function($compile, $rootScope){
+      return {
+        restrict: 'AE',
+        scope: false,
+        link: function(scope, element, attrs) {
+          $rootScope.$watch('prodige.loaded', function(){
+            if ( !$rootScope.prodige.loaded ) return;
+            
+            if( $rootScope.prodige.userDetails && $rootScope.prodige.userDetails.alert == true ) {
+              var div = $('<i class="fa fa-warning text-warning" title="'+$rootScope.prodige.userDetails.message+'"></i>');
+              $(element).append(div);
+              $compile(div)(scope);
+            }
+          });
+        }
+      }
+    });
+  })();
+
+  (helpModal = function(){ 
+    module.controller( 'helpModal', [
+      '$rootScope', '$scope', '$controller', '$http'
+    , function($rootScope, $scope, $controller, $http){
+        // move modal to body to avoid backdrop overlap
+        $('#helpModal').appendTo('body');
+        $scope.help = [];
+        $.ajax({
+          xhrFields: {
+               withCredentials: true
+          },
+          crossDomain: true,
+          method  : 'GET',
+          url     : prodigeConfig.routes.catalogue.geosource_get_help,
+          withCredentials: true,
+          success : function(data) {
+            $scope.help = data;
+          }
+        });
+      }
+    ]);
+  })();
+
+  (toolbar = function(){ 
+    module.controller( 'toolbar', [
+      '$rootScope', '$scope', '$controller', '$http'
+    , function($rootScope, $scope, $controller, $http){
+        
+        $scope.initContactForm = function() {
+          // broadcast to child scopes
+          $rootScope.$broadcast('initContactForm');
+        };
+
+      }
+    ]);
+  })();
+  
+  (contactAdmin = function(){ 
+    module.controller( 'formContactAdmin', [
+      '$rootScope', '$scope', '$controller', '$http'
+    , function($rootScope, $scope, $controller, $http){
+        // move modal to body to avoid backdrop overlap
+        $('#contactAdmin').appendTo('body');
+        $scope.model = {
+          usr_name       : $rootScope.prodige.isIdentified() ? $rootScope.prodige.usr_name : '',
+          usr_firstname  : $rootScope.prodige.isIdentified() ? $rootScope.prodige.usr_firstname : '',
+          usr_email      : $rootScope.prodige.isIdentified() ? $rootScope.prodige.usr_mail : ''
+        };
+        $scope.control = "";
+        $scope.refreshCaptcha = function(){
+          $scope.control = String(Math.round(Math.random()*1000000000));
+          $('#captchaimg').get(0).src = prodigeConfig.URL+'/geosource/captcha' + "?rand="+$scope.control;
+        };
+        $scope.initForm = function(){
+          $scope.model = {
+            usr_name       : $rootScope.prodige.isIdentified() ? $rootScope.prodige.usr_name : '',
+            usr_firstname  : $rootScope.prodige.isIdentified() ? $rootScope.prodige.usr_firstname : '',
+            usr_email      : $rootScope.prodige.isIdentified() ? $rootScope.prodige.usr_mail : '',
+            captcha : '',
+            message: ''
+          };
+          $scope.refreshCaptcha();
+        }
+        // init form data when notified to (see toolbar controller)
+        $rootScope.$on('initContactForm', function(e){
+          $scope.initForm();
+        });
+        $scope.processForm = function(){
+          if ( $scope.formContactAdmin.$valid ){
+            $http({
+              method  : 'POST',
+              url     : prodigeConfig.routes.catalogue.geosource_contact_admin,
+              data    : $.param($scope.model),  // pass in data as strings
+              withCredentials: true,
+              headers : { 'Content-Type': 'application/x-www-form-urlencoded' }  // set the headers so angular passing info as form data (not request payload)
+            })
+            .then(
+              function(data) { // success
+                //console.log('submit', data);
+                // re-init form with default values
+                $scope.initForm();
+                // close popup
+                angular.element('#contactAdmin').modal('hide');
+                alert("Votre message a bien été envoyé à l'administrateur de la plate-forme");
+              },
+              function(data) { // error
+                console.log('#contactAdmin', data);
+              }
+            )
+          } else {
+            console.log($scope.formContactAdmin.$error);
+          }
+        };
+      }
+    ]);
+  })();
+  
+  function configureMetadata(md){
+    if ( !md || md.get ) return;
+    md.get = md.get || function(field){
+      var result, temp;
+      var traduction = {
+        'isharvested' : 'isHarvested',
+        'istemplate' : 'isTemplate',
+        'Data' : 'title',
+        'spatialRepresentationType' : 'spatialRepresentationType_text'
+      };
+      if ( typeof traduction[field]!="undefined" ){
+        field = traduction[field];
+      }
+      try {
+        switch(field){
+          case "id" : 
+            temp = this['geonet:info'].id;
+          break;
+          case "id" : case "uuid" :
+            temp = (this.getUuid ? this.getUuid() : this['geonet:info'].uuid);
+          break;
+          case "links" :
+            temp = this['link'] || [];
+            var res = [];
+            temp.forEach(function(value){
+                var tokens = value.split('|');
+                res.push({
+                  name: tokens[0],
+                  title: tokens[1],
+                  href: tokens[2],
+                  protocol: tokens[3],
+                  type: tokens[4]
+                })
+            })
+            return res;
+          break;
+          case "serviceType" :
+            var type = ((temp = this.type) instanceof Array ? (temp[0].value || temp[0]) : temp);
+            if ( type=="map" ) return "invoke";
+            if ( type=="service-invoke" ) return "invoke";
+          default : 
+            temp = this[field];
+          break;
+        }
+        result = (temp instanceof Array ? (temp[0].value || temp[0]) : temp);
+        switch(field){
+          case "type" :
+            result = result.split('-')[0];
+            switch(result){
+              case "map" : result = "service"; break;
+              case "service-invoke" : result = "service"; break;
+            }
+          break;
+        }
+      } catch(e){ }
+      return result;
+    }
+    return md;
+  };
+  
+  (panier = function(){
+    panier_ajouter = null;
+    module.controller( 'metadataCart', [
+      '$rootScope', '$scope', '$controller', '$http'
+    , function($rootScope, $scope, $controller, $http){
+        // move modal to body to avoid backdrop overlap
+        $('#metadataCart').appendTo('body');
+        //$scope.$apply();
+        var panier = JSON.parse(window.sessionStorage.getItem('PRODIGE.PANIER') || '{}');
+        $scope.metadatas = panier.metadatas || [];
+        $scope.indexes = panier.indexes || {};
+        window.sessionStorage.setItem('PRODIGE.PANIER', JSON.stringify({metadatas : $scope.metadatas, indexes : $scope.indexes}));
+        
+          $('#metadataCart').on('shown.bs.modal', function(){
+            if ( !$scope.metadatas ) return;
+            $scope.metadatas.forEach(function(metadata){
+            	if (metadata.can_storage===null && metadata.query_storage) {
+            	    metadata.can_storage = true;
+                  delete metadata.query_storage;
+            	}
+            });
+            window.sessionStorage.setItem('PRODIGE.PANIER', JSON.stringify({metadatas : $scope.metadatas, indexes : $scope.indexes}));
+            $scope.$apply();
+          });
+        window.panier_ajouter = $scope.panier_ajouter = function (metadata){
+          if ( !metadata ) return false;
+          configureMetadata(metadata);
+          var type = metadata.get('type');
+          
+          switch(type){
+            case "dataset":
+            case "nonGeographicDataset":
+              if ( metadata.can_storage===false ) return false;
+              //nothing to do
+            break;
+            case "series":
+              // search metadata children of the series to add them in basket
+              var canAdd = true;
+              $.ajax({
+                async: false,
+                url : '/geonetwork/srv/api/records/'+metadata.get("uuid")+'/related',
+                data : {
+                  type : "children"
+                },
+                dataType: "json",
+                accepts: {
+                    text: "application/json"
+                },
+                success : function(res) {
+                    if (typeof res == "string") res = JSON.parse(res);
+                    var metadatas = [];
+                    if ( res!==null ){
+                      if ( !(res.children instanceof Array) ){res.children = [res.children];}
+                      metadatas = res.children;
+                    }
+                    
+                    var nbAdd = 0;
+                    var metadatasByIds = {}; 
+                    var ajaxMetadatas = [];
+                    var harvested = [];
+                    metadatas.forEach(function(metadataChild){
+                      $.ajax({
+                        async: false,
+                        url : '/geonetwork/srv/fre/qi?_content_type=json&fast=index&uuid='+metadataChild.id,
+                        dataType: "json",
+                        accepts: {
+                            text: "application/json"
+                        },
+                        success : function(res) {
+                          if (typeof res == "string") res = JSON.parse(res);
+                          metadata = res.metadata;
+                          
+                          configureMetadata(metadata);
+                          var type = metadata.get('type'), serviceType = metadata.get('serviceType');
+                          
+                          if ( ["series", "dataset", "nonGeographicDataset"].indexOf(type)==-1 ) return;
+                          var isHarvested = metadata.get('isHarvested');
+                          if ( isHarvested=="y" ){
+                            var tabLinks = metadata.get("links");
+                            metadata.can_storage = tabLinks.length>0;
+                            window.panier_ajouter(metadata) && nbAdd++;
+                            return;
+                          }
+                          
+                          
+                          ajaxMetadatas.push({ 
+                            ID : metadata.get('id'),
+                            OBJET_TYPE : type,
+                            OBJET_STYPE : (type == "service" && serviceType ? serviceType : "")
+                          });
+                          metadatasByIds[metadata.get('id')] = metadata;
+                          }
+                        });
+                    });
+
+                  if ( ajaxMetadatas.length>0 ) {
+                    var traitements = ["TELECHARGEMENT", "NAVIGATION"];
+                    $.ajax({
+                      async : false,
+                      crossDomain: true,
+                      url : prodigeConfig.routes.catalogue.prodige_verify_rights_url+'_multiple',
+                      data : {
+                        metadatas : ajaxMetadatas,
+                        TRAITEMENTS : traitements.join("|")
+                      },
+                      success : function(oRights) {
+                        oRights = (typeof oRights=="string" ? JSON.parse(oRights) : oRights);
+                        for (var id in oRights ){
+                          var metadata = metadatasByIds[id];
+                          metadata.can_storage = traitements.some(function(traitement){return !!oRights[id][traitement];});
+                          if ( metadata.can_storage ){
+                            nbAdd++;
+                            window.panier_ajouter(metadata);
+                          }
+                        }
+                      }
+                    });
+                  }
+                  if ( nbAdd==0 ) {
+                    canAdd = false;
+                  }
+                }
+              });
+              return canAdd;
+             break;
+             default : /*not add other types in basket*/ return false;
+          }
+          
+          var serviceType = metadata.get('serviceType');
+          var id = metadata.get("id");
+          
+          if ( typeof $scope.indexes[id] == "undefined" ){
+            metadata.can_storage = (typeof metadata.can_storage=="undefined" ? null : metadata.can_storage);
+            $scope.indexes[id] = $scope.metadatas.length;
+            $scope.metadatas.push(metadata);
+            window.sessionStorage.setItem('PRODIGE.PANIER', JSON.stringify({metadatas : $scope.metadatas, indexes : $scope.indexes}));
+            //$scope.$apply();
+          }
+          $('#metadataCart').modal('show');
+          
+          if ( metadata.can_storage===null ){
+            
+            if ( metadata.get("isharvested")=="y" ){
+              var tabLinks = metadata.get("links");
+              metadata.can_storage = tabLinks.length>0;
+              if ( !metadata.can_storage ) $scope.panier_retirer(metadata);
+              $scope.$apply();
+            }else{
+            	$scope.metadatas[$scope.indexes[id]].query_storage = true;
+              var traitements = ["TELECHARGEMENT", "NAVIGATION"];
+              $.ajax({
+                crossDomain: true,
+                url : prodigeConfig.routes.catalogue.prodige_verify_rights_url,
+                data : {
+                  ID : id,
+                  OBJET_TYPE : type,
+                  OBJET_STYPE : (type == "service" && serviceType ? serviceType : ""),
+                  TRAITEMENTS : traitements.join("|")
+                },
+                success : function(oRights) {
+                	delete $scope.metadatas[$scope.indexes[id]].query_storage;
+                  oRights = (typeof oRights=="string" ? JSON.parse(oRights) : oRights);
+                  $scope.metadatas[$scope.indexes[id]].can_storage = traitements.some(function(traitement){return !!oRights[traitement];});
+                  if ( !$scope.metadatas[$scope.indexes[id]].can_storage ) $scope.panier_retirer($scope.metadatas[$scope.indexes[id]]);
+                  $scope.$apply();
+                },
+                failure : function(oRights) {
+                  delete $scope.metadatas[$scope.indexes[id]].query_storage;
+                	$scope.metadatas[$scope.indexes[id]].can_storage = false;
+                }
+              });
+            }
+          }
+          return true;
+        }; // panier_ajouter
+        $scope.panier_retirer = function(metadata){
+          if ( !metadata ) return;
+          configureMetadata(metadata);
+          var id = metadata.get('id');
+          if ( typeof $scope.indexes[id] != "undefined" ){
+              var index = $scope.indexes[id];
+              var mds = [], ids = {};
+              $scope.metadatas.forEach(function(md, mdIndex){
+                if ( mdIndex==index ) return;
+                ids[md['geonet:info'].id] = mds.length;
+                mds.push(md);
+              });
+            window.sessionStorage.setItem('PRODIGE.PANIER', JSON.stringify({metadatas : ($scope.metadatas = mds), indexes : ($scope.indexes = ids)}));
+          //  $scope.$apply();
+          }
+        }; // panier_retirer
+        $scope.panier_vider = function(){
+          $scope.metadatas = [];
+          $scope.indexes = {};
+          window.sessionStorage.setItem('PRODIGE.PANIER', JSON.stringify({metadatas : $scope.metadatas, indexes : $scope.indexes}));
+          //$scope.$apply();
+        };
+        $scope.panier_covisualiser = function(metadata){
+          window.panier_covisualiser($scope, prodigeConfig)
+        };
+        $scope.panier_downloadParametrage = function(metadata){
+          window.panier_downloadParametrage($scope, prodigeConfig);
+        };
+        
+      }
+    ]);
+  })();
+  
+  (prodigeActions = function(){
+    module.directive('gnResultsContainer', function($compile, $rootScope, $http, $templateCache){
+      return {
+        restrict: 'A',
+        link: function(scope, element, attrs, controller, transcludeFn) {
+          // remplacer le template d'affichage de la liste de résultats dans le cas de la vue "Contribuer"
+          if( $(element).closest('[data-ng-controller="GnEditorBoardSearchController"]').size() > 0 ) {
+            $http
+            .get('../../apps_extend/templates/editor.html', {cache: $templateCache})
+            .success(function(tplContent){
+              scope.prodigeIsContributeMenu = true;
+              element.replaceWith($compile(tplContent)(scope));
+            });
+          }
+        }
+      };
+    });
+    module.directive('gnMdLinks', function($compile, $rootScope){
+      return {
+        //require: ['!searching'],
+        restrict: 'C',
+        //transclude : true,
+        scope: false,
+        link : function(scope, element){
+          var div = document.createElement('gn-catalog-links')
+          element.append($(div));
+          
+          $compile($(div))(scope);
+          scope.prodigeMenu = $(div);
+        }
+      };
+    });
+    module.directive('gnMdActionsBtn', function($compile, $rootScope){
+      return {
+       // require: ['$root.prodige.loaded'],
+        restrict: 'C',
+        //transclude : true,
+        scope: false,
+        link : function(scope, element){
+          var div = document.createElement('gn-catalog-links');
+          $(element).before($(div));
+          
+          $compile($(div))(scope);
+          scope.prodigeMenu = $(div);
+          div.className = "gn-md-actions-btn gn-resultview pull-right";
+        }
+      };
+    });
+    module.directive('gnMdView', function($compile, $rootScope, $http){
+      return {
+        restrict: 'C',
+        //transclude : true,
+        //scope: false,
+        link : function(scope, element){
+          scope.$watch('gnMdViewObj.current.record', function(){
+            if( scope.gnMdViewObj.current.record ) {
+              //params: {logFile:"ConsultationMetadonnees",
+              //         objectName : record.get("title").replace('"', '""')+"\",\""+record.get("id")}
+              var record = scope.gnMdViewObj.current.record;
+              $http({
+                url : __PRODIGE_CATALOGUE_CONFIG_URL__+'/prodige/add_log', 
+                method: 'GET',
+                params: {logFile:"ConsultationMetadonnees", objectName : (record.title||record.defaultTitle)+";"+record.getId()},
+                withCredentials: true
+              })
+              .error(function(data,status,headers,config){
+                console.log("Erreur d'ecriture du log 'ConsultationMetadonnees'");
+              });
+            }
+          });
+        }
+      };
+    }); 
+    module.directive('gnSelectionActions', function($compile, $rootScope){
+      return {
+        transclue : true,
+        scope : false,
+        restrict: 'C',
+        link : function(scope, element){
+          var action = $(document.createElement('li'));
+          action.attr('ng-show', "$root.prodige.loaded");
+          action.html('<a ng-click="panier_ajouter_selection()"><i class="fa fa-star"></i>&nbsp;' +
+                  '<span title="Choisir les éléments sélectionnés sur la page uniquement">Choisir ces données (sélections de la page)</span>' +
+                  '</a>');
+          $(element).find('.dropdown-menu').prepend(action);
+          
+          scope.panier_ajouter_selection = function(){
+            var nbAdd = 0;
+            var metadatas = scope.$parent.$parent.searchResults.records; 
+            var metadatasByIds = {}; 
+            var ajaxMetadatas = [];
+            metadatas.forEach(function(metadata){
+              if ( !metadata["geonet:info"].selected ) return;
+              configureMetadata(metadata);
+              var type = metadata.get('type'), serviceType = metadata.get('serviceType');
+              if ( ["series", "dataset", "nonGeographicDataset"].indexOf(type)==-1 ) return;
+              var isHarvested = metadata.get('isHarvested');
+              if ( isHarvested=="y" ){
+                var tabLinks = metadata.get("links");
+                metadata.can_storage = tabLinks.length>0;
+                metadata.can_storage && window.panier_ajouter(metadata) && nbAdd++;
+                return;
+              }
+              ajaxMetadatas.push({ 
+                ID : metadata.get('id'),
+              OBJET_TYPE : type,
+              OBJET_STYPE : (type == "service" && serviceType ? serviceType : "")
+              });
+              metadatasByIds[metadata.get('id')] = metadata;
+            });
+            if ( ajaxMetadatas.length>=0 ) {
+              var traitements = ["TELECHARGEMENT", "NAVIGATION"];
+              $.ajax({
+                  async : false,
+                  crossDomain: true,
+                  url : prodigeConfig.routes.catalogue.prodige_verify_rights_url+'_multiple',
+                  data : {
+                    metadatas : ajaxMetadatas,
+                    TRAITEMENTS : traitements.join("|")
+                  },
+                  success : function(oRights) {
+                    oRights = (typeof oRights=="string" ? JSON.parse(oRights) : oRights);
+  
+                    for (var id in oRights ){
+                        var metadata = metadatasByIds[id];
+                        metadata.can_storage = traitements.some(function(traitement){return !!oRights[id][traitement];});
+                        if ( metadata.can_storage ){
+                            window.panier_ajouter(metadata) && nbAdd++;
+                        }
+                    }
+                  }
+              });
+            }
+            if ( nbAdd==0 ) {
+                Ext.Msg.alert('Ajout de la sélection dans le panier', 'Aucune métadonnée ne peut être ajoutée au panier.');
+            }
+          }
+          $compile(action)(scope);
+        }
+      }
+    });
+    
+    module.directive('gnCatalogLinks', function($rootScope){
+      return {
+        require: ['$root.prodige.loaded'],
+        transclude : true,
+        templateUrl : '../../apps_extend/templates/metadata-actions.html',
+        controller : ['$scope', '$rootScope', '$controller', function($scope, $rootScope, $controller){
+
+          // hide default geosource delete metadata actions
+          angular.element('a.gn-md-delete-btn').hide(); //
+          angular.element('.gn-selection-actions li>a[ng-click="mdService.deleteMd()"]').parent().hide(); // marche pas
+
+          $scope.prodigeActions = [];
+          $scope.setMetadataDecoration = function(){
+            if ( !$scope.md ) return true;
+            configureMetadata($scope.md);
+            var legendTooltip;
+            var legendConfig = {
+              "vector"    : ["Série de données vecteur",  (legendTooltip="Une série de données géographiques est «une compilation identifiable de données géographiques» , une donnée géographique étant «toute donnée faisant directement ou indirectement référence à un lieu ou une zone géographique spécifique».")],
+              //"grid"      : ["Série de données raster",    legendTooltip],
+              "raster"    : ["Série de données raster",    legendTooltip],
+              "nonGeographicDataset" : ["Série de données non géographique ou tabulaire"],
+              "series"    : ["Ensemble de séries de données", "Un ensemble de séries de données géographiques est une compilation de séries de données géographiques partageant la même spécification de produit."],
+              "map"       : ["Cartes"],
+              "service"   : ["Services"],
+              "chart"   : ["Graphes"]
+            };
+            
+            var mdtype;
+            var type = "unknown";
+            switch (mdtype = $scope.md.get('type')){
+              case "dataset" :
+                switch ($scope.md.get('spatialRepresentationType_text')){
+                  case "Vecteur" : type = "vector"; break;
+                  case "Raster" : type = "raster"; break;
+                  case "Tabulaire" : type = "nonGeographicDataset"; break;
+                  default : type = 'nonGeographicDataset'; break;
+                }
+              break;
+              case "service" :
+                if($scope.md.get('keyword')=='infoChartAccessService'){
+                  type = "chart";
+                }else{
+                  type = ($scope.md.get('serviceType')=="invoke" ? "map" : mdtype);
+                }
+              break;
+              default :
+                type = mdtype;
+              break;
+            }
+            
+            $scope.md && $scope.prodigeMenu.closest("[data-gn-fix-mdlinks]").addClass('metadata-'+type);
+            
+            //création d'un encart de légende
+            if ( $scope.prodigeIsContributeMenu!=true && $('.legend-metadata').length==0 && $('[data-sortby-combo]').length!=0 ){
+              var legend;
+              legend = $('<div class="pull-right ng-isolate-scope"></div>');
+              legend.insertAfter('[data-sortby-combo]');
+              
+              legend = $('<div class="btn-group legend-metadata">' +
+                         '<button type="button" class="btn btn-default dropdown-toggle" data-toggle="dropdown" aria-expanded="false"><i class="fa fa-tags"></i>&nbsp; Légende</span>&nbsp;<span class="caret"></span>' +
+                         '</div>').appendTo(legend);
+              legend = $('<ul class="dropdown-menu" role="menu"></ul>').appendTo(legend);
+            
+              $.each(legendConfig, function(cls, info){
+                legend.append('<li'+(info[1] ? ' title="'+info[1]+'"' : '')+'><div class="icon metadata-'+cls+'"></div>&nbsp;'+info[0]+'<br/></li>');
+              })
+            
+            }
+            return true;
+          }
+          $scope.initMetadataActions = function(){
+            var menu = $scope.prodigeMenu.find('.metadataActions');
+            $(menu).trigger('beforeshow');
+            menu.getEl = function(){return $(this).get(0)};
+            menu.getId = function(){return $(this).get(0).id};
+            menu.insert = function(index, el){
+              if ( el instanceof Ext.menu.ItemPro ){
+                $scope.prodigeActions.push(el);
+                return $(this).append($(el.getEl()));
+              }
+              if ( el instanceof Ext.ActionPro ){
+                $scope.prodigeActions.push(el);
+                return $(this).append($(el.getEl()));
+              }
+              return $(this).append($(el))
+            };
+            window.setMetadataActions($rootScope, $scope, menu, $scope.md, false, prodigeConfig);
+          }
+        }]
+      };
+    });
+  })();//end prodigeActions
+  
+  /*$scope.confirm = function(title, body, success, fn_scope){
+    $scope.msg = {msg_type : "alert", msg_title : title, msg_body : body};
+    $scope.msg.confirmFn = function(){
+      if ( success ) 
+        success.call(fn_scope||this); 
+      $scope.showMessage = false;
+    };
+    $scope.showMessage = true;
+  };*/
+  
+
+  (extMessages = function (){
+    module./*directive( 'extMessages', function($compile){return {
+      restrict : 'A',
+      scope : false,
+      */
+      controller( 'extMessages', /* :*/ [ '$scope', "$controller", "$timeout"
+    , function(/*scope,element*/$scope, $controller, $timeout){
+        // move modal to body to avoid backdrop overlap
+        $('#extMessages').appendTo('body');
+        //console.log(arguments);
+        if ( typeof Ext == "undefined" ) Ext = {};
+        if ( typeof Ext.Msg == "undefined" ) Ext.Msg = {};
+        
+        $scope.modaltype = "alert";
+        $scope.title = "Title";
+        $scope.body  = "Body";
+          
+        $scope.close = function(){
+          $('#extMessages #autoclose').click();
+        }
+        
+        $scope.info = function(title, body, success, fn_scope){
+          $('#extMessages').zIndex( 10000 ).modal('show');
+          //diffère l'assignation des variables pour prise en compte
+          $timeout(function(){
+            $scope.modaltype = "info";
+            $scope.title = title;
+            $scope.body  = body;
+          }, 0);
+        };
+
+        
+
+        $scope.alert = function(title, body, success, fn_scope){
+          $('#extMessages').zIndex( 10000 ).modal('show');
+          //diffère l'assignation des variables pour prise en compte
+          $timeout(function(){
+            $scope.modaltype = "alert";
+            $scope.title = title;
+            $scope.body  = body;
+            $scope.confirmFn = function(btn){
+              if ( success ) {
+                success.apply(fn_scope||$scope, arguments);
+              }
+            };
+          }, 0);
+          
+        };
+        
+        $scope.confirm = function(title, body, success, fn_scope){
+          $('#extMessages').zIndex( 10000 ).modal('show');
+          //diffère l'assignation des variables pour prise en compte
+          $timeout(function(){
+            $scope.modaltype = "confirm";
+            $scope.title = title;
+            $scope.body  = body;
+            $scope.confirmFn = function(btn){
+              if ( success ) {
+                success.apply(fn_scope||$scope, arguments);
+              }
+            };
+          }, 0);
+          
+        };
+        
+        Ext.Msg.info = function(title, body, success, fn_scope){
+          $scope.info(title, body, success, fn_scope);
+          return $scope.close;
+        };
+        Ext.Msg.alert = function(title, body, success, fn_scope){
+          $scope.alert(title, body, success, fn_scope);
+          return $scope;
+        };
+        Ext.Msg.confirm = function(title, body, success, fn_scope){
+          $scope.confirm(title, body, success, fn_scope);
+          return $scope;
+        };
+      }
+    ]
+    //}}
+    );
+  })();
+}
+
diff --git a/src/main/webapp/apps_extend/administration_carto.js b/src/main/webapp/apps_extend/administration_carto.js
new file mode 100644
index 0000000..ffc396f
--- /dev/null
+++ b/src/main/webapp/apps_extend/administration_carto.js
@@ -0,0 +1,1434 @@
+
+/**
+ * @brief Initialisation de la page
+ * @return
+ */
+function	administration_carto_init()
+{
+	try
+	{
+		IHM_historique_add(window.location);
+		IHM_Chargement_stop();
+		administration_carto_domaineChange();
+		domaines_event_onchange_add(events_administration_carto_changedomaine);
+		administration_carto_onfocus();
+		
+	}
+	catch(e)
+	{}
+}
+
+function	administration_carto_onfocus()
+{
+	var		domaine;
+
+	try
+	{
+		domaine = domaines_getCurentDomaine();
+		if (domaine)
+			IHM_Domaines_resume();
+		else
+			IHM_Domaines_show();
+	}
+	catch(e){}
+}
+
+/**
+ * @brief Gère le clic sur un autre domaine
+ * @return
+ */
+function	administration_carto_domaineChange()
+{
+	var		domaine;
+	var		sousdomaine;
+	try
+	{
+		domaine = domaines_getCurentDomaine();
+		sousdomaine = domaines_getCurentSousDomaine();
+		if (domaine){
+			administration_carto_loadData(domaine, sousdomaine);
+		}
+		else
+		{
+		  Ext.getCmp('westLayout').setTitle("Domaine / Sous-domaine");
+			IHM_Panier_hide();
+			IHM_Domaines_show();
+			IHM_Chargement_stop();
+			IHM_NoSelectionDomain_show();
+      window.timerOnload = setTimeout("window.onload()", 2500);
+		}
+	}
+	catch(e){}
+}
+/**
+ * @brief Charge les données dans un sous-domaine/domaine
+ * @param domaine
+ * @param sousdomaine
+ * @return
+ */
+function	administration_carto_loadData(domaine, sousdomaine)
+{
+  if ( document.location.pathname.indexOf("administration")==-1 ){
+    
+  }
+  else {
+  	var		url;
+  	var		params;
+  	var		i;
+  	var		param;
+  	var		curdom = null;
+  	var		cursdom = null;
+    if ( window.timerOnload ){
+      clearTimeout(window.timerOnload);
+      window.timerOnload = null;
+    }
+  	IHM_Chargement_start();
+  	//administration_carto_setResume(domaine, sousdomaine);
+  	url = document.location.pathname + "?domaine=" + domaine;
+  	params = document.location.search.substr(1).split("&");
+  	for (i = 0; i < params.length; i++)
+  	{
+  		param = params[i].split("=");
+  		if (param[0] == "domaine")
+  			curdom = unescape(param[1]);
+  		if (param[0] == "sousdomaine")
+  			cursdom = unescape(param[1]);
+  	}
+  	if (sousdomaine)
+  		url += "&sousdomaine=" + sousdomaine;
+  	if ((!curdom && domaine) || (!cursdom && sousdomaine) || (cursdom && !sousdomaine) || (curdom != domaine) || (cursdom != sousdomaine)){
+  	  document.location.replace(url);
+  	}
+    else
+      IHM_Chargement_stop();
+  }
+}
+
+/**
+ * @brief Ouvre l'interface cartographique
+ * @param url
+ * @return
+ */
+function	administration_carto_openInterface(action, login, pwd, mdtitle, PN_IS_ADM_PRODIGE)
+{
+	if(document.administration_carto){
+	    document.administration_carto.login.value = login;
+	    document.administration_carto.pass.value = pwd;
+	    document.administration_carto.mdtitle.value = mdtitle;
+	    //document.administration_carto.PN_IS_ADM_PRODIGE.value = PN_IS_ADM_PRODIGE;
+	    document.administration_carto.action = action;
+	    administration_carto_win_cartodynamique = window.open("blank.html", "Cartographie_dynamique", "directories=0, fullscreen=yes, menubar=0, status=1, toolbar=0, resizable=1");
+	    document.administration_carto.submit();
+	}
+}
+
+/**
+ * @brief Ouvre l'interface cartographique
+ * @param url url de la carte
+ * @param mapName nom de la carte
+ * @return
+ */
+function  consultation_openInterface(url, mapName)
+{
+  //maj Logs
+  var iframe = this;
+  iframe.tabParams = new Array(mapName);
+  
+ 	var ajaxUrl = IHM_getBaseUrl()+"consultation_addLog.php";
+  var queryParams = {'logFile' : 'ConsultationCarte', 'objectName' :mapName};
+  iframe.onSuccess = function(){};
+  AjaxRequest(ajaxUrl, queryParams, iframe);
+  consultation_win_cartodynamique = window.open(url, "Cartographie_dynamique", "directories=0, fullscreen=yes, menubar=0, status=1, toolbar=yes, resizable=1");
+}
+
+/**
+ * @version 3.2 - 06/04/2012
+ * @brief Supprime le service
+ * @param metadata_id
+ * @return
+ */
+function administration_carto_delService(metadata_id, service_nom, onSuccess, tabParams)
+{
+  var iframe = this;
+  iframe.tabParams = [metadata_id, onSuccess, tabParams];
+  iframe.onSuccess = confirm_administration_carto_delService;
+  iframe.tabParamsNo = tabParams;
+  iframe.onResponseNo = onSuccess;
+	Ext.Msg.confirm("Suppression du service", "Le service "+service_nom+" sera supprimé, les contextes liés à ce service sont susceptibles de ne plus fonctionner.<br>" +
+			                "Souhaitez-vous continuer  ?", confirm, iframe);
+}
+
+/**
+ * @version 3.2 - 06/04/2012
+ * @param metadata_id
+ * @param deldata
+ * @return
+ */
+function confirm_administration_carto_delService(metadata_id, onSuccess, tabParams){
+  var iframe = this;
+  iframe.tabParams = tabParams;
+  var ajaxUrl = IHM_getBaseUrl()+"administration_carto_Action.php";
+  var queryParams = {action : "del", metadataId : escape(metadata_id)};
+  iframe.onSuccess = onSuccess;
+  AjaxRequest(ajaxUrl, queryParams, iframe);
+}
+
+/**
+ * @version 3.2 - 07/03/2012
+ * @brief Supprime la carte
+ * @param pk_carte
+ * @param pk_stockage_carte
+ * @param metadata_id
+ * @return
+ */
+function	administration_carto_delMap(pk_carte, pk_stockage_carte, metadata_id, carte_nom, onSuccess, tabParams)
+{
+	
+	var iframe = this;
+  iframe.tabParams = [pk_carte, pk_stockage_carte, metadata_id, true, onSuccess, tabParams];
+  iframe.onSuccess = confirm_administration_carto_delMap;
+  iframe.tabParamsNo = tabParams;
+  iframe.onResponseNo = onSuccess;
+	Ext.Msg.confirm("Suppression de carte", "La carte "+carte_nom+" sera supprimée, les contextes liés à cette carte sont susceptibles de ne plus fonctionner.<br>" +
+			                "Souhaitez-vous continuer  ?", confirm, iframe);
+}
+
+/**
+ * @version 3.2 - 07/03/2012
+ * @param pk_carte
+ * @param pk_stockage_carte
+ * @param metadata_id
+ * @param deldata
+ * @return
+ */
+function confirm_administration_carto_delMap(pk_carte, pk_stockage_carte, metadata_id, deldata, onSuccess, tabParams){
+  
+  var iframe = this;
+  iframe.tabParams = tabParams;
+  var ajaxUrl = IHM_getBaseUrl()+"administration_carto_Action.php";
+  var queryParams = {action : "del", stockageCarteId : pk_stockage_carte, carteId : pk_carte, metadataId : escape(metadata_id), deldata : deldata};
+  iframe.onSuccess = onSuccess;
+  AjaxRequest(ajaxUrl, queryParams, iframe);
+  
+  /**
+   * @deprecated v3.2 - 07/03/2012
+   */
+  /*
+  var   params;
+  var   i;
+  var   param;
+  var   curdom = null;
+  var   cursdom = null;
+  var   url;
+
+  params = document.location.search.substr(1).split("&");
+	for (i = 0; i < params.length; i++)
+	{
+		param = params[i].split("=");
+		if (param[0] == "domaine")
+			curdom = param[1];
+		if (param[0] == "sousdomaine")
+			cursdom = param[1];
+	}
+	url = IHM_getBaseUrl();
+	url += "administration_carto_Action.php?action=del&stockageCarteId=" + pk_stockage_carte + "&carteId=" + pk_carte + "&metadataId=" + escape(metadata_id);
+	if (deldata)
+		url += "&deldata=1";
+	if (curdom)
+	{
+		url += "&domaine=" + escape(curdom);
+		if (cursdom)
+			url += "&sousdomaine=" + escape(cursdom);
+	}
+	window.location = url;
+	*/
+}
+
+/**
+ * @version 3.2 - 07/03/2012
+ * @brief Supprime la métadonnée associée aux données MAJIC
+ * @param pk_couche
+ * @param metadata_id
+ * @return
+ */
+function  administration_carto_delCoucheMajic(pk_couche, metadata_id, couche_nom, onSuccess, tabParams)
+{
+  var iframe = this;
+  iframe.tabParams = [pk_couche, metadata_id, true, "majic", couche_nom, onSuccess, tabParams];
+  iframe.onSuccess = confirm_administration_carto_delDataConfirmed;
+  iframe.tabParamsNo = tabParams;
+  iframe.onResponseNo = onSuccess;
+  Ext.Msg.confirm("Suppression de couche", "La donnée "+couche_nom+" va être supprimée. Souhaitez-vous continuer ?", confirm, iframe);
+  
+}
+
+
+/**
+ * @version 3.2 - 07/03/2012
+ * @brief Supprime la couche et sa métadonnée associée
+ * @param pk_couche
+ * @param metadata_id
+ * @return
+ */
+function	administration_carto_delCouche(pk_couche, metadata_id, layerTable, coucheType, coucheSrv, couche_nom, onSuccess, tabParams)
+{
+	var iframe = this;
+  iframe.tabParams = [pk_couche, metadata_id, true, layerTable, coucheType, coucheSrv, couche_nom, onSuccess, tabParams];
+  iframe.onSuccess = confirm_administration_carto_delData;
+  iframe.tabParamsNo = tabParams;
+  iframe.onResponseNo = onSuccess;
+	Ext.Msg.confirm("Suppression de couche", "La donnée "+couche_nom+" va être supprimée. Souhaitez-vous continuer ?", confirm, iframe);
+}
+
+
+/**
+ * @version 3.2 - 07/03/2012
+ * Suppression d'une donnée, appel de la liste des cartes impactées en ajax
+ * @param pk_couche identifiant de donnée
+ * @param metadata_id identifiant de métadonnée
+ * @param deldata vrai si suppression de la donnée
+ * @param layerTable nom de la table
+ * @param coucheType type de couche (vecteur ou raster)
+ * @param coucheSrv url du serveur
+ * @return
+ */  
+function confirm_administration_carto_delData(pk_couche, metadata_id, deldata, layerTable, coucheType, coucheSrv, couche_nom, onSuccess, tabParams){
+  
+  var iframe = this;
+  iframe.tabParams = new Array(pk_couche, metadata_id, coucheType, couche_nom, onSuccess, tabParams);
+  var ajaxUrl = window.location.protocol+"//"+ coucheSrv + "/PRRA/Administration/Administration/Layers/LayerGetMaps.php";
+  var queryParams = {coucheType : coucheType, layerTable : layerTable};
+  iframe.onSuccess = showResultLayerMaps;
+  AjaxRequest(ajaxUrl, queryParams, iframe);
+}
+
+/**
+ * @version 3.2 - 07/03/2012
+ * @brief Affichage de la liste des mapfiles contenant la couche
+ * @param pk_couche identifiant de donnée
+ * @param metadata_id identifiant de métadonnée
+ * @param responseText retour Ajax
+ * @return
+ */  
+function showResultLayerMaps(pk_couche, metadata_id, coucheType, couche_nom, onSuccess, tabParams, responseText){
+  
+  var iframe = this;
+  iframe.tabParams = [pk_couche, metadata_id, true, coucheType, onSuccess, tabParams];
+  iframe.onSuccess = confirm_administration_carto_delDataConfirmed;
+  iframe.tabParamsNo = tabParams;
+  iframe.onResponseNo = onSuccess;
+  var tabmaps = eval(responseText);
+  if(tabmaps.length == 0)
+    Ext.Msg.confirm("Suppression de couche", "Aucune carte ne contient la couche "+couche_nom+", souhaitez-vous poursuivre la suppression ?", confirm, iframe);
+  else{
+    var strMaps ="";
+    for (var i=0; i<tabmaps.length;i++)
+      strMaps+= "<b>"+tabmaps[i]+"</b><br>"; 
+    Ext.Msg.confirm("Suppression de couche", "La couche "+couche_nom+" est contenue dans les cartes suivantes :<br>" +
+                        strMaps+ "La couche sera supprimée des cartes. Souhaitez-vous poursuivre la suppression ?", confirm, iframe);
+  }
+}
+
+/**
+ * @version 3.2 - 07/03/2012
+ * suppression d'une donnée confirmée
+ * @param pk_couche identifiant de donnée
+ * @param metadata_id identifiant de métadonnée
+ * @param deldata boolean permet la suppression des données associées
+ * @return
+ */  
+function confirm_administration_carto_delDataConfirmed(pk_couche, metadata_id, deldata, mode, onSuccess, tabParams){
+  
+  var iframe = this;
+  iframe.tabParams = tabParams;
+  var ajaxUrl = IHM_getBaseUrl()+"administration_carto_Action.php";
+  var queryParams = {action : "del", coucheId : pk_couche, metadataId : escape(metadata_id), deldata : deldata, mode : mode};
+  iframe.onSuccess = onSuccess;
+  AjaxRequest(ajaxUrl, queryParams, iframe);
+  
+  /**
+   * @deprecated v3.2 - 07/03/2012
+   */
+  /*
+  var   params;
+  var   i;
+  var   param;
+  var   curdom = null;
+  var   cursdom = null;
+  var   url;
+  params = document.location.search.substr(1).split("&");
+  for (i = 0; i < params.length; i++)
+  {
+    param = params[i].split("=");
+    if (param[0] == "domaine")
+      curdom = param[1];
+    if (param[0] == "sousdomaine")
+      cursdom = param[1];
+  }
+ 	url = IHM_getBaseUrl();
+ 	url += "administration_carto_Action.php?action=del&coucheId=" + pk_couche + "&metadataId=" + escape(metadata_id);
+  if (deldata=="true")
+    url += "&deldata=1";
+  if (curdom)
+  {
+    url += "&domaine=" + escape(curdom);
+    if (cursdom)
+      url += "&sousdomaine=" + escape(cursdom);
+  }
+  url+="&mode="+mode;
+  window.location = url;
+  */
+}
+
+/**
+ * @brief ajoute une couche WMS au serveur
+ * @param pk_couche
+ * @param type_service
+ */
+function administration_carto_webservice(pk_data, type_service, login, pwd, type_data){
+	var		params;
+	var		i;
+	var		param;
+	var		curdom = null;
+	var		cursdom = null;
+	var		url;
+	var		deldata = false;
+
+	params = document.location.search.substr(1).split("&");
+	for (i = 0; i < params.length; i++)
+	{
+		param = params[i].split("=");
+		if (param[0] == "domaine")
+			curdom = param[1];
+		if (param[0] == "sousdomaine")
+			cursdom = param[1];
+	}
+	url = IHM_getBaseUrl();
+	if(type_data == 0) //couche
+		url += "administration_carto_webservices.php?action="+type_service+"&coucheId=" + pk_data+"&login="+login+"&pass="+pwd+"&type_data="+type_data;
+	if(type_data == 1)//carte
+		url += "administration_carto_webservices.php?action="+type_service+"&carteId=" + pk_data+"&login="+login+"&pass="+pwd+"&type_data="+type_data;
+	if (curdom){
+		url += "&domaine=" + escape(curdom);
+		if (cursdom)
+			url += "&sousdomaine=" + escape(cursdom);
+	}
+	if(type_data == 0) //couche
+		window.location = url;
+	if(type_data == 1){
+	  var iframe = this;
+	  var ajaxUrl = url;
+	  var queryParams = {};//{action:"valid",metadataId:metadata_id,statut:statut,mode:mode};
+	  iframe.tabParams = null;
+	  iframe.onSuccess = function(responseText){
+	    var oRes = eval("("+responseText+")");
+	    if ( oRes.success ) {
+	      //alert("La carte est publié en WMS.");
+	      Ext.Msg.alert("Publication WMS", (oRes.enable ? "La carte a été correctement publiée en WMS" : "Le service WMS associé à la carte a été supprimé")) ;
+	    } else {
+	      Ext.Msg.alert("Echec", oRes.msg);
+	    }
+	  };
+	  AjaxRequest(ajaxUrl, queryParams, iframe);
+	}//carte
+}
+
+/**
+ * @version 3.2 - 07/03/2012
+ * @brief Change le statut d'une fiche de métadonnées
+ * @param metadata_id
+ * @param title
+ * @param statut
+ * @param mode
+ * @param onSuccess             fonction à exécuter après changement de statut
+ * @return
+ */
+function	administration_carto_changeStatut(metadata_id, title, statut, mode, onSuccess)
+{
+	var		msg = "";
+	var		fram;
+	var		url;
+	var		urlfram;
+
+	try
+	{
+		if(mode!="majic"){
+			switch(statut)
+			{
+				case 1:
+					msg = "La fiche " + title + " va être renvoyée à la saisie";
+					break;
+				case 2:
+					msg = "La fiche " + title + " va être proposée pour validation";
+					break;
+				case 3:
+					msg = "La fiche " + title + " va être validée et proposée pour publication";
+					break;
+				case 4:
+					msg = "La fiche " + title + " va être publiée";
+					break;
+				default:
+					return;
+					break;
+			}
+		}else{
+			switch(statut)
+			{
+				case 1:
+					msg = "La métadonnée majic va être renvoyée à la saisie";
+					break;
+				case 2:
+					msg = "La métadonnée majic va être proposée pour validation";
+					break;
+				case 3:
+					msg = "La métadonnée majic va être validée et proposée pour publication";
+					break;
+				case 4:
+					msg = "La métadonnée majic va être publiée";
+					break;
+				default:
+					return;
+					break;
+			}	
+		}
+	  var iframe = this;
+	  iframe.tabParams = [metadata_id, statut, mode, onSuccess];
+	  iframe.onSuccess = changeStatut;
+	  Ext.Msg.confirm('Changement de statut', msg, confirm, iframe);
+	}
+	catch(e){}
+}
+
+/**
+ * @version 3.2 - 07/03/2012
+ * Acces à la page de modification de statut
+ * @param metadata_id
+ * @param statut
+ * @param mode
+ * @return
+ */
+function changeStatut(metadata_id, statut, mode, onSuccess){
+  
+  var iframe = this;
+  var ajaxUrl = IHM_getBaseUrl()+"administration_carto_Action.php";
+  var queryParams = {action:"valid",metadataId:metadata_id,statut:statut,mode:mode};
+  iframe.tabParams = null;
+  iframe.onSuccess = function(responseText){
+    var oRes = eval("("+responseText+")");
+    if ( oRes.success ) {
+      onSuccess();
+    } else {
+      Ext.Msg.alert("Echec", oRes.msg);
+    }
+  };
+  AjaxRequest(ajaxUrl, queryParams, iframe);
+  
+ /**
+  * @deprecated v3.2 - 07/03/2012
+  */
+ /*
+  var   curdom = null;
+  var   cursdom = null;
+  params = document.location.search.substr(1).split("&");
+  for (i = 0; i < params.length; i++)
+  {
+    param = params[i].split("=");
+    if (param[0] == "domaine")
+      curdom = param[1];
+    if (param[0] == "sousdomaine")
+      cursdom = param[1];
+  }
+  var url = IHM_getBaseUrl();
+  url += "administration_carto_Action.php?action=valid";
+  if (curdom)
+  {
+    url += "&domaine=" + escape(curdom);
+    if (cursdom)
+      url += "&sousdomaine=" + escape(cursdom);
+  }
+  url +="&metadataId=" + escape(metadata_id) + "&statut=" + statut + "&mode=" + mode;
+  window.location = url;
+  */
+}
+
+/**
+ * @version 3.2 - 07/03/2012
+ * @brief Change le statut de plusieurs fiches de métadonnées
+ * @param tabMetadata           tableau d'informations de métadonnées sous la forme [{id:<id>, title:<title>, statut:<statut>}, {id:<id>, title:<title>, statut:<statut>}]
+ * @param statut
+ * @param mode
+ * @param modePropositionActif  string true ou false
+ * @param onSuccess             fonction à exécuter après changement de statut
+ * @return
+ */
+function  administration_carto_action_changeStatut(tabMetadata, statut, mode, modePropositionActif, onSuccess)
+{
+  try
+  {
+    var tabMetadataId = [];
+    var tabMetadataTitle = [];
+    for ( var i=0; i<tabMetadata.length; i++ ) {
+      switch ( statut ) {
+        case 1 :  // action retirer
+          if ( tabMetadata[i].statut != 1 ) {
+            tabMetadataId.push(tabMetadata[i].id);
+            tabMetadataTitle.push(tabMetadata[i].title);
+          }
+        break;
+        case 2 : // action proposer
+          if ( tabMetadata[i].statut == 1 ) {
+            tabMetadataId.push(tabMetadata[i].id);
+            tabMetadataTitle.push(tabMetadata[i].title);
+          }
+        break;
+        case 3 : // action valider
+          if ( !modePropositionActif && tabMetadata[i].statut == 1
+            || tabMetadata[i].statut == 2 ) {
+            tabMetadataId.push(tabMetadata[i].id);
+            tabMetadataTitle.push(tabMetadata[i].title);
+          }
+        break;
+        case 4 : // action publier
+          if ( tabMetadata[i].statut == 3 ) {
+            tabMetadataId.push(tabMetadata[i].id);
+            tabMetadataTitle.push(tabMetadata[i].title);
+          }
+        break;
+      }
+    }
+    if ( tabMetadataTitle.length == 0 ) {
+      Ext.Msg.alert("Actions sur la sélection", "Impossible de réaliser l'action demandée pour les métadonnées sélectionnées.");
+    } else {
+      var msg = ( tabMetadataTitle.length == 1 ? "La fiche " : "Les fiches " )+tabMetadataTitle.join(", ");
+      switch ( statut ) {
+        case 1 :
+          msg += ( tabMetadataTitle.length == 1 ? " va être renvoyée" : " vont être renvoyées")+" à la saisie.";
+        break;
+        case 2 :
+          msg += ( tabMetadataTitle.length == 1 ? " va être proposée" : " vont être proposées")+" pour validation.";
+        break;
+        case 3 :
+          msg += ( tabMetadataTitle.length == 1 ? " va être validée et proposée" : " vont être validées et proposées")+" pour publication.";
+        break;
+        case 4 :
+          msg += ( tabMetadataTitle.length == 1 ? "va être publiée" : " vont être publiées")+".";
+        break;
+      }
+      var iframe = this;
+      iframe.tabParams = new Array(tabMetadataId.join(","), statut, mode, onSuccess);
+      iframe.onSuccess = changeStatutCarto;
+      Ext.Msg.confirm('Changement de statut', msg, confirm, iframe);
+    }
+    
+    /**
+     * @deprecated v3.2 - 07/03/2012
+     */
+    /*
+    var   msg = "";
+    var   fram;
+    var   url;
+    var   urlfram;
+    var   metadataList = "";
+    
+    var tabCheckbox = document.action_form.action;
+    var nbFiche = 0;
+    
+    var strTitre = "";
+    
+    switch(statut)
+    {
+      case 1:
+        if(typeof(tabCheckbox.length)!="undefined"){
+          for (var i=0; i<tabCheckbox.length; i++){
+            //case cochée et statut autre que en cours
+            if(tabCheckbox[i].checked && document.action_form.elements["statut_"+tabCheckbox[i].value].value != 1){
+              var tabInfoMetadata = tabCheckbox[i].value.split("_");
+              metadataList+=tabInfoMetadata[1]+",";
+              nbFiche ++;
+              strTitre+= "<b>"+document.action_form.elements["titre_"+tabCheckbox[i].value].value + "</b><br>";
+              
+            }
+          }
+        }else{ //only one checkbox
+          if(tabCheckbox.checked && document.action_form.elements["statut_"+tabCheckbox.value].value != 1){
+            var tabInfoMetadata = tabCheckbox.value.split("_");
+            metadataList+=tabInfoMetadata[1]+",";
+            nbFiche ++;
+            strTitre+= "<b>"+document.action_form.elements["titre_"+tabCheckbox.value].value + "</b><br>";
+            
+          }
+        }
+          
+        if (nbFiche==0){
+          Ext.Msg.alert("Actions sur la sélection", "Impossible de réaliser l'action demandée pour les métadonnées sélectionnées");
+          return;
+        }else if(nbFiche==1){
+          msg = "La fiche "+ strTitre+" va être renvoyée à la saisie";
+        }else{
+          msg = "Les fiches <br>"+ strTitre+" vont être renvoyées à la saisie";
+        }
+        break;
+      case 2:
+        if(typeof(tabCheckbox.length)!="undefined"){
+          for (var i=0; i<tabCheckbox.length; i++){
+            //case cochée et statut en cours
+            if(tabCheckbox[i].checked && document.action_form.elements["statut_"+tabCheckbox[i].value].value == 1){
+              var tabInfoMetadata = tabCheckbox[i].value.split("_");
+              metadataList+=tabInfoMetadata[1]+",";
+              nbFiche ++;
+              strTitre+= "<b>"+document.action_form.elements["titre_"+tabCheckbox[i].value].value + "</b><br>";
+            }
+          }
+        }else{ //only one checkbox
+          if(tabCheckbox.checked && document.action_form.elements["statut_"+tabCheckbox.value].value == 1){
+            var tabInfoMetadata = tabCheckbox.value.split("_");
+            metadataList+=tabInfoMetadata[1]+",";
+            nbFiche ++;
+            strTitre+= "<b>"+document.action_form.elements["titre_"+tabCheckbox.value].value + "</b><br>";
+          }
+        }
+        if (nbFiche==0){
+          Ext.Msg.alert("Actions sur la sélection", "Impossible de réaliser l'action demandée pour les métadonnées sélectionnées");
+          return;
+        }else if(nbFiche==1){
+          msg = "La fiche "+ strTitre+" va être proposée pour validation";
+        }else{
+          msg = "Les fiches <br>"+ strTitre+" vont être proposées pour validation";
+        }
+        
+        break;
+      case 3:
+        if(typeof(tabCheckbox.length)!="undefined"){
+          for (var i=0; i<tabCheckbox.length; i++){
+            //case cochée et statut attente validation ou en cours (si mode proposition désactivé)
+            if(tabCheckbox[i].checked && (document.action_form.elements["statut_"+tabCheckbox[i].value].value == 2 
+                || (modePropositionActif =="off" && document.action_form.elements["statut_"+tabCheckbox[i].value].value == 1) )){
+              var tabInfoMetadata = tabCheckbox[i].value.split("_");
+              metadataList+=tabInfoMetadata[1]+",";
+              nbFiche ++;
+              strTitre+= "<b>"+document.action_form.elements["titre_"+tabCheckbox[i].value].value + "</b><br>";
+            }
+          }
+        }else{ //only one checkbox
+          if(tabCheckbox.checked && (document.action_form.elements["statut_"+tabCheckbox.value].value == 2 
+              || (modePropositionActif =="off" && document.action_form.elements["statut_"+tabCheckbox.value].value == 1) )){
+            var tabInfoMetadata = tabCheckbox.value.split("_");
+            metadataList+=tabInfoMetadata[1]+",";
+            nbFiche ++;
+            strTitre+= "<b>"+document.action_form.elements["titre_"+tabCheckbox.value].value + "</b><br>";
+          }
+        }
+        if (nbFiche==0){
+          Ext.Msg.alert("Actions sur la sélection", "Impossible de réaliser l'action demandée pour les métadonnées sélectionnées");
+          return;
+        }else if(nbFiche==1){
+          msg = "La fiche "+ strTitre+" va être validée et proposée pour publication";
+        }else{
+          msg = "Les fiches <br>"+ strTitre+" vont être validées et proposées pour publication";
+        }
+        
+        break;
+      case 4:
+        if(typeof(tabCheckbox.length)!="undefined"){
+          for (var i=0; i<tabCheckbox.length; i++){
+            //case cochée et statut validée
+            if(tabCheckbox[i].checked && document.action_form.elements["statut_"+tabCheckbox[i].value].value == 3){
+              var tabInfoMetadata = tabCheckbox[i].value.split("_");
+              metadataList+=tabInfoMetadata[1]+",";
+              nbFiche ++;
+              strTitre+= "<b>"+document.action_form.elements["titre_"+tabCheckbox[i].value].value + "</b><br>";
+              
+            }
+          }
+        }else{//only one checkbox
+          if(tabCheckbox.checked && document.action_form.elements["statut_"+tabCheckbox.value].value == 3){
+            var tabInfoMetadata = tabCheckbox.value.split("_");
+            metadataList+=tabInfoMetadata[1]+",";
+            nbFiche ++;
+            strTitre+= "<b>"+document.action_form.elements["titre_"+tabCheckbox.value].value + "</b><br>";
+            
+          }
+        }
+        if (nbFiche==0){
+          Ext.Msg.alert("Actions sur la sélection", "Impossible de réaliser l'action demandée pour les métadonnées sélectionnées");
+          return;
+        }else if(nbFiche==1){
+          msg = "La fiche "+ strTitre+" va être publiée";
+        }else{
+          msg = "Les fiches <br>"+ strTitre+" vont être publiées";
+        }
+        break;
+      default:
+        return;
+        break;
+    }
+   
+    var iframe = this;
+    iframe.tabParams = new Array(metadataList, statut, mode);
+    iframe.onSuccess = changeStatutCarto;
+    Ext.Msg.confirm('Changement de statut', msg, confirm, iframe);
+    */
+  }
+  catch(e){}
+}
+
+/**
+ * @version 3.2
+ * @brief effectue l'action de modification de statut d'un ensemble de métadonnées
+ * @param metadataList
+ * @param statut
+ * @param mode
+ * @param onSuccess
+ * @return
+ */
+function changeStatutCarto(metadataList, statut, mode, onSuccess){
+  
+  var iframe = this;
+  var ajaxUrl = IHM_getBaseUrl()+"administration_carto_Action.php";
+  var queryParams = {action:"valid",metadataId:metadataList,statut:statut,mode:mode};
+  iframe.tabParams = null;
+  iframe.onSuccess = function(responseText){
+    var oRes = eval("("+responseText+")");
+    if ( oRes.success ) {
+      onSuccess();
+    } else {
+      Ext.Msg.alert("Echec", oRes.msg);
+    }
+  };
+  AjaxRequest(ajaxUrl, queryParams, iframe);
+  
+  /**
+   * @deprecated v3.2 - 07/03/2012
+   */
+  /*
+  var   curdom = null;
+  var   cursdom = null;
+  params = document.location.search.substr(1).split("&");
+  for (i = 0; i < params.length; i++)
+  {
+    param = params[i].split("=");
+    if (param[0] == "domaine")
+      curdom = param[1];
+    if (param[0] == "sousdomaine")
+      cursdom = param[1];
+  }
+  var url = IHM_getBaseUrl();
+  url += "administration_carto_Action.php?action=valid";
+  if (curdom)
+  {
+    url += "&domaine=" + escape(curdom);
+    if (cursdom)
+      url += "&sousdomaine=" + escape(cursdom);
+  }
+  url += "&metadataId=" + metadataList.substr(0, metadataList.length-1) + "&statut=" + statut + "&mode=" + mode;
+  window.location = url;
+  */
+}
+/**
+ * @brief Ouvre geosource pour éditer la fiche de métadonnées
+ * @param pk_objet
+ * @param pk_objet_dep
+ * @param meta_id
+ * @param statut
+ * @param mode
+ * @return
+ */
+function	administration_carto_editFiche(pk_objet, pk_objet_dep, meta_id, statut, mode, bHasRightPublication)
+{
+	switch(statut)
+	{
+		case -1: // pas de fiche
+		  
+		  var iframe = this;
+		  iframe.tabParams = new Array(pk_objet);
+		  iframe.onSuccess = administration_carto_createFiche;
+		  Ext.Msg.confirm("Edition de métadonnée", "Aucune fiche n'est associée à la " + mode + ".\nUne nouvelle fiche va être créée.", confirm, iframe);
+		
+			break;
+		case 1: // saisie
+		case 2: // attente validation
+			try
+			{
+				IHM_Fiche_Edit(meta_id, mode);
+			}
+			catch(e){}
+			break;
+		case 3: // validée
+		case 4: // publiée
+			if(bHasRightPublication){
+			  try
+	      {
+	        IHM_Fiche_Edit(meta_id, mode);
+	      }
+	      catch(e){}
+			}else
+			{
+			  var iframe = this;
+	      iframe.tabParams = new Array(pk_objet, pk_objet_dep, mode, meta_id);
+	      iframe.onSuccess = administration_carto_DuplicateFiche;
+	      Ext.Msg.confirm("Edition de métadonnée", "La fiche doit être dupliquée pour pouvoir être éditée. Voulez-vous dupliquer cette fiche ?", confirm, iframe);
+			}
+			break;
+		default:
+			break;
+	}
+}
+
+/**
+ * 
+ * @param pk_objet
+ * @return
+ */
+function administration_carto_createFiche(pk_objet){
+  IHM_Chargement_start();
+  switch(mode)
+  {
+  case "couche":
+    window.location = "/geonetwork/srv/fre/metadata.create.new?id=2&group=2&couche=" + pk_objet;
+    break;
+  case "carte":
+    window.location = "/geonetwork/srv/fre/metadata.create.new?id=3&group=2&carte=" + pk_objet;
+    break;
+  }
+}
+
+/**
+ * 
+ * @param pk_objet
+ * @param pk_objet_dep
+ * @param mode
+ * @param meta_id
+ * @return
+ */
+function administration_carto_DuplicateFiche(pk_objet, pk_objet_dep, mode, meta_id){
+  switch(mode)
+  {
+  case "couche":
+    administration_carto_copyCouche(pk_objet, meta_id);
+    break;
+  case "carte":
+    administration_carto_copyMap(pk_objet, pk_objet_dep, meta_id);
+    break;
+  }
+}
+
+/**
+ * 
+ * @param meta_id identifiant de la métadonnée dans Géosource
+ * @return
+ */
+function administration_carto_addFicheEnfant(meta_id, domaine, sousdomaine){
+  
+  var url;
+  url = IHM_getBaseUrl();
+  url += "administration_donnees_ajout.php?domaine="+domaine+
+        (sousdomaine!="" ? "&sousdomaine="+sousdomaine : "")+
+        "&child=y&metadataId=" + escape(meta_id);
+  window.location = url;
+  
+
+}
+  
+
+/**
+ * @brief Copie la carte
+ * @param pk_carte
+ * @param pk_stockage_carte
+ * @param meta_id
+ * @return
+ */
+function	administration_carto_copyMap(pk_carte, pk_stockage_carte, meta_id)
+{
+	var url;
+	url = IHM_getBaseUrl();
+	url += "administration_carto_copy.php?action=copy&metadataId=" + escape(meta_id) + "&stockageCarteId=" + pk_stockage_carte + "&carteId=" + pk_carte + "&mode=carte";
+	window.location = url;
+}
+
+/**
+ * @brief Copie la couche
+ * @param pk_couche
+ * @param meta_id
+ * @param domaine
+ * @param sousdomaine
+ * @return
+ */
+function	administration_carto_copyCouche(pk_couche, meta_id, domaine, sousdomaine)
+{
+	var	url;
+	url = IHM_getBaseUrl();
+	url += "administration_carto_copy.php?action=copy&metadataId=" + escape(meta_id) + "&coucheId=" + pk_couche + "&mode=couche"
+	      +"&domaine="+domaine+"&sousdomaine="+sousdomaine;
+	window.location = url;
+}
+
+
+/**
+ * @brief Copie la couche majic
+ * @param pk_couche
+ * @param meta_id
+ * @param domaine
+ * @param sousdomaine
+ * @return
+ */
+function  administration_carto_copyMajic(pk_couche, meta_id, domaine, sousdomaine)
+{
+  var url;
+  url = IHM_getBaseUrl();
+  url += "administration_carto_Action.php?action=copy&metadataId=" + escape(meta_id) + "&coucheId=" + pk_couche + "&mode=majic"
+        +"&domaine="+domaine+"&sousdomaine="+sousdomaine;
+  window.location = url;
+}
+
+/**
+ * @brief Validation de la duplication
+ */
+function administration_copy_valider(mode){
+	var form = document.form_copy;
+	var name = form.NOM;
+	var serveur = document.getElementById("SERVEUR");
+	var modele = /^[a-z]+[a-z0-9_]*$/i;
+  if (modele.test(name.value)){
+  }
+  else{
+    Ext.Msg.alert("Duplication", "Le nom de fichier saisi ne doit pas contenir de caractères\n" +
+          "accentués ou non alphanumériques comme -()\"'. etc.");
+    return;
+  }
+	if(in_array(name.value, tabData[serveur])){
+    if(mode =="couche")
+      Ext.Msg.alert("Ajout de données", "Une table portant ce nom existe déjà.");
+    else
+      Ext.Msg.alert("Ajout de carte", "Une carte portant ce nom existe déjà.");
+    return;
+  } 
+	if(form){
+		form.submit();
+	}
+}
+
+/**
+ * @brief Montre la fiche de métadonnées de la couche à partir de la cartographie
+ * @param meta_id
+ * @return
+ */
+function	administration_carto_showFiche(meta_id)
+{
+	try
+	{
+		IHM_Fiche_Show(meta_id);
+	}
+	catch(e){}
+}
+
+/**
+ * @brief Ajoute une nouvelle carte
+ * @return
+ */
+function	administration_carto_ajoutCarte()
+{
+	try
+	{
+		IHM_Chargement_start();
+	}
+	catch(e){}
+	window.location = "administration_carto_ajout.php";
+}
+
+/**
+ * @brief Ajoute une nouvelle couche
+ * @return
+ */
+function	administration_carto_ajoutCouche()
+{
+	try
+	{
+		IHM_Chargement_start();
+	}
+	catch(e){}
+	window.location = "administration_donnees_ajout.php";
+}
+
+/**
+ * @brief Importe les données d'une couche
+ * @param pk_couche
+ * @return
+ */
+function	administration_carto_importCouche(pk_couche, metadata_id)
+{
+  var   curdom = null;
+  var   cursdom = null;
+  params = document.location.search.substr(1).split("&");
+  for (i = 0; i < params.length; i++)
+  {
+    param = params[i].split("=");
+    if (param[0] == "domaine")
+      curdom = param[1];
+    if (param[0] == "sousdomaine")
+      cursdom = param[1];
+  }
+  var url = IHM_getBaseUrl();
+  url += "Administration/Administration/Layers/LayersImportation.php?Id=" + pk_couche + "&metadata_id=" + metadata_id;
+  if (curdom)
+  {
+    url += "&domaine=" + escape(curdom);
+    if (cursdom)
+      url += "&sousdomaine=" + escape(cursdom);
+  }
+  window.location = url;
+}
+
+
+
+/**
+ * @brief Changer fichier d'une carte statique
+ * @param pk_couche
+ * @return
+ */
+function	administration_carto_changeStaticCarte(pk_carte, nom_fichier,fmeta_id)
+{
+  var url = IHM_getBaseUrl();
+  url += "administration_carto_changeStaticCarte.php?Id=" + pk_carte + "&file_name=" + nom_fichier+ "&fmeta_id="+fmeta_id;
+  window.location = url;
+}
+
+
+/**
+ * @brief open the map in a simplified mode to edit the default representation of the layer
+ * @param action : url to open
+ * @param login : login to connect paramCarto
+ * @param pwd : pwd to connect paramCarto
+ */
+function  administration_carto_paramCarto(action, login, pwd)
+{
+  //open map in popup
+  if(document.administration_carto){
+    document.administration_carto.login.value = login;
+    document.administration_carto.pass.value = pwd;
+    document.administration_carto.action = action;
+    administration_carto_win_cartodynamique = window.open("blank.html", "Cartographie_dynamique", "directories=0, fullscreen=yes, menubar=0, status=1, toolbar=0, resizable=1");
+    document.administration_carto.submit();
+  }
+  
+	//window.open(url, "default_layer_map", "directories=0, fullscreen=0, menubar=0, status=1, toolbar=0, resizable=1");
+}
+
+
+/**
+ * Réinitialisation de la représentation par défaut
+ */
+function reinitParamCarto(srvAdmin, layer_table){
+	  
+  var iframe = this; 
+  iframe.tabParams = new Array("");
+  var queryParams = {
+	layerMapFile : layer_table
+  }
+  var ajaxUrl = window.location.protocol+"//" + srvAdmin + "/PRRA/LayerMapInit.php";
+  iframe.onSuccess = reinitParamCartoSuccess;
+  AjaxRequest(ajaxUrl, queryParams, iframe);
+}
+
+function reinitParamCartoSuccess(){
+  Ext.Msg.alert("Succès", "La représentation par défaut a été réinitialisée");	
+}
+
+/**
+ * true if needle is in array (php equivalent)
+ * @param needle
+ * @param haystack
+ * @param argStrict
+ * @return
+ */
+function in_array (needle, haystack, argStrict) {
+   
+  var key = '', strict = !!argStrict; 
+  if (strict) {
+      for (key in haystack) {
+        if (haystack[key] === needle) {
+          return true;            
+        }
+      }
+  } else {
+      for (key in haystack) {
+        if (haystack[key] == needle) {   
+          return true;
+        }
+      }
+  }
+  return false;
+}
+
+function actionOnSelect(strMsg){
+  var tabCheckbox = document.action_form.action;
+  var hasOneChecked = false
+  if(typeof(tabCheckbox.length)!="undefined"){
+    for (var i=0; i<tabCheckbox.length; i++){
+      if(tabCheckbox[i].checked){
+        hasOneChecked = true;
+        break;
+      }
+    }
+  }else{//only one checkbox in html page
+    if(tabCheckbox.checked)
+      hasOneChecked = true;
+  }
+    
+  if(hasOneChecked){
+    if(document.getElementById("action_detail").style.display=="")
+      document.getElementById("action_detail").style.display="none";
+    else
+      document.getElementById("action_detail").style.display=""
+  }else{
+    Ext.Msg.alert("Actions sur la sélection", strMsg);
+  }
+}
+
+/**
+ * renomme un mapfile
+ * @param srv : url du serveur carto admin
+ * @param mapfile nom du mapfile existant
+ * @param pk_stockage_carte identifiant dans stockage_carte
+ * @return
+ */
+function map_change_name(srv, mapfile, pk_stockage_carte, urlBack){
+  var iframe = this;
+  iframe.onSuccess = mapfileRename;
+  iframe.tabParams = new Array(srv, mapfile.substr(0, mapfile.length-4), pk_stockage_carte, urlBack);
+  Ext.Msg.prompt('Changement de nom', 'Vous souhaitez modifier le nom du mapfile de la carte. Les contextes utilisant cette carte sont susceptibles de ne plus fonctionner.<br>'+
+                     'Le mapfile porte le nom: "'+mapfile.substr(0, mapfile.length-4)+'".<br>Entrez le nom du nouveau mapfile:', prompt, iframe);
+}
+
+function mapfileRename(srv, mapfile, pk_stockage_carte, urlBack, newName){
+  
+  var modele = /^[a-z]+[a-z0-9_]*$/i;
+  if (modele.test(newName)){
+  }
+  else{
+    Ext.Msg.alert("Changement de nom", "Le nom de fichier saisi ne doit pas contenir de caractères\n" +
+          "accentués ou non alphanumériques comme -()\"'. etc.");
+    return;
+  }
+  if (mapfile != ""){
+	var ajaxUrl = window.location.protocol+"//"+srv+"/PRRA/Administration/Administration/Maps/MapChangeName.php";
+	var iframe = this;
+	iframe.tabParams = new Array(pk_stockage_carte, newName);
+	iframe.onSuccess = successChangeName;
+	iframe.onFailure = function(){Ext.Msg.alert("Cartes", "Echec de l'opération")};
+	var queryParams = {
+	  MAPFILE : mapfile,
+	  pk_stockage_carte : pk_stockage_carte,
+	  NEW_MAPFILE: newName 
+    }
+	AjaxRequest(ajaxUrl, queryParams, iframe);
+	/*  
+    l_url     = window.location.protocol+"//"+srv+"/PRRA/Administration/Administration/Maps/MapChangeName.php";
+    l_url    += "?MAPFILE="+mapfile;
+    l_url    += "&pk_stockage_carte="+pk_stockage_carte;
+    l_url    += "&NEW_MAPFILE="+newName;
+    l_url    += "&url_retour="+urlBack;
+    IHM_Chargement_start();
+    window.location = l_url;*/
+  }
+}
+
+function successChangeName(pk_stockage_carte, newName, responseText){
+	eval("var responseJson = "+responseText);
+	if(responseJson.success==true){
+	  if(responseJson.mode==3){
+		Ext.alert("le nom du mapfile souhaité est déjà utilisé. Aucune opération réalisée.");  
+	  }else{
+		var iframe = this;
+		iframe.onSuccess = function(){Ext.Msg.alert("Cartes", "L'opération a été réalisée avec succès.")};
+		iframe.onFailure = function(){Ext.Msg.alert("Cartes", "Echec de l'opération")};
+		var queryParams = {
+		  pk_stockage_carte : pk_stockage_carte,
+		  NEW_MAPFILE: newName,
+		  action : "rename"
+	    }
+		AjaxRequest(IHM_getBaseUrl()+"administration_carto_Action.php", queryParams, iframe);
+	 }
+  }
+}
+
+
+/**
+ * @brief Ouvre la fenêtre de création/définition d'une vue
+ * @param metadata_id : identifiant de la métadonnée de vue
+ * @param desc_vue : titre de la la vue
+ * @param nom_vue : nom de la vue, sera utilisé cmme nom de la vue dans la base 
+ * @param urlBack : url de retour en sortie du module d'administration de vue (généralement l'url de la page courante)
+ * @param color_theme_id : identifiant du theme extjs de l'interface, passé au module d'administration de vue pour qu'il soit chargé dans le même thème extjs
+ * @param svrAdmin : adresse du serveur d'administartion ou se trouve le module d'administarion de vue
+ * @return nothing
+ */
+function administration_carto_adminView(metadata_id, desc_vue, nom_vue, urlBack, color_theme_id, svrAdmin)
+{  
+  var params = {
+	  pk_view : metadata_id,
+	  view_title : desc_vue,
+	  view_name : nom_vue,
+	  url_back : urlBack,
+	  view_type : -4
+  }
+  
+  var jsonParams = Ext.encode(params);
+  var token = TextEncode(jsonParams);
+  
+  var url = svrAdmin + "/join/" + token;
+
+  window.open(url, 'administration_carto_adminView');
+}
+
+
+
+/**
+ * @brief Ouvre la fenêtre de paramétrage de structure de cuche
+ * @param metadata_id : identifiant de la métadonnée
+ * @param nom_couche : nom de la couche à créer 
+ * @param urlBack : url de retour en sortie du module d'administration de vue (généralement l'url de la page courante)
+ * @param color_theme_id : identifiant du theme extjs de l'interface, passé au module d'administration de vue pour qu'il soit chargé dans le même thème extjs
+ * @param svrAdmin : adresse du serveur d'administartion ou se trouve le module d'administarion de vue
+ * @return nothing, redirect
+ */
+function administration_carto_creerStructure(catalogue, metadata_id, nom_couche, urlBack, color_theme_id, svrAdmin)
+{
+  var params = {
+    pk_data : metadata_id,
+    data_name : nom_couche,
+    url_back : urlBack,
+    theme_id_for_ext : color_theme_id 
+  }
+  
+  var jsonParams = Ext.encode(params);
+  var token = TextEncode(jsonParams);
+  
+  var url = catalogue.admincartoURL+"/importdata/table_structure/index/"+metadata_id+(nom_couche ? "/"+nom_couche : "");
+
+  window.open(url, 'administration_carto_creerStructure');
+}
+
+/**
+ * fonction appelée au chargement de la page d'admin des tables, permet de connaitre les vues utilisant les tables
+ * @param srvAdmin
+ * @param login
+ * @param passwd
+ * @param idx
+ * @return
+ */
+function checkTables(srvAdmin, login, passwd, idx){
+  if(document.getElementById("layerTables")){
+	  var tabLayers = eval(document.getElementById("layerTables").value);
+	  var iframe = this;
+	  iframe.tabParams = new Array("");
+	  var queryParams = {
+		  idx : idx,
+		  login : login,
+		  serviceName: 'getViewsFromTablenames', 
+		  passwd : passwd,
+		  parameters : Ext.encode({
+              tablenames : tabLayers
+          }) 
+	  }
+	  
+	  var ajaxUrl = window.location.protocol+"//" + srvAdmin + "/HTML_JOIN/gui/viewServices.php";
+	  iframe.onSuccess = showTablesResult;
+	  AjaxRequest(ajaxUrl, queryParams, iframe);
+	}
+}
+/**
+ * gere la visiblité et le contenu des boutons supprimer et liste des vues
+ * @param vide
+ * @param responseText
+ * @return
+ */
+function showTablesResult(vide, responseText){
+  eval("var responseJson = "+responseText);
+  var tabLayers = responseJson.data;
+  for(var layerName in tabLayers){
+	  if(document.getElementById("suppr_"+layerName)){
+		if(tabLayers[layerName].length==0){
+			document.getElementById("suppr_"+layerName).style.display="";
+		}else{
+		  if(document.getElementById("vues_"+layerName)){
+			strViewsMsg = "Liste&nbsp;des&nbsp;vues&nbsp;contenant&nbsp;la&nbsp;table:<br>";
+		    for(var i=0;i<tabLayers[layerName].length; i++){
+		      strViewsMsg+= "<b>"+tabViews[tabLayers[layerName][i]]+"</b><br>";
+		    }
+		    document.getElementById("vues_"+layerName).style.display="";
+			document.getElementById("vues_"+layerName).setAttribute('onclick',"Ext.Msg.alert('Administration de tables','"+strViewsMsg+"')"); 
+		  }
+		}
+	}
+  }
+}
+
+/**
+ * fonction appelée au chargement de la page d'admin des tables, permet de connaitre les vues utilisant les couches
+ * @param srvAdmin
+ * @param login
+ * @param passwd
+ * @param idx
+ * @return
+ */
+function checkLayers(srvAdmin, login, passwd, idx){
+  if(document.getElementById("layers")){
+	  var tabLayers = eval(document.getElementById("layers").value);
+	  var iframe = this;
+	  iframe.tabParams = new Array("");
+	  var queryParams = {
+		  idx : idx,
+		  login : login,
+		  serviceName: 'getViewsFromLayernames', 
+		  passwd : passwd,
+		  parameters : Ext.encode({
+              layernames : tabLayers
+          }) 
+	  }
+	  
+	  var ajaxUrl = window.location.protocol+"//" + srvAdmin + "/HTML_JOIN/gui/viewServices.php";
+	  iframe.onSuccess = showLayersResult;
+	  AjaxRequest(ajaxUrl, queryParams, iframe);
+	}
+}
+/**
+ * gere la visiblité et le contenu des boutons supprimer et liste des vues
+ * @param vide
+ * @param responseText
+ * @return
+ */
+function showLayersResult(vide, responseText){
+  eval("var responseJson = "+responseText);
+  var tabLayers = responseJson.data;
+  for(var layerName in tabLayers){
+    if(document.getElementById("suppr_"+layerName)){
+		if(tabLayers[layerName].length==0){
+			document.getElementById("suppr_"+layerName).style.display="";
+		}else{
+			 if(document.getElementById("vues_"+layerName)){
+				strViewsMsg = "Liste&nbsp;des&nbsp;vues&nbsp;contenant&nbsp;la&nbsp;table:<br>";
+				for(var i=0;i<tabLayers[layerName].length; i++){
+				  strViewsMsg+= "<b>"+tabViews[tabLayers[layerName][i]]+"</b><br>";
+				}
+				document.getElementById("vues_"+layerName).style.display="";
+				document.getElementById("vues_"+layerName).setAttribute('onclick',"Ext.Msg.alert('Administration de tables','"+strViewsMsg+"')"); 
+			  }
+			  //rEs(document.getElementById("suppr_"+layerName));
+		}
+	}
+  }
+}
+
+/**
+ * remove Dom Element
+ * @param tO element to delete
+ * @return
+ */
+function rEs(tO) { var i, n; if (!tO) { return false; }
+	if (!tO.nodeName) { if (tO.length) for (n=tO.length; n--;) rEs(tO[n]); }
+	else tO.parentNode.removeChild(tO);
+}
+
+function chooseModele(displayImport){
+ document.getElementById("parcourir_import").style.display=(displayImport ? "" : "none");
+}
diff --git a/src/main/webapp/apps_extend/bootstrap-submenu-2.0.4/css/bootstrap-submenu.css b/src/main/webapp/apps_extend/bootstrap-submenu-2.0.4/css/bootstrap-submenu.css
new file mode 100644
index 0000000..674b546
--- /dev/null
+++ b/src/main/webapp/apps_extend/bootstrap-submenu-2.0.4/css/bootstrap-submenu.css
@@ -0,0 +1,126 @@
+/*!
+ * Bootstrap-submenu v2.0.4 (https://vsn4ik.github.io/bootstrap-submenu/)
+ * Copyright 2014-2016 Vasily A. (https://github.com/vsn4ik)
+ * Licensed under the MIT license
+ */
+
+.dropdown-submenu > a:after {
+  content: "";
+}
+
+@media (min-width: 768px) {
+  .dropdown-submenu {
+    position: relative;
+  }
+  .dropdown-submenu .dropdown-menu {
+    top: 0;
+    left: 100%;
+    margin-top: -6px;
+    border-top-left-radius: 0;
+  }
+  .dropup .dropdown-submenu .dropdown-menu,
+  .navbar-fixed-bottom .dropdown-submenu .dropdown-menu {
+    top: auto;
+    bottom: 0;
+    margin-top: 0;
+    margin-bottom: -6px;
+    border-top-left-radius: 4px;
+    border-bottom-left-radius: 0;
+  }
+  .dropdown-menu-right .dropdown-submenu .dropdown-menu,
+  .navbar-right .dropdown-submenu .dropdown-menu {
+    left: auto;
+    right: 100%;
+    border-top-left-radius: 4px;
+    border-top-right-radius: 0;
+  }
+  .dropup .dropdown-menu-right .dropdown-submenu .dropdown-menu,
+  .dropup .navbar-right .dropdown-submenu .dropdown-menu,
+  .navbar-fixed-bottom .dropdown-menu-right .dropdown-submenu .dropdown-menu,
+  .navbar-fixed-bottom .navbar-right .dropdown-submenu .dropdown-menu {
+    border-radius: 4px 4px 0;
+  }
+  .dropdown-submenu > a:after {
+    float: right;
+    margin-top: 6px;
+    margin-right: -10px;
+    border-left: 4px dashed;
+    border-top: 4px solid transparent;
+    border-bottom: 4px solid transparent;
+  }
+  .dropdown-menu-right .dropdown-submenu > a:after,
+  .navbar-right .dropdown-submenu > a:after {
+    float: left;
+    border-left: none;
+    margin-left: -10px;
+    margin-right: 0;
+    border-right: 4px dashed;
+    border-top: 4px solid transparent;
+    border-bottom: 4px solid transparent;
+  }
+}
+@media (max-width: 767px) {
+  .dropdown-submenu .dropdown-menu {
+    position: static;
+    margin-top: 0;
+    border: 0;
+    box-shadow: none;
+  }
+  .dropdown-submenu > a:after {
+    margin-left: 6px;
+    display: inline-block;
+    vertical-align: middle;
+    border-top: 4px dashed;
+    border-left: 4px solid transparent;
+    border-right: 4px solid transparent;
+  }
+  .dropdown > .dropdown-menu > .dropdown-submenu > .dropdown-menu > li.dropdown-header,
+  .dropup > .dropdown-menu > .dropdown-submenu > .dropdown-menu > li.dropdown-header,
+  .btn-group > .dropdown-menu > .dropdown-submenu > .dropdown-menu > li.dropdown-header,
+  .dropdown > .dropdown-menu > .dropdown-submenu > .dropdown-menu > li > a,
+  .dropup > .dropdown-menu > .dropdown-submenu > .dropdown-menu > li > a,
+  .btn-group > .dropdown-menu > .dropdown-submenu > .dropdown-menu > li > a {
+    padding-left: 30px;
+  }
+  .dropdown > .dropdown-menu > .dropdown-submenu > .dropdown-menu > li > .dropdown-menu > li.dropdown-header,
+  .dropup > .dropdown-menu > .dropdown-submenu > .dropdown-menu > li > .dropdown-menu > li.dropdown-header,
+  .btn-group > .dropdown-menu > .dropdown-submenu > .dropdown-menu > li > .dropdown-menu > li.dropdown-header,
+  .dropdown > .dropdown-menu > .dropdown-submenu > .dropdown-menu > li > .dropdown-menu > li > a,
+  .dropup > .dropdown-menu > .dropdown-submenu > .dropdown-menu > li > .dropdown-menu > li > a,
+  .btn-group > .dropdown-menu > .dropdown-submenu > .dropdown-menu > li > .dropdown-menu > li > a {
+    padding-left: 40px;
+  }
+  .dropdown > .dropdown-menu > .dropdown-submenu > .dropdown-menu > li > .dropdown-menu > li > .dropdown-menu > li.dropdown-header,
+  .dropup > .dropdown-menu > .dropdown-submenu > .dropdown-menu > li > .dropdown-menu > li > .dropdown-menu > li.dropdown-header,
+  .btn-group > .dropdown-menu > .dropdown-submenu > .dropdown-menu > li > .dropdown-menu > li > .dropdown-menu > li.dropdown-header,
+  .dropdown > .dropdown-menu > .dropdown-submenu > .dropdown-menu > li > .dropdown-menu > li > .dropdown-menu > li > a,
+  .dropup > .dropdown-menu > .dropdown-submenu > .dropdown-menu > li > .dropdown-menu > li > .dropdown-menu > li > a,
+  .btn-group > .dropdown-menu > .dropdown-submenu > .dropdown-menu > li > .dropdown-menu > li > .dropdown-menu > li > a {
+    padding-left: 50px;
+  }
+  .dropdown > .dropdown-menu > .dropdown-submenu > .dropdown-menu > li > .dropdown-menu > li > .dropdown-menu > li > .dropdown-menu > li.dropdown-header,
+  .dropup > .dropdown-menu > .dropdown-submenu > .dropdown-menu > li > .dropdown-menu > li > .dropdown-menu > li > .dropdown-menu > li.dropdown-header,
+  .btn-group > .dropdown-menu > .dropdown-submenu > .dropdown-menu > li > .dropdown-menu > li > .dropdown-menu > li > .dropdown-menu > li.dropdown-header,
+  .dropdown > .dropdown-menu > .dropdown-submenu > .dropdown-menu > li > .dropdown-menu > li > .dropdown-menu > li > .dropdown-menu > li > a,
+  .dropup > .dropdown-menu > .dropdown-submenu > .dropdown-menu > li > .dropdown-menu > li > .dropdown-menu > li > .dropdown-menu > li > a,
+  .btn-group > .dropdown-menu > .dropdown-submenu > .dropdown-menu > li > .dropdown-menu > li > .dropdown-menu > li > .dropdown-menu > li > a {
+    padding-left: 60px;
+  }
+  .navbar-nav > .dropdown > .dropdown-menu > .dropdown-submenu > .dropdown-menu > li.dropdown-header,
+  .navbar-nav > .dropdown > .dropdown-menu > .dropdown-submenu > .dropdown-menu > li > a {
+    padding-left: 35px;
+  }
+  .navbar-nav > .dropdown > .dropdown-menu > .dropdown-submenu > .dropdown-menu > li > .dropdown-menu > li.dropdown-header,
+  .navbar-nav > .dropdown > .dropdown-menu > .dropdown-submenu > .dropdown-menu > li > .dropdown-menu > li > a {
+    padding-left: 45px;
+  }
+  .navbar-nav > .dropdown > .dropdown-menu > .dropdown-submenu > .dropdown-menu > li > .dropdown-menu > li > .dropdown-menu > li.dropdown-header,
+  .navbar-nav > .dropdown > .dropdown-menu > .dropdown-submenu > .dropdown-menu > li > .dropdown-menu > li > .dropdown-menu > li > a {
+    padding-left: 55px;
+  }
+  .navbar-nav > .dropdown > .dropdown-menu > .dropdown-submenu > .dropdown-menu > li > .dropdown-menu > li > .dropdown-menu > li > .dropdown-menu > li.dropdown-header,
+  .navbar-nav > .dropdown > .dropdown-menu > .dropdown-submenu > .dropdown-menu > li > .dropdown-menu > li > .dropdown-menu > li > .dropdown-menu > li > a {
+    padding-left: 65px;
+  }
+}
+/*# sourceMappingURL=bootstrap-submenu.css.map */
\ No newline at end of file
diff --git a/src/main/webapp/apps_extend/bootstrap-submenu-2.0.4/css/bootstrap-submenu.css.map b/src/main/webapp/apps_extend/bootstrap-submenu-2.0.4/css/bootstrap-submenu.css.map
new file mode 100644
index 0000000..4ab4300
--- /dev/null
+++ b/src/main/webapp/apps_extend/bootstrap-submenu-2.0.4/css/bootstrap-submenu.css.map
@@ -0,0 +1 @@
+{"version":3,"sources":["less/bootstrap-submenu.less","less/mixins.less"],"names":[],"mappings":"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","sourcesContent":["// :after: friends with IE8. Use ::after in future.\n\n@import \"../node_modules/bootstrap/less/variables.less\";\n@import \"mixins.less\";\n\n// Variables\n@caret-margin: -@caret-width-base * 2 - 2;\n\n//\n// Sub-Menus\n// --------------------------------------------------\n\n.dropdown-submenu > a:after {\n  content: \"\";\n}\n\n@media (min-width: @grid-float-breakpoint) {\n  .dropdown-submenu {\n    position: relative;\n\n    .dropdown-menu {\n      top: 0;\n      left: 100%;\n      margin-top: -6px;\n      border-top-left-radius: 0;\n\n      // Strictly before .dropdown-menu-right\n      .dropup &,\n      .navbar-fixed-bottom & {\n        top: auto;\n        bottom: 0;\n        margin-top: 0;\n        margin-bottom: -6px;\n        border-top-left-radius: @border-radius-base;\n        border-bottom-left-radius: 0;\n      }\n\n      .dropdown-menu-right &,\n      .navbar-right & {\n        left: auto;\n        right: 100%;\n\n        border-top-left-radius: @border-radius-base;\n        border-top-right-radius: 0;\n\n        .dropup &,\n        .navbar-fixed-bottom & {\n          border-radius: @border-radius-base @border-radius-base 0;\n        }\n      }\n    }\n\n    > a:after {\n      float: right;\n      margin-top: @line-height-computed / 2 - @caret-width-base;\n      margin-right: @caret-margin;\n\n      .make-caret(left, top, bottom);\n\n      .dropdown-menu-right &,\n      .navbar-right & {\n        float: left;\n        border-left: none;\n        margin-left: @caret-margin;\n        margin-right: 0;\n\n        .make-caret(right, top, bottom);\n      }\n    }\n  }\n}\n\n@media (max-width: @grid-float-breakpoint-max) {\n  .dropdown-submenu {\n    .dropdown-menu {\n      position: static;\n      margin-top: 0;\n      border: 0;\n      box-shadow: none;\n    }\n\n    > a:after {\n      margin-left: 6px;\n      display: inline-block;\n      vertical-align: middle;\n\n      .make-caret(top, left, right);\n    }\n  }\n\n  .dropdown-menu > .dropdown-submenu {\n    .dropdown > &,\n    .dropup > &,\n    .btn-group > & {\n      .make-nested-list(30px, 0, 4);\n    }\n\n    .navbar-nav > .dropdown > & {\n      .make-nested-list(35px, 0, 4);\n    }\n  }\n}\n",".make-caret(@base, @left, @right) {\n  // dashed: fix caret size for Mozilla Firefox\n  border-@{base}: @caret-width-base dashed;\n\n  border-@{left}: @caret-width-base solid transparent;\n  border-@{right}: @caret-width-base solid transparent;\n}\n\n.make-nested-list(@offset, @i, @n) when (@i < @n) {\n  > .dropdown-menu > li {\n    &.dropdown-header,\n    > a {\n      padding-left: @offset + (10 * @i);\n    }\n\n    .make-nested-list(@offset, @i + 1, @n);\n  }\n}\n"]}
\ No newline at end of file
diff --git a/src/main/webapp/apps_extend/bootstrap-submenu-2.0.4/css/bootstrap-submenu.min.css b/src/main/webapp/apps_extend/bootstrap-submenu-2.0.4/css/bootstrap-submenu.min.css
new file mode 100644
index 0000000..bd7f2e9
--- /dev/null
+++ b/src/main/webapp/apps_extend/bootstrap-submenu-2.0.4/css/bootstrap-submenu.min.css
@@ -0,0 +1,7 @@
+/*!
+ * Bootstrap-submenu v2.0.4 (https://vsn4ik.github.io/bootstrap-submenu/)
+ * Copyright 2014-2016 Vasily A. (https://github.com/vsn4ik)
+ * Licensed under the MIT license
+ */
+
+.dropdown-submenu>a:after{content:""}@media (min-width:768px){.dropdown-submenu{position:relative}.dropdown-submenu .dropdown-menu{top:0;left:100%;margin-top:-6px;border-top-left-radius:0}.dropup .dropdown-submenu .dropdown-menu,.navbar-fixed-bottom .dropdown-submenu .dropdown-menu{top:auto;bottom:0;margin-top:0;margin-bottom:-6px;border-top-left-radius:4px;border-bottom-left-radius:0}.dropdown-menu-right .dropdown-submenu .dropdown-menu,.navbar-right .dropdown-submenu .dropdown-menu{left:auto;right:100%;border-top-left-radius:4px;border-top-right-radius:0}.dropup .dropdown-menu-right .dropdown-submenu .dropdown-menu,.dropup .navbar-right .dropdown-submenu .dropdown-menu,.navbar-fixed-bottom .dropdown-menu-right .dropdown-submenu .dropdown-menu,.navbar-fixed-bottom .navbar-right .dropdown-submenu .dropdown-menu{border-radius:4px 4px 0}.dropdown-submenu>a:after{float:right;margin-top:6px;margin-right:-10px;border-left:4px dashed;border-top:4px solid transparent;border-bottom:4px solid transparent}.dropdown-menu-right .dropdown-submenu>a:after,.navbar-right .dropdown-submenu>a:after{float:left;border-left:none;margin-left:-10px;margin-right:0;border-right:4px dashed;border-top:4px solid transparent;border-bottom:4px solid transparent}}@media (max-width:767px){.dropdown-submenu .dropdown-menu{position:static;margin-top:0;border:0;box-shadow:none}.dropdown-submenu>a:after{margin-left:6px;display:inline-block;vertical-align:middle;border-top:4px dashed;border-left:4px solid transparent;border-right:4px solid transparent}.btn-group>.dropdown-menu>.dropdown-submenu>.dropdown-menu>li.dropdown-header,.btn-group>.dropdown-menu>.dropdown-submenu>.dropdown-menu>li>a,.dropdown>.dropdown-menu>.dropdown-submenu>.dropdown-menu>li.dropdown-header,.dropdown>.dropdown-menu>.dropdown-submenu>.dropdown-menu>li>a,.dropup>.dropdown-menu>.dropdown-submenu>.dropdown-menu>li.dropdown-header,.dropup>.dropdown-menu>.dropdown-submenu>.dropdown-menu>li>a{padding-left:30px}.btn-group>.dropdown-menu>.dropdown-submenu>.dropdown-menu>li>.dropdown-menu>li.dropdown-header,.btn-group>.dropdown-menu>.dropdown-submenu>.dropdown-menu>li>.dropdown-menu>li>a,.dropdown>.dropdown-menu>.dropdown-submenu>.dropdown-menu>li>.dropdown-menu>li.dropdown-header,.dropdown>.dropdown-menu>.dropdown-submenu>.dropdown-menu>li>.dropdown-menu>li>a,.dropup>.dropdown-menu>.dropdown-submenu>.dropdown-menu>li>.dropdown-menu>li.dropdown-header,.dropup>.dropdown-menu>.dropdown-submenu>.dropdown-menu>li>.dropdown-menu>li>a{padding-left:40px}.btn-group>.dropdown-menu>.dropdown-submenu>.dropdown-menu>li>.dropdown-menu>li>.dropdown-menu>li.dropdown-header,.btn-group>.dropdown-menu>.dropdown-submenu>.dropdown-menu>li>.dropdown-menu>li>.dropdown-menu>li>a,.dropdown>.dropdown-menu>.dropdown-submenu>.dropdown-menu>li>.dropdown-menu>li>.dropdown-menu>li.dropdown-header,.dropdown>.dropdown-menu>.dropdown-submenu>.dropdown-menu>li>.dropdown-menu>li>.dropdown-menu>li>a,.dropup>.dropdown-menu>.dropdown-submenu>.dropdown-menu>li>.dropdown-menu>li>.dropdown-menu>li.dropdown-header,.dropup>.dropdown-menu>.dropdown-submenu>.dropdown-menu>li>.dropdown-menu>li>.dropdown-menu>li>a{padding-left:50px}.btn-group>.dropdown-menu>.dropdown-submenu>.dropdown-menu>li>.dropdown-menu>li>.dropdown-menu>li>.dropdown-menu>li.dropdown-header,.btn-group>.dropdown-menu>.dropdown-submenu>.dropdown-menu>li>.dropdown-menu>li>.dropdown-menu>li>.dropdown-menu>li>a,.dropdown>.dropdown-menu>.dropdown-submenu>.dropdown-menu>li>.dropdown-menu>li>.dropdown-menu>li>.dropdown-menu>li.dropdown-header,.dropdown>.dropdown-menu>.dropdown-submenu>.dropdown-menu>li>.dropdown-menu>li>.dropdown-menu>li>.dropdown-menu>li>a,.dropup>.dropdown-menu>.dropdown-submenu>.dropdown-menu>li>.dropdown-menu>li>.dropdown-menu>li>.dropdown-menu>li.dropdown-header,.dropup>.dropdown-menu>.dropdown-submenu>.dropdown-menu>li>.dropdown-menu>li>.dropdown-menu>li>.dropdown-menu>li>a{padding-left:60px}.navbar-nav>.dropdown>.dropdown-menu>.dropdown-submenu>.dropdown-menu>li.dropdown-header,.navbar-nav>.dropdown>.dropdown-menu>.dropdown-submenu>.dropdown-menu>li>a{padding-left:35px}.navbar-nav>.dropdown>.dropdown-menu>.dropdown-submenu>.dropdown-menu>li>.dropdown-menu>li.dropdown-header,.navbar-nav>.dropdown>.dropdown-menu>.dropdown-submenu>.dropdown-menu>li>.dropdown-menu>li>a{padding-left:45px}.navbar-nav>.dropdown>.dropdown-menu>.dropdown-submenu>.dropdown-menu>li>.dropdown-menu>li>.dropdown-menu>li.dropdown-header,.navbar-nav>.dropdown>.dropdown-menu>.dropdown-submenu>.dropdown-menu>li>.dropdown-menu>li>.dropdown-menu>li>a{padding-left:55px}.navbar-nav>.dropdown>.dropdown-menu>.dropdown-submenu>.dropdown-menu>li>.dropdown-menu>li>.dropdown-menu>li>.dropdown-menu>li.dropdown-header,.navbar-nav>.dropdown>.dropdown-menu>.dropdown-submenu>.dropdown-menu>li>.dropdown-menu>li>.dropdown-menu>li>.dropdown-menu>li>a{padding-left:65px}}
\ No newline at end of file
diff --git a/src/main/webapp/apps_extend/bootstrap-submenu-2.0.4/js/bootstrap-submenu.js b/src/main/webapp/apps_extend/bootstrap-submenu-2.0.4/js/bootstrap-submenu.js
new file mode 100644
index 0000000..4f202a1
--- /dev/null
+++ b/src/main/webapp/apps_extend/bootstrap-submenu-2.0.4/js/bootstrap-submenu.js
@@ -0,0 +1,195 @@
+/*!
+ * Bootstrap-submenu v2.0.4 (https://vsn4ik.github.io/bootstrap-submenu/)
+ * Copyright 2014-2016 Vasily A. (https://github.com/vsn4ik)
+ * Licensed under the MIT license
+ */
+
+/**
+ * $.inArray: friends with IE8. Use Array.prototype.indexOf in future.
+ * $.proxy: friends with IE8. Use Function.prototype.bind in future.
+ */
+
+'use strict';
+
+(function(factory) {
+  if (typeof define == 'function' && define.amd) {
+    // AMD. Register as an anonymous module
+    define(['jquery'], factory);
+  }
+  else if (typeof exports == 'object') {
+    // Node/CommonJS
+    module.exports = factory(require('jquery'));
+  }
+  else {
+    // Browser globals
+    factory(jQuery);
+  }
+})(function($) {
+  function Item(element) {
+    this.$element = $(element);
+    this.$menu = this.$element.closest('.dropdown-menu');
+    this.$main = this.$menu.parent();
+    this.$items = this.$menu.children('.dropdown-submenu');
+
+    this.init();
+  }
+
+  Item.prototype = {
+    init: function() {
+      this.$element.on('keydown', $.proxy(this, 'keydown'));
+    },
+    close: function() {
+      this.$main.removeClass('open');
+      this.$items.trigger('hide.bs.submenu');
+    },
+    keydown: function(event) {
+      // 27: Esc
+
+      if (event.keyCode == 27) {
+        event.stopPropagation();
+
+        this.close();
+        this.$main.children('a, button').trigger('focus');
+      }
+    }
+  };
+
+  function SubmenuItem(element) {
+    this.$element = $(element);
+    this.$main = this.$element.parent();
+    this.$menu = this.$main.children('.dropdown-menu');
+    this.$subs = this.$main.siblings('.dropdown-submenu');
+    this.$items = this.$menu.children('.dropdown-submenu');
+
+    this.init();
+  }
+
+  $.extend(SubmenuItem.prototype, Item.prototype, {
+    init: function() {
+      this.$element.on({
+        click: $.proxy(this, 'click'),
+        keydown: $.proxy(this, 'keydown')
+      });
+
+      this.$main.on('hide.bs.submenu', $.proxy(this, 'hide'));
+    },
+    click: function(event) {
+      // Fix a[href="#"]. For community
+      event.preventDefault();
+
+      event.stopPropagation();
+
+      this.toggle();
+    },
+    hide: function(event) {
+      // Stop event bubbling
+      event.stopPropagation();
+
+      this.close();
+    },
+    open: function() {
+      this.$main.addClass('open');
+      this.$subs.trigger('hide.bs.submenu');
+    },
+    toggle: function() {
+      if (this.$main.hasClass('open')) {
+        this.close();
+      }
+      else {
+        this.open();
+      }
+    },
+    keydown: function(event) {
+      // 13: Return, 32: Spacebar
+
+      if (event.keyCode == 32) {
+        // Off vertical scrolling
+        event.preventDefault();
+      }
+
+      if ($.inArray(event.keyCode, [13, 32]) != -1) {
+        this.toggle();
+      }
+    }
+  });
+
+  function Submenupicker(element) {
+    this.$element = $(element);
+    this.$main = this.$element.parent();
+    this.$menu = this.$main.children('.dropdown-menu');
+    this.$items = this.$menu.children('.dropdown-submenu');
+
+    this.init();
+  }
+
+  Submenupicker.prototype = {
+    init: function() {
+      this.$menu.off('keydown.bs.dropdown.data-api');
+      this.$menu.on('keydown', $.proxy(this, 'itemKeydown'));
+
+      this.$menu.find('li > a').each(function() {
+        new Item(this);
+      });
+
+      this.$menu.find('.dropdown-submenu > a').each(function() {
+        new SubmenuItem(this);
+      });
+
+      this.$main.on('hidden.bs.dropdown', $.proxy(this, 'hidden'));
+    },
+    hidden: function() {
+      this.$items.trigger('hide.bs.submenu');
+    },
+    itemKeydown: function(event) {
+      // 38: Arrow up, 40: Arrow down
+
+      if ($.inArray(event.keyCode, [38, 40]) != -1) {
+        // Off vertical scrolling
+        event.preventDefault();
+
+        event.stopPropagation();
+
+        var $items = this.$menu.find('li:not(.disabled):visible > a');
+        var index = $items.index(event.target);
+
+        if (event.keyCode == 38 && index !== 0) {
+          index--;
+        }
+        else if (event.keyCode == 40 && index !== $items.length - 1) {
+          index++;
+        }
+        else {
+          return;
+        }
+
+        $items.eq(index).trigger('focus');
+      }
+    }
+  };
+
+  var old = $.fn.submenupicker;
+
+  // For AMD/Node/CommonJS used elements (optional)
+  // http://learn.jquery.com/jquery-ui/environments/amd/
+  $.fn.submenupicker = function(elements) {
+    var $elements = this instanceof $ ? this : $(elements);
+
+    return $elements.each(function() {
+      var data = $.data(this, 'bs.submenu');
+
+      if (!data) {
+        data = new Submenupicker(this);
+
+        $.data(this, 'bs.submenu', data);
+      }
+    });
+  };
+
+  $.fn.submenupicker.Constructor = Submenupicker;
+  $.fn.submenupicker.noConflict = function() {
+    $.fn.submenupicker = old;
+    return this;
+  };
+
+  return $.fn.submenupicker;
+});
diff --git a/src/main/webapp/apps_extend/bootstrap-submenu-2.0.4/js/bootstrap-submenu.min.js b/src/main/webapp/apps_extend/bootstrap-submenu-2.0.4/js/bootstrap-submenu.min.js
new file mode 100644
index 0000000..ab71e0b
--- /dev/null
+++ b/src/main/webapp/apps_extend/bootstrap-submenu-2.0.4/js/bootstrap-submenu.min.js
@@ -0,0 +1,7 @@
+/*!
+ * Bootstrap-submenu v2.0.4 (https://vsn4ik.github.io/bootstrap-submenu/)
+ * Copyright 2014-2016 Vasily A. (https://github.com/vsn4ik)
+ * Licensed under the MIT license
+ */
+
+"use strict";!function(a){"function"==typeof define&&define.amd?define(["jquery"],a):"object"==typeof exports?module.exports=a(require("jquery")):a(jQuery)}(function(a){function b(b){this.$element=a(b),this.$menu=this.$element.closest(".dropdown-menu"),this.$main=this.$menu.parent(),this.$items=this.$menu.children(".dropdown-submenu"),this.init()}function c(b){this.$element=a(b),this.$main=this.$element.parent(),this.$menu=this.$main.children(".dropdown-menu"),this.$subs=this.$main.siblings(".dropdown-submenu"),this.$items=this.$menu.children(".dropdown-submenu"),this.init()}function d(b){this.$element=a(b),this.$main=this.$element.parent(),this.$menu=this.$main.children(".dropdown-menu"),this.$items=this.$menu.children(".dropdown-submenu"),this.init()}b.prototype={init:function(){this.$element.on("keydown",a.proxy(this,"keydown"))},close:function(){this.$main.removeClass("open"),this.$items.trigger("hide.bs.submenu")},keydown:function(a){27==a.keyCode&&(a.stopPropagation(),this.close(),this.$main.children("a, button").trigger("focus"))}},a.extend(c.prototype,b.prototype,{init:function(){this.$element.on({click:a.proxy(this,"click"),keydown:a.proxy(this,"keydown")}),this.$main.on("hide.bs.submenu",a.proxy(this,"hide"))},click:function(a){a.preventDefault(),a.stopPropagation(),this.toggle()},hide:function(a){a.stopPropagation(),this.close()},open:function(){this.$main.addClass("open"),this.$subs.trigger("hide.bs.submenu")},toggle:function(){this.$main.hasClass("open")?this.close():this.open()},keydown:function(b){32==b.keyCode&&b.preventDefault(),-1!=a.inArray(b.keyCode,[13,32])&&this.toggle()}}),d.prototype={init:function(){this.$menu.off("keydown.bs.dropdown.data-api"),this.$menu.on("keydown",a.proxy(this,"itemKeydown")),this.$menu.find("li > a").each(function(){new b(this)}),this.$menu.find(".dropdown-submenu > a").each(function(){new c(this)}),this.$main.on("hidden.bs.dropdown",a.proxy(this,"hidden"))},hidden:function(){this.$items.trigger("hide.bs.submenu")},itemKeydown:function(b){if(-1!=a.inArray(b.keyCode,[38,40])){b.preventDefault(),b.stopPropagation();var c=this.$menu.find("li:not(.disabled):visible > a"),d=c.index(b.target);if(38==b.keyCode&&0!==d)d--;else{if(40!=b.keyCode||d===c.length-1)return;d++}c.eq(d).trigger("focus")}}};var e=a.fn.submenupicker;return a.fn.submenupicker=function(b){var c=this instanceof a?this:a(b);return c.each(function(){var b=a.data(this,"bs.submenu");b||(b=new d(this),a.data(this,"bs.submenu",b))})},a.fn.submenupicker.Constructor=d,a.fn.submenupicker.noConflict=function(){return a.fn.submenupicker=e,this},a.fn.submenupicker});
\ No newline at end of file
diff --git a/src/main/webapp/apps_extend/css/apps_extend.css b/src/main/webapp/apps_extend/css/apps_extend.css
new file mode 100644
index 0000000..8bfcd9a
--- /dev/null
+++ b/src/main/webapp/apps_extend/css/apps_extend.css
@@ -0,0 +1,119 @@
+
+input.ng-invalid, textarea.ng-invalid 
+{
+  border-color: red;
+}
+ 
+#metadataCart .modal-body 
+{
+  overflow:auto;
+  max-height : 300px;
+}
+ 
+.dropdown-menu .loading {
+  font-size: 20px;
+  right: 0%;
+  top: 0%;
+  background-color: transparent;
+  left: initial;
+}
+
+.gn-resultview .gn-md-links .dropdown-menu li a {
+  padding-top: 4px;
+  padding-bottom: 4px;
+}
+
+.pull-right .metadataActions{
+  left : initial !important;
+  right : 0 !important;
+}
+
+.big-logo{
+  min-height : 50px;
+  max-height : 70px;
+  min-width : 50px;
+  max-width : 70px;
+  margin-right : 10px; 
+  float:left;
+}
+
+button.prodige-menu{
+  background-color:darkgreen;color:white
+}
+.prodige-home h1{
+  font-size:34px !important;
+}
+
+.legend-metadata li {
+  height: 30px;
+  width : 360px;
+  display : block;
+  padding : 5px;
+}
+.legend-metadata .icon {
+  border: solid 1px #000000;
+  height: 15px;
+  width: 30px;
+  float: left;
+  margin-right:5px;
+}
+li.list-group-item:hover {
+  box-shadow : 5px 5px 10px -5px !important;
+}
+
+.metadata-nonGeographicDataset
+{  background-color: rgba(218,218,218,1) !important; /* #DADADA */ }
+//li.metadata-nonGeographicDataset:hover
+//{  background-color: rgba(218,218,218,0.65) !important;  }
+
+.metadata-vector, .metadata-dataset
+{  background-color: rgba(222,236,253,1) !important; /* #DEECFD */ }
+//li.metadata-vector:hover, li.metadata-dataset:hover
+//{  background-color: rgba(222,236,253,0.65) !important; }
+
+.metadata-grid, .metadata-raster
+{  background-color: rgba(175,211,255,1) !important; /* #AFD3FF */ }
+//li.metadata-grid:hover, li.metadata-raster:hover
+//{  background-color: rgba(175,211,255,0.65) !important; }
+
+.metadata-textTable
+{  background-color: rgba(175,188,210,1) !important; /* #AFBCD2 */ }
+//li.metadata-textTable:hover
+//{  background-color: rgba(175,188,210,0.65) !important; }
+
+.metadata-series
+{  background-color: rgba(255,216,241,1) !important; /* #FFD8F1 */ }
+//li.metadata-series:hover
+//{  background-color: rgba(255,216,241,0.65) !important; }
+
+.metadata-service
+{  background-color: rgba(253,235,196,1) !important; /* #FDEBC4 */ }
+//li.metadata-service:hover
+//{  background-color: rgba(253,235,196,0.65) !important; }
+
+.metadata-carte, .metadata-map
+{  background-color: rgba(229,242,211,1) !important; /* #E5F2D3 */ }
+//li.metadata-carte:hover, li.metadata-map:hover
+//{  background-color: rgba(229,242,211,0.65) !important; }
+
+.metadata-chart
+{  background-color: rgba(220,193,241,1) !important; /* dcc1f1 */ }
+
+table.contribute-search-results > tbody > tr > td {
+  vertical-align: middle;
+}
+
+table.contribute-search-results  > tbody > tr > td .btn-group {
+  display: block;
+}
+
+.open > .dropdown-menu.metadataActions {
+  overflow-y: inherit;
+}
+
+/* thumbnail width */ 
+.gn-md-view .gn-md-side .gn-img-thumbnail, .gn-md-view .gn-md-side .gn-img-extent {
+  width: auto;
+}
+
+div[data-results=searchResults] div.gn-selection-actions li:last-child {content:'';display:none !important; }
\ No newline at end of file
diff --git a/src/main/webapp/apps_extend/images/FitAll_OFF.gif b/src/main/webapp/apps_extend/images/FitAll_OFF.gif
new file mode 100644
index 0000000000000000000000000000000000000000..e4052ec7c6ad70856f80fd816d2dbdba9cc907d6
GIT binary patch
literal 1122
zcmW+#eN2^Q6hFE)^WzU(lexm2!|bMRtR2U=-4HTF)Fyr~Dbpd$9b@^$@H4lZ)2mG_
z)Y5$9x;f`kr<s5s8|KD@%-F$@FzS*w@N&H%A8Jh)>U{h?@AKc;Ip_Cv-gnmQ>@<I2
zA|=uQk#$e4HP(u?Y%RG;)vB>7R@o}KrcrB*HDV20LvB{oim@VA*b2E-R?Eh+SZ2!v
zBui?^SQ1NY2?ekL4J<5UnjDXNMpaZ<l^iW9W7LQmRzpq&nqpK$g;mIj!YmtQQD$X=
zMyx6sB~fA}utGJ!AQ~zm3q2468_>YQGC4!8#uH=M7;^qVi%P@@8zE;GD$ryx%!Uc>
zAqumG#1I>TJ>&tI*hU=i4-s$()c}KNsKh9AfEd_-1{S&GTpKkWi;xQv{y>Y0S(uP3
z>_P>aLM((Fku(B;E{r2+xJ8u612VCVIG_oJ;Sj0;2GQ7rEa(6+umMf(L~a^w)Odu8
zAxQWGEh;AWakyN)d%LE0LKm}l6*ubz?Nax$bE{q)?g*YkhvbQNH}P~hU=JFf1FnSd
z;0aW>W3f+)ifDYs-Dr1Bc<{9L)8xGMdr$1Y+%k1R@!ZnjZ-4%?eP^)u$-tHRTSv}U
z>}ve$Sh!959^HKSXm2EPDHdC>WXY#1Ry5te-`LTiZEel*cvCFa7>%B<u73LBh3^Yr
z%I=hcg9Z7){F0L;EuAespAVn@guz#az$i_H2K*6;M6X(^7&12J!toDw46S%)>CFp;
zwW}zpXk^xb6IrVg-dNak<EPed*CdY5UOKjO`04d;F6tXT@!-Ua`Qr+{oOY&cOzpnc
z2D`QnR_4{e-PZqi-dCLP(UGThB~yOASU!E-hwo-jt1pdLuMSs!Gjh+`&u(OPEk7Jy
zv@(=h`k<yb@O`fD_L-!)>Fts_?&^k~#^S1$C%tuL&*vNpl&`saZDUV!`2P``Bx7~=
zsAL()Dj&1>@yW@fIz~4~-|v}p<=GEkhy0t5+V>h(=C+1@?hS9Ly0<p;Z$suld-AE?
zR)13@=g!&Pub-N+I9?NcCU1S-wJuV3r+nD&X_q&j`#AVVZ79jVEq*;cBY9?7<m!PD
z(O=HSQvy@A^{c5GmLBqVceVeRpOPC%D~+G4JRIm;c5#0Cf0T2}-?#j`h8+pnzQWYL
KytH|l6nF{#dpmIe

literal 0
HcmV?d00001

diff --git a/src/main/webapp/apps_extend/images/FitAll_ON.gif b/src/main/webapp/apps_extend/images/FitAll_ON.gif
new file mode 100644
index 0000000000000000000000000000000000000000..5792ba995f744470fbdc7788dbc77209db21ab81
GIT binary patch
literal 1107
zcmW+#eMpsO6hDigY=c3ITidMJrO?nz(J7bMr4OPH2+8PUgNnRkPXvqR?vy^1icuN#
zM@lVDXo*-R1Qz)bS`=<n(8+~v!#S@Xh}WFE2_;><(S7<o@AKc`ob&rS@4IQs##K25
zKJrnV$hxQ2inYdCww7F_YE`Tnt8A5AQ`CxBF;>_Lxmlyuh&9F<wuam)t7WllEVE?-
zk|nhymW(B~gaX)r1{RhvO^(MsQ8lWpN{$wlh>B5R6>=)jG@{0+VKwALVU|VND6=v_
zBUY6}$tbZBSfLtV5Dk@(g&v534QOCtnVcb4;~5baA?FXYsEiTAV#wKr3N+aWvoOIu
zL}6CQ2(b|CArHvJHsXMPh=4<=1{g#`B}SnG#J~nLu*fCn+Nkl^7;-_vA81iA8z$rm
zyHJ6qAvS~@ku(B;E{r2+xJ8u612VCVIG_oJ;Sj0;2GQ7rEa(6+umMf(L~a^w)Odu8
zAxQWGEh;AWakyN)d%LE0LKm}l6*ubz?Nax$bE{q)?g*YkhvbQNH}P~hU=JFf1FnSd
z;0aW35{Yj^A^K{~wd)Nh&Rn?E9C_3;byMGtzfDp`{=(v>#%B@AKmVe;clhP#>6Z4Y
zo&g>EzwF=M^1;EY9UV=>!%b~%v5AR^L?V$)rf=W2zqF(~+LLiCW9iwY>uc8UKE1oJ
zwoqy%nM_VjP6h%2zu%8ff8o^hk6@ItpaFk`k7%Z)uJ6Cxe7kzxFVpTU+4J;v!EdGi
zq=r7;P+qg)2l6kkoecDUUEH6Qt@p|!!3!A=V<{`P5B**eU)^5vI+k)Xcxzro$>(<u
z)L&WIHu$Xm#{<<@myH}fKI7HimSChTbpFVk8#@n28xIE38yDnPoZ1@AT-lJ9b7-iu
zs;l{V-;0_Zxxa=+Vp*+4qkq<SMLRNk&!xpL9y{whe7|_?@78x;%v~HjG}<|TU)`&7
z*`@E3dACyjD_l@iwl3WD_<3b??TUDJxGq-NR~&0E$PN}2REPI&8q0YSNL`*c-gj`<
z(^)O6gS#3ld^5B&_ej&+_V4~0UzJwcJ8dfbr1G<gs!!_fF01KlNPX~AX6xmlk=Op_
pf#}P^^pTD|$K$j5FNN#=h_wCuj?xBBPM>}6(>2jW-{h^O+z$krH1+@h

literal 0
HcmV?d00001

diff --git a/src/main/webapp/apps_extend/images/Infos_OFF.gif b/src/main/webapp/apps_extend/images/Infos_OFF.gif
new file mode 100644
index 0000000000000000000000000000000000000000..be55af29a66eb9383b1b3b5e1924c9bcc07d7efc
GIT binary patch
literal 1032
zcmW+#YfO(}6hD-)S!|6o>x0W?(_*$`CTT5e(Xbk+nJz1KK3GY$QbRuYAT!L^^mJLs
z+*$u+3e~Jq(o=ty>7r2myO%Lq8us`-@AK{Kob$V#_uUy4xivV&kNjws$k?ZiQO1Zd
zYz)~-YonFXVl*2~wyCsH$|y04jUqcM+K4hDM%W11Rn~@;VKK~x2}p*tA!SGmu^|+|
z1~jm+jA^nw_9?AJYu1`9Eh?q760KM(vMSINrA4%`7P6u+%Sy9oX3YeRSk<I7i6+(r
zR;UITL_;NHp$B4M0~%OZCTqync%l?5Mb;l^QHdyFC1mYF1)401Suw#qL}6BuC}Ksh
zhddw?+lT}HAp#De8ek9&l^BH%5Ca>~z#^NRZKK9x5wbzTA81iA3lnmMU8q1)h=q_N
zl12c~g>eK8w}=vXKqj^k2Q<Mj96~j~AR3#H1sxy;HlWF#$WEh;8jo->1POnjMa5)4
z4x6iUZ`*WEXk&J+VrQM8ZR$>TcGZc)9>H;FksQ(XCXNmZ>_Fplz?BdlJb~){@bJOZ
zR0@oxH4#fg)BGc{mht`#2hIe><ZM24cF*xEM+<MS+PXJ9UJ6QGQgAso{d96x!OfbM
zx1YW~ebaXR?)`?3T^CDA-g!Lj0|RgS`<r`u>fG+f_4O51RUbx2J4Z&`gM&R26W!zE
zU1MW?larsPrts;np7WjuqZ9-U_#^y?77deYp8u}O8{uc?yVfVXsZ421qkzDsYIky2
z!S8?_*9xbT!g2=n>$cfVw<1pceHGdnmyr~8se7>OQ{0oXm)CuM^behIm(}IYcm|H-
zMVE(N=pJcZ+j{(P<H@P!^MBTLByPXBuKa=5U7y6=kCt309(p#N5L4+hHy$#pOP1%x
zpWE11y|MIJ@wcKa?Jr`!#HEjSG+cccQ~vx|Z?7wRVaE5QbN`w$z2c)w_q8l8^Bum^
zekeHmmnS9eUjEHm<>~0DSTUQ~m_PHmZhz3q4UKs}$KF?M+s4U7zEvr0k+n5HhFV+;
HyeZ^AgOd=j

literal 0
HcmV?d00001

diff --git a/src/main/webapp/apps_extend/images/Infos_ON.gif b/src/main/webapp/apps_extend/images/Infos_ON.gif
new file mode 100644
index 0000000000000000000000000000000000000000..9837828bca18e512916e70d7d8c08e001cd3f6d2
GIT binary patch
literal 1028
zcmW+#SxA&o6h1{!R74R;pePY7TJ&;Yw6dg(%EXe07TVD0LLeBK*uF`HWS9xnjT$Ae
zqB8dur-$~%Ic4RO5>8sC5u-!uIF8EgyZ?PVoO8bI{QugNH3>^HA}E3eiHv<>j5bCY
z!^V)UM2u)7$_N`F+tgyTHd-0YMw6XYVw5&Y8O27CU1c$>4J*TJn1EzR3~58k5F0`P
zY(N7G%a|t1W1kjLA}m6d7M0ebm1q`CRt1_$i&COk6j@Q2Wi70PS(u;^t3p~x39%4Z
zp&DQi4V93E9*BVrXkcNPtRY+DDXm#+vi?AeN-3>aE3$T>0!>z$Su?>sL}6Bw(!`oz
z4|zZ)wh;&XLj)W`HNYSmDlrNjAO<#|fkies+eVGYN|6l`{y>Y0Sur73*o6u-6|o}Z
zh@=q!bYUDp!!4pj9*~J`!~sn(42Mt+Fo?z`WI+drfemP~C$iIMqsAj#3_-#lXi+iQ
zkHhBb+}k#t6WW-atJqm5Xq&o|on3X}ut#tlS|mrby@{j40z1(79B?Is2T!2t3x@}W
zhqq^DMjmX8E9{NVxU>33Ahl5T-v5_&raq^pcgx}HSy$>$-23{pC6s&l?kivD?sLg6
zDeVY^FJ3SE83;DKc=_#D=f9z$z~EqSFzD~^{}Tu_e);m&>#eA%=?{mydwRP3{`Rh}
z7N2i$WF$B|j8A{|(6})$N{gTYe?$b)#CG!Sk6c$(wlaTgb?nX$RT;_D8nsw{H|=p1
zOq-kex~nNFVSZo7^1=nv_qejZKW=G`-!#W{q_g3Y=SgLGa!Dxo%(Jz~opyfS=s@3u
zjWNrMr?BhIg$+>&*+2R}=G?2xNIKN^xcI@fqPUc@(9HvX-+gvBmChI~h&)#0+gvxP
zw!*tKCnm9SYOVGjebknil~;0d*DP1LC(r+5{O)bJ9j)05Z-3tLu&R31@mSBf)b~Zv
z`?9W9f4Z2m{+8#&srJm~t-bD<dAE}CqaUWbSDYM4_qzQx@!ffJc5=*yn<39>TJ|3e
Cwii(V

literal 0
HcmV?d00001

diff --git a/src/main/webapp/apps_extend/images/Marianne.jpg b/src/main/webapp/apps_extend/images/Marianne.jpg
new file mode 100644
index 0000000000000000000000000000000000000000..97b75359219be656e36d45e97dadeb16fba61a29
GIT binary patch
literal 23771
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
HKWqO5q9)fl

literal 0
HcmV?d00001

diff --git a/src/main/webapp/apps_extend/images/Mesure_OFF.gif b/src/main/webapp/apps_extend/images/Mesure_OFF.gif
new file mode 100644
index 0000000000000000000000000000000000000000..ec0fd01e74d9b84e07a33a3322a86ad20e8b3cfb
GIT binary patch
literal 961
zcmW+#O-Phs5S|SWN{2v5QljV}7-p9tD8;}IZH7@=2aOVQWylaLjDAQV@?fDP6x6;6
zR!CWfshJcg8IeXgSec~}xFx&m4{0T6iQ?Pye(!CVndfi5&!4?}`;KD?lt6!ptb1y$
zu~w{QYsporR*hA$%2vrWjap-@5o_2Qa<igVj1{rMR>-ZgS~ix&GFv7fSyD^Jl2~F(
zD1Z%UU||{4<apdOs-nuO<Y-YDqej%Q8geSo6r&<4tU^u{X4xo<GAk1_VpYi~i4rS;
z6{-OS(NGCl=z$p6fCd(p$r*Aro*2W%kn;yxR3b*$2syh@fhLP#HcW62QJ6I(hS(77
zArHvJHsXMPh=4<=1{g#`B}SnG#J~nLu*fCn+NkkZgj|sD2U=9j!h~F57b?&cVj<*+
zq!9pgVH`ojEuusokcn-?0ZlLrhfobLh{h&lK?jI|4QO&Fa?@y|#v@z|LBbzsQ8BrX
z!{zGT+cmutx|qGIxLGe~m%5joTlL~_NAMgvBu})viKoK>d(ikCa3zEXPoVl3iF^o$
z3yO<lQuC7conD(6$T@SPu=@6a(hIqPvQv$171fs;9(R5kkF@r_s@0(@H-oQ7zefHo
zHhmv|_h;_XSST2dv`<a<&diR?&+pIAKO6`QMWX|uP|x7t@WjMWB$8iLG&(u?ZF)L1
zGxK|CX?bM@pZ=!B7$1z%7HGg9kw6sNNFBa)d)n`0Rj=y!(cN6WvA1S<VXE7|rlGHP
z^r`P<O-GZzF6md*`ndRuJIhA$T8_NUyVqZpl6|!@@!);`t&#L-Pw+`o|MiTth2etu
zl-#<kv=iarq2%{>_xeg6m3Ee7w(P1e96q;g^Ov@y=GpZPUD3gI8MxN^F!%Vtv(yRS
kgY=56N9z}Vj`ao4mcKcl*cG=S=lRJOm2=_Gt79qSKNmaeT>t<8

literal 0
HcmV?d00001

diff --git a/src/main/webapp/apps_extend/images/Mesure_ON.gif b/src/main/webapp/apps_extend/images/Mesure_ON.gif
new file mode 100644
index 0000000000000000000000000000000000000000..544de2ff741af551b2de52d71d17087c9e0efff2
GIT binary patch
literal 947
zcmW+#OGuSr5S_|JwCo{;wXj7Y)goqNwJ8lvg~VDJXn7YyEri+xf;~Viu5i)R$_Y!Q
zkc2Re9%QwXgdC_4=^=u65iK#z6utMq_kNx4pWQGsXU;kEeZ?h3`A2H9DVx@aoDXwO
zofGHSIr5pAGj%4;*cthvnp1TuPT48>UNI-?M4Ye_@}q2y)v-8c#{?ut=13ihBX)!Y
z*nkEWhS5!aj}J8yGd3f?7MZH4n6fE(7AT6EhzXmJCxu>CV=-o90!NG*sgW455w?Og
zz(5)-K?^l31~#C9g<<l7e2x%RRwb_wYmtelunKv(V1XiwGAk3*gA{s|M2VFk4}O3q
zreO#4g9H?UHNZd`EYS)cSPX1H1B<+KzKk5fBIJ#PKCDH?EKKkfa=`*cAr^v<a2f`H
z7usPo)WS;m0h*YG9pD7PPzcrl18Gcx7I<JWumMf}M7|qk<OssWU?lWmEixwmIJ~dn
zy?rq}p|?4_iti1L_O6HC`O(l0e}qt>M+!;%n}j?(a0rd(fGfc~Xu_(0$>ee(Q5lKs
zZ_XU5`;>cqYF~7Duk;snXA193pT732pn0rjAXzuGekIo1*fTT|PxXCEeHb3;9Ge?_
z`~LIypHnMqJx}}E$0z4kR{Ljv-S{!lG9CZ8^mi!;CgSncAefn-UrVJ@86W9%ItT(h
z{oF*>1_-5t;D8^IO|-d%7BA(T8t6XJuyHVN_;z_$;jQ)UrR^QHU9Y1%Ig)j`;_*my
z_m1kEk{3@(T5|`hg1N&prT2DKMe6ffdkb`HvAm4(ti|@!wp!oWNO?z5L#FfMwuy?n
zWo=EJTVDMhy`TU5%y?7m{Fk;1WxXdKd_7PZOCNpoaISpeTx0sr!lvVI`X`6d$;9Z@
K#p-uA>DYgxFYU4b

literal 0
HcmV?d00001

diff --git a/src/main/webapp/apps_extend/images/Minimiser.gif b/src/main/webapp/apps_extend/images/Minimiser.gif
new file mode 100644
index 0000000000000000000000000000000000000000..c010ed1e621b1ac67e8e80415ae27d1d27de3db2
GIT binary patch
literal 106
zcmZ?wbhEHb6k!lyC}3bv{K>+|z`)9&!vF*zu_hq>|NsA2uU`H6^XK^S;~;S`VAhY=
zbw|$Nlw@eZkEb=>_kF)Nc6+p4J2@lk)z)_vn{?OSD)#Z+xYgTMqEF?QWMUr+gEasV
CT_^_t

literal 0
HcmV?d00001

diff --git a/src/main/webapp/apps_extend/images/Oeil.gif b/src/main/webapp/apps_extend/images/Oeil.gif
new file mode 100644
index 0000000000000000000000000000000000000000..b812b6c9586bdd597cdd9dc52a9ffbf9f76fd9b6
GIT binary patch
literal 89
zcmZ?wbhEHb6krfwSjfZx1TS9vhXBQ&ER0+XObj|8QII?Xlh%~}m8Z`#C|3k&Np7+=
ktmc)J<*1lw!1i*dQ(DI^`ObtVQ$lVpwf<MH!N6b*02z`Vi~s-t

literal 0
HcmV?d00001

diff --git a/src/main/webapp/apps_extend/images/PRRA.gif b/src/main/webapp/apps_extend/images/PRRA.gif
new file mode 100644
index 0000000000000000000000000000000000000000..c878cbd5a4b4ff8f8978246098f814778e9f6213
GIT binary patch
literal 2563
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
MY#y7?b_ZbdKXFn(3IG5A

literal 0
HcmV?d00001

diff --git a/src/main/webapp/apps_extend/images/Pan_Est_OFF.gif b/src/main/webapp/apps_extend/images/Pan_Est_OFF.gif
new file mode 100644
index 0000000000000000000000000000000000000000..cb9e442a303c3fa9254613b9e649d6a217d8b6a1
GIT binary patch
literal 836
zcmchWF;13Y5QK;1FZg341(AY?^mI#zhRVdC7Q`!P!Q6vJNoXnD&O3MmXt$vC7IuVc
zefB+sTYa0|ot>F|zmK0U-oE>`)mBeZPgHkyyF0oySyfkdxhuLf#jMWkbZ2yGdR^^o
zyB%%KXjDgbxFb3QQmb0oaw}RSU;_;n!*px*Ok|a-qDr%tEVI&;QK?};(OGsm${JGi
zMpn2YDg;MHOIdO$N^FHSV339-w5YKdY@oqnSR-h1!kLk&(Z^acI~{3_Tv$*HXGDfj
z4=H+6PDKiN_yJ9(u><{(Kq0IFgETB@g$Ikl1{y4lb5kZK!qymxKGu>&IE1grg#|?`
zEPTXi41gEy7>!!2#1CjPjU8}8FbZJ}7^Inm7CcxCHqe?AO*dt7LR<_Z(Z^b{&^(Uu
zb=`Z4>x5(Ty2|t}qsR5--Ha|f<_JsSAT82!lf`3z7c|d-D`6g*She@%hKI<<e~#nl
z&5ra(C$o3{3GE*1_tnGq%U|!WH!ofv{(Ss;|6}*)?C#UwHy>{IU-|UlrOy8W+(%bz

literal 0
HcmV?d00001

diff --git a/src/main/webapp/apps_extend/images/Pan_Est_ON.gif b/src/main/webapp/apps_extend/images/Pan_Est_ON.gif
new file mode 100644
index 0000000000000000000000000000000000000000..11112ebcdab7d43067e6bf524b57c9e8b4fe76d0
GIT binary patch
literal 836
zcmchWF;1LO41@;>2~Zj+A}COj?P-uv6hsAzl2GLe(D)uyAkk9bE@w&YB1fS^ROXv^
zh`9K*mhJJ(`0dZ@AK%Vz_q3;1X&gOMGdUA8a@IXv(>Wc}a<O`<rgAE#<lgMbn#{?V
zlt-f{Y9c3MLLiNLRHGclhy-k)!D5(hd5@#Ivpc%wwPaOY*%e(f3yN8t*%_TODSD$i
zvLiYKM@C!K%2u@43Twb14NGWIV=>r3gT=5c$T^W!Q6=kREm>w|RLXK;K{2u-DujAS
z(Ob$=l#quX&}14r&<_a|!WuA0!;)5buo!Hh!IGVGnVg7B*+}%UmMkJe_=;RuP)tP%
zA8{H3;6*z|qZTXi1DZ@@2b>U$LRbR^X(pis4;F(Bw0t6WQzj?G#V`_mtR)NiaoE>&
zZx`1IZS%T{dzaC6eR=26WrvTj6dGxf_DvQK121Tv16RU4G_mU7_X7`+AOATvZ`)g5
udE$@%6Fa*bZRzOr>d)of_J>c$&;M@z-tT_?`t<AN%lF5Rhk16iuZwqXDpYs?

literal 0
HcmV?d00001

diff --git a/src/main/webapp/apps_extend/images/Pan_NordEst_OFF.gif b/src/main/webapp/apps_extend/images/Pan_NordEst_OFF.gif
new file mode 100644
index 0000000000000000000000000000000000000000..8b7011b736602619fc7113529a9b1c45f20f1c49
GIT binary patch
literal 834
zcmchWF;1LO41@=XMOmt(kA#+*B4V12k|qs^DlIJ(uDJt65GTMQw?Imt-WSM8A}aIw
z9RgRsWqUj`e*fjw#s2HfR$Kj-dZN0sJG$Mi$*Q`tE4tjJDQ0zMXLPz#(;L;19ns+q
z&8VxL?P$9#kXqHsR<ztA0UKzr7^YjZXCkYj%2k@RWSNyw=}HX?ijfsj;R+2YdY$Dc
zyDT^|TFO$CTw*J%0fRIwp+$|wU;_;n!x}-86OrjmjXu_rMPxWbBNrAF9cib9dPvcm
zij-5x!w+aOjUDKR1PWmd7^GoID?C^XHqc;coSQN^;Rub9=wmIJ9TvVK7Zwyl4&ftC
zV*tEp$7s}IC4NAYY3zU#f>8)-z#z>ewBW&Fuz}W`Xu2tr6XIeRi9XhnS@Sr?*LCkH
zt`m;U>nhW`j2_pQcQd-|m?JEOgS1G`O%{&<UeG)Tu7r7LV%4Xg4?ILZ-Z^%!hX>L>
soz33)C-mV&FWb-ikI#Sak2a^@ukUt0ejV@5e?NV>{qwka*&OQI8~6=XHvj+t

literal 0
HcmV?d00001

diff --git a/src/main/webapp/apps_extend/images/Pan_NordEst_ON.gif b/src/main/webapp/apps_extend/images/Pan_NordEst_ON.gif
new file mode 100644
index 0000000000000000000000000000000000000000..aa796a74e0b836dd19b77ed7cc293b1588b0302e
GIT binary patch
literal 834
zcmchWF;1LO41{N;U0Bl5BSpJ)3Y2L;(9nQV(WXt~dXEq(NQrWSSjuJ6`#y-ue13<B
zi(hNm9?y*5K7Dz-x&3yb3%yD`QQg@c-R{<8RbAN?UGCBpvpTagI^C)1jq1pb=x~Q-
z)YZ;*wA~g+t!iZ}T5gem4K!E`)2-PvkyTOUD$QE5%*v>ArG^E?$cm_Ng@zQp&T^Dp
z791HZWhqK7u@%;UK^m6OqQ+vdfd-3VjiAYi$aJPgA8W}XGMu523k!;lw9`U8r07jW
z$|>aG2Q-<+4)j9;g|G$;(y*iz9xMhMXs|TSO_`i<gvLnpv6jpZ3ty273yL9!@DZmm
z0A93XG-|ODKcLApcEAb2D1<d&kY*BE@L)06Kx<Ak-IU1*aWRZUA8X01c^u>Gy7v^<
z3CHGjmFZnZkL%038C`bF5thP1TBPSDi^l*jXr2RC!aOvw>hk#)50M}LISy~z&8+-1
qpZQOm?>}m@zq&cS{QGgXJKldi9UgvuIDG#5=lb~l_inS@>h2x8cv8{;

literal 0
HcmV?d00001

diff --git a/src/main/webapp/apps_extend/images/Pan_NordOuest_OFF.gif b/src/main/webapp/apps_extend/images/Pan_NordOuest_OFF.gif
new file mode 100644
index 0000000000000000000000000000000000000000..f110cf7f6388f8a5a3d1f02644d7132e0f09d515
GIT binary patch
literal 837
zcmchWF;13Y5QN8s5dP3eVo4&u6$Mt)NU%n!I0F`2QE&x<iIkLVtT+RSJ=S{xPhzar
zXWv7x)wkK**_qk*`*Lyq>GW!&js8kKQQg@c-R{<8RbAN?UGCBpvpTagI^C)1jq1pb
z=x~Q-)YZ;*wA~g+t!iZ}T5gem4K!E`)2-PvkyTOUD$QE5%*v>ArG^E?$cm_Ng@zQp
z&T^Dp791HZWhqK7u@%;UK^m6OqQ+vdfd-3VjiAYi$aJPgA8W}XGMu523k!;lw9`U8
zr07jW$|>aG2Q-<+4)j9;g|G$;(y*iz9xMhMXs|TSO_`i<gvLnpv6jpZ3ty273yL9!
z@DZmm0A93XG-|ODKcLApcEAb2D1<d&kY*BE@L)06Kx<Ak-IU1*aWRZUA8X01c^u>G
zy7v^<3CHGjmFZnZkL%038C`bF5thP1TBPSDi^l*jXr2RC!aOvw>frL8hseh($M)aO
z8|jZuX7BtH+WVmA&EeO#KVR;4pSPcnZ??Z~_xI1QA0M86|9JQQ+xPpAM>_it8TVJ(

literal 0
HcmV?d00001

diff --git a/src/main/webapp/apps_extend/images/Pan_NordOuest_ON.gif b/src/main/webapp/apps_extend/images/Pan_NordOuest_ON.gif
new file mode 100644
index 0000000000000000000000000000000000000000..c239cd777d5489dd33d4a71f3469e3c457326de0
GIT binary patch
literal 837
zcmchWJx-iq41{MTL_kzXl#%$UQlxXUh}48soB;|~6ng~}q-;rvOOBG%zC=zDrE;Em
z4-pri*0MdG8Nd7W+wJ!H;aJD|BaNeHY9?o5M$WpYYdWW6S}s;k)l^Q!l-!#=S(7;#
zlk#ZvL`~#GObDb=k7|^o7?FStG*}GNE$?wucXmg&yq2u0E4!jgW<fElGdrVGCPi;l
zM|MPq;K*pJTG@&gTVV|tq+tmyYAgmDXs{TT1vw|ODyn3CtR>5=j7nK9EGR}+M1@cf
zDSAs;iW2hh1DZ@@2l^p_LRbR^X;{(<4;F(BG+458E|U|HDI1AC){;eJ2w#y43yP^o
z;Ui9C0K90&Xw+gQen69H?0^%3Q3z|mAk8GS;K5?BftF9?Zp!3@xEMyFkF{hWKMwo4
z?(O0_p>1AQaqlwPt}pLAy6o@~mO>*f(!R;!Vc-SLbKpvthbC5?-tT#c{P@pt`S)Ps
wm7o3bf8xW@l{QBo?{+UgzaMTczI@vK-ant5+&;a%zW@4hcK-OXy}HoNKiN!HA^-pY

literal 0
HcmV?d00001

diff --git a/src/main/webapp/apps_extend/images/Pan_Nord_OFF.gif b/src/main/webapp/apps_extend/images/Pan_Nord_OFF.gif
new file mode 100644
index 0000000000000000000000000000000000000000..115a60efc557ce3400d3bbb9f8ce72f0ffc8c697
GIT binary patch
literal 834
zcmchWFHW9e5X6TD5<b(Us)huRO+L|NOq;q2{u$1IS=}=r2v^tygR5*qg2(R#DskL^
zpqAf0hv=$zv%9l1v(I~ae)8@6)kYh=N<C5C*&W^P)?`&(*%e*x(iF2gvoku~sp*aC
z$d2f6hi25(&UUoj7D%mXWh+{4k$?>}SPavx*)x$<QROPlTC&W_sC1=<1;xmUsBndb
z6ur)JlwB4a87*ZgN-nV#)__48me8WcVz7Y*i(!qR$%)8xrbZuY$s#hGp^*y<ijK6?
zLOrDDO-0Hn<lzT2nZ^$ELjr}c1`N`$q!k`41{-LwG|o+#oN$E3Nc6Fm%nl1*kqZlo
zA&2l0r!fFtv|}`Cu@XO^$uxGr3Bf3YHDHit5?b(JG1x$BPBh(=$q8{Wj6@%6$*g%C
z<LkQj6xRvI=5>|nT}F@V%exs}cFYl$!a-W3=O&BC0552s16RU4G_mT_<t-19kN+IU
yZ@W9vKW%64{1e(g)WhcB?AOub^@qP-w!i<}KizyhzPNk&`uy|e^TXb*e!K%G6<5;$

literal 0
HcmV?d00001

diff --git a/src/main/webapp/apps_extend/images/Pan_Nord_ON.gif b/src/main/webapp/apps_extend/images/Pan_Nord_ON.gif
new file mode 100644
index 0000000000000000000000000000000000000000..6fbc172db61499e274122d99ad617f705b48d798
GIT binary patch
literal 834
zcmchWFHYrg48-ScUIG}BRTvV2Lm)`TEWsi8vu4kLspbp_!WEieaLBy^zK2*GHz26;
z>Gu#@@yl!4PG_dycYS;H>-=s{d-{}mqPnv?y4|hGs=Bf(y4<BHW_4y~bh=a18`Y5=
z(cuowsH>grXuB<tTGh%{wA>;A8)&c?rdzXTBCDdxRhqSAnUzuLN(~E&krh$l3JocG
zo#iOIEI2Y+%2JeEVk@ixgETCmMUBN^0}U3#8bOm2k?Bm0KGu>&WH>`37Zwy9X{UvH
zNYR^$lvBvV4`?!t9q5My3SkWxq+v-bJXj1i&|qntn=(1!2#t~GV=b8-7QP}E78FAc
z;Ui9C0K90&Xw+gQen69H?0^%3Q3z|mAk8GS;K5?Bf!3U8x+#+r;$j$yKGu?1^Ek%W
zb?+&z6OPU6D$~1+9@m$5GrH`UBP@l3v`EiQ7LNg5&^!mOgn4LU)z3dqJVbu{=Q#e_
vZf51_eC9u~vwNh??%~b-zo&;E*C(g1e_!4n_m6)+f1JHvJ|1kgTU~qu>_%0>

literal 0
HcmV?d00001

diff --git a/src/main/webapp/apps_extend/images/Pan_OFF.gif b/src/main/webapp/apps_extend/images/Pan_OFF.gif
new file mode 100644
index 0000000000000000000000000000000000000000..7ee53abecee1b0ec248bf16f5e7d83737d7b4dd6
GIT binary patch
literal 995
zcmW+#YfO(}6hD=XTsE8e#|K0otZ6Pg)|f3bR?*^1>*BW6>R2k74>iKVM9Ik7cxoCG
zW7ULFi?$-GICRxz{6|e{L*_nP+vE4V&$qL4&hK{KH)d<}y7j3(^3h)+>z-O`tQBk7
zT5^@DRby4GvQ=_Tqt+N}#2U7S+^nb-V@0g66>_VrmW^ex%$5mAmei85B$n6`3Sa{o
zSXjn1IUe_ns;IImIa*Z4s1Y@+hMWpC#i)o1tB@0gSvJa|%*q6fSXDAgqQpvIg=&C7
zG*m(sdLRZipn-*Da)w-uC&sWb<otmam532GLe4H!pvhvG4HMi$6lM*HAvOei$OAI5
zjX2;RBH$3J0S3`fiBaePF|Yv*EON=YHflT;Ar~b4ffg0BFd<jig$gu<SO_^HX#@aW
z7)Q`>iztx?WMUg}KobnZAyfklqOl2C&;ep#1Df24+%(##@dy_~knjguR7~#UaJhQ-
zc1`buE@tm4Zq^IhrS4_tR=qgf5j=+u$rJ5v;^}a}9yC4&TnXX96R3K|#=1X#Oi4=%
zibx1v9_`zl8yc4%wlO(!*U{+xr6~m!Co1c6ORjF)y)QBQa6-m`+Gm<mQ22b{T}92^
z*1rCPJ$qjG{morn^{uV98ynA*mmeuA>K`BP`}C=IZ0z;ONc-?`Lr2Hp#KharpFd1a
zcKiKrMo01KFa0+y07fYS8t_N>h-S3Vy?_O=_189?3cMG-`)plR)Un@R)}-H_)6!P-
z>rd*9<=>Y*Dhc7V$9Z3?+AsJPUV4|G6WW;-vT0>@aA9@a<#`#A)tL`&#TBfcf3h}a
z$C8(oQCW{>@9Y_gIv!T`W2(4!BKFGKIX}vi%l0PRoIdO6lcb*Xf!gV(npV`z%^9kg
z*%{bT^vXZjaPagk&FiX5ED7H?+AK-m+Om)TT-kr;;@$Vx&IPU7GIjsZ_RjP1Ri$6b
WzRC3^4~rMaH!aHS9SRJj4gUdxG4qiC

literal 0
HcmV?d00001

diff --git a/src/main/webapp/apps_extend/images/Pan_ON.gif b/src/main/webapp/apps_extend/images/Pan_ON.gif
new file mode 100644
index 0000000000000000000000000000000000000000..29b7e9a7ce00e054a97808c85fdaefecb161d19b
GIT binary patch
literal 987
zcmW+#OGuPa6h4MUWQ!IxR6<}a!YBw%MOKRnd`1YFL?VGBoe<O(nT$cJ3|&|aCFZRl
z6Rac}RB#Xq!a||AN}?q;87ZkL%{0u2!@RnE_rJTtIp=$w|1T^qIGR`GA{WJojD6Y|
zWsDfZ#*nSFHd+}iMzhgmn@Ss{j1r^RD6+GnjVL2xgpH70Wo=j)7Q<|qfMiG;QijA3
z8$tnWKm!ZQm?q0(pVC^iX06H6qEbpL(TcSqs{&0?T0{$LAu9^AtTc;e)=bcdRZU8h
zXktxZg=&C7G*m(sdLRZipn-*DvW9GpCrYtWWc`5_m535nLe?%+pvj_`6%*V;6lN8P
zB31-@$OAI5jX2;RBH$3J0S3`fiBaePF|Yv*EV9YjHflT;AsZz8ffg0BFd<jig$gu<
zSO_^HX#@aW7)Q`>iztx?WMUg}KobnZAyfklqOl2C&;ep#1DfoK>@?b_@dy_~knjgu
zR802cu(>+-woT`RHfHB4cGd~nrtV~CSDiTQ5gdmW$q{XD;^?rz4m3UoTnXX96R4tz
z#A+gO(e2*RIJvF5FXvvm^u@o!S6}8gzpouk6+Q`;-5;y#nW^m@zH-ysc(?oQk7TER
z{L^CU-SqNIFg>xb@O5@}bZl%jnT*8a;aKeN+S;FJG%!CuJ~j1bc(~v1{~ZebT3MM}
zT8gDoYsustuNR+wPCPRMMrl7Z;E!+-Z5*ONO?FXV*Qs0U`g1E=4`iS4%xo{o>^j?h
z+LPK@QCT$M_P0&@#saOc_k8fCeHpYR@+kkort*RI;%n}a+lOj=4a?`A6}N;N2EO+W
z?9FdUpA1zVYwszo3n!|w@~-!kKQ9=}*G+@3CY!bveyUyhl6&MvRdq-3TiLD=Ph`qB
z+k5coM^ALLBN#v5eaXMMYF}IIVg1j?S#z$%z=hp&9p1W%<};CS!O&`?e8cDZP)XnA
J!1_!&{vQA-0~Y`Q

literal 0
HcmV?d00001

diff --git a/src/main/webapp/apps_extend/images/Pan_Ouest_OFF.gif b/src/main/webapp/apps_extend/images/Pan_Ouest_OFF.gif
new file mode 100644
index 0000000000000000000000000000000000000000..6c09cd2a09d90fd0c3aef4ed900ecf04aa202712
GIT binary patch
literal 837
zcmchWF-o3c5QHaSAb%k!q!zW16c)lXk@QL+;2E^o6L^6n&0pH?4eY%@AeMUpNtIKm
z)%xsv2)Fu{-JPA8eZR}^7hlh>H`?e~>WS*k?&x;6CadbouIO@?rkK^4ozdw|O>b03
zc0`9eG^4I|wxjK~Kx$PhThVfh1Z<$eVwi5to{6lADpzUNl4Vv#r7JZoC`ML9g)20q
z=yjH(?6Tm<Xemoka*3_51`N`$gcdaxgAFuT3~K~UPDG|NHTqaf7Lnl$ja*nzbfldY
z>LEpMDpF1%4?m#EG<KjL5-5Z<V339-t?*zm*g%7&ac;`wgd;RYqK~y?c3Aj|Tv$*H
zIfRcmjREkY9ivf;mG}Worm+J~2u2~S0fRJ?(1Hhx!3J7$qUokgPKb+PB>GrOX3gUm
zU)Q~-xK21Wud7V&GJ0HJ-p%N;V~(&C4$>k$H(5LectP_VxDw`}iB<boTOJ}G?;J<3
zJ0GMcozC9*C-mu951Y^1-G6_6e%w9yaesIC_t(?G$?ePD|Ht3^M>qB5>`>p{05<bk
AFaQ7m

literal 0
HcmV?d00001

diff --git a/src/main/webapp/apps_extend/images/Pan_Ouest_ON.gif b/src/main/webapp/apps_extend/images/Pan_Ouest_ON.gif
new file mode 100644
index 0000000000000000000000000000000000000000..3b6e1ac2229833085aac0b34091476ef9220f82b
GIT binary patch
literal 837
zcmchWF;1LO41@<M5lay%D^Vjh1)`upng*1fC{m=HArwAAE)Zx^()tD*1Boqt2~Gj2
z%;$HAxcIe}?eWa`?YHkYSJ%Iebfj0QC#pNUqubq@tg0)!qRU;HVpeB%MyES9y-^+6
z5gqQ(jJn#{j<(wZsa36PMawM`uz?1PVY)SYCbBB3T%}n{mRT8<uGFxg7+Db&uF#O8
z*IACT%Yq}Lr7T6sCAPvEFi67^TGUt!Hqc-(tPwOh5t+`^=wmHeM20goa$!Nyk#<_B
zhZMc3NI8W({D3CY*nxgXpb*x8K^m5{!h^+N0}YnOxhazqj?fs1KGu@iVc{!sVL>tE
z5I*8G2EdDUj7BY1;s-RD#tt|k7=^F~4AM+O3mz;68)(gmrkgT3AufiI=wmIJHIHL_
zUH6{iI^o#7t}?yL=y82{H>1mrIl@vnNQ?B`Wbqi_1<iBdN|=WxR&9U&<stIpKgaIh
yhl5#pF`xNQ9B#hoU~_zRyMOxg@zcqV$A{DBJDr^Ue*65gzu)d|>-_RmU*7@aa#p|q

literal 0
HcmV?d00001

diff --git a/src/main/webapp/apps_extend/images/Pan_SudEst_OFF.gif b/src/main/webapp/apps_extend/images/Pan_SudEst_OFF.gif
new file mode 100644
index 0000000000000000000000000000000000000000..3e8d0ff0b209dda1ac23639a28bda83b7c9ed6db
GIT binary patch
literal 837
zcmchWF-o3c5QHa0h<_kOP7qCD^*1t2#72Vr!769aVtbDeND&0V(k(rLXRryl7f6>|
zh}GuV_Ym3YTXuJLX7>HQUF^P`TyC_{i_{a<o!!yxZcSFzm0i*0E=@73GdrWxotoaL
zj_imIcW6dk?QBQeZGqIPR<@$$775rugT*l2nmrR)6;-a%tR>5=j7nE(SWt|thzeI|
zNYU#oN7-e;k<n6?qT~`=VGS6hVF@j2ECw5Buo%_|nw*GCXKM7ZmMkK}85+5;py)_D
zE!0Db-c+QVLLPoVlWFWgKO|5HYrr54OIqQ<Vz7Y*OXJ*>$q7ejj6@%6$?UN36}hmW
z7;*?7aT){QMLR~L7Ax@snoMH{oDhscSOW%WCZPon7K076=0wv?nVb+8!$|b8mdu*R
zF}|*QPjQ`aY+hHH-evT-zPy{!Wyc(0DIBCldTz3K4Df>HIdCP+Lldh$e*eWo<l{fb
z;p^TT>5sOvcm4_Of7avW^X~5N*^jp$j?V9IAHM$Fe0sm#zrK39d3U_q{ysj?=|3*P
BSD*j@

literal 0
HcmV?d00001

diff --git a/src/main/webapp/apps_extend/images/Pan_SudEst_ON.gif b/src/main/webapp/apps_extend/images/Pan_SudEst_ON.gif
new file mode 100644
index 0000000000000000000000000000000000000000..24790e6c09687bb9209bb73c47a8c91d7581cb37
GIT binary patch
literal 837
zcmchWF;1LO41@=P#4ZvACm=~dwGEmEM1xQSO2rvS;hq~1DFupB(7NO-X;SzQ+yYTK
zpWh+k;@4WX$1~%%ci(O=E+4kq>RsxI>dx-ycDE+0>dLO@a+ju<)tQ~q=}t{=R7ZA1
zhdVT*u6DMg?Y2N_RV!Q3a*G6Ppuu98Zq1&FtcogEY1WcuRz{^OH7qDbRz!s>G^FTt
zmZR*l;K*nxOHp!(t*{0R(y)XUH5P*nG*}F41WisvrZYAASW6a>;S7yjSWtANofhgL
zMQ<unP9YCJpvg3LpdS(_gf(E0h9#}=U@_Q0gQan9%H)J2G)AJ2wPbc!_=;RuPz*VQ
zk2sA1@S+`~QHz!M0Zpc{15OA=A*=y|G?UPR2aCZ5T63c5rc6$Vi(w@CSW9Nj;}~Dp
zy{EWNI5w}VOz$#!TwmVJ=(1yuuoMo`B0V=*JO+3{^BlMm=AnsIC-=`hM1K6|`22CO
xH!FAZng7J$=8Nur>-y#G`p5q9+1Jg}>&?&Y>CtZU`2EkX!}HtS-}6tp`UlgXRUrTX

literal 0
HcmV?d00001

diff --git a/src/main/webapp/apps_extend/images/Pan_SudOuest_OFF.gif b/src/main/webapp/apps_extend/images/Pan_SudOuest_OFF.gif
new file mode 100644
index 0000000000000000000000000000000000000000..38b719a8984a39ff65038e0c77e5a9d2c0574f4b
GIT binary patch
literal 837
zcmchWJ5F9v41@<M68uU<109dlp@^mlq(wwjG;DyzHCaN6NR%mY2WyB#PmMPaiG3g{
z=kr-aTwTldcxHU=_sff~r#BmI^d|L0b!T^UyIYf0b!As{xl2>b>demQbf=~_sv|q1
z!yTGYS3BF$c3U8|s+Fy1xkUmt&|oo4w`R{oRz;PoG;7H+E2Gkt8Wt2IE26>`8dCH+
z%Tab&aAdTUr6{??R#*cDX;?yw8jHaO8Z3r2f+i;-)0rB5tR;)caE3-MEGRnCP7C#r
zqBj*Or;vvq&}14r&<_a|!WuA0!;)5buo!Hh!O}Q4Wpct18Y9uiS~5E<d_^uSD25!u
zN1Vn0c+rm0sKrYBfF{$}0Vf2b5Y~V}nn`HEgT-J2tvS(jQzj?G#V`_mtR=JNag49)
z-cwvB9Gllwrgs@Vt}pLqblEXSSPBPek)E3@9s|6fc@A6&^U%bq-K#quA|L-bj^96Q
yNq_Zu_Rc?{olp96^K$X~=;`P7$Ak0x+sEf$o5Qo~ogWY9cl%%VUhhwi^z9!p?N}xN

literal 0
HcmV?d00001

diff --git a/src/main/webapp/apps_extend/images/Pan_SudOuest_ON.gif b/src/main/webapp/apps_extend/images/Pan_SudOuest_ON.gif
new file mode 100644
index 0000000000000000000000000000000000000000..befaa48e4ea1e9c63e2a265628b3b6d2814536fc
GIT binary patch
literal 837
zcmchWJx-iq41@;>iCt0AKo@>$8svsRlL8T?O2Y+cT*DD4khY*m8F$H1()$P$xkZ%9
zdFDMtTzp!~_IPIe?&mM}*B>9Z+Uk!qj-IKRoQWAZ>z=OZoQ`R^SUpu!ITcfKZ}wzO
z=44FDqtO#JkrOc?kVZYKQI29n0yfZKF-*6-$5Gwc9o_O;vZ}7^iY}Q2#jMWkj82&p
zy-^+65gmdfqpfOXD_U%YHDHj2CA6rq7;K=yVptaBoXD!ElJ&8cEVD8yWx24R7+Db&
zLOrDDEoCW6$iok4GL0SRhXe{?4H%?hNh>^93^veU$<Db<PDG|`B>GrO7Lg%*MJ_BT
zrXq!pIE?}Dq8+1Ai<S5RO{TE}P6$RJtO0{GlhA?(i@^q3K9RdAlM~`%7>PdCl7;*@
z?CZL>i|d58d0oZ5%V@j4yz}U?!$(*OjkHMnCX0uG7c|d-D`6g*SatMu$3x`De~$CN
y`+Ht_>5u;t2b&A+z3J1p-@BKC!w+}gpML&&-Jae&Y@UDI?M|+a-#2Gxy8Q>~NLBFw

literal 0
HcmV?d00001

diff --git a/src/main/webapp/apps_extend/images/Pan_Sud_OFF.gif b/src/main/webapp/apps_extend/images/Pan_Sud_OFF.gif
new file mode 100644
index 0000000000000000000000000000000000000000..d9f885d59632b059a9630f4bbc8066670d003482
GIT binary patch
literal 834
zcmchWF;1LO41_1rD%q`~RER3to+{HMf(``~2?;nt8do_6MXuluZV<!?kSHj80ZtN8
zna}SKxcV*I<C*dM&wrhL|M7dLo&HNbQQg@c-R{<8RbAN?UGCBpvpTagI^C)1jq1pb
z=x~Q-)YZ;*wA~g+t!iZ}T5gem4K!E`)2-PvkyTOUD$QE5%*v>ArG^E?$cm_Ng@zQp
z&T^Dp791HZWhqK7u@%;UK^m6OqQ+vdfd-3VjiAYi$aJPgA8W}XGMu523k!;lw9`U8
zr07jW$|>aG2Q-<+4)j9;g|G$;(y*iz9xMhMXs|TSO_`i<gvLnpv6jpZ3ty273yL9!
z@DZmm0A93XG-|ODKcLApcEAb2D1<d&kY*BE@L)06Kx<Ak-IU1*aWRZUA8X01c^u>G
zy7v^<3CHGjmFZnZkL%038C`bF5thP1TBPSDi^l*jXr2RC!aOvw>dWO{9wHy_9Q)VJ
u2kAvevv>XpZNKVa_jGo3`}k*be|Yiy@9y;G^QUho+w1+$n*)E`==cpLSXJ@>

literal 0
HcmV?d00001

diff --git a/src/main/webapp/apps_extend/images/Pan_Sud_ON.gif b/src/main/webapp/apps_extend/images/Pan_Sud_ON.gif
new file mode 100644
index 0000000000000000000000000000000000000000..87342907963635551a3dfd0fe66ca1cb57bfb2c2
GIT binary patch
literal 834
zcmchWF;1LO41{N;RamMh6%>)s_Eby*f@T#FgoH$L1R9@Y3$EZU+<;?H_&!l8=kq%R
zE`F_Ldpt9K`|$Yl`sU?Sr}``PM0IC(bh}%VRdr=obh%4Y%<9a}=ya#1H>x8$qQf1U
zQCB<L(RN!PwW^h^Xt_lKHqc-(Ot)swL{>$Wt2ArLGApCfl^PZlBP*i96&h0XI?GXZ
zS#V^ul%*)S#8y}X25DGAiyDi;1{y4eHG(E5BGZ`~eXJ#m$Z&>6E-WZI(oPHYkfJvg
zDW{N!AJAkPJJ1ga6v7%XNW+p=c(533puy5OH)V3d5gH@W$67KwEPO>SEGUK?!bhCO
z0C>@k(Wu2r{D3CY*a0U5qY&1BL7GWu!GpzM1FbpHbW<iL#KkZYeXJ$3=5dU#>)umb
zCmfsCRi<|tJ+3eBW^~yxM_396X_20rEFJ^Apm`2l3G>jzs&CJ)JVbtca_s+YH?#6`
pKJ%YA*<EO}`+oTK=b-Jw`P0Yy+mGYdldHSk@BRJp%wM*;{SULIQfUAH

literal 0
HcmV?d00001

diff --git a/src/main/webapp/apps_extend/images/ZoomIn_OFF.gif b/src/main/webapp/apps_extend/images/ZoomIn_OFF.gif
new file mode 100644
index 0000000000000000000000000000000000000000..64e76cc443f7fa398a88522ebfd58445760d423f
GIT binary patch
literal 1150
zcmW+#e@xV67=LIqo2%S%Vd;dKl}n^m&pJc9T7MY2<*YW{ArqBrPc>rfkh+4+8Z3=r
zG<QvXhrddf{ll-JHxanoTIyDBh{Ob<xJ2$ajva}52ZZ|idB5*}&z|S`{Cd9Mf=zF~
zmcKiTvS^0L*r$zA#)vU&4B1L+qm|KOG#gE}skBkbC^3qSB0DSEh%zEZ*a+EG)`pc~
zG0cVuNQSf_Wk?LMAr!y{G_bIYX|g=_DXm3o)|xCWDy6g%tyn9vD$o?AMYOOMvZ64{
zO0#HY%><2D)uc3uCe{R2s0J8BLnUOP2V!6Y8dz8+Ysl7kq7*Ad)*on5i6~(uWbHx)
znk<T0F~L1VVOEhSVnwirJRlR>hy(s10uG@XU=R(J7=;cH0~^r5BAc9TqsC(qvO&Th
zXi+f>6LN)Js6bPQg^(kXMgY)-aRd#wh!S}~Cbkg=G{G<&LN&l38k>*>9Uulapvj)d
zPNR()k8m*r34fqP#biGYo2zqg+jLH7V|K1$XPuyJ>P~ic)rrF%!EtDj9MSeBjt&d#
zK;v`3l@K00f$C~B+B-H@SW=Ri`~GvAE1z_G-}&rNaqWqBKdyey`-$&(%bwbA8k^hy
z9E~=Gf2r4fb%&4qIye-aojdjK=x@`vYDOYQ#-gngiEwgiAeGwU@oe{c`(m-*BayD2
zp8oOizG&35Yu8{rKAcEIlF6I%^LOvx$EUwyE;9p0X$>^skH{i=#86wtQyW`PzE%5B
z+x5;f<vHQ~cheJ{1&bOl)(@V|@WgwwJIY5wb-cFinM(&~Dw$i*(BEG6(h1+<!wuP?
zz|z$8%FAW34*z8A^Xhco@a6+cXVhf=`0~!uM1S|P)y>7O)0D2Oetv34*WQ8uH@IgW
zJ=#&_nfYS)TEmVvzZ{^S>ld^Xt*w}7P2313|2Y@_s-=4}_}DRb_vv6$?UMgq=<-ip
z^G)vSIlAfl*^qnvf|lE_`jdYh%-i~OsjK2j*Qdq)ygMD`!<PzQ-hZz6!Ve=oO^feU
zy^_Bt{bK3avd8~+DfiANV$vMj@a<4yC^xh)7TkKh*B2;kFLA}Mx_>NMR*=1XUB$Lw
zAkolQ61*AP+t`>BE*h$Gjc1&neWPk!HT`ruCqM1;Uh&UQ4@7EG8$Wz__l?28mYRj3
oGbbzKAFNvO^{Qicj#u9LBXH35?4gfF>*mH*e)oDRGn3Xo084dPIRF3v

literal 0
HcmV?d00001

diff --git a/src/main/webapp/apps_extend/images/ZoomIn_ON.gif b/src/main/webapp/apps_extend/images/ZoomIn_ON.gif
new file mode 100644
index 0000000000000000000000000000000000000000..26ab9abaef716660deecb4a5114873de298ed733
GIT binary patch
literal 1156
zcmW+#Z%ox?6h4p}%`MSkwC0CqIIo3lwbQuXZn~)n$tu3IHE}^uomB`b2zmY2n!^?w
zlEW?E6x6nycj_I?Nr@NM3S!hdWnn;F5adE=_=f<6%e|Mk=lz{;XXl*fJkN99H+yT=
zI!|FLrP3^sv7wDo#)vU&4B1R;qm|KOG#gE}sI*baC^3qSBHJt4h%zEZ*a+EC)`pc~
zG0cVuNQSf_Wk?LMAtb;CG_Wv?ZnAr9D6K_n)|%{EWJ+lzTCrASS)eFNi)djjWJ#fy
zm1fb*nh6{+s!3@QO{@u9!5Uy74VIvV8WsZ^(7?hlSwS{Oh*GQ+S$$ZGOhgGQAuAUw
zP-IceiV5mL3cZR%5i5c`_yL-jh8@rk5>N=%00U{TL@Rh;F|Yv*EV9noGI9iqkTnwe
zuofA!Fu_;I1q&2~SO`ACX&3-rXot~I3oGFVXkr?6fD;5mAy@+pq%jFv;DN=!1~l0d
z*>04PBM29Rk<f>=$e8Tou)aF?wngWJ)@J7_w%0M*y6$*qM;$xt5gdgU$suiT;_$G*
z4m6$vt_1U-39F{(=cgi(ZAC?{+Jy|?Zz~TCul{Q4c?o2lS=fAR<n4nOH`VqOHqQH6
z=62Vdt2*1#8IJk;Vy*3+r+V%*T@Bvo|9g05_Uw88@jnMAW*!B`?|%MQ=<AX2uao~x
zMx&u{_)#=EHZd_9i^Udf#N+X3G>WIcGO{QELTN2H;76nqJ!$CSCoA4)JhSm|V$%!l
zU*?|Pd}MBU&hZl^r<<$hyT4D*4xCEav&@yVXxFlW;GW^;ig0hq3YY7_>o2bAS~~Wl
zXL9t?;q21w9@YQxcTc!W8-n}#20AYEmA|*)*emrrPNv<cZ!La2aJBA-jNEH`Q?~w_
z*7sEY`u)*BLU&$min}5=`_o^N0w;sTd#Cg3#vc#1HkNn!ym`s~*L*W`Wtab0@=|kI
zsQ2ltoZ4H#icouN@!Dq!T1rM257oPq^F2Gq`>*`I+MVClGuqpgUh-|7yCVHTQ-eQa
zdt0S1uPpJKvX9)m?vG4ePkq?%YWYap!L%)lyRYpI{nYW!iJA{H|B2k(R`~4Bu|aR;
zy`R6hb+l$^%Z{OG&%2$a9o3cTH~p@p%scz51A}SrZ<x9}{?@ukd${4vp@cQhc?S-Z
wUtb@OB`yC<UztAYITZQecGcv|?gDRo;BqppId{IOIzAK5%}i`gSxVmj0q&Yxc>n+a

literal 0
HcmV?d00001

diff --git a/src/main/webapp/apps_extend/images/ZoomOut_OFF.gif b/src/main/webapp/apps_extend/images/ZoomOut_OFF.gif
new file mode 100644
index 0000000000000000000000000000000000000000..4cd99c7348f5397d8edc6c2c23cbc338cb95bf72
GIT binary patch
literal 1147
zcmW+#ZA{f=6hF6`Yqn-<ixJE=lfG1Q(pl3By{^q`ZZ{G)yMZl*`8XRActIfAT2a%5
z_#vkD7^607wK51{7{QHbX{`=wK!kC**8%s1i<kKVU5txQzvusaJ3Ht6-p>E;d2!2T
z_nr*OpcIj@PmIyVC}Y?dvXzJtZA2MiBV?OejMhdgquFS(vr3H8Mk%A%D6*?8hP7d3
zm<<z<42dCaNEu>7D1Z%UU||{4WO?k<B1(is$kL+HTC@_)qRFa2Q)y936pJD&3bU+*
zl`snvG-6dq3n?KM0xMJl45FbDvd{xDumKG$ER!{4YdobjYfaW4Xi+Jp6>CM-E>xh&
zN;7LFxQ8grYEqh56YL=m$iz0{fPaX9L#PHAL_;M;p##Lg1~jn9CTH8I@mMLcLBbzs
zQ86nf<O;h`fu<r>gdCAH0)Q@zBWSoql*j`zv5h#O35MYissRSk*n}+T05PxuP4+}~
z8g0~ggo`0a_ya8}Ci`*NT%CK{rgK6YvvU<Y>jZ66ce1mqP8{|Kjzf#&h_*LzbXZ^q
z8lMBMgz(@ARDVVymu6;OEh%y3mfZPh;RE@v=Xk3Msz2J*@afC@>$jJdRkn7V`u5Do
zROFk$K%)%*GJg378JbQlwOyI|{rZjfLgC}nGaa*uf#m$?!a{-1S5#U$9F6`F4v)rS
z!;y$@_wMm{d?JwuCzIEfmv61Cq;KEGr@!vjT`m}<$Dsj#L<Z5_hB{rDTfh74`Gz|>
zC%aA-gnvA|yb$T~toh_z<9N5r7vH$nT@n7Ni8pmVeEuk1oqf!6Y?RA4o~_G1d@K}b
z&bpagA3G53t(l9yUB7C>g!gFH;umx7*xJ6@#8P0n=fJK&*;ZFPJ5?6!t4;rReaDyc
z!JdlQ#NMG)Q*r*Gbo$<$dpe3Y9gL5?HSzEKsqnzxp}J}H$YfDraBQ&g*UV6U&D_<Z
z+<o`&byr-xFgTI^{<S{;#eVOF51WErZ?-)B&Z?RdExo4~FKu5rR6ZH=U+JHG@?`s&
z^W)K<E1NI-v(J`4G4facSGmQ3s=-&P8+y0391n!v*ePQ{cizFB?d1EX^xW#Dz~|j<
z-5(G2di>X>n_qb8>(-$<+R&3~ZGSee>LG8;n-`4K6xOfaGZOOOtZeh-EoIgYzq|O<
lz7MMJ+qQY#mZU45_5OqV*H0bEIdNpoGdF(QQScn){|{PcTR;E+

literal 0
HcmV?d00001

diff --git a/src/main/webapp/apps_extend/images/ZoomOut_ON.gif b/src/main/webapp/apps_extend/images/ZoomOut_ON.gif
new file mode 100644
index 0000000000000000000000000000000000000000..bcb8c9a6db2c0f1340c9202d0d7c0a28b76d81b1
GIT binary patch
literal 1152
zcmW+#Sxl5y6h0~s?SosX<AYkG7zygcn474`VwFb3q^7osZ3PlB@kCPx5k~8%wGWjx
z#>i+SX>U7%#H1;y3NA2gtwBtT&2@Mf6&M+62bm}slua0Bx&7{c-%ids-*)~#H*ed<
z^dcMCXp%^qr?i$@v(`duGL=$VNv&8bp%s~?R9Z?cSxccMnORnvrDoPFG?Q5sN(-q4
zYaz5CAZb#Xq$buRG@$@Cpn-*DOq1a;Pb$Sq38l!;qLNZcR#GTQMg^KI6|-WYn2adQ
z3aJDuA(S9!#Hu2xh!qJ%V1;UcK{QlC7J48CHlTrpWip0LjmJ_7DarT)Eh=WoLNXb<
zP=TgkDTEXR_Yj3yNi0c7f<5E`nb<}g@DCAi2-N_CXsE;}bbuJxfCd(s<V+hio?s>u
zB>aIEl@Kflxxy|~pvfedkRy^t0MLbT1P!-{5_v!-wh;$3!7v;`HNYSmn~((^AO<#|
z$(+bcqm3Gma4`f4f1pJr$b1|oSL@!UX`Rr-Y+c37T0xuCt?bOI6^A*3<<KBmqRmY#
z9R}Ef#^-=5Av|~j)!6j(Xe9FWzJ00ggx&SeveVC3o*iAzH@00#<XjBx{O;OTx4)=<
z+SM|3<oxgDH7&JWvA^y=@c3WeY;No94%{6Y2~AAZ{89UQY`pSG&^I#iXZYp!J<l$L
z`rk&Qf&Tu9Xmm0b8yFmn#N)AeJdsF5qfvbN%OXiLV3gKC1O5mb(R-TS99*=${>qjg
zX5LJ@|I^y)oFAt?+)??<_3Fm*$cviQxi>tQj?GWqkyJAOw=C!L#-sgD9g9*^hd)`h
z;^Dl3ru32UqjR~%`RTIzK;x_p6@8hm(cb27y1rP_b|^V7Tz1Rh+jTPfI_<L8J~!j|
zu7>|oy6jb%hvGz^1uBxg&gpxhSzV64hSuYC4Fm6ns|rf{!VNjA>Vj=2#(MV@Ewtq~
zI|c)J*#+*Z7DuRW-A8G*;QG??x&EsQ>pb4Fq3$i0YiCzw`(HeMlv4QXC9iY!@bx)?
zJxg0N?d|V>`S63qtxcZW?X5riJWYrH-F|WAcyaIgl64C>MSj}+w{!Qs{6g1caj>PN
z`u0_OPvO!r=g{tJd%eq-oG9JvIyZj0?r!$vJ6Cc=_S>&k_=~&meA~IH_f(lLD^{6Q
sc`Vr8;mZh*54g`Hf8JEE=~aD4XV$^m{h_lfM?2h`dtwiEeoPtv1AatYc>n+a

literal 0
HcmV?d00001

diff --git a/src/main/webapp/apps_extend/images/add.png b/src/main/webapp/apps_extend/images/add.png
new file mode 100644
index 0000000000000000000000000000000000000000..6332fefea4be19eeadf211b0b202b272e8564898
GIT binary patch
literal 733
zcmV<30wVp1P)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV00004XF*Lt006JZ
zHwB960000PbVXQnQ*UN;cVTj606}DLVr3vnZDD6+Qe|Oed2z{QJOBU!Z%IT!R5;6}
zlj}>9VHk(~TedF+gQSL8D5xnVSSWAVY>J9b+m>@{iq7_KE}go~11+5s4;8hc+i0Xa
zI1j@EX5!S+Me6HNqKzU5YQwL;-W5$p%ZMKMeR<%zp69-~?<4?8|C8S?bklXr4v&Ov
zb&06v2|-x?qB`90yn>Qi%Sh2^G4n)$ZdyvTPf9}1)_buUT7>`e2G&2VU@~Bb(o+Mz
zi4)>IxlSY${Dj4k={-9RzU^W5g9|2V5RZ2Zu<x6&^l=W_1sO_5@*~{AJR(k@osu$W
zIOyKBVDIZThPU;2xYmJgUn>lL9s2xQbZ@r6eP9Ra5u(s|C0Nj#&4>wTSkb?%#=9?@
z^oxDy-O@tyN{L@by(WWvQ3%CyEu8x{+#Jb4-h&K9Owi)2p<DqQ{Z%tMS5;_RkwZ2s
ziU|ZZE*fUaAe}14z#AR(OU=04okqn3igEs-_q_}KZ*?@>gg+heWDyked|3R$$kL@A
z#sp1v-r+=G4B8D6DqsDH0@7OztA7aT9qc1Py{()w`m``?Y0&gi2=ROcc-9+nU^I6<
zT=e_Y=<?pf1$FXK3F5I5#ceAAN5BHvd?h5_(jPS+7l@o3)VYh{*frx)Pb%2=Sw~G2
znu{1!PYZ*jM}To^G}f>vSnG@?3Ue{BW5ONFttcE!R-R_W4O01|0-|K-YNXLo2`4Qv
z`r1LxR6#yf3FB%T95gJnaKKivA~Z}S9A(ZxE<qS_Liq!k=vg3Per<qx!vKx95m{X+
zQ8;uQPPk0h^qI`uo^&$1^CFd@NeQR5pADaHJwu&SvB+fQDdu0d@n7>DK}O3T04USJ
P00000NkvXXu0mjf^IS-S

literal 0
HcmV?d00001

diff --git a/src/main/webapp/apps_extend/images/ancre_bas.gif b/src/main/webapp/apps_extend/images/ancre_bas.gif
new file mode 100644
index 0000000000000000000000000000000000000000..a7c912b6040f385ff8254749c8eda88ab185074e
GIT binary patch
literal 850
zcmZuwO=uHg5PiGaCaq{;SxH2}R15YX)ryA|4@OOEtRNKy3oX>2+K_^D(Li%pXdqGp
zdZ=3u)q^NRD0(pHB`2v=C4~wp^sp2W6%T?U0fn?`iEnmS%)x=#ncaCa@0<B%j~(we
z4xHDq0ab|9s?{2w^YgVjxri&cgh33^jv|Q^I*_0pc2oZUSXj{*(6KLITW$2>8+G@6
z`sQZj84D`F=bswF-)>n3F+wNU$Bnl2h3Zv}!kCDo)L>h=!4Qh88cxwq2XtJfE%4hU
z^~bv~B8q};FA2q8!VPSqPCZ*3lUPR8(bZ&IC#hxP+n^#w{&U1k9=5GM))o=2p*r6o
zb}w<l>-fCF_nzvB^abynZ@q7=d_M#Q4Ya@6>r77wpIB3RHCab`mGfWNVp~(x%<Qyf
z(n>!DbEG~hYvT)&qXO;zoYKTdu3%-hDsBB)Oy-wn6$Dr#<@b>CbL)BgD;YPRFeK>b
zoy9RA$`ez_>ss;YNS`IYFPT>t_n=VI@cmBKGMOvqks1SMkGfc?CHEbnK52US=HbX|
z<zu<O_c?8`C7*pn%MeaeXO_eGJ4M-x(PXM4ksRh-GFZX5^yqMYE9BkJJC*rWxEsPL
zJJNF3>mx{9gud5@RR1Tj<rtP&`|F7i9NIMZN%Dp7o*%nfjzQjASJ#ty9d=8){1egO
z9t48h;)VM!vZ~f>^z}ZNyWY6H=UUF(F?S=pYvfGa-1#cEwX^wl`_m6cCb(w@{{SL{
B39bMD

literal 0
HcmV?d00001

diff --git a/src/main/webapp/apps_extend/images/ancre_droit.gif b/src/main/webapp/apps_extend/images/ancre_droit.gif
new file mode 100644
index 0000000000000000000000000000000000000000..72619fabf7d9f33c3a1a28fb200736026a6d74ce
GIT binary patch
literal 862
zcmZuwO=uHQ5dJn=vq4QTt|W?Jf;}imt0EHV!Bn?3DoBf<g$lJ=8zM-92Aab{gMkvH
zVBK7*2k{W0=)sDYoTUCBsZ>a%houye(1V~zKq0L^#BZ`I=HS5W%zN|Ad~fExJ#n%-
za%6BLG}Itcuhr`O&dt@E<T9?~3I;GlJAwpKXhWQKxRLVz&-|*N0SyP;rqN0-wpnYe
zrzW<cz?iB4pMLle{CdZT5F>PgeZ0XmK2z<gQAEaLD7BbIZXkf-njgLN({2sdXlJ-L
zN&WsIh>)V7+fG99r*H#aYW~^6sKhcZ4P747I72NH-wGFW@?RuovePvBSX)H6hMIhf
z*!{!_ujTLx-$$w~(iiM=F57!yu8%@N3+*rVI(;gD71oqqldL1X%K0yCH;p_sGdpD@
zX{DbCbEH11zsKe!#|7+h=9DHzas?~1b<sATCCU8KtO7S{q?{g7PHr=Ae>Ky{Ck%1=
z1#4jxi1Ne~@;0pabfnLc)0fPvi|=5j?#H*gStH3@Igix1aQ=7$E4AdlL)0gp*Y6%)
zeWO&${XNfVi@rkk5iLVFOPyW{;_npYU5q4BZSlk~?~=hP#-vA!^IIkFA>OIXugbR}
zobpC|_v}7Y;zIQ8KBW3T(U){Avi6tL0a&zYz9-2SzWYw>Mp=if!)xowybk*$UH*xv
z+5xw^GuHDUlU03Qy)PMlHSXE9Lo1gDU*6o(?#-!BE5~kc-Ft2&cVPF6319E6<=Fem
N+kAWH;Y}(!{s6PN4>14$

literal 0
HcmV?d00001

diff --git a/src/main/webapp/apps_extend/images/bandeau.png b/src/main/webapp/apps_extend/images/bandeau.png
new file mode 100644
index 0000000000000000000000000000000000000000..1b277ea65c2b911ec582757a0602c24e53bfbc2b
GIT binary patch
literal 253
zcmeAS@N?(olHy`uVBq!ia0vp^Aa(!;8<12`f1(4VSkfJR9T^xl_H+M9WCij$3p^r=
z85p>QL70(Y)*K0-AbW|YuPggCW-&n-k=q*SX+WVKPZ!6Kid$EwUF1D#z`?xnq+9H_
z+}rCOc(uQHZSLh{8NX;(T{-Lh%-x5aQd|AFKd+7cAQ`_VW6y>UX><JA=6%hS>Z)<Q
zxIdl2_<iCrb7iZTym`k>xU^=?v%fH}&|Xd^hTme2zoH!Lo&Lg@&(VnvOIZEYo?YzT
vBp<-_FGS$n;zBub-;F=({?r-oI4iep1uJJ-!Tn7@cQJUn`njxgN@xNA@^4s`

literal 0
HcmV?d00001

diff --git a/src/main/webapp/apps_extend/images/bandeaux/bandeau_bleu.png b/src/main/webapp/apps_extend/images/bandeaux/bandeau_bleu.png
new file mode 100644
index 0000000000000000000000000000000000000000..0ee7a21f68e0fd9129311a854c327d61446cb209
GIT binary patch
literal 211
zcmeAS@N?(olHy`uVBq!ia0vp^Aa(!;8<12`f1(4V7>k44ofy`glX(f`uqAoByD<C*
z!3BGlPX>x`7I;J!Gca%qgD@k*tT_@uLG}_)Usv{9%#vKz+?&l^ynsTIC9V-A&iT2y
zsd*&~&PAz-C8;S2<(VZJ3hti10pX2&;y^`uo-U3d9>?FFGGt^>;9xLVQg6*Q;~-N&
s<LT_(<*)Yjwf3k6inxN&QTsxMH8WXUu3mii7^suM)78&qol`;+0M(W{?EnA(

literal 0
HcmV?d00001

diff --git a/src/main/webapp/apps_extend/images/bandeaux/bandeau_gris.png b/src/main/webapp/apps_extend/images/bandeaux/bandeau_gris.png
new file mode 100644
index 0000000000000000000000000000000000000000..193d973507e5993d51a8e45159dd5896a3a5a255
GIT binary patch
literal 801
zcmV++1K#|JP)<h;3K|Lk000e1NJLTq000UA002-31^@s6ASdK300001b5ch_0Itp)
z=>Px#24YJ`L;%?U*#Ox9@xqt@000SaNLh0L01FcU01FcV0GgZ_00007bV*G`2iOb<
z3L*k_)>GC100N;&L_t(Y$BkCewks<LOMw6X<=h7WQK#qbKD3=#Dj1Rg0SJHigc*CO
z0D$X11&9P82t=6qv6FMdh!yVs5on!KCxcoG1!M@IgNYCYVx<;tb_a!sy+!MNnERd1
z+D1TUj+TM@!nuv(Kh}u=LFs^lQ01@|hQ-*wZwu%MALjOeLoBdo=HccL_nrG!0%<qk
z8r9$md8CuKR>OSblGQ03zdkp%3Ajcm9yPBEM3`sgSAJqqO#5UpbIjUyZpBFu(n9vF
zbw2EONs5P$5@39#;O+-Y2xXpZY*%PA@B<t5t=5Yt^ux`3F&2($G^m?RVOF;mNVa}9
ze@ioNOF&K7R!*)VsGoBEsC8-P(2A~-H;!Y?DEqdSvXq_UOP+fEnd2?+@S<5!>^e>m
zAj=akJ}&ks@5Q2-VK~hLPFleqa=bMIaM6uBKh9fk&D6r}l4yGd!ort9{VZQefd<$g
za`f=WyLn1_lR|ks>$RF_Agg`2Z)sG?(#>Y=R|)@uqno`BmX92C3yaurXb@s-COG@d
ziDQ#DjrC`(g%jRzvo>~q=_Q}T!f`S7AcYdUi0TS@tq)~ZOb`E1=eO-G&^XXh7HCfg
zVQv?WJO$R?WAU<&bCaf}{H50J!y4aNqT;kQ4=c>xf_<SW*LyVJsP%XI7?QAalJe21
zX2^mpJ6FU4yu-9dYPY@>+D2~dhP1P&xhFNFslpF0?H0!y$IEha;kv=1n$FRvYHemu
zui)te|L@_Gr;TITTpg#&VveTC{>C{j@u1l=BMj;AZo~Eu9J|(Q`s60#(Iaw_(lIUX
zd1B4FISkv+k$RG|r@cqn*Q>tu&hJE~+$P+j{bf$0M@u2!(e>2M0r<{Qno2xJ?DR*B
f`Gh!KdY$+mX?<7ag;9qR00000NkvXXu0mjf2d8*)

literal 0
HcmV?d00001

diff --git a/src/main/webapp/apps_extend/images/bandeaux/bandeau_marron.png b/src/main/webapp/apps_extend/images/bandeaux/bandeau_marron.png
new file mode 100644
index 0000000000000000000000000000000000000000..fa45e4d7412d970b9bdd1ed0740f728b3f55550f
GIT binary patch
literal 908
zcmV;719SX|P)<h;3K|Lk000e1NJLTq000UA002-31^@s6ASdK300001b5ch_0Itp)
z=>Px#24YJ`L;$z|s{oI2-qe}^000SaNLh0L01FcU01FcV0GgZ_00007bV*G`2iOb<
z3LzR!mzYBU00Rt3L_t(Y$BkCWksCn_132w?oP+bv3H#uM9?4a!hpy>^1Obrz_xF$R
zi`NMf0_&#$us$*0N#Kw%%K+vxu(sqv0XTdD6d?K;09B_mmme|!3Q?y3K)^TVh7+~0
zPwUm3qjSe$uwvQ&JEaa@bE4;=K27sy#u#DXsBR)e%bUW9;AX3gH&Lkc1c-ArAqYW_
zq0S3{VqdMQ&P3nI)(&L}JJl)}GCvK9fN&U3Zi>uwV9~}7Fmc>UXMB2>9>9r+4&$o#
zGNnpLW@Qq?<x78q0w8cAo=hY(*-C-E2DOlcnDNckTm(9Vx!MDV@@V#F*82Gn!muL(
zQpTILmP5h9lMq=IQfa2K8>(eRn)RgP=-Pa9Gvyk~YyqTh(bmJmV2Wwvu`;8*ornjL
z5PrWJ+bYiBxRRR~N3xn^c%>qw6k4y%xUm$~8;3?o5-2HiSnza=0t;78G7?P+=3gxf
z$8@FOR!2Dm?LEz@E~VP0+}m*C38<5}ib=S<h7=~&|5<a)4e}5zX0=H*{B(2FQim=D
z86mXDCW*;!e7tORN|`35^gwF$4V7`RHA8NEwA1*4C*rv&HV@YfhmTWGnUTra^X8*B
zCEi5NhIDf$8Lp~3dtt*f)#=0<*W7TG5RnjV+h|iWz}?AIEreH$(I;qqXMN9g9aVp3
zSDTV*2(Gb|Qr-oCUCZ0e+L~Ey&77ImH09RC?l;TP%(@a#L9yMv;K<5!+Zv3Eb~Lp%
zA4fFRxd=q@krcqN2>{Uru9LZ8v^8sc*G0>WJ2&sBAns&h15j(eXr?t&@}s*ZdxA!%
z8eU`}NFW1;d}c|M7h*jj<5o+-P9VR;$aae0^pvZqTg^}K8IgmpnUgDvyt?jFL)55N
zPn;6k0Uv|N3?Du14bIX`1k-uMwiF95Z19+hwMijqRTG-o9%c?&18{E?Za;EMp?Rmc
zr4+qsj*@8oNaJM7M<eLC#q>mc>oXs!o^Dq&g)XDl+f=hMG;q0ga(Qd<u_u#h=!o&}
inav{B5B<rzC;kAG<WppSdJQ)K0000<MNUMnLSTZTQJ81|

literal 0
HcmV?d00001

diff --git a/src/main/webapp/apps_extend/images/bandeaux/bandeau_orange.png b/src/main/webapp/apps_extend/images/bandeaux/bandeau_orange.png
new file mode 100644
index 0000000000000000000000000000000000000000..f8e312e0920c0fa7c53f0fb0bd1653e94f0bb0de
GIT binary patch
literal 887
zcmV--1Bm>IP)<h;3K|Lk000e1NJLTq000UA002-31^@s6ASdK300001b5ch_0Itp)
z=>Px#24YJ`L;(K)%m9#Eoq&@7000SaNLh0L01FcU01FcV0GgZ_00007bV*G`2iOb<
z3LpwfJGo{600Q?(L_t(Y$BkA?mLo|Blc+d#-?mSpS@08Cy%=x&oQVU3kOKbw1L1#s
z9tc1Lm=7pG5I_P#J{RzSA29M+zt|W-AV}abDvHWOD+4<N^DmDi1R|KFij|99UF3;k
z0K}wVy%aN;AOzqAI&f<QfvA86_`s-I5<FBe*kJPI0|_w`a0+YqLYB@#U3EbMqWTJe
ztXjbY!%nh20kmlW;IV7mel&#hHDIu8P2+tCrr|7hV1PW!1EWr$y;Op`Cx$hI=NneW
zHry+RenC56Fbs0Cd;(>tdkS&d_DEXF#>7vh1x6%TOb~zqpgJrWdx{@W`QxMuRdBZK
zu|;CcjNs~I@YBc9NCkN>cOGT*6_t+DC=BCTrs@1$sq=@19}aSa0L7lDLOr7<fI&zq
zt|KKtGIfQk46vO7F%O4!Q-uoLOVxA6i8G320Lpid5zv?y&7_JM3L@};0E3kqMxu6h
zGIh)t(?|MDBk>U2>2?`5jaAkof38*|ZA9F9AsgJoSQ%8)rzkKv0CFoYk8BO8C;V$F
zEVh~eCWRBAF*1<*H}S~z%0Xr+gnsLK#a~lZLs0X$(=BIY2<V}37y~_96P4q5kBp$N
z10APm73+F#tMKO^hI~WGk}J*Jul-@@wV{wr(em7!m4{;mUx*TXtoMuonEHHXS#9_S
zGu|T2<y5-%@@w3*Op$JTcC%({xd$eNKV@}*f^)jC5@vHfdUh*0n5sRqa6n^LUP_r%
zdbs+yHqyTG%Di41D0R6#PQ{*{k(*g`GwD)Ti{o&vG+GA}<6N|1J%q{3p2v4ScTV3k
zQoBSWHD*TF2ry*BusUxO;FwfBkkdD=le^GUTZ%3KUq}exMWJ?`j^%MZs8D;LQue$S
z^D-cJu)W~+%Hz4Y00g=O-!3o?H~01L{fysrhG*aT26Vep3R6+s9o+tEZuT)0+r?K3
z#>7=hO+9-9u=h0d`#5@ay=K_r_s1{#8g_y5yJiAUzOYl{;b*-8@E_N|OSu!0IrIPk
N002ovPDHLkV1j9Qe-Z!y

literal 0
HcmV?d00001

diff --git a/src/main/webapp/apps_extend/images/bandeaux/bandeau_rouge.png b/src/main/webapp/apps_extend/images/bandeaux/bandeau_rouge.png
new file mode 100644
index 0000000000000000000000000000000000000000..d9206f848d002a4b51f8241f490799b1e2080cab
GIT binary patch
literal 882
zcmV-&1C9KNP)<h;3K|Lk000e1NJLTq000UA002-31^@s6ASdK300001b5ch_0Itp)
z=>Px#24YJ`L;(K)r~s%uL0j<v000SaNLh0L01FcU01FcV0GgZ_00007bV*G`2iOb<
z3LhlSGoF<I00Qz!L_t(Y$BkB7V&otUlLYra&R$RZ;Rhy3x68+LnsES2vTXh#Z2$yd
z#3J5nLxM6$BN*c)1K898U=Rdo$Q4}s8YHnPj)wx7F99&(QUtIi^#SgKB2YZfHr4`N
zKO5k<sTI#4Y*K*gxS9XR-NwcuXx+Hj0C^w~u%&f=n9Byl8%F@3`=eo*$8Son6Y&w6
z@Bj|HFZyO$o6-q-?3Q_)I}!j@StfzJud^k=j6>)=kc1ugDDH!qIxNqN-3~*|bqSJi
ze&>Lz??}+>6j@?&@gC1($HDYZE3@Wdr?)Lhv6xx-pA~@rP*8X>L%bQu%LEbxHkXc|
znUwi(4={=gRA`g{o!QeUMoW2{rN<<L0BFGsN~xeTxz5`pzc3&WRy-%1I5LsUvuIvO
zkjB<pQRpTl!w~3jhw*N3EejCdcxHY1$qc{XHX-_C{ZV+=26y0ZTz{`ycpFQn?tQx&
zvwmP>i#j!#KSx0^Au?>nj&SRw;ZTa!2p4XX3Kz`UX^}ZRQosg@w&zg=xmR0t0AAYD
z`HR#?IYtP#kaioz%Y36Ngr3673#%y%e^lW=ZSUvB><YgHGFnLX869;`ey=W~q_9ns
z!|Dy{y5quVU9AlvYMAM4iQ}wcLr<BR(c(-)X${We4pUV-aClGP+ZwD!d3t10IJ-ZG
z_o$2)4@+UHn-7+F^_ekOd{LSne!t!Sw>J4PrI1i6{@jTNaCz>;o?439&6RqTZ_eq|
zsb^Pk=Y1My`Lr^yT2;5xX+dr;@8ar+5|bJB3|63~?5+VtNl~{Cj%)F&cAh)_G#2{J
z_1$54ch}XG)?i!)knKZaT3ktr-HhBU^-SSoP$e@));$&m;A)jJw+^6HJ`?_E-Ymi?
zUmb>GES!Uz$FMVeJt({;Jznp;+VE@K8&tB?<I!Esp`5%_1op^v=ksD_&J+hl->s2|
znc}UQ^I6c1WSC4;K>9eI!v_IFkbUNz-o%f_p3-;9AH_6<zu;b7efVF;t^fc407*qo
IM6N<$f+i1*h5!Hn

literal 0
HcmV?d00001

diff --git a/src/main/webapp/apps_extend/images/bandeaux/bandeau_vert.png b/src/main/webapp/apps_extend/images/bandeaux/bandeau_vert.png
new file mode 100644
index 0000000000000000000000000000000000000000..b6d789f2f7b9cdbfa0b54f32145673d57a3ef222
GIT binary patch
literal 850
zcmV-Y1FigtP)<h;3K|Lk000e1NJLTq000UA002-31^@s6ASdK300001b5ch_0Itp)
z=>Px#24YJ`L;&Le>j36@>3)0w000SaNLh0L01FcU01FcV0GgZ_00007bV*G`2iOb<
z3LO(fxLFtg00PoUL_t(Y$9-4Hfg~XelZ+pm#fG!_N2Gn=3yPWkbQcBql4Ljk{QD~a
zfZ~e)72mNS0=~>35ikJ)5E~?b%q7Cj3~?4f-*zAJWve#jON@>AakJHS(pPSC^Q<o#
zV0|NPzr?&)fUmXci68`ppSf)x@nv@SGhLg%cX~QzFnmPZo({Ni)v<J65z6${*RsyR
z@p`UB9zRh&_V3D&RqGu&Kq~wU(;k%(AI8VSb>pm^#>M~zqx!e6D5wFx%*V^i&qx(a
zJ3R@dF5?qDR@d(n!(Q1J+-VRQKnOhR+z$e7fu0R}f>gt^vX4a1eyA+jfV^s>?|2oc
zrYcp_g$QP>gx!ohtu%0L)J+N>BfCr%rk%8Dsso^nS_5E8M5#l=S0LPDV^J%7Wz}8*
z3i`+_4r(=)2w#go@b3J*m7<pJP0a^iwg#vYS~i{-EHuOKpFmF`{E)O8>XzjC@-w3a
zH}2iSN5RhO5L;fbC8vG7HDqwTqDH$?n>n+^AlF5Y;b%~dfE%r4d6bd@CM;TUanf_T
zAoAqQae_Jma^p&Do|okrJA`zw>4!3QLsIv_ThzcI_Sqm|fF#h)$fAU^(gI}N2TSY=
zW{=2|4&tEek#K&(Ib=`d4>4=D;US_AgkDtOmx-}d69Avy^%&qDviH1nC|qk#Hp{E!
z<o*ce3c<dF^kpn@{P<|qS1!(EcPO%IcMJ+{YYTuRko?v>^w}5JFq1;dXu|^(wpN?7
zm??}$Ria;8OK~HtQ*=yHX~S?em}~Ai4(m<Z1CP}-LprjVZly@{TsIw(FGYIz@J&2g
zNF@C9Nx&frn&S+H)SuJim{NX``5H%>Tp!6j`*2TE@6ooVg=!zVdS6dL*$c<ieA8u$
zX|<1!Zr8k(VsD+t%JmRkodU2|b6W1srac)P8w0o){}Jjp)5j$92%yLoZp2Ix^J74J
cgj3P~2Rfu|P%b}MWdHyG07*qoM6N<$f*mk@x&QzG

literal 0
HcmV?d00001

diff --git a/src/main/webapp/apps_extend/images/bandeaux/bandeau_violet.png b/src/main/webapp/apps_extend/images/bandeaux/bandeau_violet.png
new file mode 100644
index 0000000000000000000000000000000000000000..84fe7b93118f380e602680fa2bc9757fa50b8ef8
GIT binary patch
literal 877
zcmV-z1CsoSP)<h;3K|Lk000e1NJLTq000UA002-31^@s6ASdK300001b5ch_0Itp)
z=>Px#24YJ`L;%tNq5%K>i1Eb$000SaNLh0L01FcU01FcV0GgZ_00007bV*G`2iOb<
z3Lq+RRhg~;00QkvL_t(Y$BkD@vLhi3lLV)lJI(!<ng#wrXECXIsiXr~wq%*dKl`uo
zAFnMbJ{kZ&pYu~KGz`{4j12(5v(Nw(4-JAgKwdF6#W=~=J4}cTe=iDPEHEH4VC1F<
z&7}+3fx!>TNaiH+Vg&%zLJ}ks7U1|Em8j5bt@H3CTEQ{`WBF#(k<Pa!fVBnK(oAKr
z<iLJVVJpg$)pebLD)%{YsX0xclakJQoT#pzO^}%mu(^1Np?)&qSg4cCx=Qj(J?^Z}
z9}AmDG6&b8(DA!kW@aogKr)h12jc@Fc{t^{%HayfB+$H>xiuKn#>TGW#YJy}1<=1j
z&sVUN&2={%$CsImbk*0yue`fm`C)`Z%;<&ZDV|P2{kBCF`7|3HqqkvLJO&`@>JNgj
z4XS&5OQ(z9Bp77NglBm;z3eeHG0XEvOIIbQC|-M<vYh3~(imMgm{ld(*koJChr&9M
z*h?z#QM!Y&y3!Fk)N_U9H0nd;CWRRpqyJ|@TVldMb<~6xaGIG&guK<0LOIE#9n&E#
z71z}>mxo&rLl`6)Q<~I(_)?h9w^lb0(YBX$Cl7ILQYOlL@;IfS9d(>X;3B-9@3mNd
z4Jb~1t3RB=Q7|Sab~}q_c?L`apmIo^B)7=JNGyO(4ku!aV-tI6-Gd*1Ifi`bcS}9M
zGmNRqDSLi1M3LcZ0&313Vy~5!f;RFPZD-QPR4C!LBbT<=mNfhN@$l55vt1X5HQ*Yc
z=aNy5yHHXt55aiG?wLN3Es6veblqLZ$IENIy1Cxr{;KWjLh6T`geJF^4g=}8*|NT`
zc6*U<I9h1^gw@bwUT28z7tNa)Rj$65RGBz7(DR1EXU+`wdgmeuY)Esie-<Rn@*ZB^
z&~<%AoQILjp6(rIa$Q#}wnq<1-Tqj((kD6YxIf15bpf3Bo=(H#eQJJmVfmxqJN@YE
z>!NziHWvOdU7O`Ojvc>5*8KjjFk$eT*Zg_y$sPXyzno2)0Or^-00000NkvXXu0mjf
Da5R%I

literal 0
HcmV?d00001

diff --git a/src/main/webapp/apps_extend/images/barre.gif b/src/main/webapp/apps_extend/images/barre.gif
new file mode 100644
index 0000000000000000000000000000000000000000..e626bf5a3cadb20aa017600d791ee4218e40b941
GIT binary patch
literal 488
zcmZ?wbhEHbJj%$;@Z~?lJx#+oYwvLwPGK;fsp-}8ea@8sOXs{d)cnuD@STI>y`ka%
z|Nq~=fB*dX^LzL1ojZ4K@7}!(qyWXAEMVn2AQEIJ3+w*`g}#)`c^RwL<-Fcku=`9&
z?){2&?`z)wKd_+SpoR#~i6uoRbFAiHSRqn5Cu;qTWeKO>R_%YVp~6RR_W2hjGY?4Y
zy8mHEO`Wldz>ht3=imSS-_Y39+|t_C#N64{-P7CGKVjme$y26In?5;*muJr0dGi-6
zT(o$}Qr_9ic~;Juy=uYQr5iVG-YCGp&d$NLW6$1w`wtvEboj_o_T9%$o;tl>;N1BO
z7cX7Da`oEv8#iy=zH|59{Ra;pJ$~}^+4C1K@A1ER`|kaRkDoq&`TFhqkDtGO|M~mx
zKLazDjK_ur2b=%OXq0?NSa`TyK-p`K$HqlRyCsaX?wr`T_;|m9bC-<grX?pQOZlhH
zEn2W?>FMbP$*1OcZeDhFwng!)J0~|UKR@50nM>Ad%Zk7`^Aj#co!YYU^74SiUUR*+
zuDZH9VsqBrQ(ISGU!QQeOV)eanwy(9zE}}^dfVFD+Y26_n(MuN-QC?4pI_ZQy?y=t
L{S9~97#OSpG64S_

literal 0
HcmV?d00001

diff --git a/src/main/webapp/apps_extend/images/basket.gif b/src/main/webapp/apps_extend/images/basket.gif
new file mode 100644
index 0000000000000000000000000000000000000000..ba8e7ea6bbafceb670d60dc00307f3ff789074a8
GIT binary patch
literal 133
zcmZ?wbhEHb6krfwSj5Wk9|X?)KXc~)%$fhw(tsQWFi`x-!pOkD%Af<{fz&cEdquch
z{g=<fwtDh4E~Dp<xLr7SO|_nUT^oNZ=crrX!Jl(@Vs`s(FA<LGaZJ9#B-;4gT;Q8V
d!x>}Y(kl`34=!G&%dqd_gjK&83b;5KtO4A@HR%8V

literal 0
HcmV?d00001

diff --git a/src/main/webapp/apps_extend/images/boulerouge.gif b/src/main/webapp/apps_extend/images/boulerouge.gif
new file mode 100644
index 0000000000000000000000000000000000000000..aa15ec65133c078885bc2ba9903772f82de7e387
GIT binary patch
literal 102
zcmZ?wbhEHb<YM4rc+A591RN%l&q-+h=V16Qz%fDEE>j`#zcGWeM)rD1-ASSWntGN0
sk$~b)7DfgJeg++oPLLT4EW#g7daj<T+`r27?M?PB+2^q@L>U>Z0oZRObN~PV

literal 0
HcmV?d00001

diff --git a/src/main/webapp/apps_extend/images/carte16.png b/src/main/webapp/apps_extend/images/carte16.png
new file mode 100644
index 0000000000000000000000000000000000000000..4a8e0686ef00a70c3a7e1f40e81cb4c460695358
GIT binary patch
literal 1087
zcmV-F1i<@=P)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV00006VoOIv0RI60
z0RN!9r;`8x010qNS#tmY07w7;07w8v$!k6U000Sga6xAP000mG000mGT*j@#0009+
zNkl<ZILnpLUrbY19Ki95OO{L`*^)UkP0U_gSCcJnn#_kKMwa+6#r;XPEPF6poOALZ
z$(&D;)xwrdP}(|K0s^BJ6ma4+AcYG3M++1Xi(UV>v~UsWA7}*(Zp*$qMa=YZH~HqA
zUvkgq<{oM7(Z+%|wdQXMYX@|NwS$_%nnBI(ngNkh>>ZkSbJaQ??Q0*;PF?Oy?yMwz
zT(L#f<Bwaz)0jL#jKKiCp$W_(na*JHQGo=Vq14LSA!c(ljjG!lmp-Z3B1!vCDo<Hr
zve8+^?>}wiobwfiJzsG5wt*i;XDAt7q{NZr+glG-))Lo!^uYxx&3;+huT}~`rL45X
z<*T>U{PL@W)|5}j&`#2>(^y7~9JSx&VDB_X`cr(>C-bFcmIm(}XDk6Z_wg0rv;eLL
z%4n{X(CgQ6;m#)9qlb7HFyQpsIcA@x*tNtF+bmx@GZ;b(PXI+K<r!;SzTs1&>&`>p
zxQ?d54O|-8%9Ov1zoP97dCaKC(j2lTI4pqX@FG=K0TitQRW<?qq2`oH0O#^)ZCOv9
zYcto}JDK!Wk@2?^jMyo6g!tT?;9@X~#v1$&&<LP6q(*C9L$%`tu3vtU_O?y5N0ju(
zibzE-!TbQxNf+O{)3n5v#k-GzeJZ6^05`=iR2cKn^*xW?^b)O28)zL<aK-lqL%w1b
zCU267n;DI|xe?2twS{D9-zuQ9$7O3+O;ukW)wTlkw>Q(&_6}EjcF{4h4P$s0bIFU`
zpLVh|KTcv{PTav0z*zzGM+9J&sP1`{#;(t(@A`<Q?!#Og-$Q3~2a%+TtN@lX<NWzB
zEr76`J1a?hRmz|H<FY+eM#U8cXInm`&bpO`p^Y@Vwqxiz$mQWZxa0#QVkWZpMp%B3
zKx2Cfn2^VUt<-mZN`vEde)B14b8n+7`ZhhGBHH_ob0=9sHeuuM#Q^-16?Y(jy*c26
zGG)2RFGrH|cxEDa?gjBCLU?Dx_>vL)sR-VgDT1kKCQ@_6=CVv>mMAy*rlj{zz9v2Q
zUh&I{<8?poDAm_(FEyNhsuQb~UO4~OiClV7qnP#eieok3J-hqBdPzLbi1I}R|FgBC
zHU9#gT7*~_X|E0d001R)MObuXVRU6WV{&C-bY%cCFfchSF)=MLHB>P&Iy5*sG&U<R
zF*-0XhQ_Kr0000bbVXQnWMOn=I&E)cX=Zr<GB7YXEigANGB{K)H##&mIx#paFfuwY
zFs<VANB{r;8FWQhbW?9;ba!ELWdK2BZ(?O2No`?gWm08fWO;GPWjp`?002ovPDHLk
FV1hSt?S%jU

literal 0
HcmV?d00001

diff --git a/src/main/webapp/apps_extend/images/carte32.png b/src/main/webapp/apps_extend/images/carte32.png
new file mode 100644
index 0000000000000000000000000000000000000000..cd913151a599873cff66ef550231a98fc52baa3e
GIT binary patch
literal 1771
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
N002ovPDHLkV1o85KD+<`

literal 0
HcmV?d00001

diff --git a/src/main/webapp/apps_extend/images/checked.gif b/src/main/webapp/apps_extend/images/checked.gif
new file mode 100644
index 0000000000000000000000000000000000000000..fad5893727ee8a13f428aa777380ae97152adec8
GIT binary patch
literal 959
zcmZ?wbhEHb6krfwXlGz>j-2EYIms=0ihImdkJxD*ann5GrhCOt_fD7*mN_@JU|~Yh
zlH}5*DP>F3%9rQXt#bJ9P}a7(ufM;0=I)-EyC%%tyKeK&xyuhMUUy>sj`JIKUfjO_
z>dyTab{)LB=kT>-Cr%wbdG^%lGbhhnIDP)=+4C1qp1*tM!nLy(uU)-*?dpv?S8v|E
zb?f%+J9qBfy?6e~qdWJX+<Wlw{-dY&9=^Q)=;gylj~+aF1_aNazj*ob)$7-9-n@PL
z_T9TzZ$7+z_wm!`FP}bt`|{<>*RNl{ef##~$B&;sfByLSi(wRuh5*qap!k!8nE{v;
zbU->ld4hps4uc|xjK_ur2b)<{HDXQ_Japi6Q1W6iYUvPA5Rzlscwpk<4sO9XmXjI+
zi&_OWe7|@wG&BoL67X4M6R7Omz-DfcwPk^l8<#v6OGU!M%_;%{ss?XfI5Zp-5OGar
zYW(QXz|GEX#*rx~s>CVD%q0^Mz{1hH&cW`(j0A>8wr;ZvZ4rjePOb7*MGqXL4LK$%
TI;tJY@rY17bXb6iiNP8GS6tA5

literal 0
HcmV?d00001

diff --git a/src/main/webapp/apps_extend/images/contact.png b/src/main/webapp/apps_extend/images/contact.png
new file mode 100644
index 0000000000000000000000000000000000000000..5929e1f025fe4e79903302d379349428f9288d6c
GIT binary patch
literal 437
zcmV;m0ZRUfP)<h;3K|Lk000e1NJLTq000mG000aK1^@s6Yv(<I00004b3#c}2nYxW
zd<bNS00009a7bBm000gq000gD0q|4h^8f$=S4l)cR49?1l3j}vK@dexD$Pu0Ce3`g
zAjk$E_RatQLlPluvdP0P2vNa_9kL@k-PJxML`4x}!FjpGy;TJ@a>rx*yx;Rb^{T2c
zAG?l8mhq;puQGq=IzDwBLX5Q2DVyDnp!!d2cRSkYlo%tTF(M)~*0Owj#H;?5<<k?j
zwTK8&7147eF^0CPSZp>7A^efWc1v59B*x%X(HN0<4j4ipOH*#zmic=9n|Z!obJH|r
zY0417DL@qoXY<RMNs>@j74y~VqAgY{%Bmtwl8ZKkfU08jrwyVi?)jO@S|&-t`}=zU
z-p*!B(v&ZU12)f3_m4(s2tNW|hJnNJNNFuT1dK7vZf^lF#^6Js$TB+TutfnPrxU#Q
z4Bpc@N0I0F5H5%aBJzt?<T;&l4Bnpxed~Mn&QV|SNOfKF)j9gU$GmPDmJbhTj8}c)
fcs%Ca-5uWn_=GFy9Ri`J00000NkvXXu0mjf{Fb{K

literal 0
HcmV?d00001

diff --git a/src/main/webapp/apps_extend/images/corbeille 16.gif b/src/main/webapp/apps_extend/images/corbeille 16.gif
new file mode 100644
index 0000000000000000000000000000000000000000..aa9c145889b8a7303319722a97b11a7376736190
GIT binary patch
literal 949
zcmZ?wbhEHb6krfw_|Cw<0t7Qyc=`Ex`K5RzrFduXi%Cj}Nvg=J0Fl1@A}LKhea*G{
zMwV7a&i>YZKon)Y*2*O!#U;7QWvz=}M802gm0!gyzwJ@shf)$MsuC(%5)S2OHn(KX
zIFdQzeCDF_nLzHLs+t+IYPP?xInz>eroVN@lGe4iTDQM%J@l(@(XPI=Ky;*U`;)#y
z@B4rvXLj|Sc|T+O`59+^E!@6q;i2;jfsE_77Ct<(>d^UB*PpDq{%h64_nXh0-+cYn
z=7+mBKLnERH$VKf`OT5N4}a}_bAIoeU&kK4KlbL<u{XbNe1CG|`!9x3Fd70FA@KkI
zf5o3Hj0_C_8FWCBpgiHgF^S<nr;Nvj2M%IhLRyxS6df2?z1$>pemJ&rN$7D^DHuNS
z5Nv0(P?%{^*wor&KVwDA%p)9vYNlMv8XSW=I)uC%9?ZCLux*m8wpoUP=av@-xaIT~
zDOe;wogl8Ca^b<jBkTvoxP)gV98hSQB+R0EN1|HUO+Z=1;LC~t0Txa<XFIVDfutpl
TYOWO`Cl>~_2QFe{WUvMR$OFE5

literal 0
HcmV?d00001

diff --git a/src/main/webapp/apps_extend/images/croix rouge 12.gif b/src/main/webapp/apps_extend/images/croix rouge 12.gif
new file mode 100644
index 0000000000000000000000000000000000000000..a8f8ce39a9b808c6c4289ba3b7c0cc991f4baa69
GIT binary patch
literal 916
zcma)5Ur1AN6#nkocCRpO-4?sSq8SP<Mrio3(aW7KwIMQ%YAm7EtPv5dT<F6ES4xbs
zu=$XMhz~wUJrwlfi*V~<?4bvJn?4OH6oMK=O#8z+XS<_4cHrD|c7Nx5-}%n{t?x{)
z&wtql8_GasX6D=2*jhB|SCs8&v=Wb3LZJnZC)e2-SCq2f-ziBq?Dld?%bKDr*zI;;
zyE~-oI{w!jNX{I>@~#Zk>cGxV8OqnEnorDX6|$2QUs<!-7xEgS3g3f%<Skik>5>zx
zdoqS7pAa3mNik3FR>)JI6{G|Ky~Y@;zvODxOwYNu8{_q}(@j}zkUUKFtuP@-{4T1Q
z4P><lVY4yUXhR;M+77B?-h#o)d@=HxIjVu@?EhGMcTNC~K!Al#ev{VBStmXbCTmR+
z4r}H4uN=;5bL44#UQ1GBJwEDTe3br7e&8Mx&~EH$f@-*zYXJvL6dPyBP=8(*AToxb
zA!YP7@?I>ZtNlE9g7W3U#yFtT#AL)<jhs`$I_tW4Ul9!BO-07{=TlmedU+nk7`f0>
zt!1oMYIT#}vEFk02;_v9BYlhM;hd0pojS<B=?Fvg)VCDWx5)S6ZsO{R#Pw@%b43Z0
ztg%4*+a=yE`lh_U65S2v<U6weMNNl9b#BUQIvD+*1-F8DNZ959C!SC|Pv43AnQzfJ
z8(R-n?`6xLnV4mGxt;$Ls&pG|(zH8VG~Jio-f#@}_KA|cE2$<`z+zJ}>9o-O2+iL9
zbu}<$u{d3Y6}>gobo_uz=_tMHv6{s7fz{$@VAgW1Bb5oihuLgvS4&H=!N;z);pt6x
Vw^<aOzWE)sIQ7hPRFx#0`U@(K42l2%

literal 0
HcmV?d00001

diff --git a/src/main/webapp/apps_extend/images/croix rouge.gif b/src/main/webapp/apps_extend/images/croix rouge.gif
new file mode 100644
index 0000000000000000000000000000000000000000..750801c3e8b39ba53efd1952e30dd4ea08f268b3
GIT binary patch
literal 337
zcmZ?wbhEHb6k`x!IP#z2e^1Z*;^MtgQI--C&!eLLCnx{+@|vTmdCbr-SwiBwrKKSU
zN49{#cSXg$5)yL+1Oyluo;!IRIB<Z0IH35Gg^__lh(QOW9Au{h>$wFgT^BO+GBW!P
zHwbJ<)ZqA}vwDk+Z><HhOy)-i3psbUOa%rDX4WGL3p+GKdfS{mq+~=kdF0MHYc)m7
z(_6rT#kJd|a&{O$6C=YG1>=Zp9`4eDIKjlQ2wwBj!tgpfM{d5!e8pZ$%pMw+1(Wy%
zN_BPB1h{#+nzVH*tMW98!Xrv_a{L%rSp~z4P1BpRSt@FbOwwa4g9TY?jd|H;TMES0
y?n+5p=^UT9my?f!onzVpZrfc+(H2WRrcRDhb-Cxzyp(4$|NNfg7n`&c8LR=`%3gW^

literal 0
HcmV?d00001

diff --git a/src/main/webapp/apps_extend/images/data_hide.gif b/src/main/webapp/apps_extend/images/data_hide.gif
new file mode 100644
index 0000000000000000000000000000000000000000..8eba497a2654a0f1b054cd842fee574001955f5b
GIT binary patch
literal 339
zcmZ?wbhEHb<YVAwSgOlVSy@?CRaISGT~kw2S65eGU*FW!)Y;kD)6>)2+dFmY)alcw
z&zw1P&YU?*mMmGldiDDC>o;xMw0ZO9EnBwi-o1P8-o1wpA3l2Y=<(ynPn<Y$_UzdU
z7cN}9c=5)K8+Y#9dHC?*lP6DJzI^%m_3Jlp-hBM{@zbYIpFe;8`t|Gg@85s^{Q2wG
zuRnkO{Qdj)Ke<5hpP+M5YGO%hib8p2Nrr;Er*8m*;!hSvE(UuB9R?r(d6a=I`oOdg
zDr;;44y9aDiDF=2?+;qBN`QgoaPXoaw|QI_PZ~0~OqsxtI`xW#!YN<(iig`gW@mO@
tsZetWc9Mu<W@TU&4Hjl#;*eM7@fXfu7SMFk5u55IDbuJZ>Ey^@4FD$Z#x?)|

literal 0
HcmV?d00001

diff --git a/src/main/webapp/apps_extend/images/data_show.gif b/src/main/webapp/apps_extend/images/data_show.gif
new file mode 100644
index 0000000000000000000000000000000000000000..0f8a0d83b78657508ff67961a948b17303a20d17
GIT binary patch
literal 319
zcmZ?wbhEHb<YVAwSgOlVSy@?CRaISGT~kw2S65eGU*FW!)Y;kD)6>)2+dFmY)alcw
z&zw1P&YU?*mMmGldiDDC>o;xMw0ZO9EnBwi-o1P8-o1wpA3l2Y=<(ynPn<Y$_UzdU
z7cN}9c=5)K8+Y#9dHC?*lP6DJzI^%m_3Jlp-hBM{@zbYIpFe;8`t|Gg@85s^{Q2wG
zuRnkO{Qdj)Ke<5hCkrDNgFS-|0}z1x#K0DFAWU0WNGf{H89}2B8(K8go>(w4NG#@e
zVwfQlJ(Y2Rf?2{or+`DZ6sGQz4)Rvr$zeTvsbg|XAXBiLAOka>x)N8IpnFLe8w&%A
Ys8)s?dl<KpT85Jbzo?VCn<IlY09?1baR2}S

literal 0
HcmV?d00001

diff --git a/src/main/webapp/apps_extend/images/domaines.gif b/src/main/webapp/apps_extend/images/domaines.gif
new file mode 100644
index 0000000000000000000000000000000000000000..38331fb8c0abbcd894957a7cc02d0d470e463ede
GIT binary patch
literal 956
zcmZ?wbhEHb6krfwXlGzB^-Om7?-0<i;pS?k+w0ZtZ_~TKP5=IO!v{MIAMG-GxIg&C
zLF)?#s~#VUcy=uI$??3Wr>p+Htew1Q`-BZ=_TT=0{ql_4*Jj?oG4t`6wio9cKHcv6
zaCg$D`%`|u?Em&);{P`je!rgi=k4tOAAA0Pobdm{<o_Qh|NlJg^V79oUabH5e8G?B
zi+{XW`t9|W|3CJhy!QFb%`fL}eYtS=%cXl?uipQ5?culEPrm>Eefa<H<A48u`2YX=
z&)<Ll{rmU-|9^&2Fd72X2m!^PEX)iHj0`#;!$5h0fnz2EGl$F%2WAc?S&IY-jRgyx
zMLAqdBmxtdow+15IXDs@9pjW%(=nLiP}J1G$QAG)VWC2!Goww?F`mFhtX<NoT1QwE
z9Gd(&ZNg+a9yGKxia1ny-B`%1!NMjl7V}|3V)}V0<A#4<G$*$QNf|agn_wBXEJ#v+
rOWxm?Th)2Q9d@4zJyoU~J+J8VEK!C9>+kPxVCRza*-`MYfx#L8kn+hn

literal 0
HcmV?d00001

diff --git a/src/main/webapp/apps_extend/images/download.gif b/src/main/webapp/apps_extend/images/download.gif
new file mode 100644
index 0000000000000000000000000000000000000000..48deff30a9dfe4dbc56798211d37bcd9f836c747
GIT binary patch
literal 151
zcmZ?wbhEHb6krfw*v!Dd@c(~(ef@z02f)n#4L|`9i-7^i!Uhz7vM_?gbwC8j3<nlx
zffJlwk|k^hcRy!zi)=NVb46@Tj`o_QuwyfGuHAmF$bRRa{jC>atIu|sF&i?=FfcMU
Zm3U44RkAC4>n|=wzXt^oLW~U73;-utEq4F_

literal 0
HcmV?d00001

diff --git a/src/main/webapp/apps_extend/images/fleche_jaune.gif b/src/main/webapp/apps_extend/images/fleche_jaune.gif
new file mode 100644
index 0000000000000000000000000000000000000000..04bef3ac0e2f73dfabf43214282af30e44eca045
GIT binary patch
literal 875
zcmY*YQAkr^6#k}jn-68J8(UCo!U&0wB|cm$XrpQCp{Ov7CWxXA1<Oj=9xk{T)u4y$
z`q1hjW?Bfo*qcPq$|xW9;9An^F$x4LgrI4y>^pah?7-oi`~TnhzH`q09X-~fHg&pC
zg91=2{!XXUj+XKM#GF2rdz$%lpmX|r!P0~C7)A#g(S>@1(T84$dCdym-N;4~cpLFH
z9LI}QJ6bDWN9ySr=753*tFC#N1ve?iw@u%UN#6M^3YLD@;rx0_Q;Aup33l3|Ys++k
zX+Egef|#$;wb&OYX4mXE#XM?NFu*v)vjn}HzMJT+bTfT+;3nK_9oWo#5Brn+Gx?jV
zb?pS*N4y6W2vEO*m{Gs3oh7%JXmxMMgT#7?6Wx4SSM*NOOD1!{=u=%Towf1%5KO3I
zEOJ(7s{<d&DYFieM`o4&yLRZ>7(JFwYJ-e2kIEY1$HK3XjMT8fy7Hc)#7M1RWw#ZK
z8+*xraAH1ff|VRY<r#*`wHtLqD>0*<Foc;;=CcvmwMh=BYec3tCNk&Wxny5rGwXJI
zyA#(2Su6brM|;~511nted%Nk03%Q<x|E1|%Zt=g!D=d<G>1uVTXl#jEd>8fMzFz#a
z!z~RgU_@rjbAPMUZREM^Z-s9|H06!d+%3&vBhJmdG>5SNv%vcR{N!#w<3KaxFyE8Z
zi{8ER-Q|UVp<laZrm_k9q+I?JK3fo#HYJ)$J&W76xpoFe$LFqZsdXiSkM5h|mc9L&
udU4{_m0gEVKS_Eg=Ev%q9=>s2dJwp+gdQuYnG}+q{m;9jSx+X0gMR?lVjHah

literal 0
HcmV?d00001

diff --git a/src/main/webapp/apps_extend/images/fondPRRA.jpg b/src/main/webapp/apps_extend/images/fondPRRA.jpg
new file mode 100644
index 0000000000000000000000000000000000000000..0260fa3f2673312cdf0ebec5b09e2c8c1569944c
GIT binary patch
literal 37705
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

literal 0
HcmV?d00001

diff --git a/src/main/webapp/apps_extend/images/fondPRRA2.jpg b/src/main/webapp/apps_extend/images/fondPRRA2.jpg
new file mode 100644
index 0000000000000000000000000000000000000000..bc93aca7435abc2780977028c4b0adf4b9f045a0
GIT binary patch
literal 113872
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%0DNlpoyGc(&}
ze93vRA*(uu%%IRa6~vRsK{0v@f5JIVHvQ}ns08il4HHL4$0ipmS2{0yZuaK<191EU
zT<T4&X9M>pC!ajA)Z9(7Zo?{`82$q|p5>X2pl_XEwF@wbnVGrl<-@pxsCtTZDDGJH
zExea}-x!ir0K=k4p?wej7PuVsHcnC2Q?8bl)(ZT0JP<Sax9?gM9CjjEtxqsnn-74Z
zqC#_@$+sH~L((1yKDKFYZa&LNeluTxcNumb_77lcxObnt(`e@UA3cRz4imHeps|T8
zoqhiTyBB`RzH!XyKtAr7-cD7!xw)(Je^Wqfg4~6dg_o9=>BR<JBtBv{IR%B26K6k0
zQBl7#?C>sBHt$Oqr@cR%lH{nMz65_vzATCJ)yJG~{(DTsjlz%H!&cM>%XP?8ViCJ|
z^?x<!!^S3~|8gCU{~h$d!G+{udvOg1=M3Wi|7e(-2mSYOz%SH5R35{tXX|gx&9Ns*
z<x@6a$<@Wt#joQfVaflyE&exsw&bG3{Y%`Lv*TYByq-J_*sl4o<_A0LowjkC4($r`
z7ru>+*|xinFk2CV^(V|^HGtA$P7Di?EQ$tNQV6Rh>vw^y$QLWpJ!E)+!!0T0%x0SW
P@yGKJ{>g2xf4~0^QfL~x

literal 0
HcmV?d00001

diff --git a/src/main/webapp/apps_extend/images/graphique16.png b/src/main/webapp/apps_extend/images/graphique16.png
new file mode 100644
index 0000000000000000000000000000000000000000..87bfe77dd1e9595d3355dff93c8eb5834e5fe482
GIT binary patch
literal 1007
zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Y)RhkE)4%caKYZ?lYt_f1s;*b
zK-vS0-A-oPfdtD69Mgd`SU*F|v9*U87??hLx;TbdoZfrM(<eAkgzdrZ!nSD(d03<5
zLM|#bYq%u27z8RfX(lYRQ8R2{+bEd9sK}#wf$6AMP}?LUe<wj!!S-8WZS1lWGMpCW
z#2ipIWVt(Ohv9L%!+t&ym6P=?yQ}}rnNuzJOWys8WXq=1Hw|4Ay;t4pToG94pJBPa
z<=KRgcO@Gb7#v(<#cx@OZ(eYF4)>|;=Jjdj357ek_BZ<nF5#07l{8xLw^mIfZSuou
zXT;CfANl+H(Z`-3kv;o*=g4g<nsMr2$SK1>X7?*~c_Ba5SffgvCis6;SS@$Bc=q3K
z{1$TxroX#uy!^9y9z*L=!&iCR=giNY<JYikrptt^WQE0jt<O(b{${_ip{8oO=eyOq
z3li?K%v9r6U2-d9#q5sOQwuc?WZM+p7WvQj;ho8Zy2-B{5=&orI>vGY8de;=Cd2vY
zU4h5iqT`pB>a@(dp!g&s`%3J$1^O<VZ^$dpm0af}`0VSCr)udLtQzx9NgA!RnxJv9
z#j*35QpYW4hk%Do+^c7D)OvhzyH;V=uJiSJt~pC?ZaDjzujy^#yHBf|8Ej?L@VRMm
za`h9T)>RG~A*=^wRmCTrnp5DoRNHBOi$s*~H@}}@b<eJsueATO;^Cp!a}pM3hu&Wn
ze!6(Uj?nKD%}@CW?(CX8Vflw<nVtF{RQZ0)@82@(gj3i&@qecB&Aruj8v+{+_I%Je
zIAP1=Gq)HQ7^vi?^xSAau`2!Mynf!7LH-X!Z$GXvlvOO|5!Q`Qf0TXl-3QB~y!$xr
zJdk{E@=zscf}W6Qz=~f{g0q34uvPawFUwRtf$tAk<l=MMFF3Ur&+1QDGE+Gtp>spC
z=<JQFZz$>R&%3<QflVZ8UWxIl3&|7Xy_oAXWrdEIbnL8G(G4pRQM}r5t?r%Y{|?u?
zEYtejq%F_zXO=~6HQs$T`LaXi)qOW)=e@f1vi=s!-^o+bB<8=8lz2CHi*sz&*2mU+
z7bc%fG8GbAJ#SNrk+jaT)V-zrp|hu*W!rpm)&1lvuX%H`N|ztbXL!(Z;iE=R1u!qD
zmbgZgq$HN4S|t~y0x1R~0|QH4ATl%#F*LU_Ft;)^*ETS+GBB9;LcSVBLvDUbW?Cg~
z4ez%uKMvF&39=zLKdq!Zu_%?nF(p4KRlzeiF+DXXH8G{K@MNkDP!WTttDnm{r-UW|
D;(n?L

literal 0
HcmV?d00001

diff --git a/src/main/webapp/apps_extend/images/iconevideo.jpeg b/src/main/webapp/apps_extend/images/iconevideo.jpeg
new file mode 100644
index 0000000000000000000000000000000000000000..c5493310793c05493a2d19fa2124ca13b3748179
GIT binary patch
literal 630
zcmex=<NpH&0WUXCHwH#VMg|WcWcdG(LCm!xGmU}4*Ox(yfq{Voh=Jh$Z3brsR%R9!
z7G_o;!OF_Y#?HgR4g~z%+?+gu{6a#4{DOkQVlv{wB2uD)f)a`nQnIr0^76vsN-9cn
zDl&5Nav(z(fm+$w*!eg(_~b+cMdU~Z{|_(-axh3TNHQ}jF)#@-G7B>PKf)l*z`(@F
z3UMohWaD6EU}9nC1WM`)FfcMRGqSR=F+)`_GBL9-unMxV3kfS4aySMh7B-3~nK%Vb
z3|_bqs6h-E9*oF_F#x>{6qgfZ09wKXGX<!E31~8lAghqDq2vEs3_Q$?KqoN^GT1Yu
zFFl{R^6WvU<C2;81MQRQ?Y`<LAN67v?g;H$no>V!WzBV~W3K&K;m4Nja&WrEyX1#O
z<}v%UKE5lu*-f|N3nlJIsyvoi`Pkz`<k4xNeSQ+$DmrdO?{u8zT;|(7ZC-?vh`-5-
zFYMQr7}UJXzh$?(Q+3hRZO`Na6&5I4pA4%ketB(s`LQ_r-uP8huErP#X-7*&-kl%G
zST^Bi?(vXqz3$6y^WBZeFZ^-y;Dp9GBJ(BA8C3N<di6f-4LS3et#;SD(=V*|h%4&|
zzU_K(zi^GGe8k<TwU2wMYTUOUb2a=ae=BsiT~5`1hLXK5SFBbsU;7;s+CD4I%PV%$
nf};6TK69Qo@{fC!Q(m)w)t=Bmoe0bRSiP+o5BL_H{(lnyc*M5i

literal 0
HcmV?d00001

diff --git a/src/main/webapp/apps_extend/images/imagesPDF.jpeg b/src/main/webapp/apps_extend/images/imagesPDF.jpeg
new file mode 100644
index 0000000000000000000000000000000000000000..fb1aad4d921f35fe015fcc60079710bae0c30c59
GIT binary patch
literal 698
zcmex=<NpH&0WUXCHwH#VMg|WcWcdG(LCm!xGmU}4*Ox(yfq{Voh=Jh$Z3brsR%R9!
z7G_o;!OF_Y#?HgR4g~z%+?+gu{6a#4{DOkQVlv{wB2uD)f)a`nQnIr0^76vsN-9cn
zDl&5Nav(z(fm+$w*!eg(_~b+cMdU~Z{|_(-axh3TNHQ}jF)#@-G7B>PKf)jZ@&eEk
z2*Ae9!pQ-YF%)26WM*b!209oj$;iaa!oVuXrpPX2C@kU_n8+cjWL`KiD5Ruu<E9Tl
zE#iy}%*aMDFfcN)vH>Mj1Q{5CT3MLk)-W<KF$=P=3JDvEC^`ljZM^vZ76T7ZGm{{*
zAcH-_@{^C$mQ22Vw5mjHww~(3vl7~~Retqr39tOoUAx`g>B8Hc$HUf?xoLWOJY`qs
zy7A<(+|<myANt+*q?`%T>nyy^bt<r^QiIj&4ohnS?>FY9eAnh^U-}@L8xj(0DKm|w
zrSrV5>jJK6g_8;xY|Zb~^2|&)vbE)1?b?09CZ|&7@Xg=8D!=jll+`V}76zG=M7KPT
z^el2|yOXKX!(#V1Gl2a_OH)?+dk^_p`R^Tae%0N~-eAafajK)g)$PENU7_a|ZK~{4
zd9q^G^;xU#cf8v;X+laNQ|pIWcRPI8ITaY2=ltqolGx?<-hB0z$+F+1qLdukJ~0Lr
zaI#jvTf}feIl-!At=z?Um96nF_`mrUpFaNgsmC|=(B)m}E`0O+=O2B$?T*@W`JEA^
zqB~hH#2#tdqA~BR%Y>!LtEO?Dvt!<P!sPsS`Kssr4}bALTD2uoI<m@1=)B6+9eLCL
G-vj`_i`Vb~

literal 0
HcmV?d00001

diff --git a/src/main/webapp/apps_extend/images/lbleu.gif b/src/main/webapp/apps_extend/images/lbleu.gif
new file mode 100644
index 0000000000000000000000000000000000000000..7cee5b6a2f50afd311a09f1a012f0274495713c3
GIT binary patch
literal 879
zcmb`Gv1*lZ48>2ON?l5!A{|5!oTPLKl!^+9qAm0p1gT_jtdrY?4n-(}2tp>cAnImu
z>UOOidLiHoI6L?P;uL@RKZAkGcXN}RoOANshg%OeZaluFMg397WPB#$F(I3DOsCW0
z_fm}qPrecS_W!~pmqN<kL}n&)S;$gWU38PXJme{_?hRA8A{42p9!*oaGL)%orYcjp
zDpU#W25xAu7^b^=Plua@S(;U^C380q^E9t!K{4DSEYhNy6us$|VVRZ%M@FsODy-6q
zt*{0R(y)XUH5P*nG*}E*3+kK*_jIq;$6B%okMyXP3k!-Fp6OYrhZMbD;gw#<!w+aO
zjUDKR1PWmd7^GoID?C^XHqc;IJJ)4$A|tAeL?3I(G9wFLkqZloQ5l7gIE?}Dq8+1A
zi<S5RO{TE}P6$RJtO0{GlhA?(i@^rE`b6DLnVcvthLPxFEm@A2tbHB#?&3IM+dQt)
zy~F5seR$WS!;U_}P}oR=bl+s~Xy5_O>%f&T4^6DP`geX#TGDF2)%~B)!nW$d<;^ee
zzU?h6U%$4p^Zxt(((?Mj=F#EFi%a(O^wZJK{g+qnJ-WEH`(*a|+}*>~&$}Pa-mKj|
bIXHgxYqqlS?Dx;v*N;Em-g$n0UN`>%5jB0w

literal 0
HcmV?d00001

diff --git a/src/main/webapp/apps_extend/images/legende.png b/src/main/webapp/apps_extend/images/legende.png
new file mode 100644
index 0000000000000000000000000000000000000000..465af117e77232aa334108734c849676572d4ce9
GIT binary patch
literal 145
zcmeAS@N?(olHy`uVBq!ia0vp^{2<K11|+SoP4xm&jKx9jP7LeL$-D$|*pj^6T^Rm@
z;DWu&Cj&(|3p^r=85p>QL70(Y)*K0-AbW|YuPgf<4kmV9tqAUr1wbJ|PZ!4!jq}L~
h60D08M0k`K7?>wBFdAkG{Qycbc)I$ztaD0e0sy5AAP4{e

literal 0
HcmV?d00001

diff --git a/src/main/webapp/apps_extend/images/legende_carte.gif b/src/main/webapp/apps_extend/images/legende_carte.gif
new file mode 100644
index 0000000000000000000000000000000000000000..d3e9c52e0e4c8fd3be9390564b6093a514a0e692
GIT binary patch
literal 46
zcmZ?wbhEHb<Y(Y#XkcV``swoj8y|HTfB+=Iz{K0qzw-23{>5{)-0DteWUvMRQjiak

literal 0
HcmV?d00001

diff --git a/src/main/webapp/apps_extend/images/legende_dataset.gif b/src/main/webapp/apps_extend/images/legende_dataset.gif
new file mode 100644
index 0000000000000000000000000000000000000000..841f4b6d81eca6eee269f9c5f8282687a9cf97ee
GIT binary patch
literal 46
xcmZ?wbhEHb<Y(Y#XkcLYf8!$%=`a8RNQ8ljx21pO>9_og=WMyvozBQ$4FFat53T?J

literal 0
HcmV?d00001

diff --git a/src/main/webapp/apps_extend/images/legende_donnee.gif b/src/main/webapp/apps_extend/images/legende_donnee.gif
new file mode 100644
index 0000000000000000000000000000000000000000..7914381e6495e22c4071fdecdc17df97b4f49f29
GIT binary patch
literal 46
zcmZ?wbhEHb<Y(Y#XkcWx_TcsZ8y|HTfB+=Iz{K0qzw-23{>5{)-0DteWUvMRQArPo

literal 0
HcmV?d00001

diff --git a/src/main/webapp/apps_extend/images/legende_service.gif b/src/main/webapp/apps_extend/images/legende_service.gif
new file mode 100644
index 0000000000000000000000000000000000000000..8f6494c9ca831778fbd0e204a09429ce1614b629
GIT binary patch
literal 46
zcmZ?wbhEHb<Y(Y#XkcXc`})ZL8y|HTfB+=Iz{K0qzw-23{>5{)-0DteWUvMRQuhy&

literal 0
HcmV?d00001

diff --git a/src/main/webapp/apps_extend/images/lgris.png b/src/main/webapp/apps_extend/images/lgris.png
new file mode 100644
index 0000000000000000000000000000000000000000..5d65e94a4c090a39f27fcbe15ee5a87d2172744f
GIT binary patch
literal 245
zcmeAS@N?(olHy`uVBq!ia0vp^HbBhB!2%?2x^IsMQY`6?zK#qG8~eHcB(eheOiAAE
zE)4(M`_JqL@;D1TB8wRqxP?KOkzv*x37{Z*iKnkC`!!}UesjsAff*-&LS>#Vjv*Dd
z-d-@|YjO~9d+5Kp{YzU+r<V}7@S!#~SKSC59i1%`-mKzXKQqPX|DH2BWt)x8O!Ax*
z_v&`u3C`y}tTDZA>FUkVf=Ah{ne-O<Ex#(Yul(`mFk!~UFBV+9@p^hoamAip<yTf*
m4gI3L?cWitxTC9gNR)d=J}pahQxE{UfWgz%&t;ucLK6VK)>VT5

literal 0
HcmV?d00001

diff --git a/src/main/webapp/apps_extend/images/loading.gif b/src/main/webapp/apps_extend/images/loading.gif
new file mode 100644
index 0000000000000000000000000000000000000000..e846e1d6c58796558015ffee1fdec546bc207ee8
GIT binary patch
literal 771
zcmZ?wbhEHb6krfw*v!MQYQ=(yeQk4RPu{+D?cCXuwr^cCp}%d_ius2R?!0jBXnAQ)
zOH<|l|Nj|aK=D7fpKD04vtxj(k)8oFBT!uNCkrbB0}q1^NDatX1{VJbCr|b)oWWMT
zS%hVC<e5zgOcIlpc`kLa*!o;M_#F$wy(Jnw%^xoO{@do#FR1axvu?^Eg~=WXT$f%h
ziRw+0<X~ye?)5wTu<&NHn6>&#9~NwO_yO%;SvZ5MdNYf|QNy-I*%yJaj+uTdt+qbZ
z4E`Fzb8m}I&!N8OKmWEcCmrLs^Hs&3i)mt@hQVdcqghkaBs*D}tG_lKew4?rTjzIZ
z9tSone1TS+TR7tu^CunG)Y7Jg#sw#)sG9C!c0I%LEzP)9;hqRf&)s$D8d5Db{TBs%
zgl0~5QQ91luq4Q9tJgt4QLbaxZvAaKeCM9!oy85dg4k>TdBSVqjHub_PG=PO&J-rx
z7oYTuF+kH|tG-UK+EkUhDjYx?zW?T|lx><M;PP#XNUM@C2hfJD#O#hF$!^x>+aOQm
zzL$v$zBLo4Cj=G&tw{H}dW?tlTkS)SY4<#NS92z*EY-MMB6Ftp`R=*=*Ev7cS+X%W
zMCur^FdlokL}1Y+&aasU2J4#EOuNlnb9CmqgLCGTSY!1BD42pkHY^XidQ5=>YQx%`
z*%Pm9D!CkBu&tMWm(%-ejACVWGS2RX5=QOJ$1*tr7F}F+*-OA+Ly&Isg|AEuUYicA
z#%IG6kPXkHt{zk2M6zK@Vu^4Q(1zE$?yY6M!^&jQ+2^E?!p7{g*|X6}vuRC3p@jk0
W117c83?+LXEZI4G$p&LV25SKE>nb+@

literal 0
HcmV?d00001

diff --git a/src/main/webapp/apps_extend/images/logos/Logo_Prodige_V0.jpg b/src/main/webapp/apps_extend/images/logos/Logo_Prodige_V0.jpg
new file mode 100644
index 0000000000000000000000000000000000000000..a4de289bb800fed7f21dc4f070bdfa052f39b46b
GIT binary patch
literal 77205
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

literal 0
HcmV?d00001

diff --git a/src/main/webapp/apps_extend/images/logos/Marianne.jpg b/src/main/webapp/apps_extend/images/logos/Marianne.jpg
new file mode 100644
index 0000000000000000000000000000000000000000..97b75359219be656e36d45e97dadeb16fba61a29
GIT binary patch
literal 23771
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
HKWqO5q9)fl

literal 0
HcmV?d00001

diff --git a/src/main/webapp/apps_extend/images/lrouge.gif b/src/main/webapp/apps_extend/images/lrouge.gif
new file mode 100644
index 0000000000000000000000000000000000000000..bbc4494d511aa90f68809fe38e9000dc412c3b22
GIT binary patch
literal 492
zcmYk2YiNxD06@?8e!o9SNhnFvT2ib{NwRKIl9VKoq@+n}t!^^g-JO}%9`5F`t-0FW
z*qYnij4f+yB}qxkBQ1rLkdj0q=9ly1{5U^PMPkeP(*5PQ9D`*)WC4<_<}dRt{X6DY
z%+HwbG2bG-Mtq6*9PugQL&W=#cOh>>UWdF2nG1Ls@FL)8z-+*ifX6<Md>;Bd@VW0Z
z<8jYp%45=F!sE8bm`lNB)FtmS;xgoL)nUM)-y!SJ=g@1@ZF9k<%O+#fVbf~SVsX}@
z$)eGs!Qx}Yvw(V&T9cC|CrpwiH3roNRR+fmDh-Yr9ML(fb4cf)&H<f$8hbVNXzbS5
zrLj|Ehst)9Z7N$;5-Jrcn-w-GJP(-m*r>2Up-iDvW}VDhnKd#cGQ~1Q600OuO01Ar
zF0oW%iO6D+MIsAD7KnrbzJM!W3m5{LfCAF|W!{9OOqwmq6=LyU`cGP-mb&^>L%Q*F
z)0tGVxh0)!YwtLh>1=Q9x_GI(=X_o7<!rX^N^T(2KRA@THhjHjB!8oGv@q6o^HyPe
SB7bLcc<S!p^i1v)Wq$x*e06*P

literal 0
HcmV?d00001

diff --git a/src/main/webapp/apps_extend/images/lrouge.png b/src/main/webapp/apps_extend/images/lrouge.png
new file mode 100644
index 0000000000000000000000000000000000000000..fc06053a30d13c4b166d168f18c8322915ab62fb
GIT binary patch
literal 268
zcmeAS@N?(olHy`uVBq!ia0vp^HbBhB!3HFY{pzm(DVB6cUq=Rpjs4tz5?O(Kwj^(N
z7l!{JxM1({$v_d#0*}aI1_o|n5N2eUHAey{$X?><>&kwOS&ZMD$=_t53Q(xi)5S5Q
z;?~<s8@Ub{2(Ufy|0r1V|M{yW4-`DSr)OPV*n3)3M#f5G<t+KW0)e8R9$}f<kzqn^
zJRAFrf8DG$-^upeDx2y41^3tjxAxyn0{J_Sv+P^sC|la~YTrlE_;00B2~6J^?Gog-
zI{#jIaObB#OQU6&qZbA(Kh~f6_I%I*))+9_v%rQS!uRE`9~ZW)0XmAo)78&qol`;+
E02vuzqW}N^

literal 0
HcmV?d00001

diff --git a/src/main/webapp/apps_extend/images/moins.GIF b/src/main/webapp/apps_extend/images/moins.GIF
new file mode 100644
index 0000000000000000000000000000000000000000..26a56333d9269c6513e4fa50262c893c28d563ea
GIT binary patch
literal 838
zcmZ?wbhEHb<YwSz_|Cv^;J|^FrWS@#Fd70QG6Zx$z6Rw51`cfoMh+Q|fP{u-4nZlM
l9RdyvZG6&VH4=dhuHAyhep5UqC>`zP6IN@9Fi>Ey1^^Id5|#h}

literal 0
HcmV?d00001

diff --git a/src/main/webapp/apps_extend/images/ombre.gif b/src/main/webapp/apps_extend/images/ombre.gif
new file mode 100644
index 0000000000000000000000000000000000000000..bc8ac426e96407a25829d9a6111b6fd30a96e527
GIT binary patch
literal 859
zcmV-h1El;%Nk%v~VFdsb0QUd@000010RaL60s{jB1Ox;H1qB8M1_uWR2nYxX2?+`c
z3JVJh3=9kn4Gj(s4i66x5D*X%5fKs+5)%^>6ciK{6%`g178e&67#J8C85tTH8XFrM
z92^`S9UUGX9v>ecARr(iAt53nA|oRsBqSsyB_$>%CMPE+C@3f?DJd!{Dl021EG#T7
zEiEoCE-x=HFfcGNF)=bSGBYzXG&D3dH8nOiHa9mnI5;>tIXOByIy*Z%JUl!-Jv}}?
zK0iM{KtMo2K|w-7LPJACL_|bIMMXwNMn^|SNJvOYNl8jdN=r*iOiWBoO-)WtPESuy
zP*6}&QBhJ-Qd3h?R8&+|RaI72R##V7SXfwDSy@_IT3cINTwGjTU0q&YUSD5dU|?Wj
zVPRroVq;@tWMpJzWo2e&W@l$-XlQ6@X=!R|YHMq2Y;0_8ZEbFDZf|dIaBy&OadC2T
za&vQYbaZreb#-=jc6WDoczAeud3kzzdV70&e0+R;eSLm@et&;|fPjF3fq{a8f`fyD
zgoK2Jg@uNOhKGlTh=_=ZiHVAeii?YjjEszpjg5|uj*pLzkdTm(k&%*;l9Q8@l$4Z}
zm6ev3mY0{8n3$NEnVFiJnwy)OoSdAUot>VZo}ZteprD|kp`oIpqNAguq@<*!rKP5(
zrl+T;sHmu^si~@}s;jH3tgNi9t*x%EuCK4Ju&}VPv9YqUva_?Zw6wIfwY9dkwzs#p
zxVX5vxw*Q!y1To(yu7@<y}iD^zQ4b}z`(%4!NJ19!o$PE#KgqK#l^<P#>dCU$jHda
z$;ryf%FD~k%*@Qq&CSlv&d<-!(9qD)(b3Y<($mw^)YR0~)z#M4*4Nk9*x1<F+1c9K
z+S}XP+}zyV-QC{a-rwKf;Nall;o;)q;^X7v<mBY#<>lt)=I7_<=;-L_>FMg~>g((4
z?Ck9A?d|UF?(gsK@bK{Q@$vHV^7Hfa^z`)g_4W4l_V@Sq`1ttw`T6?#`uqF){QUg=
z{r&#_{{R2~A^8LV00000EC2ui00jUP06+*h009XUIIdv9e+UuMTDUMF!cGt&E}J+p
lpGAufGya>zk>jb4AAyM!iLGQwcPLT%Te(uBOP2uw06Q>GnRx&J

literal 0
HcmV?d00001

diff --git a/src/main/webapp/apps_extend/images/ombre_h.gif b/src/main/webapp/apps_extend/images/ombre_h.gif
new file mode 100644
index 0000000000000000000000000000000000000000..ecdcb9f3806062d93d631fdb65df9b569bbe20dd
GIT binary patch
literal 846
zcmV-U1F`%^Nk%w1VH5xb0QUd@000010RaL60s{jB1Ox;H1qB8M1_uWR2nYxX2?+`c
z3JVJh3=9kn4Gj(s4i66x5D*X%5fKs+5)%^>6ciK{6%`g178e&67#J8C85tTH8XFrM
z92^`S9UUGX9v>ecARr(iAt53nA|oRsBqSsyB_$>%CMPE+C@3f?DJd!{Dl021EG#T7
zEiEoCE-x=HFfcGNF)=bSGBYzXG&D3dH8nOiHa9mnI5;>tIXOByIy*Z%JUl!-Jv}}?
zK0iM{KtMo2K|w-7LPJACL_|bIMMXwNMn^|SNJvOYNl8jdN=r*iOiWBoO-)WtPESuy
zP*6}&QBhJ-Qd3h?R8&+|RaI72R##V7SXfwDSy@_IT3cINTwGjTU0q&YUSD5dU|?Wj
zVPRroVq;@tWMpJzWo2e&W@l$-XlQ6@X=!R|YHMq2Y;0_8ZEbFDZf|dIaBy&OadC2T
za&vQYbaZreb#-=jc6WDoczAeud3kzzdV70&e0+R;eSLm@et&;|fPjF3fq{a8f`fyD
zgoK2Jg@uNOhKGlTh=_=ZiHVAeii?YjjEszpjg5|uj*pLzkdTm(k&%*;l9Q8@l$4Z}
zm6ev3mY0{8n3$NEnVFiJnwy)OoSdAUot>VZo}ZteprD|kp`oIpqNAguq@<*!rKP5(
zrl+T;sHmu^si~@}s;jH3tgNi9t*x%EuCK4Ju&}VPv9YqUva_?Zw6wIfwY9dkwzs#p
zxVX5vxw*Q!y1To(yu7@<y}iD^zQ4b}z`(%4!NJ19!o$PE#KgqK#l^<P#>dCU$jHda
z$;ryf%FD~k%*@Qq&CSlv&d<-!(9qD)(b3Y<($mw^)YR0~)z#M4*4Nk9*x1<F+1c9K
z+S}XP+}zyV-QC{a-rwKf;Nall;o;)q;^X7v<mBY#<>lt)=I7_<=;-L_>FMg~>g((4
z?Ck9A?d|UF?(gsK@bK{Q@$vHV^7Hfa^z`)g_4W4l_V@Sq`1ttw`T6?#`uqF){QUg=
z{r&#_{{R2~EC2ui02BZP000Ox00B+vbcz<RW!T2K%jfT(!-oz95;TZVAw!4|B^ErG
YaA8A?5eIIp=n-Vdi5x9{1Q`$jJ1wo1^#A|>

literal 0
HcmV?d00001

diff --git a/src/main/webapp/apps_extend/images/outils16.png b/src/main/webapp/apps_extend/images/outils16.png
new file mode 100644
index 0000000000000000000000000000000000000000..dddcdbd3039873c85b290d0b4126da8e424202c4
GIT binary patch
literal 3689
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
F{sRg81@Zs@

literal 0
HcmV?d00001

diff --git a/src/main/webapp/apps_extend/images/plus.gif b/src/main/webapp/apps_extend/images/plus.gif
new file mode 100644
index 0000000000000000000000000000000000000000..1ba1341c853ad81ddb9877b92a579118f81b3e84
GIT binary patch
literal 65
zcmZ?wbhEHb<YwSzC}3dFVE_UUyYaw*11(K0AT9#~lT=H;*y%Mt9V{OCc)k^$^O!&6
PqG*;vk*OAoD1$Ws0Zb9s

literal 0
HcmV?d00001

diff --git a/src/main/webapp/apps_extend/images/puce_h2-trans.png b/src/main/webapp/apps_extend/images/puce_h2-trans.png
new file mode 100644
index 0000000000000000000000000000000000000000..913cb71864b36334573723550881e03e02e0247a
GIT binary patch
literal 704
zcmV;x0zdtUP)<h;3K|Lk000e1NJLTq000jF000jN1^@s7Owpy>0000PbVXQnQ*UN;
zcVTj606}DLVr3vnZDD6+Qe|Oed2z{QJOBU!Vo5|nRCwBA{{R0!!~6H|?=a-$<=p{t
z{sROMh>;AUnPg>U=ggfu_dh@YF@i)K931BS{P~kXL_~yv5hT5A*|PuNzkg@Abm`J5
zfB<5KnPP5k{`JI(6XzLr@7@hE?EkuT>;8kZGd+CxkO2hl-n|Q=Dw!1&6uh22dnPR;
zB*aiwRwfJ(Kwv}j^Yc&o`uduIYytsxc6Nr%n>U}DIB}vmGsprrH#gl6A3iVy1qCsv
zsi`rXI(3RcOG`_7>eQ*ROh66oA3uI%c>DG(Sa(lP510)S1IdA{00E#i$sk8CKtMat
z__-hkKmb0-7=@t_2E#$SI4C;w0OBRw`$orljh;n1dxRe09Y`p+_(p{$0oMjT^5-W*
z{_Gp>sNcvF`5-S`_|h95F~-wc3u`TqQUcwAfe+!mKaDYPT^FR3xYJC&2q6GP+OcxZ
ztjWLi-eHWv?83)@)*3`>4U|$0RVjrv`2x3&IVU*hpw`NrX7c|=`3X=a8KX!D#b7wf
zC?bNT;5|IS9^f@o4E9s*MQo>>E3CyHU{7FgC3pcVK}Qs1^93AS_JKTj=Kqs?$r;3l
zUY}Z}W3p+QN)$!1EQ?VahC%wi|JIm?3V#fea=`VeEKIbnt8CjQ`@Rdtp67}0`w|3!
zgkfkV$_SJDg>s6ba6p`<$%K4mS-!j1)iN>f#1Y>#%?t50%Q9of1ZbA~d=8_!uI(T3
z=n#K(U3ZJ)Smt>)6G}gys;aDH_U?#7_wHGD%_T`<fDn`6=$U;$3_!-;wypL2k9MBt
mj@=*w0*uHsjw7@CL;Dxnm0VjM2P?<`0000<MNUMnLSTZ%g+Lkr

literal 0
HcmV?d00001

diff --git a/src/main/webapp/apps_extend/images/puce_h3.gif b/src/main/webapp/apps_extend/images/puce_h3.gif
new file mode 100644
index 0000000000000000000000000000000000000000..239cf1249968c883c18e84670f57c25ae885a76f
GIT binary patch
literal 51
zcmZ?wbhEHbWMyDyXkcVWONjjc|G(l-7DfgJMg|=QAOOiQFmbUol`Xt}-Y04y1A{dH
DL5mD~

literal 0
HcmV?d00001

diff --git a/src/main/webapp/apps_extend/images/remove.gif b/src/main/webapp/apps_extend/images/remove.gif
new file mode 100644
index 0000000000000000000000000000000000000000..08d083355ff1b4e99b9ef8139f28ede1485b50cf
GIT binary patch
literal 949
zcmZ?wbhEHb6krfwXlGzJz`$^jh2@BVz)=yA<1#WQRaDNJn4Gt<xe^d?H6-L_O3JN_
zj5`GdcS}m1OqlR|&YYJ^mb~7u;q8tc@Am9@f8fA}BS$`-IPvMsnXfl)e1GuZ$CD>N
zU%dGJ;lrOVU;h61@&EsShEXsY0)sdN6o0ZXGcd?A=z!b^$`cG6lNjtdWNtJvwem3w
z^YtV!G#qAN*V6d2fsv7ciC4iUL4l!xsfAfr@4<wCW@k2TMw1yY1RNT;nRrDQEH^A|
zW8}0eVR+z>=-tS}R<nR1!RgR^CV7Sv3JWuQ+c~EuJvb1oaH-KT`P?3@4{7K41*4c|
p%y^LM(XPUt<-x%4^gx%mao(FBg-VB~38?z1XdG;6?*v+G4FKH^bqD|e

literal 0
HcmV?d00001

diff --git a/src/main/webapp/apps_extend/images/remove.png b/src/main/webapp/apps_extend/images/remove.png
new file mode 100644
index 0000000000000000000000000000000000000000..08f249365afd29594b51210c6e21ba253897505d
GIT binary patch
literal 715
zcmV;+0yO=JP)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV00004XF*Lt006JZ
zHwB960000PbVXQnQ*UN;cVTj606}DLVr3vnZDD6+Qe|Oed2z{QJOBU!T}ebiR5;6}
zllx0kVHn5#Tecsf1c`2hgi%nK^D=kV+T5njvrLa$EMjSnone|mjm2E}L#U;8)yiKo
zO>C4}Mrzlg<+1Y8PEBfUp0jJpx4B>@E+cy3`^(Gw`Mf+2&yxZm<$to~Vpgvg&QKNR
z_f#1(r6svZt%iF?s+n<8X?B&!h3g9Dbb8_=MX}!;HiQSAh`bp^WMl~Z-44teO7W_Y
zV4thSL{h;rJY7!l3%5J4H1!tIzB`Dv+YxO(haWeausGZYkI8^hWj6mzo=L0{%;<E2
z80_Y*w_}NMA$su)e0B@`wrYegSP*HT5w@N{_}&f79VIb*XrKGBY>yxzh{5!Htr?51
zvG|W62MzC8BZ76hRpCyO2zOn<%e)K>NHge!-~)Ap33OdWw6hsLYbCxGNt0%wk_2z7
zfyYvXheSG)5HRK1VB~%mq7Dmurw#bi@hEcOr3&G1ZiF*$M=&9nB#VNf&Q^r$4G5kp
zTURh&s)E0%5&hyVD}sp<72~zmAY`Y(9aqO6CXF%=zFHGzO-A&I(pE}v70YQxCPJ{Y
z4L+?5-crdLn3ZRPEs!A4ehEY3ZRpL~w9>@aMN+{F4dI@v&>(QDHQum!mG~E^$OS8l
z!7?%Uwib*ROP67Hw`ika)gX-(<Pal@1N`)16#~~<@x7jghg9OTS^;mJ8T{oIOsMnG
zla<QHU?S-#Kb7w%o*dlEj!JgnOSKW+hV$`!syc>8Ia`-u_IEhxG7U<13kSsMW+$<e
xd62)I>lbb2dUMm5p6pa}cjgA+U$^mJ^AjD?&bdi)8~y+Q002ovPDHLkV1g8IMc@Dc

literal 0
HcmV?d00001

diff --git a/src/main/webapp/apps_extend/images/rss.gif b/src/main/webapp/apps_extend/images/rss.gif
new file mode 100644
index 0000000000000000000000000000000000000000..fbee103516d244bcfa028b6c98c2b9c1f90fe699
GIT binary patch
literal 579
zcmdUs+fR~l9EZQZSCm5@7%8UEz```oLS=*+(Rp*OF1)u}Z*;A@+%$Lvgf(C*m>X{B
z-eLr9dXa~^$e3>GS~Qng*+sU=m2L`~%5;9zKcnX_c%D7?AKtred?F_~B`uWURXBks
z{GG(RR(KQ$)#7s>0va40!YRfak3}!O4q+e*-+cJ=91AazNn_XmzYabX4t6oy14j-%
zK1IThKU46QAbbbHZEXI8Q;Ne3{>{R##dH^<j}bLvq#3SUyftEX3-b=l+i|dm^ac_^
z#GhfT9dlN!yupuA?C)T_10T8(X~S|5U))G-Ap8LFe#BoOxr9IkcGgb{=>McFBVt4r
zsyWp^eL~_;zr||f2W;dVbU7UbSst&ifUHz}<wnCLQE*uF%0i_~P#7=gL?R)&X1E{~
z>KY~QC9&+8i~6gq_WVqCth`=VC@Z|lOlp}dCKk%%`9)PMm*Zk*^KJ>hnwUbn_WJj^
zGfZl(RI=veNKFfuuVHdd#Y$2%(JOhhYBuv!eRS8Y?Tj-u*RI~y)_)&$+x1GBh)l<~
Cvc`@8

literal 0
HcmV?d00001

diff --git a/src/main/webapp/apps_extend/images/rss32.png b/src/main/webapp/apps_extend/images/rss32.png
new file mode 100644
index 0000000000000000000000000000000000000000..28683cca11429e85d7f551580a7d71e4b0fc5413
GIT binary patch
literal 2839
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

literal 0
HcmV?d00001

diff --git a/src/main/webapp/apps_extend/images/rss_over.gif b/src/main/webapp/apps_extend/images/rss_over.gif
new file mode 100644
index 0000000000000000000000000000000000000000..fa650814787cf5371057939b6c52a6870ab7e9dd
GIT binary patch
literal 599
zcmdVXT~AVR0D$p7r$eM@k>W5*gUYQGU(13h{WmM;MXlGHwsa>Ug$rzCSu95RlGwtI
zrHeJGY^Merx#5&a&wbyay78)uF1zz4vyahl&o_8_de3{jnoZcm*E0fbE2W^>8Bp<?
z@mmO#5G*HHLC8+nLAZut2g9}8t>>PL`)(ez5p5vaPPBtq6OTN^T8R0GdwJ5y)I}1P
znZCyJ8zirgyvfXUX8O?k(KYm2=mWeQ<W-RQ+q}L*Dnu$wD#Dux3lB+;viKBZl21u8
zb9{bF{v-Je%NbUdDC8+Dv$n$8D#Zd{iooXo%=Kq?cO;;V1pLm?;K-1(r}x4o;o4A5
zr6MleV#~i#!t(BMd~AGTa$HGFKTAwCw!hG48<jC-f9nyKqiP{tH5XUh((pA`?8;`}
zD>W@gyA02svemMjrC56Kq&!_&wB)Lr_F7fzF?nK#s^*+VXPv3UD-R2i+u3m3__j~_
z%s=M8Z#yKr%D11A_MeOO2ZX6Z)`>P*`&-HX%3d|CtG3F`4{5P3Cd|Sn&+3lQ?78l0
It634gzu2>2pa1{>

literal 0
HcmV?d00001

diff --git a/src/main/webapp/apps_extend/images/s.gif b/src/main/webapp/apps_extend/images/s.gif
new file mode 100644
index 0000000000000000000000000000000000000000..1d11fa9ada9e93505b3d736acb204083f45d5fbf
GIT binary patch
literal 43
scmZ?wbhEHbWMp7uX!y@?;J^U}1_s5SEQ~;kK?g*DWEhy3To@Uw0n;G|I{*Lx

literal 0
HcmV?d00001

diff --git a/src/main/webapp/apps_extend/images/tab-close-on.gif b/src/main/webapp/apps_extend/images/tab-close-on.gif
new file mode 100644
index 0000000000000000000000000000000000000000..eacea39b623348f656de9a8f0df4ac4b74ceccbd
GIT binary patch
literal 880
zcmZ?wbhEHb<YwSzXlG#X4UZ}=DQ@lWpL_W8nfpJ^Kl*w3$<OQ0f8Bcd>)z|%kKX-x
z_TkUV&wm+4!Dt8!#}H8b$pZA&e+C_p=RkRafy0-9okPYWK%u#rLy#**AmKn$J2Q)p
zz={Nh21Zf+FqsJojYs=sS(PMy7OF5cvh&sKnGv+0v0q<*pG<%Q!&xR)rDrk@3zqxO
MXKm)=;9#%@0E9$42LJ#7

literal 0
HcmV?d00001

diff --git a/src/main/webapp/apps_extend/images/tableau-bord.png b/src/main/webapp/apps_extend/images/tableau-bord.png
new file mode 100644
index 0000000000000000000000000000000000000000..e13d91c31ee29195697bb96890d8b7019add39a0
GIT binary patch
literal 1010
zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Y)RhkE)4%caKYZ?lYt_f1s;*b
zK-vS0-A-oPfdtD69Mgd`SU*F|v9*U87?{3!x;TbdoKBtW?IY|car}C-TGht~or^y{
zaO8~Z(D=GSO)78Ro{EbzGMG9$6}mbF8zVBhKTY6Tq$VZIY3Cu3@_WhMyaoNbtwB-K
zxO8=IT>qqVLF)gxo(G@3>t@#P`)l+wHEo)9mei`%@{{&$pXq)fOO7>mtD3&t?72L%
zGS@dwFYrlTvF8cf_wcE9M&&Jk<TpN9<8r02yFhr)S5>vvs6(|M4(l7f-@$nCYPZwY
zmA$(^Y<X~C?!MaJ??2g_TP*#(X8S4b6|yDH#u>+r7fbr{l$A*7W|&%BaC>1AaUrS1
z>2SC95i_qf>tiQw_YJw_xHr8}ws#vx)4uN~cCFr^cs1d2H1EluQl9?ILM*e2FZrIB
zT&t10@ml?%b8NdD_a^%tWVYi7)@b9q&2s8~*NPXC2fxbkpQ?7Nf7&G{7+M>*;+E{U
z$#0#`9^B=xwQh>UkIC5?8_ypQjc>kX#(pr{@yhkyj`yq!r5B|*WW3>RVhMaCDE+?a
zg|wUJ=9N>mRoULHVA`6<b!a+|A?HE8$cG|UhFT?upT0O${hA@?kT%;{JxBiIGk8~}
zEuLrX$@Aojl+~NWp8D8SHK!8UcP0|^crM6?DCj+tF!AP6IJRlQ^W!`<pSiZQDa<LB
zOiP+{+2Fhek9WjD>wK9SjiU=@e$z3QydeFg&z$##`(p14k*O_{R-ZW{8r`^O&halr
ze8$?95l=<_oYZN4X7I97EX?tIzxIw*yCXvW?%BL#WxUk<_@-+TEw*#i%(xDV1{#<M
zwoCXKW|U2ymu$u?YO1iceZ%@451lXfojmf0OX#MJ*!AL^((}s%0ypu@3YM<?A$*%{
z%dL}(HFo^@kP}$C{hv$n{wIAY0v(z&R9GH)Z(w~SG27cXW1f<&_{@dRzdz64ID5nQ
zmR<hN`KiUPr8h-a=1eHHTBopi*U1Hy+TVGNDy{ePl&zXRLuTjw>fiSo^w%1*3q@V_
zzp}@Ep`o8q#<Ke-d?uY)wX;4uzwqY5Sl86_9gCmW1y}sr?~~>?`Q~AJ2B}4dq~<vk
zdjYe9YKdz^NlIc#s#S7PDv)9@GBB{zH8j*UFby#@vNEx-GBMLOFtjo-Xgjvb7DYpD
zeoAIqB}9XPxvsHch@rWaiLsRdP=gUr!|&a9)PWi#K{f>Er<If^7Ns&crsOB3DtP85
brl$s_CZ<#to=mj?Dq`?-^>bP0l+XkK7~icF

literal 0
HcmV?d00001

diff --git a/src/main/webapp/apps_extend/images/tableau-bord16.png b/src/main/webapp/apps_extend/images/tableau-bord16.png
new file mode 100644
index 0000000000000000000000000000000000000000..3a735cc018af344fb07a3fd4074511cb0e4ad821
GIT binary patch
literal 3563
zcmZ`*S2UarwEgrJUGyF$`j`<tN*E<Gx(K2Zg9w5dEtn8Bh!VX;?={ggM2`@Lh)57!
zj3^UC8|C`%+kLp}oPG9Md!4<`%X!#w#)i7I)ST1+0MP2|X`5a%!+)S8zn**tSB?Nc
zE$XhNW$f<k3;=;Y^D_d>&A+q8Oke_ni@tz}O{0HxeFUaL((Is)SsV_xN$4PQO#;Ql
zj8N?yK|SLE^rW$ng?1AIi+Ll35an%IcBr|ex6aI~`q~f2`}>5|TJN2A#~p-i%!D-?
zkXj*=nMn>KO8(4@k5tXWF{YUKZv$u|UI(-o0JqTTv~LWdWEdI!5>+7JOKeX{gb%j-
zK<x7s3qc!FTosmD;hw+P%mNs5-zjlOGP1=g3d546TPNbPI5Q<(*@a!ZZ)-A+#wj_b
z(5ew6n@h5ORH?Sc4k}f=GyCDRd-HEATtIgqwjq`V(vc_0xX9F`6Awz4SW#G+HK&7+
z04(~RY(AE8g7S>AaePc`f-CF5k{*@)v-yXTOD;46nZEk4iDf@#CNh7X4C#gGpE;Vx
zYc6Fzq{RJzh(z`X;;ZeH>DTNJ+yLv|xfOWj=M)s$D%aBbUQP}IzNj|7LLPYEpPz#U
zbDVS_80xNG?KGTEaRLrwaUSmuUP;wcqsOIyPYVR6uZjS=w9=dBdrv35fvQX#v1Vst
z(=!W;493iUFcaG${e@9XPf<fRLP%}*^*+{C=`Y+d9xYwZB_Snj@Tme(3bEquTrP|`
z;iI@j@{()j1=1DvGecj-l_!kC7+P|NH>lg)Rh2W33v*8B`!7oeJ6PkUP8f}y6VTI0
zagDGYirdtT{F8)1+p7}q?h_DySkSU~+AF`SJ%tNIZ`q1)WG-H5T=@3Oai)C;+ws5z
z(_11UJ!0`>iq9H6n}C)Bc`aJXht%sM*GVJ;1C<2{s~%|;n!Z_scb1e|Q+Af>2<>4^
z!Kn#xBOBHfRU{jage`Hl6M01v99ZCJgahjbavBCwM**<*i#36pddyQXWBlYU^c|Yr
z#tbY}gZHQy=$Y;XVO=ZP#UrbWf-5=Bc$KO0W9l^`v9@kEa-zdxe)UqqBdQviYRS0z
zZ(QGdp|$kDhxh~ecofYNkB{&?z!#;mbb!BeBCkrV9{HOA&A`Z69M3LzV}R_hZgFzp
z%h$EK@yXPsMDEbe6ty)GaQqm*w+TB78B~{}*wdt-(wK#&g}jCLK}59<j}G!}u!(|+
zbEVa^t{g{Q?2PW*TMU+QlhmKJlfm|d*S)q9nPTq}QEY=O`wiNX#HPMLCqY^Ltd=aM
zF*P{X2Dd8%Bq_V!scGLbw3cUvZ*+jVF=|$P+hp5nn*l{kAlDtJS{n1&ZNJS;pZU7x
zBTsLBFYU6(GnzoL4<f(F_g*7b{qSWcI?oj@mBWa8G?GQ!n71hfUJCVz+!HQJ_esH{
z@u_-3)r@s<FSMnf-D*k=ObE<Y)Oij|6~Lv~=uHX<xKrR5aNIa)oNzXLMo=ZS<P-5e
zoiF5+_>}Q9krdje*9VJ`YSJv$Db{k*Tj>z8Gc}vi_ib^hcZph~8u^n7F%1-x5@Qo9
zpAN3#tV%PzW$HJ@;%??1jx)zG;ciVmEUj>91Y3i>z@FK}*^yv2mmx7qX#UDQM-zE7
z&TAvH`Hcs;TTp{yR<oWGI%CA+$1a&8(Ic*-GoK1Fc*+Fiq;lA#qAc#K7;=?k9u>bI
zaHm3y90}LKqBF)urPBT0tbV#V(lWA;5h7}o8IWd_u_(MKc4bUd_O^ndGP$hLez~}B
z%yi3iuB^5U3VSVssi2hD5+fI@f1p}9+n`ucTDw;Crrx~FU(;PDyL`JcuhgdgxlWLE
zRIyV--vhCSN;Ug$q+tQY6<7%z=FsW^^nuZXA`i?KdMhHQ)w<HU+dB8B7BWIv>#iNf
z2BRBlp#|+Xx@A-XT`dr?ODoE*?0ERj$j=V;NW$hxjYY-Go7TM6OjJGU)e#9#b5i6u
zXFhrUqfU0)Xs_m7wFR!=#)2rjV!Om&$WY5g)54k_qi`(n)Zytzh#QDqR)|BH!<Dm@
zJ&9v7;d$bIqH<yZ*AsSKjy>=$<kHQ_G1Y0x&3Dm!XnIa=@%`Lk0OT$t!z%HIlwWg4
z*D3jd^a0!GVdk@p9edPpgwryj>09yeN@Q8O@M7~f-=FvU#b>H#JYH%(CI#JR&#arA
z8K2>*HL~hyX?o8%%iVVRWd<w%<0y7#+IMF?Z#{8zcxQS$3-u3Ga^z32B#<1H&{fmH
zW5{EMleUsPhed|<MQtmDDoP9|@(uD%$9KjLq~)dm*o=1w*7Mdw>q)%8UPWHtyk5_L
zn`fSXG>^C|sX7y!cc2||7P!05{nvEgDd<kfm*7W14F|jb1Wri_<^<KFZwKoH6rnfl
zS6J5tZ!OlQ_t7Md{v2~2Kv2JdrL$zlJM)Wx_!~v=`pNFbcE<J~VMUP>J^UYr-^o+S
zgd*jlK5PMKq;a!xqw&<|JH8n|Nx2$}Wc)68Q?Mh&)?~J_v9i3fBi&2lxHd1gHC8%-
z*RBjB9`Y^y8+DDDMPX7(g5ywLEOa<}m^UtT;t(MZ`n~dD#bedgO1c(Pi}2J%DTU-X
z4~wnBhvo(|2aSYhg|`i}4E^<L_41ZGeQG*nQdQHoQa92r(&&Z5?^7AM!v@QS$_v&;
z@Tox<_s{M>+#_*kxF}r76VI7#E6C{avch8xjv8<$srlrDd5^JfJ5({lz0fM{R767Z
zk9MoSyiAw6t_&h%+@(Hbx9y3^6RRg7`{oDo>xp%K)(?Alt@+xz5s_!n5wy%)cjbA1
zY0tj-fU9_(cHVscFt=YJfbI58Pf7O0m8P;X<Kkp{#pZ9QCkyh^^1H1sb~ff}TEius
z*leZb#p-W|+4qTeoF(EE(iflqWbAQ%JKgMmWjJQ|Ykb+3u8S^HKXW}Jaqnnu!NgET
zMm)Sl)O8{~{_#y@2vtZ_h^|DaL|3(3HOd0hU|8F2yK3{*qQ<fdg9_sdS;U47U(_M*
zBL|UtbUyU+RmYWkZdi{>#aN}RAiTb_rSoE2f_H8%OHO>Q8utnh=Us09_O>6@9jCD?
zDO0TN&{=S(+}UR0o=wjmk2{`q-X$$J`ACLe4i|*+5iao03RmxnvWr@WW6z6P^QY{l
ziI8jlV<-_+5(<i<EjU#B@%8E4!ez<i>lnkTf@&qHkj}#!%kbW8BZS|?cs@*B!B1`Z
zJkSU}aY4h#=Jk*Kh|cD)Bk(kpP(~AK7>baYvsFV5ZhRi8NvO&HF4=%Qe011$<?`2z
zfL_-aM%MhXRjBp$r<dkag{*=6FU$XYfwg_`vhBjG94+~5;`38BQzlimRm=j+cDvg%
zgS?k7hbT5Fp!8+D7OJMtr}6K0C!UsMlvE7c44?5)sCTQ6bA}(mhGh0csSA<|&EeH>
zd82HD{2Wwa_h0|@uW<<61gk4`c=~0_QOEcJUzp!{UAVjxYK81-uwoHr_qj*)(Bnr<
zK?k}+x53O_W{eG!67F{*wfc0i3m=e1W3|_`C!xL>wt2aE@VB>O+Nki7j3n#eTywt7
z?K(N~JL{Pm06?%X0H7lQ;PmR6aR7h>0l=0604Qex0GoHJ{h-eEF1Zs-R~xwcuij!R
z(ykRMA3ZBS0H9&|4@6T7VdwveC?8G4HUDos1#E`u`T>BrMPFOfTyeC_%*u$<ggxJW
z`U)G4RhLaP$Z1t`JJa~tY0mhNHGP^hK_y;rNryZZ9YNVlbwlN*GQSGRnW7Q~B0pIg
z>X(}4XSfk|JP%ROGLZ?L!j1j*&7Q0MmHxdZegDjMJ+AQMMWkufd)8OOc4m*0oZGG0
zUYK)z$I;b8R3`-kgk-jS>R&lz=<1P9rl`Kwsk!Cyjw8p@*r|S&btusQ&W8d8^l61*
z`{rd|i>-*lr7G+0-X41j=Zo9xvJ5~P*R@5#MGVY(U~LI9lLMt?wCnC{oErs_YqCa`
zhY)R<*<E4Q800u_-m-H0eFMF+R5>J}=3}5UQp^@^-FVmGs9mCI6N+&QPmXSB<*j|8
z?Am5o>ibw=M8vH+c>=uaLv|~gT*>Rvea;2uKX|OtPiz;LalXIaAnT1?ah4~t&#guT
z(|^AV+>R~><AheJ(~CfH7r{dRc+FUO)pt}A#s%fhxHfs9+o_H_ysvus+$)nf9UxEv
zPO7iwsfiF&I3sLE*|SI_<0&mXHy5M`OLmV8Y=AEjJW@Sbpgqd*vLsaw^|wB6L>YrL
z%qHDl{*8jnwwCkTQ)wdN`&XnjnmBtYkWBV%9#h!iQ#qF>+#+<JzOe5yB$Si&Eb5vS
zVehQs2PW0o29`|ez_xTGTOe{)t53%xJ6S5&WNW8Ej(yuVrR7soX!QZ=Ognl5vU9Z|
zH>0JrR<!pVZNg3qsBz5Er6Nfnl({*v^No1(=J3%R`?rTne-|l#|CY|#54t<HY(?D9
z#XS@to;Ba#6quG~d3fs)x2wUO1g}hiMNI#jrs$CcCTZ#Zh|wS&GgQ~YMmN51<FHqH
zc`G~YWk2#?C6$WM$&y+RgQ1b(qA7LMN}^6(ur5}i!9+cBOXjj<#5&#dhk~ly;nraI
z0pI?5x5ovC^y2k53;RPY{aqaWA1gciKE5UZ3<4=hUAHX6TvkC@R#q7dmH>g3L7=3G
htoHw7c<Sxq?i%#}8?I9MNv{onKGaaV{+>g`{{Unrq0ImQ

literal 0
HcmV?d00001

diff --git a/src/main/webapp/apps_extend/images/tableau-bord2.png b/src/main/webapp/apps_extend/images/tableau-bord2.png
new file mode 100644
index 0000000000000000000000000000000000000000..4a8e0686ef00a70c3a7e1f40e81cb4c460695358
GIT binary patch
literal 1087
zcmV-F1i<@=P)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV00006VoOIv0RI60
z0RN!9r;`8x010qNS#tmY07w7;07w8v$!k6U000Sga6xAP000mG000mGT*j@#0009+
zNkl<ZILnpLUrbY19Ki95OO{L`*^)UkP0U_gSCcJnn#_kKMwa+6#r;XPEPF6poOALZ
z$(&D;)xwrdP}(|K0s^BJ6ma4+AcYG3M++1Xi(UV>v~UsWA7}*(Zp*$qMa=YZH~HqA
zUvkgq<{oM7(Z+%|wdQXMYX@|NwS$_%nnBI(ngNkh>>ZkSbJaQ??Q0*;PF?Oy?yMwz
zT(L#f<Bwaz)0jL#jKKiCp$W_(na*JHQGo=Vq14LSA!c(ljjG!lmp-Z3B1!vCDo<Hr
zve8+^?>}wiobwfiJzsG5wt*i;XDAt7q{NZr+glG-))Lo!^uYxx&3;+huT}~`rL45X
z<*T>U{PL@W)|5}j&`#2>(^y7~9JSx&VDB_X`cr(>C-bFcmIm(}XDk6Z_wg0rv;eLL
z%4n{X(CgQ6;m#)9qlb7HFyQpsIcA@x*tNtF+bmx@GZ;b(PXI+K<r!;SzTs1&>&`>p
zxQ?d54O|-8%9Ov1zoP97dCaKC(j2lTI4pqX@FG=K0TitQRW<?qq2`oH0O#^)ZCOv9
zYcto}JDK!Wk@2?^jMyo6g!tT?;9@X~#v1$&&<LP6q(*C9L$%`tu3vtU_O?y5N0ju(
zibzE-!TbQxNf+O{)3n5v#k-GzeJZ6^05`=iR2cKn^*xW?^b)O28)zL<aK-lqL%w1b
zCU267n;DI|xe?2twS{D9-zuQ9$7O3+O;ukW)wTlkw>Q(&_6}EjcF{4h4P$s0bIFU`
zpLVh|KTcv{PTav0z*zzGM+9J&sP1`{#;(t(@A`<Q?!#Og-$Q3~2a%+TtN@lX<NWzB
zEr76`J1a?hRmz|H<FY+eM#U8cXInm`&bpO`p^Y@Vwqxiz$mQWZxa0#QVkWZpMp%B3
zKx2Cfn2^VUt<-mZN`vEde)B14b8n+7`ZhhGBHH_ob0=9sHeuuM#Q^-16?Y(jy*c26
zGG)2RFGrH|cxEDa?gjBCLU?Dx_>vL)sR-VgDT1kKCQ@_6=CVv>mMAy*rlj{zz9v2Q
zUh&I{<8?poDAm_(FEyNhsuQb~UO4~OiClV7qnP#eieok3J-hqBdPzLbi1I}R|FgBC
zHU9#gT7*~_X|E0d001R)MObuXVRU6WV{&C-bY%cCFfchSF)=MLHB>P&Iy5*sG&U<R
zF*-0XhQ_Kr0000bbVXQnWMOn=I&E)cX=Zr<GB7YXEigANGB{K)H##&mIx#paFfuwY
zFs<VANB{r;8FWQhbW?9;ba!ELWdK2BZ(?O2No`?gWm08fWO;GPWjp`?002ovPDHLk
FV1hSt?S%jU

literal 0
HcmV?d00001

diff --git a/src/main/webapp/apps_extend/images/tableau-bord232.png b/src/main/webapp/apps_extend/images/tableau-bord232.png
new file mode 100644
index 0000000000000000000000000000000000000000..cd913151a599873cff66ef550231a98fc52baa3e
GIT binary patch
literal 1771
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
N002ovPDHLkV1o85KD+<`

literal 0
HcmV?d00001

diff --git a/src/main/webapp/apps_extend/images/tableau-bord32.png b/src/main/webapp/apps_extend/images/tableau-bord32.png
new file mode 100644
index 0000000000000000000000000000000000000000..e5e0fc98ec1d94456294c3985462d49f75c643f7
GIT binary patch
literal 4904
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
QKMDZyFlCv_w<aO~1Cbj=NdN!<

literal 0
HcmV?d00001

diff --git a/src/main/webapp/apps_extend/images/tarte16.png b/src/main/webapp/apps_extend/images/tarte16.png
new file mode 100644
index 0000000000000000000000000000000000000000..69241868049b28d4b270d626adf64dbd75a3afea
GIT binary patch
literal 1034
zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Ea{HEjtmSpS?+AQ#RTNDC3(BM
zF#HF>1$&oI28wVNctjQhX%8@VJDF_<5-cllOb60n^B7`|tv$@Zz^v@);uvCax->Z3
zV{)QMo%?6^>2LkRHN`|zmI*itlr4<^%h6<@xOAD>^7-1i>(*#2yxo(h5Ubg#6Qr&4
zroHLWm3+QAZ$DqokB-~FNmo}tWSaI|zq|A9mABa+;j<~Qc>jCO_c_n!OrNlGnvTGt
zQjLzV2&X;{sYSKNH?*jjYigYMue*2Vgd9i5zOLD#RTtNoZHq8{t{Pc<PIq<hq|k-=
zX2Np?oHx0!dWt`rV5~7SJ8Y6kpm=52m!ed^JulxhBwt{5f3I=R!!BjYH^om|PJ3Ts
zk$vcrI>Xpmtixz)uR+ll(SzZ4uC~lu&|qir(NyE{>G_^tel_$TR<z0gruZvqcmE64
zSeGu5XP2hCI-Tx|t#tcf^KQcd*)>kLP5R$uTHE>UQur_9{(QT@9cM?6W<`-(?i-Y@
zKVA6tNZZa+$+|5U=1q>fddMu0>-UlDjz%vFX48Uxb0;aO)*JS{%l2tT><wP=+oaXm
z->x~pcgpdonXlHaI_lQA|6xsM)_>-RV_g>>)Hfdcczr{E*y4rf+pEs2WK}V(c*FM~
zH=N<wtVEqtc~3o0S&RBAWQNVnozi{pzFX-3)QDgCjq-cAZ(ne}!R8fk@vrPtSz(QA
zY4^_C{mUoGo3B-lnD=^;XP2|{(c)~AV{A7|zq9=LE^H7sqiLfO-@oUP653`5BP08k
zKjM(<T)gA`k7lOd`7sMbb&@%QBANC^FEumyxV6&qz|2^OdvOmg)hXD^?U>c@GP`qw
zxcy<?*ZeWh+zU4T6TfttZG%Dgwh6BSCUP)`PMUmXdC@z?k{am=J4H|2<9qUk#b@{7
z8Afj#pPrMQvqqv}<tz3wks5|ro6k)fI&wrL&)qO(yLVW6Qsa_RhevD=JVX}UbrIy1
zxz};>aNr7)=gKc{s;?-XBe#p&I5|aHv~W**=)&8RA|E~u78bPGz;<K%l%$(FP9|ZK
zmmRHIeAeA4s)YN?y83RHf1wA%W~xP=y;|*?c|CBp2*0Hr-=~8XujE;}*FJl-r^lu^
ze9m+GCAURdijNxjUWr*;s+&Gha>n_jhsI^;-{jBy)}C8pwALhWc2~jMS&{+skKVW`
z^P5}drKrQNVA}=2yrWv;8c~vxSdwa$T$Bo=7>o=IEOmj%&^W}<%*x2X%E(;Xz{twL
jpxiNeDT;>N{FKbJO57UQWNu3WH86O(`njxgN@xNA^3c2y

literal 0
HcmV?d00001

diff --git a/src/main/webapp/apps_extend/images/unchecked.gif b/src/main/webapp/apps_extend/images/unchecked.gif
new file mode 100644
index 0000000000000000000000000000000000000000..43823e52db80e04017b2bc1e031bef2d82c67e6a
GIT binary patch
literal 941
zcmZ?wbhEHb6krfwXlGz>`0voy-@k72&h=Y%ZQ8zP%g((!cJJT4@8F*OhYlV-dg#cp
zW5-XNI(_EM*|Vq5Up;&A+S!ZOuUxr$<?6Kymv3CSa`V#FTUV~%zIx-%jobHb-@bF}
z&i&hW@87w5@9zDF4;}*1<A;wPJ$&@|(c>qNpFDl?^y$-QVDS9;ix)3mg1{>fcnt(^
zUcUi>w{PFRfB*i&hYz1Vefsj{%h#`8zkU10FbYOPfHonZ_>+YhWU>y30Obh=jxGj9
z4jGRP3l283GHb+~D0p~)!9>Yxj)(FAXDKG5ESZ1@4oAD0WI9R=9v*6Ak!N+{dHKMR
zl}FY^$AdFLm4!>ptVN@75u<Mhi(bZ$hDWSC5<+#C3@$Vt>5?#BR20ya;KC(goN;9V
qqtnW!)kYaNB(j|}n>i$H<|I5^)XKF~L^CSn=7x7MEgZ~D4AuZjXTU80

literal 0
HcmV?d00001

diff --git a/src/main/webapp/apps_extend/images/volet.png b/src/main/webapp/apps_extend/images/volet.png
new file mode 100644
index 0000000000000000000000000000000000000000..b398de11f685a019433862770d1b29e7cf09f6a0
GIT binary patch
literal 229
zcmeAS@N?(olHy`uVBq!ia0vp^wLr|p!3HE}E)R?WQY`6?zK#qG8~eHcB(eheoCO|{
z#S9GG!XV7ZFl&wkP>{XE)7O>#8nc)nt0n9AN!&o85>FS$kcwMxCm!T&FyLXXjqOam
zDJJK-bS2X%Vb1&Np)smqJ=^{=Tya?Yl}qY<gzB|_pQgXeH)Ec1PIkBaukB$U#7wU4
zY0Q|p-LCn}=bFta@mE5>n0;*y`|_>oa(3I9_XRKb?pl;QzR>Gz4q==vw_p@o!F>P8
SFX3pQ{S2P2elF{r5}E*dPEw-)

literal 0
HcmV?d00001

diff --git a/src/main/webapp/apps_extend/images/volets/volet_bleu.png b/src/main/webapp/apps_extend/images/volets/volet_bleu.png
new file mode 100644
index 0000000000000000000000000000000000000000..79c65942e66d0582cb3cf0cb8fe2d378633fccb9
GIT binary patch
literal 1105
zcmV-X1g`suP)<h;3K|Lk000e1NJLTq004ae000UI1^@s6nWs@)00001b5ch_0Itp)
z=>Px#24YJ`L;&Cb-~jhqtjoUu000SaNLh0L01FcU01FcV0GgZ_00007bV*G`2iOb<
z2pkZ{F71r~00YrUL_t(o!+lpvmK-4rljtMmv^lM^0AtD2%Pe}Ts{#LHSrC8zYLQqZ
z)*?vU=S6^vSPLMD9|_*yY|ZoRXVkg-_k6e4{T4tjEE2qX&;M()_i_=xvQ=vqu+~Z&
zY~RbjUVqNS@n!tJ?XUKSw&wm{ov&f{o*#bf^}om;hmHB%F_G9cSj-r$PQLfY6>+hA
z1OxyO(SH;K*}MIq`l|ZaZ)kgYJ_+7$ka~dtaqlH~_VU_g*r>B?jR0!zPNTebr1Qby
z^9e`{_bUVG^OF;R=ghr<5M;i8?X!1hBiXr>u+KR86cr9r1S?W?CT<?ww<m8M*Ysv>
z=PMRnufu?+zVdQ{m+!NH<;A91;Vv2kXh;1xSBBIXHo*8=!s_c=8w6f;szJz17{TpN
zZJjPj7c49vR33Debc?S9m8^BtFlc)OHGs^Hapzr8JXM31+hQW2w*;)0r7jGrGi)Z9
zol`axB+=+(!lnWi2yg>ylo}s9b_X!K%=@SEOiu?3icEme5PR(l-Lz^OkN@65)BnR>
zvi;{!T48TvRE`hAsLiglqE%JMVuozQTHx#fWgXl<9v@aO?u1=usMD2-BpdXOqeiXg
zV8OarNrmO2iq55h5IyPb0CTiB0Gz2R9!`3@6rI$o55Ub{c!8h>nvCX|5Q!tiQxHDP
zMlwT}Pe*0jIwMtfnGB|B<p5!2Pi2p>n%$h~`pafp(-AeNJ4QFWkKrkDKJ$YCK1lB3
zkTPGqwoZ*g&zM)S*vQhyXqdj}#jCoT-x%cKHSeG1(le%Boun~#FOJ1XUvmwjILpyU
zv&3wEh`dxv?`9l<<J97)<9Rl{g_)>Z0O5=8<#c<hOBYc>Y6_=V@ezg?9H3{2p+z0-
z9Qg#W@u7kVFGW+{{dmgdx&A*$_HQ)d$LJ;v&@vSo8JbBt^iJ|~mi9b4G=GJY&fI2`
zfE7kwC>fYzCe!`CYp)iuImJ{in}NhcnM-vxxHy0$16SS)==$`QuqTE<o|F@I^Qci6
zisEH}AxCD;yenn8%FnEZgRzyen{JoPn#w@DXZpNS=}d#78&`!seyK+P$L%bXxSD!3
zH9x<HfaXj)6eUyWu5DU5Hw%da6rubSAvHa!MH>71q$xcgW*@pmdUc98Mv6Yf#5;61
z0QIcPhDbeh_o$fyG1H$rPl|#|B}}+JikSEawA>DrF>b}<vT3Tc?(g>=OI_f2nQ2L(
zvqsHPo@)(K%+({=g^|28?VEz0#%)IX42D9_vr@O_=!xr<5Ld!ap@|$JS#!o%l!5sl
Xg11A}G(4R700000NkvXXu0mjfum%f0

literal 0
HcmV?d00001

diff --git a/src/main/webapp/apps_extend/images/volets/volet_gris.png b/src/main/webapp/apps_extend/images/volets/volet_gris.png
new file mode 100644
index 0000000000000000000000000000000000000000..2e7d095f6b94fa96bf37f38b5cf076239b4ba9e7
GIT binary patch
literal 1081
zcmV-91jhS`P)<h;3K|Lk000e1NJLTq004ae000UI1^@s6nWs@)00001b5ch_0Itp)
z=>Px#24YJ`L;%?U*#Ox9@xqt@000SaNLh0L01FcU01FcV0GgZ_00007bV*G`2iOb<
z2qG45h*QM?00X&6L_t(o!-ZJUk|ZGrOX&aq=Inzg5S`ksy4{{06$lXG5rBdL1`!cp
z1cHIc&-)*P`944f;>*tr#An|}Ajq-zW4@07+jl{N-#6E@eEEX;_XEka9r(!Sd26lN
z2!i}pObqZdUz;z!o-u9x7vEX`#j(-xbu6F$n~%%qw3*Mxr{i1s8y5Sr|5Z)_KokH1
z00;pT=8pjFr}Kc^u%6o%&Yk;I`+ofvw>h5mB-_!<^V2e?dAG>)ai6i@GGh{EcyxaS
zNNk=1B1a4hBOW~1;ZXYAp`*a_PKHmNHG^pHC{XD?)w2LFx3iEYXH08B#UBYtEfS}}
ze8*#-6LMwZaAo>{u;8ksVmQg>PJ^}_I-s6yGJ9s5;(<k3u#(})4trJY!hafAuBxRC
z=fLHE1AxjTVHBBW$&BTIW-Dlds8OUNTiFmjXS5z<FA-3gbj;eZPM4jzyQn%9R+uu-
zMpEybo-TX^d3E)wqR}rShpa^JB9(O!$DyzCseq*we{V+iBul3d*GDEX^7yN^Sy<}}
z&rG3V{-|YK&AT72y`0Qxd*d!8t!|!WJwTFrr)C$(Y#RM@V9cb@#8(fhR;%pJS6Ul-
zp(qQpn4x!GOO%K5N-|`FiGwK)E2u!1CxgXU1VI(OGZQjL3gL(FnZg}_8fG$Pp!NAW
zpADawgQ3wu3yP=IX@K<l;z%m^#I$Ox&Dd);aL&0wReWfKQS97&y4(I9;<8wzF>ctp
z`R<ffu!pH|b=sJaoD?g_DBDHF)CfIZ$xFa!=ww1Cmt?a?ZXq|jeKi)_#FMGDl|?<Z
zlrCY^*-NE%evs>)S|+?MEkXR8?5f$UAAZ&Oi%FcRls>w~y5=q4V}kmvIXp?DM_7eD
z#?>H78=uxWYTAU!%zd0LAt#OYKi$qvuXAX3wOAB5=L%E&kt4?o?4EEHGxXY17dF%l
zCTDHSSmErK6<lA(k~u!&DGr@<H^eXD#m6MoCBA4vYl`9J(as5{ps;By(?lFNZd*OR
zaL|U+o~+09tmfUG8;kzVn3B&Z)?7!E<E=tv-84Yu5`OCnqe~C7>brGHJ54e%N9$2N
zMp(OjXwL4Z%o6iz)fs#0>FTm<5cwp=oZBuWk0#={VqP(EsJ@!%gx!^8N_RtO1<ckh
zY;%gn>w7>Pfn%Mq#7^rTV-|JBfic62TJPLd9Ddsn=6&wm^k))_ZI#sD<KPgAbgYg-
zFMXp1a{qsl>*{jVqWt<%4cT-^*FKWkU7h#?lD`VvW81y&00000NkvXXu0mjf_wor#

literal 0
HcmV?d00001

diff --git a/src/main/webapp/apps_extend/images/volets/volet_marron.png b/src/main/webapp/apps_extend/images/volets/volet_marron.png
new file mode 100644
index 0000000000000000000000000000000000000000..fdab3b82693548e1dc5c6f5e8a393dc078bbaa1f
GIT binary patch
literal 1011
zcmV<P0}T9$P)<h;3K|Lk000e1NJLTq004ae000UI1^@s6nWs@)00001b5ch_0Itp)
z=>Px#24YJ`L;$z|s{oI2-qe}^000SaNLh0L01FcU01FcV0GgZ_00007bV*G`2iOb<
z2q7?*sD=9g00VPLL_t(o!+luUapf=!12nVsq=)q16ZS*mP3L9&4ol_<l2G{j^G_rZ
z*FpV#FQo71?E&HYPuo*29N^qNChPd;xzB;%dGbNvJX`EO0G_khbwC0q>A;5#A?H5V
z?fJ4h{JXj$MsOQWw)Nfb@dTSJ5ZC=v{12ZAo`V~Xx(7Yx?jP%?>Bhl%x(>!m=|cLv
zFM`nf1L%8%?L`2DE<Ri;)2ctoWC3FpRFSXpJ-t(5iKY!E2c&z^Rl8gfdUgZ%QR(iW
z(Bi`<I@`(-QujN_0z*3&|MhMXEP*psGV3kC-R=A{9<Zd-cPS_9x|w9KrOkHj$qs31
zTCQ9bpml&%crXPZtgv5AHy03V?z3Cf$CqWZTMFFV)^=qnJ@M8<jv|Ia0e!ZO*}UXC
zON8`fB%l!x85v^>S-KVYjJTY(l2WgdIu%Idx~mD^lBTq-5qh@T-)gURAf+xLy-<rD
zqzW(=k=^neps3o51nXzF1m*Xic5dxq7JyO(YpFt6Co@2mhZ!K^=8@1%$>Gylf6Ph$
zYVhjymK@|F9V-B4ui$L&19Uz4%q11}c+u5%8>2)CdMw|&3fY)Y3$oH+$^NRfQClvf
zAX(lkFg>hM4JyUOw@H|lD`nYr^z^--Nsq?Kk~o!_v(Jv1u-dw6B3SUt1`>WT1-5E^
zwyN-eUSS-}Lrti)WwsV9>aB-zZVib^wE~b<JSsIpc<&dA&HJcCvLU>Y>7nY3H=bdo
z6=>;6XC4dAI&#%~WV+6%3Xzpx2y>2^of=Tt<gqXeEi7XU9&y^QzAo3#x>%rFs-6u6
zj6GbV6@!-?J^!Qk)<wq&^{SjR$fPqqQeOE7g9$ScfoxSKc8=X*OYK;dZfV1>vE<CU
zH$3&;r{41WJY@@4Wj9)RpBf3~IBkqE#Bf|j#<;b?$M9R{^m@%zzA-+Jd9&ml?_%O*
zAm-AoeB?~?H0i##<Z-S@?Pg;If3<$ak*K#ze31C!02gw%p9yx7xt((4WZj1bvA~Hd
za2x}wF;S|1YIZMvbWSYu-|+7<T$Oi~Bf-djB61p>9Sg;(T;1RFM^`G2A&xL6Nvden
z#{d_-Dws|XV{jzKi_f8w2gAaa`F#kj805q;<6i;h&xj%O5tid5Q4?3mCLx#oCebUL
hJZ`j%v3vvt{sUq6>JlLUj7|Um002ovPDHLkV1izA*-8Ka

literal 0
HcmV?d00001

diff --git a/src/main/webapp/apps_extend/images/volets/volet_orange.png b/src/main/webapp/apps_extend/images/volets/volet_orange.png
new file mode 100644
index 0000000000000000000000000000000000000000..fa430d5841f96ae5c6d687e5b6368ca866cb2b0f
GIT binary patch
literal 1089
zcmV-H1it%;P)<h;3K|Lk000e1NJLTq004ae000UI1^@s6nWs@)00001b5ch_0Itp)
z=>Px#24YJ`L;(K)%m9#Eoq&@7000SaNLh0L01FcU01FcV0GgZ_00007bV*G`2iOb<
z2p|!|+N9(F00Y5EL_t(o!*y6&awIVff<AU`o0E_a>w#pawzjHg#&$~xAsqhxKp+7S
zBmsW)ED{6(p8v!b&p6K@@O=OP@awfW=bXn_M}k~yKc3HZZmgkwS8;Kj<MASX|N1*3
z)_f-q64d++%s4yda}MeqGp>lozDJzx@#Z<XjtDI6`@;4!yb2pwEV<?zSU8pgCtIVe
z8D^}pGe7_U383QHezj-l{3OQu-0NF7zXufm;*;$avG#L3br1o<h(!<*xEUZp2<mir
z;*yhS1RW=l?{_K|kDwxr1f|Zo*Fhc2+0;1Cr5q_TmeSIcGTO{l5l6l~NWMXo6`ffS
zawZpDQH7BT6fZTSq<jXh=n(&`gvJQPNKn`55IvkxD{h8f1T=g_P(mRD1sQM?ijKph
zh`ET#DBorn(T=YQ8rDSNaWi1ySlm+K3dUZ}?CV`A<`Khp;iY_0f-`{?S#fF$1e#fN
zCR@QB8ZHthanw|XEEny<>N<4QOtX-(6+B=uWAn3u5EQ^72|MA1*BKjv^<IObn~5qs
zrlKZIBx}Md?4^5s#sMsr^m8LT+wH47*^10809`^e*bzzrF(fgI#d~sC1!pIAi4M?U
z)@4ZVs85Mf7nc_&>`QWyY{#H6RP<=-Qiesvgt<t{Il7!vO~%#PnQV+8%A?eXh<wDS
z`6gN8sgBkux;SUHN@_WZVj6jmD{lfi(M^(kG;)O;UDuK-OZ5!2Y#bLnIvr>QVRz0w
zXE{ix;ayS|HxW|3f)La#z;rTqF0#5F!Qk*ct-|z0ElAO|at1wo0GPS(B1BIxw!Diz
zmh><HvRTDx$Z%$)78zJh*Qlh2uq(lm^#bA8n{U1(YmAJ=_RC}Bd#EBcxy)j=YmFCH
z9hk<+<i_Q?WL0e@`ItnV>y109QeVkNs;RY`UoQJG=KVwYzA>9Ba9T$`OpBGBz;ot|
zRIh`&nlJmcC2>gge@fvS<knQ9mBszAV-V*2!Y!=^HLJl@XDYl8Rs#>2wdAJ{z-=b0
zne=q2buU`A;!?G=E8pEMC`ZjTKxGkWTj-G)%LkMxTAtIdFXCf#?&rLkSzI|wU26LV
zBD;C;?h5xTR%AWEt-D8b^;tJ*=+?}2i0cwc;-1kOI$qfFbrX4*S9b~*yVhC~eotSs
zhI3znEv&m=Btg2PcR*>^k?Gq-Tn>KBvt_hs&Yosm+<R~ad;N_;!v(It1?bv3hDzRt
zr`6Ndoaffr7}8FXILTR_s+EF9s)5Du9vp>X<;kad(CYCAexo~fM8IG(00000NkvXX
Hu0mjfj~MJR

literal 0
HcmV?d00001

diff --git a/src/main/webapp/apps_extend/images/volets/volet_rouge.png b/src/main/webapp/apps_extend/images/volets/volet_rouge.png
new file mode 100644
index 0000000000000000000000000000000000000000..d2e3c8930ab3ed4b7e34593f6eae829dc7d21f8d
GIT binary patch
literal 1075
zcmV-31kC%1P)<h;3K|Lk000e1NJLTq004ae000UI1^@s6nWs@)00001b5ch_0Itp)
z=>Px#24YJ`L;(K)r~s%uL0j<v000SaNLh0L01FcU01FcV0GgZ_00007bV*G`2iOb<
z2p<)kX-dHW00Xm0L_t(o!*y6mas(j^lgR&{llLhHjFC(yRg>;vF<xac`~^f3Ai=fj
zN$jx&)_3qH=T^<xJ4_C_K;q6V)>z5?xo5!7TLiGMR>}I9fAu}OEU4x~o}V4>SMNS&
z&Vw<2eQ@8wmA?9zU&B`V-hcHon^Cruu3Uu3EqD0A*My(yvj9K<0M>K=sh?+DJBYE$
zR@X2Iu*S4E)Bsx^SX)%Gwdc3^7Jy!8-~8q1eU=CUb?4&vR+YoPJ<qLK&*L$bp_0au
z>!tdq+99_>t&7;p;vAMF4fle&XWIMGi+oje%{m0c4*H&ROL#(1!Ym=mDQ)DLXZSzj
zrLZDXiyDi$)9eh(oGfHSPq6N}H(@vor_9cBuG=88oeK-n-B@-2mdt#jLvyhHivs|*
zAFr;8Bz&sx`pWj+0^lgy)M?wdQ+v5W?I?b2E~`(FGa6e_d8X3jFrA=n8u{T3H^|lz
zYz4hKRO_zulm*hLb8?F<KyOi$J>TJ?&2vN5Q(~G`?K*o{c*As#<17l%5`yhy53VEw
zTZX^G5$duqco#jD!>jJEz%PSBwd~vngH8_bRSts8_5g7ti0}fMV<MmSbRwv#44wq#
zz`A3H9Hkfm>lD#dQrTnPN}uQ)$aZWz>t`}wr0dql=q1q(X1ZNLr44Vd5ggvD2NS1%
zFe+TL(YbY0AI-Ouluxa?<;t-Nx`HGPqcGfZ9O4aI)@ToB5Lm(Xn&#7HI5RZu)~#?A
zVWDP{K2T}6t57X)TN!LlC6t^=mIN5wz+vA&{RUshH8OawfX`%7^#hU(vEuN~sZ0)t
z(e$G#-e<i&y3dQOS>sttp6Ah)Y5MS+eqvNd*S?ZgNrwXrh6uOY37*1}<lDN0FH)>F
z!oi3igwF%ZB6r@h!b5|QuINUJ<lF~RPqh=H5uHkx2U4AQ5@+pyRGG<>9;Uv@m_k=g
zNjiMANQ>US9IRV|mG_WtQl9qc{G<+gS`PIM@@>!E!+<jdKXEjW>C`Z-O!!&2LCXC?
zQe!Lfl4J9@J1}}aFQfdr>v>%|12#g|L`^~7KiE~G*CC1gIIo5Az7v_C?xbuH<N6qf
z-b<Md`@ba|p`-_qi3l!--g1bS4_L)_@7H?+(gZE{AtyRGyhjZx`&4qaivULZry-$-
zB`K+gj>$k;4o7mR9hns@|D{Z)r^67yucFSSQwDFL2;Z%NMq2fHR`UknKOXq+ADqpU
teRb@*YKB}F*=V7+Xv7g{4V1Co{|Dt$FL%VrH3a|w002ovPDHLkV1i~N|7HLH

literal 0
HcmV?d00001

diff --git a/src/main/webapp/apps_extend/images/volets/volet_vert.png b/src/main/webapp/apps_extend/images/volets/volet_vert.png
new file mode 100644
index 0000000000000000000000000000000000000000..a464ff62820a9638fd6173361d615caa500c239f
GIT binary patch
literal 1104
zcmV-W1h4yvP)<h;3K|Lk000e1NJLTq004ae000UI1^@s6nWs@)00001b5ch_0Itp)
z=>Px#24YJ`L;&Le>j36@>3)0w000SaNLh0L01FcU01FcV0GgZ_00007bV*G`2iOb<
z2p$(}d>X6(00YoTL_t(o!*!TJ79$}DMC+5q++vP1_rFoiLPfwNi@Z*YfKU_|{`~uE
z2n8r26y+IMzatb#@KFRQLu^?>1d3eW?}|<ced507*b4N~*&pqF*S&N^^Oe*~ghG-2
zv32C0qc1|J_!Xf~@dwZ+LLt)bibd#CV*>Yl5kl3*XX#1b&z`P_*fLzdtAERvdY<cF
z=B(NH-1QPyMqWaaBnzF7B`m9cyd+r5OGdfJNV({IA%s%VesotX@;7^%g}mf^%pHBj
z*R6>2X6u>yk38LKd2$~6>OSh|G1$s8I*|TT-nDpo=)rrxSA2#iwwH=r=jOsIrY<qN
zD%LaHxSFHIstJwbsFAQU$k&uxz|(#S3@*tl5pL(TmkbGq#84)C|L{x_J%C2#bVCRl
zU@6EtL58}qC^xTBZm<Oh?<>G(iz}*!iekoexD`A<u|0-M$eIkgRl)Jet}9n=+hxZ#
za>0_J$G2m+Ad8H7KhQWhJqYdvSP*M{lX7E&lk8c?=ew7B0;&YTn?c;eegVOb!^vzD
z+#C1#eHbs3=fMl(T&AeJw(uyd!kVTqS@8p$@4V$MPMq;tF7HLIzNm2H2+bnO;JZ-n
zOVe%%+tkOYu2m^5(2N#vD03&6+ELD)QB9Nzo;<!Pzzsq4M%GimjY5|924|<(oBLX~
z+)DP{*YfUajU<Og^BzFdWCt1xEGZIL9;`sE%Ka`HE}7)etJOM*vue}w?37qcRO|%!
zTQ$%R?WFpO;6cc(uy2*&-dZlw4{P1Jf2z4uH0u2tA#ev`MSoRSdTVV%R16fxF*QB(
zYCqq;XHECr)Blhw$p!Kqo>tP^NP!A<=vHY<)!R2cL{6{9e!%hWD_tD_;P5e3@THaR
z7WMn%-p^h7z27!t-jUEX!;~bU_k8%C-`<t}Hi0(bQhPKn*hkT4TWtdF4$)_ncoO1C
zDlWC}KJ*NS+{msBIz6pF6RJII%&rUHdcDt}e2q}2X#HTTJ0tYY?w*56jibHw47*SM
z>MhXBd8j1!BB#tAeM(7?GJsbCYuCdax_7Iiiiem$=w`E9Jv9oxS2_3Il$Vm7b>Evz
zJ;`q%j5yhPu8Z{=2l{niQzsG@sOVhfdHvzGnPbntxucmzcXnwP;XUZR<KAKeb~<sn
zx-!~4#UgIA1!FpfFW1HW9N$K3z7p|sZ7n@xj27b>#T^)S`8(~nB-4|f{2lG&IwK)<
z;PRJSg!L<ZjBj92vD%P?`kc{#Vn2<$4y;Ho^}^-$lC|f5jTTDEgs(On){1IOjr1R1
W4It@-e<!{G0000<MNUMnLSTY%aTvz{

literal 0
HcmV?d00001

diff --git a/src/main/webapp/apps_extend/images/volets/volet_violet.png b/src/main/webapp/apps_extend/images/volets/volet_violet.png
new file mode 100644
index 0000000000000000000000000000000000000000..b21786213a8fce22a86260b88cd70880dc2f818a
GIT binary patch
literal 1106
zcmV-Y1g-mtP)<h;3K|Lk000e1NJLTq004ae000UI1^@s6nWs@)00001b5ch_0Itp)
z=>Px#24YJ`L;%tNq5%K>i1Eb$000SaNLh0L01FcU01FcV0GgZ_00007bV*G`2iOb<
z2p~HcVQn%100YuVL_t(o!+lpvawQ=QlU#GE+$r~8Y8GHDL08@)>88P7SvLIn_bXO`
zAgTzGU=hW6CJN;Gjv|T$66=5QoCOOkfGiYE9*Ne$z2@?(3cy~gwYOmU!={?^)po3P
z)YgeDlUTA`7q>3Aqsn~!ibI(n+yCunuNN!Mp!(d3llw;Ovz31EiC@QT_8&V;=JC&b
zId&HwKMMdTfe<7C03cvJ5fA}tJz_mV0>Hfo=iB;7w2-xxN2YDx`?=)wv2#@MzEXh@
zAkK<NXw<?tb8P^^_W9}fq4j->P}>&5cw!@^|A3BO*&l)@jN==Rd%BFK=*Hm~HAw+8
z`o6ezdOqyqeyxs)xN{H+^e8(qG=Lnv+F_C*fesJ>(h3DfKKHf=utikVfbbj>dKDU-
z%7|_7bs!cvXn~>yMmw+U<ZMVNMDpzEqYT7(9ypnG|70Mb0|Zdm(;GJ+XbElm17zdz
zjfa(EP0|s?p(9NfN;;R^2)Pw5AspnJWJ0I1**e6~OzAGs>ro+>lZUC+jY@4j4KSsX
zhHaDMfg-0GtaA9~7Dgt>T2zFA21GBEj+=IDd2^zMbrp1{;ELAECeeuPfU^Q@&Z&p3
zl&DgYVmRLPsZ6$_2Uz|%2FpQn9BSNl;+P<62#Mg6Q-#i!xvDRH!jlR+&M&QZi`W(T
zS@F8!^^F*A76kJgka3zo$=VMsZQc%a*1Y;_gz>5*lTSVEatQP8)r?q2TIqx!Kk*q3
zX&6A7BYb4vmIoW>ixeAW)e^oDAN26iM>S`rRT%4>Y!G+#c%<d+$@GS0bmFJu;qVnV
z5E_7N*0R7=6qx4Y>RV$dW%~>Qx?1g?mY%+Mqeh1E=%q%~o&-AL&$y7zJcAJ@m|fsA
zq&W_=6H;Aux@w1bc#imEg4`C->pZ7c8M%=%x^J&}_uujPbRVzk7p6MCc%}DXL|rwr
z2Z@bJT@FPhA(+To5pj2p@ZlN(c!rh?=ofR2y*XgFb*Dc{Mzhv4H_{}%Tu<T_-!n(f
z^bDGRe~e2_53tP&GtctLm}tq8Um%q8&keG+kKSgPNgv=a1_pg(^O?0`7uWU4(5as0
zH9=JKzrOop(_LIRZc5=*WHBqu-0ic1SNI*s_fCj2OJoZ(7BRM1OgMg1xOhiH^P;gv
zgHKnpv}={!qU6Z@=!b0C9vo(<>j>vH_v3OR$cEQlJ}2(bXLmsbv_G=ulwk9gcu&Xp
zoBG7K-zz80NAG~}K<;5QJ@@*%<=oKV$Hi&Orrx1bjO+1}u+zhJQR+K?@tFhnO=h3@
Y4;SDyto@pxE&u=k07*qoM6N<$f}Xt$i2wiq

literal 0
HcmV?d00001

diff --git a/src/main/webapp/apps_extend/images/waiting.gif b/src/main/webapp/apps_extend/images/waiting.gif
new file mode 100644
index 0000000000000000000000000000000000000000..e8cf474009febe4953c2d0a9fd2065f51292b083
GIT binary patch
literal 25224
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

literal 0
HcmV?d00001

diff --git a/src/main/webapp/apps_extend/locales/fr-extend.json b/src/main/webapp/apps_extend/locales/fr-extend.json
new file mode 100644
index 0000000..e9c9c9f
--- /dev/null
+++ b/src/main/webapp/apps_extend/locales/fr-extend.json
@@ -0,0 +1,3 @@
+{
+    "basket" : "Panier"
+}
\ No newline at end of file
diff --git a/src/main/webapp/apps_extend/panier.js b/src/main/webapp/apps_extend/panier.js
new file mode 100644
index 0000000..3594271
--- /dev/null
+++ b/src/main/webapp/apps_extend/panier.js
@@ -0,0 +1,683 @@
+/**
+ * @brief Supprime un élément du panier
+ * @param evt
+ * @return
+ */
+function  panier_supprimerElement(evt)
+{
+  
+  
+  /*var    element;
+  var    panier;
+  var    ligne;
+  var    i;
+  var    id;
+  var    identifiant = null;
+  
+  if (navigator.appName == "Microsoft Internet Explorer")
+  {
+    evt = window.event;
+    element = evt.srcElement;
+  }
+  else
+    element = evt.target;
+  while (element && (element.tagName != "TR"))
+    element = element.parentNode;
+  if (element && (element.tagName == "TR"))
+    identifiant = panier_getElementId(element);
+  panier = panier_getPanier();
+  if (panier && identifiant)
+  {
+    for (i = 0; (i < panier.rows.length) && identifiant; i++)
+    {
+      ligne = panier.rows[i];
+      id = panier_getElementId(ligne);
+      if (id == identifiant)
+      {
+        identifiant = null;
+        panier.deleteRow(i);
+      }
+    }
+  }
+  IHM_InfosBulle_hide(evt);*/
+}
+
+/**
+ * @brief vide les éléments du panier
+ * @param oBt   objet bouton Ext, permet de différencier un appel utilisateur d'un appel programmé
+ */
+function  panier_vider(oBt)
+{
+  if ( Ext.getCmp("gridPanier").getStore().getCount() > 0 ) {
+    Ext.getCmp("gridPanier").getStore().removeAll();
+  } else if ( oBt ) {
+    Ext.Msg.alert('Données choisies','Aucune couche de données n\'est présente.');
+  }
+  
+  /*
+  var    panier;
+  var    ligne;
+  
+  panier = panier_getPanier();
+  if (panier)
+  {
+    for (i = 0; i < panier.rows.length; i++)
+    {
+      if (panier.rows[i]){
+        ligne = panier.rows[i];
+        id = panier_getElementId(ligne);
+        panier.deleteRow(i);
+      }
+    }
+  }
+  */
+}
+
+/**
+ * @brief Visualise un élément du panier
+ * @param evt
+ * @return
+ */
+function  panier_visualiserElement(evt)
+{
+  var    element;
+  var    panier;
+  var    identifiant = null;
+  
+  if (navigator.appName == "Microsoft Internet Explorer")
+  {
+    evt = window.event;
+    element = evt.srcElement;
+  }
+  else
+    element = evt.target;
+  while (element && (element.tagName != "TR"))
+    element = element.parentNode;
+  if (element && (element.tagName == "TR"))
+    identifiant = panier_getElementId(element);
+  if (identifiant)
+  {
+    try
+    {
+      IHM_Fiche_Show(identifiant);
+    }
+    catch(e){}
+  }
+  IHM_InfosBulle_hide(evt);
+}
+/**
+ * @brief Vérifie si l'élément existe déjà dans le panier
+ * @param identifiant
+ * @return boolean
+ */
+function  panier_elementExist(identifiant)
+{
+  var    panier;
+  var    ligne;
+  var    i;
+  var    id;
+  var    bRslt = false;
+  
+  panier = panier_getPanier();
+  if (panier && identifiant)
+  {
+    for (i = 0; (i < panier.rows.length) && !bRslt; i++)
+    {
+      ligne = panier.rows[i];
+      id = panier_getElementId(ligne);
+      if (id == identifiant)
+        bRslt = true;
+    }
+  }
+  return bRslt;  
+}
+
+var lastError = [];
+/**
+ * @brief Ajoute un élément au panier
+ * @param identifiant
+ * @param titre
+ * @return
+ */
+function  panier_ajouterElement(uuid, identifiant, titre, record, bCumulError)
+{
+  var    panier;
+  var    ligne;
+  var    td1, td2;
+  var    img, inpt;
+  
+  if ( bCumulError == undefined ) bCumulError = false;
+  
+  if ( uuid==undefined && identifiant==undefined && titre==undefined && bCumulError ){
+    if ( typeof lastError == "undefined" ) return;
+    if ( lastError.length == 0 ) return;
+    
+    var strMsg = "";
+    if ( lastError.length == 1 ){
+      strMsg = 'La couche '+lastError[0]+' est déjà présente dans les données choisies.';
+    }
+    else {
+      strMsg = 'Les couches : ';
+      for (var i=0; i<lastError.length; i++){
+        strMsg += "<br/> - "+lastError[i];
+      }
+      strMsg += '<br/> sont déjà présentes dans les données choisies.';
+    }
+    Ext.Msg.alert('Données choisies', strMsg);    
+    lastError = [];
+    return;
+  }
+  
+  var DataRecord = Ext.data.Record.create([{
+    name: 'Data',
+    name: 'record',
+    id : 'id'
+    }
+  ]);
+  
+  if ( Ext.getCmp("contPanier").timerCollapse ){
+    clearTimeout(Ext.getCmp("contPanier").timerCollapse);
+    Ext.getCmp("contPanier").timerCollapse = null;
+  }
+  
+  if(Ext.getCmp("gridPanier").getStore().findExact("id", identifiant)>-1){
+    
+    if ( bCumulError ){
+      lastError.push(titre);
+    }
+    else
+     Ext.Msg.alert('Données choisies', 'La couche '+titre+' est déjà présente dans les données choisies.');
+     
+  }else{
+    Ext.getCmp("gridPanier").getStore().add(
+        new DataRecord({
+          Data: titre,
+          id : identifiant,
+          record: record
+        })
+    );
+    Ext.getCmp("contPanier").expand(true);
+    Ext.getCmp("contPanier").timerCollapse = setTimeout('Ext.getCmp("contPanier").collapse(true);', 3000);
+  }
+    //windowGrid.getStore().add(r);
+
+  /*
+  if (panier_elementExist(identifiant))
+  {
+    alert("La couche est déjà présente dans le panier");
+    return;
+  }
+  panier = panier_getPanier();
+  if (panier && identifiant && titre)
+  {
+    // Suppression de la ligne vide (compatibilité HTML4.01 Transitionnal)
+    if (panier.rows.length == 1)
+    {
+      if (panier.rows[0].cells.length == 1)
+        panier.deleteRow(0);
+    }
+    
+    ligne = panier.insertRow(-1);
+    if (ligne)
+    {
+      td1 = ligne.insertCell(-1);
+      td2 = ligne.insertCell(-1);
+      if (td1)
+      {
+        node = document.createTextNode(titre);
+        td1.appendChild(node);
+        td1.className = "visualiser";
+        td1.onclick = panier_visualiserElement;
+        td1.onmouseout = IHM_InfosBulle_hide;
+        td1.onmousemove = panier_InfosBulle_visualiser;
+        inpt = document.createElement("input");
+        inpt.type = "hidden";
+        inpt.name = "panier_" + ligne.rowIndex;
+        inpt.value = identifiant;
+        td1.appendChild(inpt);
+      }
+      if (td2)
+      {
+        td2.className = "supprimer";
+        td2.onclick = panier_supprimerElement;
+        td2.onmouseout = IHM_InfosBulle_hide;
+        td2.onmousemove = panier_InfosBulle_supprimer;
+      }
+    }
+  }*/
+}
+
+
+/**
+ * @brief Affiche l'info bulle visualiser
+ * @param evt
+ * @return
+ */
+function  panier_InfosBulle_visualiser(evt)
+{
+  IHM_InfosBulle_show(evt, "Consulter la fiche");
+}
+
+/**
+ * @brief Affiche l'info bulle supprimer du panier
+ * @param evt
+ * @return
+ */
+function  panier_InfosBulle_supprimer(evt)
+{
+  IHM_InfosBulle_show(evt, "Supprimer du panier");
+}
+/**
+ * @brief retourne l'identifiant de l'élément
+ * @param ligne
+ * @return
+ */
+function  panier_getElementId(ligne)
+{
+  var    elems;
+  var    id = null;
+  
+  if (ligne && (ligne.cells.length == 2))
+  {
+    elems = ligne.cells[0].getElementsByTagName("input");
+    if (elems && (elems.length == 1))
+       id = elems[0].value;
+  }
+  return id;
+}
+/**
+ * @brief renvoie le contenu du panier
+ * @return
+ */
+function  panier_getPanier()
+{
+  var    div;
+  var    tables;
+  var    panier = null;
+  
+  div = document.getElementById("panier");
+  if (div)
+  {
+    tables = div.getElementsByTagName("TABLE");
+    if (tables && (tables.length == 1))
+      panier = tables[0];
+  }
+  return panier;
+}
+
+/**
+ * MPA: 6 mai 2006
+ * @brief Fonction qui permet d'acceder au parametrage du telechargement
+ */
+function  panier_downloadParametrage(panier)
+{
+   /* var bHasRecord = false;
+  var l_url  = "panierDownloadFrontal_parametrage.php?LAYERIDTS=";
+  //console.log(Ext.getCmp("gridPanier").getStore().data);
+  for(idx = 0; idx < Ext.getCmp("gridPanier").getStore().data.length; idx++){
+    bHasRecord = true;
+    l_url += Ext.getCmp("gridPanier").getStore().data.items[idx].data.id;
+    if (idx!=Ext.getCmp("gridPanier").getStore().data.length-1){
+      l_url +="|";
+    }
+  }
+  if(bHasRecord){
+    contenu = window.frames["fenetre"];
+    if (contenu)
+    {
+      //parent.IHM_historique_add(l_url);
+      contenu.location = l_url;
+    }
+  }else{
+    Ext.Msg.alert('Panier','Le panier ne contient aucune couche de données.<br>Veuillez ajouter une (ou des) couche(s) à votre panier.');
+  }*/
+  /**
+   * Passage des parametres en POST
+   **/
+  var l_form = document.createElement("form");
+  var l_form_input = "";
+  l_form.setAttribute('name', 'l_form');
+  l_form.setAttribute('action', prodigeConfig.URL+'/geosource/panierDownloadFrontalParametrage');
+  l_form.setAttribute('method', 'post');
+  l_form.setAttribute('target', 'fenetre');
+  var layerIdtsValue = [];
+  for (var id in panier.indexes) {
+    layerIdtsValue.push(id);
+  }
+  layerIdtsValue = layerIdtsValue.join("|");
+  
+  if(layerIdtsValue!=""){
+    l_form_input = document.createElement("input");
+    l_form_input.setAttribute("type", "text");
+    l_form_input.setAttribute("value", layerIdtsValue);
+    l_form_input.setAttribute("name", "LAYERIDTS");
+    l_form.appendChild(l_form_input);
+    document.body.appendChild(l_form);
+    l_form.submit();
+  }else{
+    Ext.Msg.alert('Données choisies - Téléchargement', 'Veuillez ajouter une (ou des) couche(s) aux données choisies.');
+  }
+
+  /*var    panier     = null;
+  var    ligne     = null;
+  var   coucheIdt   = "";
+  var   coucheIdts   = "";
+  var   idx     = 0;
+  var    l_url    = "";
+  var    ongSelected  = null;
+  
+  if (panier_hasCouches())
+  {
+    panier = panier_getPanier();
+    for (idx = 0; idx < panier.rows.length; idx++)
+    {
+      ligne = panier.rows[idx];
+      coucheIdt = panier_getElementId(ligne);
+      if (coucheIdts != "") coucheIdts += "|";
+      coucheIdts += coucheIdt;
+    }
+    l_url  = "panierDownloadFrontal_parametrage.php?";
+    l_url += "LAYERIDTS="+coucheIdts;
+    
+    ongSelected = IHM_Onglets_get(IHM_Onglets_getSel());
+    IHM_Onglets_unsel(ongSelected);
+    
+    if (navigator.appName == "Microsoft Internet Explorer")
+      contenu = window.frames("fenetre");
+    else
+      contenu = window.frames["fenetre"];
+    if (contenu)
+    {
+      parent.IHM_historique_add(l_url);
+      contenu.location = l_url;
+    }
+  }
+  else{
+    alert("Le panier ne contient aucune couche de données.\nAucun téléchargement n'est accessible.\n\nVeuillez ajouter une (ou des) couche(s) à votre panier.");
+  }*/
+}
+
+/**
+ * MPA: 6 mai 2006
+ * @brief Fonction qui permet de savoir si le panier contient des couche
+ */
+function  panier_hasCouches()
+{
+  var    panier = null;
+  var b_HasElement = false;
+  
+  panier = panier_getPanier();
+  if (panier){
+    if (panier.rows.length == 1) {
+      //on verifie que le panier contient bien une couche
+      if (panier.rows[0].cells.length == 2) b_HasElement = true;
+    }
+    else if (panier.rows.length > 1) b_HasElement = true;
+  }
+  return b_HasElement;
+}
+
+/**
+ * MTO: 5 juin 2012
+ * @brief Fonction qui permet de covisualiser le panier
+ */
+var nbRecordsCovisu = 0;
+var tabRecordsCanCovisu = [];
+var tabDatasCannotCovisu = [];
+var tabParamsCovisu = [];
+function panier_covisualiser($scope, prodigeConfig)
+{
+	var geonetwork_dir = window.location.pathname.replace(/(\/.+)?\/srv\/.+/, "$1"); 
+	nbRecordsCovisu = Object.keys($scope.metadatas).length; 
+  if ( nbRecordsCovisu > 0 ) {
+  	tabRecordsCanCovisu = [];
+    tabDatasCannotCovisu = [];
+  	tabParamsCovisu = [];
+    $.each($scope.metadatas, function(key, metadata){
+    	configureMetadata(metadata);
+    	var uuid = metadata.get("uuid");
+      var type = metadata.get('type');
+      // donnée de typ dataset
+      if ( type == "dataset" ) {
+        var oParam = {
+          id:metadata.get("id"),
+          layerTitle:metadata.get("Data"),
+          isHarvested:metadata.get("isHarvested")
+        };
+        // donnée table
+        if ( metadata.get('spatialRepresentationType_text') == "Tabulaire" ) {
+          tabDatasCannotCovisu.push(metadata.get("Data"));
+          nbRecordsCovisu--;
+        }
+        else if ( metadata.get('spatialRepresentationType') == "textTable" ) {
+          tabDatasCannotCovisu.push(metadata.get("Data"));
+          nbRecordsCovisu--;
+        }
+        // donnée moissonnée
+        else if ( metadata.get("isHarvested") == "y" ) {
+          var urlRelation = document.location.protocol+"//"+document.location.host+""+geonetwork_dir+"/srv/api/records/"+metadata.get("uuid")+"/related";
+          var paramsRelation = {type:"services"};
+          var iframe = {};
+          iframe.tabParams = [metadata];
+          iframe.onSuccess = function(record, res) {
+          	var tabService = [];
+            // console.log(xmlDoc);
+            if (typeof res == "string") res = JSON.parse(res);
+            if ( res!==null ){
+              if ( typeof res.services == "undefined" ){res.services = [];}
+              if ( !res.services ){res.services = [];}
+            	if ( !(res.services instanceof Array) ){res.services = [res.services];}
+            	tabService = res.services;
+            }
+            // console.log(tabService);
+            if (tabService.length > 0) {
+              oParam.uuidService = [];
+              for (var i = 0; i < tabService.length; i++) {
+                oParam.uuidService.push(tabService[i].id);
+              }
+              oParam.uuidService = oParam.uuidService.join("|");
+              oParam.uuidData = record.get("uuid");
+              tabRecordsCanCovisu.push(record);
+              tabParamsCovisu.push(oParam);
+              nbRecordsCovisu--;
+            } 
+            else {
+              var tabLinks = record.get("links");
+              if (tabLinks.length > 0) {
+                var oLink = {};
+                tabLinks.forEach(function(link) {
+                  var _link = {};
+                  if (typeof(link) == 'string') { // cas particulier où
+                                                  // l'ajout au panier a été
+                                                  // effectué par une
+                                                  // sélection (case à
+                                                  // cocher) => les liens ne
+                                                  // sont pas directement
+                                                  // accessibles)
+                    var tabSplit = link.split("|");
+                    _link.name = tabSplit[0] || "";
+                    _link.href = tabSplit[2] || "";
+                    _link.protocol = tabSplit[3] || "";
+                  } else {
+                    _link = link;
+                  }
+                  if (_link.protocol && _link.protocol != ""
+                      && new RegExp(/^OGC:WMS/i).test(_link.protocol)) {
+                    if (_link.href && _link.href != "" && _link.name
+                        && _link.name != "") {
+                      oLink.wms = {
+                        protocol : "GetMap",
+                        connection : _link.href,
+                        layer : _link.name
+                      }
+                    }
+                  }
+                  if (_link.protocol && _link.protocol != ""
+                      && new RegExp(/^OGC:WFS/i).test(_link.protocol)) {
+                    if (_link.href && _link.href != "" && _link.name
+                        && _link.name != "") {
+                      oLink.wfs = {
+                        protocol : "GetMap",
+                        connection : _link.href,
+                        layer : _link.name
+                      }
+                    }
+                  }
+                }, this);
+                if (oLink.wms) {
+                  oParam.protocol = oLink.wms.protocol;
+                  oParam.connection = oLink.wms.connection;
+                  oParam.layer = oLink.wms.layer;
+                  tabRecordsCanCovisu.push(record);
+                  tabParamsCovisu.push(oParam);
+                  nbRecordsCovisu--;
+                } else if (oLink.wfs) {
+                  oParam.protocol = oLink.wfs.protocol;
+                  oParam.connection = oLink.wfs.connection;
+                  oParam.layer = oLink.wfs.layer;
+                  tabRecordsCanCovisu.push(record);
+                  tabParamsCovisu.push(oParam);
+                  nbRecordsCovisu--;
+                } else {
+                  tabDatasCannotCovisu.push(record.get("title"));
+                  nbRecordsCovisu--;
+                }
+              } else {
+                tabDatasCannotCovisu.push(record.get("title"));
+                nbRecordsCovisu--;
+              }
+            }
+          }
+          AjaxRequest(urlRelation, paramsRelation, iframe, 'GET', false);
+        } 
+        // donnée non moissonnée
+        else if ( metadata.get("isHarvested") == "n" ) {
+          /*var urlUserRight = "Services/getUserRights.php";
+          var paramsUserRight = {ID:metadata.get("id"),TRAITEMENTS:"NAVIGATION",OBJET_TYPE:type,OBJET_STYPE:( type == "service" && ( metadata.get('serviceType') ) )};
+          var iframe = {};*/
+          
+          $.ajax({
+            //crossDomain: true,
+            url : prodigeConfig.routes.catalogue.prodige_verify_rights_url,
+            async: false,
+            data : {
+              ID : metadata.get("id"),
+              OBJET_TYPE : type,
+              OBJET_STYPE : ( type == "service" && ( metadata.get('serviceType') ) ),
+              TRAITEMENTS : "NAVIGATION"
+            },
+            success : function(oResUserRights) {
+              $scope.getting_rights = false;
+              //$scope.$digest()
+
+              if ( oResUserRights.NAVIGATION ) {
+                tabRecordsCanCovisu.push(oResUserRights);
+                tabParamsCovisu.push(oParam);
+                nbRecordsCovisu--;
+              } else {
+                tabDatasCannotCovisu.push(metadata.get("title"));
+                nbRecordsCovisu--;
+              }
+            }
+          });
+              
+                /*
+          iframe.tabParams = [metadata];
+          iframe.onSuccess = function(record, res){
+            var json_res = eval("("+res+")");
+            if ( json_res.NAVIGATION ) {
+              tabRecordsCanCovisu.push(record);
+              tabParamsCovisu.push(oParam);
+              nbRecordsCovisu--;
+              panier_covisualiser_confirm($scope);
+            } else {
+              tabDatasCannotCovisu.push(record.get("title"));
+              nbRecordsCovisu--;
+              panier_covisualiser_confirm($scope);
+            }
+          };
+          AjaxRequest(urlUserRight, paramsUserRight, iframe);*/
+        }
+        // moissonnage non défini
+        else {
+          tabDatasCannotCovisu.push(metadata.get("Data"));
+          nbRecordsCovisu--;
+        }
+      }
+      // autre type de donnée
+      else {
+        tabDatasCannotCovisu.push(metadata.get("Data"));
+        nbRecordsCovisu--;
+      }
+    });
+    panier_covisualiser_confirm($scope);
+  } else {
+    Ext.Msg.alert('Données choisies - Co-visualisation','Veuillez ajouter une (ou des) couche(s) aux données choisies.');
+  }
+}
+
+/**
+ * MTO: 5 juin 2012
+ * @brief Fonction qui permet d'afficher les données non visualisable et de continuer
+ */
+function panier_covisualiser_confirm($scope)
+{
+    if ( tabRecordsCanCovisu.length > 0 ) {
+      if ( tabDatasCannotCovisu.length > 0 ) {
+        /*var iframe = {};
+        iframe.tabParams = [];
+        iframe.onSuccess = panier_covisualiser_confirmed;
+        */
+        Ext.Msg.confirm(
+            'Données choisies - Co-visualisation',
+            'Les données '+tabDatasCannotCovisu.join(', ')+' ne sont pas visualisables. Souhaitez-vous continuer ?'
+            , function(id, value) {
+                if (id === 'yes') {
+                  tabDatasCannotCovisu = [];
+                  panier_covisualiser_confirmed();
+                }
+            }, this);
+        
+        tabDatasCannotCovisu = [];
+      } else {
+        panier_covisualiser_confirmed();
+      }
+    } else {
+      Ext.Msg.alert('Données choisies - Co-visualisation', 'Aucune donnée n\'est covisualisable.');
+    }
+}
+
+/**
+ * MTO: 5 juin 2012
+ * @brief Fonction qui permet de préparer les données avant covisualisation
+ */
+function panier_covisualiser_confirmed()
+{
+  var d = new Date();
+  var curr_time = d.getTime()	
+  
+  openWindowWithPost(__PRODIGE_CATALOGUE_CONFIG_URL__+'/geosource/covisualisation', "covisu"+curr_time, tabParamsCovisu);
+  tabParamsCovisu = [];
+}
+
+/**
+ * @brief Ouvre un nouvel onglet avec passage des paramètres en post
+ * @param tabParams tableau des paramètres (chaque paramètre est un objet)
+ */
+function openWindowWithPost(url,name,tabParams)
+{
+  var newWindow = window.open('', name);
+  if (!newWindow) return false;
+  var html = "";
+  html += "<html><head></head><body><form id='form_covisu' method='post' action='"+url+"'>";
+  if ( tabParams && tabParams.length > 0 ) {
+    for ( var i=0; i < tabParams.length; i++) {
+      for ( var key in tabParams[i] ) {
+        html += "<input type=\"hidden\" name=\"data["+i+"]["+key+"]\" value=\""+tabParams[i][key]+"\"/>";  // TODO : effectuer un "htmlentities"
+      }
+    }
+  }
+  html += "</form><script type='text/javascript'>document.getElementById(\"form_covisu\").submit();</script></body></html>";
+  newWindow.document.write(html);
+  return newWindow;
+}
\ No newline at end of file
diff --git a/src/main/webapp/apps_extend/search/css/App-extend.css b/src/main/webapp/apps_extend/search/css/App-extend.css
new file mode 100644
index 0000000..9697d92
--- /dev/null
+++ b/src/main/webapp/apps_extend/search/css/App-extend.css
@@ -0,0 +1,49 @@
+.nonGeographicDataset
+{
+	background-color: #DADADA !important;
+}
+
+.vector
+{
+	background-color: #DEECFD !important;
+}
+
+.grid
+{
+	background-color: #AFD3FF !important;
+}
+
+.textTable
+{
+	background-color: #AFBCD2 !important;
+}
+
+.series
+{
+	background-color: #FFD8F1 !important;
+}
+
+.carte
+{
+	background-color: #E5F2D3 !important;
+}
+
+.service
+{
+	background-color: #FDEBC4 !important;
+}
+
+/**
+ * style boutons "Actions"
+ */
+.md-view ul li * h1 span a {
+	color: #007600;
+	font-size: 15px;
+}
+.info {
+    float: left;
+    height: 40%;
+}
+.md-info {
+    height: auto !important;
+}
\ No newline at end of file
diff --git a/src/main/webapp/apps_extend/search/home_en.html b/src/main/webapp/apps_extend/search/home_en.html
new file mode 100644
index 0000000..f193f5b
--- /dev/null
+++ b/src/main/webapp/apps_extend/search/home_en.html
@@ -0,0 +1,9 @@
+<p>
+    <div style="width: 100%; height: 100%;">
+        <div class="info">
+            <h3>Quick links</h3>
+            <div class="md-view" id="tag">
+            </div>
+        </div>
+    </div>
+</p>
\ No newline at end of file
diff --git a/src/main/webapp/apps_extend/search/home_fr.html b/src/main/webapp/apps_extend/search/home_fr.html
new file mode 100644
index 0000000..40ba1f7
--- /dev/null
+++ b/src/main/webapp/apps_extend/search/home_fr.html
@@ -0,0 +1,9 @@
+<p>
+    <div style="width: 100%; height: 100%;">
+        <div class="info">
+            <h3>Liens rapides</h3>
+            <div class="md-view" id="tag">
+            </div>
+        </div>
+    </div>
+</p>
diff --git a/src/main/webapp/apps_extend/search/home_fre.html b/src/main/webapp/apps_extend/search/home_fre.html
new file mode 100644
index 0000000..40ba1f7
--- /dev/null
+++ b/src/main/webapp/apps_extend/search/home_fre.html
@@ -0,0 +1,9 @@
+<p>
+    <div style="width: 100%; height: 100%;">
+        <div class="info">
+            <h3>Liens rapides</h3>
+            <div class="md-view" id="tag">
+            </div>
+        </div>
+    </div>
+</p>
diff --git a/src/main/webapp/apps_extend/templates/contact-admin.html b/src/main/webapp/apps_extend/templates/contact-admin.html
new file mode 100644
index 0000000..b3594c5
--- /dev/null
+++ b/src/main/webapp/apps_extend/templates/contact-admin.html
@@ -0,0 +1,120 @@
+<!-- <script type="text/javascript">
+(function(){
+  //var cat_contact_admin = angular.module('cat_contact_admin');
+  if (module){
+    module.controller('form_cat_contact_admin', [
+      '$rootScope', '$scope', '$controller', '$http'
+    , function($rootScope, $scope, $controller, $http){
+        $scope.model = {};
+        $scope.captcha = "";
+        $scope.refreshCaptcha = function(){console.log('refreshCaptcha');
+          $http({
+            method  : 'GET',
+            url : $rootScope.prodige.ip + "/include/captcha.php?rand="+Math.round(Math.random()*1000000)
+          })
+          .success(function(data){console.log('captcha', data);return;
+            $('#captchaimg').attr('src', data.img);
+            $scope.captcha = data.captcha;
+          })
+        };
+        $scope.processForm = function(){
+          if ( this.validate() ){
+            $http({
+              method  : 'POST',
+              url     : __PRODIGE_CATALOGUE_URL__+$rootScope.prodige.routes.catalogue.contact_admin,
+              data    : $.param($scope.model),  // pass in data as strings
+              headers : { 'Content-Type': 'application/x-www-form-urlencoded' }  // set the headers so angular passing info as form data (not request payload)
+             })
+            .success(function(data) {
+              console.log('submit', data);
+  
+            });
+          }
+        };
+      }
+    ]);
+  }
+})();
+/*
+  function contactAdmin(){
+    var form=document.form_pwd;
+    if ( validateEmail ){
+      form.action = top.__PRODIGE_CATALOGUE_URL__+"{{ $root.prodige.usr_name }}/geosource/contact_admin";
+      form.submit();
+    }
+   }
+  function refreshCaptcha(){
+    var oImg =  document.images['captchaimg'];
+    if( oImg ) {
+      oImg.src = oImg.src.split("?")[0]+"?rand="+Math.round(Math.random()*1000000);
+    }
+  }  
+  function validateEmail()
+  {
+    var mail = document.getElementById('usr_email').value;
+    var name = document.getElementById('usr_name').value;
+    var firstname = document.getElementById('usr_firstname').value;
+    var message = document.getElementById('message').value;
+    if(name =="" || mail == "" || firstname == "" || message == ""){
+      parent.Ext.Msg.alert('Contact', "Veuillez renseigner tous les champs.");
+      return false;
+    }
+    var modele = /^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,4})$/;
+    if (!modele.test(mail)){
+      parent.Ext.Msg.alert('Contact', "L'adresse email est incorrecte.");
+      return false
+    }
+    return true
+  }*/
+</script> -->
+<div class="modal fade" id="contactAdmin" tabindex="-1" role="dialog" aria-labelledby="contactAdminLabel">
+  <div  class="modal-dialog" role="document">
+    <div class="modal-content">
+      <div class="modal-header">
+        <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button>
+        <h4 class="modal-title" id="contactAdminLabel">Contacter l'administrateur</h4>
+      </div>
+        <form name="formContactAdmin" ng-controller="formContactAdmin" ng-submit="processForm()" ng-init='refreshCaptcha()'>
+      <div class="modal-body">
+          <div class="form-group">
+            <label for="usr_name" class="control-label">Nom</label>
+            <input type="text" class="form-control"  ng-model='model.usr_name' required="required" name='usr_name' id='usr_name' >
+          <div class="error help-block" ng-show="formContactAdmin.usr_name.$error.required">Saisie obligatoire</div>
+          </div>
+          <div class="form-group">
+            <label for="usr_firstname" class="control-label">Prénom</label>
+            <input type="text" class="form-control"  ng-model='model.usr_firstname' value='{{model.usr_firstname}}' required="required" name='usr_firstname' id='usr_firstname' >
+          <div class="error help-block" ng-show="formContactAdmin.usr_firstname.$error.required">Saisie obligatoire</div>
+          </div>
+          <div class="form-group">
+            <label for="usr_email" class="control-label">Courriel</label>
+            <input type="email" class="form-control"  ng-model='model.usr_email' required="required" name='usr_email' id='usr_email' >
+          <div class="error help-block" ng-show="formContactAdmin.usr_email.$error.required">Saisie obligatoire</div>
+          <div class="error help-block" ng-show="formContactAdmin.usr_email.$error.email">Mauvais format de courriel</div>
+          </div>
+          <div class="form-group">
+            <label for="captcha" class="control-label">Code de sécurité </label>
+            <div class="input-group">
+              <span class="input-group-btn">
+                <button class="btn btn-default"  type="button" ng-click='refreshCaptcha()' title="Cliquez sur l'image pour générer un nouveau code.">
+                  <img src="" id="captchaimg">
+                </button>
+              </span>
+              <input type="text" class="form-control" ng-model='model.captcha' name='captcha' id='captcha' value="" required="required" >
+            </div>
+            <div class="error help-block" ng-show="formContactAdmin.captcha.$error.required">Saisie obligatoire</div>
+          </div>
+          <div class="form-group">
+            <label for="message" class="control-label">Message</label>
+            <textarea class="form-control" ng-model='model.message' required="required" name="message" id="message"></textarea>
+          <div class="error help-block" ng-show="formContactAdmin.message.$error.required">Saisie obligatoire</div>
+          </div>
+      </div>
+      <div class="modal-footer">
+        <button type="button" class="btn btn-default" data-dismiss="modal">Annuler</button>
+        <button type="submit" class="btn btn-primary" name="VALIDATION">Valider</button>
+      </div>
+        </form>
+    </div>
+  </div>
+</div>
\ No newline at end of file
diff --git a/src/main/webapp/apps_extend/templates/editor.html b/src/main/webapp/apps_extend/templates/editor.html
new file mode 100644
index 0000000..d9ae139
--- /dev/null
+++ b/src/main/webapp/apps_extend/templates/editor.html
@@ -0,0 +1,82 @@
+<!-- geonetwork-3.2.0-0/catalog/components/search/resultsview/partials/viewtemplates/editor.html -->
+<table class="table gn-results-editor contribute-search-results gn-resultview">
+  <tr data-ng-repeat="md in searchResults.records" ng-class="'metadata-' + (md.type).join(' metadata-')">
+    <td>
+      <input data-gn-selection-md type="checkbox"
+             data-ng-model="md['geonet:info'].selected"
+             data-ng-change="change()"/>
+      <span
+        data-ng-class="md.valid == 1 ? 'text-success' : (md.valid == 0 ? 'text-danger' : 'text-muted')">
+        <i class="fa"
+           data-ng-class="'gn-recordtype-' + md.isTemplate"
+           data-ng-show="user.isReviewerOrMore()"
+           title="{{('isTemplate' + md.isTemplate) | translate}} ({{('validStatus-' + md.valid) | translate}})"></i>
+      </span>
+      <a href=""
+         data-ng-show="md.isTemplate != 's'"
+         data-ng-href="catalog.search#/metadata/{{md.getUuid()}}"
+         title="{{md.abstract}}">{{md.title || md.defaultTitle}}</a>
+      <span data-ng-show="md.isTemplate == 's'">{{md.title || md.defaultTitle}}</span>
+      <br/>
+      <div class="gn-record-details">
+        <span title="{{'metadataAuthor' | translate}}">{{md.getOwnername()}}</span>
+        <span class="pull-right text-muted"
+              data-ng-class="{'text-success': md.mdStatus == 2, 'text-warning': md.mdStatus == 4}"
+              data-ng-show="md.mdStatus">{{('status-' + md.mdStatus) | translate}}</span>
+      </div>
+    </td>
+    <td>
+      <!-- prodige metadata actions -->
+      <div data-gn-fix-mdlinks>
+        <div class="gn-md-links"></div>
+      </div>
+    </td>
+    <td>
+      <a class="btn btn-link"
+         data-ng-href=""
+         data-ng-if="user.canEditRecord(md) && user.isEditorOrMore()"
+         data-ng-click="mdService.openPrivilegesPanel(md, getCatScope())"
+         title="{{'privileges' | translate}}">
+        <i class="fa text-muted"
+           data-ng-class="md.isPublished() ? 'fa-unlock' : 'fa-lock'"></i>
+      </a>
+    </td>
+    <td>
+      <!-- TODO: subtemplate link for editing is different -->
+      <a class="btn btn-link"
+         data-ng-show="user.canEditRecord(md) && md.isTemplate != 's'"
+         data-ng-href="#/metadata/{{md['geonet:info'].id}}"
+         title="{{'edit' | translate}}">
+        <i class="fa fa-pencil"></i>
+      </a>
+    </td>
+    <!-- prodige metadata actions : replace default 'delete' action of geosource -->
+    <!--
+    <td>
+      <a class="btn btn-link"
+         data-ng-show="user.canEditRecord(md) && md.isTemplate != 's'"
+         data-gn-click-and-spin="deleteRecord(md)"
+         data-gn-confirm-click="{{'deleteRecordConfirm' | translate:md}}"
+         title="{{'delete' | translate}}">
+        <i class="fa fa-times text-danger"></i>
+      </a>
+    </td>
+    -->
+    <td>
+      <a class="btn btn-link"
+         data-ng-show="md.isTemplate != 's'"
+         data-ng-href="#/create?from={{md['geonet:info'].id}}"
+         title="{{'duplicate' | translate}}">
+        <i class="fa fa-copy text-muted"></i>
+      </a>
+    </td>
+    <td>
+      <a class="btn btn-link"
+         data-ng-show="user.canEditRecord(md) && md.isTemplate != 's'"
+         data-ng-href="#/create?childOf={{md['geonet:info'].id}}"
+         title="{{'createChild' | translate}}">
+        <i class="fa fa-sitemap text-muted"></i>
+      </a>
+    </td>
+  </tr>
+</table>
diff --git a/src/main/webapp/apps_extend/templates/ext-messages.html b/src/main/webapp/apps_extend/templates/ext-messages.html
new file mode 100644
index 0000000..2425c4e
--- /dev/null
+++ b/src/main/webapp/apps_extend/templates/ext-messages.html
@@ -0,0 +1,22 @@
+<div class="modal fade"  ng-controller="extMessages" id="extMessages" tabindex="-1" role="dialog" aria-labelledby="ext-messages-title">
+  <div  class="modal-dialog" role="document">
+    <div class="modal-content">
+      <div class="modal-header">
+        <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button>
+        <h4 class="modal-title" id="ext-messages-title">{{ title }}</h4>
+      </div>
+      <div class="modal-body" ng-bind-html="body">
+      </div>
+      <div class="modal-footer">
+        <button type="button" class="btn btn-default" data-dismiss="modal"" style="display:none" id="autoclose">autoclose</button>
+      <div ng-if="modaltype == 'alert'">
+        <button type="button" class="btn btn-default" data-dismiss="modal"" ng-click="confirmFn('ok')">OK</button>
+      </div>
+      <div ng-if="modaltype == 'confirm'">
+        <button type="button" class="btn btn-default" data-dismiss="modal" ng-click="confirmFn('yes')">Oui</button>
+        <button type="button" class="btn btn-default" data-dismiss="modal">Non</button>
+      </div>
+      </div>
+    </div>
+  </div>
+</div>
\ No newline at end of file
diff --git a/src/main/webapp/apps_extend/templates/harvested-synchronization.html b/src/main/webapp/apps_extend/templates/harvested-synchronization.html
new file mode 100644
index 0000000..8e17982
--- /dev/null
+++ b/src/main/webapp/apps_extend/templates/harvested-synchronization.html
@@ -0,0 +1,42 @@
+<div class="modal fade"  ng-controller="harvestedSynchronization" id="harvestedSynchronization" tabindex="-1" role="dialog" aria-labelledby="harvestedSynchronisationLabel">
+  <div  class="modal-dialog" role="document">
+    <div class="modal-content">
+      <div class="modal-header">
+        <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button>
+        <h4 class="modal-title" id="harvestedSynchronisationLabel">Paramétrer la synchronisation des données SIG de la métadonnée</h4>
+      </div>
+      <div class="modal-body">
+      <table class="table table-striped table-hover table-bordered table-responsive">
+        <ng-repeat ng-repeat="source in metadataSources">
+        <tr>
+        <td colspan="2">
+          <div class='synchronisation-source'>
+            <div class='source-name'>{{ source.title }}</div>
+            <div class='source-description'>{{ source.description }}</div>
+          </div>
+        </td>
+        <td>
+          <input type="radio" name="import_data_source" value="{{ link.url }}"/>
+        </td>
+        </tr>
+        <tr ng-repeat="link in sources.links">
+          <td>&nbsp;</td>
+          <td>
+            <div class='synchronisation-source'>
+              <div class='source-name'>{{ link.title }}</div>
+              <div class='source-description'>{{ link.description }}</div>
+            </div>
+          </td>
+          <td>
+            <input type="radio" name="import_data_source" value="{{ link.url }}"/>
+          </td>
+        </tr>
+        </ng-repeat>
+        <tr class="animate-repeat" ng-if="metadataSources.length == 0">
+          <td><strong>Aucun lien de téléchargement des données défini...</strong></td>
+        </tr>
+      </table>
+      </div>
+    </div>
+  </div>
+</div>
\ No newline at end of file
diff --git a/src/main/webapp/apps_extend/templates/help-modal.html b/src/main/webapp/apps_extend/templates/help-modal.html
new file mode 100644
index 0000000..852f0cb
--- /dev/null
+++ b/src/main/webapp/apps_extend/templates/help-modal.html
@@ -0,0 +1,27 @@
+<div class="modal fade" ng-controller="helpModal" id="helpModal"
+  tabindex="-1" role="dialog" aria-labelledby="helpModalLabel">
+  <div class="modal-dialog" role="document">
+    <div class="modal-content">
+      <div class="modal-header">
+        <button type="button" class="close" data-dismiss="modal"
+          aria-label="Close">
+          <span aria-hidden="true">&times;</span>
+        </button>
+        <h4 class="modal-title" id="helpModalLabel">Aide</h4>
+      </div>
+      <div class="modal-body">
+        <div ng-repeat="elt in help" class="thumbnail">
+          <div class="row gn-md-title">
+            <h4>
+              <a ng-href="{{ elt.url }}" title="{{ elt.title }}"
+                target="_blank" class="ng-binding"> <i
+                class="fa gn-icon-series" title="dataset"></i> {{ elt.title }}
+              </a>
+            </h4>
+            {{ elt.desc }}
+          </div>
+        </div>
+      </div>
+    </div>
+  </div>
+</div>
\ No newline at end of file
diff --git a/src/main/webapp/apps_extend/templates/metadata-actions.html b/src/main/webapp/apps_extend/templates/metadata-actions.html
new file mode 100644
index 0000000..9136307
--- /dev/null
+++ b/src/main/webapp/apps_extend/templates/metadata-actions.html
@@ -0,0 +1,27 @@
+<!-- <colored ng-init="setMetadataDecoration()"></colored> -->
+
+          <div class="btn-group"
+               ng-show="$root.prodige.loaded">
+            <button type="button"
+                    class="btn btn-default dropdown-toggle prodige-menu"
+                    ng-class="prodigeIsContributeMenu ? 'btn-xs' : ''"
+                    data-toggle="dropdown"
+                    title="Actions"  ng-show="setMetadataDecoration()"
+                    ng-click="initMetadataActions()">
+              <span class="fa fa-plus"></span>
+              <span class="caret"></span>
+            </button>
+            <div class="dropdown-menu dropdown-menu-right metadataActions" role="menu">
+            <span class="loading fa fa-spinner fa-spin" ng-show="getting_rights"></span>
+            </div>
+          </div>
+
+
+          <div class="btn-group" ng-repeat="link in ::catalogue_actions"
+               data-ng-class="::catalogue_actions.length > 0 ? '' : 'invisible'">
+            <button type="button"
+                    class="btn btn-default"
+                    ng-click="link.url()" title="{{::link.desc}}">
+              <img data-ng-src="{{::link.icon}}"/>
+            </button>
+          </div>
diff --git a/src/main/webapp/apps_extend/templates/metadata-cart.html b/src/main/webapp/apps_extend/templates/metadata-cart.html
new file mode 100644
index 0000000..a221275
--- /dev/null
+++ b/src/main/webapp/apps_extend/templates/metadata-cart.html
@@ -0,0 +1,36 @@
+<script type="text/javascript" src='../../apps_extend/panier.js'></script>
+<div class="modal fade"  ng-controller="metadataCart" ng-init='initMetadataCart()' id="metadataCart" tabindex="-1" role="dialog" aria-labelledby="contactAdminLabel">
+  <div  class="modal-dialog" role="document">
+    <div class="modal-content">
+      <div class="modal-header">
+        <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button>
+        <h4 class="modal-title" id="contactAdminLabel">
+        Données choisies <ng-pluralize count="metadatas.length" when="{'0': '', 'one': '(1 élément)', 'other': '({} éléments)'}"></ng-pluralize>
+        </h4>
+      </div>
+      <div class="modal-body">
+      <table class="table table-striped table-hover table-bordered table-responsive">
+        <tr ng-repeat="ametadata in metadatas | orderBy:'title'">
+        <td>{{ ametadata.title }}</td>
+        <td class="text-center" style="vertical-align:middle;">
+        <span ng-show="ametadata.can_storage===null">Vérification des droits</span>
+          <a href="" class="btn btn-xs btn-link"
+             title="Retirer des données choisies"
+             ng-click="panier_retirer(ametadata)">
+             <i class="fa fa-times delete" style="vertical-align:baseline;"></i>
+          </a>
+        </td>
+        </tr>
+        <tr class="animate-repeat" ng-if="metadatas.length == 0">
+          <td><strong>Aucune métadonnée...</strong></td>
+        </tr>
+      </table>
+      </div>
+      <div class="modal-footer" ng-if="metadatas.length > 0">
+        <button type="button" class="btn btn-primary" ng-click="panier_downloadParametrage()"><span class="fa fa-download"></span>&nbsp;Télécharger</button>
+        <button type="submit" class="btn btn-primary" ng-click="panier_covisualiser()"><span class="fa fa-eye"></span>&nbsp;Co-visualiser</button>
+        <button type="submit" class="btn btn-default" ng-click="panier_vider()"><span class="fa fa-eraser"></span>&nbsp;Vider</button>
+      </div>
+    </div>
+  </div>
+</div>
\ No newline at end of file
diff --git a/src/main/webapp/apps_extend/templates/top-toolbar.html b/src/main/webapp/apps_extend/templates/top-toolbar.html
new file mode 100644
index 0000000..8e50607
--- /dev/null
+++ b/src/main/webapp/apps_extend/templates/top-toolbar.html
@@ -0,0 +1,53 @@
+<div ng-if="$root.prodige.loaded">
+  <!-- Actions complémentaires ajoutées à la barre d'outils -->
+  <ul class="nav navbar-nav navbar-right">
+    <li __data-ng-show="authenticated">
+      <a data-toggle="modal" data-target="#metadataCart"
+         title="Données choisies"
+         class="hidden-xs btn btn-link">
+        <i class="fa fa-star"></i>&nbsp;
+        Données choisies
+      </a>
+    </li>
+    <li ng-if="$root.prodige.PRO_CATALOGUE_CONTACT_ADMIN == 'on'">
+      <a data-toggle="modal" data-target="#contactAdmin" ng-click="initContactForm()"
+         title="Contacter l'administrateur"
+         class="hidden-xs btn btn-link">
+        <i class="fa fa-envelope"></i>&nbsp;
+        Contacter l'administrateur
+      </a>
+      <ng-include src="'../../apps_extend/templates/contact-admin.html'"></ng-include>
+    </li>
+    <li ng-if="$root.prodige.PRO_CATALOGUE_NB_SESSION_USER == 'on'">
+    <a  class="hidden-xs btn btn-link">
+          <b>#</b><ng-pluralize count="$root.prodige.sessionNumber"
+                 when="{'0': '0 visiteur',
+                     'one': '1 visiteur',
+                     'other': '{} visiteurs'}"></ng-pluralize>
+    </a>
+    </li>
+    <li class="dropdown dropdown-hover open">
+        <a data-gn-active-tb-item="admin.console"
+           title="Autres actions"
+           class="dropdown-toggle"
+           role="button" aria-expanded="false">
+          <i class="fa fa-wrench"></i>
+          <span class="hidden-sm">Autres actions</span>
+        </a>
+      <ul class="dropdown-menu">
+        <li ng-if="$root.prodige.routes.catalogue.carteperso"><a data-gn-active-tb-item="{{ $root.prodige.routes.catalogue.carteperso }}" target="_blank"><i class="fa fa-fw fa-globe"></i> Cartes personnelles</a></li>
+        <li ng-if="$root.prodige.routes.admin.prodige_admin"><a data-gn-active-tb-item="{{ $root.prodige.routes.admin.prodige_admin }}"  target="_blank"><i class="fa fa-fw fa-group"></i> Administration générale</a></li>
+        <li ng-if="$root.prodige.routes.admin.prodige_adminsite"><a data-gn-active-tb-item="{{ $root.prodige.routes.admin.prodige_adminsite }}"  target="_blank"><i class="fa fa-fw fa-cogs"></i> Administration de la plate-forme</a></li>
+        <li ng-if="$root.prodige.routes.admin.prodige_standards"><a data-gn-active-tb-item="{{ $root.prodige.routes.admin.prodige_standards }}"  target="_blank"><i class="fa fa-fw fa-thumbs-up"></i> Module qualité</a></li>
+        <li ng_if = "$root.prodige.routes.admin.optional.catalogue_opendata"><a href="{{ $root.prodige.routes.admin.optional.catalogue_opendata }}"  target="_blank"><i class="fa fa-fw fa-paper-plane"></i> Moissonnage DCAT</a><li>
+        <li ng-if="$root.prodige.routes.admin.prodige_base_territoriale"><a data-gn-active-tb-item="{{ $root.prodige.routes.admin.prodige_base_territoriale }}"  target="_blank"><i class="fa fa-fw fa-outdent"></i> Module base territoriale</a></li>
+        <li><a data-toggle="modal" data-target="#helpModal" class="btn-link"><i class="fa fa-fw fa-question-circle"></i> Aide</a></li>
+      </ul>
+    </li>
+  </ul>
+  
+  <ng-include src="'../../apps_extend/templates/metadata-cart.html'"></ng-include>
+  <ng-include src="'../../apps_extend/templates/help-modal.html'"></ng-include>
+  <ng-include src="'../../apps_extend/templates/ext-messages.html'"></ng-include>
+  
+</div>
diff --git a/src/main/webapp/apps_extend/util.js b/src/main/webapp/apps_extend/util.js
new file mode 100644
index 0000000..ae535a8
--- /dev/null
+++ b/src/main/webapp/apps_extend/util.js
@@ -0,0 +1,152 @@
+if ( typeof Ext == "undefined" ) Ext = {};
+if ( typeof Ext.menu == "undefined" ) Ext.menu = {};
+if ( typeof Ext.Msg == "undefined" ) Ext.Msg = {};
+if ( typeof Ext.menu.Item == "undefined" ) Ext.menu.Item = {};
+if ( typeof Ext.DomQuery == "undefined" ) Ext.DomQuery = {};
+
+Ext.encode = function(json) {
+  return JSON.stringify(json);
+};
+Ext.decode = function(text) {
+  return JSON.parse(text);
+};
+
+function TextEncode(strParam)
+{
+  var t = new String("test");
+  if (!t.charCodeAt) return strParam;
+  strParam = encodeToUTF8(strParam);
+  var strEncode = "";
+  for(var i=0; i<strParam.length; i++) {
+    strEncode += DecToHexa(strParam.charCodeAt(i));
+  }
+  return strEncode;
+}
+
+function TextDecode(strParam)
+{  
+  var test = "";
+  var t = new String("test");
+  if (!t.fromCharCode && !String.fromCharCode) return strParam;
+  //décodage
+  var strDecode = "";
+  for(var i=0; i<strParam.length; i+=2 ) {
+    strDecode = new String(strDecode) + String.fromCharCode( HexaToDec(strParam.substr(i, 2) ) ) ;
+  }
+
+  return decodeFromUTF8(strDecode);
+}
+
+function DecToHexa(integer, bIter){
+  var tabConv = new Array("0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "A", "B", "C", "D", "E", "F");
+  if (integer<=15 ) {
+    if( bIter) return tabConv[integer]; 
+    return "0"+tabConv[integer];
+  }
+  var quotient = Math.floor(integer/16);
+  var remainder = integer % 16;
+  return new String(DecToHexa(quotient,true))+new String(DecToHexa(remainder,true));
+}
+
+function HexaToDec(hexa){
+  var tabConv = new Array("0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "A", "B", "C", "D", "E", "F");
+  if (hexa.length==1){
+    for (var j=0; j<tabConv.length; j++){
+      if (tabConv[j].toLowerCase()==hexa.toLowerCase()) return j;
+    }
+    return 0;
+  }
+  var res = 0;
+  for (var p=0; p<hexa.length; p++){
+    res = new Number( new Number(res) + new Number(HexaToDec(hexa.charAt(p))*Math.pow(16, hexa.length - p -1)) );
+  }
+  return res;
+}
+
+function encodeToUTF8(strLatin1) 
+{
+  var strUTF8 = "";
+
+  for (var n = 0; n < strLatin1.length; n++) {
+    var c = strLatin1.charCodeAt(n);
+    if (c < 128) {
+      strUTF8 += String.fromCharCode(c);
+    }
+    else if((c > 127) && (c < 2048)) {
+      strUTF8 += String.fromCharCode((c >> 6) | 192);
+      strUTF8 += String.fromCharCode((c & 63) | 128);
+    }
+    else {
+      strUTF8 += String.fromCharCode((c >> 12) | 224);
+      strUTF8 += String.fromCharCode(((c >> 6) & 63) | 128);
+      strUTF8 += String.fromCharCode((c & 63) | 128);
+    }
+  }
+
+  return strUTF8;
+}
+    
+function decodeFromUTF8(strUTF8) {
+  var strLatin1 = "";
+  var i = 0;
+  var c = c1 = c2 = 0;
+
+  while ( i < strUTF8.length ) {
+    c = strUTF8.charCodeAt(i);
+    if (c < 128) {
+      strLatin1 += String.fromCharCode(c);
+      i++;
+    }
+    else if((c > 191) && (c < 224)) {
+      c2 = strUTF8.charCodeAt(i+1);
+      strLatin1 += String.fromCharCode(((c & 31) << 6) | (c2 & 63));
+      i += 2;
+    }
+    else {
+      c2 = strUTF8.charCodeAt(i+1);
+      c3 = strUTF8.charCodeAt(i+2);
+      strLatin1 += String.fromCharCode(((c & 15) << 12) | ((c2 & 63) << 6) | (c3 & 63));
+      i += 3;
+    }
+  }
+
+  return strLatin1;
+}
+function getCheckSumEncodage(strToken)
+{
+  var tabTrad = new Array();
+  for(var i=0; i<10; i++) tabTrad[i] = i;
+  tabTrad["A"] = tabTrad["a"] = 10;
+  tabTrad["B"] = tabTrad["b"] = 11;
+  tabTrad["C"] = tabTrad["c"] = 12;
+  tabTrad["D"] = tabTrad["d"] = 13;
+  tabTrad["E"] = tabTrad["e"] = 14;
+  tabTrad["F"] = tabTrad["f"] = 15;
+   
+  var iChecksum = 0;
+  for(i=0; i<strToken.length; i++) {
+    iChecksum += parseInt(tabTrad[strToken.charAt(i)]);
+  }
+  return iChecksum;
+}
+
+function replace_html(el, html) {
+	if( el ) {
+		var oldEl = (typeof el === "string" ? document.getElementById(el) : el);
+		var newEl = document.createElement(oldEl.nodeName);
+
+		// Preserve any properties we care about (id and class in this example)
+		newEl.id = oldEl.id;
+		newEl.className = oldEl.className;
+
+		//set the new HTML and insert back into the DOM
+		newEl.innerHTML = html;
+		if(oldEl.parentNode)
+			oldEl.parentNode.replaceChild(newEl, oldEl);
+		else
+		oldEl.innerHTML = html;
+
+		//return a reference to the new element in case we need it
+		return newEl;
+	}
+}; 
diff --git a/src/main/webapp/catalog/components/cookieWarning/partials/cookieWarning.html b/src/main/webapp/catalog/components/cookieWarning/partials/cookieWarning.html
new file mode 100644
index 0000000..710fa97
--- /dev/null
+++ b/src/main/webapp/catalog/components/cookieWarning/partials/cookieWarning.html
@@ -0,0 +1,16 @@
+<div class="cookie-warning"
+     data-ng-show="{{showCookieWarning}}"
+     data-ng-controller="CookieWarningController">
+
+  <p class="{showCookieWarning}"
+     data-translate="">cookieWarning</p>
+  <p>
+    <a href="https://www.cnil.fr/fr/site-web-cookies-et-autres-traceurs" target="cookie_law"
+       data-translate="">moreOnCookie</a>
+  </p>
+  <p>
+    <span data-ng-click="close()" data-translate="">acceptCookie</span>&nbsp;
+    <span data-translate="">or</span>&nbsp;
+    <span data-ng-click="goAway()" data-translate="">rejectCookie</span>
+  </p>
+</div>
diff --git a/src/main/webapp/catalog/js/jscompatibility.js b/src/main/webapp/catalog/js/jscompatibility.js
new file mode 100644
index 0000000..5511f36
--- /dev/null
+++ b/src/main/webapp/catalog/js/jscompatibility.js
@@ -0,0 +1,14 @@
+if ( !String.prototype.includes ) {
+  String.prototype.includes = function(search, start) {
+    'use strict';
+    if (typeof start !== 'number') {
+      start = 0;
+    } 
+
+    if (start + search.length > this.length) {
+      return false;
+    } else {
+      return this.indexOf(search,start) !== -1;
+    }
+  };
+}
\ No newline at end of file
diff --git a/src/main/webapp/catalog/lib/jquery.ext/jquery.cookie.js b/src/main/webapp/catalog/lib/jquery.ext/jquery.cookie.js
new file mode 100644
index 0000000..feb62e9
--- /dev/null
+++ b/src/main/webapp/catalog/lib/jquery.ext/jquery.cookie.js
@@ -0,0 +1,117 @@
+/*!
+ * jQuery Cookie Plugin v1.4.1
+ * https://github.com/carhartl/jquery-cookie
+ *
+ * Copyright 2006, 2014 Klaus Hartl
+ * Released under the MIT license
+ */
+(function (factory) {
+	if (typeof define === 'function' && define.amd) {
+		// AMD
+		define(['jquery'], factory);
+	} else if (typeof exports === 'object') {
+		// CommonJS
+		factory(require('jquery'));
+	} else {
+		// Browser globals
+		factory(jQuery);
+	}
+}(function ($) {
+
+	var pluses = /\+/g;
+
+	function encode(s) {
+		return config.raw ? s : encodeURIComponent(s);
+	}
+
+	function decode(s) {
+		return config.raw ? s : decodeURIComponent(s);
+	}
+
+	function stringifyCookieValue(value) {
+		return encode(config.json ? JSON.stringify(value) : String(value));
+	}
+
+	function parseCookieValue(s) {
+		if (s.indexOf('"') === 0) {
+			// This is a quoted cookie as according to RFC2068, unescape...
+			s = s.slice(1, -1).replace(/\\"/g, '"').replace(/\\\\/g, '\\');
+		}
+
+		try {
+			// Replace server-side written pluses with spaces.
+			// If we can't decode the cookie, ignore it, it's unusable.
+			// If we can't parse the cookie, ignore it, it's unusable.
+			s = decodeURIComponent(s.replace(pluses, ' '));
+			return config.json ? JSON.parse(s) : s;
+		} catch(e) {}
+	}
+
+	function read(s, converter) {
+		var value = config.raw ? s : parseCookieValue(s);
+		return $.isFunction(converter) ? converter(value) : value;
+	}
+
+	var config = $.cookie = function (key, value, options) {
+
+		// Write
+
+		if (arguments.length > 1 && !$.isFunction(value)) {
+			options = $.extend({}, config.defaults, options);
+
+			if (typeof options.expires === 'number') {
+				var days = options.expires, t = options.expires = new Date();
+				t.setTime(+t + days * 864e+5);
+			}
+
+			return (document.cookie = [
+				encode(key), '=', stringifyCookieValue(value),
+				options.expires ? '; expires=' + options.expires.toUTCString() : '', // use expires attribute, max-age is not supported by IE
+				options.path    ? '; path=' + options.path : '',
+				options.domain  ? '; domain=' + options.domain : '',
+				options.secure  ? '; secure' : ''
+			].join(''));
+		}
+
+		// Read
+
+		var result = key ? undefined : {};
+
+		// To prevent the for loop in the first place assign an empty array
+		// in case there are no cookies at all. Also prevents odd result when
+		// calling $.cookie().
+		var cookies = document.cookie ? document.cookie.split('; ') : [];
+
+		for (var i = 0, l = cookies.length; i < l; i++) {
+			var parts = cookies[i].split('=');
+			var name = decode(parts.shift());
+			var cookie = parts.join('=');
+
+			if (key && key === name) {
+				// If second argument (value) is a function it's a converter...
+				result = read(cookie, value);
+				break;
+			}
+
+			// Prevent storing a cookie that we couldn't decode.
+			if (!key && (cookie = read(cookie)) !== undefined) {
+				result[name] = cookie;
+			}
+		}
+
+		return result;
+	};
+
+	config.defaults = {};
+
+	$.removeCookie = function (key, options) {
+		if ($.cookie(key) === undefined) {
+			return false;
+		}
+
+		// Must not alter options, thus extending a fresh object...
+		$.cookie(key, '', $.extend({}, options, { expires: -1 }));
+		return !$.cookie(key);
+	};
+
+}));
diff --git a/src/main/webapp/catalog/locales/fr-alk-extend.json b/src/main/webapp/catalog/locales/fr-alk-extend.json
new file mode 100644
index 0000000..a433e2e
--- /dev/null
+++ b/src/main/webapp/catalog/locales/fr-alk-extend.json
@@ -0,0 +1,5 @@
+{
+    "basket" : "Panier",
+    "contactAdmin" : "Contacter l'administrateur",
+    "moreActions" : "Autres actions"
+}
\ No newline at end of file
diff --git a/src/main/webapp/catalog/style/gn_viewer.less b/src/main/webapp/catalog/style/gn_viewer.less
new file mode 100644
index 0000000..66698ae
--- /dev/null
+++ b/src/main/webapp/catalog/style/gn_viewer.less
@@ -0,0 +1,694 @@
+@import "gn_bootstrap.less";
+
+@viewport-padding: 1em;
+@transition-params: .3s ease;
+
+@gn-popup-max-width: 1200px;
+
+
+[gn-main-viewer],
+.gn-main-viewer {
+  position: relative;
+
+  [role=tooltip] {
+    position: absolute;
+    clip: rect(1px, 1px, 1px, 1px);
+    right: 0;
+  }
+
+  fieldset legend {
+    margin-bottom: 2px;
+  }
+
+  .gn-layertree-filter {
+    margin: 0 0 15px 0px;
+    position:relative;
+    .clear {
+      right: 1em;
+      position: absolute;
+      top: 7px;
+    }
+  }
+
+  .wrapper {
+    width: 100%;
+    height: 100%;
+    min-height: 100%;
+  }
+  [ngeo-map] {
+    width: 100%;
+    height: 89.9vh;
+    &.gn-gfi-loading:hover {
+      cursor: wait;
+    }
+  }
+  .popover-dropdown, [gn-popover-dropdown] {
+    .dropdown-menu {
+      max-height: 45vh;
+      overflow: auto;
+
+    }
+    .dropdown-toggle {
+      padding: 0;
+      border: none;
+    }
+  }
+  .search-container {
+    position: absolute;
+    top: @viewport-padding;
+    left: @viewport-padding;
+    width: 20em;
+    .dropdown-menu {
+      width: 100%;
+      top: ~"calc(100% - 3px)";
+      background: rgba(255,255,255,.9);
+      padding: 0 0 1em;
+      h5 {
+        padding: 0 1em;
+      }
+      ul {
+        margin:0;
+        background: #fff;
+      }
+      li {
+        background: transparent;
+        padding: 0;
+        &:hover {
+        }
+      }
+      a {
+        padding: .5em 1em;
+        display: block;
+        em {
+          font-size: 90%;
+          color: grey;
+        }
+      }
+    }
+    .clear {
+      position: absolute;
+      top: .75em;
+      right: 3.5em;
+      color: #666;
+      z-index: 99;
+      &:hover {
+        cursor: pointer;
+        color: #222;
+      }
+    }
+  }
+  .tools {
+    position: absolute;
+    top: @viewport-padding;
+    right: 0;
+    width: 2.8em;
+    button, [role="button"] {
+      margin-bottom: .2em;
+      border-right-width: none;
+      border-top-right-radius: 0;
+      border-bottom-right-radius: 0;
+      background: rgba(255,255,255,.8);
+      width: 2.8em;
+      transition: background @transition-params;
+      &.active {
+        width: 3.0em;
+        border-left: medium none;
+        border-radius: 0px;
+        margin-left: -0.2em;
+        background: none repeat scroll 0% 0% rgba(0, 0, 0, 0.7);
+        border-color: transparent;
+        color: #FFF;
+      }
+    }
+
+    .tools-spacer {
+      height: 1.4em;
+    }
+  }
+  .control-tools {
+    top: auto;
+    bottom: @viewport-padding;
+  }
+  & > .panel {
+    background: rgba(255,255,255,.8);
+  }
+  .panel-tools {
+    position: absolute;
+    top: @viewport-padding;
+    right: 3em;
+    width: 26em;
+    min-height: 12.8em;
+    height: ~"calc(100% - 2em)";
+    max-width: ~"calc(100% - 4em)";
+    overflow-y: auto;
+    transition: opacity @transition-params;
+    h3 {
+      margin-top: 15px;
+    }
+    li[gn-layermanager-item] {
+      .fa-arrows-alt,.gn-layer-ordering {
+        opacity: 0;
+        transition: opacity @transition-params;
+      }
+      label {
+        padding: 0px;
+        display: block;
+        margin-bottom: 0px;
+
+      }
+    }
+    .gn-layer-outofrange > label {
+      color: #999;
+    }
+    .gn-searchlayer {
+      label {
+        font-size: 90%;
+        max-width: 68%;
+      }
+    }
+    .list-group-item {
+      transition: max-height @transition-params;
+      &:hover {
+        .fa-arrows-alt, .gn-layer-ordering {
+          opacity: 1
+        }
+      }
+      label {
+        font-weight: normal;
+      }
+      & > label {
+        font-size: 90%;
+        max-width: 72%;
+      }
+    }
+    .btn-group.gn-layer-btn {
+      display: inherit;
+    }
+    .btn-group {
+      display: flex;
+      .btn {
+        flex: 1;
+      }
+    }
+    .flux, .context {
+      margin: .2em;
+    }
+    .baselayer {
+      .dropdown-menu {
+        width: 100%;
+        top: 100%;
+        bottom: unset;
+      }
+    }
+    .gn-layer-actions {
+      [ngeo-popover-anchor] {
+        text-decoration: none;
+      }
+    }
+    .unfold {
+      opacity: 0;
+      transition: opacity @transition-params;
+      float: right;
+      border: none;
+      background: none;
+      padding: 0;
+    }
+    .unfold,
+    .close {
+      margin-top: -.1em;
+      margin-right: .2em;
+    }
+    .details {
+      font-size: 90%;
+      margin: 0 0 .5em 0;
+      p {
+        overflow: auto;
+      }
+      .delete {
+        .btn-xs;
+        .pull-right;
+        clear: both;
+        margin-top: 1.3em;
+      }
+    }
+    h5 {
+      margin: .2em 0;
+    }
+    [gn-layermanager] {
+      max-height: 44em;
+      overflow-y: auto;
+      .gn-layer-ordering {
+        margin-top: -4px;
+        margin-right: -10px;
+        .fa {
+          padding: 0px 10px;
+          font-size: 0.8em;
+        }
+      }
+      ul {
+        margin-bottom: 4px;
+      }
+    }
+    .metadata {
+      .btn;
+      .btn-link;
+      width: 100%;
+      font-style: italic;
+      font-size: 13px;
+    }
+    label {
+      padding: 10px 0;
+      font-weight: normal;
+    }
+  }
+
+  @import "../components/viewer/wmsimport/style/layertree.less";
+
+  .fu {
+    position: relative;
+    input[type=file] {
+      position: absolute;
+      top: 0;
+      left: 0;
+      opacity: 0;
+      width: 100%;
+    }
+  }
+
+  //.collapsed {
+  //  max-height: 0;
+  //  min-height: 0;
+  //  overflow-y: hidden;
+  //  border: 0;
+  //  margin: 0;
+  //  padding: 0;
+  //}
+  .force-hide {
+    opacity: 0;
+    pointer-events: none;
+  }
+
+  /* hackish tmp */
+  .ol-overlaycontainer-stopevent {
+    /* display: none; */
+  }
+  .overlay {
+    position: absolute;
+    bottom: 12px;
+    left: ~"calc(-10px - 2em)";
+    background: rgba(60,60,60,.8);
+    line-height: 2em;
+    padding: 1em;
+    width: 17em;
+    color: #fff;
+    text-shadow: 0 0 1px #000;
+    border-radius: 2px;
+    font-size: 12px;
+    &:after {
+      content: ' ';
+      position: absolute;
+      bottom: -10px;
+      left: 2em;
+      width: 0;
+      height: 0;
+      border-style: solid;
+      border-width: 10px 10px 0 10px;
+      border-color: rgba(60,60,60,.8) transparent;
+    }
+    dl {
+      margin-bottom: 0;
+      dl dd, dl dt {
+        display: block;
+        float: none;
+        width: 100%;
+        margin-left: 0;
+        text-align: left;
+      }
+    }
+    dt {
+      width: 6em;
+    }
+    dd {
+      margin-left: 6.5em;
+    }
+  }
+
+  /* jquery-ui slider */
+  .ui-slider {
+    position: relative;
+    text-align: left;
+    border: 1px solid #ddd;
+    height: .7em;
+    margin: 0.8em 0;
+
+    .ui-slider-range {
+      position: absolute;
+      z-index: 1;
+      font-size: .7em;
+      display: block;
+      border: 0;
+      background-position: 0 0;
+      background-color: dimgrey;
+      top: 0;
+      height: 100%;
+    }
+    .ui-slider-handle {
+      top: -.3em;
+      margin-left: -.6em;
+      position: absolute;
+      z-index: 2;
+      width: 0.8em;
+      height: 1.2em;
+      border-radius: 1.2em;
+      cursor: ew-resize;
+    }
+    .ui-state-default {
+      border: 1px solid #d3d3d3;
+      background: #e6e6e6 none 50% 50% repeat-x;
+      font-weight: normal;
+      color: #555555;
+    }
+  }
+
+  /* Measures */
+  .gn-measure-text {
+    .alert {
+      margin-top: 1em;
+    }
+    dt {
+      width: 120px;
+    }
+    dd {
+      margin-left: 130px;
+    }
+  }
+
+
+  .alert-warning  {
+    background: rgba(252,248,227,.6)
+  }
+  .panel-sm {
+    font-size: @font-size-small;
+  }
+
+  [gn-localisation-input] {
+    .dropdown-menu {
+      padding-bottom: 0;
+    }
+  }
+  .gn-draw-styleform {
+    > div > input {
+      margin: 15px 0;
+      width: 80%;
+    }
+    label {
+      font-weight: normal;
+      font-size: 13px;
+    }
+    form {
+      margin-top: 10px;
+      padding-bottom: 100px;
+      input[type='text'] {
+        width: 146px;
+      }
+      input[type='number'] {
+        width: 55px;
+      }
+      .form-group {
+        margin-top: 2px;
+        margin-bottom: 8px;
+      }
+    }
+  }
+
+
+  [gn-data-filter-view],
+  [data-gn-data-filter-view],
+  .gn-data-filter-view {
+    table {
+      font-size: 80%;
+    }
+    .gn-btn-data-download {
+      position: absolute;
+      right: 0px;
+      top: 18px;
+    }
+  }
+}
+
+[gn-popup] {
+  display: none;
+  min-width: 200px;
+  max-width: @gn-popup-max-width;
+  min-height: 100px;
+  max-height: ~"calc(100% - 89px)";
+  z-index: 2000;
+  height: auto;
+
+  @media (max-width: @screen-tablet) {
+    z-index: 1500;
+    left: 2%;
+    right: 2%;
+    top: 2%;
+    bottom: 2%;
+    max-height: none;
+    max-width: none;
+    overflow-y: auto;
+    -webkit-overflow-scrolling: touch;
+  }
+  @media (max-width: @screen-phone) {
+    position: fixed !important;
+    overflow: hidden;
+  }
+}
+
+[gn-bootstrap-datepicker].input-group[class*="col-"] {
+  padding-left: 15px;
+  padding-right: 15px;
+}
+
+.gn-popup-content {
+  overflow: auto;
+  max-width: inherit;
+  max-height: 600px;
+  font-size: 12px;
+  @media (max-width: @screen-phone) {
+    width: 100%;
+    height: auto;
+    max-height: none;
+    position: absolute;
+    top: 36px;
+    bottom: 10px;
+    overflow-x: hidden;
+    overflow-y: auto;
+    table {
+      width: 100% !important;
+      td {
+        vertical-align: top;
+      }
+    }
+  }
+  .gn-popup-iframe {
+    width: 1000px;
+    height: 600px;
+
+    &.profile {
+      width: 500px;
+      height: 400px;
+    }
+    &.transect {
+      width: 400px;
+      height: 600px;
+    }
+    &.time {
+      width: 400px;
+      height: 300px;
+    }
+  }
+}
+
+
+
+[data-gn-wfs-filter-facets], [gn-wfs-filter-facets] {
+  font-size:12px;
+  .gn-facet {
+    > .list-group {
+      overflow: auto;
+      max-height: 10em;
+      margin-bottom: 10px;
+    }
+
+    .list-group-item:hover {
+      cursor: pointer;
+    }
+    .fa {
+      margin-right: .3em;
+      font-size: 14px;
+    }
+  }
+
+  .btn-group {
+    margin-top: 15px;
+    margin-bottom: 15px;
+    display: inline-block !important;
+  }
+
+  .close {
+    font-size: 14px;
+  }
+}
+
+[gn-wfs-filter-facets-tree] {
+  .list-group .list-group{
+    display: none;
+  }
+  .gn-leaf {
+    margin-left: 16px;
+  }
+}
+
+gn-features-tables, .gn-viewer-info-pane {
+  display          : block;
+  position         : absolute;
+  bottom           : 1em;
+  left             : 1em;
+  right            : 3.8em;
+  background-color : rgba(255,255,255, .6);
+  border-radius    : 3px;
+  .nav li a {
+    background  : rgba(255, 255, 255, .5);
+    text-shadow : 0 0 1px white;
+    .badge {
+      text-shadow : none;
+    }
+  }
+  .tab-content {
+    background : white;
+    min-height : 5em;
+    padding    : 1em;
+  }
+  .gn-features-table {
+    padding          : .25em;
+  }
+  .layername {
+    display        : inline-block;
+    max-width      : 10em;
+    text-overflow  : ellipsis;
+    white-space    : nowrap;
+    overflow       : hidden;
+    vertical-align : middle;
+  }
+  .close {
+    font-size : 24px;
+    margin    : .25em .4em 0 0;
+  }
+
+  .profile {
+    width: 100%;
+    min-height: 20em;
+    height: 200px;
+    overflow-x: auto;
+    svg {
+      width: auto;
+    }
+    .overlay {
+      width: 100%;
+    }
+  }
+}
+
+gn-wps-process-form {
+  .popover-parent {
+    position: relative;
+  }
+
+  ul {
+    list-style: none;
+  }
+
+  .panel {
+    background: none;
+    margin-bottom: 0px;
+    border: none;
+    box-shadow: none;
+
+    .panel-heading {
+      height: 2em;
+      line-height: 1.6em;
+
+      .close {
+        margin-right: -0.2em;
+      }
+    }
+  }
+
+  .form-group .output-selection {
+    display: inline-block;
+  }
+  .form-group .input-group {
+    margin-bottom: 6px;
+  }
+}
+
+gn-geometry-tool .btn-group {
+  display: flex;
+  .btn {
+    flex-basis: initial !important;
+    flex-grow: 1;
+    &.btn-icon {
+      flex-grow: 0 !important;
+    }
+  }
+}
+
+.ol-dragbox, .gnbbox-dragbox {
+   background-color: rgba(255,255,255,0.4);
+   border: solid 2px red;
+ }
+
+.layermanager-item-menu {
+  margin: -9px -14px;
+  ul {
+    li {
+      padding: 8px 10px !important;
+      border-top: 1px solid #ccc;
+      a {
+        font-size: 14px;
+      }
+      &:first-child {
+        border-top: 0;
+      }
+      label {
+        color: #757575;
+      }
+    }
+    input[type="range"] {
+      width: 100% !important;
+    }
+  }
+}
+
+[gn-ows-context] {
+  ul.gn-resultview li.gn-grid {
+    width: 150px;
+    min-width: 150px;
+    max-height: 170px;
+    padding: 2px;
+    margin: 2px;
+    font-size: 80%;
+    text-align: center;
+  }
+  .gn-md-thumbnail {
+    float:left;
+    width: 110px;
+    height: 110px;
+    margin: 2px !important;
+  }
+}
+[data-gn-search-layer-for-map] {
+  .gn-md-thumbnail .gn-img-thumbnail {
+    width: 40px;
+    height: 40px;
+    margin: 2px !important;
+  }
+}
diff --git a/src/main/webapp/catalog/style/inspire/iti.css b/src/main/webapp/catalog/style/inspire/iti.css
new file mode 100644
index 0000000..6c19692
--- /dev/null
+++ b/src/main/webapp/catalog/style/inspire/iti.css
@@ -0,0 +1,776 @@
+/* Colors by group of themes */
+/* Icons ref for the 34 themes */
+/* Fonts containing icons for the 34 themes */
+@font-face {
+    font-family: 'INSPIRE-themes';
+    src: url('../catalog/style/inspire/INSPIRE-themes.eot?9d9vnf');
+    src: url('../catalog/style/inspire/INSPIRE-themes.eot?#iefix9d9vnf') format('embedded-opentype'), url('../catalog/style/inspire/INSPIRE-themes.ttf?9d9vnf') format('truetype'), url('../catalog/style/inspire/INSPIRE-themes.woff?9d9vnf') format('woff'), url('../catalog/style/inspire/INSPIRE-themes.svg?9d9vnf#INSPIRE-themes') format('svg');
+    font-weight: normal;
+    font-style: normal;
+}
+/* Fonts for labels
+   Generated by Font Squirrel (http://www.fontsquirrel.com) on June 2, 2015 */
+@font-face {
+    font-family: 'pf_square_sans_promedium';
+    src: url('../catalog/style/inspire/pfsquaresanspro-medium-webfont.eot');
+    src: url('../catalog/style/inspire/pfsquaresanspro-medium-webfont.eot?#iefix') format('embedded-opentype'), url('../catalog/style/inspire/pfsquaresanspro-medium-webfont.woff2') format('woff2'), url('../catalog/style/inspire/pfsquaresanspro-medium-webfont.woff') format('woff'), url('../catalog/style/inspire/pfsquaresanspro-medium-webfont.ttf') format('truetype'), url('pfsquaresanspro-medium-webfont.svg#pf_square_sans_promedium') format('svg');
+    font-weight: normal;
+    font-style: normal;
+}
+[class^="iti-"],
+[class*=" iti-"] {
+    font-family: 'INSPIRE-themes';
+    speak: none;
+    font-style: normal;
+    font-weight: normal;
+    font-variant: normal;
+    text-transform: none;
+    line-height: 1;
+    /* Better Font Rendering =========== */
+    -webkit-font-smoothing: antialiased;
+    -moz-osx-font-smoothing: grayscale;
+}
+.inspire-themes-icons-box,
+.iti-box {
+    border-radius: 6px;
+    border-collapse: initial;
+    margin: 2px;
+    width: 34px;
+    height: 34px;
+    float: left;
+    margin-right: 5px;
+    border: 2px solid;
+    /* Border colors */
+}
+.inspire-themes-icons-box .icon,
+.iti-box .icon {
+    border-radius: 4px;
+    border: 1px solid #ffffff;
+    padding: 0px;
+    width: 32px;
+    height: 32px;
+    background-color: white;
+    font-size: 32px;
+    display: table-cell;
+    vertical-align: middle;
+}
+.inspire-themes-icons-box.acr,
+.iti-box.acr {
+    width: 80px;
+    display: table;
+}
+.inspire-themes-icons-box.acr p.label,
+.iti-box.acr p.label {
+    font-size: 24px;
+    display: table-cell;
+    vertical-align: middle;
+    margin-top: 6px;
+    margin-bottom: 0px;
+}
+.inspire-themes-icons-box.full,
+.iti-box.full {
+    width: 240px;
+    display: table;
+}
+.inspire-themes-icons-box.full p.label,
+.iti-box.full p.label {
+    font-size: 11px;
+    width: 202px;
+    display: table-cell;
+    vertical-align: middle;
+}
+.inspire-themes-icons-box p.label,
+.iti-box p.label,
+.inspire-themes-icons-box p.label:before,
+.iti-box p.label:before {
+    float: left;
+    /*font-family: pf_square_sans_promedium;*/
+    color: white;
+    margin-left: 4px;
+}
+.inspire-themes-icons-box.bu,
+.iti-box.bu,
+.inspire-themes-icons-box.cp,
+.iti-box.cp,
+.inspire-themes-icons-box.gg,
+.iti-box.gg,
+.inspire-themes-icons-box.gn,
+.iti-box.gn,
+.inspire-themes-icons-box.oi,
+.iti-box.oi,
+.inspire-themes-icons-box.rs,
+.iti-box.rs {
+    background-color: #b2b2b2;
+    border-color: #b2b2b2;
+}
+.inspire-themes-icons-box.am,
+.iti-box.am,
+.inspire-themes-icons-box.au,
+.iti-box.au,
+.inspire-themes-icons-box.hh,
+.iti-box.hh,
+.inspire-themes-icons-box.lu,
+.iti-box.lu,
+.inspire-themes-icons-box.pd,
+.iti-box.pd,
+.inspire-themes-icons-box.su,
+.iti-box.su {
+    background-color: #ea572d;
+    border-color: #ea572d;
+}
+.inspire-themes-icons-box.ad,
+.iti-box.ad,
+.inspire-themes-icons-box.af,
+.iti-box.af,
+.inspire-themes-icons-box.el,
+.iti-box.el,
+.inspire-themes-icons-box.er,
+.iti-box.er,
+.inspire-themes-icons-box.pf,
+.iti-box.pf,
+.inspire-themes-icons-box.tn,
+.iti-box.tn,
+.inspire-themes-icons-box.us,
+.iti-box.us {
+    background-color: #f59e00;
+    border-color: #f59e00;
+}
+.inspire-themes-icons-box.ac,
+.iti-box.ac,
+.inspire-themes-icons-box.ef,
+.iti-box.ef,
+.inspire-themes-icons-box.hy,
+.iti-box.hy,
+.inspire-themes-icons-box.mf,
+.iti-box.mf,
+.inspire-themes-icons-box.of,
+.iti-box.of,
+.inspire-themes-icons-box.sr,
+.iti-box.sr {
+    background-color: #36a9e1;
+    border-color: #36a9e1;
+}
+.inspire-themes-icons-box.br,
+.iti-box.br,
+.inspire-themes-icons-box.hb,
+.iti-box.hb,
+.inspire-themes-icons-box.lc,
+.iti-box.lc,
+.inspire-themes-icons-box.ps,
+.iti-box.ps,
+.inspire-themes-icons-box.sd,
+.iti-box.sd {
+    background-color: #95c11f;
+    border-color: #95c11f;
+}
+.inspire-themes-icons-box.ge,
+.iti-box.ge,
+.inspire-themes-icons-box.mr,
+.iti-box.mr,
+.inspire-themes-icons-box.nz,
+.iti-box.nz,
+.inspire-themes-icons-box.so,
+.iti-box.so {
+    background-color: #b17f4a;
+    border-color: #b17f4a;
+}
+/* Icon colors */
+.iti-bu, .iti-15, .iti-Bâtiments,
+.iti-cp, .iti-6, .iti-Parcellescadastrales,
+.iti-gg, .iti-2, .iti-Systèmesdemaillagegéographique,
+.iti-gn, .iti-3, .iti-Dénominationsgéographiques,
+.iti-oi, .iti-12,.iti-Ortho-imagerie,
+.iti-rs, .iti-1, .iti-Référentielsdecoordonnées {
+    color: #b2b2b2;
+}
+.iti-am, .iti-24, .iti-Zonesdegestionderestrictionouderéglementationetunitésdedéclaration,
+.iti-au, .iti-4, .iti-Unitésadministratives,
+.iti-hh, .iti-18, .iti-Santéetsécuritédespersonnes,
+.iti-lu, .iti-17, .iti-Usagedessols,
+.iti-pd, .iti-23, .iti-Répartitiondelapopulation—démographie,
+.iti-su, .iti-14, .iti-Unitésstatistiques {
+    color: #ea572d;
+}
+.iti-ad, .iti-5, .iti-Adresses,
+.iti-af, .iti-22, .iti-Installationsagricolesetaquacoles,
+.iti-el, .iti-10, .iti-Altitude,
+.iti-er, .iti-33, .iti-Sourcesdénergie,
+.iti-pf, .iti-21, .iti-Lieuxdeproductionetsitesindustriels,
+.iti-tn, .iti-7, .iti-Réseauxdetransport,
+.iti-us, .iti-19, .iti-Servicesdutilitépubliqueetservicespublics{
+    color: #f59e00;
+}
+.iti-ac, .iti-26, .iti-Conditionsatmosphériques,
+.iti-ef, .iti-20, .iti-Installationsdesuivienvironnemental,
+.iti-hy, .iti-8, .iti-Hydrographie,
+.iti-mf, .iti-27, .iti-Caractéristiquesgéographiquesmétéorologiques,
+.iti-of, .iti-28, .iti-Caractéristiquesgéographiquesocéanographiques,
+.iti-sr, .iti-29 .iti-Régionsmaritimes{
+    color: #36a9e1;
+}
+.iti-br, .iti-30, .iti-Régionsbiogéographiques,
+.iti-hb, .iti-31, .iti-Habitatsetbiotopes,
+.iti-lc, .iti-11, .iti-Occupation,
+.iti-ps, .iti-9, .iti-Sitesprotégés,
+.iti-sd, .iti-32, .iti-Répartitiondesespèces {
+    color: #95c11f;
+}
+.iti-ge, .iti-13, .iti-Géologie,
+.iti-mr, .iti-34, .iti-Ressourcesminérales,
+.iti-nz, .iti-25, .iti-Zonesàrisquenaturel,
+.iti-so, .iti-16, .iti-Sols {
+    color: #b17f4a;
+}
+/*
+An experiment of loop - need more work.
+@iti-theme-bu: bu;
+@iti-theme-cp: cp;
+@iti-theme-gg: gg;
+@iti-group-grey: @iti-theme-bu, @iti-theme-cp, @iti-theme-gg;
+
+.iti-group-box-color(@color) {
+  background-color: @color;
+  border-color: @color;
+}
+.@{iti-css-prefix}-box {
+  .-(@i: length(@iti-group-grey)) when (@i > 0) {
+    @name: extract(@iti-group-grey, @i);
+    &.@{name} {
+      .iti-group-box-color(@iti-color-grey)
+    }
+    .-((@i - 1));
+  } .-;
+}*/
+.iti-bu:before, .iti-15:before, .iti-Bâtiments:before {
+    content: "\e606";
+}
+.iti-cp:before, .iti-6:before, .iti-Parcellescadastrales:before {
+    content: "\e607";
+}
+.iti-gg:before, .iti-2:before, .iti-Systèmesdemaillagegéographique:before {
+    content: "\e60c";
+}
+.iti-gn:before, .iti-3:before, .iti-Dénominationsgéographiques:before {
+    content: "\e60d";
+}
+.iti-oi:before, .iti-12:before, .iti-Ortho-imagerie:before {
+    content: "\e617";
+}
+.iti-rs:before, .iti-1:before, .iti-Référentielsdecoordonnées:before {
+    content: "\e61b";
+}
+.iti-am:before, .iti-24:before, .iti-Zonesdegestionderestrictionouderéglementationetunitésdedéclaration:before {
+    content: "\e603";
+}
+.iti-au:before, .iti-4:before, .iti-Unitésadministratives:before {
+    content: "\e604";
+}
+.iti-hh:before, .iti-18:before, .iti-Santéetsécuritédespersonnes:before {
+    content: "\e60f";
+}
+.iti-lu:before, .iti-17:before, .iti-Usagedessols:before {
+    content: "\e612";
+}
+.iti-pd:before, .iti-23:before, .iti-Répartitiondelapopulation—démographie:before {
+    content: "\e618";
+}
+.iti-su:before, .iti-14:before, .iti-Unitésstatistiques:before {
+    content: "\e61f";
+}
+.iti-ad:before, .iti-5:before, .iti-Adresses:before {
+    content: "\e601";
+}
+.iti-af:before, .iti-22:before, .iti-Installationsagricolesetaquacoles:before {
+    content: "\e602";
+}
+.iti-el:before, .iti-10:before, .iti-Altitude:before {
+    content: "\e609";
+}
+.iti-er:before, .iti-33:before, .iti-Sourcesdénergie:before {
+    content: "\e60a";
+}
+.iti-pf:before, .iti-21:before, .iti-Lieuxdeproductionetsitesindustriels:before {
+    content: "\e619";
+}
+.iti-tn:before, .iti-7:before, .iti-Réseauxdetransport:before{
+    content: "\e620";
+}
+.iti-us:before, .iti-19:before, .iti-Servicesdutilitépubliqueetservicespublics:before {
+    content: "\e621";
+}
+.iti-ac:before, .iti-26:before, .iti-Conditionsatmosphériques:before{
+    content: "\e600";
+}
+.iti-ef:before, .iti-20:before, .iti-Installationsdesuivienvironnemental:before {
+    content: "\e608";
+}
+.iti-hy:before, .iti-8:before, .iti-Hydrographie:before {
+    content: "\e610";
+}
+.iti-mf:before, .iti-27:before, .iti-Caractéristiquesgéographiquesmétéorologiques:before {
+    content: "\e613";
+}
+.iti-of:before, .iti-28:before, .iti-Caractéristiquesgéographiquesocéanographiques:before {
+    content: "\e616";
+}
+.iti-sr:before, .iti-29:before, .iti-Régionsmaritimes:before {
+    content: "\e61e";
+}
+.iti-br:before, .iti-30:before, .iti-Régionsbiogéographiques:before {
+    content: "\e605";
+}
+.iti-hb:before, .iti-31:before, .iti-Habitatsetbiotopes:before {
+    content: "\e60e";
+}
+.iti-lc:before, .iti-11:before, .iti-Occupation:before {
+    content: "\e611";
+}
+.iti-ps:before, .iti-9:before, .iti-Sitesprotégés:before {
+    content: "\e61a";
+}
+.iti-sd:before, .iti-32:before, .iti-Répartitiondesespèces:before {
+    content: "\e61c";
+}
+.iti-ge:before, .iti-13:before, .iti-Géologie:before {
+    content: "\e60b";
+}
+.iti-mr:before, .iti-34:before, .iti-Ressourcesminérales:before {
+    content: "\e614";
+}
+.iti-nz:before, .iti-25:before, .iti-Zonesàrisquenaturel:before {
+    content: "\e615";
+}
+.iti-so:before, .iti-16:before, .iti-Sols:before {
+    content: "\e61d";
+}
+/*=========SCALABILITY=========*/
+.x05 .iti-box {
+    border-radius: 3px;
+    /*6*/
+    width: 16px;
+    /*34*/
+    height: 16px;
+    /*34*/
+    margin-right: 2px;
+    /*5*/
+    border-width: 1px;
+    /*2*/
+}
+.x05 .iti-box .icon {
+    border-radius: 2px;
+    /*4*/
+    border-width: 0px;
+    /*1*/
+    width: 16px;
+    /*32*/
+    height: 16px;
+    /*32*/
+    font-size: 16px;
+    /*32*/
+}
+.x05 .iti-box.acr {
+    width: 40px;
+    /*80*/
+}
+.x05 .iti-box.full {
+    width: 110px;
+    /*220*/
+}
+.x05 .iti-box .label,
+.x05 .iti-box .label:before {
+    margin-left: 2px;
+    /*4*/
+}
+.x05 .iti-box.acr .label {
+    font-size: 12px;
+    /*24*/
+    margin-top: 3px;
+    /*6*/
+}
+.x05 .iti-box.full .label {
+    font-size: 4px;
+    /*11*/
+    margin-top: 4px;
+    /*11*/
+    width: 91px;
+    /*182*/
+    /*white-space: pre;*/
+    display: none;
+}
+.x05 .iti-box.full .label.two {
+    margin-top: 3px;
+    /*6*/
+}
+.x15 .iti-box {
+    border-radius: 9px;
+    /*6*/
+    width: 50px;
+    /*34*/
+    height: 50px;
+    /*34*/
+    margin-right: 8px;
+    /*5*/
+    border-width: 3px;
+    /*2*/
+}
+.x15 .iti-box .icon {
+    border-radius: 6px;
+    /*4*/
+    border-width: 1px;
+    /*1*/
+    width: 48px;
+    /*32*/
+    height: 48px;
+    /*32*/
+    font-size: 48px;
+    /*32*/
+}
+.x15 .iti-box.acr {
+    width: 120px;
+    /*80*/
+}
+.x15 .iti-box.full {
+    width: 330px;
+    /*220*/
+}
+.x15 .iti-box .label,
+.x15 .iti-box .label:before {
+    margin-left: 6px;
+    /*4*/
+}
+.x15 .iti-box.acr .label {
+    font-size: 36px;
+    /*24*/
+    margin-top: 9px;
+    /*6*/
+}
+.x15 .iti-box.full .label {
+    font-size: 17px;
+    /*11*/
+    margin-top: 17px;
+    /*11*/
+    width: 273px;
+    /*182*/
+    /*white-space: pre;*/
+}
+.x15 .iti-box.full .label.two {
+    margin-top: 9px;
+    /*6*/
+}
+.x20 .iti-box {
+    border-radius: 12px;
+    /*6*/
+    width: 68px;
+    /*34*/
+    height: 68px;
+    /*34*/
+    margin-right: 10px;
+    /*5*/
+    border-width: 4px;
+    /*2*/
+}
+.x20 .iti-box .icon {
+    border-radius: 8px;
+    /*4*/
+    border-width: 2px;
+    /*1*/
+    width: 64px;
+    /*32*/
+    height: 64px;
+    /*32*/
+    font-size: 64px;
+    /*32*/
+}
+.x20 .iti-box.acr {
+    width: 160px;
+    /*80*/
+}
+.x20 .iti-box.full {
+    width: 440px;
+    /*220*/
+}
+.x20 .iti-box .label,
+.x20 .iti-box .label:before {
+    margin-left: 8px;
+    /*4*/
+}
+.x20 .iti-box.acr .label {
+    font-size: 48px;
+    /*24*/
+    margin-top: 12px;
+    /*6*/
+}
+.x20 .iti-box.full .label {
+    font-size: 22px;
+    /*11*/
+    margin-top: 22px;
+    /*11*/
+    width: 364px;
+    /*11*/
+    /*white-space: pre;*/
+}
+.x20 .iti-box.full .label.two {
+    margin-top: 12px;
+    /*6*/
+}
+.x25 .iti-box {
+    border-radius: 18px;
+    /*6*/
+    width: 84px;
+    /*34*/
+    height: 84px;
+    /*34*/
+    margin-right: 15px;
+    /*5*/
+    border-width: 6px;
+    /*2*/
+}
+.x25 .iti-box .icon {
+    border-radius: 12px;
+    /*4*/
+    border-width: 2px;
+    /*1*/
+    width: 80px;
+    /*32*/
+    height: 80px;
+    /*32*/
+    font-size: 80px;
+    /*32*/
+}
+.x25 .iti-box.acr {
+    width: 200px;
+    /*80*/
+}
+.x25 .iti-box.full {
+    width: 550px;
+    /*220*/
+}
+.x25 .iti-box .label,
+.x25 .iti-box .label:before {
+    margin-left: 10px;
+    /*4*/
+}
+.x25 .iti-box.acr .label {
+    font-size: 60px;
+    /*24*/
+    margin-top: 15px;
+    /*6*/
+}
+.x25 .iti-box.full .label {
+    font-size: 28px;
+    /*11*/
+    margin-top: 28px;
+    /*11*/
+    width: 454px;
+    /*182*/
+    /*white-space: pre;*/
+}
+.x25 .iti-box.full .label.two {
+    margin-top: 15px;
+    /*6*/
+}
+.iti-box.acr.ac .label:before {
+    content: "AC";
+}
+.iti-box.acr.ad .label:before {
+    content: "AD";
+}
+.iti-box.acr.af .label:before {
+    content: "AF";
+}
+.iti-box.acr.am .label:before {
+    content: "AM";
+}
+.iti-box.acr.au .label:before {
+    content: "AU";
+}
+.iti-box.acr.br .label:before {
+    content: "BR";
+}
+.iti-box.acr.bu .label:before {
+    content: "BU";
+}
+.iti-box.acr.cp .label:before {
+    content: "CP";
+}
+.iti-box.acr.ef .label:before {
+    content: "EF";
+}
+.iti-box.acr.el .label:before {
+    content: "EL";
+}
+.iti-box.acr.er .label:before {
+    content: "ER";
+}
+.iti-box.acr.ge .label:before {
+    content: "GE";
+}
+.iti-box.acr.gg .label:before {
+    content: "GG";
+}
+.iti-box.acr.gn .label:before {
+    content: "GN";
+}
+.iti-box.acr.hb .label:before {
+    content: "HB";
+}
+.iti-box.acr.hh .label:before {
+    content: "HH";
+}
+.iti-box.acr.hy .label:before {
+    content: "HY";
+}
+.iti-box.acr.lc .label:before {
+    content: "LC";
+}
+.iti-box.acr.lu .label:before {
+    content: "LU";
+}
+.iti-box.acr.mf .label:before {
+    content: "MF";
+}
+.iti-box.acr.mr .label:before {
+    content: "MR";
+}
+.iti-box.acr.nz .label:before {
+    content: "NZ";
+}
+.iti-box.acr.of .label:before {
+    content: "OF";
+}
+.iti-box.acr.oi .label:before {
+    content: "OI";
+}
+.iti-box.acr.pd .label:before {
+    content: "PD";
+}
+.iti-box.acr.pf .label:before {
+    content: "PF";
+}
+.iti-box.acr.ps .label:before {
+    content: "PS";
+}
+.iti-box.acr.rs .label:before {
+    content: "RS";
+}
+.iti-box.acr.sd .label:before {
+    content: "SD";
+}
+.iti-box.acr.so .label:before {
+    content: "SO";
+}
+.iti-box.acr.sr .label:before {
+    content: "SR";
+}
+.iti-box.acr.su .label:before {
+    content: "SU";
+}
+.iti-box.acr.tn .label:before {
+    content: "TN";
+}
+.iti-box.acr.us .label:before {
+    content: "US";
+}
+
+.iti-box.full.ac-en .label:before {
+    content: "Atmospheric conditions";
+}
+.iti-box.full.ad-en .label:before {
+    content: "Addresses";
+}
+.iti-box.full.af-en .label:before {
+    content: "Agricultural and\A aquaculture facilities";
+}
+.iti-box.full.am-en .label:before {
+    content: "Area management/restriction/\A regulation zones and reporting units";
+}
+.iti-box.full.au-en .label:before {
+    content: "Administrative units";
+}
+.iti-box.full.br-en .label:before {
+    content: "Bio-geographical regions";
+}
+.iti-box.full.bu-en .label:before {
+    content: "Buildings";
+}
+.iti-box.full.cp-en .label:before {
+    content: "Cadastral parcels";
+}
+.iti-box.full.ef-en .label:before {
+    content: "Environmental monitoring facilities";
+}
+.iti-box.full.el-en .label:before {
+    content: "Elevation";
+}
+.iti-box.full.er-en .label:before {
+    content: "Energy resources";
+}
+.iti-box.full.ge-en .label:before {
+    content: "Geology";
+}
+.iti-box.full.gg-en .label:before {
+    content: "Geographical grid systems";
+}
+.iti-box.full.gn-en .label:before {
+    content: "Geographical names";
+}
+.iti-box.full.hb-en .label:before {
+    content: "Habitats and biotopes";
+}
+.iti-box.full.hh-en .label:before {
+    content: "Human health and safety";
+}
+.iti-box.full.hy-en .label:before {
+    content: "Hydrography";
+}
+.iti-box.full.lc-en .label:before {
+    content: "Land cover";
+}
+.iti-box.full.lu-en .label:before {
+    content: "Land use";
+}
+.iti-box.full.mf-en .label:before {
+    content: "Meteorological\A geographical features";
+}
+.iti-box.full.mr-en .label:before {
+    content: "Mineral resources";
+}
+.iti-box.full.nz-en .label:before {
+    content: "Natural risk zones";
+}
+.iti-box.full.of-en .label:before {
+    content: "Oceanographic\A geographical features";
+}
+.iti-box.full.oi-en .label:before {
+    content: "Orthoimagery";
+}
+.iti-box.full.pd-en .label:before {
+    content: "Population distribution –\A demography";
+}
+.iti-box.full.pf-en .label:before {
+    content: "Production and industrial facilities";
+}
+.iti-box.full.ps-en .label:before {
+    content: "Protected sites";
+}
+.iti-box.full.rs-en .label:before {
+    content: "Coordinate reference systems";
+}
+.iti-box.full.sd-en .label:before {
+    content: "Species distribution";
+}
+.iti-box.full.so-en .label:before {
+    content: "Soil";
+}
+.iti-box.full.sr-en .label:before {
+    content: "Sea regions";
+}
+.iti-box.full.su-en .label:before {
+    content: "Statistical units";
+}
+.iti-box.full.tn-en .label:before {
+    content: "Transport networks";
+}
+.iti-box.full.us-en .label:before {
+    content: "Utility and governmental services";
+}
diff --git a/src/main/webapp/catalog/templates/admin/admin.html b/src/main/webapp/catalog/templates/admin/admin.html
new file mode 100644
index 0000000..2085edc
--- /dev/null
+++ b/src/main/webapp/catalog/templates/admin/admin.html
@@ -0,0 +1,38 @@
+<span>
+  <div class="col-lg-8" data-ng-controller="GnAdminController">
+    <div class="clearfix">
+      <a data-ng-repeat="m in getMenu()" href="{{getMenuUrl(m)}}"
+        class="btn btn-lg btn-block {{m.classes}} gn-btn-admin" ng-if="getMenuUrl(m) != '#organization'">
+        <i class="fa {{m.icon}} fa-4x"/>
+        <p data-translate="">{{m.name}}</p>
+      </a>
+    </div>
+  </div>
+  <div class="col-lg-4">
+    <div class="panel panel-default" data-ng-hide="true">
+      <div class="panel-heading" data-translate="">latestNews</div>
+    </div>
+    <div class="panel panel-default" data-ng-hide="true">
+      <div class="panel-heading" data-translate="">quicklinks</div>
+    </div>
+    <div class="panel panel-default text-center" data-ng-hide="searchInfo.facet.types.length === 0">
+      <div class="panel-body">
+        <div data-ng-repeat="type in searchInfo.facet.types">
+          <h2>{{type['@count']}}</h2>
+          <h5>{{(type['@label'] || type['@name']) | translate}}</h5>
+        </div>
+      </div>
+    </div>
+    <div class="panel panel-default text-center">
+      <div class="panel-body">
+        <div data-ng-hide="searchInfo.count == 0">
+          <h2>{{searchInfo.count}}</h2>
+          <h5 data-translate="" title="{{'totalNumberOfRecordsHelp' | translate}}"
+            >totalNumberOfRecords</h5>
+        </div>
+        <div data-ng-show="searchInfo.count == 0" data-translate=""> emptyCatalogShouldBeFilled
+        </div>
+      </div>
+    </div>
+  </div>
+</span>
diff --git a/src/main/webapp/catalog/templates/top-toolbar.html b/src/main/webapp/catalog/templates/top-toolbar.html
new file mode 100644
index 0000000..494adcc
--- /dev/null
+++ b/src/main/webapp/catalog/templates/top-toolbar.html
@@ -0,0 +1,156 @@
+<div class="container-fluid">
+  <div class="navbar-header">
+    <button type="button"
+            class="navbar-toggle collapsed"
+            data-toggle="collapse"
+            data-target="#navbar"
+            title="{{'toggleNavigation' | translate}}"
+            aria-expanded="false"
+            aria-controls="navbar">
+      <span class="sr-only" data-translate>toggleNavigation</span>
+      <span class="icon-bar"></span>
+      <span class="icon-bar"></span>
+      <span class="icon-bar"></span>
+    </button>
+  </div>
+  <div id="navbar" class="navbar-collapse collapse">
+    <ul class="nav navbar-nav">
+      <li data-ng-if="gnCfg.mods.home.enabled">
+        <a data-gn-active-tb-item="{{gnCfg.mods.home.appUrl}}">
+          <img class="gn-logo"
+               data-ng-src="{{gnUrl}}../images/logos/{{info['system/site/siteId']}}.png?random{{info['system/site/lastUpdate']}}"/>
+          <span class="hidden-sm hidden-md">{{info['system/site/name']}}</span>
+        </a>
+      </li>
+      <li data-ng-if="gnCfg.mods.search.enabled">
+        <a data-gn-active-tb-item="{{gnCfg.mods.search.appUrl}}"
+           title="{{'search' | translate}}">
+          <i class="fa fa-search"></i>
+          <span class="hidden-sm" data-translate="">search</span>
+        </a>
+      </li>
+      <li data-ng-if="gnCfg.mods.map.enabled">
+        <a data-gn-active-tb-item="{{gnCfg.mods.map.appUrl}}"
+           title="{{'map' | translate}}">
+          <i class="fa fa-globe"></i>
+          <span class="hidden-sm" data-translate="">makeYourMap</span>
+
+          <span data-gnv-layer-indicator=""/>
+        </a>
+      </li>
+      <li class="dropdown dropdown-hover open" data-ng-if="gnCfg.mods.editor.enabled"
+          data-ng-show="authenticated && user.isEditorOrMore()"
+          id="gn-login-dropdown">
+        <a data-gn-active-tb-item="{{gnCfg.mods.editor.appUrl}}"
+           title="{{'editorBoard' | translate}}"
+           class="dropdown-toggle"
+           role="button" aria-expanded="false">
+          <i class="fa fa-pencil"></i>
+          <span class="hidden-sm" data-translate="">contribute</span>
+        </a>
+        <ul class="dropdown-menu" role="menu">
+          <li>
+            <a data-gn-active-tb-item="{{gnCfg.mods.editor.appUrl}}#/create">
+              <i class="fa fa-fw fa-plus"/>&nbsp;<span data-translate="">addRecord</span>
+            </a>
+          </li>
+          <li>
+            <a data-gn-active-tb-item="{{gnCfg.mods.editor.appUrl}}#/import">
+              <i class="fa fa-fw fa-upload"/>&nbsp;<span data-translate="">ImportRecord</span>
+            </a>
+          </li>
+          <li>
+            <a data-gn-active-tb-item="{{gnCfg.mods.editor.appUrl}}#/directory">
+              <i class="fa fa-fw fa-list-ul"/>&nbsp;<span data-translate="">directoryManager</span>
+            </a>
+          </li>
+          <li>
+            <a data-gn-active-tb-item="{{gnCfg.mods.editor.appUrl}}#/batchedit">
+              <i class="fa fa-fw fa-pencil"/>&nbsp;<span data-translate="">batchEditing</span>
+            </a>
+          </li>
+        </ul>
+      </li>
+      <li class="dropdown dropdown-hover open" data-ng-show="user.isUserAdminOrMore()">
+        <a data-gn-active-tb-item="admin.console"
+           title="{{'adminConsole' | translate}}"
+           class="dropdown-toggle"
+           role="button" aria-expanded="false">
+          <i class="fa fa-wrench"></i>
+          <span class="hidden-sm" data-translate="">adminConsole</span>
+        </a>
+        <ul data-ng-if="user.isUserAdmin() && viewMenuAdmin" class="dropdown-menu" role="menu">
+          <li data-ng-repeat="t in userAdminMenu" data-ng-if="t.name!=usersAndGroups">
+            <a data-gn-active-tb-item="admin.console{{t.route}}">
+              <i class="fa fa-fw {{t.icon}}"/>&nbsp;<span data-translate="">{{t.name | translate}}</span>
+            </a>
+          </li>
+        </ul>
+        <ul data-ng-if="user.isAdministrator()" class="dropdown-menu" role="menu">
+          <li data-ng-repeat="t in adminMenu" data-ng-if="t.name!=usersAndGroups">
+            <a data-gn-active-tb-item="{{gnCfg.mods.admin.appUrl}}{{t.route}}">
+              <i class="fa fa-fw {{t.icon}}"/>&nbsp;<span data-translate="">{{t.name | translate}}</span>
+            </a>
+          </li>
+        </ul>
+      </li>
+      <li><a>
+          <span class="alert alert-danger ng-hide"
+                data-ng-show="session.remainingTime > 0 &&
+                    session.remainingTime < session.alertInTitleWhen"
+                data-translate=""
+                data-translate-values="{remainingTime: '{{session.remainingTime}}'}">
+            sessionWillExpireIn
+          </span>
+      </a></li>
+    </ul>
+
+
+    <form class="navbar-form navbar-right" role="language">
+      <div class="form-group"
+           data-gn-language-switcher="lang"
+           data-langs="langs"
+           data-lang-labels="langLabels"/>
+    </form>
+
+    <ul data-ng-if="gnCfg.mods.signin.enabled"
+        class="nav navbar-nav navbar-right">
+      <li data-ng-show="authenticated">
+        <a>
+          <user-account-expiration-msg/>
+        </a>
+      </li>
+      <li class="dropdown dropdown-hover open" data-ng-show="authenticated">
+         <a href="javascript:openUserDetails();"
+           title="Afficher les informations du compte"
+           class="hidden-xs btn btn-link">
+          <img class="img-circle"
+            data-ng-src="//gravatar.com/avatar/{{user.email | md5}}?s=18"/>&nbsp;
+          <div class="gn-user-info">
+            {{user.name}} {{user.surname}}<br>
+            <span class="gn-user-role">{{user.profile | lowercase | translate}}</span>
+          </div>
+          <user-account-expiration-msg/>
+        </a>
+        <ul class="dropdown-menu" role="menu">
+          <li>
+            <a href="{{gnCfg.mods.signout.appUrl}}"
+                title="{{'signout' | translate}}">
+              <i class="fa fa-sign-out"></i>&nbsp;
+              {{'signout' | translate}}
+            </a>
+          </li>
+        </ul>
+      </li>
+      <li data-ng-show="!authenticated && service !== 'catalog.signin' && service !== 'new.account' && !shibbolethEnabled">
+        <a href="{{gnCfg.mods.signin.appUrl | signInLink}}"
+           title="{{'signIn'|translate}}"
+           data-ng-keypress="$event"
+           data-ng-mouseover="focusLoginPopup()">
+          <i class="fa fa-sign-in"/>&nbsp;
+          {{'signIn' | translate}}
+        </a>
+      </li>
+    </ul>
+  </div>
+</div>
diff --git a/src/main/webapp/catalog/views/default/directives/partials/mdactionmenu.html b/src/main/webapp/catalog/views/default/directives/partials/mdactionmenu.html
new file mode 100644
index 0000000..85edfc4
--- /dev/null
+++ b/src/main/webapp/catalog/views/default/directives/partials/mdactionmenu.html
@@ -0,0 +1,121 @@
+<div>
+  <div class="btn-group md-actions"
+       data-ng-if="user.isConnected()">
+    <button type="button"
+            title="{{'manageRecord' | translate}}"
+            class="btn btn-default dropdown-toggle"
+            data-toggle="dropdown"
+            aria-expanded="false">
+      <i class="fa fa-cog"/>&nbsp;
+      <span class="caret"></span>
+    </button>
+    <ul class="dropdown-menu" role="menu">
+      <li><a data-ng-href=""
+             data-ng-if="user.canEditRecord(md) && user.isEditorOrMore()"
+             data-ng-click="mdService.openPrivilegesPanel(md, getCatScope())">
+        <i class="fa fa-key"></i>&nbsp;
+        <span data-translate="">privileges</span>
+      </a></li>
+      <li data-ng-if="md.isOwned() && user.isUserAdminOrMore()">
+        <a data-ng-href=""
+           data-ng-click="mdService.openTransferOwnership(md, null, getCatScope())">
+          <i class="fa fa-user"></i>&nbsp;
+          <span data-translate="">transferOwnership</span>
+        </a></li>
+      <li data-ng-if="user.canEditRecord(md) && user.isReviewerOrMore()"
+          data-ng-class="
+            (md.isPublished() || (allowPublishInvalidMd() === true) ||
+            (!md.isPublished() && (allowPublishInvalidMd() === false) &&
+            (!md.hasValidation() || (md.hasValidation() && md.isValid())))) ? '' : 'disabled'"
+          title="{{(!md.isPublished() ? (md.isValid() ? 'mdvalid' :
+                    (!md.hasValidation() ? 'mdnovalidation':
+                      (allowPublishInvalidMd() === false ? 'mdinvalidcantpublish' : 'mdinvalid'))) : '') | translate }}"
+      >
+        <a data-ng-click="mdService.publish(md, undefined, undefined, getCatScope())">
+          <i class="fa"
+             data-ng-class="md.isPublished() ? 'fa-lock' : 'fa-unlock'"></i>&nbsp;
+          <span data-ng-if="md.isPublished()"
+                data-translate="">unpublish</span>
+          <span data-ng-if="!md.isPublished()"
+                data-translate="">publish</span>&nbsp;
+
+          <i class="fa"
+             data-ng-if="!md.isPublished() && md.hasValidation()"
+             data-ng-class="md.isValid() ? 'gn-recordtype-n text-success' : 'gn-recordtype-n text-danger'"></i>
+          <i class="fa gn-recordtype-n text-muted"
+             data-ng-if="!md.isPublished() && !md.hasValidation()"></i>
+        </a>
+
+      </li>
+      <!-- TODO: Some installation only allows status update
+      based on current status. -->
+      <li data-ng-class="((allowPublishInvalidMd() === true) || 
+            ((allowPublishInvalidMd() === false) &&
+            (!md.hasValidation() || (md.hasValidation() && md.isValid())))) ? '' : 'disabled'">
+        <a data-ng-href=""
+           data-ng-if="user.canEditRecord(md) &&
+                                md.isWorkflowEnabled()"
+           data-ng-click="mdService.openUpdateStatusPanel(getScope())">
+          <i class="fa fa-bell"></i>&nbsp;
+          <span data-translate="">updateStatus</span>
+        </a></li>
+      <li><a data-ng-href=""
+             data-ng-if="user.canEditRecord(md) &&
+                                  !md.isWorkflowEnabled()"
+             data-ng-click="mdService.startWorkflow(md, getCatScope())">
+        <i class="fa fa-bell"></i>&nbsp;
+        <span data-translate="">enableWorkflow</span>
+      </a></li>
+      <li class="divider" data-ng-if="user.isConnected()"></li>
+      <li><a data-ng-href=""
+             data-ng-if="user.isEditorOrMore()"
+             data-ng-click="mdService.duplicate(md)">
+        <i class="fa fa-copy"></i>&nbsp;
+        <span data-translate="">duplicate</span>
+      </a></li>
+      <li><a data-ng-href=""
+             data-ng-if="user.isEditorOrMore()"
+             data-ng-click="mdService.createChild(md)">
+        <i class="fa fa-sitemap"></i>&nbsp;
+        <span data-translate="">createChild</span>
+      </a></li>
+    </ul>
+  </div>
+  <div class="btn-group md-actions">
+    <button type="button"
+            title="{{'downloadRecord' | translate}}"
+            class="btn btn-default dropdown-toggle"
+            data-toggle="dropdown"
+            aria-expanded="false">
+      <i class="fa fa-download"/>&nbsp;
+      <span class="caret"></span>
+    </button>
+    <ul class="dropdown-menu" role="menu">
+      <li><a data-ng-href=""
+             data-ng-click="mdService.getPermalink(md)">
+        <i class="fa fa-link"/>&nbsp;
+        <span data-translate="">permalink</span>
+      </a></li>
+      <li><a data-ng-href=""
+             data-ng-click="mdService.metadataMEF(md.getUuid())">
+        <i class="fa fa-file-zip-o"></i>&nbsp;
+        <span data-translate="">exportMEF</span>
+      </a></li>
+      <li><a data-ng-href="../api/records/{{md.getUuid()}}/formatters/xsl-view?root=div&output=pdf"
+             target="_blank">
+        <i class="fa fa-file-pdf-o"></i>&nbsp;
+        <span data-translate="">exportPDF</span>
+      </a></li>
+      <li><a data-ng-href="../api/records/{{md.getUuid()}}/formatters/xml"
+             target="_blank">
+        <i class="fa fa-file-code-o"></i>&nbsp;
+        <span data-translate="">exportXML</span>
+      </a></li>
+      <li><a data-ng-href=""
+             data-ng-click="mdService.metadataRDF(md.getUuid())">
+        <i class="fa fa-share-alt"></i>&nbsp;
+        <span data-translate="">exportRDF</span>
+      </a></li>
+    </ul>
+  </div>
+</div>
diff --git a/src/main/webapp/catalog/views/default/templates/results.html b/src/main/webapp/catalog/views/default/templates/results.html
new file mode 100644
index 0000000..2aaae05
--- /dev/null
+++ b/src/main/webapp/catalog/views/default/templates/results.html
@@ -0,0 +1,117 @@
+<div class="container-fluid"
+     data-ng-search-form=""
+     data-runSearch="true">
+  <div data-ng-include="'../../catalog/views/default/templates/searchForm.html'"></div>
+
+  <div gn-grid-related-query="searchResults.records"></div>
+  <div class="row">
+    <div class="col-md-3 gn-search-facet">
+
+      <div data-ng-show="searchResults.records.length > 0"
+           data-gn-saved-selections-panel="user"></div>
+
+      <!-- Hierachical facet mode -->
+      <div class="panel panel-default"
+           data-ng-show="searchResults.records.length > 0">
+        <div class="panel-heading" data-gn-slide-toggle="">
+          <i class="fa fa-search"/>&nbsp;
+          <span data-translate="">filter</span>
+        </div>
+        <div class="panel-body">
+          <div data-gn-facet-dimension-list="searchResults.dimension"
+               data-params="searchObj.params"
+               data-facet-type="facetsSummaryType"
+               data-facet-list="facetConfig"
+               data-current-facets="currentFacets">
+          </div>
+        </div>
+      </div>
+    </div>
+
+    <div class="col-md-9 container-fluid">
+      <div class="row" data-ng-show="isFilterTagsDisplayedInSearch">
+        <div class="col-xs-12">
+          <div data-search-filter-tags="">
+
+          </div>
+        </div>
+      </div>
+      <div class="row">
+        <div class="col-xs-12 col-md-9"
+            data-gn-facet-dimension-list="searchResults.dimension"
+            data-params="searchObj.params"
+            data-facet-type="facetsSummaryType"
+            data-facet-list="facetConfig"
+            data-current-facets="currentFacets"
+            data-tab-field="facetTabField"></div>
+
+        <div class="col-xs-12 col-sm-6 col-sm-push-3 text-center"
+          data-ng-show="searchResults.records.length > 0">
+          <div class=""
+              data-gn-pagination="paginationInfo"
+              data-hits-values="searchObj.hitsperpageValues"
+              data-enable-hot-keys=""
+              data-enable-events=""></div>
+        </div>
+
+        <div class="col-xs-6 col-sm-3 col-sm-pull-6 col-lg-pull-6"
+          data-ng-show="searchResults.records.length > 0">
+          <div data-gn-selection-widget=""
+                data-results="searchResults"></div>
+        </div>
+
+        <div class="col-xs-6 col-sm-3"
+          data-ng-show="searchResults.records.length > 0">
+          <div class="pull-right"
+              data-sortby-combo=""
+              data-params="searchObj.params"
+              data-gn-sortby-values="searchObj.sortbyValues"></div>
+        </div>
+    </div>
+
+
+    <div class="row">
+      <div class="col-xs-12">
+        <span class="loading fa fa-spinner fa-spin"
+              data-ng-show="searching"></span>
+
+        <div class="alert alert-warning" role="alert"
+            ng-if="!searching && searchResults.count == 0">
+          <i class="fa fa-frown-o"></i>
+          <span data-translate="">zarooResult</span>
+        </div>
+
+        <div data-ng-show="searchResults.records.length > 0"
+            data-gn-results-container=""
+            data-search-results="searchResults"
+            data-template-url="resultTemplate"
+            data-map="searchObj.searchMap"></div>
+      </div>
+    </div>
+
+    <div class="row">
+      <div class="col-xs-12 text-center"
+      data-ng-show="searchResults.records.length > 0">
+        <div class=""
+              data-gn-pagination="paginationInfo"
+              data-hits-values="searchObj.hitsperpageValues"
+              data-enable-hot-keys=""
+              data-enable-events=""></div>
+      </div>
+    </div>
+    <br>
+  </div>
+
+  <div data-gn-map-field="searchObj.searchMap"
+       data-gn-map-field-geom="searchObj.params.geometry"
+       data-gn-map-field-opt="searchObj.mapfieldOption"
+       class="gn-search-map">
+  </div>
+
+  <button data-ng-click="toggleMap()"
+          title="{{'toggleMiniMap' | translate}}"
+          class="gn-toggle gn-minimap-toggle btn btn-link gn-minimap-button">
+    <i class="fa fa-angle-double-right" ></i>
+    <b class="gn-minimap-toggle gn-minimap-text" data-translate="">map</b>
+  </button>
+</div>
diff --git a/src/main/webapp/images/logos/favicon.ico b/src/main/webapp/images/logos/favicon.ico
new file mode 100644
index 0000000000000000000000000000000000000000..a1891f3dfb2dd178652a7bdbec66c9638797f38d
GIT binary patch
literal 14942
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

literal 0
HcmV?d00001

diff --git a/src/main/webapp/xslt/base-layout.xsl b/src/main/webapp/xslt/base-layout.xsl
new file mode 100644
index 0000000..2d5b686
--- /dev/null
+++ b/src/main/webapp/xslt/base-layout.xsl
@@ -0,0 +1,131 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+  ~ Copyright (C) 2001-2016 Food and Agriculture Organization of the
+  ~ United Nations (FAO-UN), United Nations World Food Programme (WFP)
+  ~ and United Nations Environment Programme (UNEP)
+  ~
+  ~ This program is free software; you can redistribute it and/or modify
+  ~ it under the terms of the GNU General Public License as published by
+  ~ the Free Software Foundation; either version 2 of the License, or (at
+  ~ your option) any later version.
+  ~
+  ~ This program is distributed in the hope that it will be useful, but
+  ~ WITHOUT ANY WARRANTY; without even the implied warranty of
+  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+  ~ General Public License for more details.
+  ~
+  ~ You should have received a copy of the GNU General Public License
+  ~ along with this program; if not, write to the Free Software
+  ~ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
+  ~
+  ~ Contact: Jeroen Ticheler - FAO - Viale delle Terme di Caracalla 2,
+  ~ Rome - Italy. email: geonetwork@osgeo.org
+  -->
+
+<!--
+  The main entry point for all user interface generated
+  from XSLT.
+-->
+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+                version="2.0"
+                exclude-result-prefixes="#all">
+
+  <xsl:output omit-xml-declaration="yes" method="html" doctype-system="html" indent="yes"
+              encoding="UTF-8"/>
+
+  <xsl:include href="common/base-variables.xsl"/>
+
+  <xsl:include href="base-layout-cssjs-loader.xsl"/>
+
+  <!-- Enable extension of application -->
+  <!-- @PRODIGE -->
+  <xsl:include href="extend/base-layout-cssjs-loader.xsl"/>
+
+  <xsl:template match="/">
+    <html ng-app="{$angularModule}" lang="{$lang}" id="ng-app">
+      <head>
+        <title>
+          <xsl:value-of select="concat($env/system/site/name, ' - ', $env/system/site/organization)"
+          />
+        </title>
+        <meta charset="utf-8"/>
+        <meta name="viewport" content="initial-scale=1.0, user-scalable=no"/>
+        <meta name="apple-mobile-web-app-capable" content="yes"/>
+
+        <meta name="description" content=""/>
+        <meta name="keywords" content=""/>
+
+
+        <!--<link rel="icon" sizes="16x16 32x32 48x48" type="image/png"
+              href="../../images/logos/favicon.png"/>-->
+        <link href="rss.search?sortBy=changeDate" rel="alternate" type="application/rss+xml"
+              title="{concat($env/system/site/name, ' - ', $env/system/site/organization)}"/>
+        <link href="portal.opensearch" rel="search" type="application/opensearchdescription+xml"
+              title="{concat($env/system/site/name, ' - ', $env/system/site/organization)}"/>
+
+        <xsl:call-template name="css-load"/>
+        <!-- @PRODIGE -->
+        <xsl:call-template name="ux-css-load"/>
+      </head>
+
+
+      <!-- The GnCatController takes care of
+      loading site information, check user login state
+      and a facet search to get main site information.
+      -->
+      <body data-ng-controller="GnCatController">
+        <!-- @PRODIGE force the authenticated status -->
+        <xsl:if test="not($isLoggedIn)">
+        <iframe src="/geonetwork/srv/fre/catalog.signin?redirect=noroute" style="display:none" onload="$(this).remove()"></iframe>
+        </xsl:if>
+        <!-- @PRODIGE -->
+        <div data-gn-alert-manager=""></div>
+
+        <xsl:choose>
+          <xsl:when test="ends-with($service, 'nojs')">
+            <!-- No JS degraded mode ... -->
+            <div>
+              <!-- TODO: Add header/footer -->
+              <xsl:apply-templates mode="content" select="."/>
+            </div>
+          </xsl:when>
+          <xsl:otherwise>
+            <xsl:if test="$isJsEnabled">
+              <xsl:call-template name="no-js-alert"/>
+            </xsl:if>
+            <!-- AngularJS application -->
+            <xsl:if test="$angularApp != 'gn_search' and $angularApp != 'gn_viewer' and $angularApp != 'gn_formatter_viewer'">
+              <div class="navbar navbar-default gn-top-bar"
+                   data-ng-hide="layout.hideTopToolBar"
+                   data-ng-include="'{$uiResourcesPath}templates/top-toolbar.html'"></div>
+            </xsl:if>
+
+            <xsl:apply-templates mode="content" select="."/>
+
+            <xsl:if test="$isJsEnabled">
+              <!-- @PRODIGE -->
+              <script src="{$uiResourcesPath}js/jscompatibility.js"></script>
+              <xsl:call-template name="javascript-load"/>
+              <!-- @PRODIGE -->
+              <xsl:call-template name="ux-javascript-load"/>
+            </xsl:if>
+          </xsl:otherwise>
+        </xsl:choose>
+      </body>
+    </html>
+  </xsl:template>
+
+
+  <xsl:template name="no-js-alert">
+    <noscript>
+      <div class="alert alert-warning" data-ng-hide="">
+        <strong>
+          <xsl:value-of select="$i18n/warning"/>
+        </strong>
+        <xsl:text> </xsl:text>
+        <xsl:copy-of select="$i18n/nojs"/>
+      </div>
+    </noscript>
+  </xsl:template>
+
+</xsl:stylesheet>
diff --git a/src/main/webapp/xslt/extend/base-layout-cssjs-loader.xsl b/src/main/webapp/xslt/extend/base-layout-cssjs-loader.xsl
new file mode 100644
index 0000000..b9a5683
--- /dev/null
+++ b/src/main/webapp/xslt/extend/base-layout-cssjs-loader.xsl
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xsl:stylesheet version="2.0"
+                xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+                xmlns:util="java:org.fao.geonet.util.XslUtil"
+                exclude-result-prefixes="#all">
+  <!-- Template to load CSS and Javascript -->
+
+  <xsl:include href="base-variables.xsl"/>
+  
+  <xsl:template name="ux-css-load">
+  <!-- ALKANTE EXTENSION -->
+    <link href="{/root/gui/url}/apps_extend//bootstrap-submenu-2.0.4/css/bootstrap-submenu.css" rel="stylesheet" media="screen" />
+    <link href="{/root/gui/url}/apps_extend/css/apps_extend.css{$minimizedParam}" rel="stylesheet" media="screen" />
+  </xsl:template>
+
+
+  <xsl:template name="ux-javascript-load">    
+    <script type="text/javascript">
+      var __PRODIGE_CATALOGUE_CONFIG_URL__ = '<xsl:value-of select="/root/gui/config/prodige/catalogue/url"/>';
+      var __PRODIGE_BROADCAST_CONNECT_URL__ = [
+      <xsl:for-each select="/root/gui/config/prodige/broadcast-connect/url">
+        '<xsl:value-of select="text()" />'<xsl:if test="position() != last()">,</xsl:if>
+      </xsl:for-each>
+      ];
+    </script>
+    <!-- ALKANTE_EXTENSION [-->
+    <script type="text/javascript" src="{/root/gui/url}/catalog/lib/jquery.ext/jquery.cookie.js"></script>
+    <script type="text/javascript" src="{/root/gui/url}/apps_extend//bootstrap-submenu-2.0.4/js/bootstrap-submenu.js"></script>
+    <script type="text/javascript" src="{/root/gui/url}/apps_extend/util.js"></script>
+    <script type="text/javascript" src="{/root/gui/url}/apps_extend/administration_carto.js"></script>
+    <script type="text/javascript" src="{/root/gui/url}/apps_extend/actions.js"></script>
+    <script type="text/javascript" src="{/root/gui/url}/apps_extend/admin.js"></script>
+    <script type="text/javascript" src="{/root/gui/url}/apps_extend/panier.js"></script>
+    <!-- ] ALKANTE_EXTENSION -->
+  </xsl:template>
+</xsl:stylesheet>
diff --git a/src/main/webapp/xslt/extend/base-variables.xsl b/src/main/webapp/xslt/extend/base-variables.xsl
new file mode 100644
index 0000000..75d23e7
--- /dev/null
+++ b/src/main/webapp/xslt/extend/base-variables.xsl
@@ -0,0 +1,100 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xsl:stylesheet version="2.0"
+                xmlns:util="java:org.fao.geonet.util.XslUtil"
+                xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
+  <!-- Global XSL variables about the catalog and user session -->
+  
+  
+  <xsl:output name="default-serialize-mode" indent="no"
+    omit-xml-declaration="yes" />
+  <xsl:output name="default-indent-mode" indent="yes"
+    omit-xml-declaration="yes" />
+  
+  <!--
+  -->
+  <xsl:variable name="prodigeCatalogueUrl" select="concat(/root/rating, '.2.', /root/gui/rating, '.3.', /root/config/rating, '.4.', /root/gui/config/rating)"/>
+  <!-- 
+  
+  <xsl:variable name="uiResourcesPath" select="'../../catalog/'"/>
+  
+  The current service name
+  <xsl:variable name="service" select="/root/gui/reqService"/>
+  
+  <xsl:variable name="i18n" select="/root/gui/i18n"/>
+  <xsl:variable name="lang" select="/root/gui/language"/>
+  <xsl:variable name="requestParameters" select="/root/request"/>
+
+  XSL using this variable should be refactored to not rely on the
+  old i18n files. FIXME eg. metadata-fop.xsl
+  <xsl:variable name="oldGuiStrings" select="/root/gui/strings"/>
+  
+  <xsl:variable name="isDebugMode" select="/root/request/debug"/>
+  <xsl:variable name="isReadOnly" select="/root/gui/env/readonly = 'true'"/>
+  <xsl:variable name="withD3" select="$service = 'admin.console'"/>
+
+  <xsl:variable name="searchView" select="if (/root/request/view) then /root/request/view else if(util:getSettingValue('system/ui/defaultView')) then util:getSettingValue('system/ui/defaultView') else 'default'"></xsl:variable>
+  <xsl:variable name="owsContext" select="/root/request/owscontext" />
+  <xsl:variable name="wmsUrl" select="/root/request/wmsurl" />
+  <xsl:variable name="layerName" select="/root/request/layername" />
+  <xsl:variable name="angularModule" select="if ($angularApp = 'gn_search') then concat('gn_search_', $searchView) else $angularApp"></xsl:variable>
+
+  Define which JS module to load using Closure
+  <xsl:variable name="angularApp" select="
+    if ($service = 'admin.console') then 'gn_admin'
+    else if ($service = 'catalog.signin' or 
+              $service = 'new.account' or 
+              $service = 'new.password' or 
+              $service = 'error' or
+              $service = 'service-not-allowed' or
+              $service = 'node-change-warning') then 'gn_login'
+    else if ($service = 'contact.us') then 'gn_contact_us'
+    else if ($service = 'catalog.edit') then 'gn_editor'
+    else if ($service = 'catalog.viewer') then 'gn_viewer'
+    else if ($service = 'catalog.search') then 'gn_search'
+    else if ($service = 'md.viewer') then 'gn_formatter_viewer'
+    else 'gn'"/>
+
+  <xsl:variable name="customFilename" select="concat($angularApp, '_', $searchView)"></xsl:variable>
+
+    Catalog settings
+  <xsl:variable name="env" select="/root/gui/systemConfig"/>
+  
+  Only system settings (use for backward compatibility replacing
+  /root/gui/env by $envSystem is equivalent). New reference to setting
+  should use $env.
+ 
+  <xsl:variable name="envSystem" select="/root/gui/systemConfig/system"/>
+  
+  URL for services - may not be defined FIXME or use fullURL instead
+  <xsl:variable name="siteURL" select="/root/gui/siteURL"/>
+  
+  URL for webapp root
+  <xsl:variable name="baseURL" select="substring-before($siteURL,'/srv/')"/>
+  Full URL with protocol, host and port
+  <xsl:variable name="fullURL" select="concat($env/system/server/protocol, '://',
+    $env/system/server/host, ':',
+    $env/system/server/port)"/>
+  Full URL for services
+  <xsl:variable name="fullURLForService" select="concat($fullURL, /root/gui/locService)"/>
+  <xsl:variable name="fullURLForWebapp" select="concat($fullURL, /root/gui/url)"/>
+
+  <xsl:variable name="isMailEnabled" select="$env/feedback/emailServer/host != ''"/>
+
+  <xsl:variable name="serviceInfo" select="/root/gui"/>
+  <xsl:variable name="session" select="/root/gui/session"/>
+  <xsl:variable name="isLoggedIn" select="$session/userId != ''"/>
+  
+  <xsl:variable name="isJsEnabled" select="not(ends-with($service, '-nojs'))"/>
+
+  <xsl:variable name="is3DModeAllowed"
+                select="if ($service = 'catalog.search' and
+                            ($env/map/is3DModeAllowed = 'true' or /root/request/with3d))
+                        then true()
+                        else false()"/>
+
+  TODO: retrieve from settings
+  <xsl:variable name="geopublishMatchingPattern"
+    select="'^WWW:DOWNLOAD.*|^FILE:GEO|FILE:RASTER|^DB:POSTGIS'"/>
+  <xsl:variable name="layerMatchingPattern"
+                select="'^OGC:WMS.*'"/> -->
+</xsl:stylesheet>
-- 
GitLab