starting with version 6.15, pervasive started using a new modular method of separating the database backend from the interface that developers used. they separated the core database operations (like update, write and delete records) from the btrieve and scalable sql modules. by separating the micro-kernel database engine (mkde) from the other functions it allowed programmers to use several methods of accessing the database simultaneously. for instance, an application may be created using the btrieve api and another application that needs to access the same data may use a totally different method, like using scalable sql. because the record primitives have been separated from these methods, both applications can use the mkde to access the same data file.