mediawiki/semantic-compound-queries

A Semantic Mediawiki extension to display and combine multiple #ask queries in a single visualization output

1.1.0 2017-06-24 14:20 UTC

README

Build Status Code Coverage Scrutinizer Code Quality Latest Stable Version Packagist download count

Semantic Compound Queries (a.k.a. SCQ) is a Semantic Mediawiki extension that defines the #compound_query parser function which can display results of multiple #ask queries (as compound construct) at the same time.

Requirements

Installation

The recommended way to install Semantic Compound Queries is by using Composer with an entry in MediaWiki's composer.json or alternatively composer.local.json.

{
	"require": {
		"mediawiki/semantic-compound-queries": "~1.1"
	}
}
  1. From your MediaWiki installation directory, execute composer require mediawiki/semantic-compound-queries:~1.1
  2. Navigate to Special:Version on your wiki and verify that the extension has been successfully installed.

Note that the required extension Semantic MediaWiki must be installed first according to the installation instructions provided with it.

Usage

The syntax of #compound_query resembles that of #ask, but with more than one query, and with the elements of each sub-query delimited by semicolons instead of pipes. Elements that are common across all sub-queries, like format= and width= (for maps) should be placed after all sub-queries.

Example

A sample call to #compound query, which retrieves both biographies, along with their subject; and fiction books, along with their author; is:

{{#compound_query:
  [[Category:Books]]
  [[Has genre::Biography]]
  ;?Covers subject=Subject
  |
  [[Category:Books]]
  [[Has genre::Fiction]]
  ;?Has author=Author
  |format=list
}}

For more information, see the extension's homepage at MediaWiki.org.

Contribution and support

Original author: Yaron Koren (Version 0.4.1)

If you want to contribute work to the project please subscribe to the developers mailing list and have a look at the contribution guideline.

Tests

This extension provides unit and integration tests that are run by a continues integration platform but can also be executed using composer phpunit from the extension base directory.

License

GNU General Public License, version 2 or later.