{ "load_composer_autoloader": true, "name": "WikibaseQualityConstraints", "author": "BP2014N1", "url": "https://www.mediawiki.org/wiki/Extension:WikibaseQualityConstraints", "descriptionmsg": "wbqc-desc", "version": "1.0.0", "license-name": "GPL-2.0-or-later", "type": "wikibase", "requires": { "MediaWiki": ">= 1.31.0" }, "MessagesDirs": { "WikibaseQualityConstraints": [ "i18n" ] }, "ExtensionMessagesFiles": { "WikibaseQualityConstraintsAlias": "WikibaseQualityConstraints.alias.php" }, "Hooks": { "LoadExtensionSchemaUpdates": "WikibaseQuality\\ConstraintReport\\WikibaseQualityConstraintsHooks::onCreateSchema", "WikibaseChangeNotification": "WikibaseQuality\\ConstraintReport\\WikibaseQualityConstraintsHooks::onWikibaseChange", "ArticlePurge": "WikibaseQuality\\ConstraintReport\\WikibaseQualityConstraintsHooks::onArticlePurge", "BeforePageDisplay": "WikibaseQuality\\ConstraintReport\\WikibaseQualityConstraintsHooks::onBeforePageDisplay" }, "SpecialPages": { "ConstraintReport": "WikibaseQuality\\ConstraintReport\\Specials\\SpecialConstraintReport::newFromGlobalState" }, "APIModules": { "wbcheckconstraints": { "class": "WikibaseQuality\\ConstraintReport\\Api\\CheckConstraints", "factory": "WikibaseQuality\\ConstraintReport\\Api\\CheckConstraints::newFromGlobalState" }, "wbcheckconstraintparameters": { "class": "WikibaseQuality\\ConstraintReport\\Api\\CheckConstraintParameters", "factory": "WikibaseQuality\\ConstraintReport\\Api\\CheckConstraintParameters::newFromGlobalState" } }, "ResourceFileModulePaths": { "localBasePath": "", "remoteExtPath": "WikibaseQualityConstraints" }, "ResourceModules": { "SpecialConstraintReportPage": { "styles": "modules/SpecialConstraintReportPage.less", "scripts": "modules/SpecialConstraintReportPage.js", "dependencies": [ "oojs-ui-core.styles" ] }, "wikibase.quality.constraints.icon": { "class": "ResourceLoaderImageModule", "selector": ".oo-ui-icon-{name}", "images": { "mandatory-constraint-violation": "modules/icon/mandatory-constraint-violation.svg", "non-mandatory-constraint-violation": "modules/icon/non-mandatory-constraint-violation.svg" } }, "wikibase.quality.constraints.ui": { "dependencies": [ "oojs-ui-core", "oojs-ui-widgets", "jquery.makeCollapsible", "wikibase" ], "messages": [ "wbqc-issues-short", "wbqc-issues-long", "wbqc-potentialissues-short", "wbqc-potentialissues-long", "wbqc-badparameters-short", "wbqc-badparameters-long", "wbqc-parameterissues-short", "wbqc-parameterissues-long", "wbqc-constrainttypehelp-short", "wbqc-constrainttypehelp-long", "wbqc-constraintdiscuss-short", "wbqc-constraintdiscuss-long", "wbqc-cached-generic", "wbqc-cached-minutes", "wbqc-cached-hours", "wbqc-cached-days" ], "scripts": [ "modules/ui/module.js", "modules/ui/ConstraintReportPanel.js", "modules/ui/ConstraintReportGroup.js", "modules/ui/ConstraintReportList.js" ], "styles": [ "modules/ui/ConstraintReportPanel.less", "modules/ui/ConstraintReportGroup.less" ] }, "wikibase.quality.constraints.gadget": { "scripts": "modules/gadget.js", "styles": "modules/gadget.less", "dependencies": [ "mediawiki.api", "oojs-ui-core", "oojs-ui-widgets", "oojs-ui.styles.icons-alerts", "wikibase.quality.constraints.icon", "wikibase.quality.constraints.ui" ], "skipFunction": "modules/gadget-skip.js" } }, "JobClasses": { "constraintsTableUpdate": "WikibaseQuality\\ConstraintReport\\UpdateConstraintsTableJob::newFromGlobalState" }, "config": { "WBQualityConstraintsTypeCheckMaxEntities": { "value": 1000, "description": "The maximum number of entities that are accessed when checking type or subtype relations.", "public": true }, "WBQualityConstraintsCheckDurationInfoSeconds": { "value": 1.0, "description": "The maximum time that a constraint check should usually take, in seconds. Any constraint check that takes longer than this time is logged at ‘info’ level. Specifying `null` disables this logging.", "public": true }, "WBQualityConstraintsCheckDurationWarningSeconds": { "value": 10.0, "description": "The maximum time that a constraint check should ever take, in seconds. Any constraint check that takes longer than this time is logged at ‘warning’ level. Specifying `null` disables this logging.", "public": true }, "WBQualityConstraintsEnableConstraintsImportFromStatements": { "value": true, "description": "Whether to import property constraint statements into the constraint database or not.", "public": true }, "WBQualityConstraintsCheckQualifiers": { "value": true, "description": "Whether to check constraints on qualifiers.", "public": true }, "WBQualityConstraintsCheckReferences": { "value": true, "description": "Whether to check constraints on references.", "public": true }, "WBQualityConstraintsSparqlEndpoint": { "value": "", "description": "The URL of the SPARQL endpoint. Should accept the URL parameters 'query', 'format' and 'maxQueryTimeMillis'. Set to '' (empty string, default) to disable SPARQL functionality.", "public": true }, "WBQualityConstraintsSparqlMaxMillis": { "value": 10000, "description": "The maximum runtime for queries on the configured SPARQL endpoint, in milliseconds.", "public": true }, "WBQualityConstraintsSparqlTimeoutExceptionClasses": { "value": [ "com.bigdata.bop.engine.QueryTimeoutException", "java.util.concurrent.TimeoutException" ], "description": "Strings that, when they occur inside an error response of the SPARQL endpoint, indicate that the error is a query timeout. On the Wikidata Query Service, these are fully qualified names of exception classes.", "public": true }, "WBQualityConstraintsCheckFormatConstraint": { "value": true, "description": "Whether or not to check the 'format' constraint. If this flag is set to false, any check of the 'format' constraint will return a 'todo' status with the 'wbqc-violation-message-security-reason' message.", "public": true }, "WBQualityConstraintsFormatCacheMapSize": { "value": 100, "description": "Size of the per-regex cache map for format/regex check results. For each regex, up to this many values will have cached whether they match the regex or not, on a least-recently-used basis.", "public": true }, "WBQualityConstraintsCacheCheckConstraintsResults": { "value": false, "description": "Whether to cache results of the wbcheckconstraints API action or not. Results are only cached for constraint checks on full entities, and only when the set of constraints to be checked is not specified (i. e. the constraintid parameter is unset).", "public": true }, "WBQualityConstraintsCacheCheckConstraintsTTLSeconds": { "value": 86400, "description": "The time-to-live, in seconds, of cached results of the wbcheckconstraints API action. Ignored if WBQualityConstraintsCacheCheckConstraintsResults is not true.", "public": true }, "WBQualityConstraintsCacheCheckConstraintsMaximumRevisionIds": { "value": 10000, "description": "The maximum number of revision IDs to load when checking whether a cached wbcheckconstraints result is still fresh. Results that depend on more entity IDs than this limit are not cached.", "public": true }, "WBQualityConstraintsInstanceOfId": { "value": "P31", "description": "The property ID of the 'instance of' property (data type: item), which specifies the class(es) of an item.", "public": true }, "WBQualityConstraintsSubclassOfId": { "value": "P279", "description": "The property ID of the 'subclass of' property (data type: item), which specifies the superclass(es) of an item.", "public": true }, "WBQualityConstraintsPropertyConstraintId": { "value": "P2302", "description": "The property ID of the 'property constraint' property (data type: item), which specifies the various constraints of a property.", "public": true }, "WBQualityConstraintsExceptionToConstraintId": { "value": "P2303", "description": "The property ID of the 'exception to constraint' property (data type: item), which specifies the exceptions of a constraint.", "public": true }, "WBQualityConstraintsConstraintStatusId": { "value": "P2316", "description": "The property ID of the 'constraint status' property (data type: item), which specifies the constraint status of a constraint statement. Currently, only one constraint status is known (see WBQualityConstraintsMandatoryConstraintId), and the default status is signified by the absence of a 'constraint status' qualifier.", "public": true }, "WBQualityConstraintsMandatoryConstraintId": { "value": "Q21502408", "description": "The item ID of the 'mandatory constraint' item, which, when used in a 'constraint status' qualifier of a 'property constraint' statement on a property, indicates that the constraint is mandatory and should have no violations except for the known exceptions.", "public": true }, "WBQualityConstraintsDistinctValuesConstraintId": { "value": "Q21502410", "description": "The item ID of the 'distinct values constraint' item, which, when used in a 'property constraint' statement on a property, indicates that all values for this property should differ from each other, or, equivalently, that each value for this property should be unique to one item.", "public": true }, "WBQualityConstraintsMultiValueConstraintId": { "value": "Q21510857", "description": "The item ID of the 'multi-value constraint' item, which, when used in a 'property constraint' statement on a property, indicates that a property should have more than one value per entity.", "public": true }, "WBQualityConstraintsUsedAsQualifierConstraintId": { "value": "Q21510863", "description": "The item ID of the 'used as qualifier constraint' item, which, when used in a 'property constraint' statement on a property, indicates that a property should only be used as a qualifier.", "public": true }, "WBQualityConstraintsSingleValueConstraintId": { "value": "Q19474404", "description": "The item ID of the 'single value constraint' item, which, when used in a 'property constraint' statement on a property, indicates that a property should have no more than one value per entity.", "public": true }, "WBQualityConstraintsSymmetricConstraintId": { "value": "Q21510862", "description": "The item ID of the 'symmetric constraint' item, which, when used in a 'property constraint' statement on a property, indicates that a referenced entity should refer back to the original entity.", "public": true }, "WBQualityConstraintsTypeConstraintId": { "value": "Q21503250", "description": "The item ID of the 'type constraint' item, which, when used in a 'property constraint' statement on a property, indicates that the subject entity should have a certain type, with the relation and type given in the parameters.", "public": true }, "WBQualityConstraintsValueTypeConstraintId": { "value": "Q21510865", "description": "The item ID of the 'value type constraint' item, which, when used in a 'property constraint' statement on a property, indicates that the referenced entity should have a certain type, with the class and relation given in the parameters.", "public": true }, "WBQualityConstraintsInverseConstraintId": { "value": "Q21510855", "description": "The item ID of the 'inverse constraint' item, which, when used in a 'property constraint' statement on a property, indicates that a referenced entity should refer back to the original entity with the property given in the parameters.", "public": true }, "WBQualityConstraintsItemRequiresClaimConstraintId": { "value": "Q21503247", "description": "The item ID of the 'item requires claim constraint' item, which, when used in a 'property constraint' statement on a property, indicates that an entity with a given statement should also have certain other statements.", "public": true }, "WBQualityConstraintsValueRequiresClaimConstraintId": { "value": "Q21510864", "description": "The item ID of the 'value requires claim constraint' item, which, when used in a 'property constraint' statement on a property, indicates that the target/value entity of a given statement should have certain statements.", "public": true }, "WBQualityConstraintsConflictsWithConstraintId": { "value": "Q21502838", "description": "The item ID of the 'conflicts-with constraint' item, which, when used in a 'property constraint' statement on a property, indicates that an entity with a given statement should not have certain other statements.", "public": true }, "WBQualityConstraintsOneOfConstraintId": { "value": "Q21510859", "description": "The item ID of the 'one-of constraint' item, which, when used in a 'property constraint' statement on a property, indicates that the value of a given statement should be one of a given set of values.", "public": true }, "WBQualityConstraintsMandatoryQualifierConstraintId": { "value": "Q21510856", "description": "The item ID of the 'mandatory qualifier' item, which, when used in a 'property constraint' statement on a property, indicates a given statement should have the given qualifier.", "public": true }, "WBQualityConstraintsAllowedQualifiersConstraintId": { "value": "Q21510851", "description": "The item ID of the 'allowed qualifiers constraint' item, which, when used in a 'property constraint' statement on a property, indicates a given statement should only have the given qualifiers.", "public": true }, "WBQualityConstraintsRangeConstraintId": { "value": "Q21510860", "description": "The item ID of the 'range constraint' item, which, when used in a 'property constraint' statement on a property, indicates that the value of a given statement should be within a given range.", "public": true }, "WBQualityConstraintsDifferenceWithinRangeConstraintId": { "value": "Q21510854", "description": "The item ID of the 'difference within range constraint' item, which, when used in a 'property constraint' statement on a property, indicates that the difference value of a given statement and of another given statement should be within a given range.", "public": true }, "WBQualityConstraintsCommonsLinkConstraintId": { "value": "Q21510852", "description": "The item ID of the 'commons link constraint' item, which, when used in a 'property constraint' statement on a property, indicates that the value of a given statement should be a valid link to Wikimedia Commons.", "public": true }, "WBQualityConstraintsFormatConstraintId": { "value": "Q21502404", "description": "The item ID of the 'format constraint' item, which, when used in a 'property constraint' statement on a property, indicates that the value of a given statement should conform to a given pattern.", "public": true }, "WBQualityConstraintsUsedForValuesOnlyConstraintId": { "value": "Q21528958", "description": "The item ID of the 'used for values only constraint' item, which, when used in a 'property constraint' statement on a property, indicates that the property should only be used for the main value of a statement, not for qualifiers or references.", "public": true }, "WBQualityConstraintsUsedAsReferenceConstraintId": { "value": "Q21528959", "description": "The item ID of the 'used as reference constraint' item, which, when used in a 'property constraint' statement on a property, indicates that the property should only be used for references, not for the main value of a statement or for qualifiers.", "public": true }, "WBQualityConstraintsNoBoundsConstraintId": { "value": "Q51723761", "description": "The item ID of the 'no bounds constraint' item, which, when used in a 'property constraint' statement on a property, indicates that the property should only be used with no bounded quantity as its value.", "public": true }, "WBQualityConstraintsAllowedUnitsConstraintId": { "value": "Q21514353", "description": "The item ID for the 'allowed units constraint' item, which, when used in a 'property constraint' statement on a property, indicates that the value of a given statement should only have certain units.", "public": true }, "WBQualityConstraintsSingleBestValueConstraintId": { "value": "Q52060874", "description": "The item ID for the 'single best value constraint' item, which, when used in a 'property constraint' statement on a property, indicates that the property should have a single, distinguished best value per item.", "public": true }, "WBQualityConstraintsAllowedEntityTypesConstraintId": { "value": "Q52004125", "description": "The item ID for the 'allowed entity types constraint' item, which, when used in a 'property constraint' statement on a property, indicates that the property can be used only in certain entity types (e.g. only items).", "public": true }, "WBQualityConstraintsClassId": { "value": "P2308", "description": "The property ID of the 'class' property (data type: item), which specifies the class/type of a 'type' or 'value type' constraint.", "public": true }, "WBQualityConstraintsRelationId": { "value": "P2309", "description": "The property ID of the 'relation' property (data type: item), which specifies the relation ('instance of' or 'subclass of') of a 'type' or 'value type' constraint.", "public": true }, "WBQualityConstraintsInstanceOfRelationId": { "value": "Q21503252", "description": "The item ID of the 'instance of' item, which, when used in a 'relation' qualifier of a 'property constraint' statement on a property, indicates that the 'type' or 'value type' constraint defined in this statement demands an 'instance' relation.", "public": true }, "WBQualityConstraintsSubclassOfRelationId": { "value": "Q21514624", "description": "The item ID of the 'subclass of' item, which, when used in a 'relation' qualifier of a 'property constraint' statement on a property, indicates that the 'type' or 'value type' constraint defined in this statement demands a 'subclass' relation.", "public": true }, "WBQualityConstraintsInstanceOrSubclassOfRelationId": { "value": "Q30208840", "description": "The item ID of the 'instance or subclass of' item, which, when used in a 'relation' qualifier of a 'property constraint' statement on a property, indicates that the 'type' or 'value type' constraint defined in this statement demands a 'instance or subclass' relation.", "public": true }, "WBQualityConstraintsPropertyId": { "value": "P2306", "description": "The property ID of the 'property' property (data type: property), which specifies the property parameter of an 'inverse', 'item requires claim', 'value requires claim', 'difference within range', 'mandatory qualifiers', or 'qualifiers' constraint.", "public": true }, "WBQualityConstraintsQualifierOfPropertyConstraintId": { "value": "P2305", "description": "The property ID of the 'qualifier of property constraint' property (data type: item), which specifies the item parameter of an 'item requires claim', 'value requires claim', or 'one of' constraint.", "public": true }, "WBQualityConstraintsMinimumQuantityId": { "value": "P2313", "description": "The property ID of the 'minimum quantity' property (data type: quantity), which specifies the minimum quantity parameter of a 'range' or 'diff within range' constraint.", "public": true }, "WBQualityConstraintsMaximumQuantityId": { "value": "P2312", "description": "The property ID of the 'maximum quantity' property (data type: quantity), which specifies the maximum quantity parameter of a 'range' or 'diff within range' constraint.", "public": true }, "WBQualityConstraintsMinimumDateId": { "value": "P2310", "description": "The property ID of the 'minimum date' property (data type: point in time), which specifies the minimum date parameter of a 'range' or 'diff within range' constraint.", "public": true }, "WBQualityConstraintsMaximumDateId": { "value": "P2311", "description": "The property ID of the 'maximum date' property (data type: point in time), which specifies the maximum date parameter of a 'range' or 'diff within range' constraint.", "public": true }, "WBQualityConstraintsNamespaceId": { "value": "P2307", "description": "The property ID of the 'namespace' property (data type: string), which specifies the namespace parameter of a 'commons link' constraint.", "public": true }, "WBQualityConstraintsFormatAsARegularExpressionId": { "value": "P1793", "description": "The property ID of the 'format as a regular expression' property (data type: string), which specifies the format parameter of a 'format' constraint.", "public": true }, "WBQualityConstraintsSyntaxClarificationId": { "value": "P2916", "description": "The property ID of the 'syntax clarification' property (data type: monolingual text), which specifies human-readable explanations of a 'format' constraint.", "public": true }, "WBQualityConstraintsConstraintScopeId": { "value": "P4680", "description": "The property ID of the 'constraint scope' property (data type: item), which specifies the context(s) in which a constraint is checked.", "public": true }, "WBQualityConstraintsSeparatorId": { "value": "P4155", "description": "The property ID of the 'separator' property (data type: property), which specifies the allowed separator(s) for “single value” and “single best value” constraints.", "public": true }, "WBQualityConstraintsConstraintCheckedOnMainValueId": { "value": "Q46466787", "description": "The item ID of the 'constraint checked on main value' item, which, when used in a 'constraint scope' qualifier of a 'property constraint' statement on a property, indicates that the constraint should be checked on the main snak of a statement.", "public": true }, "WBQualityConstraintsConstraintCheckedOnQualifiersId": { "value": "Q46466783", "description": "The item ID of the 'constraint checked on qualifiers' item, which, when used in a 'constraint scope' qualifier of a 'property constraint' statement on a property, indicates that the constraint should be checked on the qualifier snaks of a statement.", "public": true }, "WBQualityConstraintsConstraintCheckedOnReferencesId": { "value": "Q46466805", "description": "The item ID of the 'constraint checked on references' item, which, when used in a 'constraint scope' qualifier of a 'property constraint' statement on a property, indicates that the constraint should be checked on the reference snaks of a statement.", "public": true }, "WBQualityConstraintsNoneOfConstraintId": { "value": "Q52558054", "description": "The item ID of the 'none-of constraint' item, which, when used in a 'property constraint' statement on a property, indicates that the value of a given statement should not be one of a given set of values.", "public": true }, "WBQualityConstraintsIntegerConstraintId": { "value": "Q52848401", "description": "The item ID of the 'integer constraint' item, which, when used in a 'property constraint' statement on a property, indicates that the value of a given statement should have only integer values.", "public": true }, "WBQualityConstraintsWikibaseItemId": { "value": "Q29934200", "description": "The item ID of the 'wikibase item' item, which represents the 'item' entity type for 'allowed entity types' constraints.", "public": true }, "WBQualityConstraintsWikibasePropertyId": { "value": "Q29934218", "description": "The item ID of the 'wikibase property' item, which represents the 'property' entity type for 'allowed entity types' constraints.", "public": true }, "WBQualityConstraintsWikibaseLexemeId": { "value": "Q51885771", "description": "The item ID of the 'wikibase lexeme' item, which represents the 'lexeme' entity type for 'allowed entity types' constraints.", "public": true }, "WBQualityConstraintsPropertiesWithViolatingQualifiers": { "value": [], "description": "Property IDs of statements whose qualifiers are expected to violate constraints, and where constraints checks are therefore skipped, as if the subject entity was an exception to the constraints defined on the qualifier properties.", "public": true }, "WBQualityConstraintsYearUnit": { "value": "http://www.wikidata.org/entity/Q577", "description": "The unit used for a quantity that represents a difference between two dates, in years. Note that for entity units, the full concept URI must be used, not just the entity ID.", "public": true }, "WBQualityConstraintsSecondUnit": { "value": "http://www.wikidata.org/entity/Q11574", "description": "The unit used for a quantity that represents a difference between two dates, in seconds. Note that for entity units, the full concept URI must be used, not just the entity ID.", "public": true } }, "AutoloadNamespaces": { "WikibaseQuality\\ConstraintReport\\": "src/", "WikibaseQuality\\ConstraintReport\\Maintenance\\": "maintenance/", "WikibaseQuality\\ConstraintReport\\Tests\\": "tests/phpunit/" }, "manifest_version": 2 }