1. A method of implementing a self adapting driver for controlling datapath hardware elements of a network element, the method comprising the steps of: providing a virtual table schema definition; parsing the virtual table schema definition to specify a configuration library containing a set of data structures defining a mapping between a set of virtual tables and a set of physical tables used by the datapath hardware elements of the network element to make forwarding decisions for packets of data being transported on a communication network, and to specify a set of functions to be used to access the data structures; using a generic driver to access the data structures via the set of functions to map data from records in the virtual tables to records in the physical tables.