The purpose of libsmi's core, the library
libsmi, is to
give network management applications a concise
programmer-friendly interface to access MIB and PIB module
information through a common interface, independent of the
underlying data modelling language and version,
supply efficient validating parsers for SMI and SPPI modules,
supply a modular architecture that allows to add future sources
of MIB/PIB definitions without the need to modify existing
applications that use the library.
The library interface allows a management application developer to
access all information shown in the UML diagram through
explicitly named identifiers, e.g. IF-MIB::ifTable, or
through iterating functions to retrieve MIB definitions that an
application does not yet know, e.g. for MIB browsers.