Dev:Semantic Constraints: Difference between revisions

From railML 2 Wiki
Jump to navigation Jump to search
[checked revision][checked revision]
No edit summary
No edit summary
Line 5: Line 5:
Semantic constraints are even important as XSD constraints. If they are ignored, security issues may arise.
Semantic constraints are even important as XSD constraints. If they are ignored, security issues may arise.


Elements with semantic constraints are listed in [[:Category:Semantic constraints]]. On the element documentation pages the semantic constraints can be found in a dedicated chapter below the syntactic constraints.
Elements with approved semantic constraints are listed in [[:Category:Semantic constraints]]. On the element documentation pages, the semantic constraints can be found in a dedicated chapter below the syntactic constraints. Proposed semantic constraints are listed in [[:Category:Semantic constraints_proposed]]. A list of the introduction date of a semantic constraint can be found in the list below.
{{note|Semantic constraints that have been '''proposed before the 10th of December 2018''' shall be considered as '''approved''' until decided otherwise.


Every application of {{rml}} has to be checked not only on XML conformity but also on obediance of the semantic constraints.
Every application of {{rml}} has to be checked not only on XML conformity but also on the obedience of the semantic constraints.
==How to introduce Semantic Constraints==
Generally speaking, constraints should better be implemented syntactically in the schema. Please, follow the [[Dev:Guideline for participating in the development process|guideline for participating in the development process]].
 
If you see need for a ''semantic'' constraint beyond the schema, please discuss it in the {{site|https://www.railml.org/forum|forum}}. If there is consent, you may decide to add a proposal in the element documentation using [[Template:SemconProposal]]. Please, add the proposal to the list below! If the proposal is accepted, it will implemented in the wiki using [[Template:Semcon]].

Revision as of 14:03, 10 December 2018

Semantic constraints

XSD offers a variety of possibilities to define constraints. However, in some rare exceptions it is not possible to express an important rule in XSD. Rules that do not fit into XSD have to be expressed by words, semantically.

Semantic constraints are even important as XSD constraints. If they are ignored, security issues may arise.

Elements with approved semantic constraints are listed in Category:Semantic constraints. On the element documentation pages, the semantic constraints can be found in a dedicated chapter below the syntactic constraints. Proposed semantic constraints are listed in Category:Semantic constraints_proposed. A list of the introduction date of a semantic constraint can be found in the list below. {{note|Semantic constraints that have been proposed before the 10th of December 2018 shall be considered as approved until decided otherwise.

Every application of railML® has to be checked not only on XML conformity but also on the obedience of the semantic constraints.

How to introduce Semantic Constraints

Generally speaking, constraints should better be implemented syntactically in the schema. Please, follow the guideline for participating in the development process.

If you see need for a semantic constraint beyond the schema, please discuss it in the forum (link to the railML® website). If there is consent, you may decide to add a proposal in the element documentation using Template:SemconProposal. Please, add the proposal to the list below! If the proposal is accepted, it will implemented in the wiki using Template:Semcon.