Index: doc/Doxyfile.in
===================================================================
--- doc/Doxyfile.in	(revision 299)
+++ doc/Doxyfile.in	(revision 226)
@@ -222,5 +222,5 @@
 # Configuration options related to the dot tool   
 #---------------------------------------------------------------------------
-CLASS_DIAGRAMS         = YES
+CLASS_DIAGRAMS         = NO
 MSCGEN_PATH            = 
 HIDE_UNDOC_RELATIONS   = YES
Index: doc/Makefile.am
===================================================================
--- doc/Makefile.am	(revision 270)
+++ doc/Makefile.am	(revision 309)
@@ -7,4 +7,5 @@
 	doc/license.dox \
 	doc/mainpage.dox \
+	doc/migration	.dox \
 	doc/named-param.dox \
 	doc/namespaces.dox \
Index: doc/migration.dox
===================================================================
--- doc/migration.dox	(revision 309)
+++ doc/migration.dox	(revision 309)
@@ -0,0 +1,61 @@
+/* -*- mode: C++; indent-tabs-mode: nil; -*-
+ *
+ * This file is a part of LEMON, a generic C++ optimization library.
+ *
+ * Copyright (C) 2003-2008
+ * Egervary Jeno Kombinatorikus Optimalizalasi Kutatocsoport
+ * (Egervary Research Group on Combinatorial Optimization, EGRES).
+ *
+ * Permission to use, modify and distribute this software is granted
+ * provided that this copyright notice appears in all copies. For
+ * precise terms see the accompanying LICENSE file.
+ *
+ * This software is provided "AS IS" with no warranty of any kind,
+ * express or implied, and with no claim as to its suitability for any
+ * purpose.
+ *
+ */
+
+/*!
+
+\page migration Migration from the 0.x Series
+
+This guide gives an in depth description on what has changed compared
+to the 0.x release series. 
+
+Many of these changes adjusted automatically by the
+<tt>script/lemon-0.x-to-1.x.sh</tt> tool. Those requiring manual
+update are typeset <b>boldface</b>.
+
+\section migration-graph Graph Related Name Changes
+
+- Directed graphs are called \c Digraph and they have <tt>Arc</tt>s
+  instead of <tt>Edge</tt>s, while the undirected graph is called \c
+  Graph (instead of \c UGraph) and they have <tt>Edge</tt>s (instead
+  of <tt>UEdge</tt>s). This changes reflected thoroughly everywhere in
+  the library. Namely,
+  - \c Graph -> \c Digraph
+    - \c ListGraph -> \c ListDigraph, \c SmartGraph -> \c SmartDigraph etc.
+  - \c UGraph -> \c Graph
+    - \c ListUGraph -> \c ListGraph, \c SmartUGraph -> \c SmartGraph etc.
+  - \c Edge -> \c Arc
+  - \c UEdge -> \c Edge
+  - \c EdgeMap -> \c ArcMap
+  - \c UEdgeMap -> \c EdgeMap
+  - Class names and function names containing the words \e edge or \e arc
+    should also be updated.
+- <b>The two endpoints of an (\e undirected) \c Edge can be obtained by the
+  <tt>u()</tt> and <tt>v()</tt> member function of the graph class
+  (instead of <tt>source()</tt> and <tt>target()</tt>). This change
+  must be done by hand.</b>
+  \n Of course, you can still use <tt>source()</tt> and <tt>target()</tt>
+  for <tt>Arc</tt>s (directed edges).
+
+\section migration-lgf LGF tools
+
+\section migration-search BFS, DFS and Dijkstra
+
+\section migration-error Exceptions and Debug tools
+
+\section migration-other Others
+*/
Index: lemon/bfs.h
===================================================================
--- lemon/bfs.h	(revision 305)
+++ lemon/bfs.h	(revision 292)
@@ -50,9 +50,9 @@
     ///It must meet the \ref concepts::WriteMap "WriteMap" concept.
     typedef typename Digraph::template NodeMap<typename Digraph::Arc> PredMap;
-    ///Instantiates a PredMap.
-
-    ///This function instantiates a PredMap.
+    ///Instantiates a \ref PredMap.
+
+    ///This function instantiates a \ref PredMap.
     ///\param g is the digraph, to which we would like to define the
-    ///PredMap.
+    ///\ref PredMap.
     static PredMap *createPredMap(const Digraph &g)
     {
@@ -65,9 +65,9 @@
     ///It must meet the \ref concepts::WriteMap "WriteMap" concept.
     typedef NullMap<typename Digraph::Node,bool> ProcessedMap;
-    ///Instantiates a ProcessedMap.
-
-    ///This function instantiates a ProcessedMap.
+    ///Instantiates a \ref ProcessedMap.
+
+    ///This function instantiates a \ref ProcessedMap.
     ///\param g is the digraph, to which
-    ///we would like to define the ProcessedMap
+    ///we would like to define the \ref ProcessedMap
 #ifdef DOXYGEN
     static ProcessedMap *createProcessedMap(const Digraph &g)
@@ -84,9 +84,9 @@
     ///It must meet the \ref concepts::ReadWriteMap "ReadWriteMap" concept.
     typedef typename Digraph::template NodeMap<bool> ReachedMap;
-    ///Instantiates a ReachedMap.
-
-    ///This function instantiates a ReachedMap.
+    ///Instantiates a \ref ReachedMap.
+
+    ///This function instantiates a \ref ReachedMap.
     ///\param g is the digraph, to which
-    ///we would like to define the ReachedMap.
+    ///we would like to define the \ref ReachedMap.
     static ReachedMap *createReachedMap(const Digraph &g)
     {
@@ -99,9 +99,9 @@
     ///It must meet the \ref concepts::WriteMap "WriteMap" concept.
     typedef typename Digraph::template NodeMap<int> DistMap;
-    ///Instantiates a DistMap.
-
-    ///This function instantiates a DistMap.
+    ///Instantiates a \ref DistMap.
+
+    ///This function instantiates a \ref DistMap.
     ///\param g is the digraph, to which we would like to define the
-    ///DistMap.
+    ///\ref DistMap.
     static DistMap *createDistMap(const Digraph &g)
     {
@@ -228,8 +228,8 @@
     };
     ///\brief \ref named-templ-param "Named parameter" for setting
-    ///PredMap type.
+    ///\ref PredMap type.
     ///
     ///\ref named-templ-param "Named parameter" for setting
-    ///PredMap type.
+    ///\ref PredMap type.
     template <class T>
     struct SetPredMap : public Bfs< Digraph, SetPredMapTraits<T> > {
@@ -247,8 +247,8 @@
     };
     ///\brief \ref named-templ-param "Named parameter" for setting
-    ///DistMap type.
+    ///\ref DistMap type.
     ///
     ///\ref named-templ-param "Named parameter" for setting
-    ///DistMap type.
+    ///\ref DistMap type.
     template <class T>
     struct SetDistMap : public Bfs< Digraph, SetDistMapTraits<T> > {
@@ -266,8 +266,8 @@
     };
     ///\brief \ref named-templ-param "Named parameter" for setting
-    ///ReachedMap type.
+    ///\ref ReachedMap type.
     ///
     ///\ref named-templ-param "Named parameter" for setting
-    ///ReachedMap type.
+    ///\ref ReachedMap type.
     template <class T>
     struct SetReachedMap : public Bfs< Digraph, SetReachedMapTraits<T> > {
@@ -285,8 +285,8 @@
     };
     ///\brief \ref named-templ-param "Named parameter" for setting
-    ///ProcessedMap type.
+    ///\ref ProcessedMap type.
     ///
     ///\ref named-templ-param "Named parameter" for setting
-    ///ProcessedMap type.
+    ///\ref ProcessedMap type.
     template <class T>
     struct SetProcessedMap : public Bfs< Digraph, SetProcessedMapTraits<T> > {
@@ -303,8 +303,8 @@
     };
     ///\brief \ref named-templ-param "Named parameter" for setting
-    ///ProcessedMap type to be <tt>Digraph::NodeMap<bool></tt>.
+    ///\ref ProcessedMap type to be <tt>Digraph::NodeMap<bool></tt>.
     ///
     ///\ref named-templ-param "Named parameter" for setting
-    ///ProcessedMap type to be <tt>Digraph::NodeMap<bool></tt>.
+    ///\ref ProcessedMap type to be <tt>Digraph::NodeMap<bool></tt>.
     ///If you don't set it explicitly, it will be automatically allocated.
     struct SetStandardProcessedMap :
@@ -836,9 +836,9 @@
     ///It must meet the \ref concepts::WriteMap "WriteMap" concept.
     typedef typename Digraph::template NodeMap<typename Digraph::Arc> PredMap;
-    ///Instantiates a PredMap.
-
-    ///This function instantiates a PredMap.
+    ///Instantiates a \ref PredMap.
+
+    ///This function instantiates a \ref PredMap.
     ///\param g is the digraph, to which we would like to define the
-    ///PredMap.
+    ///\ref PredMap.
     static PredMap *createPredMap(const Digraph &g)
     {
@@ -852,9 +852,9 @@
     ///By default it is a NullMap.
     typedef NullMap<typename Digraph::Node,bool> ProcessedMap;
-    ///Instantiates a ProcessedMap.
-
-    ///This function instantiates a ProcessedMap.
+    ///Instantiates a \ref ProcessedMap.
+
+    ///This function instantiates a \ref ProcessedMap.
     ///\param g is the digraph, to which
-    ///we would like to define the ProcessedMap.
+    ///we would like to define the \ref ProcessedMap.
 #ifdef DOXYGEN
     static ProcessedMap *createProcessedMap(const Digraph &g)
@@ -871,9 +871,9 @@
     ///It must meet the \ref concepts::ReadWriteMap "ReadWriteMap" concept.
     typedef typename Digraph::template NodeMap<bool> ReachedMap;
-    ///Instantiates a ReachedMap.
-
-    ///This function instantiates a ReachedMap.
+    ///Instantiates a \ref ReachedMap.
+
+    ///This function instantiates a \ref ReachedMap.
     ///\param g is the digraph, to which
-    ///we would like to define the ReachedMap.
+    ///we would like to define the \ref ReachedMap.
     static ReachedMap *createReachedMap(const Digraph &g)
     {
@@ -886,9 +886,9 @@
     ///It must meet the \ref concepts::WriteMap "WriteMap" concept.
     typedef typename Digraph::template NodeMap<int> DistMap;
-    ///Instantiates a DistMap.
-
-    ///This function instantiates a DistMap.
+    ///Instantiates a \ref DistMap.
+
+    ///This function instantiates a \ref DistMap.
     ///\param g is the digraph, to which we would like to define
-    ///the DistMap
+    ///the \ref DistMap
     static DistMap *createDistMap(const Digraph &g)
     {
@@ -903,5 +903,5 @@
   };
 
-  /// Default traits class used by BfsWizard
+  /// Default traits class used by \ref BfsWizard
 
   /// To make it easier to use Bfs algorithm
@@ -1069,8 +1069,8 @@
     };
     ///\brief \ref named-func-param "Named parameter"
-    ///for setting PredMap object.
+    ///for setting \ref PredMap object.
     ///
     ///\ref named-func-param "Named parameter"
-    ///for setting PredMap object.
+    ///for setting \ref PredMap object.
     template<class T>
     BfsWizard<SetPredMapBase<T> > predMap(const T &t)
@@ -1087,8 +1087,8 @@
     };
     ///\brief \ref named-func-param "Named parameter"
-    ///for setting ReachedMap object.
+    ///for setting \ref ReachedMap object.
     ///
     /// \ref named-func-param "Named parameter"
-    ///for setting ReachedMap object.
+    ///for setting \ref ReachedMap object.
     template<class T>
     BfsWizard<SetReachedMapBase<T> > reachedMap(const T &t)
@@ -1105,8 +1105,8 @@
     };
     ///\brief \ref named-func-param "Named parameter"
-    ///for setting DistMap object.
+    ///for setting \ref DistMap object.
     ///
     /// \ref named-func-param "Named parameter"
-    ///for setting DistMap object.
+    ///for setting \ref DistMap object.
     template<class T>
     BfsWizard<SetDistMapBase<T> > distMap(const T &t)
@@ -1123,8 +1123,8 @@
     };
     ///\brief \ref named-func-param "Named parameter"
-    ///for setting ProcessedMap object.
+    ///for setting \ref ProcessedMap object.
     ///
     /// \ref named-func-param "Named parameter"
-    ///for setting ProcessedMap object.
+    ///for setting \ref ProcessedMap object.
     template<class T>
     BfsWizard<SetProcessedMapBase<T> > processedMap(const T &t)
@@ -1268,9 +1268,9 @@
     typedef typename Digraph::template NodeMap<bool> ReachedMap;
 
-    /// \brief Instantiates a ReachedMap.
-    ///
-    /// This function instantiates a ReachedMap.
+    /// \brief Instantiates a \ref ReachedMap.
+    ///
+    /// This function instantiates a \ref ReachedMap.
     /// \param digraph is the digraph, to which
-    /// we would like to define the ReachedMap.
+    /// we would like to define the \ref ReachedMap.
     static ReachedMap *createReachedMap(const Digraph &digraph) {
       return new ReachedMap(digraph);
Index: lemon/core.h
===================================================================
--- lemon/core.h	(revision 304)
+++ lemon/core.h	(revision 282)
@@ -59,5 +59,5 @@
   /// @{
 
-  ///Create convenience typedefs for the digraph types and iterators
+  ///Create convenient typedefs for the digraph types and iterators
 
   ///This \c \#define creates convenient type definitions for the following
@@ -81,7 +81,7 @@
   typedef Digraph::ArcMap<bool> BoolArcMap;                             \
   typedef Digraph::ArcMap<int> IntArcMap;                               \
-  typedef Digraph::ArcMap<double> DoubleArcMap
-
-  ///Create convenience typedefs for the digraph types and iterators
+  typedef Digraph::ArcMap<double> DoubleArcMap;
+
+  ///Create convenient typedefs for the digraph types and iterators
 
   ///\see DIGRAPH_TYPEDEFS
@@ -101,7 +101,7 @@
   typedef typename Digraph::template ArcMap<bool> BoolArcMap;           \
   typedef typename Digraph::template ArcMap<int> IntArcMap;             \
-  typedef typename Digraph::template ArcMap<double> DoubleArcMap
-
-  ///Create convenience typedefs for the graph types and iterators
+  typedef typename Digraph::template ArcMap<double> DoubleArcMap;
+
+  ///Create convenient typedefs for the graph types and iterators
 
   ///This \c \#define creates the same convenient type definitions as defined
@@ -120,7 +120,7 @@
   typedef Graph::EdgeMap<bool> BoolEdgeMap;                             \
   typedef Graph::EdgeMap<int> IntEdgeMap;                               \
-  typedef Graph::EdgeMap<double> DoubleEdgeMap
-
-  ///Create convenience typedefs for the graph types and iterators
+  typedef Graph::EdgeMap<double> DoubleEdgeMap;
+
+  ///Create convenient typedefs for the graph types and iterators
 
   ///\see GRAPH_TYPEDEFS
@@ -135,5 +135,5 @@
   typedef typename Graph::template EdgeMap<bool> BoolEdgeMap;           \
   typedef typename Graph::template EdgeMap<int> IntEdgeMap;             \
-  typedef typename Graph::template EdgeMap<double> DoubleEdgeMap
+  typedef typename Graph::template EdgeMap<double> DoubleEdgeMap;
 
   /// \brief Function to count the items in a graph.
Index: lemon/dfs.h
===================================================================
--- lemon/dfs.h	(revision 305)
+++ lemon/dfs.h	(revision 292)
@@ -51,9 +51,9 @@
     ///It must meet the \ref concepts::WriteMap "WriteMap" concept.
     typedef typename Digraph::template NodeMap<typename Digraph::Arc> PredMap;
-    ///Instantiates a PredMap.
-
-    ///This function instantiates a PredMap.
+    ///Instantiates a \ref PredMap.
+
+    ///This function instantiates a \ref PredMap.
     ///\param g is the digraph, to which we would like to define the
-    ///PredMap.
+    ///\ref PredMap.
     static PredMap *createPredMap(const Digraph &g)
     {
@@ -66,9 +66,9 @@
     ///It must meet the \ref concepts::WriteMap "WriteMap" concept.
     typedef NullMap<typename Digraph::Node,bool> ProcessedMap;
-    ///Instantiates a ProcessedMap.
-
-    ///This function instantiates a ProcessedMap.
+    ///Instantiates a \ref ProcessedMap.
+
+    ///This function instantiates a \ref ProcessedMap.
     ///\param g is the digraph, to which
-    ///we would like to define the ProcessedMap
+    ///we would like to define the \ref ProcessedMap
 #ifdef DOXYGEN
     static ProcessedMap *createProcessedMap(const Digraph &g)
@@ -85,9 +85,9 @@
     ///It must meet the \ref concepts::ReadWriteMap "ReadWriteMap" concept.
     typedef typename Digraph::template NodeMap<bool> ReachedMap;
-    ///Instantiates a ReachedMap.
-
-    ///This function instantiates a ReachedMap.
+    ///Instantiates a \ref ReachedMap.
+
+    ///This function instantiates a \ref ReachedMap.
     ///\param g is the digraph, to which
-    ///we would like to define the ReachedMap.
+    ///we would like to define the \ref ReachedMap.
     static ReachedMap *createReachedMap(const Digraph &g)
     {
@@ -100,9 +100,9 @@
     ///It must meet the \ref concepts::WriteMap "WriteMap" concept.
     typedef typename Digraph::template NodeMap<int> DistMap;
-    ///Instantiates a DistMap.
-
-    ///This function instantiates a DistMap.
+    ///Instantiates a \ref DistMap.
+
+    ///This function instantiates a \ref DistMap.
     ///\param g is the digraph, to which we would like to define the
-    ///DistMap.
+    ///\ref DistMap.
     static DistMap *createDistMap(const Digraph &g)
     {
@@ -228,8 +228,8 @@
     };
     ///\brief \ref named-templ-param "Named parameter" for setting
-    ///PredMap type.
+    ///\ref PredMap type.
     ///
     ///\ref named-templ-param "Named parameter" for setting
-    ///PredMap type.
+    ///\ref PredMap type.
     template <class T>
     struct SetPredMap : public Dfs<Digraph, SetPredMapTraits<T> > {
@@ -247,8 +247,8 @@
     };
     ///\brief \ref named-templ-param "Named parameter" for setting
-    ///DistMap type.
+    ///\ref DistMap type.
     ///
     ///\ref named-templ-param "Named parameter" for setting
-    ///DistMap type.
+    ///\ref DistMap type.
     template <class T>
     struct SetDistMap : public Dfs< Digraph, SetDistMapTraits<T> > {
@@ -266,8 +266,8 @@
     };
     ///\brief \ref named-templ-param "Named parameter" for setting
-    ///ReachedMap type.
+    ///\ref ReachedMap type.
     ///
     ///\ref named-templ-param "Named parameter" for setting
-    ///ReachedMap type.
+    ///\ref ReachedMap type.
     template <class T>
     struct SetReachedMap : public Dfs< Digraph, SetReachedMapTraits<T> > {
@@ -285,8 +285,8 @@
     };
     ///\brief \ref named-templ-param "Named parameter" for setting
-    ///ProcessedMap type.
+    ///\ref ProcessedMap type.
     ///
     ///\ref named-templ-param "Named parameter" for setting
-    ///ProcessedMap type.
+    ///\ref ProcessedMap type.
     template <class T>
     struct SetProcessedMap : public Dfs< Digraph, SetProcessedMapTraits<T> > {
@@ -302,8 +302,8 @@
     };
     ///\brief \ref named-templ-param "Named parameter" for setting
-    ///ProcessedMap type to be <tt>Digraph::NodeMap<bool></tt>.
+    ///\ref ProcessedMap type to be <tt>Digraph::NodeMap<bool></tt>.
     ///
     ///\ref named-templ-param "Named parameter" for setting
-    ///ProcessedMap type to be <tt>Digraph::NodeMap<bool></tt>.
+    ///\ref ProcessedMap type to be <tt>Digraph::NodeMap<bool></tt>.
     ///If you don't set it explicitly, it will be automatically allocated.
     struct SetStandardProcessedMap :
@@ -769,9 +769,9 @@
     ///It must meet the \ref concepts::WriteMap "WriteMap" concept.
     typedef typename Digraph::template NodeMap<typename Digraph::Arc> PredMap;
-    ///Instantiates a PredMap.
-
-    ///This function instantiates a PredMap.
+    ///Instantiates a \ref PredMap.
+
+    ///This function instantiates a \ref PredMap.
     ///\param g is the digraph, to which we would like to define the
-    ///PredMap.
+    ///\ref PredMap.
     static PredMap *createPredMap(const Digraph &g)
     {
@@ -785,9 +785,9 @@
     ///By default it is a NullMap.
     typedef NullMap<typename Digraph::Node,bool> ProcessedMap;
-    ///Instantiates a ProcessedMap.
-
-    ///This function instantiates a ProcessedMap.
+    ///Instantiates a \ref ProcessedMap.
+
+    ///This function instantiates a \ref ProcessedMap.
     ///\param g is the digraph, to which
-    ///we would like to define the ProcessedMap.
+    ///we would like to define the \ref ProcessedMap.
 #ifdef DOXYGEN
     static ProcessedMap *createProcessedMap(const Digraph &g)
@@ -804,9 +804,9 @@
     ///It must meet the \ref concepts::ReadWriteMap "ReadWriteMap" concept.
     typedef typename Digraph::template NodeMap<bool> ReachedMap;
-    ///Instantiates a ReachedMap.
-
-    ///This function instantiates a ReachedMap.
+    ///Instantiates a \ref ReachedMap.
+
+    ///This function instantiates a \ref ReachedMap.
     ///\param g is the digraph, to which
-    ///we would like to define the ReachedMap.
+    ///we would like to define the \ref ReachedMap.
     static ReachedMap *createReachedMap(const Digraph &g)
     {
@@ -819,9 +819,9 @@
     ///It must meet the \ref concepts::WriteMap "WriteMap" concept.
     typedef typename Digraph::template NodeMap<int> DistMap;
-    ///Instantiates a DistMap.
-
-    ///This function instantiates a DistMap.
+    ///Instantiates a \ref DistMap.
+
+    ///This function instantiates a \ref DistMap.
     ///\param g is the digraph, to which we would like to define
-    ///the DistMap
+    ///the \ref DistMap
     static DistMap *createDistMap(const Digraph &g)
     {
@@ -1002,8 +1002,8 @@
     };
     ///\brief \ref named-func-param "Named parameter"
-    ///for setting PredMap object.
+    ///for setting \ref PredMap object.
     ///
     ///\ref named-func-param "Named parameter"
-    ///for setting PredMap object.
+    ///for setting \ref PredMap object.
     template<class T>
     DfsWizard<SetPredMapBase<T> > predMap(const T &t)
@@ -1020,8 +1020,8 @@
     };
     ///\brief \ref named-func-param "Named parameter"
-    ///for setting ReachedMap object.
+    ///for setting \ref ReachedMap object.
     ///
     /// \ref named-func-param "Named parameter"
-    ///for setting ReachedMap object.
+    ///for setting \ref ReachedMap object.
     template<class T>
     DfsWizard<SetReachedMapBase<T> > reachedMap(const T &t)
@@ -1038,8 +1038,8 @@
     };
     ///\brief \ref named-func-param "Named parameter"
-    ///for setting DistMap object.
+    ///for setting \ref DistMap object.
     ///
     /// \ref named-func-param "Named parameter"
-    ///for setting DistMap object.
+    ///for setting \ref DistMap object.
     template<class T>
     DfsWizard<SetDistMapBase<T> > distMap(const T &t)
@@ -1056,8 +1056,8 @@
     };
     ///\brief \ref named-func-param "Named parameter"
-    ///for setting ProcessedMap object.
+    ///for setting \ref ProcessedMap object.
     ///
     /// \ref named-func-param "Named parameter"
-    ///for setting ProcessedMap object.
+    ///for setting \ref ProcessedMap object.
     template<class T>
     DfsWizard<SetProcessedMapBase<T> > processedMap(const T &t)
@@ -1214,9 +1214,9 @@
     typedef typename Digraph::template NodeMap<bool> ReachedMap;
 
-    /// \brief Instantiates a ReachedMap.
-    ///
-    /// This function instantiates a ReachedMap.
+    /// \brief Instantiates a \ref ReachedMap.
+    ///
+    /// This function instantiates a \ref ReachedMap.
     /// \param digraph is the digraph, to which
-    /// we would like to define the ReachedMap.
+    /// we would like to define the \ref ReachedMap.
     static ReachedMap *createReachedMap(const Digraph &digraph) {
       return new ReachedMap(digraph);
Index: lemon/dijkstra.h
===================================================================
--- lemon/dijkstra.h	(revision 305)
+++ lemon/dijkstra.h	(revision 290)
@@ -140,9 +140,9 @@
     ///It must meet the \ref concepts::WriteMap "WriteMap" concept.
     typedef typename Digraph::template NodeMap<typename Digraph::Arc> PredMap;
-    ///Instantiates a PredMap.
-
-    ///This function instantiates a PredMap.
+    ///Instantiates a \ref PredMap.
+
+    ///This function instantiates a \ref PredMap.
     ///\param g is the digraph, to which we would like to define the
-    ///PredMap.
+    ///\ref PredMap.
     static PredMap *createPredMap(const Digraph &g)
     {
@@ -156,9 +156,9 @@
     ///By default it is a NullMap.
     typedef NullMap<typename Digraph::Node,bool> ProcessedMap;
-    ///Instantiates a ProcessedMap.
-
-    ///This function instantiates a ProcessedMap.
+    ///Instantiates a \ref ProcessedMap.
+
+    ///This function instantiates a \ref ProcessedMap.
     ///\param g is the digraph, to which
-    ///we would like to define the ProcessedMap
+    ///we would like to define the \ref ProcessedMap
 #ifdef DOXYGEN
     static ProcessedMap *createProcessedMap(const Digraph &g)
@@ -175,9 +175,9 @@
     ///It must meet the \ref concepts::WriteMap "WriteMap" concept.
     typedef typename Digraph::template NodeMap<typename LM::Value> DistMap;
-    ///Instantiates a DistMap.
-
-    ///This function instantiates a DistMap.
+    ///Instantiates a \ref DistMap.
+
+    ///This function instantiates a \ref DistMap.
     ///\param g is the digraph, to which we would like to define
-    ///the DistMap
+    ///the \ref DistMap
     static DistMap *createDistMap(const Digraph &g)
     {
@@ -328,8 +328,8 @@
     };
     ///\brief \ref named-templ-param "Named parameter" for setting
-    ///PredMap type.
+    ///\ref PredMap type.
     ///
     ///\ref named-templ-param "Named parameter" for setting
-    ///PredMap type.
+    ///\ref PredMap type.
     template <class T>
     struct SetPredMap
@@ -348,8 +348,8 @@
     };
     ///\brief \ref named-templ-param "Named parameter" for setting
-    ///DistMap type.
+    ///\ref DistMap type.
     ///
     ///\ref named-templ-param "Named parameter" for setting
-    ///DistMap type.
+    ///\ref DistMap type.
     template <class T>
     struct SetDistMap
@@ -368,8 +368,8 @@
     };
     ///\brief \ref named-templ-param "Named parameter" for setting
-    ///ProcessedMap type.
+    ///\ref ProcessedMap type.
     ///
     ///\ref named-templ-param "Named parameter" for setting
-    ///ProcessedMap type.
+    ///\ref ProcessedMap type.
     template <class T>
     struct SetProcessedMap
@@ -386,8 +386,8 @@
     };
     ///\brief \ref named-templ-param "Named parameter" for setting
-    ///ProcessedMap type to be <tt>Digraph::NodeMap<bool></tt>.
+    ///\ref ProcessedMap type to be <tt>Digraph::NodeMap<bool></tt>.
     ///
     ///\ref named-templ-param "Named parameter" for setting
-    ///ProcessedMap type to be <tt>Digraph::NodeMap<bool></tt>.
+    ///\ref ProcessedMap type to be <tt>Digraph::NodeMap<bool></tt>.
     ///If you don't set it explicitly, it will be automatically allocated.
     struct SetStandardProcessedMap
@@ -987,9 +987,9 @@
     ///It must meet the \ref concepts::WriteMap "WriteMap" concept.
     typedef typename Digraph::template NodeMap<typename Digraph::Arc> PredMap;
-    ///Instantiates a PredMap.
-
-    ///This function instantiates a PredMap.
+    ///Instantiates a \ref PredMap.
+
+    ///This function instantiates a \ref PredMap.
     ///\param g is the digraph, to which we would like to define the
-    ///PredMap.
+    ///\ref PredMap.
     static PredMap *createPredMap(const Digraph &g)
     {
@@ -1003,9 +1003,9 @@
     ///By default it is a NullMap.
     typedef NullMap<typename Digraph::Node,bool> ProcessedMap;
-    ///Instantiates a ProcessedMap.
-
-    ///This function instantiates a ProcessedMap.
+    ///Instantiates a \ref ProcessedMap.
+
+    ///This function instantiates a \ref ProcessedMap.
     ///\param g is the digraph, to which
-    ///we would like to define the ProcessedMap.
+    ///we would like to define the \ref ProcessedMap.
 #ifdef DOXYGEN
     static ProcessedMap *createProcessedMap(const Digraph &g)
@@ -1022,9 +1022,9 @@
     ///It must meet the \ref concepts::WriteMap "WriteMap" concept.
     typedef typename Digraph::template NodeMap<typename LM::Value> DistMap;
-    ///Instantiates a DistMap.
-
-    ///This function instantiates a DistMap.
+    ///Instantiates a \ref DistMap.
+
+    ///This function instantiates a \ref DistMap.
     ///\param g is the digraph, to which we would like to define
-    ///the DistMap
+    ///the \ref DistMap
     static DistMap *createDistMap(const Digraph &g)
     {
@@ -1199,8 +1199,8 @@
     };
     ///\brief \ref named-func-param "Named parameter"
-    ///for setting PredMap object.
+    ///for setting \ref PredMap object.
     ///
     ///\ref named-func-param "Named parameter"
-    ///for setting PredMap object.
+    ///for setting \ref PredMap object.
     template<class T>
     DijkstraWizard<SetPredMapBase<T> > predMap(const T &t)
@@ -1217,8 +1217,8 @@
     };
     ///\brief \ref named-func-param "Named parameter"
-    ///for setting DistMap object.
+    ///for setting \ref DistMap object.
     ///
     ///\ref named-func-param "Named parameter"
-    ///for setting DistMap object.
+    ///for setting \ref DistMap object.
     template<class T>
     DijkstraWizard<SetDistMapBase<T> > distMap(const T &t)
@@ -1235,8 +1235,8 @@
     };
     ///\brief \ref named-func-param "Named parameter"
-    ///for setting ProcessedMap object.
+    ///for setting \ref ProcessedMap object.
     ///
     /// \ref named-func-param "Named parameter"
-    ///for setting ProcessedMap object.
+    ///for setting \ref ProcessedMap object.
     template<class T>
     DijkstraWizard<SetProcessedMapBase<T> > processedMap(const T &t)
Index: lemon/lgf_reader.h
===================================================================
--- lemon/lgf_reader.h	(revision 307)
+++ lemon/lgf_reader.h	(revision 295)
@@ -392,35 +392,13 @@
   class DigraphReader;
 
-  /// \brief Return a \ref DigraphReader class
-  ///
-  /// This function just returns a \ref DigraphReader class.
-  /// \relates DigraphReader
   template <typename Digraph>
   DigraphReader<Digraph> digraphReader(Digraph& digraph,
-                                       std::istream& is = std::cin) {
-    DigraphReader<Digraph> tmp(digraph, is);
-    return tmp;
-  }
-
-  /// \brief Return a \ref DigraphReader class
-  ///
-  /// This function just returns a \ref DigraphReader class.
-  /// \relates DigraphReader
+                                       std::istream& is = std::cin);
+
   template <typename Digraph>
-  DigraphReader<Digraph> digraphReader(Digraph& digraph,
-                                       const std::string& fn) {
-    DigraphReader<Digraph> tmp(digraph, fn);
-    return tmp;
-  }
-
-  /// \brief Return a \ref DigraphReader class
-  ///
-  /// This function just returns a \ref DigraphReader class.
-  /// \relates DigraphReader
+  DigraphReader<Digraph> digraphReader(Digraph& digraph, const std::string& fn);
+
   template <typename Digraph>
-  DigraphReader<Digraph> digraphReader(Digraph& digraph, const char* fn) {
-    DigraphReader<Digraph> tmp(digraph, fn);
-    return tmp;
-  }
+  DigraphReader<Digraph> digraphReader(Digraph& digraph, const char *fn);
 
   /// \ingroup lemon_io
@@ -1212,36 +1190,48 @@
   };
 
+  /// \brief Return a \ref DigraphReader class
+  ///
+  /// This function just returns a \ref DigraphReader class.
+  /// \relates DigraphReader
+  template <typename Digraph>
+  DigraphReader<Digraph> digraphReader(Digraph& digraph,
+                                       std::istream& is = std::cin) {
+    DigraphReader<Digraph> tmp(digraph, is);
+    return tmp;
+  }
+
+  /// \brief Return a \ref DigraphReader class
+  ///
+  /// This function just returns a \ref DigraphReader class.
+  /// \relates DigraphReader
+  template <typename Digraph>
+  DigraphReader<Digraph> digraphReader(Digraph& digraph,
+                                       const std::string& fn) {
+    DigraphReader<Digraph> tmp(digraph, fn);
+    return tmp;
+  }
+
+  /// \brief Return a \ref DigraphReader class
+  ///
+  /// This function just returns a \ref DigraphReader class.
+  /// \relates DigraphReader
+  template <typename Digraph>
+  DigraphReader<Digraph> digraphReader(Digraph& digraph, const char* fn) {
+    DigraphReader<Digraph> tmp(digraph, fn);
+    return tmp;
+  }
+
   template <typename Graph>
   class GraphReader;
 
-  /// \brief Return a \ref GraphReader class
-  ///
-  /// This function just returns a \ref GraphReader class.
-  /// \relates GraphReader
   template <typename Graph>
-  GraphReader<Graph> graphReader(Graph& graph, std::istream& is = std::cin) {
-    GraphReader<Graph> tmp(graph, is);
-    return tmp;
-  }
-
-  /// \brief Return a \ref GraphReader class
-  ///
-  /// This function just returns a \ref GraphReader class.
-  /// \relates GraphReader
+  GraphReader<Graph> graphReader(Graph& graph,
+                                 std::istream& is = std::cin);
+
   template <typename Graph>
-  GraphReader<Graph> graphReader(Graph& graph, const std::string& fn) {
-    GraphReader<Graph> tmp(graph, fn);
-    return tmp;
-  }
-
-  /// \brief Return a \ref GraphReader class
-  ///
-  /// This function just returns a \ref GraphReader class.
-  /// \relates GraphReader
+  GraphReader<Graph> graphReader(Graph& graph, const std::string& fn);
+
   template <typename Graph>
-  GraphReader<Graph> graphReader(Graph& graph, const char* fn) {
-    GraphReader<Graph> tmp(graph, fn);
-    return tmp;
-  }
+  GraphReader<Graph> graphReader(Graph& graph, const char *fn);
 
   /// \ingroup lemon_io
@@ -2041,4 +2031,34 @@
 
   };
+
+  /// \brief Return a \ref GraphReader class
+  ///
+  /// This function just returns a \ref GraphReader class.
+  /// \relates GraphReader
+  template <typename Graph>
+  GraphReader<Graph> graphReader(Graph& graph, std::istream& is = std::cin) {
+    GraphReader<Graph> tmp(graph, is);
+    return tmp;
+  }
+
+  /// \brief Return a \ref GraphReader class
+  ///
+  /// This function just returns a \ref GraphReader class.
+  /// \relates GraphReader
+  template <typename Graph>
+  GraphReader<Graph> graphReader(Graph& graph, const std::string& fn) {
+    GraphReader<Graph> tmp(graph, fn);
+    return tmp;
+  }
+
+  /// \brief Return a \ref GraphReader class
+  ///
+  /// This function just returns a \ref GraphReader class.
+  /// \relates GraphReader
+  template <typename Graph>
+  GraphReader<Graph> graphReader(Graph& graph, const char* fn) {
+    GraphReader<Graph> tmp(graph, fn);
+    return tmp;
+  }
 
   class SectionReader;
Index: lemon/lgf_writer.h
===================================================================
--- lemon/lgf_writer.h	(revision 307)
+++ lemon/lgf_writer.h	(revision 295)
@@ -352,36 +352,15 @@
   class DigraphWriter;
 
-  /// \brief Return a \ref DigraphWriter class
-  ///
-  /// This function just returns a \ref DigraphWriter class.
-  /// \relates DigraphWriter
   template <typename Digraph>
   DigraphWriter<Digraph> digraphWriter(const Digraph& digraph,
-                                       std::ostream& os = std::cout) {
-    DigraphWriter<Digraph> tmp(digraph, os);
-    return tmp;
-  }
-
-  /// \brief Return a \ref DigraphWriter class
-  ///
-  /// This function just returns a \ref DigraphWriter class.
-  /// \relates DigraphWriter
+                                       std::ostream& os = std::cout);
+
   template <typename Digraph>
   DigraphWriter<Digraph> digraphWriter(const Digraph& digraph,
-                                       const std::string& fn) {
-    DigraphWriter<Digraph> tmp(digraph, fn);
-    return tmp;
-  }
-
-  /// \brief Return a \ref DigraphWriter class
-  ///
-  /// This function just returns a \ref DigraphWriter class.
-  /// \relates DigraphWriter
+                                       const std::string& fn);
+
   template <typename Digraph>
   DigraphWriter<Digraph> digraphWriter(const Digraph& digraph,
-                                       const char* fn) {
-    DigraphWriter<Digraph> tmp(digraph, fn);
-    return tmp;
-  }
+                                       const char *fn);
 
   /// \ingroup lemon_io
@@ -935,37 +914,49 @@
   };
 
+  /// \brief Return a \ref DigraphWriter class
+  ///
+  /// This function just returns a \ref DigraphWriter class.
+  /// \relates DigraphWriter
+  template <typename Digraph>
+  DigraphWriter<Digraph> digraphWriter(const Digraph& digraph,
+                                       std::ostream& os = std::cout) {
+    DigraphWriter<Digraph> tmp(digraph, os);
+    return tmp;
+  }
+
+  /// \brief Return a \ref DigraphWriter class
+  ///
+  /// This function just returns a \ref DigraphWriter class.
+  /// \relates DigraphWriter
+  template <typename Digraph>
+  DigraphWriter<Digraph> digraphWriter(const Digraph& digraph,
+                                       const std::string& fn) {
+    DigraphWriter<Digraph> tmp(digraph, fn);
+    return tmp;
+  }
+
+  /// \brief Return a \ref DigraphWriter class
+  ///
+  /// This function just returns a \ref DigraphWriter class.
+  /// \relates DigraphWriter
+  template <typename Digraph>
+  DigraphWriter<Digraph> digraphWriter(const Digraph& digraph,
+                                       const char* fn) {
+    DigraphWriter<Digraph> tmp(digraph, fn);
+    return tmp;
+  }
+
   template <typename Graph>
   class GraphWriter;
 
-  /// \brief Return a \ref GraphWriter class
-  ///
-  /// This function just returns a \ref GraphWriter class.
-  /// \relates GraphWriter
   template <typename Graph>
   GraphWriter<Graph> graphWriter(const Graph& graph,
-                                 std::ostream& os = std::cout) {
-    GraphWriter<Graph> tmp(graph, os);
-    return tmp;
-  }
-
-  /// \brief Return a \ref GraphWriter class
-  ///
-  /// This function just returns a \ref GraphWriter class.
-  /// \relates GraphWriter
+                                 std::ostream& os = std::cout);
+
   template <typename Graph>
-  GraphWriter<Graph> graphWriter(const Graph& graph, const std::string& fn) {
-    GraphWriter<Graph> tmp(graph, fn);
-    return tmp;
-  }
-
-  /// \brief Return a \ref GraphWriter class
-  ///
-  /// This function just returns a \ref GraphWriter class.
-  /// \relates GraphWriter
+  GraphWriter<Graph> graphWriter(const Graph& graph, const std::string& fn);
+
   template <typename Graph>
-  GraphWriter<Graph> graphWriter(const Graph& graph, const char* fn) {
-    GraphWriter<Graph> tmp(graph, fn);
-    return tmp;
-  }
+  GraphWriter<Graph> graphWriter(const Graph& graph, const char *fn);
 
   /// \ingroup lemon_io
@@ -1535,4 +1526,35 @@
     /// @}
   };
+
+  /// \brief Return a \ref GraphWriter class
+  ///
+  /// This function just returns a \ref GraphWriter class.
+  /// \relates GraphWriter
+  template <typename Graph>
+  GraphWriter<Graph> graphWriter(const Graph& graph,
+                                 std::ostream& os = std::cout) {
+    GraphWriter<Graph> tmp(graph, os);
+    return tmp;
+  }
+
+  /// \brief Return a \ref GraphWriter class
+  ///
+  /// This function just returns a \ref GraphWriter class.
+  /// \relates GraphWriter
+  template <typename Graph>
+  GraphWriter<Graph> graphWriter(const Graph& graph, const std::string& fn) {
+    GraphWriter<Graph> tmp(graph, fn);
+    return tmp;
+  }
+
+  /// \brief Return a \ref GraphWriter class
+  ///
+  /// This function just returns a \ref GraphWriter class.
+  /// \relates GraphWriter
+  template <typename Graph>
+  GraphWriter<Graph> graphWriter(const Graph& graph, const char* fn) {
+    GraphWriter<Graph> tmp(graph, fn);
+    return tmp;
+  }
 
   class SectionWriter;
Index: lemon/maps.h
===================================================================
--- lemon/maps.h	(revision 305)
+++ lemon/maps.h	(revision 280)
@@ -74,7 +74,7 @@
   };
 
-  /// Returns a \c NullMap class
-
-  /// This function just returns a \c NullMap class.
+  /// Returns a \ref NullMap class
+
+  /// This function just returns a \ref NullMap class.
   /// \relates NullMap
   template <typename K, typename V>
@@ -89,5 +89,5 @@
   /// value to each key.
   ///
-  /// In other aspects it is equivalent to \c NullMap.
+  /// In other aspects it is equivalent to \ref NullMap.
   /// So it conforms the \ref concepts::ReadWriteMap "ReadWriteMap"
   /// concept, but it absorbs the data written to it.
@@ -134,7 +134,7 @@
   };
 
-  /// Returns a \c ConstMap class
-
-  /// This function just returns a \c ConstMap class.
+  /// Returns a \ref ConstMap class
+
+  /// This function just returns a \ref ConstMap class.
   /// \relates ConstMap
   template<typename K, typename V>
@@ -157,5 +157,5 @@
   /// value to each key.
   ///
-  /// In other aspects it is equivalent to \c NullMap.
+  /// In other aspects it is equivalent to \ref NullMap.
   /// So it conforms the \ref concepts::ReadWriteMap "ReadWriteMap"
   /// concept, but it absorbs the data written to it.
@@ -183,7 +183,7 @@
   };
 
-  /// Returns a \c ConstMap class with inlined constant value
-
-  /// This function just returns a \c ConstMap class with inlined
+  /// Returns a \ref ConstMap class with inlined constant value
+
+  /// This function just returns a \ref ConstMap class with inlined
   /// constant value.
   /// \relates ConstMap
@@ -213,7 +213,7 @@
   };
 
-  /// Returns an \c IdentityMap class
-
-  /// This function just returns an \c IdentityMap class.
+  /// Returns an \ref IdentityMap class
+
+  /// This function just returns an \ref IdentityMap class.
   /// \relates IdentityMap
   template<typename T>
@@ -229,5 +229,5 @@
   /// values to integer keys from the range <tt>[0..size-1]</tt>.
   /// It can be used with some data structures, for example
-  /// \c UnionFind, \c BinHeap, when the used items are small
+  /// \ref UnionFind, \ref BinHeap, when the used items are small
   /// integers. This map conforms the \ref concepts::ReferenceMap
   /// "ReferenceMap" concept.
@@ -269,5 +269,5 @@
       : _vector(vector.begin(), vector.end()) {}
 
-    /// Constructs the map from another \c RangeMap.
+    /// Constructs the map from another \ref RangeMap.
     template <typename V1>
     RangeMap(const RangeMap<V1> &c)
@@ -312,7 +312,7 @@
   };
 
-  /// Returns a \c RangeMap class
-
-  /// This function just returns a \c RangeMap class.
+  /// Returns a \ref RangeMap class
+
+  /// This function just returns a \ref RangeMap class.
   /// \relates RangeMap
   template<typename V>
@@ -321,8 +321,8 @@
   }
 
-  /// \brief Returns a \c RangeMap class created from an appropriate
+  /// \brief Returns a \ref RangeMap class created from an appropriate
   /// \c std::vector
 
-  /// This function just returns a \c RangeMap class created from an
+  /// This function just returns a \ref RangeMap class created from an
   /// appropriate \c std::vector.
   /// \relates RangeMap
@@ -389,5 +389,5 @@
       : _map(map.begin(), map.end()), _value(value) {}
 
-    /// \brief Constructs the map from another \c SparseMap.
+    /// \brief Constructs the map from another \ref SparseMap.
     template<typename V1, typename Comp1>
     SparseMap(const SparseMap<Key, V1, Comp1> &c)
@@ -434,7 +434,7 @@
   };
 
-  /// Returns a \c SparseMap class
-
-  /// This function just returns a \c SparseMap class with specified
+  /// Returns a \ref SparseMap class
+
+  /// This function just returns a \ref SparseMap class with specified
   /// default value.
   /// \relates SparseMap
@@ -449,8 +449,8 @@
   }
 
-  /// \brief Returns a \c SparseMap class created from an appropriate
+  /// \brief Returns a \ref SparseMap class created from an appropriate
   /// \c std::map
 
-  /// This function just returns a \c SparseMap class created from an
+  /// This function just returns a \ref SparseMap class created from an
   /// appropriate \c std::map.
   /// \relates SparseMap
@@ -502,7 +502,7 @@
   };
 
-  /// Returns a \c ComposeMap class
-
-  /// This function just returns a \c ComposeMap class.
+  /// Returns a \ref ComposeMap class
+
+  /// This function just returns a \ref ComposeMap class.
   ///
   /// If \c m1 and \c m2 are maps and the \c Value type of \c m2 is
@@ -557,7 +557,7 @@
   };
 
-  /// Returns a \c CombineMap class
-
-  /// This function just returns a \c CombineMap class.
+  /// Returns a \ref CombineMap class
+
+  /// This function just returns a \ref CombineMap class.
   ///
   /// For example, if \c m1 and \c m2 are both maps with \c double
@@ -626,7 +626,7 @@
   };
 
-  /// Returns a \c FunctorToMap class
-
-  /// This function just returns a \c FunctorToMap class.
+  /// Returns a \ref FunctorToMap class
+
+  /// This function just returns a \ref FunctorToMap class.
   ///
   /// This function is specialized for adaptable binary function
@@ -685,7 +685,7 @@
   };
 
-  /// Returns a \c MapToFunctor class
-
-  /// This function just returns a \c MapToFunctor class.
+  /// Returns a \ref MapToFunctor class
+
+  /// This function just returns a \ref MapToFunctor class.
   /// \relates MapToFunctor
   template<typename M>
@@ -724,7 +724,7 @@
   };
 
-  /// Returns a \c ConvertMap class
-
-  /// This function just returns a \c ConvertMap class.
+  /// Returns a \ref ConvertMap class
+
+  /// This function just returns a \ref ConvertMap class.
   /// \relates ConvertMap
   template<typename V, typename M>
@@ -764,7 +764,7 @@
   };
 
-  /// Returns a \c ForkMap class
-
-  /// This function just returns a \c ForkMap class.
+  /// Returns a \ref ForkMap class
+
+  /// This function just returns a \ref ForkMap class.
   /// \relates ForkMap
   template <typename M1, typename M2>
@@ -808,7 +808,7 @@
   };
 
-  /// Returns an \c AddMap class
-
-  /// This function just returns an \c AddMap class.
+  /// Returns an \ref AddMap class
+
+  /// This function just returns an \ref AddMap class.
   ///
   /// For example, if \c m1 and \c m2 are both maps with \c double
@@ -856,7 +856,7 @@
   };
 
-  /// Returns a \c SubMap class
-
-  /// This function just returns a \c SubMap class.
+  /// Returns a \ref SubMap class
+
+  /// This function just returns a \ref SubMap class.
   ///
   /// For example, if \c m1 and \c m2 are both maps with \c double
@@ -905,7 +905,7 @@
   };
 
-  /// Returns a \c MulMap class
-
-  /// This function just returns a \c MulMap class.
+  /// Returns a \ref MulMap class
+
+  /// This function just returns a \ref MulMap class.
   ///
   /// For example, if \c m1 and \c m2 are both maps with \c double
@@ -953,7 +953,7 @@
   };
 
-  /// Returns a \c DivMap class
-
-  /// This function just returns a \c DivMap class.
+  /// Returns a \ref DivMap class
+
+  /// This function just returns a \ref DivMap class.
   ///
   /// For example, if \c m1 and \c m2 are both maps with \c double
@@ -1039,7 +1039,7 @@
   };
 
-  /// Returns a \c ShiftMap class
-
-  /// This function just returns a \c ShiftMap class.
+  /// Returns a \ref ShiftMap class
+
+  /// This function just returns a \ref ShiftMap class.
   ///
   /// For example, if \c m is a map with \c double values and \c v is
@@ -1053,7 +1053,7 @@
   }
 
-  /// Returns a \c ShiftWriteMap class
-
-  /// This function just returns a \c ShiftWriteMap class.
+  /// Returns a \ref ShiftWriteMap class
+
+  /// This function just returns a \ref ShiftWriteMap class.
   ///
   /// For example, if \c m is a map with \c double values and \c v is
@@ -1141,7 +1141,7 @@
   };
 
-  /// Returns a \c ScaleMap class
-
-  /// This function just returns a \c ScaleMap class.
+  /// Returns a \ref ScaleMap class
+
+  /// This function just returns a \ref ScaleMap class.
   ///
   /// For example, if \c m is a map with \c double values and \c v is
@@ -1155,7 +1155,7 @@
   }
 
-  /// Returns a \c ScaleWriteMap class
-
-  /// This function just returns a \c ScaleWriteMap class.
+  /// Returns a \ref ScaleWriteMap class
+
+  /// This function just returns a \ref ScaleWriteMap class.
   ///
   /// For example, if \c m is a map with \c double values and \c v is
@@ -1241,7 +1241,7 @@
   };
 
-  /// Returns a \c NegMap class
-
-  /// This function just returns a \c NegMap class.
+  /// Returns a \ref NegMap class
+
+  /// This function just returns a \ref NegMap class.
   ///
   /// For example, if \c m is a map with \c double values, then
@@ -1254,7 +1254,7 @@
   }
 
-  /// Returns a \c NegWriteMap class
-
-  /// This function just returns a \c NegWriteMap class.
+  /// Returns a \ref NegWriteMap class
+
+  /// This function just returns a \ref NegWriteMap class.
   ///
   /// For example, if \c m is a map with \c double values, then
@@ -1297,7 +1297,7 @@
   };
 
-  /// Returns an \c AbsMap class
-
-  /// This function just returns an \c AbsMap class.
+  /// Returns an \ref AbsMap class
+
+  /// This function just returns an \ref AbsMap class.
   ///
   /// For example, if \c m is a map with \c double values, then
@@ -1346,7 +1346,7 @@
   };
 
-  /// Returns a \c TrueMap class
-
-  /// This function just returns a \c TrueMap class.
+  /// Returns a \ref TrueMap class
+
+  /// This function just returns a \ref TrueMap class.
   /// \relates TrueMap
   template<typename K>
@@ -1383,7 +1383,7 @@
   };
 
-  /// Returns a \c FalseMap class
-
-  /// This function just returns a \c FalseMap class.
+  /// Returns a \ref FalseMap class
+
+  /// This function just returns a \ref FalseMap class.
   /// \relates FalseMap
   template<typename K>
@@ -1430,7 +1430,7 @@
   };
 
-  /// Returns an \c AndMap class
-
-  /// This function just returns an \c AndMap class.
+  /// Returns an \ref AndMap class
+
+  /// This function just returns an \ref AndMap class.
   ///
   /// For example, if \c m1 and \c m2 are both maps with \c bool values,
@@ -1478,7 +1478,7 @@
   };
 
-  /// Returns an \c OrMap class
-
-  /// This function just returns an \c OrMap class.
+  /// Returns an \ref OrMap class
+
+  /// This function just returns an \ref OrMap class.
   ///
   /// For example, if \c m1 and \c m2 are both maps with \c bool values,
@@ -1545,7 +1545,7 @@
   };
 
-  /// Returns a \c NotMap class
-
-  /// This function just returns a \c NotMap class.
+  /// Returns a \ref NotMap class
+
+  /// This function just returns a \ref NotMap class.
   ///
   /// For example, if \c m is a map with \c bool values, then
@@ -1558,7 +1558,7 @@
   }
 
-  /// Returns a \c NotWriteMap class
-
-  /// This function just returns a \c NotWriteMap class.
+  /// Returns a \ref NotWriteMap class
+
+  /// This function just returns a \ref NotWriteMap class.
   ///
   /// For example, if \c m is a map with \c bool values, then
@@ -1606,7 +1606,7 @@
   };
 
-  /// Returns an \c EqualMap class
-
-  /// This function just returns an \c EqualMap class.
+  /// Returns an \ref EqualMap class
+
+  /// This function just returns an \ref EqualMap class.
   ///
   /// For example, if \c m1 and \c m2 are maps with keys and values of
@@ -1654,7 +1654,7 @@
   };
 
-  /// Returns an \c LessMap class
-
-  /// This function just returns an \c LessMap class.
+  /// Returns an \ref LessMap class
+
+  /// This function just returns an \ref LessMap class.
   ///
   /// For example, if \c m1 and \c m2 are maps with keys and values of
@@ -1746,7 +1746,7 @@
   };
 
-  /// Returns a \c LoggerBoolMap class
-
-  /// This function just returns a \c LoggerBoolMap class.
+  /// Returns a \ref LoggerBoolMap class
+
+  /// This function just returns a \ref LoggerBoolMap class.
   ///
   /// The most important usage of it is storing certain nodes or arcs
@@ -1768,5 +1768,5 @@
   /// \note LoggerBoolMap is just \ref concepts::WriteMap "writable", so
   /// it cannot be used when a readable map is needed, for example as
-  /// \c ReachedMap for \c Bfs, \c Dfs and \c Dijkstra algorithms.
+  /// \c ReachedMap for \ref Bfs, \ref Dfs and \ref Dijkstra algorithms.
   ///
   /// \relates LoggerBoolMap
@@ -2283,7 +2283,7 @@
   };
 
-  /// \brief Returns a \c SourceMap class.
-  ///
-  /// This function just returns an \c SourceMap class.
+  /// \brief Returns a \ref SourceMap class.
+  ///
+  /// This function just returns an \ref SourceMap class.
   /// \relates SourceMap
   template <typename Digraph>
@@ -2322,7 +2322,7 @@
   };
 
-  /// \brief Returns a \c TargetMap class.
-  ///
-  /// This function just returns a \c TargetMap class.
+  /// \brief Returns a \ref TargetMap class.
+  ///
+  /// This function just returns a \ref TargetMap class.
   /// \relates TargetMap
   template <typename Digraph>
@@ -2361,7 +2361,7 @@
   };
 
-  /// \brief Returns a \c ForwardMap class.
-  ///
-  /// This function just returns an \c ForwardMap class.
+  /// \brief Returns a \ref ForwardMap class.
+  ///
+  /// This function just returns an \ref ForwardMap class.
   /// \relates ForwardMap
   template <typename Graph>
@@ -2400,7 +2400,7 @@
   };
 
-  /// \brief Returns a \c BackwardMap class
-
-  /// This function just returns a \c BackwardMap class.
+  /// \brief Returns a \ref BackwardMap class
+
+  /// This function just returns a \ref BackwardMap class.
   /// \relates BackwardMap
   template <typename Graph>
Index: scripts/lemon-0.x-to-1.x.sh
===================================================================
--- scripts/lemon-0.x-to-1.x.sh	(revision 309)
+++ scripts/lemon-0.x-to-1.x.sh	(revision 309)
@@ -0,0 +1,52 @@
+#!/bin/bash
+
+set -e
+
+if [ $# -eq 0 -o x$1 = "x-h" -o x$1 = "x-help" -o x$1 = "x--help" ]; then
+	echo "Usage:"
+	echo "  $0 source-file"
+	exit
+fi
+
+TMP=`mktemp`
+
+sed -e "s/bipartite undirected graph/bipartite graph/g"\
+	-e "s/undirected graph/_gr_aph_label_/g"\
+	-e "s/undirected edge/_ed_ge_label_/g"\
+	-e "s/graph_/_gr_aph_label__/g"\
+	-e "s/_graph/__gr_aph_label_/g"\
+	-e "s/UGraph/_Gr_aph_label_/g"\
+	-e "s/uGraph/_gr_aph_label_/g"\
+	-e "s/ugraph/_gr_aph_label_/g"\
+	-e "s/Graph/_Digr_aph_label_/g"\
+	-e "s/graph/_digr_aph_label_/g"\
+	-e "s/UEdge/_Ed_ge_label_/g"\
+	-e "s/uEdge/_ed_ge_label_/g"\
+	-e "s/uedge/_ed_ge_label_/g"\
+	-e "s/IncEdgeIt/_In_cEd_geIt_label_/g"\
+	-e "s/Edge/_Ar_c_label_/g"\
+	-e "s/edge/_ar_c_label_/g"\
+	-e "s/ANode/_Re_d_label_/g"\
+	-e "s/BNode/_Blu_e_label_/g"\
+	-e "s/A-Node/_Re_d_label_/g"\
+	-e "s/B-Node/_Blu_e_label_/g"\
+	-e "s/anode/_re_d_label_/g"\
+	-e "s/bnode/_blu_e_label_/g"\
+	-e "s/aNode/_re_d_label_/g"\
+	-e "s/bNode/_blu_e_label_/g"\
+	-e "s/_Digr_aph_label_/Digraph/g"\
+	-e "s/_digr_aph_label_/digraph/g"\
+	-e "s/_Gr_aph_label_/Graph/g"\
+	-e "s/_gr_aph_label_/graph/g"\
+	-e "s/_Ar_c_label_/Arc/g"\
+	-e "s/_ar_c_label_/arc/g"\
+	-e "s/_Ed_ge_label_/Edge/g"\
+	-e "s/_ed_ge_label_/edge/g"\
+	-e "s/_In_cEd_geIt_label_/IncEdgeIt/g"\
+	-e "s/_Re_d_label_/Red/g"\
+	-e "s/_Blu_e_label_/Blue/g"\
+	-e "s/_re_d_label_/red/g"\
+	-e "s/_blu_e_label_/blue/g"\
+<$1 > $TMP
+
+mv $TMP $1
