Extension:Semantic Watchlist

This extension is professionally maintained by the WikiTeq team.
WikiTeq provides official support for MediaWiki LTS releases only. It may work with other MediaWiki releases.
Category:Extensions by WikiTeq Category:Extensions without an imageCategory:GPL licensed extensions
MediaWiki extensions manual
Semantic Watchlist
Release status: stableCategory:Stable extensions
Implementation Special page Category:Special page extensions, API Category:API extensions, User interfaceCategory:User interface extensions, AjaxCategory:Ajax extensions, NotifyCategory:Notification extensions
Description Provides a watchlist and notifier for changes to semantic properties
Author(s)
Maintainer(s) WikiTeq team
Latest version See RELEASE NOTES (2022-03-23)
Compatibility policy For every MediaWiki release that is a Long Term Support release there is a corresponding branch in the extension.Category:Extensions with long-term support release branches compatibility policy
MediaWiki 1.35, 1.39Category:Extensions with manual MediaWiki version
PHP 7.3+
Database changes Yes
Composer mediawiki/semantic-watchlistCategory:Extensions supporting Composer
License GNU General Public License 3.0 or later
Download Category:Extensions in GitHub version control
README
RELEASE NOTES
  • $wgDefaultUserOptions
    (swl_email, swl_watchlisttoplink)
  • $egSWLEnableEmailNotify
  • $egSWLMailPerChange
  • $egSWLMaxMails
  • $egSWLEnableTopLink

Compatibility

  • Semantic MediaWiki 3.0+
Category:All extensions

The Semantic Watchlist extension (abbreviated as SWL) enables users to "watch", i.e. monitor changes in, properties defined by the Semantic MediaWiki extension. SWL defines a new watchlist page that lists changes to these properties. Users can choose to follow one or more watchlist groups, which are administrator defined, and cover a set of properties and a set of pages (category, namespace, or SMW concept). Notification of changes to watched properties is also possible via email.

Rationale

Users often want to keep track of the changes made on a wiki. On small wikis the RecentChanges special page often suffices for this. For bigger wikis, you might only be interested in changes to some of the articles, for example those which you are knowledgeable about, or those which contain sensitive data. The MediaWiki watchlist is a great tool for watching content on per-article basis.

In semantic wikis, you might be interested in only watching changes to semantic properties that you care about. For example, on an auction wiki, the price of an item might be the only thing you are truly concerned about, on the page for that item. The Semantic Watchlist extension allows for such fine-grained watching of changes.

Feature overview

Installation and requirements

Installation is done using Composer. See the instructions in the README file.

Updating from version 0.1

If you're updating from version 0.1 of Semantic Watchlist, you will need to add one more column to one of the SWL database tables. To do that, call the following SQL within the database:

ALTER TABLE /*$wgDBprefix*/swl_groups ADD COLUMN group_custom_texts BLOB null

Configuration

Configuration of Semantic Watchlist is done by setting various global variables in the LocalSettings.php file. These statements need to be placed AFTER the inclusion of Semantic Watchlist. The options, and their default values, are listed below.

Email notifications

  • $egSWLEnableEmailNotify - whether to email users on changes (default is true)
  • $egSWLEnableSelfNotify - whether users will be notified of their own changes (default is false)
  • $egSWLMailPerChange - whether to send an email on every change, as opposed to a generic "something changed" email for the first $egSWLMaxMails changes (default is true)
  • $egSWLMaxMails - the maximum amount of generic emails to send about changes until the user actually checks their semantic watchlist (default is 1)
  • $wgDefaultUserOptions['swl_email'] - the value for the user preference to receive email notifications (default is true)
  • $wgDefaultUserOptions['swl_watchlisttoplink'] - the value for the user preference to view a top link to the semantic watchlist (default is true)
  • $egSWLEnableTopLink - whether to display a top link to the semantic watchlist (default is true)

Permissions

Semantic Watchlist adds 2 permissions to MediaWiki: one to use the semantic watchlist (i.e. Special:SemanticWatchlist) and one that allows configuring the watchlist groups (i.e .Special:WatchlistConditions).

Using the watchlist

Default:

# Users that can use the semantic watchlist.
$wgGroupPermissions['*'            ]['semanticwatch'] = false;
$wgGroupPermissions['user'         ]['semanticwatch'] = true;
$wgGroupPermissions['autoconfirmed']['semanticwatch'] = true;
$wgGroupPermissions['bot'          ]['semanticwatch'] = false;
$wgGroupPermissions['sysop'        ]['semanticwatch'] = true;

Configuring watchlist groups

Default:

# Users that can modify the watchlist groups via Special:WatchlistConditions
$wgGroupPermissions['*'            ]['semanticwatchgroups'] = false;
$wgGroupPermissions['user'         ]['semanticwatchgroups'] = false;
$wgGroupPermissions['autoconfirmed']['semanticwatchgroups'] = false;
$wgGroupPermissions['bot'          ]['semanticwatchgroups'] = false;
$wgGroupPermissions['sysop'        ]['semanticwatchgroups'] = true;

(Until version 0.2.1, Semantic Watchlist defined its own user group as well, 'swladmins'.)

Usage

The watchlist

Each user can view changes to properties they watch on Special:SemanticWatchlist, which looks and works similar to the regular watchlist. Items that have not been viewed yet on the watchlist will be indicated as 'NEW'.

Watchlist preferences

Each user can manage which watchlist groups they follow via their user preferences. They can also choose if they want to receive email notifications or not. These preferences can be found on Special:Preferences, which is linked at the right top of the page in most skins for logged in users.

Watchlist groups

The watchlist groups can be managed via the Special:WatchlistConditions page by people that have the 'semanticwatchgroups' right, by default only administrators. Each group has a name, which allows users to easily recognize the groups in their preferences, and a single category, namespace or concept it covers. Only changes to properties on pages in this category, namespace or concept will be shown to users watching this group. Each group also has a list of properties, which further restricts what property changes should be shown to the user.

Authors

Semantic Watchlist was originally written by Jeroen De Dauw, as WikiWorks consultant for the IEEE. It was then modified by Nischay Nahata, again for WikiWorks and the IEEE. Code and design contributions were also made by Yaron Koren.

Screenshots

See also

Category:Semantic MediaWiki extensions Category:Watchlist extensions
Category:API extensions Category:AdminLinks extensions Category:Ajax extensions Category:All extensions Category:Extensions by WikiTeq Category:Extensions in GitHub version control Category:Extensions supporting Composer Category:Extensions which add rights Category:Extensions with long-term support release branches compatibility policy Category:Extensions with manual MediaWiki version Category:Extensions without an image Category:GPL licensed extensions Category:GetPreferences extensions Category:LoadExtensionSchemaUpdates extensions Category:Notification extensions Category:SMWStore::updateDataBefore extensions Category:SWLGroupNotify extensions Category:SaveUserOptions extensions Category:Semantic MediaWiki extensions Category:SkinTemplateNavigation::Universal extensions Category:Special page extensions Category:Stable extensions Category:User interface extensions Category:Watchlist extensions