About the Knowledge Pattern Feature

What is a Knowledge Pattern Feature?

A Knowledge Pattern is a feature that enables you to:

You can create a Knowledge Pattern feature by clicking the Create Pattern Feature icon ().

The objects supported by this feature are:
  • User Features
  • Datums (Points, Lines, Curves, Circles, Surfaces, Planes, Volumes)
Note that this new feature is available in Part Design only.
   
  • The Knowledge Pattern feature is aggregated to the Relations node in a part. This Relations node can be located in a Technological Package.
  • The List features is aggregated under the Knowledge Pattern feature (including the list containing Locked objects).
  • All instances are generated and handled by the Knowledge Pattern feature. Their locations vary depending on the template instantiated:
    • For User-Defined Features, the result of the instantiation is located in a part.

The Knowledge Pattern is designed to conditionally instantiate a template or another depending on some specifications (if then instantiate A else instantiate B). The index in Knowledge Pattern lists enables you to identify the template. If a call is made to Instantiate with index i in list L, the application looks for an instance in the list.
If no instance is found, an instance is instantiated and inserted into the list L at the position i.
If an instance is found, the application compares the ARM identifier given as first argument with the one that was used for the previous instance. If this identifier is different, the system instantiates the new template and replaces the previous instance with a new one. This replace operation reroutes links from the old instance to the new one. Naming is copied from the previous instance.

The Knowledge Pattern feature is very similar to the Action feature. Like the Action feature, it contains an expressional part that allows you to specify what actions you want to perform usually using loops and the for keyword. The main differences between both features are the following:

Dealing With Associativity

The Knowledge Pattern ensures the associativity of templates instances with respect to:

To manage associativity, the Knowledge Pattern uses:

Using the Locking Capability

The Knowledge Pattern feature provides you with a way to lock the generated objects so that further executions cannot modify them. There are 2 ways to lock these objects:

When executing the Knowledge Pattern feature, you cannot modify nor delete the locked objects even if:

Using the Generative Knowledge Functions

The following functions enable you to work with the Knowledge Pattern feature.

To find out more about these functions, see the Generative Knowledge topic.

Short Example

The graphic below shows an example of a Knowledge Pattern body.

Note that:

Other Information

Knowledge Pattern Contextual Menu

  • Definition: Enables you to access the Knowledge Pattern definition window.
  • Execute: Enables you to execute the Knowledge Pattern.
  • Execute and upgrade: loads the Parts referenced by the Knowledge Pattern. The User Feature version is checked and if this User Feature has changed, it is instantiated.
  • Reorder: Enables you to reorder the Knowledge Patterns.