Jump to content

Extension:Cargo

From mediawiki.org
This page is a translated version of the page Extension:Cargo and the translation is 100% complete.
Manuel des extensions MediaWiki
Cargo
État de la version : stable
Implémentation Page spéciale , API , Fonction d'analyseur
Description Une extension qui permet l'enregistrement et la recherche de données contenues dans les modèles.
Auteur(s) Yaron Koren <yaron57@gmail.com> (Yaron Korendiscussion)
Dernière version 3.8.5 (octobre 2025)
Politique de compatibilité Le master conserve la compatibilité arrière.
MediaWiki 1.40+
Modifie la base
de données
Oui
Composer mediawiki/cargo
Tables cargo_tables
cargo_pages
cargo_backlinks
Licence Licence publique générale GNU v2.0 ou supérieur
Téléchargement
Exemple Wikimedia Australia's Cargo Tables
  • $wgCargoFileDataColumns
  • $wgCargoDrilldownLargestFontSize
  • $wgCargoDecimalMark
  • $wgCargoDefaultStringBytes
  • $wgCargoAllowedSQLFunctions
  • $wgCargoHideNamespaceName
  • $wgCargoMaxVisibleHierarchyDrilldownValues
  • $wgCargoDrilldownSmallestFontSize
  • $wgCargoDBTableOptions
  • $wgCargoMaxQueryLimit
  • $wgCargoDefaultMapService
  • $wgCargoStoreUseTemplateArgsFallback
  • $wgCargoPageDataColumns
  • $wgCargoIgnoreBacklinks
  • $wgCargoDigitGroupingCharacter
  • $wgCargoDefaultQueryLimit
  • $wgCargoDrilldownNumRangesForNumbers
  • $wgCargo24HourTime
  • $wgCargoLegacyNullLuaFieldsAsEmptyString
  • $wgCargoTablesPrioritizeReplacements
  • $wgCargoRecurringEventMaxInstances
  • $wgCargoDrilldownUseTabs
  • $wgCargoDrilldownMinValuesForComboBox
  • $wgCargoMapClusteringMinimum
  • recreatecargodata
  • deletecargodata
  • runcargoqueries
Traduire l’extension Cargo
Problèmes Tâches ouvertes · Signaler un bogue

Cargo est une extension de MediaWiki qui fournit une manière allégée d'enregistrer et rechercher les données contenues dans les appels aux modèles, comme les boîtes d'information. Dans son principe elle est similaire à l'extension Semantic MediaWiki , mais offre plusieurs avantages sur celle-ci, dont une facilité d'installation et d'utilisation.

Cargo enregistre toutes ses données dans des tables de la base de données, qui peuvent être placées soit dans la propre base de données de MediaWiki (par défaut), soit dans une base de données séparée. Dans la plupart des cas, chaque modèle enregistré récupère ses données rangées dans une table unique de la base de données, avec une colonne pour chaque paramètre significatif du modèle. Il existe quelques exceptions à cela : la manipulation des champs d'un modèle qui contiennent des tableaux ou des listes de valeurs, des coordonnées géographiques; ceci est plus complexe dû à la gestion native assez pauvre de ces types de données dans la plupart des systèmes de bases de données. Et plusieurs modèles peuvent être initialisés pour ranger leurs données dans une table de la base de données.

L'extension définit un certain nombre de fonctions d'analyse syntaxique ; les trois suivantes sont les plus importantes :

  • #cargo_declare - placée à l'intérieur de la partie ‎<noinclude> d'un modèle ; elle définit le schéma d'une table.
  • #cargo_store - range une ligne dans une table Cargo ; habituellement placée à l'intérieur de la partie ‎<includeonly> d'un modèle.
  • #cargo_query - interroge une ou plusieurs tables de données Cargo, en utilisant des composants SQL.

Les autres fonctions d'analyse définies sont :

  • #cargo_attach - définit qu'un modèle ajoute des lignes à une table déclarée autre part.
  • #cargo_compound_query - affiche le résultat de plusieurs requêtes à un même endroit.
  • #cargo_display_map - affiche une carte montrant un seul point.
  • #recurring_event - affiche les dates d'un événement récurrent ; pour être utilisé par #cargo_store.

Cargo définit également diverses interfaces pour la visualisation et l'exploration de ces données stockées. En tant que tel, il ajoute les pages spéciales suivantes :

  • Special:CargoQuery
  • Special:CargoTableDiagram
  • Special:CargoTables
  • Special:Drilldown

Cargo a été testé et fonctionne avec les systèmes de base de données MySQL et PostgreSQL. En théorie il prend également en charge SQLite, mais il n'a pas été bien testé avec ce système et peut ne pas fonctionner.

Cette version de l'extension Cargo nécessite MediaWiki 1.40+.

Cliquez sur les pages de la barre de navigation ci-dessus pour en savoir plus sur Cargo, son fonctionnement, son utilisation et son installation.

Installation

Voir Téléchargement et installation .

Configuration

Vous trouverez ci-dessous les paramètres de configuration globaux de Cargo ainsi que leurs valeurs par défaut.

Pour configurer Cargo pour utiliser une base de données distincte au lieu de la base de données MediaWiki, les paramètres suivants sont fournis:

Paramètres de configuration de base de données distinctes
Paramètre Valeur par défaut Description
$wgCargoDBtype null Type de base de données.
$wgCargoDBserver null Nom d'hôte ou adresse IP du serveur de base de données.
$wgCargoDBname null Nom de la base de données.
$wgCargoDBuser null Nom d'utilisateur de la base de données.
$wgCargoDBpassword null Le mot de passe pour $wgCargoDBuser.
$wgCargoDBprefix null Préfixe du nom de la table de base de données.
$wgCargoDBRowFormat null Format des lignes de la base de données.
$wgCargoDBTableOptions null Comma-separated options, analogous to $wgDBTableOptions.

Pour la configuration des caractères représentant des nombres, les paramètres de configuration suivants sont fournis :

Paramètres de configuration des caractères
Paramètre Valeur par défaut Description
$wgCargoDecimalMark . Séparateur décimal.
$wgCargoDigitGroupingCharacter , Séparateur de milliers.

Les autres paramètres de configuration globale sont les suivants :

Paramètre Valeur par défaut Description
$wgCargoAllowedSQLFunctions [1] Définit les fonctions SQL autorisées.
$wgCargoRecurringEventMaxInstances 100 Le nombre maximal d'instances à stocker pour des événements récurrents sans date de fin définie.
$wgCargoDefaultStringBytes 300 Le nombre de caractères par défaut pour les champs de type Page, String, Wikitext string, File, URL ou Email.
$wgCargoDefaultQueryLimit 100 Le nombre de résultats à afficher avec #cargo_query si aucune limite n'est définie.
$wgCargoMaxQueryLimit 5000 Le nombre maximal autorisé de résultats à afficher avec #cargo_query.
$wgCargo24HourTime false Si true, utilise un système horaire sur 24 heures pour les types de champs Datetime.
$wgCargoDefaultMapService OpenLayers Définit le service de carte par défaut par Google Maps si fixé à googlemaps, par Leaflet si fixé à leaflet et par OpenLayers si fixé à openlayers.
$wgCargoGoogleMapsKey null La clé d'API pour Google Maps, pour le format d'affichage googlemaps.
$wgCargoMapClusteringMinimum 80 Si le nombre de points affichés sur une carte est supérieur à la valeur de $wgCargoMapClusteringMinimum, celle-ci affiche les emplacements en « clusters » au lieu de points individuels, pour une meilleure lisibilité. Si sa valeur est très grande, aucun clustering n'est affiché.
$wgCargoDrilldownUseTabs true Affiche Special:Drilldown noms de tables en tant qu'onglets en haut au lieu d'une liste verticale sur le côté.
$wgCargoDrilldownSmallestFontSize -1 Si sa valeur est un nombre positif, définit la plus petite taille de police en pixels avec des valeurs de filtrage affichées sous forme de nuages de tags.
$wgCargoDrilldownLargestFontSize -1 Si sa valeur est un nombre positif, définit la plus grande taille de police en pixels avec des valeurs de filtrage affichées sous forme de nuages de tags.
$wgCargoDrilldownMinValuesForComboBox 40 Définit le nombre minimal de valeurs, avant que leur affichage ne soit converti en boîte combinée au lieu de liens individuels.
$wgCargoDrilldownNumRangesForNumbers 5 Pour les champs/filtres de type Integer ou Float, spécifie le nombre de « paquets » dans lequels les valeurs sont divisés.
$wgCargoMaxVisibleHierarchyDrilldownValues 30 Si sa valeur est un entier naturel, spécifie le nombre maximal de valeurs affichées à la fois pour n'importe quel champ hierarchy (toutes les valeurs du plus haut niveau sont affichées indépendamment de ce nombre). Au-delà d'une certaine profondeur dans la hiérarchie, les valeurs sont masquées de sorte que le nombre total de valeurs visibles ne dépasse pas ce nombre.
$wgCargoTablesPrioritizeReplacements false Si true, toutes les tables avec un remplacement apparaissent en haut de la page Special:CargoTables, au lieu d'être affichées par ordre alphabétique.
$wgCargoPageDataColumns [] L'ensemble des champs à stocker dans la table Cargo _pageData. Voir Stockage des données d'une page .
$wgCargoFileDataColumns [] L'ensemble des champs à stocker dans la table Cargo _fileData. Voir Stockage des données d'un fichier .
$wgCargoHideNamespaceName [6] Tableau des espaces de noms à masquer des résultats de requêtes.
$wgCargoLegacyNullLuaFieldsAsEmptyString false Null results to the Lua Cargo query function should return as string rather than nil. This allows you to rollback a breaking change from early 2022. New wikis created after this time should not enable this.
$wgCargoStoreUseTemplateArgsFallback true Enable the behavior that looks for template arguments that match the template's declared table to fill columns.


Voir aussi

  1. Voir Utilisation de fonctions SQL pour les valeurs par défaut.