Release status: stabiel |
|
|---|---|
| 👁 Image |
|
| Implementatie | Speciale pagina, API, Parser functie |
| Beschrijving | Een extensie die het mogelijk maakt om gegevens in sjablonen op te slaan en op te vragen. |
| Auteur(s) | Yaron Koren <yaron57@gmail.com> (Yaron Korenoverleg) |
| Laatste versie | 3.9.2 (juni 2026) |
| Compatibiliteit beleid | Master onderhoudt achterwaartse compatibiliteit. |
| MediaWiki | 1.42+ |
| Database wijzigingen | Ja |
| Composer | mediawiki/cargo |
|
|
|
|
|
|
| Licentie | GNU General Public Licentie 2.0 of hoger |
| Download | |
| Voorbeeld | Wikimedia Australia's Cargo Tables |
| Vertaal de extensie Cargo | |
| Problemen | Open taken · Rapporteer een bug |
Cargo is een extensie op MediaWiki die een lichtgewicht manier biedt om de gegevens in de aanroepen naar sjablonen, zoals infoboxen, op te slaan en op te vragen. Het is qua concept vergelijkbaar met de extensie Semantic MediaWiki, maar biedt een aantal voordelen, waaronder installatiegemak en gebruiksgemak.
Cargo slaat al zijn gegevens op in databasetabellen, die in de eigen database van MediaWiki (de standaard) of een aparte database kunnen worden geplaatst. Voor het grootste deel krijgt elke opgeslagen sjabloon zijn gegevens opgeslagen in een enkele DB-tabel, met een kolom voor elke relevante sjabloonparameter. Hierop zijn enkele uitzonderingen: de verwerking van sjabloonvelden met arrays/lijsten met waarden en van velden met geografische coördinaten is complexer vanwege de slechte interne verwerking van die gegevenstypen in de meeste database-systemen. En meerdere sjablonen kunnen worden ingesteld om hun gegevens allemaal in één database-tabel op te slaan.
De extensie definieert een aantal parserfuncties; Deze drie zijn de belangrijkste:
#cargo_declare– geplaatst binnen het deel<noinclude>van een sjabloon; Het definieert het schema voor een tabel.#cargo_store– slaat één rij op in een Cargo-tabel; meestal geplaatst binnen het deel<includeonly>van een sjabloon.#cargo_query– voert query's uit op een of meer Cargo-gegevenstabellen met behulp van SQL-onderdelen.
De andere gedefinieerde parserfuncties zijn:
#cargo_attach– definieert een sjabloon als het toevoegen van rijen aan een tabel die elders is gedeclareerd.#cargo_compound_query– hiermee worden de resultaten van meerdere query's op één plaats weergegeven.#cargo_display_map– hiermee wordt een kaart weergegeven met één punt.#recurring_event– drukt de datums voor een terugkerende gebeurtenis af; voor gebruik met #cargo_store.
Cargo definieert ook verschillende interfaces voor het bekijken en inzoomen van de opgeslagen gegevens. Deze extensie voegt de volgende speciale pagina's toe:
- Special:CargoQuery
- Special:CargoTableDiagram
- Special:CargoTables
- Special:Drilldown
Cargo is getest en werkt met de MySQL- en PostgreSQL-databasesystemen. In theorie ondersteunt het ook SQLite, maar het is niet goed getest met SQLite en werkt mogelijk niet.
Deze versie van de extensie vereist MediaWiki 1.42+.
Hieronder staan links naar de volledige documentatie.
- Downloaden en installeren
Hoe u Cargo downloadt via Git, een standaarddownload of een softwarepakket; en hoe u het installeert. - Snelstartgids
Een gids voor het genereren van Cargo-gebaseerde sjablonen en Cargo-tabelen, vooral in combinatie met de extensie Page Forms. - Andere documentatie
Links naar andere documentatie - SMW gids voor migratie
Een gids voor het wijzigen van sjablonen en queries die Semantic MediaWiki gebruiken om in plaats daarvan over te schakelen naar Cargo - Data opslaan
Gebruik #cargo_declare, ̩#cargo_attach en #cargo_store om Cargo tabellen te maken en te vullen. - Gegevens opvragen
Cargo-gegevens opvragen met #cargo_query, #cargo_compound_query en andere hulpmiddelen. - Weergave
De verschillende formaten voor weergave, waaronder lijsten, grafieken, kaarten en kalenders. - Gegevens bekijken
Cargo-gegevens bekijken met behulp van interne hulpmiddelen: Special:Drilldown, Special:CargoQuery, Special:CargoTables - Gegevens exporteren
Cargo-gegevens exporteren in uitvoerformaten, waaronder: CSV, JSON, RSS - Andere functies
Andere functies van Cargo, waaronder het weergeven van kaarten en het gebruik van Lua. - Problemen
Normale problemen die kunnen optreden. - Bekende fouten en geplande functies
Bekende bugs in de software en mogelijke oplossingen hiervoor; plus functies die zijn gepland in de huidige ontwikkeling roadmap. - Ondersteuning
Waar kunnen vragen worden gesteld, foutrapporten/functieaanvragen worden ingediend en nieuwe vertalingen worden toegevoegd. - Auteurs en credits
De belangrijkste auteurs, anderen die bijgedragen hebben aan de code en credits aan andere organisaties en softwareprojecten. - Versie geschiedenis
De releasegeschiedenis van Cargo. - Websites die Cargo gebruiken
Een kleine selectie van wiki's die Cargo gebruiken. - Cargo en Semantische MediaWiki
Een vergelijking van Cargo met het belangrijkste alternatief, Semantische MediaWiki, zowel op het gebied van functies als prestaties. - Veelgestelde vragen
Veelgestelde vragen
Configuratie
Hieronder vindt u de algemene configuratie-instellingen van Cargo, samen met de standaardwaarden.
Om Cargo te configureren om een aparte database te gebruiken in plaats van de MediaWiki-database, zijn er de volgende instellingen:
| Afzonderlijke database configuratie-instellingen | ||
|---|---|---|
| Instelling | Standaard | Beschrijving |
$wgCargoDBtype
|
null
|
Databasetype |
$wgCargoDBserver
|
null
|
Hostnaam of IP-adres van de database-server. |
$wgCargoDBname
|
null
|
Naam van de database. |
$wgCargoDBuser
|
null
|
Database gebruikersnaam. |
$wgCargoDBpassword
|
null
|
Het wachtwoord voor $wgCargoDBuser.
|
$wgCargoDBprefix
|
null
|
Database tabelnaam prefix. |
$wgCargoDBRowFormat
|
null
|
Database rij-formaat. |
$wgCargoDBTableOptions
|
null
|
Komma-gescheiden opties, zoals $wgDBTableOptions. |
Voor karakterconfiguratie in verband met getallen zijn er de volgende instellingen:
| Karakter configuratie-instellingen | ||
|---|---|---|
| Instelling | Standaard | Beschrijving |
$wgCargoDecimalMark
|
.
|
Decimaalteken voor getallen. |
$wgCargoDigitGroupingCharacter
|
,
|
Duizend-scheidingsteken. |
De overige globale instellingen zijn als volgt:
| Instelling | Standaard | Beschrijving |
|---|---|---|
$wgCargoAllowedSQLFunctions
|
[1] | Zet de toegestane SQL-functies. |
$wgCargoRecurringEventMaxInstances
|
100 | Het maximale aantal instanties dat moet worden opgeslagen voor terugkerende gebeurtenissen zonder vaste einddatum. |
$wgCargoDefaultStringBytes
|
300 | Het standaardnummer van tekens voor velden van type Page, String, Wikitext string, File, URL, Email
|
$wgCargoDefaultQueryLimit
|
100 | Aantal resultaten die voor #cargo_query moeten worden weergegeven als er geen limiet is ingesteld
|
$wgCargoMaxQueryLimit
|
5000 | Het maximaal toegestane aantal resultaten voor #cargo_query
|
$wgCargoQueryMaxExecutionTime
|
null | De maximale tijd (in milliseconden) die Cargo-queries kunnen worden uitgevoerd voordat ze worden gestopt (alleen MySQL/MariaDB) |
$wgCargo24HourTime
|
false
|
Als true de 24 uur tijdnotatie gebruikt voor veldtypen van Datetime .
|
$wgCargoDefaultMapService
|
OpenLayers | Stel de standaard voor kaartservices in op Google Maps, indien ingesteld op googlemaps, op Leaflet als ingesteld als leaflet en op OpenLayers indien ingesteld als openlayers.
|
$wgCargoGoogleMapsKey
|
null
|
API-key voor Google Maps, voor het googlemaps weergaveformaat.
|
$wgCargoMapClusteringMinimum
|
80 | Als het aantal weer te geven punten op de kaart groter is dan de waarde van $wgCargoMapClusteringMinimum, wordt de kaart met "clusters van locaties" weergegeven in plaats van in individuele punten, dit voor de leesbaarheid. Als het op een zeer hoog aantal wordt ingesteld, wordt geen clustering weergegeven. |
$wgCargoDrilldownUseTabs
|
true
|
Toont de tabelnamen Special:Drilldown als tabbladen boven in plaats van een verticale lijst aan de zijkant. |
$wgCargoDrilldownSmallestFontSize
|
-1 | Als het op een positief getal wordt ingesteld, wordt de kleinste lettergrootte, in pixels, ingesteld voor een tag-cloud weergave van filterwaarden. |
$wgCargoDrilldownLargestFontSize
|
-1 | Als het op een positief getal wordt ingesteld, wordt de grootste lettergrootte, in pixels, ingesteld voor een tag-cloud weergave van filterwaarden. |
$wgCargoDrilldownMinValuesForComboBox
|
40 | Stelt het minimum aantal waarden voor de omzetting van het display in een combinatievak in plaats van in afzonderlijke links. |
$wgCargoDrilldownNumRangesForNumbers
|
5 | Voor velden/filters van type Integer of Float, wordt het aantal "buckets" aangegeven waarin de waarden worden verdeeld.
|
$wgCargoMaxVisibleHierarchyDrilldownValues
|
30 | Als deze optie wordt ingesteld op een positief geheel getal, dan geeft het het maximum aantal waarden op dat tegelijk wordt weergegeven voor een veld hierarchy (alle waarden op het hoogste niveau worden weergegeven, ongeacht deze waarde). De waarden buiten een bepaalde diepte van de hiërarchie zijn verborgen, zodat het aantal totale zichtbare waarden maximaal dit getal is.
|
$wgCargoTablesPrioritizeReplacements
|
false
|
Als true, alle tabellen met een vervanging worden bovenaan de pagina van Special:CargoTables weergegeven, in plaats van dat ze in alfabetische volgorde worden weergegeven.
|
$wgCargoPageDataColumns
|
[] | De set velden die in de tabel _pageData van Cargo moet worden opgeslagen. Zie opslaan paginagegevens.
|
$wgCargoFileDataColumns
|
[] | De set velden die in de tabel _fileData van Cargo moet worden opgeslagen. Zie opslaan bestandsgegevens.
|
$wgCargoHideNamespaceName
|
[6] | Matrix met namespaces die in de queryresultaten moeten worden verborgen. |
$wgCargoLegacyNullLuaFieldsAsEmptyString
|
false
|
Als er geen resultaten zijn voor de vraagfunctie Lua Cargo, moet er een string worden teruggegeven in plaats van nul. Dit stelt u in staat om een "breaking change" uit begin 2022 terug te draaien. Wiki's die na deze tijd zijn gecreëerd, moeten dit niet inschakelen. |
$wgCargoStoreUseTemplateArgsFallback
|
true
|
Schakel het gedrag in dat zoekt naar sjabloonargumenten die overeenkomen met de gedeclareerde tabel van het sjabloon om kolommen te vullen. |
Zie ook
- Handleiding:Gegevens beheren in MediaWiki – Een overzicht en vergelijking van extensies voor gegevensbeheer
| 👁 Image | Deze extensie is beschikbaar op de volgende wiki-families en/of onderdeel van de volgende pakketten: |
- ↑ Zie SQL-Functies gebruiken voor standaarden.
- Stable extensions/nl
- Special page extensions/nl
- API extensions/nl
- Parser function extensions/nl
- Extensions supporting Composer/nl
- AdminLinks extensions/nl
- ApprovedRevsRevisionApproved extensions/nl
- ApprovedRevsRevisionUnapproved extensions/nl
- CategoryAfterPageAdded extensions/nl
- CategoryAfterPageRemoved extensions/nl
- LinksUpdate extensions/nl
- LoadExtensionSchemaUpdates extensions/nl
- MakeGlobalVariablesScript extensions/nl
- PageDeleteComplete extensions/nl
- PageForms::TemplateFieldEnd extensions/nl
- PageForms::TemplateFieldStart extensions/nl
- PageMoveComplete extensions/nl
- PageSaveComplete extensions/nl
- PageSchemasRegisterHandlers extensions/nl
- ParserFirstCallInit extensions/nl
- ResourceLoaderGetConfigVars extensions/nl
- ScribuntoExternalLibraries extensions/nl
- SidebarBeforeOutput extensions/nl
- SkinTemplateNavigation::Universal extensions/nl
- UploadComplete extensions/nl
- GPL licensed extensions/nl
- Extensions in Wikimedia version control/nl
- All extensions/nl
- Extensions included in Canasta/nl
- Extensions included in Fandom/nl
- Extensions included in Miraheze/nl
- Extensions included in MyWikis/nl
- Extensions included in wiki.gg/nl
- Data extraction extensions/nl
- Database extensions/nl
- Table extensions/nl
- Calendar extensions/nl
- Map extensions/nl
- Google Maps extensions/nl
- OpenLayers extensions/nl
- Leaflet extensions/nl
- Graphical Timelines/nl
- Graph extensions/nl
- Math extensions/nl
- Search extensions/nl
- Data management extensions/nl
