Partitions and namespaces in the data model
Namespaces are a logical categorization system that enables you to partition the data model by prepending the namespace to classes and attributes. You can use namespaces to identify data. On the other hand, datasets enable you to partition instance data.
Example of a dataset and namespace
You can use namespaces for the following purposes:
- Partitioning of classes and attributes based on provider or consumer of a type of data, or other arbitrary groupings.
For example, all classes in Common Data Model are in the
BMC.COREnamespace, and all other classes provided by BMC CMDB containing configuration definitions are in the
- Labeling to identify classes that serve different purposes.
- Creation of unique names for classes.
- Provide logical categorization system for the data model.
- Use namespaces in reconciliation definitions to include data that is stored for a particular purpose instead of lengthy qualifications.
Other BMC products that extend the data model, such as BMC Discovery, create their own namespaces to hold the new classes and attributes. Likewise, BMC extensions that are distributed independently of BMC products use their own namespaces.
Namespaces can be applied at the attribute level as well as the class level. This means that some, or even all, of the attributes of a class can reside in a different namespace from the class itself. This is useful when you have a class that is used for more than one purpose, but one of those purposes requires an extra attribute.
BMC.CORE. This prevents your extensions from being overwritten by new classes when you upgrade to a future version of the CDM. When creating namespaces, use the naming convention
COMPANYNAME.PURPOSE. For example, if the Calbro Services company created a set of classes for storing data about buildings and other facilities-related CIs, they might store them in the namespace