Extension:VisualData/pl
Status wydania: stabilne |
|
|---|---|
| Realizacja | Hak, Strona specjalna |
| Opis | VisualData to kompleksowy system zarządzania metadanymi bazujący na schemacie json, który umożliwia łatwe rejestrowanie, organizowanie i przeszukiwanie zbiorów danych w Twojej wiki. |
| Autor(zy) | thomas-topway-it (thomas-topway-itdyskusja) |
| Ostatnia wersja | 1.1.2 (2025-10-20) |
| Polityka zgodności | Master utrzymuje kompatybilność wsteczną. |
| MediaWiki | 1.35+ |
| Zmiany w bazie danych | Tak |
|
|
|
|
|
|
| Licencja | Licencja GNU General Public License 2.0 lub nowsza |
| Pobieranie | |
| Przykład | Wikisphere |
| Przetłumacz rozszerzenie VisualData jeżeli jest dostępne na translatewiki.net | |
VisualData to kompleksowy system zarządzania metadanymi bazujący na json-schema, który umożliwia łatwe rejestrowanie, organizowanie i przeszukiwanie zbiorów danych na Twojej wiki.
Charakteryzuje się silnym naciskiem na stronę UI/UX jako lekka i nowoczesna alternatywa dla Extension:Semantic_MediaWiki i Cargo.
Funkcjonalności
- Na podstawie json-schema i slots
- forms and pop-up forms generowane automatycznie ze schematu json
- Zintegrowano SchemaBuilder w celu łatwego tworzenia schematów zgodnych ze schematem JSON, z zagnieżdżonymi elementami i widżetami OOUI
- Formularze są weryfikowane zgodnie ze standardem branżowym ajv-validator
- Styl SMW oparty na wbudowanych zapytaniach i w pełni funkcjonalnych formatach wyników, takich jak Tabele danych, Carousel, Kalendarz, Mapa, i inne
- 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
Elementy 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.
Instalacja
- Download and place the file(s) in a directory called
VisualDatain yourextensions/folder. - run
composer install --no-devin the extension folder. This will install the required libraries[1] - Add the following code at the bottom of your LocalSettings.php
wfLoadExtension( 'VisualData' );
- Run
php maintenance/run.php update(this will install the required tables)
Zrobione – Navigate 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
Rights and privileges
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.
Rights
| right | description |
|---|---|
visualdata-caneditdata |
Can edit metadata related to wiki articles by editing/assigning json-schemas to them |
visualdata-canmanageschemas |
Can create/edit/delete schemas through the SchemaBuilder |
Example configuration
$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";
Groups
| group | Can edit data | Can manage schemas |
|---|---|---|
sysop, bureaucrat |
||
visualdata-admin |
||
visualdata-editor |
Global parameters
| variable | description | default |
|---|---|---|
$wgVisualDataDisableSlotsNavigation |
hide slots tab on the navigation panel | false
|
$wgVisualDataDisableSidebarLink |
hide VisualData's links section on the sidebar | false
|
$wgVisualDataEditDataNamespaces |
default namespaces with editable metadata | 0, 4 (Main, Project)
|
$wgVisualDataTrackingCategoryJsonData |
add a tracking category to articles with data | false
|
$wgVisualDataCreateJobsWarningLimit |
number of jobs created without emitting a notice | 0
|
$wgVisualDataDisableVersionCheck |
disable version check of the extension | false
|
Known issues
- 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,anyOfand support for the$refkeyword
Roadmap
- handle visibility for content-blocks (Forms)
- handle visibility based on multiselect input widgets (check if has items)
- add
oneOf,anyOfandallOfsupport to form generator and SchemaBuilder (the SchemaBuilder will contain a select on the schema main panel) - add tuple and
$refkeyword 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, SearchPanesand 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
Informacje o wydaniu
Extension:VisualData/Release notes
Zgłaszanie błędów
Please post error messages in the Talk page of the extension or use Phabricator for technical contributions. Updates will be occasionally posted on the MediaWiki's Wikitech mailing list.
For professional support please write at the email address posted here
Zobacz też
MediaWiki pages
- Extension:ContactManager (A demo wiki-application built on top of VisualData)
- Extension:Semantic MediaWiki
- Extension:Cargo
- Extension:PageForms
- Extension:FlexForm
- Wskazówka:Zarządzanie danymi w MediaWiki – An overview and comparison
- Outreachy 30: VisualData's json-schema enhancements (bringing JSON-Schema to MediaWiki)
Przypisy
- Demos on Wikisphere
- json-schema
- json-editor demo
- json-schema creator
- schema store
- php-json-schema-model-generator
Test it out !
References
- ↑ although the extension works without additional libraries, they are required to handle rename of schemas and properties, and to support preload-data override
- Stable extensions/pl
- Hook extensions/pl
- Special page extensions/pl
- AfterImportPage extensions/pl
- AlternateEdit extensions/pl
- ArticleUndelete extensions/pl
- BeforeInitialize extensions/pl
- BeforePageDisplay extensions/pl
- ContentAlterParserOutput extensions/pl
- ContentGetParserOutput extensions/pl
- EditPage::showEditForm:initial extensions/pl
- LoadExtensionSchemaUpdates extensions/pl
- MediaWikiServices extensions/pl
- MultiContentSave extensions/pl
- OutputPageParserOutput extensions/pl
- PageDeleteComplete extensions/pl
- PageRenderingHash extensions/pl
- PageSaveComplete extensions/pl
- ParserAfterTidy extensions/pl
- ParserFirstCallInit extensions/pl
- ParserPreSaveTransformComplete extensions/pl
- RandomPageQuery extensions/pl
- RevisionFromEditComplete extensions/pl
- ScribuntoExternalLibraries extensions/pl
- SidebarBeforeOutput extensions/pl
- SkinBuildSidebar extensions/pl
- SkinTemplateNavigation::Universal extensions/pl
- GPL licensed extensions/pl
- Extensions in Wikimedia version control/pl
- All extensions/pl
- Page metadata extensions/pl
- Data extraction extensions/pl
- Database extensions/pl
- Data management extensions/pl
- Table extensions/pl
- Page content extensions/pl
