v3.1.0+
Status: | effective |
Progress: | 100% |
Version: | 3.1.0+ |
Embedded query updates
From semantic-mediawiki.org
Embedded query updates | |
---|---|
Embedded query updates allow to track and store dependencies of embedded queries | |
Collection | |
Keywords | |
Table of Contents | |
The embedded query update feature provided by "QueryDependencyLinksStore" was added with Semantic MediaWiki 2.3.0Released on 29 October 2015 and compatible with MW 1.19.0 - 1.25.x. as part of the query management to track and store dependencies of embedded queries (a.k.a. inline queries).1
The mechanism of how query dependency updates are done was refactored and changed with Semantic MediaWiki 3.1.0Released on 23 September 2019 and compatible with MW 1.31.0 - 1.33.x..2 For current information on this see also the related README file 3 and for information on how the mechanism used to work in earlier versions see this revision of the documentation.
Enabling[edit]
To enable this feature it is required to:
- Set configuration parameter
$smwgEnabledQueryDependencyLinksStore
Sets whether tracking and storing of dependencies of embedded queries may be used to "true
" - Run maintenance script "update.php" (MediaWiki.org) followed by
- Run maintenance script "updateQueryDependencies.php"Allows to update all entities that hold embedded queries (≥ SMW 3.1.0) or maintenance script "rebuildData.php"Allows to rebuild all the semantic data for a selected data backend/store (< SMW 3.1.0)
Features and limitations[edit]
- Dependencies are resolved for properties, categories, concepts (non cached) and hierarchies
- Namespace queries, e.g.
[[Help:+]]
are not tracked as this would significantly impact update performance for when a single namespace dependency is altered - Queries with arbitrary conditions, e.g.
[[~Issue/*]]
can not be tracked as they are not distinguishable in terms of an object description - Disabling query limits setting the "limit" option to "
0
" (|limit=0
) are not tracked as they return an empty result list and only represent a simple link to special page "Ask"Provides an interface that assists users with creating and executing semantic queries - Queries via special page "Ask"Provides an interface that assists users with creating and executing semantic queries are not tracked since those are not embedded on pages
- An invalidation of the parser cache happens on viewing pages
- Configuration parameter
$smwgQueryDependencyPropertyExemptionList
Sets special properties that should be exempted from embedded queries updates contains property keys that are excluded from detection, by default special property "Modification date"Holds a fixed value that corresponds to the date of the last modification of each page, special property "Has subobject"Holds the subobjects set on a page and special property "Query duration"Holds the value of the duration a query took to execute
Example[edit]
See also[edit]
- Specific information
- Help page on automatic query updates (outdated)
- Help page on query marker
@deferred
- Notes on logging query update output
- Information on configuration parameters
- Help page on configuration parameter
$smwgEnabledQueryDependencyLinksStore
Sets whether tracking and storing of dependencies of embedded queries may be used - Help page on configuration parameter
$smwgEnabledHttpDeferredJobRequest
Sets whether selected jobs can be executed asynchronously to the initial transaction triggering the job - Help page on configuration parameter
$smwgQueryDependencyAffiliatePropertyDetectionList
Sets affiliate special properties that additionally initiate a query dependency update when value change occurs - Help page on configuration parameter
$smwgPostEditUpdate
Sets how many jobs should be executed as part of a post-edit event
- General information
- Help page on query management
- Help page on query results
- Help page on query references
- Help page on profiling queries
- Technical background information
References
- ^ Semantic MediaWiki: GitHub pull request gh:smw:1117
- ^ Semantic MediaWiki: GitHub pull request gh:smw:3644
- ^ README on query dependency