Extension:VisualData/dtp

Category:GPL licensed extensions/dtp
MediaWiki extensions manual
VisualData
Release status: stableCategory:Stable extensions/dtp
Implementation Hook Category:Hook extensions/dtp, Special page Category:Special page extensions/dtp
Description VisualData is a full-fledged metadata management framework based on json-schema able to easily record, organize and query collection of data on your wiki.
Author(s) thomas-topway-it (thomas-topway-itpibarasai)
Latest version 1.0.9 (2025-02-07)
Compatibility policy Master maintains backward compatibility.
MediaWiki 1.35+Category:Extensions with manual MediaWiki version
Database changes Yes
License GNU General Public License 2.0 or later
Download Category:Extensions in Wikimedia version control/dtp
Example Wikisphere
  • $wgVisualDataTrackingCategoryForms
  • $wgVisualDataCreateJobsWarningLimit
  • $wgVisualDataDisableSlotsNavigation
  • $wgVisualDataQueryProcessorPrintoutsLimit
  • $wgVisualDataEditDataNamespaces
  • $wgVisualDataDisableSidebarLink
  • $wgVisualDataTrackingCategoryJsonData
  • $wgVisualDataTrackingCategoryButtons
  • $wgVisualDataDisableVersionCheck
  • $wgVisualDataMaptilerApiKey
  • $wgVisualDataTrackingCategoryQueries
  • visualdata-caneditdata
  • visualdata-canmanageschemas
Quarterly downloads 23 (Ranked 93rd)
Translate the VisualData extension if it is available at translatewiki.net
Category:All extensions/dtp

VisualData is a full-fledged metadata management framework based on json-schema able to easily record, organize and query collection of data on your wiki.

It is characterized by a strong emphasis on the UI/UX side and aims to present itself as a lightweight or modern alternative to Semantic MediaWiki and Cargo.

Key-features

  • Based on json-schema and slots
  • forms and pop-up forms auto-generated from json-schema
  • Integrated SchemaBuilder to easily create json-schema compliant schemas, with nested items and OOUI widgets
  • Forms are validated with industry-standard ajv-validator
  • SMW's style inline queries and result formats
  • Can import/store/query large amount of data (with hierarchical structure) in specific articles/the entire wiki, and to rebuild them in minutes
  • completed with an uninstall script: test the extension and opt-out if it doesn't meet your requirements!


check out live demos and Release notes for the latest improvements


elemen UI

The extension adds the following interface elements to your wiki (some of them only for authorized users and/or sysops)

  • A sidebar section where to access all special pages offered by the extension



  • The action tab "Edit data" by which to assign schemas to article and fill-in them through automatically generated OOUI forms



  • and a namespace tab where to access the slot with json-data registered within an article through the extension



The visibility of each of them can be managed using the global parameters below.


Papadakat

  • Download and place the file(s) in a directory called VisualData in your extensions/ folder.
  • ruhangai kod pointanud id saralom LocalSettings.php nu
wfLoadExtension( 'VisualData' );
  • Run php maintenance/run.php update (this will install the required tables)
  • run composer install --no-dev in the extension folder. This will install the required libraries[1]
  • Yes DoneNavigate to Special:Version on your wiki to verify that the extension is successfully installed.

Make sure to run

php maintenance/run.php ./extensions/VisualData/maintenance/RebuildData.php

after each update of the extension when indicated in the Release notes. This will drop/recreate the tables based on the data stored on the wiki

Main sections

New article UI
Schema Builder & File upload
Edit data
Result formats
Browse data
Maintenance scripts

kuasa om kogingohon

The extension creates the following user rights. They can be both included manually in the LocalSettings.php or to be managed through the interface (special page Special:UserRights). Sysops and bureaucrats are assigned with the complete set of permissions by default.

Hak

rightkointalangan
visualdata-caneditdataCan edit metadata related to wiki articles by editing/assigning json-schemas to them
visualdata-canmanageschemasCan create/edit/delete schemas through the SchemaBuilder

poomitanan konfigurasi

$wgGroupPermissions['*']["visualdata-caneditdata"] = true;
$wgGroupPermissions['*']["visualdata-canmanageschemas"] = false;

$wgVisualDataDisableSidebarLink = false;
$wgVisualDataDisableSlotsNavigation = false;
$wgVisualDataCreateJobsWarningLimit = 0;
$wgVisualDataEditDataNamespaces =  [ 0, 4, 2226, 2230 ];
$wgVisualDataTrackingCategoryJsonData = false;
$wgVisualDataTrackingCategoryForms = false;
$wgVisualDataTrackingCategoryQueries = false;
$wgVisualDataTrackingCategoryButtons = false;
$wgVisualDataMaptilerApiKey = '';

// @Attention the same namespace is also used by Extension:JsonConfig and Extension:LinkedWiki
define("NS_DATA", 2220);
define("NS_DATA_TALK", 2221);
$wgExtraNamespaces[NS_DATA] = "Data";
$wgExtraNamespaces[NS_DATA_TALK] = "Data_talk";

tinimungan

tinimunganCan edit dataCan manage schemas
sysop, bureaucratYes  Yes  
visualdata-adminYes  Yes  
visualdata-editorYes  N  

=Parameter sompomogunaɲ

kopogisusuaiankointalanganlalai
$wgVisualDataDisableSlotsNavigationPokitono slot tab id panol navigasifalse
$wgVisualDataDisableSidebarLinkLisoko link kumaa Visual data bolikan ogingo id bar disanfalse
$wgVisualDataEditDataNamespacesdefault namespaces with editable metadata 0, 4 (Main, Project)
$wgVisualDataJsonDataTrackingCategoryadd a tracking category to articles with datafalse
$wgVisualDataCreateJobsWarningLimitGinumu karaja di winonsoi do miampai au poposoliwan nutis0
$wgVisualDataDisableVersionCheckMangantob do kawo mongintong do lolombusfalse

Isu noilaan

  • in some MediaWiki versions and configurations, the ResourceLoader may generate syntax errors when bundling the Javascript files. In this case please use $wgResourceLoaderDebug = true; in LocalSettings.php, this will include separately each file and should solve the problem.
  • rename of schemas and properties must be kept in synch with property and schema names hardcoded in parser functions. This will be solved implementing a query and form builder (see #Roadmap)
  • queries require that the first printout exists, otherwise the row will not show. This could be solved using DUAL keyword
  • the SchemaBuilder and the form processor do not yet support the directives oneOf, anyOf and support for the $ref keyword

Mapralan

  • add oneOf, anyOf and allOf support to form generator and SchemaBuilder (the SchemaBuilder will contain a select on the schema main panel)
  • add tuple and $ref keyword to SchemaBuilder (properties panel, besides 'add field', 'add content block', etc.)
  • add additional properties to SchemaBuilder (additional panel)
  • add query and form builder: this will store queries and forms as json schemas so that rename of schemas or properties can be updated within such schemas, not in the wikitext. The parser function will add queries and forms by their names or code
  • UI for bulk-edit of json data in the BrowseData special page
  • Ajax navigation for datatables, SearchPanes and SearchBuilder


Additionally:

  • version control for schemas and related data, so that edits of the schema constrain to the data related to the previous data structure
  • version control notice shown through Extension:Echo and/or complying better design practice
  • partial editing of schemas and field operations like Firebase's ArrayUnion, ArrayRemove, etc.
  • preload json-ld/schema.org entities as json-schemas
  • associate json-ld/schema.org vocabulary to user-defined schemas


Release notes

Extension:VisualData/Release notes


sokodung om bug

Main no pootodo masage norutum id Lolombus do bolikan boros. Updates will be occasionally posted on the MediaWiki's Wikitech mailing list.

For professional support please write at the email address posted here

Intangai nogi

Sukuon

Test it out !

WikiSphere

Category:Page metadata extensions/dtp Category:Data extraction extensions/dtp Category:Database extensions/dtp Category:Data management extensions/dtp Category:Table extensions/dtp Category:Page content extensions/dtp
  1. although the extension works without additional libraries, they are required to handle rename of schemas and properties, and to support preload-data override
Category:AfterImportPage extensions/dtp Category:All extensions/dtp Category:AlternateEdit extensions/dtp Category:ArticleUndelete extensions/dtp Category:BeforeInitialize extensions/dtp Category:BeforePageDisplay extensions/dtp Category:ContentAlterParserOutput extensions/dtp Category:ContentGetParserOutput extensions/dtp Category:Data extraction extensions/dtp Category:Data management extensions/dtp Category:Database extensions/dtp Category:EditPage::showEditForm:initial extensions/dtp Category:Extensions in Wikimedia version control/dtp Category:Extensions with manual MediaWiki version Category:GPL licensed extensions/dtp Category:Hook extensions/dtp Category:LoadExtensionSchemaUpdates extensions/dtp Category:MediaWikiServices extensions/dtp Category:MultiContentSave extensions/dtp Category:OutputPageParserOutput extensions/dtp Category:PageDeleteComplete extensions/dtp Category:PageRenderingHash extensions/dtp Category:PageSaveComplete extensions/dtp Category:Page content extensions/dtp Category:Page metadata extensions/dtp Category:ParserAfterTidy extensions/dtp Category:ParserFirstCallInit extensions/dtp Category:ParserPreSaveTransformComplete extensions/dtp Category:RandomPageQuery extensions/dtp Category:RevisionFromEditComplete extensions/dtp Category:ScribuntoExternalLibraries extensions/dtp Category:SidebarBeforeOutput extensions/dtp Category:SkinBuildSidebar extensions/dtp Category:SkinTemplateNavigation::Universal extensions/dtp Category:Special page extensions/dtp Category:Stable extensions/dtp Category:Table extensions/dtp