Semantic MediaWiki and related extensions
|
The query dependencies tracking provides a method to link subjects to embedded queries and to validate the "freshness" of a query relative to its registered dependencies. In cases where the freshness characteristic can no longer be attributed it will signal to the RejectParserCacheValue
hook to evict the parser cache
, allowing a page view request to re-parse its content hereby updating query results while otherwise keeping the parser cache
intact and untouched when queries are assumed to be fresh.
$smwgEnabledQueryDependencyLinksStore
to be enabled to track entities used in queries via the SQLStore::QUERY_LINKS_TABLE
table$smwgQueryProfiler
to be enabled to track embedded queries$smwgQueryDependencyPropertyExemptionList
contains property keys that are excluded from detection because their update frequency may cause a disruption or have been categorized as unnecessary for a tracking<nowiki>[[Help:+]]</nowiki>
are not tracked (this would significantly impact update performance for when a single namespace dependency is altered)<nowiki>[[~Issue/*]]</nowiki>
cannot be tracked as they are not distinguishable in terms of an object description (cannot be assigned an ID which is required for a successful tracking)limit
"<code>0</code>" (|limit=0
) are not tracked (queries return an empty result list and only represent a simple link)Special:Ask
are not tracked (those are not embedded)DependencyLinksTableUpdater
responsible for updating the SQLStore::QUERY_LINKS_TABLE
tableDependencyLinksValidator
detect a possible discrepancy (validate the "freshness") and is triggered via the RejectParserCacheValue
hookQueryDependencyLinksStore
prune, find, and update dependenciesQueryReferenceBacklinks
to display query back links via Special:Browse
QueryResultDependencyListResolver
resolve entities used in a QueryResult