Template:ElementDocu: Difference between revisions

From railML 2 Wiki
Jump to navigation Jump to search
[checked revision][checked revision]
No edit summary
No edit summary
 
(40 intermediate revisions by the same user not shown)
Line 1: Line 1:
<includeonly>
<includeonly>{{#vardefine:autitle|{{doc|{{#sub:{{PAGENAME}}|0|2}}|{{#sub:{{#explode:{{PAGENAME}}| |0}}|3}}}}}}<!--
{{head|{{{elementName|FIXME}}}}}
 
{{#if:{{{intro|}}}|{{note|{{intro|{{{intro}}}}}<br>This element was introduced with '''version {{{intro}}}'''.<br />{{deu|Dieses Element wurde mit '''Version {{{intro}}}''' eingeführt.}}|reminder}}}}
Defaultparent
-->{{#vardefine:slug|{{#sub:{{PAGENAME}}|0|2}}}}<!--
-->{{#vardefine:erlEnd|{{#explode:{{PAGENAME}}| |1}}}}<!--
-->{{#vardefine:defPar|{{#ifeq:{{#var:erlEnd}}||''Not yet described. / {{Deu|Noch nicht beschrieben.}}''|{{tag|{{#var:slug}}|{{#var:erlEnd}}}}}}}}
__NOEDITSECTION__
{{head|{{{elementName|{{#var:autitle}}}}}}}
{{#switch:{{{intro}}}
|2.5={{note|{{intro|{{{intro}}}}}<br>This element was introduced with '''version {{{intro}}}'''.<br />{{deu|Dieses Element wurde mit '''Version {{{intro}}}''' eingeführt.}}|reminder}}}}
{{#if:{{{depr|}}}|{{note|{{depr|{{{depr}}}}}<br>This element was deprecated with '''version {{{depr}}}'''<br />{{deu|Dieses Element wurde mit '''Version {{{depr}}}''' abgeschafft.}}|reminder}}}}
{{#if:{{{depr|}}}|{{note|{{depr|{{{depr}}}}}<br>This element was deprecated with '''version {{{depr}}}'''<br />{{deu|Dieses Element wurde mit '''Version {{{depr}}}''' abgeschafft.}}|reminder}}}}
== Scheme description / {{Deu|Schemenbeschreibung}} / {{Fra|Description du schéma}} ==
== Scheme description / {{Deu|Schemenbeschreibung}} ==
=== Position of {{{elementName|FIXME}}} in the XML-Tree / {{Deu|Position von {{{elementName|FIXME}}} im XML-Baum}} / {{Fra|position de {{{elementName|FIXME}}} dans l’aborescence XML}} ===
=== Position of {{{elementName|{{#var:autitle}}}}} in the XML-Tree / {{Deu|Position von {{{elementName|{{#var:autitle}}}}} im XML-Baum}} ===
 
* Parent: {{{parent|{{#var:defPar}}}}}
* Parent: {{{parent|''Not yet described. / {{Deu|Noch nicht beschrieben.}} / {{Fra|Pas encore décrit.}}''}}}
* Children: {{{childs|''Not yet described. / {{Deu|Noch nicht beschrieben.}}''}}} {{checkState|{{{childs}}}}}
 
* Children: {{{childs|''Not yet described. / {{Deu|Noch nicht beschrieben.}} / {{Fra|Pas encore décrit.}}''}}}
 
{{anchor|multiplicity}}
{{anchor|multiplicity}}
===Multiplicity / {{Deu|Anzahl}} / {{fra|Multiplicité}} ===
===Multiplicity / {{Deu|Anzahl}} ===
[[dev:Multiplicity|<nowiki>[</nowiki>{{{minocc|1}}}..{{{maxocc|1}}}<nowiki>]</nowiki>]]
[[dev:Multiplicity|<nowiki>[</nowiki>{{{minocc|1}}}..{{{maxocc|1}}}<nowiki>]</nowiki>]]{{#if:{{{minocc|}}}||[[category:minocc]]}}{{#if:{{{maxocc|}}}||[[category:maxocc]]}}{{#if:{{{multi|}}}|<br>{{{multi}}}}}
{{#if:{{{minocc|}}}||[[category:minocc]]}}
{{#if:{{{maxocc|}}}||[[category:maxocc]]}}
{{{multi|}}}
{{anchor|semantics}}
{{anchor|semantics}}
=== Semantics / {{Deu|Bedeutung}} / {{Fra|Sémantique}} ===
=== Semantics / {{Deu|Bedeutung}} ===
 
{{{semantics|{{FIXME}}: The element semantics are missing}}}<!--
{{{semantics|FIXME}}}
-->{{#if:{{{intro|}}}|{{intro|&#32;{{{intro}}}}}}}{{#if:{{{depr|}}}|&#32;{{depr|{{{depr}}}}}}}<!--
{{#if:{{{semcon|}}}|<br>&nbsp;<br>{{semconHint}}}}
-->{{#if:{{{semcon|}}}|<br>&nbsp;<br>{{semconHint}}}}<!--
===Attributes of {{{elementName|FIXME}}} / {{Deu|Attribute von {{{elementName|FIXME}}}}} / {{Fra|Attributs de {{{elementName|FIXME}}}}} ===
-->{{#if:{{#var:interwiki{{current}}}}|<br>&nbsp;<br>The corresponding {{rml|3}} element is {{otherlink|{{#var:interwiki}}}}.}}<!--
-->{{#if:{{{interwiki|}}}|<br>&nbsp;<br>The corresponding {{rml|3}} element is {{otherlink|{{{interwiki}}}}}.{{interwiki|{{{interwiki}}}}}|{{#vardefine:controlInterwiki|y}}}}
===Attributes of {{{elementName|{{#var:autitle}}}}} / {{Deu|Attribute von {{{elementName|{{#var:autitle}}}}}}} ===
{{#if:{{Boolandnoteq|{{{inheritedAttributes|}}}|{{{inheritedAttributes}}}|''None''}}
{{#if:{{Boolandnoteq|{{{inheritedAttributes|}}}|{{{inheritedAttributes}}}|''None''}}
|{{#if:{{Boolandnoteq|{{{ownAttributes|}}}|{{{ownAttributes}}}|''None''}}
|{{#if:{{Boolandnoteq|{{{ownAttributes|}}}|{{{ownAttributes}}}|''None''}}
Line 29: Line 32:
|<!--inherited nicht-->{{#if:{{Boolandnoteq|{{{ownAttributes|}}}|{{{ownAttributes}}}|''None''}}
|<!--inherited nicht-->{{#if:{{Boolandnoteq|{{{ownAttributes|}}}|{{{ownAttributes}}}|''None''}}
|<!--nur own-->{{{ownAttributes}}}
|<!--nur own-->{{{ownAttributes}}}
|<!--keines-->{{#if:{{{inheritedAttributes|}}}{{{ownAttributes|}}}|''None''|''Not yet described. / {{Deu|Noch nicht beschrieben.}} / {{Fra|Pas encore décrit.}}''}}<!--viertes if zu-->}}<!--drittes if zu-->
|<!--keines-->{{#if:{{{inheritedAttributes|}}}{{{ownAttributes|}}}|''None''|''Not yet described. / {{Deu|Noch nicht beschrieben.}}''}}<!--viertes if zu-->}}<!--drittes if zu-->
}}<!--erstes if zu-->
}}<!--erstes if zu-->
=== Syntactic Constraints / {{Deu|Syntaktische Beschränkungen}} / {{Fra|Contraintes syntactiques}} ===
=== Syntactic Constraints / {{Deu|Syntaktische Beschränkungen}} ===
 
{{#vardefine:const|{{#ifeq:{{{ownAttributes}}}|''None''|''None''|''Not yet described. / {{Deu|Noch nicht beschrieben.}}''}}}}
{{{constraints|''Not yet described. / {{Deu|Noch nicht beschrieben.}} / {{Fra|Pas encore décrit.}}''}}}
{{{constraints|{{#var:const}}}}}
{{#if:{{{semcon|}}}|<div id="semcon"></div>
{{#if:{{{semcon|}}}|<div id="semcon"></div>
<div id="semcon"></div>
<div id="semcon"></div>
===Semantic Constraints / {{deu|Semantische Beschränkungen}} / {{Fra|Contraintes semantiques}} ===
===Semantic Constraints / {{deu|Semantische Beschränkungen}} ===
{{{semcon}}}
{{{semcon}}}
}}
}}
== Best practice & Examples / {{Deu|Empfohlene Anwendung & Beispiele}} / {{Fra|Bonnes pratiques & exemples}} ==
== Best practice & Examples / {{Deu|Empfohlene Anwendung & Beispiele}} ==


{{#if:{{{bestpractice|}}}|{{{bestpractice}}}|{{#if:{{{example|}}}|{{{example}}}|''Not yet described. / {{Deu|Noch nicht beschrieben.}} / {{Fra|Pas encore décrit.}}''}}}}
{{#if:{{{bestpractice|}}}|{{{bestpractice}}}|{{#if:{{{example|}}}|{{{example}}}|''Not yet described. / {{Deu|Noch nicht beschrieben.}}''}}}}
<!--{{{bestpractice|''Not yet described. / {{Deu|Noch nicht beschrieben.}} / {{Fra|Pas encore décrit.}}''}}}-->
<!--{{{bestpractice|''Not yet described. / {{Deu|Noch nicht beschrieben.}}''}}}-->
<!--
<!--
== Additional information / {{Deu|Zusätzliche Informationen}} / {{Fra|Information supplémentaire}}  ==
== Additional information / {{Deu|Zusätzliche Informationen}}  ==
-->
-->
== Notes / {{Deu|Anmerkungen}} / {{Fra|Notes}} ==
== Notes / {{Deu|Anmerkungen}} ==


{{{notes|''Not yet described. / {{Deu|Noch nicht beschrieben.}} / {{Fra|Pas encore décrit.}}''}}}
{{{notes|''Not yet described. / {{Deu|Noch nicht beschrieben.}}''}}}
<!--
{{#if:{{{ref|}}}|
=== Example / {{Deu|Beispiel}} / {{Fra|Exemple}} ===
== References / {{Deu|Einzelnachweise}} ==
<references />}}
== Open issues / {{Deu|Offene Punkte/Pendenzen}} ==


{{{example|''Not yet described. / {{Deu|Noch nicht beschrieben.}} / {{Fra|Pas encore décrit.}}''}}}
{{{openissues|''Not yet described. / {{Deu|Noch nicht beschrieben.}}''}}}
-->
== Open issues / {{Deu|Offene Punkte/Pedenzen}} / {{Fra|Questions ouvertes}} ==
 
{{{openissues|''Not yet described. / {{Deu|Noch nicht beschrieben.}} / {{Fra|Pas encore décrit.}}''}}}


[[Category:{{
[[Category:{{
Line 76: Line 77:
*Position in the XML-Tree
*Position in the XML-Tree
**Parent
**Parent
**Children: {{{childs|''Not yet described. / {{Deu|Noch nicht beschrieben.}} / {{Fra|Pas encore décrit.}}''}}}
**Children: {{{childs|''Not yet described. / {{Deu|Noch nicht beschrieben.}}''}}}
*Semantics
*Semantics
*Attributes
*Attributes
Line 100: Line 101:
**maxocc – the maximum of occurances – default=1
**maxocc – the maximum of occurances – default=1
**multi – Some comment to the multiplicity. E.g. version changes
**multi – Some comment to the multiplicity. E.g. version changes
**interwiki – The corresponding {{rml|3}} element (if applicable; use carefully!).
**ref – Produces a references paragraph. Set ref=1 to display the references if applicable.
*Arguments to be discontinued — '''Do not use them anymore'''
*Arguments to be discontinued — '''Do not use them anymore'''
**inheritedAttributes — inherited attributes from other data types — use ''ownAttributes'', as the distinction between own and inherited attributes will no longer be presented in this wiki.
**inheritedAttributes — inherited attributes from other data types — use ''ownAttributes'', as the distinction between own and inherited attributes will no longer be presented in this wiki.
**bestpractice — use ''example'', as the paragraphs ''Best Practice'' and ''Examples'' have been merged
**bestpractice — use ''example'', as the paragraphs ''Best Practice'' and ''Examples'' have been merged
===Dependencies===
===Dependencies===
The template depends on [[Template:Deu]] and [[Template:Fra]]. There is abig number of templates building on Template:ElementDocu.
The template depends on [[Template:Deu]]. There is abig number of templates building on Template:ElementDocu.


==Example==
==Example==
<nowiki>{{Template:ElementDocu|ElementName=SomeSampleElement|semantics=''This is an example. For readability reasons it is boxed.''}}</nowiki>
<nowiki>{{ElementDocu|ElementName=SomeSampleElement|semantics=''This is an example. For readability reasons it is boxed.''}}</nowiki>


delivers
delivers
{|border="5"
{|border="5"
|
|{{ElementDocu|ElementName=SomeSampleElement|semantics=''This is an example. For readability reasons it is boxed.''}}
== Scheme description / {{Deu|Schemenbeschreibung}} / {{Fra|Description du schéma}} ==
=== Position of FIXME in the XML-Tree / {{Deu|Position von FIXME im XML-Baum}} / {{Fra|position de FIXME dans l’aborescence XML}} ===
 
* Parent: ''Not yet described. / {{Deu|Noch nicht beschrieben.}} / {{Fra|Pas encore décrit.}}''
 
* Children: ''Not yet described. / {{Deu|Noch nicht beschrieben.}} / {{Fra|Pas encore décrit.}}''
 
=== Semantics / {{Deu|Bedeutung}} / {{Fra|Sémantique}} ===
 
''This is an example. For readability reasons it is boxed.''
 
===Attributes of FIXME  / {{Deu|Attribute von FIXME}} / {{Fra|Attributs de FIXME}} ===
{{#if:{{Boolandnoteq||{{{inheritedAttributes}}}|''None''}}
|{{#if:{{Boolandnoteq||{{{ownAttributes}}}|''None''}}
|<!--beide if treffen zu-->{{{inheritedAttributes}}}
{{{ownAttributes}}}
|<!--nur inherited besteht-->{{{inheritedAttributes}}}<!--zweites if zu-->}}
|<!--inherited nicht-->{{#if:{{Boolandnoteq||{{{ownAttributes}}}|''None''}}
|<!--nur own-->{{{ownAttributes}}}
|<!--keines-->{{#if:|''None''|''Not yet described. / {{Deu|Noch nicht beschrieben.}} / {{Fra|Pas encore décrit.}}''}}<!--viertes if zu-->}}<!--drittes if zu-->
}}<!--erstes if zu-->
=== Constraints / {{Deu|Beschränkungen}} / {{Fra|Contraintes}} ===
 
''Not yet described. / {{Deu|Noch nicht beschrieben.}} / {{Fra|Pas encore décrit.}}''
 
== Best practice & Examples / {{Deu|Empfohlene Anwendung & Beispiele}} / {{Fra|Bonnes pratiques & exemples}} ==
 
{{#if:|{{{bestpractice}}}|{{#if:|{{{example}}}|''Not yet described. / {{Deu|Noch nicht beschrieben.}} / {{Fra|Pas encore décrit.}}''}}}}
<!--{{{bestpractice|''Not yet described. / {{Deu|Noch nicht beschrieben.}} / {{Fra|Pas encore décrit.}}''}}}-->
<!--
== Additional information / {{Deu|Zusätzliche Informationen}} / {{Fra|Information supplémentaire}}  ==
-->
== Notes / {{Deu|Anmerkungen}} / {{Fra|Notes}} ==
 
''Not yet described. / {{Deu|Noch nicht beschrieben.}} / {{Fra|Pas encore décrit.}}''
<!--
=== Example / {{Deu|Beispiel}} / {{Fra|Exemple}} ===
-->
''Not yet described. / {{Deu|Noch nicht beschrieben.}} / {{Fra|Pas encore décrit.}}''
 
== Open issues / {{Deu|Offene Punkte/Pedenzen}} / {{Fra|Questions ouvertes}} ==
 
''Not yet described. / {{Deu|Noch nicht beschrieben.}} / {{Fra|Pas encore décrit.}}''
|}
|}



Latest revision as of 14:40, 3 July 2023

Usage

This template is the working horse of element documentation. It provides a standardized framework on which a number of ohter templates build upon.

Aricles employing the template have the following structure:

  • Scheme description
  • Position in the XML-Tree
    • Parent
    • Children: Not yet described. / Noch nicht beschrieben.
  • Semantics
  • Attributes
  • Constraints
  • Best practice & Examples
  • Notes
  • Open issues

Arguments

  • Obligatory:
    • elementName — the name of the element
    • semantics — a human readable explanation of the function of the described element
  • Optional:
    • parent — the name of the parent node within the XML tree
    • childs — the children nodes
    • ownAttributes — specific, not inherited attributes of this element
    • constraints
    • notes — general notes
    • example
    • openissues — comments on open issues
    • intro – You can optionally enter the version when the element was introduced. It will produce a reminder at the top of the article
    • depr – You can optionally enter the version when the element was deprecated. It will produce a reminder at the top of the article
    • minocc – the minimum number of occurances – default=1
    • maxocc – the maximum of occurances – default=1
    • multi – Some comment to the multiplicity. E.g. version changes
    • interwiki – The corresponding railML® 3 element (if applicable; use carefully!).
    • ref – Produces a references paragraph. Set ref=1 to display the references if applicable.
  • Arguments to be discontinued — Do not use them anymore
    • inheritedAttributes — inherited attributes from other data types — use ownAttributes, as the distinction between own and inherited attributes will no longer be presented in this wiki.
    • bestpractice — use example, as the paragraphs Best Practice and Examples have been merged

Dependencies

The template depends on Template:Deu. There is abig number of templates building on Template:ElementDocu.

Example

{{ElementDocu|ElementName=SomeSampleElement|semantics=''This is an example. For readability reasons it is boxed.''}}

delivers

mentDocu
 


Scheme description / Schemenbeschreibung

Position of mentDocu in the XML-Tree / Position von mentDocu im XML-Baum

  • Parent: Not yet described. / Noch nicht beschrieben.
  • Children: Not yet described. / Noch nicht beschrieben.

Multiplicity / Anzahl

[1..1]

Semantics / Bedeutung

This is an example. For readability reasons it is boxed.

Attributes of mentDocu / Attribute von mentDocu

Not yet described. / Noch nicht beschrieben.

Syntactic Constraints / Syntaktische Beschränkungen

Not yet described. / Noch nicht beschrieben.

Best practice & Examples / Empfohlene Anwendung & Beispiele

Not yet described. / Noch nicht beschrieben.

Notes / Anmerkungen

Not yet described. / Noch nicht beschrieben.

Open issues / Offene Punkte/Pendenzen

Not yet described. / Noch nicht beschrieben.

An example of the application of this template afield is IS:signal.