|LFX Database of Managed Objects (DMO): User Guide for the Database of Managed Objects|
|<<< Previous||Next >>>|
Within the DMO, a Definition is an Object's generic description, that is sufficiently specific as to distinguish it from an object of a different type. Generic means we are talking about classes of objects, rather than individual instances of the objects themselves. For example, a Definition might be "Vehicle", while a specific instance of a vehicle might be "Nissan 350Z, Blue, Chassis #34545755531". Reflecting on this definition however shows that it might not be sufficiently specific, if we have different types of vehicles. For example, we might need to distinguish between "Car", "Truck", "Bus", "Plane" and "Other." All of these are types of vehicles, but each is clearly of a different type. In that context, we are actually building a tree of definitions, where each more specific type constrains the class of objects which belong under that part of the tree.
The tree above shows one way to look at a hierarchy of definitions, but of course there are many others, and one of the design goals of DMO was to be totally flexible. Although we provide a set of more than 200 definitions by default, the user may completely replace them with their own tree design, which should map onto the real-world application they wish to solve. If you do make a definition, you need to keep in mind the following simple rules:
Each Definition must have a unique name. Spaces may be used, but avoid punctuation or special characters (especially the "/" must not be used.)
Every Definition should fit into a logical place in the hierarchy. If you can't find the right place, then create a new second-level category.
The Definition tree has a single root, which is usually the name of the organisation which owns the tree.
Every definition (with the exception of the root) MUST have a single parent definition. This defines its place in the tree. Note that it is possible to move definitions from one part of the tree to another, by changing its parent. (Beware that certain assumptions are made by Event Horizon and Policy Compliance Manager which may be broken if this is done, so take care. If in doubt, ask Lanifex.)
One definition cannot exist in two different parts of the tree at the same time. If they share common characteristics, think about reorganising the tree to make them both part of the same branch.
For each definition you create, think about whether it is really the abstraction you are dealing with, or a specific instance. It's also possible to go too far in splitting things into types and categories -- for example, you might have a definition for "Cars", and then decide to make several sub-definitions such as "Sports Car", "Wagon", "SUV", "Coupe", etc. Instead, a better approach may be to simply have one definition, "Car", and then use an attribute called "Type" which can distinguish better between them.