Clash detection - HxGN SDx - Update 63 - Administration & Configuration

Administration and Configuration of HxGN SDx

Language
English
Product
HxGN SDx
Search by Category
Administration & Configuration
SmartPlant Foundation / SDx Version
10

Data Validator has advanced clash detection capabilities, which ensure that clashes between the imported schema and the existing local schema are detected so that corrective action can be applied. Data Validator works only with the data in the Data Validator domain, because it has control over those database tables and can transfer the data for each job into a new set of tables.

When you build an import mapping from the target system that maps any reserved class definitions, property definitions, relationship definitions, (such as an interface definition or a property definition), or relationship property definitions, the system automatically detects clashes and it displays a warning message to take corrective action, such as renaming the class definition.

For example, the following image is an example of a definition for ClassDef, which is a reserved type that is unusable for Data Validator.

Here, ClassDef is linked to a component schema, which in turn is linked to a domain, which in turn links to a domain group. The domain group has a property that names the table prefix. For this example, the domain group is named SCHEMA.

This example does not point to the Data Validator tables, but points to the SCHEMA tables, which means that Data Validator cannot use this class definition, as doing so would create a clash between what is being mapped and what is already in the Data Validator database.

If you do intend to introduce a new class definition into your target system, use the following example workflow:

  1. Create an import mapping by querying the target system.

  2. Query for the object type, for example, ClassDef.

  3. Click Add to create the mapping, and the application will check for clashes.

  4. If a class definition, property definition, or relationship property definition clashes, the application creates a list of alternatives by searching the stage to target map to determine whether the class definition, property definition, or relationship property definition has already been targeted. If it has, the local schema is presented as the alternative. For example, if a map exists from the local class definition ClassDef to a target class definition ClassDef, then the local class definition ClassDef will be suggested as an alternative.

  5. If a clash is found, choose an alternative class definition from the list provided by the application. If no list of alternatives is provided, use free text to rename the object type, renaming ClassDef to MyClassDef.

  6. Click Save.

  7. When you make use of the Auto Generate Export Mapping option, the local object is named MyClassDef, but when MyClassDef is exported, it is exported as ClassDef.

Similar to clashes between class or property definitions, clashes can occur between relationship definitions, because the Data Validator object types do not have the same interfaces as the objects in the target system. Relationship definitions link instances of interfaces, so when importing a relationship definition local to Data Validator, the relationship definition is mapped to the primary interfaces of the two objects being linked. A clash occurs when the relationship definition is found locally, but links two different interfaces. Data Validator looks at the end objects and matches to the objects you want to use that already exist in the Data Validator database.

This condition can also occur for properties, which should only be exposed by one interface. If you target a property that exists in the Data Validator database, but belongs to an interface not found on the associated object, a clash occurs. You will be prompted to alter the property name. Similar clash detection and resolution can occur in the case of relationship properties.

SHARED Tip This clash detection functionality is also used when mapping using the free text mode.

You can create new relationship definitions in addition to the existing relationship definition in the system between different interface definitions.