Help:Cargo

From Saintapedia
Revision as of 22:33, 5 September 2024 by Tom (talk | contribs) (→‎Special pages: add examples)
Jump to navigation Jump to search
Extension:Cargo on Mediawiki

The Cargo MediaWiki extension is designed to enhance MediaWiki's capabilities by providing a structured way to store and query data within wiki templates, particularly useful for managing data in infoboxes or similar structured data representations.

Cargo stands out as a powerful tool for those looking to leverage MediaWiki not just for content but for structured data management, offering a balance between complexity and usability for wiki administrators and developers. Its integration with MediaWiki's templating system makes it particularly useful for creating dynamic, data-driven content within wiki environments.

Functionality

  • Data Storage: Cargo allows data to be stored in database tables, which can be either within MediaWiki's database or in a separate database for performance or security reasons. This data is typically derived from template calls, where each template invocation can define a row in a table.
  • Querying Data: Users can query this data using SQL-like syntax through special pages or parser functions provided by Cargo, like #cargo_query. This allows for dynamic content generation based on the data stored.
  • Parser Functions:
  1. cargo_declare: Defines the schema for a table, placed within the <noinclude> part of a template.
  2. cargo_attach: Specifies that a template adds rows to a table declared elsewhere.
  3. cargo_store: Stores data into a Cargo table, usually within the <includeonly> part of a template.

Features

  • Data Types: Cargo supports various data types including simple types like strings, dates, and numbers, to more complex ones like hierarchies, coordinates, and wikitext.
  • Special Pages: Cargo includes special pages like Special:CargoQuery for direct querying and Special:Drilldown for interactive data exploration.
  • Integration with MediaWiki: It integrates seamlessly with MediaWiki's existing structure, allowing for data to be linked with pages, categories, and other MediaWiki features.
  • Customization: Through settings like $wgCargoDefaultStringBytes or $wgCargoMaxQueryLimit, administrators can control how Cargo behaves in terms of data storage limits or query performance.

Advantages

  • Ease of Use: Compared to other extensions like Semantic MediaWiki, Cargo might be simpler to install and use for basic to intermediate data management needs within MediaWiki.
  • Performance: By potentially using a separate database, Cargo can help in managing performance issues related to data queries, especially on large wikis.
  • Flexibility: Its design allows for complex data structures and queries, making it suitable for wikis where structured data management is crucial.

Community and Development

  • Development: Cargo has seen contributions through programs like Google Summer of Code, indicating active development and community involvement.
  • Support: There's community support through forums, documentation, and the MediaWiki extension repository, where users can find help or contribute to its development.

Special pages

Map examples

Table

Name Location Department
Bryan 38.89814, -77.03666 IT
Josh 41.90218, 12.45393 European Sales
Juanita 40.71181, -74.01337 Marketing
Mary 32.70663, 35.30482 HR Marketing
Peter 38.8977, -77.03655 HR

Dynamic table

Name Location Department
Name Location Department
Bryan 38.89814, -77.03666 IT
Josh 41.90218, 12.45393 European Sales
Juanita 40.71181, -74.01337 Marketing
Mary 32.70663, 35.30482 HR Marketing
Peter 38.8977, -77.03655 HR

Open Layers

Leaflet

Resources

Links

Example wikis