Extension: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.9.1 (mai 2026) |
| Politique de compatibilité | Le master conserve la compatibilité arrière. |
| MediaWiki | 1.42+ |
| Modifie la base de données |
Oui |
| Composer | mediawiki/cargo |
|
|
|
|
|
|
| Licence | Licence publique générale GNU v2.0 ou ultérieur |
| Téléchargement | |
| Exemple | Wikimedia Australia's Cargo Tables |
| 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.42+.
Below are links to the entire documentation.
- How to download Cargo via either Git, a standard download, or a software package; and how to install it.
- A short guide to generate Cargo-based templates and Cargo tables, especially in conjunction with the Page Forms extension.
- Links to other forms of documentation
- A guide for modifying templates and queries that use Semantic MediaWiki to switch to Cargo instead.
- Using #cargo_declare, #cargo_attach and #cargo_store to create and populate Cargo tables.
- Querying Cargo data with #cargo_query, #cargo_compound_query and other tools.
- The various display formats available, including lists, charts, maps and calendars.
- Browsing the Cargo data using the built-in tools Special:Drilldown, Special:CargoQuery and Special:CargoTables.
- Exporting Cargo data into output formats including CSV, JSON and RSS.
- Other features of Cargo, including displaying maps and making use of Lua.
- Common issues that people have run into.
- Known bugs in the software, and potential workarounds for them; plus features that are planned in the current development roadmap.
- Where to ask questions, submit bug reports, submit feature requests, submit fixes, and add new translations.
- The main authors, others who have contributed to the code, and credits to other organizations and software projects.
- The release history of Cargo.
- A small sampling of the wikis that use Cargo.
- A comparison of Cargo to its main alternative, Semantic MediaWiki, in terms of both features and performance.
- Frequently-asked questions.
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.
|
$wgCargoQueryMaxExecutionTime
|
null | The maximum amount of time (in milliseconds) that Cargo queries can run before they are stopped (MySQL/MariaDB only) |
$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
- Manuel:Gestion des données dans MediaWiki – Aperçu et comparaison.
| Cette extension est incluse dans les fermes de wikis ou les hôtes suivants et / ou les paquets : |
- ↑ Voir Utilisation de fonctions SQL pour les valeurs par défaut.
- Stable extensions/fr
- Special page extensions/fr
- API extensions/fr
- Parser function extensions/fr
- Extensions supporting Composer/fr
- AdminLinks extensions/fr
- ApprovedRevsRevisionApproved extensions/fr
- ApprovedRevsRevisionUnapproved extensions/fr
- CategoryAfterPageAdded extensions/fr
- CategoryAfterPageRemoved extensions/fr
- LinksUpdate extensions/fr
- LoadExtensionSchemaUpdates extensions/fr
- MakeGlobalVariablesScript extensions/fr
- PageDeleteComplete extensions/fr
- PageForms::TemplateFieldEnd extensions/fr
- PageForms::TemplateFieldStart extensions/fr
- PageMoveComplete extensions/fr
- PageSaveComplete extensions/fr
- PageSchemasRegisterHandlers extensions/fr
- ParserFirstCallInit extensions/fr
- ResourceLoaderGetConfigVars extensions/fr
- ScribuntoExternalLibraries extensions/fr
- SidebarBeforeOutput extensions/fr
- SkinTemplateNavigation::Universal extensions/fr
- UploadComplete extensions/fr
- GPL licensed extensions/fr
- Extensions in Wikimedia version control/fr
- All extensions/fr
- Extensions included in Canasta/fr
- Extensions included in Fandom/fr
- Extensions included in Miraheze/fr
- Extensions included in MyWikis/fr
- Extensions included in wiki.gg/fr
- Data extraction extensions/fr
- Database extensions/fr
- Table extensions/fr
- Calendar extensions/fr
- Map extensions/fr
- Google Maps extensions/fr
- OpenLayers extensions/fr
- Leaflet extensions/fr
- Graphical Timelines/fr
- Graph extensions/fr
- Math extensions/fr
- Search extensions/fr
- Data management extensions/fr
