This article explains the basics of the SystemWeaver meta model. Even as an end-user, having a basic understanding of it is helpful for understanding your system's models and processes. If you are a SystemWeaver Architect, you will find more information on meta models in the meta modelling basic training.
What is a Meta Model?
A meta model in SystemWeaver contains the defined building blocks used to build models that supports your organization's processes and documentation needs. It is basically a set of rules for a SystemWeaver database that specify the item types, part types, attribute types, etc. that are going to be used for a particular SystemWeaver installation. It can be thought of as the database structure. It is created by a SystemWeaver Architect and is directly reflected in the SystemWeaver Explorer client for end-users. The basic building blocks of a meta model in SystemWeaver are:
- Nodes (due to their complexity, nodes will be covered in a separate article)
They are abstract and general in purpose, however they are always sub-typed in the meta model into types that are meaningful for end-users to work with.
An item is the smallest "reusable" object in SystemWeaver. It can be used as an item or as a part of another item. Each item is separate and has it's own versioning. An item always has an item type and this is what determines, for example, which parts the item is allowed to have. You will often recognize item types by their icon, but the item type is also always displayed at the top-right of a view.
There are two important characteristics that all items have:
- Name: A short general identification of the item. An item name can be up to 100 characters long.
- Description: A formatted text that can include tables and pictures. The size of a description is limited due to overall performance concerns.
You can view all of the general properties of an Item by selecting the Properties view.
Items of a specific type can have parts, or configured relationships, to other items of a specific type.
Like items, parts are also objects in the database, but it is more useful to think of them as allowed links between items of different types. A part is "owned" or defined by an item. These relationships are configured as part of the meta model for your SystemWeaver database. Just as with items, a part always has a part type. Additionally, you can view all of the general properties of a part by selecting the Properties view.
In SystemWeaver Explorer, users typically view Items and Parts in structures. Below is an example that helps to visualize items and parts:
When you select an item in a structure and want to link that item to another item using a part, you will be limited by the meta model as far as which part types you can add. In the below example, for the selected Software component called "CruiseControlManager", there are 6 different parts that can be added:
Item structures are explained more in Get Acquainted With the Explorer Interface.
Attributes can be used to describe items in a more structured manner than by writing free text. Like Items and Parts, they are defined by a SystemWeaver Architect and are part of the meta model in the SystemWeaver database. Items and parts can be configured to have default attributes and these display for all users. There are many different types of attributes and the editor presented to users in the Explorer client for value selection varies depending on what type of attribute it is.
What is a SID?
The SID, or the SystemWeaver type IDentifier is the formal identification of a type in SystemWeaver. It is a one to eight Unicode* character string value used internally in SystemWeaver to keep track of the types of items, parts and attributes and the internal relations between different types.
Most SystemWeaver users do not have a need to know about SIDs, but if you occasionally develop reports in the Exporer client or configure views then you will need to use the SIDs when referring to a type. Note that since the key is the SID rather than the name of a type, you can always change those names without breaking the meta model, report templates or view configurations.
A SID is unique within a SystemWeaver database (with the exception of the types defined in a SystemWeaver Change Management project which only need to be unique within a project).
See Finding SystemWeaver Type Identifiers (SIDs) for help on how to retrieve SIDs.
* Although the entire Unicode set is supported, it is recommended to primarily use characters in the "A..Z" and "1..9" range.