Extension:PageAssessments

Category:Extensions without an imageCategory:GPL licensed extensions
MediaWiki extensions manual
PageAssessments
Release status: stableCategory:Stable extensions
Implementation Parser function Category:Parser function extensions, Database Category:Database extensions, Special page Category:Special page extensions, MyWiki Category:Personalization extensions
Description Supports storing page assessments in a dedicated database table
Author(s)
  • Niharika Kohli
  • Frances Hocutt
  • Ryan Kaldari
Latest version N/A
Compatibility policy Snapshots releases along with MediaWiki. Master is not backward compatible.Category:Extensions with release branches compatibility policy
Database changes Yes
Tables page_assessments
page_assessments_projects
License GNU General Public License 2.0 or later
Download Category:Extensions in Wikimedia version control
  • $wgPageAssessmentsOnTalkPages
  • $wgPageAssessmentsSubprojects
Quarterly downloads 6 (Ranked 95th)
Translate the PageAssessments extension if it is available at translatewiki.net
Issues Open tasks · Report a bug
Category:All extensions

This extension is for storing page assessments (e.g. for English Wikipedia WikiProjects) in a structured and query-able way. For an example of how page assessments are done and used, see the English Wikipedia's documentation.

Installation

  • Download and move the extracted PageAssessments folder to your extensions/ directory.
    Developers and code contributors should install the extension from Git instead, using:cd extensions/
    git clone https://gerrit.wikimedia.org/r/mediawiki/extensions/PageAssessments
  • Add the following code at the bottom of your LocalSettings.php file:
    wfLoadExtension( 'PageAssessments' );
    
  • Run the update script which will automatically create the necessary database tables that this extension needs.
  • Yes Done – Navigate to Special:Version on your wiki to verify that the extension is successfully installed.

Configuration

You can also use these configuration options in your LocalSettings.php file:

  • $wgPageAssessmentsOnTalkPages If assessments are normally recorded on the pages themselves rather than on talk pages, set this to false (default: true).
  • $wgPageAssessmentsSubprojects If projects on your wiki have subprojects or task forces that you would like to record separate assessments for, set this to true (default: false).

Usage

The parser function for creating a new assessment is: {{#assessment: <name of the WikiProject> | <class> | <importance>}}

  • name of the wikiproject a short name for the project assessing the article, for example, "Medicine" or "Hungarian culture‎". Can be up to 128 characters long.
  • class a quality ranking, for example, "B" or "FA". See the class grades on Wikipedia for a more comprehensive example. Can be up to 20 characters long.
  • importance a ranking of how important the article is to the project, for example, "Low" or "High". Can be up to 20 characters long.

The assessment parser function is expected to be on the talk page of the page under review, however it may be included on the page itself if $wgPageAssessmentsOnTalkPages is set to false. A page may have more than one assessment function for different projects.

If an assessment template is already in use on multiple pages, the parser function can be embedded inside the template instead of having to edit each individual article's talk page.
Example usage

The importance/priority of an article might be different depending on the WikiProject:

{{#assessment:Medicine|A|Low}}
{{#assessment:Biology|B|High}}

Explanation:

Using this example in a talk page, declares the current page inside the Medicine project, with A quality, and with Low importance.

It also declares the current page in the Biology project, with B quality, and with High importance.

For wikis with CirrusSearch installed, PageAssessments adds a inproject keyword to allow filtering of search results to pages in given WikiProjects. For example, inproject:Cricket|Football will find pages related to either Cricket or Football.

Search rankings are influenced by the importance assigned to the article by the projects.

Lua interface

For wikis with Scribunto installed, PageAssessments adds a pageAssessments property to mw.title objects. It exposes the names of projects associated with the page, along with their class and importance assessments.

API

The PageAssessments extension includes three API query modules: pageassessments, projectpages, and projects.

Pageassessments

pageassessments is a new property query for the MediaWiki Action API. It is used to retrieve assessment metadata for one or more pages.

Examples

Get project and assessment data for page "Apple".

api.php?action=query&prop=pageassessments&titles=Apple

Get project and assessment data for pages "Apple" and Pear, using the newer API result format.

api.php?action=query&prop=pageassessments&titles=Apple|Pear&formatversion=2

Get project and assessment data for page "Apple", including subprojects and task forces (only available if $wgPageAssessmentsSubprojects is true).

api.php?action=query&prop=pageassessments&titles=Apple&pasubprojects=true

Projectpages

projectpages is a new list query. It is used to retrieve all the pages assessed by a particular WikiProject. This query can be used as a generator. By adding wppassessments=true, you can also get the assessment metadata for each of the pages.

Examples

Get first 10 pages associated with any WikiProject:

Get first 10 pages associated with WikiProject Medicine, including assessment data:

Get page info for first 10 pages associated with WikiProject Textile Arts:

Projects

projects is a new list query. It is used to retrieve a list of all the WikiProjects on a wiki. The results are returned as an array of project names.

Examples

Get a list of all the WikiProjects.

api.php?action=query&list=projects

Get a list of all the WikiProjects, including sub projects and task forces (only available if $wgPageAssessmentsSubprojects is true).

api.php?action=query&list=projects&pjsubprojects=true

Special page

PageAssessments also provides an on-wiki interface for retrieving assessment data at Special:PageAssessments.

Database tables

PageAssessments creates two new database tables:

page_assessments stores the assessment metadata, while page_assessments_projects stores the names of WikiProjects (so that they don't have to be recorded in full as part of each assessment record in the page_assessments table). Both tables are required for proper functioning of the parser function and APIs. The tables should exist on any wiki that has the PageAssessments extension installed. If PageAssessments is uninstalled, both tables can be dropped safely.

The purgeUnusedProjects.php maintenance script can be run to remove projects from the page_assessments_projects table that are no longer used by any assessments.

See also

Category:Extensions used on Wikimedia#PageAssessments
Category:All extensions Category:ArticleDeleteComplete extensions Category:CirrusSearchAddQueryFeatures extensions Category:Database extensions Category:Extensions in Wikimedia version control Category:Extensions included in Miraheze Category:Extensions included in WikiForge Category:Extensions used on Wikimedia Category:Extensions with release branches compatibility policy Category:Extensions without an image Category:GPL licensed extensions Category:LinksUpdateComplete extensions Category:LoadExtensionSchemaUpdates extensions Category:ParserFirstCallInit extensions Category:Parser function extensions Category:Personalization extensions Category:Special page extensions Category:Stable extensions