Dev:How to edit and contribute to the Wiki

From railML 3 Wiki
Jump to navigation Jump to search
This wiki should be 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.


  • 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 (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 (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 assign writing permissions for our wikis to your account.
  • Log into the wiki at (link to the railML® website)
  • Now you can start contributing to all wikis to which you are assigned.

As a logged in user, you can set the interface language according to your preference.

How to contribute

As a registered User, you can edit the railML® wiki. Your contributions will be reviewed by a coordinator before being merged into the content. The changes are visible at a special page alsobefore the review.

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

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 respective wiki page
  3. Choose "Edit"!
  4. Extend or change the content by deploying the railML markup templates.
Please respect others' work and discuss changes prior to the edit in the appropriate forum (link to the railML® website).
Please be careful (especially with template parameters and with closing breckets). 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.
    ***{{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, 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



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).