From b40e4d1da3296b05e5aa1abe64ee12548023da77 Mon Sep 17 00:00:00 2001
From: Thomas Steur <thomas.steur@gmail.com>
Date: Tue, 3 Dec 2013 12:02:24 +1300
Subject: [PATCH] converted some links to use @link

---
 core/API/Proxy.php                             |  2 +-
 core/API/Request.php                           |  2 +-
 core/ArchiveProcessor.php                      | 18 +++++++++---------
 core/DataAccess/LogAggregator.php              | 10 +++++-----
 core/DataTable.php                             | 18 +++++++++---------
 core/DataTable/Filter.php                      |  2 +-
 .../Filter/AddColumnsProcessedMetrics.php      |  2 +-
 .../Filter/AddColumnsProcessedMetricsGoal.php  |  2 +-
 core/DataTable/Filter/AddSummaryRow.php        |  2 +-
 core/DataTable/Filter/BeautifyRangeLabels.php  |  4 ++--
 .../Filter/BeautifyTimeRangeLabels.php         |  2 +-
 .../Filter/CalculateEvolutionFilter.php        |  2 +-
 .../Filter/ColumnCallbackAddColumn.php         |  2 +-
 .../ColumnCallbackAddColumnPercentage.php      |  2 +-
 .../Filter/ColumnCallbackAddColumnQuotient.php |  2 +-
 .../Filter/ColumnCallbackAddMetadata.php       |  2 +-
 .../DataTable/Filter/ColumnCallbackReplace.php |  2 +-
 core/DataTable/Filter/ExcludeLowPopulation.php |  2 +-
 core/DataTable/Filter/GroupBy.php              |  2 +-
 core/DataTable/Filter/Limit.php                |  2 +-
 .../Filter/MetadataCallbackAddMetadata.php     |  2 +-
 core/DataTable/Filter/Pattern.php              |  2 +-
 core/DataTable/Filter/PatternRecursive.php     |  2 +-
 core/DataTable/Filter/ReplaceColumnNames.php   |  6 +++---
 .../Filter/ReplaceSummaryRowLabel.php          |  2 +-
 core/DataTable/Filter/Truncate.php             |  4 ++--
 core/DataTable/Map.php                         |  4 ++--
 core/DataTable/Row.php                         |  6 +++---
 core/DataTable/Row/DataTableSummaryRow.php     |  2 +-
 core/DataTable/Simple.php                      |  2 +-
 core/Db.php                                    |  8 ++++----
 core/Nonce.php                                 |  4 ++--
 core/Notification.php                          |  6 +++---
 core/Notification/Manager.php                  |  2 +-
 core/Plugin/Archiver.php                       | 12 ++++++------
 core/Plugin/Controller.php                     | 12 ++++++------
 core/Plugin/ControllerAdmin.php                |  4 ++--
 core/Plugin/Manager.php                        |  2 +-
 core/Plugin/Settings.php                       |  8 ++++----
 core/Plugin/ViewDataTable.php                  | 10 +++++-----
 core/RankingQuery.php                          |  4 ++--
 core/ScheduledTask.php                         |  6 +++---
 core/Segment.php                               |  3 +--
 core/Settings/Setting.php                      |  6 +++---
 core/ViewDataTable/Factory.php                 |  4 ++--
 core/WidgetsList.php                           |  4 ++--
 plugins/Overlay/API.php                        |  2 +-
 plugins/ScheduledReports/API.php               |  2 +-
 48 files changed, 106 insertions(+), 107 deletions(-)

diff --git a/core/API/Proxy.php b/core/API/Proxy.php
index 82a9a9379f..423a966f3d 100644
--- a/core/API/Proxy.php
+++ b/core/API/Proxy.php
@@ -237,7 +237,7 @@ class Proxy extends Singleton
              * 
              * @param mixed &$returnedValue The value returned from the API method. This will not be
              *                              a rendered string, but an actual object. For example, it
-             *                              could be a [DataTable](#).
+             *                              could be a {@link Piwik\DataTable}.
              * @param array $extraInfo An array holding information regarding the API request. Will
              *                         contain the following data:
              * 
diff --git a/core/API/Request.php b/core/API/Request.php
index 69a60cf16e..50f8d64ec3 100644
--- a/core/API/Request.php
+++ b/core/API/Request.php
@@ -29,7 +29,7 @@ use Piwik\UrlHelper;
  * and handle the **flat** and **label** query parameters.
  * 
  * Additionally, the Request class will **forward current query parameters** to the request
- * which is more convenient than calling [Common::getRequestVar](#) many times over.
+ * which is more convenient than calling {@link Piwik\Common::getRequestVar()} many times over.
  * 
  * In most cases, using a Request object to query the API is the right way to go.
  *
diff --git a/core/ArchiveProcessor.php b/core/ArchiveProcessor.php
index 529478caa0..435fb69ad9 100644
--- a/core/ArchiveProcessor.php
+++ b/core/ArchiveProcessor.php
@@ -29,11 +29,11 @@ use Piwik\Period;
  * 
  * When the {@link Archive} class is used to query for archive data and that archive
  * data is found to be absent, the archiving process is launched. Instances of the
- * [Archiver](#) classes for every plugin that supplies one are then used to
- * execute archiving logic.
+ * {@link Piwik\Plugin\Archiver} classes for every plugin that supplies one are
+ * then used to execute archiving logic.
  * 
- * Plugins access ArchiveProcessor instances through the {@link Piwik\Plugin\Archiver Archiver} class.
- * Read the docs for {@link Piwik\Plugin\Archiver Archiver} to learn more about the process.
+ * Plugins access ArchiveProcessor instances through the {@link Piwik\Plugin\Archiver} class.
+ * Read the docs for {@link Piwik\Plugin\Archiver} to learn more about the process.
  * 
  * ### Limitations
  * 
@@ -43,10 +43,10 @@ use Piwik\Period;
  * 
  * ### See also
  * 
- * - **{@link Piwik\Plugin\Archiver Archiver}** - to learn how plugins should implement their own analytics
- *                                                aggregation logic.
- * - **{@link Piwik\DataAccess\LogAggregator LogAggregator}** - to learn how plugins can perform data aggregation
- *                                                              across Piwik's log tables.
+ * - **{@link Piwik\Plugin\Archiver}** - to learn how plugins should implement their own analytics
+ *                                       aggregation logic.
+ * - **{@link Piwik\DataAccess\LogAggregator}** - to learn how plugins can perform data aggregation
+ *                                                across Piwik's log tables.
  * 
  * ### Examples
  * 
@@ -158,7 +158,7 @@ class ArchiveProcessor
     }
 
     /**
-     * Returns a [LogAggregator](#) instance for the site, period and segment this
+     * Returns a `{@link Piwik\DataAccess\LogAggregator}` instance for the site, period and segment this
      * ArchiveProcessor will insert archive data for.
      *
      * @return LogAggregator
diff --git a/core/DataAccess/LogAggregator.php b/core/DataAccess/LogAggregator.php
index c4c3eb8ac2..d4fe8981dc 100644
--- a/core/DataAccess/LogAggregator.php
+++ b/core/DataAccess/LogAggregator.php
@@ -22,7 +22,7 @@ use Piwik\Tracker\GoalManager;
 /**
  * Contains methods that aggregates log data (visits, actions, conversions, ecommerce).
  * 
- * Plugin [Archiver](#) descendants can use the methods in this class to aggregate data
+ * Plugin {@link Piwik\Plugin\Archiver} descendants can use the methods in this class to aggregate data
  * in the log tables without creating their own SQL queries.
  * 
  * ### Aggregation Principles
@@ -283,9 +283,9 @@ class LogAggregator
      *                              - [Metrics::INDEX_NB_VISITS_CONVERTED](#)
      * @param bool|\Piwik\RankingQuery $rankingQuery
      *                                   A pre-configured ranking query instance that will be used to limit the result.
-     *                                   If set, the return value is the array returned by [RankingQuery::execute()](#).
+     *                                   If set, the return value is the array returned by {@link Piwik\RankingQuery::execute()}.
      * @return mixed A Zend_Db_Statement if `$rankingQuery` isn't supplied, otherwise the result of
-     *               [RankingQuery::execute()](#). Read [this](#queryVisitsByDimension-result-set)
+     *               {@link Piwik\RankingQuery::execute()}. Read [this](#queryVisitsByDimension-result-set)
      *               to see what aggregate data is calculated by the query.
      * @api
      */
@@ -556,14 +556,14 @@ class LogAggregator
      *                              - [Metrics::INDEX_NB_ACTIONS](#)
      * @param bool|\Piwik\RankingQuery $rankingQuery
      *                                   A pre-configured ranking query instance that will be used to limit the result.
-     *                                   If set, the return value is the array returned by [RankingQuery::execute()](#).
+     *                                   If set, the return value is the array returned by {@link Piwik\RankingQuery::execute()}.
      * @param bool|string $joinLogActionOnColumn One or more columns from the **log_link_visit_action** table that
      *                                           log_action should be joined on. The table alias used for each join
      *                                           is `"log_action$i"` where `$i` is the index of the column in this
      *                                           array. If a string is used for this parameter, the table alias is not
      *                                           suffixed.
      * @return mixed A Zend_Db_Statement if `$rankingQuery` isn't supplied, otherwise the result of
-     *               [RankingQuery::execute()](#). Read [this](#queryEcommerceItems-result-set)
+     *               {@link Piwik\RankingQuery::execute()}. Read [this](#queryEcommerceItems-result-set)
      *               to see what aggregate data is calculated by the query.
      * @api
      */
diff --git a/core/DataTable.php b/core/DataTable.php
index c842887274..ce40f78d24 100644
--- a/core/DataTable.php
+++ b/core/DataTable.php
@@ -89,17 +89,17 @@ require_once PIWIK_INCLUDE_PATH . '/core/Common.php';
  * 
  * ### Applying Filters
  * 
- * Filters can be applied now (via [filter](#filter)), or they can be applied later (via
- * [queueFilter](#queueFilter)).
+ * Filters can be applied now (via {@link filter()}), or they can be applied later (via
+ * {@link queueFilter()}).
  * 
  * Filters that sort rows or manipulate the number of rows should be applied right away.
  * Non-essential, presentation filters should be queued.
  * 
  * ### Learn more
  * 
- * - **[ArchiveProcessor](#)** &mdash; to learn how DataTables are persisted.
- * - **[DataTable\Renderer](#)** &mdash; to learn how DataTable data is exported to XML, JSON, etc.
- * - **[DataTable\Filter](#)** &mdash; to see all core Filters.
+ * - **{@link ArchiveProcessor}** &mdash; to learn how DataTables are persisted.
+ * - **{@link DataTable\Renderer}** &mdash; to learn how DataTable data is exported to XML, JSON, etc.
+ * - **{@link DataTable\Filter}** &mdash; to see all core Filters.
  * 
  * ### Examples
  * 
@@ -182,8 +182,8 @@ class DataTable implements DataTableInterface
     const TOTAL_ROWS_BEFORE_LIMIT_METADATA_NAME = 'total_rows_before_limit';
 
     /**
-     * Name for metadata that describes how individual columns should be aggregated when [addDataTable](#addDataTable)
-     * or [DataTable\Row::sumRow](#) is called.
+     * Name for metadata that describes how individual columns should be aggregated when {@link addDataTable()}
+     * or {@link Piwik\DataTable\Row::sumRow()} is called.
      * 
      * This metadata value must be an array that maps column names with valid operations. Valid aggregation operations are:
      * 
@@ -192,7 +192,7 @@ class DataTable implements DataTableInterface
      * - `'min'`: does `min($column1, $column2)`
      * - `'sum'`: does `$column1 + $column2`
      * 
-     * See [addDataTable](#addDataTable) and [DataTable\Row::sumRow](#) for more information.
+     * See {@link addDataTable()} and {@link DataTable\Row::sumRow()} for more information.
      */
     const COLUMN_AGGREGATION_OPS_METADATA_NAME = 'column_aggregation_ops';
 
@@ -1055,7 +1055,7 @@ class DataTable implements DataTableInterface
      * cases where DataTables can become quite large, they should be truncated before being persisted
      * in an archive.
      *
-     * The result of this method is intended for use with the [ArchiveProcessor::insertBlobRecord](#) method.
+     * The result of this method is intended for use with the {@link ArchiveProcessor::insertBlobRecord()} method.
      *
      * @throws Exception If infinite recursion detected. This will occur if a table's subtable is one of its parent tables.
      * @param int $maximumRowsInDataTable If not null, defines the maximum number of rows allowed in the serialized DataTable.
diff --git a/core/DataTable/Filter.php b/core/DataTable/Filter.php
index 6db3ca1681..58bede7b8e 100644
--- a/core/DataTable/Filter.php
+++ b/core/DataTable/Filter.php
@@ -23,7 +23,7 @@ use Piwik\DataTable\Row;
  * - etc.
  *
  * Filters are called with a DataTable instance and extra parameters that are specified
- * in [DataTable::filter()](#) and [DataTable::queueFilter()](#).
+ * in {@link Piwik\DataTable::filter()} and {@link Piwik\DataTable::queueFilter()}.
  * 
  * To see examples of Filters look at the existing ones in the Piwik\DataTable\Filter
  * namespace.
diff --git a/core/DataTable/Filter/AddColumnsProcessedMetrics.php b/core/DataTable/Filter/AddColumnsProcessedMetrics.php
index 58fabac1e4..85653951ce 100644
--- a/core/DataTable/Filter/AddColumnsProcessedMetrics.php
+++ b/core/DataTable/Filter/AddColumnsProcessedMetrics.php
@@ -29,7 +29,7 @@ use Piwik\Metrics;
  * Adding the **filter_add_columns_when_show_all_columns** query parameter to
  * an API request will trigger the execution of this Filter.
  * 
- * _Note: This filter must be called before [ReplaceColumnNames](#) is called._
+ * _Note: This filter must be called before {@link ReplaceColumnNames} is called._
  * 
  * **Basic usage example**
  * 
diff --git a/core/DataTable/Filter/AddColumnsProcessedMetricsGoal.php b/core/DataTable/Filter/AddColumnsProcessedMetricsGoal.php
index ab492a8d48..52f77cdd2c 100644
--- a/core/DataTable/Filter/AddColumnsProcessedMetricsGoal.php
+++ b/core/DataTable/Filter/AddColumnsProcessedMetricsGoal.php
@@ -42,7 +42,7 @@ use Piwik\Tracker\GoalManager;
  * Adding the **filter_update_columns_when_show_all_goals** query parameter to
  * an API request will trigger the execution of this Filter.
  * 
- * Note: This filter must be called before [ReplaceColumnNames](#) is called.
+ * Note: This filter must be called before {@link ReplaceColumnNames} is called.
  * 
  * **Basic usage example**
  * 
diff --git a/core/DataTable/Filter/AddSummaryRow.php b/core/DataTable/Filter/AddSummaryRow.php
index c495f8b548..8d6402514d 100644
--- a/core/DataTable/Filter/AddSummaryRow.php
+++ b/core/DataTable/Filter/AddSummaryRow.php
@@ -44,7 +44,7 @@ class AddSummaryRow extends Filter
     }
 
     /**
-     * Executes the filter. See [AddSummaryRow](#).
+     * Executes the filter. See {@link AddSummaryRow}.
      *
      * @param DataTable $table
      */
diff --git a/core/DataTable/Filter/BeautifyRangeLabels.php b/core/DataTable/Filter/BeautifyRangeLabels.php
index 76f47c6c9d..b2f6e9eac7 100644
--- a/core/DataTable/Filter/BeautifyRangeLabels.php
+++ b/core/DataTable/Filter/BeautifyRangeLabels.php
@@ -29,7 +29,7 @@ use Piwik\Piwik;
  *
  * This filter can be extended to vary exactly how ranges are prettified based
  * on the range values found in the DataTable. To see an example of this,
- * take a look at the [BeautifyTimeRangeLabels](#) filter.
+ * take a look at the {@link BeautifyTimeRangeLabels} filter.
  * 
  * **Basic usage example**
  * 
@@ -73,7 +73,7 @@ class BeautifyRangeLabels extends ColumnCallbackReplace
     }
 
     /**
-     * Beautifies a range label and returns the pretty result. See [BeautifyRangeLabels](#).
+     * Beautifies a range label and returns the pretty result. See {@link BeautifyRangeLabels}.
      *
      * @param string $value The range string. This must be in either a '$min-$max' format
      *                        a '$min+' format.
diff --git a/core/DataTable/Filter/BeautifyTimeRangeLabels.php b/core/DataTable/Filter/BeautifyTimeRangeLabels.php
index 4aae3caede..786ae05103 100644
--- a/core/DataTable/Filter/BeautifyTimeRangeLabels.php
+++ b/core/DataTable/Filter/BeautifyTimeRangeLabels.php
@@ -16,7 +16,7 @@ use Piwik\DataTable;
  * A DataTable filter that replaces range labels whose values are in seconds with
  * prettier, human-friendlier versions.
  *
- * This filter customizes the behavior of the [BeautifyRangeLabels](#) filter
+ * This filter customizes the behavior of the {@link BeautifyRangeLabels} filter
  * so range values that are less than one minute are displayed in seconds but
  * other ranges are displayed in minutes.
  * 
diff --git a/core/DataTable/Filter/CalculateEvolutionFilter.php b/core/DataTable/Filter/CalculateEvolutionFilter.php
index 0fc8135c8e..6ca526d0fc 100755
--- a/core/DataTable/Filter/CalculateEvolutionFilter.php
+++ b/core/DataTable/Filter/CalculateEvolutionFilter.php
@@ -18,7 +18,7 @@ use Piwik\Site;
  * A DataTable filter that calculates the evolution of a metric and adds
  * it to each row as a percentage.
  *
- * **This filter cannot be used as an argument to [DataTable::filter](#)** since
+ * **This filter cannot be used as an argument to {@link Piwik\DataTable::filter()}** since
  * it requires corresponding data from another datatable. Instead, to use it,
  * you must manually perform a binary filter (see the MultiSites API for an
  * example).
diff --git a/core/DataTable/Filter/ColumnCallbackAddColumn.php b/core/DataTable/Filter/ColumnCallbackAddColumn.php
index a0ebabef07..ea3fa74585 100755
--- a/core/DataTable/Filter/ColumnCallbackAddColumn.php
+++ b/core/DataTable/Filter/ColumnCallbackAddColumn.php
@@ -77,7 +77,7 @@ class ColumnCallbackAddColumn extends Filter
     }
 
     /**
-     * See [ColumnCallbackAddColumn](#).
+     * See {@link ColumnCallbackAddColumn}.
      *
      * @param DataTable $table The table to filter.
      */
diff --git a/core/DataTable/Filter/ColumnCallbackAddColumnPercentage.php b/core/DataTable/Filter/ColumnCallbackAddColumnPercentage.php
index efbf00e92d..a6ce836eb9 100644
--- a/core/DataTable/Filter/ColumnCallbackAddColumnPercentage.php
+++ b/core/DataTable/Filter/ColumnCallbackAddColumnPercentage.php
@@ -16,7 +16,7 @@ use Piwik\Piwik;
  * Calculates a percentage value for each row of a DataTable and adds the result
  * to each row.
  * 
- * See [ColumnCallbackAddColumnQuotient](#) for more information.
+ * See {@link ColumnCallbackAddColumnQuotient} for more information.
  *
  * **Basic usage example**
  * 
diff --git a/core/DataTable/Filter/ColumnCallbackAddColumnQuotient.php b/core/DataTable/Filter/ColumnCallbackAddColumnQuotient.php
index 6dee085ce7..a36f7de04b 100644
--- a/core/DataTable/Filter/ColumnCallbackAddColumnQuotient.php
+++ b/core/DataTable/Filter/ColumnCallbackAddColumnQuotient.php
@@ -68,7 +68,7 @@ class ColumnCallbackAddColumnQuotient extends Filter
     }
 
     /**
-     * See [ColumnCallbackAddColumnQuotient](#).
+     * See {@link ColumnCallbackAddColumnQuotient}.
      *
      * @param DataTable $table
      */
diff --git a/core/DataTable/Filter/ColumnCallbackAddMetadata.php b/core/DataTable/Filter/ColumnCallbackAddMetadata.php
index 36fb95a598..bbc4584e61 100644
--- a/core/DataTable/Filter/ColumnCallbackAddMetadata.php
+++ b/core/DataTable/Filter/ColumnCallbackAddMetadata.php
@@ -61,7 +61,7 @@ class ColumnCallbackAddMetadata extends Filter
     }
 
     /**
-     * See [ColumnCallbackAddMetadata](#).
+     * See {@link ColumnCallbackAddMetadata}.
      *
      * @param DataTable $table
      */
diff --git a/core/DataTable/Filter/ColumnCallbackReplace.php b/core/DataTable/Filter/ColumnCallbackReplace.php
index babedcfe54..2b56276d1c 100644
--- a/core/DataTable/Filter/ColumnCallbackReplace.php
+++ b/core/DataTable/Filter/ColumnCallbackReplace.php
@@ -70,7 +70,7 @@ class ColumnCallbackReplace extends Filter
     }
 
     /**
-     * See [ColumnCallbackReplace](#).
+     * See {@link ColumnCallbackReplace}.
      *
      * @param DataTable $table
      */
diff --git a/core/DataTable/Filter/ExcludeLowPopulation.php b/core/DataTable/Filter/ExcludeLowPopulation.php
index 022971522c..756efcd18c 100644
--- a/core/DataTable/Filter/ExcludeLowPopulation.php
+++ b/core/DataTable/Filter/ExcludeLowPopulation.php
@@ -78,7 +78,7 @@ class ExcludeLowPopulation extends Filter
     }
 
     /**
-     * See [ExcludeLowPopulation](#).
+     * See {@link ExcludeLowPopulation}.
      *
      * @param DataTable $table
      */
diff --git a/core/DataTable/Filter/GroupBy.php b/core/DataTable/Filter/GroupBy.php
index 6ab12e72f6..08f99c3e44 100755
--- a/core/DataTable/Filter/GroupBy.php
+++ b/core/DataTable/Filter/GroupBy.php
@@ -69,7 +69,7 @@ class GroupBy extends Filter
     }
 
     /**
-     * See [GroupBy](#).
+     * See {@link GroupBy}.
      *
      * @param DataTable $table
      */
diff --git a/core/DataTable/Filter/Limit.php b/core/DataTable/Filter/Limit.php
index dc5b5d02db..875f50ab23 100644
--- a/core/DataTable/Filter/Limit.php
+++ b/core/DataTable/Filter/Limit.php
@@ -45,7 +45,7 @@ class Limit extends Filter
     }
 
     /**
-     * See [Limit](#).
+     * See {@link Limit}.
      *
      * @param DataTable $table
      */
diff --git a/core/DataTable/Filter/MetadataCallbackAddMetadata.php b/core/DataTable/Filter/MetadataCallbackAddMetadata.php
index c3f7b3453e..342f935780 100644
--- a/core/DataTable/Filter/MetadataCallbackAddMetadata.php
+++ b/core/DataTable/Filter/MetadataCallbackAddMetadata.php
@@ -60,7 +60,7 @@ class MetadataCallbackAddMetadata extends Filter
     }
 
     /**
-     * See [MetadataCallbackAddMetadata](#).
+     * See {@link MetadataCallbackAddMetadata}.
      * 
      * @param DataTable $table
      */
diff --git a/core/DataTable/Filter/Pattern.php b/core/DataTable/Filter/Pattern.php
index 82d47a9b57..95875a0046 100644
--- a/core/DataTable/Filter/Pattern.php
+++ b/core/DataTable/Filter/Pattern.php
@@ -78,7 +78,7 @@ class Pattern extends Filter
     }
 
     /**
-     * See [Pattern](#).
+     * See {@link Pattern}.
      * 
      * @param DataTable $table
      */
diff --git a/core/DataTable/Filter/PatternRecursive.php b/core/DataTable/Filter/PatternRecursive.php
index a65d44ab65..db33d5a786 100644
--- a/core/DataTable/Filter/PatternRecursive.php
+++ b/core/DataTable/Filter/PatternRecursive.php
@@ -51,7 +51,7 @@ class PatternRecursive extends Filter
     }
 
     /**
-     * See [PatternRecursive](#).
+     * See {@link PatternRecursive}.
      * 
      * @param DataTable $table
      * @return int The number of deleted rows.
diff --git a/core/DataTable/Filter/ReplaceColumnNames.php b/core/DataTable/Filter/ReplaceColumnNames.php
index 6c47bc2dbf..2a8adf4ddc 100644
--- a/core/DataTable/Filter/ReplaceColumnNames.php
+++ b/core/DataTable/Filter/ReplaceColumnNames.php
@@ -25,7 +25,7 @@ use Piwik\Tracker\GoalManager;
  * (which are integers) with their string column names. In the database, reports are
  * stored with integer metric names because it results in blobs that take up less space.
  * When loading the reports, the column names must be replaced, which is handled by this
- * class. (See [Metrics](#) for more information about integer metric names.)
+ * class. (See {@link Piwik\Metrics} for more information about integer metric names.)
  * 
  * **Basic example**
  * 
@@ -55,7 +55,7 @@ class ReplaceColumnNames extends Filter
      *                                   array('OLD_COLUMN_NAME' => 'NEW_COLUMN NAME',
      *                                         'OLD_COLUMN_NAME2' => 'NEW_COLUMN NAME2')
      *                                   ```
-     *                                   If null, [Metrics::$mappingFromIdToName](#) is used.
+     *                                   If null, {@link Piwik\Metrics::$mappingFromIdToName} is used.
      */
     public function __construct($table, $mappingToApply = null)
     {
@@ -67,7 +67,7 @@ class ReplaceColumnNames extends Filter
     }
 
     /**
-     * See [ReplaceColumnNames](#).
+     * See {@link ReplaceColumnNames}.
      *
      * @param DataTable $table
      */
diff --git a/core/DataTable/Filter/ReplaceSummaryRowLabel.php b/core/DataTable/Filter/ReplaceSummaryRowLabel.php
index 4d2b7ceb03..8fb998b9e6 100644
--- a/core/DataTable/Filter/ReplaceSummaryRowLabel.php
+++ b/core/DataTable/Filter/ReplaceSummaryRowLabel.php
@@ -51,7 +51,7 @@ class ReplaceSummaryRowLabel extends Filter
     }
 
     /**
-     * See [ReplaceSummaryRowLabel](#).
+     * See {@link ReplaceSummaryRowLabel}.
      *
      * @param DataTable $table
      */
diff --git a/core/DataTable/Filter/Truncate.php b/core/DataTable/Filter/Truncate.php
index d04c61e32b..8374bebbb7 100644
--- a/core/DataTable/Filter/Truncate.php
+++ b/core/DataTable/Filter/Truncate.php
@@ -19,7 +19,7 @@ use Piwik\Piwik;
  * Truncates a DataTable by merging all rows after a certain index into a new summary
  * row, unless the count of rows is less than the index.
  * 
- * The [ReplaceSummaryRow](#) filter will be queued after the table is truncated.
+ * The {@link ReplaceSummaryRow} filter will be queued after the table is truncated.
  * 
  * ### Examples
  * 
@@ -67,7 +67,7 @@ class Truncate extends Filter
     }
 
     /**
-     * Executes the filter, see [Truncate](#).
+     * Executes the filter, see {@link Truncate}.
      *
      * @param DataTable $table
      */
diff --git a/core/DataTable/Map.php b/core/DataTable/Map.php
index 14c8c8b0a4..a1d98a2206 100644
--- a/core/DataTable/Map.php
+++ b/core/DataTable/Map.php
@@ -77,7 +77,7 @@ class Map implements DataTableInterface
     /**
      * Queue a filter to DataTable child of contained by this instance.
      * 
-     * See [DataTable::queueFilter](#) for more information..
+     * See {@link Piwik\DataTable::queueFilter()} for more information..
      *
      * @param string|Closure $className Filter name, eg. `'Limit'` or a Closure.
      * @param array $parameters Filter parameters, eg. `array(50, 10)`.
@@ -362,7 +362,7 @@ class Map implements DataTableInterface
      * Adds a DataTable to all the tables in this array.
      * NOTE: Will only add `$tableToSum` if the childTable has some rows
      *
-     * See [DataTable::addDataTable()](#).
+     * See {@link Piwik\DataTable::addDataTable()}.
      * 
      * @param DataTable $tableToSum
      */
diff --git a/core/DataTable/Row.php b/core/DataTable/Row.php
index a8b3b24707..e7310935a4 100644
--- a/core/DataTable/Row.php
+++ b/core/DataTable/Row.php
@@ -15,7 +15,7 @@ use Piwik\DataTable;
 use Piwik\Metrics;
 
 /**
- * This is what a [DataTable](#) is composed of.
+ * This is what a {@link Piwik\DataTable} is composed of.
  * 
  * DataTable rows contain columns, metadata and a subtable ID. Columns and metadata
  * are stored as an array of name => value mappings.
@@ -271,7 +271,7 @@ class Row
      * Sums a DataTable to this row's subtable. If this row has no subtable a new
      * one is created.
      * 
-     * See [DataTable::addDataTable()](#) to learn how DataTables are summed.
+     * See {@link Piwik\DataTable::addDataTable()} to learn how DataTables are summed.
      * 
      * @param DataTable $subTable Table to sum to this row's subtab.e.
      */
@@ -319,7 +319,7 @@ class Row
     }
 
     /**
-     * Returns true if the subtable is currently loaded in memory via [DataTable\Manager](#).
+     * Returns true if the subtable is currently loaded in memory via {@link Piwik\DataTable\Manager}.
      *
      * @return bool
      */
diff --git a/core/DataTable/Row/DataTableSummaryRow.php b/core/DataTable/Row/DataTableSummaryRow.php
index 78a17662d1..32c736c1fe 100644
--- a/core/DataTable/Row/DataTableSummaryRow.php
+++ b/core/DataTable/Row/DataTableSummaryRow.php
@@ -22,7 +22,7 @@ use Piwik\DataTable\Row;
  * Non-numeric columns are bypassed during summation and do not appear in this
  * rows columns.
  *
- * See [DataTable\Row::sumRow()](#) for more information on the algorithm.
+ * See {@link Piwik\DataTable\Row::sumRow()} for more information on the algorithm.
  *
  * @package Piwik
  * @subpackage DataTable
diff --git a/core/DataTable/Simple.php b/core/DataTable/Simple.php
index 0b6eb2b614..a895321189 100644
--- a/core/DataTable/Simple.php
+++ b/core/DataTable/Simple.php
@@ -13,7 +13,7 @@ namespace Piwik\DataTable;
 use Piwik\DataTable;
 
 /**
- * A [DataTable](#) where every row has two columns: **label** and **value**.
+ * A {@link Piwik\DataTable} where every row has two columns: **label** and **value**.
  * 
  * Simple DataTables are only used to slightly alter the output of some renderers
  * (notably the XML renderer).
diff --git a/core/Db.php b/core/Db.php
index 7bc4624978..a58b03dc7d 100644
--- a/core/Db.php
+++ b/core/Db.php
@@ -237,7 +237,7 @@ class Db
      *     $idVisit = // ...
      *     Db::deleteAllRows(Common::prefixTable('log_visit'), "WHERE idvisit <= ?", "idvisit ASC", 100000, array($idVisit));
      * 
-     * @param string $table The name of the table to delete from. Must be prefixed (see [Common::prefixTable](#)).
+     * @param string $table The name of the table to delete from. Must be prefixed (see {@link Piwik\Common::prefixTable()}).
      * @param string $where The where clause of the query. Must include the WHERE keyword.
      * @param $orderBy The column to order by and the order by direction, eg, `idvisit ASC`.
      * @param int $maxRowsPerQuery The maximum number of rows to delete per DELETE query.
@@ -265,7 +265,7 @@ class Db
 
     /**
      * Runs an OPTIMIZE TABLE query on the supplied table or tables. The table names must be prefixed
-     * (see [Common::prefixTable](#)).
+     * (see {@link Piwik\Common::prefixTable()}).
      * 
      * Tables will only be optimized if the `[General] enable_sql_optimize_queries` config option is
      * set to **1**.
@@ -306,7 +306,7 @@ class Db
     }
 
     /**
-     * Drops the supplied table or tables. The table names must be prefixed (see [Common::prefixTable](#)).
+     * Drops the supplied table or tables. The table names must be prefixed (see {@link Piwik\Common::prefixTable()}).
      *
      * @param string|array $tables The name of the table to drop or an array of table names to drop.
      * @return \Zend_Db_Statement
@@ -321,7 +321,7 @@ class Db
     }
 
     /**
-     * Locks the supplied table or tables. The table names must be prefixed (see [Common::prefixTable](#)).
+     * Locks the supplied table or tables. The table names must be prefixed (see {@link Piwik\Common::prefixTable()}).
      * 
      * **NOTE:** Piwik does not require the LOCK TABLES privilege to be available. Piwik
      * should still work in case it is not granted.
diff --git a/core/Nonce.php b/core/Nonce.php
index f05e8ab542..c877228a91 100644
--- a/core/Nonce.php
+++ b/core/Nonce.php
@@ -63,8 +63,8 @@ class Nonce
      * A nonce is valid if it matches the current nonce and if the current nonce
      * has not expired.
      * 
-     * The request is valid if the referrer is a local URL (see [Url::isLocalUrl](#))
-     * and if the HTTP origin is valid (see [getAcceptableOrigins](#getAcceptableOrigins)).
+     * The request is valid if the referrer is a local URL (see {@link Url::isLocalUrl()})
+     * and if the HTTP origin is valid (see {@link getAcceptableOrigins()}).
      *
      * @param string $id Unique id
      * @param string $cnonce Nonce sent to client
diff --git a/core/Notification.php b/core/Notification.php
index 83ad6fca70..1859aaac4e 100644
--- a/core/Notification.php
+++ b/core/Notification.php
@@ -124,14 +124,14 @@ class Notification
     public $flags = self::FLAG_NO_CLEAR;
 
     /**
-     * The notification's display type. See `TYPE_*` constants in [this class](#).
+     * The notification's display type. See `TYPE_*` constants in {@link Notification}.
      * 
      * @var string
      */
     public $type = self::TYPE_TRANSIENT;
 
     /**
-     * The notification's context (message type). See `CONTEXT_*` constants in [this class](#).
+     * The notification's context (message type). See `CONTEXT_*` constants in {@link Notification}.
      * 
      * A notification's context determines how it will be styled.
      * 
@@ -141,7 +141,7 @@ class Notification
 
     /**
      * The notification's priority. The higher the priority, the higher the order. See `PRIORITY_*`
-     * constants in [this class](#) to see possible priority values.
+     * constants in {@link Notification} to see possible priority values.
      * 
      * @var int
      */
diff --git a/core/Notification/Manager.php b/core/Notification/Manager.php
index 18b231e841..879227ce5a 100644
--- a/core/Notification/Manager.php
+++ b/core/Notification/Manager.php
@@ -14,7 +14,7 @@ use Piwik\Notification;
 use Piwik\Session\SessionNamespace;
 
 /**
- * Posts and removes UI notifications (see [Notification](#) to learn more).
+ * Posts and removes UI notifications (see {@link Piwik\Notification} to learn more).
  * 
  * @package Piwik
  * @subpackage Notification
diff --git a/core/Plugin/Archiver.php b/core/Plugin/Archiver.php
index 1f3b463a68..8c9aa24a28 100644
--- a/core/Plugin/Archiver.php
+++ b/core/Plugin/Archiver.php
@@ -73,8 +73,8 @@ abstract class Archiver
      * aggregating individual log table rows isn't a problem. Doing this for any larger period,
      * however, would cause performance issues.
      * 
-     * Aggregate log table rows using a [LogAggregator](#) instance. Get a [LogAggregator](#) instance
-     * using the [getLogAggregator](#getLogAggregator) method.
+     * Aggregate log table rows using a {@link Piwik\DataAccess\LogAggregator} instance. Get a {@link Piwik\DataAccess\LogAggregator} instance
+     * using the {@link getLogAggregator()} method.
      */
     abstract public function aggregateDayReport();
 
@@ -85,13 +85,13 @@ abstract class Archiver
      * current period. For example, it is more efficient to aggregate reports for each day of a
      * week than to aggregate each log entry of the week.
      * 
-     * Use [ArchiveProcessor::aggregateNumericMetrics](#) and [ArchiveProcessor::aggregateDataTableRecords](#)
-     * to aggregate archived reports. Get the [ArchiveProcessor](#) instance using the [getProcessor](#getProcessor).
+     * Use {@link Piwik\ArchiveProcessor::aggregateNumericMetrics()} and {@link Piwik\ArchiveProcessor::aggregateDataTableRecords()}
+     * to aggregate archived reports. Get the {@link Piwik\ArchiveProcessor} instance using the [getProcessor](#getProcessor).
      */
     abstract public function aggregateMultipleReports();
 
     /**
-     * Returns an [ArchiveProcessor](#) instance that can be used to insert archive data for
+     * Returns an {@link Piwik\ArchiveProcessor} instance that can be used to insert archive data for
      * this period, segment and site.
      * 
      * @return \Piwik\ArchiveProcessor
@@ -102,7 +102,7 @@ abstract class Archiver
     }
 
     /**
-     * Returns a [LogAggregator](#) instance that can be used to aggregate log table rows
+     * Returns a {@link Piwik\DataAccess\LogAggregator} instance that can be used to aggregate log table rows
      * for this period, segment and site.
      * 
      * @return \Piwik\DataAccess\LogAggregator
diff --git a/core/Plugin/Controller.php b/core/Plugin/Controller.php
index fc9d7970cd..2ae87bffe3 100644
--- a/core/Plugin/Controller.php
+++ b/core/Plugin/Controller.php
@@ -41,7 +41,7 @@ use Piwik\API\Proxy;
  * Base class of all plugin Controllers.
  * 
  * Plugins that wish to add display HTML should create a Controller that either
- * extends from this class or from [ControllerAdmin](#). Every public method in
+ * extends from this class or from {@link Piwik\Plugin\ControllerAdmin}. Every public method in
  * the controller will be exposed as a controller action.
  * 
  * Learn more about Piwik's MVC system [here](#).
@@ -379,7 +379,7 @@ abstract class Controller
      * 
      * The current site ID and period will be used.
      * 
-     * See [Sparkline](#) for more information about the Sparkline visualization.
+     * See {@link Piwik\Visualization\Sparkline} for more information about the Sparkline visualization.
      *
      * @param string $action Method name of the controller that serves the report.
      * @param array $customParameters The array of query parameter name/value pairs that
@@ -435,7 +435,7 @@ abstract class Controller
     }
 
     /**
-     * Assigns variables to [View](#) instances that display an entire page.
+     * Assigns variables to {@link Piwik\View) instances that display an entire page.
      * 
      * The following variables assigned:
      * 
@@ -445,8 +445,8 @@ abstract class Controller
      * **prettyDate** - A pretty string description of the current period.
      * **siteName** - The current site's name.
      * **siteMainUrl** - The URL of the current site.
-     * **startDate** - The start date of the current period. A [Date](#) instance.
-     * **endDate** - The end date of the current period. A [Date](#) instance.
+     * **startDate** - The start date of the current period. A {@link Piwik\Date} instance.
+     * **endDate** - The end date of the current period. A {@link Piwik\Date} instance.
      * **language** - The current language's language code.
      * **config_action_url_category_delimiter** - The value of the `[General] action_url_category_delimiter`
      *                                            INI config option.
@@ -522,7 +522,7 @@ abstract class Controller
     }
 
     /**
-     * Assigns a set of generally useful variables to a [View](#) instance.
+     * Assigns a set of generally useful variables to a {@link Piwik\View) instance.
      * 
      * The following variables assigned:
      * 
diff --git a/core/Plugin/ControllerAdmin.php b/core/Plugin/ControllerAdmin.php
index e90822f9e6..527aeb6479 100644
--- a/core/Plugin/ControllerAdmin.php
+++ b/core/Plugin/ControllerAdmin.php
@@ -23,7 +23,7 @@ use Piwik\View;
 /**
  * Base class of plugin controllers that provide administrative functionality.
  * 
- * See [Controller](#) to learn more about Piwik controllers.
+ * See {@link Controller} to learn more about Piwik controllers.
  * 
  * @package Piwik
  *
@@ -32,7 +32,7 @@ use Piwik\View;
 abstract class ControllerAdmin extends Controller
 {
     /**
-     * Calls [Controller::setBasicVariablesView](#) and [setBasicVariablesAdminView](#setBasicVariablesAdminView)
+     * Calls {@link setBasicVariablesView()} and {@link setBasicVariablesAdminView()}
      * using the supplied view.
      *
      * @param View $view
diff --git a/core/Plugin/Manager.php b/core/Plugin/Manager.php
index 2751d7c142..47a012a38a 100644
--- a/core/Plugin/Manager.php
+++ b/core/Plugin/Manager.php
@@ -394,7 +394,7 @@ class Manager extends Singleton
      *               - **invalid**: If the plugin is invalid, this property will be set to true.
      *                              If the plugin is not invalid, this property will not exist.
      *               - **info**: If the plugin was loaded, will hold the plugin information.
-     *                           See [Plugin::getInformation](#).
+     *                           See {@link Piwik\Plugin::getInformation()}.
      * @api
      */
     public function returnLoadedPluginsInfo()
diff --git a/core/Plugin/Settings.php b/core/Plugin/Settings.php
index 625512f9eb..b0fff3c713 100644
--- a/core/Plugin/Settings.php
+++ b/core/Plugin/Settings.php
@@ -22,7 +22,7 @@ use Piwik\Settings\StorageInterface;
  * Descendants of this class should implement the [init](#init) method and call the
  * [addSetting](#addSetting) method for each of the plugin's settings.
  * 
- * For an example, see the [ExampleSettingsPlugin](#) plugin.
+ * For an example, see the {@link Piwik\Plugins\ExampleSettingsPlugin\ExampleSettingsPlugin} plugin.
  * 
  * @package Piwik\Plugin
  * @api
@@ -189,9 +189,9 @@ abstract class Settings implements StorageInterface
      * Sets (overwrites) the value of a setting in memory. To persist the change, [save](#save) must be
      * called afterwards, otherwise the change has no effect.
      * 
-     * Before the setting is changed, the [Setting::validate](#) and [Setting::transform](#) closures
-     * will be invoked (if defined). If there is no validation filter, the setting value will be casted
-     * to the appropriate data type.
+     * Before the setting is changed, the {@link Piwik\Settings\Setting::validate()} and
+     * {@link Piwik\Settings\Setting::transform()} closures will be invoked (if defined). If there is no validation
+     * filter, the setting value will be casted to the appropriate data type.
      *
      * @param Setting $setting
      * @param string $value
diff --git a/core/Plugin/ViewDataTable.php b/core/Plugin/ViewDataTable.php
index 511babdd7d..204c25a9fa 100644
--- a/core/Plugin/ViewDataTable.php
+++ b/core/Plugin/ViewDataTable.php
@@ -29,7 +29,7 @@ use Piwik\ViewDataTable\RequestConfig as VizRequest;
  * type of visualization of that data.
  * 
  * Visualizations can be in any format. HTML-based visualizations should derive from
- * [Visualization](#). Visualizations that use other formats, such as visualizations
+ * {@link Visualization}. Visualizations that use other formats, such as visualizations
  * that output an image, should extend ViewDataTable directly.
  *
  * ### Configuring ViewDataTables
@@ -37,8 +37,8 @@ use Piwik\ViewDataTable\RequestConfig as VizRequest;
  * **Display properties**
  * 
  * ViewDataTable output can be customized by setting one of many available display
- * properties. Display properties are stored as fields in [Config](#) objects. ViewDataTables
- * store a [Config](#) object in the [config](#config) field.
+ * properties. Display properties are stored as fields in {@link Piwik\ViewDataTable\Config} objects. ViewDataTables
+ * store a {@link Piwik\ViewDataTable\Config} object in the {@link $config} field.
  * 
  * Display properties can be set at any time before rendering.
  * 
@@ -48,8 +48,8 @@ use Piwik\ViewDataTable\RequestConfig as VizRequest;
  * however, not used to customize ViewDataTable instances, but in the request to Piwik's
  * API when loading analytics data.
  * 
- * Request parameters are set by setting the fields of a [RequestConfig](#) object stored in
- * the [requestConfig](#requestConfig) field. They can be set at any time before rendering.
+ * Request parameters are set by setting the fields of a {@link Piwik\ViewDataTable\RequestConfig} object stored in
+ * the {@link $requestConfig} field. They can be set at any time before rendering.
  * Setting them after data is loaded will have no effect.
  * 
  * **Customizing how reports are displayed**
diff --git a/core/RankingQuery.php b/core/RankingQuery.php
index 70977f7d01..21d250ab47 100644
--- a/core/RankingQuery.php
+++ b/core/RankingQuery.php
@@ -208,7 +208,7 @@ class RankingQuery
      * The object has to be configured first using the other methods.
      *
      * @param $innerQuery string  The "payload" query that does the actual data aggregation. The ordering
-     *                            has to be specified in this query. [RankingQuery](#) cannot apply ordering
+     *                            has to be specified in this query. {@link RankingQuery} cannot apply ordering
      *                            itself.
      * @param $bind array         Bindings for the inner query.
      * @return array              The format depends on which methods have been used
@@ -266,7 +266,7 @@ class RankingQuery
      * yourself, use this method.
      *
      * @param $innerQuery string  The "payload" query that does the actual data aggregation. The ordering
-     *                            has to be specified in this query. [RankingQuery](#) cannot apply ordering
+     *                            has to be specified in this query. {@link RankingQuery} cannot apply ordering
      *                            itself.
      * @return string             The entire ranking query SQL.
      */
diff --git a/core/ScheduledTask.php b/core/ScheduledTask.php
index dbe36f79ac..1bebdfa37e 100644
--- a/core/ScheduledTask.php
+++ b/core/ScheduledTask.php
@@ -18,7 +18,7 @@ use Piwik\ScheduledTime;
  * Contains metadata describing a chunk of PHP code that should be executed at regular
  * intervals.
  * 
- * See the [TaskScheduler](#) docs to learn more about scheduled tasks.
+ * See the {@link TaskScheduler} docs to learn more about scheduled tasks.
  * 
  * @package Piwik
  * @subpackage ScheduledTask
@@ -78,7 +78,7 @@ class ScheduledTask
      *                           executed.
      * @param mixed|null $methodParameter An optional parameter to pass to the method when executed.
      *                                    Must be convertible to string.
-     * @param ScheduledTime|null $scheduledTime A [ScheduledTime](#) instance that describes when the method
+     * @param ScheduledTime|null $scheduledTime A {@link ScheduledTime} instance that describes when the method
      *                                          should be executed and how long before the next execution.
      * @param int $priority The priority of the task. Tasks with a higher priority will be executed first.
      *                      Tasks with low priority will be executed last.
@@ -153,7 +153,7 @@ class ScheduledTask
     }
 
     /**
-     * Returns a [ScheduledTime](#) instance that describes when the method should be executed
+     * Returns a {@link ScheduledTime} instance that describes when the method should be executed
      * and how long before the next execution.
      *
      * @return ScheduledTime
diff --git a/core/Segment.php b/core/Segment.php
index 45af28f789..3802dce177 100644
--- a/core/Segment.php
+++ b/core/Segment.php
@@ -21,8 +21,7 @@ use Piwik\Plugins\API\API;
  * country, or both.
  * 
  * Individual segment parameters (such as `browserCode` and `countryCode`)
- * are defined by individual plugins. Read about the [API.getSegmentDimensionMetadataactionToLoadSubtab
-*](#)
+ * are defined by individual plugins. Read about the [API.getSegmentDimensionMetadataactionToLoadSubtable](#)
  * event to learn more.
  * 
  * Plugins that aggregate data stored in Piwik can support segments by
diff --git a/core/Settings/Setting.php b/core/Settings/Setting.php
index 8a72f39371..dc51f6e515 100644
--- a/core/Settings/Setting.php
+++ b/core/Settings/Setting.php
@@ -24,7 +24,7 @@ abstract class Setting
      * Describes the setting's PHP data type. When saved, setting values will always be casted to this
      * type.
      * 
-     * See [Settings](#) for a list of supported data types.
+     * See {@link Piwik\Plugin\Settings} for a list of supported data types.
      *
      * @var string
      */
@@ -33,7 +33,7 @@ abstract class Setting
     /**
      * Describes how the setting should be manipulated through Piwik's UI.
      *
-     * See [Settings](#) for a list of supportted control types.
+     * See {@link Piwik\Plugin\Settings} for a list of supportted control types.
      * 
      * @var string
      */
@@ -92,7 +92,7 @@ abstract class Setting
     /**
      * A closure that does some custom validation on the setting before the setting is persisted.
      * 
-     * The closure should take two arguments: the setting value and the [Setting](#) instance being
+     * The closure should take two arguments: the setting value and the {@link Setting} instance being
      * validated. If the value is found to be invalid, the closure should throw an exception with
      * a message that describes the error.
      * 
diff --git a/core/ViewDataTable/Factory.php b/core/ViewDataTable/Factory.php
index b2812bb6c4..533ef6c8a5 100644
--- a/core/ViewDataTable/Factory.php
+++ b/core/ViewDataTable/Factory.php
@@ -16,7 +16,7 @@ use Piwik\Piwik;
 use Piwik\Plugins\CoreVisualizations\Visualizations\HtmlTable;
 
 /**
- * Provides a means of creating [ViewDataTable](#) instances by ID.
+ * Provides a means of creating {@link Piwik\Plugin\ViewDataTable} instances by ID.
  *
  * ### Examples
  * 
@@ -70,7 +70,7 @@ class Factory
     private static $defaultViewTypes = null;
 
     /**
-     * Creates a [ViewDataTable](#) instance by ID. If the **viewDataTable** query parameter is set,
+     * Creates a {@link Piwik\Plugin\ViewDataTable} instance by ID. If the **viewDataTable** query parameter is set,
      * this parameter's value is used as the ID.
      * 
      * See [ViewDataTable docs](#) to read about the ViewDataTable implementations that are packaged with Piwik.
diff --git a/core/WidgetsList.php b/core/WidgetsList.php
index 659ddd02ce..bde8ba170e 100644
--- a/core/WidgetsList.php
+++ b/core/WidgetsList.php
@@ -13,8 +13,8 @@ namespace Piwik;
 /**
  * Manages the global list of reports that can be displayed as dashboard widgets.
  * 
- * Reports are added as dashboard widgets through the [WidgetsList.addWidgets](#)
- * event. Plugins should call [add](#add) in event observers for this event.
+ * Reports are added as dashboard widgets through the {@link addWidgets}
+ * event. Plugins should call {@link add()} in event observers for this event.
  * 
  * @package PluginsFunctions
  * @api
diff --git a/plugins/Overlay/API.php b/plugins/Overlay/API.php
index 05f27e7e2c..8fd8f26a0b 100644
--- a/plugins/Overlay/API.php
+++ b/plugins/Overlay/API.php
@@ -111,7 +111,7 @@ class API extends \Piwik\Plugin\API
          * 
          * This event can be used by plugins that provide their own authentication mechanism
          * to make that mechanism available. Subscribers should set the `'auth'` object in
-         * the [Piwik\Registry](#) to an object that implements the [Auth](#) interface.
+         * the {@link Piwik\Registry} to an object that implements the {@link Piwik\Auth} interface.
          * 
          * **Example**
          * 
diff --git a/plugins/ScheduledReports/API.php b/plugins/ScheduledReports/API.php
index de854a715b..31e5ac6503 100644
--- a/plugins/ScheduledReports/API.php
+++ b/plugins/ScheduledReports/API.php
@@ -415,7 +415,7 @@ class API extends \Piwik\Plugin\API
          * handle their new report types.
          * 
          * @param ReportRenderer &$reportRenderer This variable should be set to an instance that
-         *                                        extends [ReportRenderer](#) by one of the event
+         *                                        extends {@link Piwik\ReportRenderer} by one of the event
          *                                        subscribers.
          * @param string $reportType A string ID describing how the report is sent, eg,
          *                           `'sms'` or `'email'`.
-- 
GitLab