Dev:How to join, edit and create the railML wiki: Difference between revisions

From railML 3 Wiki
Jump to navigation Jump to search
[unchecked revision][unchecked revision]
m (1 revision imported: http→https)
(3 intermediate revisions by the same user not shown)
Line 1: Line 1:
{|
{|
|This wiki should supporting the development of railML-schemes. It allows users to create new content and edit existing articles, and setup a comprehensive knowledge database to the railML standard.<br>
|This wiki should supporting the development of railML-schemes. It allows users to create new content and edit existing articles, and setup a comprehensive knowledge database to the railML standard.<br>
|{{Deu|Mit Hilfe dieses {{external|http://de.wikipedia.org/wiki/Wiki|Wikis|inlang=de|lang=de}} soll der Einstieg in die Entwicklung der railML-Teilschemen erleichtert werden. Es ermöglicht den Benutzern neue Inhalte zu schaffen, sowie vorhandene Beiträge zu bearbeiten und damit eine umfassende Wissensdatenbank zum railML-Standard aufzubauen.}}
|{{Deu|Mit Hilfe dieses {{external|https://de.wikipedia.org/wiki/Wiki|Wikis|inlang=de|lang=de}} soll der Einstieg in die Entwicklung der railML-Teilschemen erleichtert werden. Es ermöglicht den Benutzern neue Inhalte zu schaffen, sowie vorhandene Beiträge zu bearbeiten und damit eine umfassende Wissensdatenbank zum railML-Standard aufzubauen.}}
|}
|}
==Principles==
==Principles==
Line 8: Line 8:


== How to join the Wiki ==
== How to join the Wiki ==
To obtain editing privileges on the railML<sup>®</sup> wiki you have to register with {{site|http://www.railml.org|railML.org}} and then ask for a wiki account. Please, understand that the preference for writing privileges will be given to experienced users from registered partners, as we prefer a long lasting cooperation.
To obtain editing privileges on the railML<sup>®</sup> wiki you have to register with {{site|https://www.railml.org|railML.org}} and then ask for a wiki account. Please, understand that the preference for writing privileges will be given to experienced users from registered partners, as we prefer a long lasting cooperation.
*Register at {{site|http://www.railml.org/en/login-registration.html}}
*Register at {{site|https://www.railml.org/en/login-registration.html}}
*Send an e-mail to the coordinator (coordination ät raiML dot org). We appreciate you explaining us your motivation and working expericence with railML schemes.
*Send an e-mail to the coordinator (coordination ät raiML dot org). We appreciate you explaining us your motivation and working expericence with railML schemes.
*The coordinator will provide you a separate wiki account.
*The coordinator will provide you a separate wiki account.
Line 30: Line 30:
# Choose "Edit"!
# Choose "Edit"!
# Extend or change the content by deploying the [[dev:Special_Wiki_Markup| railML markup templates]].
# Extend or change the content by deploying the [[dev:Special_Wiki_Markup| railML markup templates]].
::Please respect others work and publish changements prior to the edit in the appropriate {{site|http://forum.railml.org|forum}}.
::Please respect others work and publish changements prior to the edit in the appropriate {{site|https://forum.railml.org|forum}}.
::Please be careful (especially with brackets), there are parameters to fill. Sometimes some surprise occurs after a preview.
::Please be careful (especially with brackets), there are parameters to fill. Sometimes some surprise occurs after a preview.
# Do the "preview" cycle. All fine?
# Do the "preview" cycle. All fine?
Line 98: Line 98:
<li>Define the wiki page name in the browser URL:
<li>Define the wiki page name in the browser URL:


<pre>http://wiki.railml.org/index.php?title=<sub-schema-prefix>:<element-name></pre>
<pre>https://wiki2.railml.org/wiki/<sub-schema-prefix>:<element-name></pre>


example: <code><nowiki>http://wiki.railml.org/index.php?title=IS:speedProfiles</nowiki></code> results in http://wiki.railml.org/index.php?title=IS:speedProfiles</li>
example: <code><nowiki>https://wiki2.railml.org/wiki/IS:speedProfiles</nowiki></code> results in https://wiki2.railml.org/wiki/IS:speedProfiles</li>


<li>You get a blank page with the possibility to "Edit".<br>
<li>You get a blank page with the possibility to "Edit".<br>
Line 175: Line 175:
<li>Define the wiki page name in the browser URL:
<li>Define the wiki page name in the browser URL:


<pre>http://wiki.railml.org/index.php?title=<sub-schema-prefix>:<element-name>_<parent-element-name></pre>
<pre>https://wiki2.railml.org/wiki/<sub-schema-prefix>:<element-name>_<parent-element-name></pre>


example: <code><nowiki>http://wiki.railml.org/index.php?title=IS:geoCoord_mileageChange</nowiki></code> results in http://wiki.railml.org/index.php?title=IS:geoCoord_mileageChange</li>
example: <code><nowiki>https://wiki2.railml.org/wiki/IS:geoCoord_mileageChange</nowiki></code> results in https://wiki2.railml.org/wiki/IS:geoCoord_mileageChange</li>


<li>You get a blank page with the possibility to "Edit".<br>
<li>You get a blank page with the possibility to "Edit".<br>
Line 183: Line 183:
Choose "edit" or {{Deu | bearbeiten}}!</li>
Choose "edit" or {{Deu | bearbeiten}}!</li>


<li>Search the appropriate [[:Category:Element_Template| template for element content]] to deploy.</li>
<li>Search the appropriate {{wiki2|:Category:Element_Template|template for element content}} to deploy.</li>


<li>Insert the template into the blank editor
<li>Insert the template into the blank editor

Revision as of 18:34, 22 March 2021

This wiki should supporting the development of railML-schemes. It allows users to create new content and edit existing articles, and setup a comprehensive knowledge database to the railML standard.
Mit Hilfe dieses Wikis (externer Link, 🇩🇪) soll der Einstieg in die Entwicklung der railML-Teilschemen erleichtert werden. Es ermöglicht den Benutzern neue Inhalte zu schaffen, sowie vorhandene Beiträge zu bearbeiten und damit eine umfassende Wissensdatenbank zum railML-Standard aufzubauen.

Principles

  • As a small community we have a real name policy and give writing privileges only to registered Users. The registration procedure is explained below. Edits will become visible to the public only after review. If you decide not to register we will yet appreciate your feedback via e-mail.
  • Please, follow both the common rules of a beneficial coexistence and the Guidelines of this wiki.

How to join the Wiki

To obtain editing privileges on the railML® wiki you have to register with railML.org (link to the railML® website) and then ask for a wiki account. Please, understand that the preference for writing privileges will be given to experienced users from registered partners, as we prefer a long lasting cooperation.

  • Register at https://www.railml.org/en/login-registration.html (link to the railML® website)
  • Send an e-mail to the coordinator (coordination ät raiML dot org). We appreciate you explaining us your motivation and working expericence with railML schemes.
  • The coordinator will provide you a separate wiki account.
  • Log into the wiki at Special:UserLogin
  • Now you can start contributing.

As a logged in user, you can set the interface language by you whish.

How to contribute

As a registered User, you can edit the railML® wiki. Your contributions will be reviewed by a coordinator bevore merged to the checked stuff. The changes are visible at a special page also short after editing.

The principles of editing a wiki are explained here (external link).

As of January 2020 we do not yet offer the VisualEditor (external link) you may know from Wikipedia (external link), as it is not yet stable and requires additional alpha software.

Please, stick to our common templates to allow for a standardized documentation. Some essential templates are explained on railML markup templates. Especially, employ template:external for external links.

Edit a page

In the case you want to change or extend some content on a certain element documentation page, do the following:

  1. Log in or register
  2. Go to the certain wiki site
  3. Choose "Edit"!
  4. Extend or change the content by deploying the railML markup templates.
Please respect others work and publish changements prior to the edit in the appropriate forum (link to the railML® website).
Please be careful (especially with brackets), there are parameters to fill. Sometimes some surprise occurs after a preview.
  1. Do the "preview" cycle. All fine?
  2. Describe your changes with "Summary".
  3. Submit your changes with "Save"
  4. Done. Thank you for your contribution.

Adjust the XML tree

  1. Go to the XML tree wiki page
  2. Press "Edit" or Bearbeiten
  3. Crawl to the right position in the railML tree
    Instead of scrolling there, it's easier to "search" for the parent element
  4. Insert a new element with a new line at the appropriate position, if necessary
    Only insert one line for each different element no matter how often it may occur at this certain position in the XML instance document.
    • Start with the appropriate number of stars "*" indicating the depth in the XML tree.
    • Choose the appropriate element documentation page deploying the link in angle brackets
    • Add all possible attributes deploying the Attribute template, separated by comma
      The inherited ones come at least (that's for some quick validation purposes of this page, that may be roughly generated by an XQuery search)
      No matter, if the attributes are optional or mandatory.
    example:
    ***{{TT:Tag|train}} {{Attr|type}}, {{Attr|trainNumber}}, {{Attr|additionalTrainNumber}}, {{Attr|scope}}, {{Attr|processStatus}}, {{Attr|id}}, {{Attr|code}}, {{Attr|name}}, {{Attr|description}}, {{Attr|xml:lang}}
    
  5. Describe your changes with "Summary" or Zusammenfassung
  6. Check your changes with "Preview" or Vorschau
    Adjust the page text where needed
  7. Submit your changes with "Save" or Speichern
  8. Done. Thank you for your contribution.

Start a new railML Wiki page for a new railML element

The documentation paradigm of railML® 2 and railML® 3 differ fundamentally. Therefore,the processes will be described separately, beginning with railML® 3.

In railML® 3

In railML® 3, new element pages are generated automatically. They will contain default chapters. Feel free to add content.

Don't remove or expand template:robot!  
Don't edit the automatically maintained version pages!

These pages contain template:Schemaexport and their pagenames end with a version number, e.g.: /3.1

 


In railML® 2

Elements without parent inheritance

Some railML elements are re-used across the sub-schemas, e.g. "geoCoord", "valueTable", "efficiency", "*Ref". This section does not cover these re-used elements. See next section.

If some currently independently defined railML element is changed into a "general" element and used in "parent inheritance" an according wiki template should be defined and deployed in the original and the new element.

  1. Define the wiki page name in the browser URL:
    https://wiki2.railml.org/wiki/<sub-schema-prefix>:<element-name>
    example: https://wiki2.railml.org/wiki/IS:speedProfiles results in https://wiki2.railml.org/wiki/IS:speedProfiles
  2. You get a blank page with the possibility to "Edit".
    Choose "edit" or bearbeiten!
  3. Insert the element documentation template into the blank editor
    {{ElementDocu}}
    Do the "preview" cycle. :-) Do you encounter some "FIXME" strings? Go further.
  4. Insert parameters, they may occur in any order.
    {{ElementDocu
    |elementName
    |parent
    |childs
    |semantics
    |inheritedAttributes
    |ownAttributes
    |constraints
    |notes
    |example
    }}
    

    Do the "preview" cycle. :-) Nothing changed? That's good news. Go further.

  5. Insert some further information.
    Deploy railML markup templates whereever useful.
    example:
    {{ElementDocu
    |elementName = speedProfiles
    |parent =  {{IS:Tag|infrastructure}}
    |childs = {{IS:Tag|speedProfile}}
    |semantics =
    The element {{IS:Tag|speedProfiles}} works as a "container element" for {{IS:Tag|speedProfile}} elements.
    
    |inheritedAttributes
    |ownAttributes
    |constraints
    |notes
    |example
    }}
    

    Do the "preview" cycle. :-) "FIXME"s left? Fine.

    Leave other parameters blank for easier later edition by other authors.

  6. Describe your changes with "Summary" or Zusammenfassung
  7. Submit your changes with "Save" or Speichern
  8. Done. Thank you for your contribution.

Elements with parent inheritance

Some railML elements are re-used across the sub-schemas, e.g. "geoCoord", "valueTable", "efficiency", "*Ref". The wiki provides general documentation templates for these elements that may be extended by special information for this certain semantics.

For all other elements jump to the previous section.

If some currently independently defined railML element is changed into a "general" element and used in "parent inheritance" an according wiki template should be defined and deployed in the original and the new element.

  1. Define the wiki page name in the browser URL:
    https://wiki2.railml.org/wiki/<sub-schema-prefix>:<element-name>_<parent-element-name>
    example: https://wiki2.railml.org/wiki/IS:geoCoord_mileageChange results in https://wiki2.railml.org/wiki/IS:geoCoord_mileageChange
  2. You get a blank page with the possibility to "Edit".
    Choose "edit" or bearbeiten!
  3. Search the appropriate template for element content to deploy.
  4. Insert the template into the blank editor
    {{<template-name-without-prefix>}}

    example: {{InheritAdditionalName}}

    Do the "preview" cycle. :-) Do you encounter some "FIXME" strings? Go further.
  5. Insert parameters
    {{<template-name-without-prefix>
    |<parameter-name>
    }}

    You will find all possible parameters of a template by searching for {{{...}}} in the template plain code. They may occur in any order.

    example:

    {{InheritAdditionalName
    |parentLink=
    |selfLink=
    |semantics_en=
    |semantics_de=
    |constraints_en=
    |constraints_de=
    |notes_en=
    |notes_de=
    |name=
    |name_de=
    |description=
    |description_de=
    |childs=
    |inheritedAttributes=
    |attributes_en=
    |attributes_de=
    |example=
    |intro=
    |depr=
    }}
    

    Do the "preview" cycle. :-) Nothing changed? That's good news. Go further.

  6. Insert some special information that is valid only for this element in a certain position of the XML tree.
    Deploy railML markup templates whereever useful.
    example:
    |parentLink = {{IS:Tag|mileageChange}}
    |selfLink = {{IS:Tag|geoCoord|mileageChange}}
    

    Do the "preview" cycle. :-) "FIXME"s left? Fine.

    Leave other parameters blank for easier later edition by other authors.

    If there are some further explanations, that are not only important for the current element but for all elements of this kind, please edit the template.

  7. Describe your changes with "Summary" or Zusammenfassung
  8. Submit your changes with "Save" or Speichern
  9. Done. Thank you for your contribution.

Support

We appreciate your interest to contribute to the railML® wiki and will try to support you.

  • A documentation for the mediawiki sofware which is the basis of this wiki can be found here (external link).
  • Please, follow our Wiki Documentation Guidelines.
  • Questions referring to the use of this wiki are welcome on the discussion page.
  • Please, act responsibly with contacting the webmaster (webmaster ät railml dot org).