Help:Class
In Cargo, the first step in storing data in a structured way is creating a class.
Creating a class
A template that stores data in a table needs to also either declare that table, or "attach" itself to a table that is declared elsewhere. Since there is usually one table per template and vice versa, most templates that make use of Cargo will declare their own table.
Enter all the data here to create the properties, template, form and category for a single class. For more options, use the pages Create a template, Create a form and Create a category instead.
Features
Cargo supports various data types including simple types like strings, dates, and numbers, to more complex ones like hierarchies, coordinates, and wikitext.
Page
- Holds the name of a page in the wiki
- Default max size: 300 characters
String
- Holds standard, non-wikitext text
- Default max size: 300 characters
Text
- Holds standard, non-wikitext text
- Intended for longer values
- Unindexed
Integer
- Holds an integer
Float
- Holds a real, i.e., non-integer, number
Date
- Holds a date without time
Start date
,End date
- Similar to
Date
, but are meant to hold the beginning and end of some duration. A table can hold either noStart date
and noEnd date
field, or exactly one of both.
Datetime
- Holds a date and time
Start datetime
,End datetime
- Work like
Start date
orEnd date
, but include a time.
Boolean
- Holds a Boolean value, whose value should be 1 or 0, or 'yes' or 'no' (see Special:MyLanguage/Extension:Cargo/Querying data#Querying Boolean fieldsthis section for Cargo-specific information on querying Boolean values)
Coordinates
- Holds geographical coordinates
Wikitext string
- Holds a short text that is meant to be parsed by the MediaWiki parser
- Default max size: 300 characters
Wikitext
- Holds longer text that is meant to be parsed by the MediaWiki parser
- Unindexed
Searchtext
- Holds text that can be searched on, using the Special:MyLanguage/Extension:Cargo/Querying data#The "MATCHES" commandMATCHES command (requires MySQL 5.6+ or MariaDB 5.6+)
File
- Holds the name of an uploaded file or image in the wiki (similar to Page, but does not require specifying the "File:" namespace) (default max size: 300 characters)
URL
- Holds a URL
- Default max size: 300 characters
Email
- Holds an email address
- Default max size: 300 characters
Rating
- Holds a "rating" value, i.e., usually an integer from 1 to 5
Special page
Cargo includes special pages like Special:CargoQuery for direct querying and Special:Drilldown for interactive data exploration.
On Special:CreateClass the options are:
Template name
The Template name....
Where to store the data
"Use the Cargo extension to store this template's data" can be toggled on or off.
If on, you must specify the "Name of Cargo table defined by template"
Output format
The options are:
- Table - This...
- Side infobox - This...
- Plain text - This...
- Sections - This...
Options
- This template can be included multiple times on the page - This does...
- Use full wikitext instead of #template_display - This does...
Form name
The "Form name" is used...
Category name
The "Category name" is used...
Template fields
Customization
Through settings like $wgCargoDefaultStringBytes or $wgCargoMaxQueryLimit, administrators can control how Cargo behaves in terms of data storage limits or query performance.