For example, in the KB shown in the figures in Example of the Scope of Configurations, assume that:
car-class-1 and service-car-1, and so on.
car-class-1, the item configuration stored in the SCHEMATIC workspace overrides the item configuration stored in the TOP-LEVEL workspace. You can also store configurations with a smaller scope that supplement configurations with a larger scope. This allows you to declare a unique behavior for a subset of items, without affecting the configurations for all other items in your KB.
However, you can use G2's precedence rules for configurations in a more complex manner. Consider the user gesture of clicking the mouse on an item to display its menu. Do you prefer to show all menu choices configured for the menu or just those mentioned in the first menu configuration that G2 finds in its search up the class and workspace hierarchies? The same question arises for which attributes to show when displaying an item's table.
include, include additionally, and exclude absolutely. Combining Cooperatively
You can use two configuration statements, configure the user interface as follows and restrict proprietary items as follows, to define configurations that G2 applies in a cooperative manner. These two kinds of statements configure the interactive behavior of an item.
configure the user interface as follows or restrict proprietary items as follows statement can additionally include or exclude one or more user-interface features for the target item.
delete and create-subworkspace) already defined for that class:
configure the user interface as follows:
when in end-user mode:
menu choices for conveyor-stationinclude:
delete, create-subworkspace
table):
configure the user interface as follows:
when in end-user mode:
menu choices for conveyor-stationinclude additionally:
table
table menu choice is additionally available for items at this level and at more specific levels in those hierarchies.
exclude additionally phrase in the clauses of a configure the user interface as follows statement or restrict proprietary items as follows statement. For example, the following statement causes the menus of
CONVEYOR-STATION items to present all but two of the menu choices already defined for that class:
configure the user interface as follows:
when in end-user mode:
menu choices for conveyor-stationexclude:
clone, show-status
configure the user interface as follows:
when in end-user mode:
menu choices for conveyor-stationexclude additionally:
table
table menu choice is also not available for items at this level and at more specific levels in those hierarchies.
additionally clauses to alternately include and exclude system-defined or custom features of items at progressively more specific positions in your KB's class and workspace hierarchies. These nested configurations represent localized exceptions to configurations declared higher in those hierarchies. To do this use:
additionally configuration at a given position in the KB's class or workspace hierarchy combines with the configuration(s) in force at that position that contains an includes or excludes phrase.
additionally configurations can combine with the configuration(s) in force that contains an includes or excludes phrase.
additionally configuration overrides a conflicting additionally configuration(s) at a higher position in the KB's class or workspace hierarchy, subject to G2's rules of precedence for configurations.
To do so, include the
exclude absolutely phrase in a configuration statement, as follows:
configure the user interface as follows:
when in end-user mode:
menu choices for conveyor-stationexclude absolutely:
delete, create-subworkspace ;
selecting any conveyor-stationabsolutely implies:
move
absolutely configurations cannot be overridden or supplemented, the statement above restricts conveyor-station items so that, when a user interacts with this KB via a window whose associated g2-window contains the value end-user in its G2-user-mode attribute:
delete and create subworkspace menu choices are never available for the target conveyor-station items.
absolutely configuration on a particular item feature does not combine cooperatively with other additionally configurations on the same feature. Instead, an absolutely configuration overrides all other configurations that include or exclude the same feature for the same item(s), regardless of where you place the absolutely configuration in the KB's class or workspace hierarchies. Further, you cannot supplement an absolutely configuration for a particular item feature and for a particular set of items by other additionally configurations on the same feature.
absolutely includes some item behavior. absolutely configuration is particularly valuable when securing a proprietary KB, since otherwise a user could restore access to the KB's proprietary knowledge.