In this paper, we introduce a framework which enables us to obtain various types of train scheduling systems. The framework is designed based on a simulation model which uses Coloured Petri Nets, in which train scheduling rules to cope with physical conditions of railway lines are expressed by structures of CP-nets, and rules to deal with operational conditions of railways are described by occurrence selection logic. Since physical conditions are embedded in the model, it is not necessary to explicitly write down codes concerning those conditions. This makes train scheduling systems developed using this framework quite compact and reliable. Also, development of train scheduling systems becomes simple, because rules of the former type and rules of the latter type are independently dealt with, and we can obtain train scheduling systems for various purposes only by customizing the transition occurrence selection logic.