Template:VariableTemplate: Difference between revisions

From IMAGE
Jump to navigation Jump to search
No edit summary
No edit summary
 
(197 intermediate revisions by 13 users not shown)
Line 10: Line 10:
|VariableType=
|VariableType=
|DriverGroup=
|DriverGroup=
|ExternalModelDriver=
|Source=
|Source=
|BasedOn
|Reference
|Source2=
|Source2=
|ExternalModel=
|BasedOn2=
|Reference2=
|Source3=
|Reference3=
}}
}}
</pre>
</pre>
Line 22: Line 26:
<tr><td class="PageWidthTableFirstCell">'''Label:'''</td>
<tr><td class="PageWidthTableFirstCell">'''Label:'''</td>
<td class="PageWidthTableRemainderCell">
<td class="PageWidthTableRemainderCell">
[[HasLabel::{{{Label|}}}]]</td></tr>
{{{Label|}}}</td></tr>
}}
{{#ifeq:{{{ShortDescription|}}}|||
<tr><td class="PageWidthTableFirstCell">'''Short description:'''</td>
<td class="PageWidthTableRemainderCell">
{{{ShortDescription|}}}</td></tr>
}}
}}
{{#ifeq:{{{Description|}}}|||
{{#ifeq:{{{Description|}}}|||
<tr><td class="PageWidthTableFirstCell">'''Description:'''</td>
<tr><td class="PageWidthTableFirstCell">'''Description:'''</td>
<td class="PageWidthTableRemainderCell">
<td class="PageWidthTableRemainderCell">
[[HasDescription::{{{Description|}}}]]</td></tr>
{{{Description|}}}</td></tr>
}}
}}
{{#ifeq:{{{Dimension|}}}|||
{{#ifeq:{{{Dimension|}}}|||
<tr><td class="PageWidthTableFirstCell">'''Dimensions:'''</td>
<tr><td class="PageWidthTableFirstCell">'''Dimensions:'''</td>
<td class="PageWidthTableRemainderCell">
<td class="PageWidthTableRemainderCell">
{{#arraymap:{{{Dimension|}}}|,|x|[[HasDimension::x]]}}</td></tr>
{{{Dimension|}}}</td></tr>
}}
}}
{{#ifeq:{{{Unit|}}}|||
{{#ifeq:{{{Unit|}}}|||
<tr><td class="PageWidthTableFirstCell">'''Default unit:'''</td>
<tr><td class="PageWidthTableFirstCell">'''Default unit:'''</td>
<td class="PageWidthTableRemainderCell">
<td class="PageWidthTableRemainderCell">
[[HasDefaultUnit::{{{Unit|}}}]]</td></tr>
{{{Unit|}}}</td></tr>
}}
}}
{{#ifeq:{{{VariableType|}}}|||
{{#ifeq:{{{VariableType|}}}|||
<tr><td class="PageWidthTableFirstCell">'''Variable type:'''</td>
<tr><td class="PageWidthTableFirstCell">'''Variable type:'''</td>
<td class="PageWidthTableRemainderCell">
<td class="PageWidthTableRemainderCell">
[[HasVariableType::{{{VariableType|}}}]]</td></tr>
{{{VariableType|}}}</td></tr>
}}
}}
{{#ifeq:{{{DriverGroup|}}}|||
{{#ifeq:{{{DriverGroup|}}}|||
<tr><td class="PageWidthTableFirstCell">'''Driver group:'''</td>
<tr><td class="PageWidthTableFirstCell">'''Driver group:'''</td>
<td class="PageWidthTableRemainderCell">
<td class="PageWidthTableRemainderCell">
[[DriverGroup::{{{DriverGroup|}}}]]</td></tr>
{{{DriverGroup|}}}</td></tr>
}}
}}
{{#ifeq:{{{Source|}}}|||
{{#ifeq:{{{Source|}}}{{{Source2|}}}{{{Source3|}}}|||
<tr><td class="PageWidthTableFirstCell">'''Source:'''</td>
<tr><td class="PageWidthTableFirstCell">'''Source:'''</td>
<td class="PageWidthTableRemainderCell">
<td class="PageWidthTableRemainderCell">
{{#arraymap:{{{Source|}}}|;|x|[[HasSource::x]]}}</td></tr>
{{{Source|}}}{{{Source2|}}}{{{Source3|}}}</td></tr>
}}
}}
{{#ifeq:{{{BasedOn|}}}|||
{{#ifeq:{{{BasedOn|}}}{{{BasedOn2|}}}|||
<tr><td class="PageWidthTableFirstCell">'''Values based on:'''</td>
<tr><td class="PageWidthTableFirstCell">'''Values based on:'''</td>
<td class="PageWidthTableRemainderCell">
<td class="PageWidthTableRemainderCell">
{{#arraymap:{{{BasedOn|}}}|;|x|[[HasValuesBasedOn::x]]}}</td></tr>
{{{BasedOn|}}}{{{BasedOn2|}}}</td></tr>
}}
}}
{{#ifeq:{{{Reference|}}}|||
{{#ifeq:{{{Reference|}}}{{{Reference2|}}}{{{Reference3|}}}|||
<tr><td class="PageWidthTableFirstCell">'''Reference:'''</td>
<tr><td class="PageWidthTableFirstCell">'''Reference:'''</td>
<td class="PageWidthTableRemainderCell">
<td class="PageWidthTableRemainderCell">
{{#arraymap:{{{Reference|}}}|;|x|[[HasReference::x]]}}</td></tr>
{{{Reference|}}}{{{Reference2|}}}{{{Reference3|}}}</td></tr>
}}
}}
{{#ifeq:{{{Source2|}}}|||
</table><br/>
<tr><td class="PageWidthTableFirstCell">'''Source:'''</td>
 
<td class="PageWidthTableRemainderCell">
{{#ifeq:{{{VariableType|}}}
{{#arraymap:{{{Source2|}}}|;|x|[[HasSource::x]]}}</td></tr>
|driver
}}
|Drivers are described in the {{#ask:[[Category:Component]][[FrameworkElementType::driver component]]|format=Plainlist}} component.
{{#ifeq:{{{BasedOn2|}}}|||
|}}
<tr><td class="PageWidthTableFirstCell">'''Values based on:'''</td>
 
<td class="PageWidthTableRemainderCell">
{{#ifexpr:{{PropertyTestTemplate
[[HasValuesBasedOn::{{{BasedOn2|}}}]]</td></tr>
  |prop=HasOutputVar
  |page={{PAGENAME}}
  |reverse=1}}>0
  |''Variable is output of model component:''{{#ask:
[[{{PAGENAME}}]]
| mainLabel=Variable
| ?IsOutputOf = output
| format=graph
| graphname=outputvariable
| graphcolor=yes
| graphlink=yes
| graphlabel=yes
| nodeshape=box
| arrowdirection=TB
| relation=parent
| graphsize==
| limit=2000
}}
|}}<br/>
{{#ifexpr:{{PropertyTestTemplate
  |prop=HasInputVar
  |page={{PAGENAME}}
  |reverse=1}} >0
  |''Variable is input of model component(s):''{{#ask:
  [[{{PAGENAME}}]]
  | mainLabel=Variable
  | ?IsInputFor = input
  | format=graph
  | graphname=inputvariable
  | graphcolor=yes
  | graphlink=yes
  | graphlabel=yes
  | nodeshape=box
  | arrowdirection=TB
  | graphsize=9
  | limit=200
}}
}}
{{#ifeq:{{{Reference2|}}}|||
|}}
<tr><td class="PageWidthTableFirstCell">'''Reference:'''</td>
{{#ifexpr:{{PropertyTestTemplate
<td class="PageWidthTableRemainderCell">
  |prop=HasParameter
{{#arraymap:{{{Reference2|}}}|;|x|[[HasReference::x]]}}</td></tr>
  |page={{PAGENAME}}
}}
  |reverse=1}} > 0
{{#ifeq:{{{VariableType|}}}|model|
  |''External parameter is input of model component(s):''{{#ask:
<tr><td class="PageWidthTableFirstCell">'''Impact indicator:'''</td>
  [[{{PAGENAME}}]]
<td class="PageWidthTableRemainderCell">
  | mainLabel=Variable
[[IsImpactIndicator::{{{IsImpactIndicator|false}}}]]</td></tr>|
  | ?IsParameterOf = input parameter of
}}
  | format=graph
{{#ifeq:{{{ExternalModel|}}}|||
  | graphname=inputparameter
<tr><td class="PageWidthTableFirstCell">'''External model:'''</td>
  | graphcolor=yes
<td class="PageWidthTableRemainderCell">
  | graphlink=yes
{{#arraymap:{{{ExternalModel|}}}|;|y|[[HasExternalModel::y]]|; }}</td></tr>
  | graphlabel=yes
  | nodeshape=box
  | arrowdirection=TB
  | graphsize=9
  | limit=200
}}
}}
</table><br/>
|}}<br/>
 
''Variable''
{{#ask:[[Category:Variable]]
[[Category:Variable]][[HasPageName::{{PAGENAME}}]][[-HasInputVar::+]] OR
[[Category:Variable]][[HasPageName::{{PAGENAME}}]][[-HasParameter::+]]
| mainLabel=Variable
| ?-HasInputVar = input of
| ?-HasParameter = parameter of
| format=graph
| graphcolor=yes
| graphlink=yes
| graphlabel=yes
| nodeshape=box
| arrowdirection=TB
| relation=child
| graphsize=8
| limit=200
}}<br clear="all"/>
{{#ask:[[Category:Variable]][[HasPageName::{{PAGENAME}}]][[-HasOutputVar::+]]
| mainLabel=Variable
| ?-HasOutputVar = is input for
| format=graph
| graphcolor=yes
| graphlink=yes
| graphlabel=yes
| nodeshape=box
| arrowdirection=TB
| relation=parent
| graphsize=8
| limit=200
}}<br clear="all"/>
''Output model and/or input model(s) of variable''


* Click on a box to open the model component.
* Click on a box to open the model component.
[[Category:Variable]]
[[Category:Variable]]
 
<!-- property settings-->
[[HasPageName::{{PAGENAME}}| ]]
{{#set:HasLabel={{{Label|}}}
 
  |HasShortDescription={{{Description|}}}
</includeonly>
  |HasDescription={{{Description|}}}
  |HasDimension={{{Dimension|}}}|+sep=,
  |HasDefaultUnit={{{Unit|}}}
  |HasVariableType={{{VariableType|}}}
  |DriverGroup={{{DriverGroup|}}}
  |HasSource={{{Source|}}}{{{Source2|}}}{{{Source3|}}}|+sep=;
  |HasValuesBasedOn={{{BasedOn|}}}{{{BasedOn2|}}}|+sep=;
  |HasReference={{{Reference|}}}{{{Reference2|}}}{{{Reference3|}}}|+sep=;
}}
  {{#arraymap:
    {{#ask:[[HasInputVar::{{PAGENAME}}]][[Concept:AllComponentLevels]]|link=none|sep=;}}
    |;|xx
    |{{#set:IsInputFor=xx}}
    |}}
  {{#arraymap:
    {{#ask:[[HasOutputVar::{{PAGENAME}}]][[Concept:AllComponentLevels]]|link=none|sep=;}}
    |;|xx
    |{{#set:IsOutputOf=xx}}
    |}}
  {{#arraymap:
    {{#ask:[[HasParameter::{{PAGENAME}}]][[Concept:AllComponentLevels]]|link=none|sep=;}}
    |;|xx
    |{{#set:IsParameterOf=xx}}
    |}}</includeonly>

Latest revision as of 16:19, 17 April 2024

This is the "VariableTemplate" template. It should be called in the following format:

{{VariableTemplate
|Label=
|Description=
|Dimension=
|Unit=
|VariableType=
|DriverGroup=
|Source=
|BasedOn
|Reference
|Source2=
|BasedOn2=
|Reference2=
|Source3=
|Reference3=
}}

Edit the page to see the template text.