Preload data with nested and multiple values: Difference between revisions
Jump to navigation
Jump to search
No edit summary Tag: 2017 source edit |
No edit summary Tag: 2017 source edit |
||
Line 38: | Line 38: | ||
=== Step 1: Define one or more statistical class sets === | === Step 1: Define one or more statistical class sets === | ||
{{#visualdataform: Data classes | |||
|title = Create class set | |||
|action = create | |||
|edit-page = | |||
|return-page = {{FULLPAGENAME}} | |||
|view = popup | |||
|popup-size = larger | |||
|css-class = form-classes | |||
|pagename-formula = <unique title> | |||
|edit-freetext = false | |||
|edit-categories = false | |||
|edit-content-model = false | |||
|edit-target-slot = false | |||
|target-slot = main | |||
|default-categories = classes | |||
|default-content-model = json | |||
|layout-align = top | |||
|popup-help = true | |||
|submit-button-text = | |||
|layout = | |||
|submit-button-text = | |||
|validate-button-text = | |||
}} | |||
[{{canonicalurl:Help:Available_data_classes}} See Available data classes] | |||
=== Step 2: Attach class sets to this page === | === Step 2: Attach class sets to this page === | ||
{{#visualdataform: Page classes | |||
|title = Add class sets to page | |||
|action = edit | |||
|edit-page = {{{pagetitle}}} | |||
|return-page = {{FULLPAGENAME}} | |||
|view = popup | |||
|popup-size = larger | |||
|css-class = | |||
|edit-freetext = false | |||
|edit-categories = false | |||
|edit-content-model = false | |||
|edit-target-slot = false | |||
|layout-align = top | |||
|popup-help = true | |||
|submit-button-text = | |||
|layout = | |||
|submit-button-text = | |||
|validate-button-text = | |||
|selected-schema = Indicator key data | |||
}} | |||
=== Step 3: Add datasets to this page === | === Step 3: Add datasets to this page === | ||
Line 59: | Line 106: | ||
|default-content-model = json | |default-content-model = json | ||
|preload-data?belongs to = {{PAGEID}} | |preload-data?belongs to = {{PAGEID}} | ||
|preload-data?classes/$/class name = {{#visualdataprint:{{#visualdataprint:{{PAGEID}}|?classes|schema = | |preload-data?classes/$/class name = {{#visualdataprint:{{#visualdataprint:{{PAGEID}}|?classes|schema = Page classes|format = raw}}|?class names|schema = Data classes|format = raw|values-separator = @@@@}} | ||
|preload-data?classes/$/sub-classes/$/sub-class name = {{#visualdataprint:{{#visualdataprint:{{PAGEID}}|?sub-classes|schema = | |preload-data?classes/$/sub-classes/$/sub-class name = {{#visualdataprint:{{#visualdataprint:{{PAGEID}}|?sub-classes|schema = Page classes|format = raw}}|?class names|schema = Data classes|format = raw|values-separator = @@@@}} | ||
|preload-data?classes/$/sub-classes/$/sub-sub-classes/$/sub-sub-class name = {{#visualdataprint:{{#visualdataprint:{{PAGEID}}|?sub-sub-classes|schema = | |preload-data?classes/$/sub-classes/$/sub-sub-classes/$/sub-sub-class name = {{#visualdataprint:{{#visualdataprint:{{PAGEID}}|?sub-sub-classes|schema = Page classes|format = raw}}|?class names|schema = Data classes|format = raw|values-separator = @@@@}} | ||
}} | }} | ||
</syntaxhighlight> | </syntaxhighlight> | ||
Line 80: | Line 127: | ||
|default-content-model = json | |default-content-model = json | ||
|preload-data?belongs to = {{PAGEID}} | |preload-data?belongs to = {{PAGEID}} | ||
|preload-data?classes/$/class name = {{#visualdataprint:{{#visualdataprint:{{PAGEID}}|?classes|schema = | |preload-data?classes/$/class name = {{#visualdataprint:{{#visualdataprint:{{PAGEID}}|?classes|schema = Page classes|format = raw}}|?class names|schema = Data classes|format = raw|values-separator = @@@@}} | ||
|preload-data?classes/$/sub-classes/$/sub-class name = {{#visualdataprint:{{#visualdataprint:{{PAGEID}}|?sub-classes|schema = | |preload-data?classes/$/sub-classes/$/sub-class name = {{#visualdataprint:{{#visualdataprint:{{PAGEID}}|?sub-classes|schema = Page classes|format = raw}}|?class names|schema = Data classes|format = raw|values-separator = @@@@}} | ||
|preload-data?classes/$/sub-classes/$/sub-sub-classes/$/sub-sub-class name = {{#visualdataprint:{{#visualdataprint:{{PAGEID}}|?sub-sub-classes|schema = | |preload-data?classes/$/sub-classes/$/sub-sub-classes/$/sub-sub-class name = {{#visualdataprint:{{#visualdataprint:{{PAGEID}}|?sub-sub-classes|schema = Page classes|format = raw}}|?class names|schema = Data classes|format = raw|values-separator = @@@@}} | ||
}} | }} | ||
For the styling see [[MediaWiki:Common.less]] | For the styling see [[MediaWiki:Common.less]] | ||
<div><small>{{#advancedlink:{{{pagetitle}}}?slot=jsondata|JSON data}}</small></div> | <div><small>{{#advancedlink:{{{pagetitle}}}?slot=jsondata|JSON data}}</small></div> | ||
{{#if:{{#visualdataquery:[[belongs to::{{PAGEID}}]]|?belongs to|schema = Dataset|format = raw}}|| | {{#if:{{#visualdataquery:[[belongs to::{{PAGEID}}]]|?belongs to|schema = Dataset|format = raw}}|| | ||
<div class="webmo-float-button webmo-float-button-edit"> | <div class="webmo-float-button webmo-float-button-edit"> | ||
{{#visualdataform: Indicator key data, | {{#visualdataform: Indicator key data, Page classes | ||
|title = {{int:webmo-select-data-classes}} | |title = {{int:webmo-select-data-classes}} | ||
|action = edit | |action = edit | ||
Line 133: | Line 159: | ||
|submit-button-text = | |submit-button-text = | ||
|validate-button-text = | |validate-button-text = | ||
|selected-schema = | |selected-schema = Page classes | ||
}}</div> | }}</div> | ||
<div class="webmo-add-button webmo-add-classes"> | <div class="webmo-add-button webmo-add-classes"> | ||
Line 167: | Line 193: | ||
|dateFormat = {{#time: xg }} | |dateFormat = {{#time: xg }} | ||
|articleids = {{#visualdataquery:[[belongs to::{{PAGEID}}]]|?articleid|schema = Dataset|format = template|template = Webmo comma separartor}} | |articleids = {{#visualdataquery:[[belongs to::{{PAGEID}}]]|?articleid|schema = Dataset|format = template|template = Webmo comma separartor}} | ||
|entity = {{#visualdataprint:[[articleid::{{PAGEID}}]]|?entity|schema = | |entity = {{#visualdataprint:[[articleid::{{PAGEID}}]]|?entity|schema = Page classes|format = raw}} | ||
}} | }} | ||
</div> | </div> | ||
Line 209: | Line 235: | ||
|target-slot = main | |target-slot = main | ||
|preload-data?belongs to = {{PAGEID}} | |preload-data?belongs to = {{PAGEID}} | ||
|preload-data?classes/$/class name = {{#visualdataprint:{{#visualdataprint:{{PAGEID}}|?classes|schema = | |preload-data?classes/$/class name = {{#visualdataprint:{{#visualdataprint:{{PAGEID}}|?classes|schema = Page classes|format = raw}}|?class names|schema = Data classes|format = raw|values-separator = @@@@}} | ||
|default-categories = | |default-categories = | ||
|default-content-model = json | |default-content-model = json | ||
Line 237: | Line 263: | ||
|target-slot = main | |target-slot = main | ||
|preload-data?belongs to = {{PAGEID}} | |preload-data?belongs to = {{PAGEID}} | ||
|preload-data?classes/$/class name = {{#visualdataprint:{{#visualdataprint:{{PAGEID}}|?classes|schema = | |preload-data?classes/$/class name = {{#visualdataprint:{{#visualdataprint:{{PAGEID}}|?classes|schema = Page classes|format = raw}}|?class names|schema = Data classes|format = raw|values-separator = @@@@}} | ||
|preload-data?classes/$/sub-classes/$/sub-class name = {{#visualdataprint:{{#visualdataprint:{{PAGEID}}|?sub-classes|schema = | |preload-data?classes/$/sub-classes/$/sub-class name = {{#visualdataprint:{{#visualdataprint:{{PAGEID}}|?sub-classes|schema = Page classes|format = raw}}|?class names|schema = Data classes|format = raw|values-separator = @@@@}} | ||
|default-categories = | |default-categories = | ||
|default-content-model = json | |default-content-model = json | ||
Line 266: | Line 292: | ||
|target-slot = main | |target-slot = main | ||
|preload-data?belongs to = {{PAGEID}} | |preload-data?belongs to = {{PAGEID}} | ||
|preload-data?classes/$/class name = {{#visualdataprint:{{#visualdataprint:{{PAGEID}}|?classes|schema = | |preload-data?classes/$/class name = {{#visualdataprint:{{#visualdataprint:{{PAGEID}}|?classes|schema = Page classes|format = raw}}|?class names|schema = Data classes|format = raw|values-separator = @@@@}} | ||
|preload-data?classes/$/sub-classes/$/sub-class name = {{#visualdataprint:{{#visualdataprint:{{PAGEID}}|?sub-classes|schema = | |preload-data?classes/$/sub-classes/$/sub-class name = {{#visualdataprint:{{#visualdataprint:{{PAGEID}}|?sub-classes|schema = Page classes|format = raw}}|?class names|schema = Data classes|format = raw|values-separator = @@@@}} | ||
|preload-data?classes/$/sub-classes/$/sub-sub-classes/$/sub-sub-class name = {{#visualdataprint:{{#visualdataprint:{{PAGEID}}|?sub-sub-classes|schema = | |preload-data?classes/$/sub-classes/$/sub-sub-classes/$/sub-sub-class name = {{#visualdataprint:{{#visualdataprint:{{PAGEID}}|?sub-sub-classes|schema = Page classes|format = raw}}|?class names|schema = Data classes|format = raw|values-separator = @@@@}} | ||
|default-categories = | |default-categories = | ||
|default-content-model = json | |default-content-model = json |
Revision as of 18:16, 14 May 2024
Syntax[edit | edit source]
This example shows a concept, how to handle the VisualData form parameter 'preload-data' with nested and multiple values. This makes it possible to generate dynamical forms, e.g. to collect data differentiated by district, gender and age categories:
...
|preload-data?classes/$/class name = District 1@@@@District 2@@@@District 3
|preload-data?classes/$/sub-classes/$/sub-class name = female@@@@male@@@@diverse
|preload-data?classes/$/sub-classes/$/sub-sub-classes/$/sub-sub-class name = 0 - 14@@@@15 - 29@@@@30 - 44@@@@45 - 59@@@@60 +
...
Notice the placeholder $
and the value separator @@@@
. The value separator can be set in VisualData queries, see below.
form is loading...
See corresponding form Data Classes
Workflow example[edit | edit source]
Step 1: Define one or more statistical class sets[edit | edit source]
form is loading...
Step 2: Attach class sets to this page[edit | edit source]
form is loading...
Step 3: Add datasets to this page[edit | edit source]
{{#visualdataform: Dataset
|title = {{int:webmo-add-dataset}}
|action = create
|return-page = {{FULLPAGENAME}}
|view = popup
|popup-size = larger
|css-class = form-dataset
|pagename-formula = <unique title>
|edit-freetext = false
|edit-categories = false
|edit-content-model = false
|edit-target-slot = false
|target-slot = main
|default-content-model = json
|preload-data?belongs to = {{PAGEID}}
|preload-data?classes/$/class name = {{#visualdataprint:{{#visualdataprint:{{PAGEID}}|?classes|schema = Page classes|format = raw}}|?class names|schema = Data classes|format = raw|values-separator = @@@@}}
|preload-data?classes/$/sub-classes/$/sub-class name = {{#visualdataprint:{{#visualdataprint:{{PAGEID}}|?sub-classes|schema = Page classes|format = raw}}|?class names|schema = Data classes|format = raw|values-separator = @@@@}}
|preload-data?classes/$/sub-classes/$/sub-sub-classes/$/sub-sub-class name = {{#visualdataprint:{{#visualdataprint:{{PAGEID}}|?sub-sub-classes|schema = Page classes|format = raw}}|?class names|schema = Data classes|format = raw|values-separator = @@@@}}
}}
form is loading...
For the styling see MediaWiki:Common.less
No data