Coder Social home page Coder Social logo

semanticmediawiki / semanticcompoundqueries Goto Github PK

View Code? Open in Web Editor NEW
6.0 6.0 5.0 188 KB

Allows for the display of multiple inline queries in a single visualization

Home Page: https://www.mediawiki.org/wiki/Extension:Semantic_Compound_Queries

License: GNU General Public License v2.0

PHP 83.78% Shell 13.89% Makefile 2.33%
mediawiki mw query scq semantic semantic-mediawiki smw

semanticcompoundqueries's Introduction

Semantic MediaWiki

CI Latest Stable Version Packagist download count

Semantic MediaWiki (a.k.a. SMW) is a free, open-source extension to MediaWiki โ€“ the wiki software that powers Wikipedia โ€“ that lets you store and query data within the wiki's pages.

Semantic MediaWiki is also a full-fledged framework, in conjunction with many spinoff extensions, that can turn a wiki into a powerful and flexible knowledge management system. All data created within SMW can easily be published via the Semantic Web, allowing other systems to use this data seamlessly.

For a better understanding of how Semantic MediaWiki works, have a look at deployed in 5 min and the Sesame, Fuseki triplestore video, or browse the wiki for a more comprehensive introduction.

Requirements

Semantic MediaWiki requires MediaWiki and its dependencies, such as PHP.

Supported MediaWiki, PHP and database versions depend on the version of Semantic MediaWiki. See the compatibility matrix for details.

Installation

The recommended way to install Semantic MediaWiki is by using Composer. See the detailed installation guide as well as the information on compatibility.

Documentation

Most of the documentation can be found on the Semantic MediaWiki wiki. A small core of documentation also comes bundled with the software itself. This documentation is minimalistic and less explanatory than what can be found on the SMW wiki. It is however always kept up to date, and applies to the version of the code it comes bundled with. The most important files are linked below.

Support

Chatroom Twitter Facebook LinkedIn YouTube Mailing lists

Primary support channels:

Contributing

Many people have contributed to SMW. A list of people who have made contributions in the past can be found here or on the wiki for Semantic MediaWiki. The overview on how to contribute provides information on the different ways available to do so.

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

Tests

This extension provides unit and integration tests and are normally run by a continuous integration platform but can also be executed locally using the shortcut command composer phpunit from the extension base directory. A more comprehensive introduction can be found under the test section.

License

GNU General Public License, version 2 or later. The COPYING file explains SMW's copyright and license.

semanticcompoundqueries's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

semanticcompoundqueries's Issues

Make 2.1.0 release

Tracking issue for the 2.1.0 release.

  • Finalize RELEASE NOTES
  • Update "README.md"
  • Update "composer.json"
  • Update version number "extension.json"
  • Create tag
  • Add release to Wikidata
  • Update homepage
  • Announce via mail
  • Do a release tweet on Twitter
  • Run composer update on smw.o
  • Start development of new version
    • Update "composer.json" (update dev alias)
    • Update "extension.json" (new alpha version)

Not (official) compatible with SMW 4

Setup and configuration

  • SMW version: 3.2.3 / 4.0.0
  • SCQ version: 2.1.0
  • MW version: 1.36
  • DB (MySQL etc.): 10.3.32-MariaDB-0ubuntu0.20.04.1

Issue

changing composer.local.json to

    "require": {
            "mediawiki/semantic-media-wiki": "~4.0",
            "mediawiki/semantic-compound-queries": "*",
    },

Gives these errors when running composer update

Problem 1
- mediawiki/semantic-compound-queries[1.0.0, ..., 1.0.1] require mediawiki/semantic-media-wiki ~2.3 -> found mediawiki/semantic-media-wiki[2.3.0, ..., 2.5.8] but it conflicts with your root composer.json require (~4.0).
- mediawiki/semantic-compound-queries 1.1.0 requires mediawiki/semantic-media-wiki ~2.4 -> found mediawiki/semantic-media-wiki[2.4.0, ..., 2.5.8] but it conflicts with your root composer.json require (~4.0).
- mediawiki/semantic-compound-queries 1.2.0 requires mediawiki/semantic-media-wiki ~2.5|~3.0 -> found mediawiki/semantic-media-wiki[2.5.0, ..., 2.5.8, 3.0.0, ..., 3.2.3] but it conflicts with your root composer.json require (~4.0).
- mediawiki/semantic-compound-queries[2.0.0, ..., 2.1.0] require mediawiki/semantic-media-wiki ~3.0 -> found mediawiki/semantic-media-wiki[3.0.0, ..., 3.2.3] but it conflicts with your root composer.json require (~4.0).
- Root composer.json requires mediawiki/semantic-compound-queries * -> satisfiable by mediawiki/semantic-compound-queries[1.0.0, 1.0.1, 1.1.0, 1.2.0, 2.0.0, 2.1.0].

Extension version 1.0.0 does not invoke on MediaWiki 1.27+, probably earlier

Setup 1

  • MediaWiki 1.27.1 (8c593e7) 22:49, 26 October 2016
  • PHP 7.0.8-0ubuntu0.16.04.3 (apache2handler)
  • MySQL 5.7.16-0ubuntu0.16.04.1

Issue 1

Trying to install SCQ version 1.0.0 fails on the mentioned environment since the extension is not being invoked. Trying to manually invoke with require ... fails as expected with Fatal error: Cannot redeclare scqgRegisterParser() (previously declared in /.../w/extensions/SemanticCompoundQueries/SemanticCompoundQueries.php:43) in /.../w/extensions/SemanticCompoundQueries/SemanticCompoundQueries.php on line 46. Thus I reverted back to version 0.4.1.

Setup 2

  • MediaWiki 1.28.0 (e92ed15) 22:16, 28. Nov. 2016
  • PHP 5.6.29-0+deb8u1 (apache2handler)
  • MariaDB 10.0.28-MariaDB-1~jessie

Issue 2

Trying to install SCQ version 1.0.0 fails on the mentioned environment since the extension is not being invoked. Reverting back to version 0.4.1 fails because of PHP Fatal error: Call to a member function getHash() on null in /.../w/extensions/SemanticMediaWiki/includes/query/SMW_Query.php on line 451

Transferring ownership/authorship of this extension?

Hi,

I'm very comfortable with transferring ownership of this extension, so that the "Author(s)" field on mediawiki.org, the README file, etc., list someone else, and I only show up in the notes as the original creator. That way, there can be closer integration with SMW, and it's one less extension for me to worry about. James and Jeroen are the obvious candidates - how do you guys feel about being listed as the authors?

Can I join two categories in one subquery?

Setup and configuration

  • SMW version: "3.1.5"
  • SCQ version: "2.1.0",
  • MW version: 1.34
  • DB (MySQL etc.):MySQL

Issue

Need a help with compound_query.

Can I join two categories in one subquery?

I tried this

{{
#compound_query:
| [[Category:Category1 Category2]] <--!!
 ;limit=5000
 ;?Has coordinates
 ;icon=Yellow_marker.png
|format=leaflet 
|zoom=2
|markercluster=on
|clustermaxzoom=7
|clusterminsize=4
|fullscreen=1
|height=400px
}}

Make 2.0.0 release

Tracking issue for the 2.0.0 release.

  • Finalize RELEASE NOTES
  • Update "README.md"
  • Update "composer.json"
  • Update version number "extension.json"
  • Create tag
  • Add release to Wikidata
  • Update homepage
  • Announce via mail
  • Do a release tweet on Twitter
  • Run composer update on smw.o
  • Update "LocalSettings.php"
  • Start development of new version
    • Update "composer.json" (update dev alias)
    • Update "extension.json" (new alpha version)

Make 1.2.0 release

Tracking issue for the 1.2.0 release.

  • Finalize RELEASE NOTES
  • Update "README.md"
  • Update "composer.json"
  • Update version number "SemanticCompoundQueries.php.php"
  • Create tag
  • Add release to Wikidata
  • Update homepage
  • Announce via mail
  • Do a release tweet on Twitter
  • Run composer update on smw.o
  • Update "LocalSettings.php"
  • Start development of new version
    • Update "composer.json" (update dev alias)
    • Update "SemanticCompoundQueries.php" (new alpha version)

composer v2 support

Setup and configuration

  • SMW version: 4.1.1
  • SCQ version: 2.2.0
  • MW version: 1.39.0
  • DB (MySQL etc.): mariadb

Issue

I want to install with composer, but this extension requires composer >=1.0.1 and many other extensions do not support this anymore, for example external-data:

Produces a stack trace and outputs:

Your requirements could not be resolved to an installable set of packages.

  Problem 1
    - composer/installers v1.0.22 requires composer-plugin-api 1.0.0 -> found composer-plugin-api[2.3.0] but it does not match the constraint.
    - composer/installers[v1.0.23, ..., v1.8.0] require composer-plugin-api ^1.0 -> found composer-plugin-api[2.3.0] but it does not match the constraint.
    - Root composer.json requires mediawiki/external-data dev-REL1_39 -> satisfiable by mediawiki/external-data[dev-REL1_39].
    - mediawiki/semantic-compound-queries 2.2.0 requires composer/installers 1.*,>=1.0.1 -> satisfiable by composer/installers[v1.0.1, ..., v1.12.0].
    - You can only install one version of a package, so only one of these can be installed: composer/installers[v1.0.0, ..., v1.12.0, v2.2.0].
    - mediawiki/external-data dev-REL1_39 requires composer/installers ~2.1 -> satisfiable by composer/installers[v2.1.0, v2.1.1, v2.2.0].
    - Root composer.json requires mediawiki/semantic-compound-queries ~2.2 -> satisfiable by mediawiki/semantic-compound-queries[2.2.0].

Steps to reproduce the observation (recommendation is to use the sandbox):

Make 1.1.0 release

  • Finalize release notes
  • Update "README"
  • Update "composer.json" (remove SMW 3.0 dev)
  • Update "SemanticCompoundQueries.php" (version 1.1.0)
  • Create tag
  • Start development of new version
    • Update "SemanticCompoundQueries.php" (version 1.2.0-alpha)
    • Update "composer.json" (add SMW 3.0 dev and update dev alias)
    • Update "README" (start 1.2.0 section)
  • Announce via mail
  • Do a release tweet on Twitter

Repo clean-up

This repo requires some general clean-up to conform with the https://github.com/SemanticMediaWiki semi maintenance standards:

Objectives

  • Travis and unit tests to target test coverage 80%+
  • Scrutinizer > 9
  • Composer + PSR-4
  • Namespace usage (SCQ)

Code

  • SCQCompoundQueryApi not sure why this is called compoundquery as API module. I understand the compound part, the query part not so much, it is so generic that it doesn't allow to associate it with #ask and this clearly uses the #ask syntax (extended with SCQ syntax elements). Without knowing compoundquery it could be a SPARQL query, or SQL query but in fact it is a #ask query therefore I'd rather see it named compoundask to reflect the intention of this module.
  • SCQQueryProcessor has a lot of static methods that makes it difficult to test (at best)

i18n

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.