[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Conventions for representing inheritance in MIBs
Hello,
I'm sure this question has been asked before, but I am curious if anyone has
thought about how Inheritance can be consistently represented in MIBs and if
there are conventions for representing inheritance within the SMI. By
inheritance I mean a hierarchical specialization of a common parent similar
to the existing functionality provided by AUGMENTS (extending one
object-type sequence with another). Only AUGMENTS appears to be too limited
to describe the full semantics needed by inheritance.
Inheritance example:
Base
^
|
____|____
| |
| |
Child1 Child2
^
|
____|____
| |
| |
Child3 Child4
So, when instantiating Child3, I also want to instantiate its parent,
Child1, and their common Base, but none of the others. Similarly, when
instantiating Child1, I should get it and the Base, but nothing else.
Possibly all related instances should be indexed accordingly or otherwise
associated.
The advantage of inheritance is that it provides a mechanism for independent
specializations. Thus, common attributes can be defined in a base object
with well understood semantics, which can then be extended in a variety of
ways (via new object-types).
I realize that the concept can certainly be mapped into a MIB, but are there
any common conventions for doing so? Perhaps textual conventions that could
be defined so that compilers would automatically know the necessary
semantics?
Thanks for any input,
-Dave