Safecap is an Eclipse-based tool for entering and analysing railway junction schemas. The tool aims to be extensible and configurable and may be applied in a number of contexts such the analysis of control table for junction signals, assessment of capacity impact of signal positioning and train detection circuit boundaries, and also for conducting semi-automatic or automatic changes to schema topology or control tables.

The core of the tool are

There is an infrastructure in place to hook in various extension, such as connection to external verification or processing tools, patterns scripted in the Epsilon languge, etc. The notation used to define schemas may be extended with new attributes for the existing elements and also with new classes of connectors and nodes. For instance, one may define a new kind of track side equipment.

Within the eponymous SafeCap project we are working on developing translations from the internal DSL language into formal models describing the concrete semantics of a given schema. This enables us to use third-party constraint-solving, model checking and theorem proving tools to reason about various aspects of a railway junction.