\title{Une courte introduction \`a Mapbender}
\subtitle{``\ldots plier les cartes \`a vos exigeances''}
\author{par Astrid Emde et Marc Jansen, traduit par Marie Silvestre}

\maketitle

\section{Introduction}
\label{sec:MBintro}

Cet article fournit un aper\c{c}u de la port\'ee, des particularit\'es et des fonctionnalit\'es du client web mapping Mapbender.\footnote{Voir la section Annonces des d\'eveloppeurs en page~\pageref{ch:developer_announcements} pour plus d'informations sur Mapbender} Une courte introduction des fonctionnalit\'es de Mapbender sera suivie de l'historique du projet. Ensuite, la fonctionnalit\'e principale sera d\'ecrite \`a la fois du point de vue de sa gestion et de son orchestration ainsi que d'un point de vue de sa visualisation et de sa pr\'esentation comme serveur de carte et de Web Feature Service (WFS). La derni\`ere section r\'esume les d\'eveloppements futurs pr\'evus pour l'ann\'ee \`a venir. Deux environnements de production seront bri\`evement pr\'esent\'es et des liens vers plus d'exemples donneront un aper\c{c}u de l'utilisation de Mapbender.

\hspace{.5cm}


\begin{figure}[tbp]
   \centering
   \includegraphics[width=6.8cm]{project_spotlight/emde/MBlogo}
%   \caption{The logo of the Mapbender Geoportal Framework software.  The logo is available online at: \url{http://www.mapbender.org/images/2/21/Mapbender_Geoportal_Framework.png}} % moved logo reference to references section
   \label{fig:MBlogo}
\end{figure}

\section{Qu'est-ce que Mapbender ?}
\label{sec:MBwhat}

La suite cliente Mapbender est un framework pour g\'erer, orchestrer et afficher des services web pour les donn\'ees g\'eographiques conformes aux standards OGC WMS et WFS. Mapbender n'est pas un serveur cartographique comme MapServer de l'Universit\'e du Minnesota\footnote{MapServer de l'Universit\'e du Minnesota : \url{http://mapserver.gis.umn.edu/}} mais il est utilis\'e pour afficher, superposer et modifier des cartes OGC produites par MapServer ou n'importe quel autre serveur compatible OGC.

Dans Mapbender, les cartes provenant de diff\'erentes sources sont empil\'ees les unes sur les autres et peuvent alors \^etre diffus\'ees \`a travers le monde via internet. Comme le site de l'OSGeo le pr\'ecise, \emph{Mapbender est la face visible de l'iceberg, une m\'eta-couche d'application donnant acc\`es \`a l'Open Source Geospatial SDI (Spatial Data Infrastructure).}\footnote{Tir\'e de \url{http://www.osgeo.org/mapbender}}

L'application fournit une interface pour afficher, naviguer et interroger les services OWS de l'OGC c'est-\`a-dire les WMS (Web Map Service), WFS (Web Feature Service), WFS-T (WFS transactionnel) et WMC (Web Map Context). Le framework Mapbender fournit en plus des interfaces pour les utilisateurs et l'administration des groupes. La fonctionnalit\'e permettant la gestion de l'acc\`es aux cartes et aux donn\'ees fournis pas les Open Web Services de l'OGC est \'egalement inclue. Le mod\`ele de base de donn\'ees de Mapbender a \'et\'e pens\'e pour utiliser les potentialit\'es multi-client, \`a savoir, les utilisateurs, les groupes, les interfaces et les services. Les trois composants de base suivant font Mapbender : 

\begin{enumerate}
	\item Les utilisateurs et les groupes
	\item Les interfaces utilisateurs (interface homme machine, IHM)
	\item Les services cartographiques (OGC Open Web Services)
\end{enumerate}
 
\noindent Actuellement, les d\'eveloppements ont \'et\'e port\'es sur la fonctionnalit\'e WFS-T, le catalogue et le service de positionnement.

\section{Court historique de Mapbender}
\label{sec:MBhistory}

A la fin du dernier mill\'enaire, l'entreprise allemande CCGIS cr\'ea la premi\`ere interface web bas\'ee sur PHP pour afficher les services cartographiques de l'OGC (ils n'\'etaient alors qu'au stade de l'avant-projet WMT, Wep Mapping Testbed). Cette application se mua en produit et devint finalement la base de l'actuel Mapbender. En novembre 2001, la premi\`ere version de la `Suite Cliente CCGIS' fut publi\'ee, mettant en oeuvre le premier standard WMS de l'OGC.

En 2002, la premi\`ere installation de grande envergure de cette application propri\'etaire a \'et\'e men\'ee dans un environnement de production de 400 utilisateurs. L'ann\'ee 2003 vu un certain nombre de changements importants dans le projet :
\begin{itemize}
  \item la suite a \'et\'e compl\`etement red\'efinie, tout en gardant deux objectifs \`a l'esprit : 
    \begin{enumerate}
      \item R\'eduire la complexit\'e des relations entre les services, les interfaces, les \'el\'ements de l'interface et la gestion des utilisateurs. 
      \item Fournir des interfaces d'administration et des mod\`eles de donn\'ees permettant aux utilisateurs de g\'erer tous les aspects de l'application via des interfaces web. Les interfaces d'administration sont elles-m\^eme g\'er\'ees de mani\`ere r\'ecursive, r\'eduisant grandement la complexit\'e de l'application.
    \end{enumerate}
  \item Utilisateurs, d\'eveloppeurs et possesseurs de la licence de la suite ont \'et\'e sollicit\'es pour donner leur avis sur un changement majeur de philosophie, CCGIS avait en effet pr\'evu de changer pour une licence de logiciel libre. 
  \item Les possesseurs de licence ont \'et\'e ravis que cela se fasse et l'application a alors \'et\'e distribu\'ee sous la licence de logiciel libre GNU GPL.
  \item Le nouveau nom du projet a \'et\'e annonc\'e : la `Suite Cliente CCGIS' devait d\'esormais s'appeler `Mapbender'.
\end{itemize}

En octobre 2003, plus de 500 t\'el\'echargements ont \'et\'e comptabilis\'es dans les heures qui ont suivi la sortie de la mise \`a jour. Les utilisateurs ont accept\'e la nouvelle licence et ont commenc\'e \`a adopter la nouvelle philosophie de d\'eveloppement. Une ann\'ee plus tard, en 2004, l'application \'etait utilis\'ee en production par cinq administrations publiques (comt\'es et villes) membres de la Spatial Data Infrastructure (SDI) de la Rh\'enanie du Nord Westphalie.\footnote{Infrastructure de Donn\'ees Spatiales de la Rh\'enanie du Nord Westphalie : \url{http://www.gdi-nrw.org}} 

En 2004, une d\'emo officielle de serveur fut mise en place et h\'eberg\'ee sur les serveurs de CCGIS. Elle est actuellement en transfert vers un nouveau serveur \footnote{Nouvelle d\'emo de Mapbender : \url{http://mapbender.telascience.org}} qui sera alors l'unique serveur officiel. De plus, en 2004, le site internet a \'et\'e fusionn\'e avec la documentation en un wiki, plateforme technique commune. Plus tard, le wiki fut remplac\'e par un M\'ediaWiki qui fournissait plus de fonctionnalit\'es et n\'ecessitait peu de gestion des droits des utilisateurs pour r\'esoudre le probl\`eme des spams.

Au mois d'avril 2005 s'est tenue la premi\`ere conf\'erence utilisateur \`a Bonn, Allemagne et attira 85 participants d'Allemagne, Autriche, Suisse et des Pays-Bas. Ce fut \'egalement la derni\`ere conf\'erence exclusivement pour Mapbender car depuis elle a \'et\'e combin\'ee avec d'autres conf\'erences existantes comme le FOSSGIS\footnote{FOSSGIS: \url{http://www.fossgis.de}} ou le FOSS4G 2006.\footnote{FOSS4G 2006: \url{http://www.foss4g2006.org}}

Au d\'ebut de l'ann\'ee 2006, Mapbender devint l'un des neuf projets initiaux de l'Open Source Geospatial Foundation (OSGeo). Durant les 6 mois qui ont suivi, Mapbender a travers\'e la phase d'incubation de l'OSGeo avec l'examen rigoureux du Comit\'e d'Incubation et l'aide du mentor du projet Paul Spencer. Pendant ce processus, plusieurs probl\`emes de licenses ont \'et\'e r\'esolus, le code a \'et\'e nettoy\'e, les ambiguit\'es au niveau du copyright ont \'et\'e r\'esolues, le code source ainsi que les listes de diffusion et une partie de l'infrastructure ont \'et\'e d\'eplac\'es du CVS de SourceForge vers le SVN de CollabNet. Le 19 juillet 2006, Mapbender a \'et\'e le premier projet \`a passer le processus d'incubation.

Un dernier changement a eu lieu fin 2006, lorsque l'infrastructure du projet a \'et\'e d\'eplac\'ee sur les serveurs de l'OSGeo, une infrastructure plus libre et ouverte. Finalement (presque) toutes les composantes de l'environnement de d\'eveloppement et de l'infrastructure de communication sont g\'er\'ees sous un m\^eme toit, la seule composante qui tourne encore sur un serveur s\'epar\'e reste le Wiki.

La version stable actuelle de l'application est la 2.4.1, elle est sortie le 12 mars 2007.

\setkeys{Gin}{width=1\textwidth}
% Moved image up to take advantage of some whitespace
\begin{figure}[tbp]%
   \centering
   \includegraphics[scale=1]{project_spotlight/emde/MBapplication} %8.16 is max
   \caption{Une d\'emo de Mapbender. Notez la barre d'outils (en haut), les menus (\`a gauche, visible ici : option d'export en PDF) et le formulaire email pour envoyer un lien vers la carte affich\'ee (dans le coin sup\'erieur droit). Copyright de l'image : Kober-K\"i£mmerly+Frey Media AG, Cologne, Germany. Utilis\'ee avec leur permission.}
   \label{fig:MBdemo}
\end{figure}%

\section{Fonctionnalit\'e}

Mapbender fournit la possibilit\'e de g\'erer et d'afficher des donn\'ees spatiales cartographi\'ees et disponibles au format OGC standard via \`a une application serveur. Vous trouverez des exemples de diff\'erents sc\'enarios dans la galerie Mapbender\footnote{Galerie Mapbender : \url{http://www.mapbender.org/index.php/Gallery}} ou allez sur la d\'emonstration officielle en ligne de l'application.\footnote{D\'emonstration officielle en ligne : \url{http://www.mapbender.org/index.php/Demo}} L'interface standard de la d\'emonstration et un g\'eoportail complet sont actuellement en d\'eplacement vers les serveurs de l'OSGeo h\'eberg\'es par Telascience.\footnote{Nouveau serveur de d\'emonstration Mapbender : \url{http://mapbender.telascience.org}}\\ 


\subsection{G\'erer les Services Web Mapping}

Mapbender est utilis\'e pour orchestrer les services et les formats de l'OGC. L'application fournit des interfaces d'administration pour charger et mettre en cache des documents de Capabilities pour les WMS, WFS et WFS transactionnels. Une fois la description de configuration charg\'ee, elle peut \^etre combin\'ee via l'interface cartographique avec des cartes ou des objets provenant d'autres services.

%
\begin{figure}[tbp]%
   \centering
   \includegraphics[scale=1]{project_spotlight/emde/MB_BICC_Screen}
   \caption{Un PDF au format A4 paysage, g\'en\'er\'e \`a la vol\'ee par Mapbender. Il montre les exportations r\'eelles d'armes d'Allemagne (hachures) et le ``Code du Conduite de l'UE pour les Droits de l'Homme'' (en couleur) pour une partie de l'Am\'erique du Sud et de l'Afrique. Voir \url{http://www.ruestungsexport.info}.}
   \label{fig:MBBICC}
\end{figure}%

Comme beaucoup de services web manquent d'informations sur les m\'etadonn\'ees, un \'editeur qui permet aux utilisateurs d'am\'eliorer les informations existantes et de d\'efinir pour le service et pour chaque couche une cat\'egorie telles qu'elles sont sp\'ecifi\'ees dans le Dublin Core a \'et\'e ajout\'e \`a Mapbender.\footnote{Dublin Core \url{http://dublincore.org/}} Ces informations am\'elior\'ees peuvent \^etre recherch\'ees via le module de recherche de m\'etadonn\'ees et affich\'ees en suivant un lien attach\'e au TreeGDE (Geo Data Explorer). le TreeGDE a une structuration en r\'epertoire, il est utilis\'e pour g\'erer les couches et les services dans l'interface d'affichage.\\



\subsection{G\'erer les utilisateurs, les groupes et les services}

Une gestion des utilisateurs compl\`ete et enti\`erement c\^ot\'e client permet de s\'electionner et de configurer des interfaces avec des collections de WMS et de WFS pour les utilisateurs et les groupes. Le module Proxi OWS de Mapbender peut \^etre activ\'e pour \^etre utilis\'e en tant que facade par dessus les services. Le ticketing a \'et\'e implant\'e, utilisant la fonctionnalit\'e de redirection d'Apache fournissant \`a la fois une interface conforme aux standard OGC mais \'egalement qui autorise les acc\`es restreints. Ceci peut aussi \^etre utilis\'e pour implanter le chiffrage du protocole qui, dans certains cas, n\'ecessite l'utilisation d'un proxy du c\^ot\'e client tel que celui de l'application InteProxy (\url{http://inteproxy.wald.intevation.org/}). Toutes les requ\^etes sont alors dirig\'ees \`a travers le module de gestion des utilisateurs et les permissions peuvent \^etre refus\'ees pour des requ\^etes sur des services qu'un utilisateur n'a pas le droit d'utiliser.


\begin{figure}[tbp]
   \centering
   \includegraphics[scale=1.3]{project_spotlight/emde/MB_RP}
   \caption{Le G\'eoportail de Rhineland Palatinate (\url{http://www.geoportal.rlp.de/}) donne acc\`es \`a plus de 70 services cartographiques WMS avec plusieurs centaines de couches g\'er\'ees par l'administration publique, les institutions non-gouvernementales et les entreprises priv\'ees. Il permet aux gestionnaires des services de charger les images de leurs propres services, \'editer les m\'etadonn\'ees correspondantes et offre la possibilit\'e aux utilisateurs et aux groupes d'y acc\'eder.}
   \label{fig:MBRP}
\end{figure}

\subsection{Visualiser, Naviguer et interroger les services}

En plus des fonctionnalit\'es standards de zoom, de d\'eplacement panoramique ou de requ\^ete, il est possible de num\'eriser (cr\'eer, \'editer, supprimer) des entit\'es et de les stocker en utilisant les interfaces WFS-T. Le WFS est \'egalement utilis\'e pour rechercher, trouver et naviguer vers les entit\'es (adresses, parcelles, v\'ehicule se d\'eplacant avec un GPS transmettant ses coordonn\'ees en ligne) et peut effectuer des op\'erations. 

Des documents OGC Web Map Context (WMC) peuvent \^etre cr\'e\'es, stock\'es puis utilis\'es pour retrouver un \'etat d\'efini de l'interface web.

Toute fonctionnalit\'e dans Mapbender est inplant\'ee en tant que module qui peut \^etre activ\'e dans les interfaces utilisateur gr\^ace \`a l'interface d'administration web.

La liste exhaustive des fonctionnalit\'es SIG implant\'ees se trouve en ligne.\footnote{Liste des fonctionnalit\'es SIG : \url{http://www.mapbender.org/index.php/Category:Modules}}\\


\section{D\'eveloppements futurs}
\label{sec:MBfuture}

Mapbender est \'etendu et am\'elior\'e de mani\`ere dynamique gr\^ace aux contributions de la communaut\'e. Les prochaines versions proposeront des fonctionnalit\'es additionnelles et des corrections de bug :

\begin{itemize}
  \item Am\'elioration de l'enregistrement de l'activit\'e des utilisateurs,
  \item Module d'impression avec une configuration plus ergonomique,
  \item Impression (et export PDF) supportant les objets g\'eographiques temporairement cr\'e\'es,
  \item Interface de catalogage des services se connectant \`a GeoNetwork opensource inclue,
  \item Am\'elioration de l'\'edition de l'arborescence,
  \item Calcul d'itin\'eraires en ligne,
  \item Service de positionnement modulable et \`a diff\'erents niveaux,
  \item Et beaucoup d'autres choses auxquelles nous n'avons m\^eme pas encore r\^ev\'e.
\end{itemize}

Plus loin sur la route, un \'editeur int\'egr\'e de SLD (Styled Layer Descriptor) sera n\'ecessaire pour aider \`a personnaliser les sorties cartographiques. 

Toute contribution des utilisateurs est tr\`es appr\'eci\'ee, inscrivez-vous aux listes de diffusion\footnote{Listes de diffusion Mapbender : \url{http://www.mapbender.org/index.php/Mapbender_Mailing_Lists}} et venez partager vos id\'ees et vos r\'eflexions.

\section{R\'ef\'erences and liens internet}
\label{sec:MBweblinks}

\begin{itemize}
  \item Wiki du projet et page d'accueil (1\`ere source d'information utilis\'ee dans cet article) : \url{http://www.mapbender.org/index.php/Main_Page}
  \item Documentation, premiers pas et aide g\'en\'erale sur diff\'erents sujets : \url{http://www.mapbender.org/index.php/User_Documentation}
  \item Page du projet sur le site internet de l'Open Source Geospatial Foundation : \url{http://www.osgeo.org/mapbender}
  \item Copie d'\'ecran, liens \& exemples de diff\'erentes installations de Mapbender : \url{http://www.mapbender.org/index.php/Mapbender_Gallery}
  \item Serveur de d\'emonstration en ligne : \url{http://www.mapbender.org/index.php/Demo}
  \item Listes de diffusion, d\'epot SVN du code et IRC : \url{http://www.mapbender.org/index.php/Mapbender_Mailing_Lists}
  \item Le logo est disponible en ligne ici : \url{http://www.mapbender.org/images/2/21/Mapbender_Geoportal_Framework.png}
\end{itemize}

\address{Astrid Emde\\
  WhereGroup GmbH \& Co.KG\\
  \url{http://www.wheregroup.com/}\\
  \email{astrid.emde AT wheregroup.com}}

\address{Marc Jansen\\
  terrestris GbR\\
  \url{http://www.terrestris.de/}\\
   \email{jansen AT terrestris.de}}

%%% Local Variables: 
%%% mode: latex
%%% TeX-master: main_document.tex
%%% End: 

