Help:Tabular data/nl
| Let op: Als u deze pagina bewerkt, gaat u akkoord met het vrijgeven van uw bijdragen onder de CC0. Zie Helppagina’s Publiek Domein voor meer informatie. |
Met data in tabelvorm kunnen gebruikers CSV-achtige tabellen van data maken en deze van andere wiki's gebruiken om automatische tabellen, lijsten en grafieken te maken.
Om een nieuwe tabel aan te maken, gaat u naar Wikimedia Commons, maakt u een nieuwe pagina aan in de namespace Data met een achtervoegsel .tab, zoals Data:Sandbox/Name/Example.tab.
Voel u vrij om te experimenteren door pagina's te maken met het voorvoegsel Sandbox/<username>/.
Voorlopig kan pagina-inhoud alleen worden bewerkt in het ruwe JSON-formaat en met een eenvoudige tabeleditor, maar een gadget maakt het importeren/exporteren van/naar CSV- en Excel-bestanden mogelijk.
Another script allows import from existing graph wikitext. Generative AI can be prompted to import data from existing graph and table wikitext, and to update with new data.
We hopen dat we op 21 november 2016 een spreadsheet-achtige editor zullen hebben om het bewerken van data te vereenvoudigen.
Het onderliggende dataformaat komt grotendeels overeen met de Frictionless Data-standaard voor een tabelleerde databron.
Data licenties
Bij alle data in de namespace Data: moet de licentie expliciet zijn aangeven.
De aanbevolen licentie is Publiek Domein, onder licentie Creative Commons Zero (CC0) .
Om dit te laten zien, moet elke datapagina "license": "CC0-1.0" hebben, wat betekent dat de gegevens kunnen worden gebruikt onder de CC0 versie 1.0, of (na uw keuze) een latere versie.
Door de data te bewerken, gaat u akkoord met de gebruiksvoorwaarden, en stemt u er onherroepelijk mee in om uw bijdrage in het Publiek Domein vrij te geven onder licentie CC0.
Als het niet mogelijk is om de data te vrijgeven onder CC0, worden ook de volgende licenties ondersteund:
- CC-BY:
- CC-BY-1.0: Creative Commons Attribution 1.0
- CC-BY-2.0: Creative Commons Attribution 2.0
- CC-BY-2.5: Creative Commons Attribution 2.5
- CC-BY-3.0: Creative Commons Attribution 3.0
- CC-BY-4.0: Creative Commons Attribution 4.0
- CC-BY-4.0+: Creative Commons Attribution 4.0 of een latere versie
- CC-BY-SA
- CC-BY-SA-1.0: Creative Commons Attribution-Share Alike 1.0
- CC-BY-SA-2.0: Creative Commons Attribution-Share Alike 2.0
- CC-BY-SA-2.5: Creative Commons Attribution-Share Alike 2.5
- CC-BY-SA-3.0: Creative Commons Attribution-Share Alike 3.0
- CC-BY-SA-4.0: Creative Commons Attribution-Share Alike 4.0
- CC-BY-SA-4.0+: Creative Commons Attribution-Share Alike 4.0 of een latere versie
- ODbL-1.0
- ODbL-1.0: ODC Open Database License v1.0
Alle sjablonen die gegevens halen uit niet-CC0 gelicentieerde datasets moeten voldoen aan de relevante attributievoorwaarden, daarom wordt sterk aangeraden om waar mogelijk CC0 de voorkeur te geven.
Op een later moment kan de lijst met licenties die worden ondersteund door de namespace Data worden uitgebreid.
Datatypes
JSON-gegevens in een tabelvorm ondersteunen verschillende basiswaardetypes.
U kunt ook null gebruiken in plaats van de waarde om het als ontbrekend te markeren.
number– Een numerieke waarde met een optioneel fractiedeel en kan exponentiële E-notatie, maar kan geen niet-getallen bevatten zoals NaN.boolean– staat alleen de waardentrueenfalsetoe.string– een tekst van niet meer dan 400 tekens. Speciale tekens zoals nieuwe-regel\nen een tab\tzijn niet toegestaan.localized– Een meertalige tekenreeks, voorgesteld als een object met sleutels als taalcodes (bijv. "en"), en waarden als een tekenreeks met een lengte van maximaal 400 karakters. Bijvoorbeeld,{"en":"string in English", "fr":"chaîne de texte en français", ...}heeft waarden voor zowel Engels als Frans.
Hoogste niveau velden
Data in tabelvorm heeft verschillende vereiste en optionele elementen op het hoogste niveau:
| Naam | Verplicht? | Beschrijving | ||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
license |
Verplicht | moet altijd worden ingesteld op de waarde "CC0-1.0". Nu wordt alleen data in tabelvorm ondersteunt met een CC0 (Public Domain dedication) licentie versie 1.0 of hoger. In de toekomst kunnen er meer licenties ondersteund worden.
| ||||||||||||
schema: {"fields": [{...}, {...}, ...]} |
Verplicht | moet worden ingesteld op een object dat een lijst bevat. Elk veld beschrijft een kolom van de tabelgegevens. Elk veld moet een object zijn met verplichte waarden "name" en "type"
| ||||||||||||
data |
Verplicht | moet altijd worden ingesteld op een lijst met lijsten. Elke sublijst moet hetzelfde aantal elementen hebben als de koppen en moet overeenkomen met de waardetypes. | ||||||||||||
description |
Optioneel | moet worden ingesteld op een vertaalde tekenreekswaarde - een object met ten minste één sleutelwaarde, waarbij de sleutel een taalcode is (bv. "en"), en de waarde een beschrijving. | ||||||||||||
sources |
Optioneel | moet een Wiki-opmaak tekenreekswaarde zijn die de bron van de data beschrijft. | ||||||||||||
mediawikiCategories |
Optioneel | moet worden ingesteld op een lijst die objecten bevat. Elk object kan twee waarden hebben:
|
Gebruik
Er zijn twee manieren om deze data op wiki te gebruiken:
- Een Lua-script op een wiki kan deze data ophalen met een aanroep van
mw.ext.data.get("Example.tab"). De functie geeft tabelgegevens terug in bijna hetzelfde formaat als de originele JSON, behalve dat alle vertaalde strings worden omgezet in gewone strings, en het licentieveld zal ook een vertaalde licentie-naam bevatten. Om de data in een andere taal te krijgen, geef de taalcode als tweede parameter mee. Om de data in de oorspronkelijke, ongewijzigde vorm te krijgen, gebruik "_" als taalcode. - Chart opbouw wordt ondersteund bij tabelgegevens, hetzij met behulp van de pagina waarnaar wordt verwezen in het veld
"source": "Example.tab"van de pagina in het formaatData:Example.chartof overschreven bij de aanroep als bij{{#chart:Example.chart|source=Example.tab}}. (Dit vervangt het oude Vega-grafiek-systeem dat getabelleerde data kon krijgen door"tabular:///Example.tab"als url van de databron te gebruiken.)
Op Commons, als u een pagina transcludeert uit de namespace Data, dat wil zeggen {{Data:Example.tab}}, dan wordt deze opgebouwd als een HTML-tabel.
Om direct toegang te krijgen tot data op een wikipagina, kunt u (als u die nog niet heeft) de module tabular data importeren (vereist de module navbar) en optioneel het sjabloon tabular query.
Met deze hulpmiddelen kunt u de waarde van een enkele cel gemakkelijk ophalen.
Voorbeeld
{
"license": "CC0-1.0",
"description": {
"en": "Some good fruits for you",
"es": "Algunas buenas frutas para ti"
},
"sources": "http://example.com and [[a wiki page]]",
"schema": {
"fields": [
{ "name": "id", "type": "string", "title": { "en": "Fruit ID", "fr": "ID de fruit" }},
{ "name": "name", "type": "localized", "title": { "en": "Fruit name", "fr": "Nom de fruit" }},
{ "name": "count", "type": "number", "title": { "en": "Count", "fr": "Décompte" }},
{ "name": "like", "type": "boolean", "title": { "en": "Do I like it?", "fr": "L’aimes-tu ?" }},
{ "name": "description", "type": "localized", "title": { "en": "Fruit description", "fr": "Description du fruit" }}
]
},
"data": [
[
"peaches",
{
"en": "Peaches",
"es": "Melocotones",
"fr": "Pêches"
},
100,
true,
{
"en": "Magnificent but a bit sweet",
"es": "Magníficos pero un poco dulces",
"fr": "Magnifiques mais un peu sucrées"
}
],
[
"apples",
{
"en": "Apples",
"es": "Manzanas",
"fr": "Pommes"
},
150,
true,
{
"en": "Red, not green",
"es": "Rojas, no verdes",
"fr": "Rouges, pas vertes"
}
]
],
"mediawikiCategories": [
{
"name": "Example category",
"sort": "Its sortkey"
},
{
"name": "Example category 2"
}
]
}
Zie c:Data:COVID-19 cases in Santa Clara County, California.tab een voorbeeld van hoe JSON-gegevens op Commons worden weergegeven.
Beperkingen en valkuilen
- Elke tekenreeks behalve
"sources"mag niet langer zijn dan 400 karakters. Speciale tekens zoals nieuwe-regel\nen een tab\tzijn niet toegestaan. - De totale grootte van de pagina mag niet meer dan 2 MB bedragen.
- Waarden
nullworden door de validator doorgegeven, maar kunnen problemen veroorzaken met de verwerking door Lua-modules, omdat JSONnulldeze koppelt met Luanilen deze vermeldingen uiteindelijk ontbreken uit de data-rij-tabel, waardoor de gebruikelijke iteratiepatronen vroeg worden gebroken.
Opmerkingen voor beheerders
- Sitebeheerders kunnen foutmeldingen aanpassen, zoals
jsonconfig-err-licenseom redacteuren op de hoogte te houden van de CC0-only beperking.
Converteren van data naar JSON
Er zijn verschillende hulpmiddelen beschikbaar om andere formaten naar JSON om te zetten
Overwegingen over Extension:Chart en Excel/Libreoffice Calc
Veel Excel-sheets hebben veel meer kolommen dan het logisch is om in een diagram te laten zien. Sinds juni 2025 ondersteunt Extension:Chart alleen grafieken met select van kolommen (curves).
Daarvoor moest om een deelverzameling van de curves handig in een grafiek beschikbaar te maken, een versie van de pagina .tab worden gemaakt met de overeenkomstige deelverzameling van de kolommen.
De data kan worden geëxporteerd vanuit Commons als een CSV-bestand, gewijzigd in een spreadsheetprogramma en vervolgens worden omgezet naar tabel-JSON met gebruik van c:MediaWiki talk:Gadget-TabularImportExport.js.
CSV en TSV
- convertcsv.com – (selecteer "CSV to JSON Array") Genereer uitvoer als JSON-Array, kies onder 'output options' optie 'f to JSON Array, create array for column names with name'. U zult nog steeds handmatig name: en type: aan elke invoer in fields moeten toevoegen (zie voorbeeld hierboven voor de opmaak).
XLS
- xls-to-json – Converteer xls-bestanden naar JSON in NodeJS
Zie ook
- Help:Map Data – gelijkwaardig gestructureerde kaartgegevens in de namespace
Data:op Commons. - Extension:Chart
- Lua data-modulen
- Tabular data – enkele details van de implementatie
- Category:Graph Template Collection – sjablonen voor het maken van grafieken met de Commons Datasets
- Gadget-TabularImportExport – Een gadget om bestanden van/naar CSV en Excel te importeren/exporteren, van User:TheDJ.
- Tomastvivlaren/graphDataImport – Een script om tabelgegevens uit Graph:Chart wikitext te importeren.
- commons:module:Json2table en commons:template:Json2table - module en sjabloon die het automatisch exporteren van tabelgegevens, opgeslagen in Commons, mogelijk maakt naar tabellen in Wikipedia-pagina's (indien geïnstalleerd op de lokale Wikipedia)
- phab:T154071 – Niet-CC0 gelicentieerde data voor datasets toestaan
- DataNamespace – vorige voorstel