You can use model driven attributes to provide a consistent and smart way of data acquisition. Using model tables, you constrain attributes based on other attributes. These attributes are called model driven.
Example: To use a model table for diameter and material
- In the model table, specify valid combinations of diameters and material, such as Iron - 50; Iron - 100, Concrete - 400, Concrete - 300.
- Assign the model table to the main feature class, such as Pipe.
- In Infrastructure Map Server, in the main feature class form, use the Model Selector control to enter the attribute values, or to open the Model table.
The following instructions show the concept of model tables. For example, in Gas, you use the Pipe Model table, to acquire Pipe attributes.
To use a model table for data acquisition
- In Infrastructure Map Server, switch to the Maintenance workspace and open an enterprise industry modelproject with access to the Gas demo data set.
- In the industry model explorer, expand the topic Pipe. Right-click Pipe, and click Show Form.
- In the Pipe form, select a Pipe.
- Besides Model, click to show the Pipe Model form.
The Pipe Model form consists of two sections: At the top is the filter section for the model attributes. Use the horizontal scroll bar in the middle of the form to view all attributes. The lower section displays the models (model table records) that match the current feature. For example, if not all model related attributes of the main feature are filled, several models would be applicable.
- Use the filter area to search for any other models.
- In the data grid, select a model, and click Apply.
- The main feature class changes into Edit mode. Check the values, and click Update to insert the attribute values as specified in the selected model.
- In the main feature class, click again. The model table filter is set to the model you just applied. That means that the main feature attributes match the model attributes. To apply another model, use the filter area.
- Close the Pipe Model form.
Alternatively, you select a model from the model list. In the Pipe form, on the General tab, select a model from the list. The list displays the Model Name (MODEL_NAME). If no model name is assigned, the list shows an empty entry. If the model table does not contain the attribute MODEL_NAME, the value of the VALUE attribute is shown. If no attribute VALUE is available, the list shows the FID.
To assign a model table to an existing feature class
- Start the data model administrator.
- Select the main feature class.
- Right-click, and select Edit Feature Class.
- In the Edit Feature Class dialog box, click the General tab.
- Under Model Feature Class, select the attribute feature class you want to assign to the feature class.
- Click OK.
You can use any attribute feature class as model table. If the model feature class contains attributes that are not in the main feature class, you can optionally add these attributes.
In the parent feature class form, the model table can be accessed using the Model Selector. Use the Form Designer to add the Model Selector control.
To add the Model Selector.
- Start the Form Designer.
- Select the parent feature class.
- Click Designer.
- See Form Designer Reference.
Updating Model Tables
Older versions of the enterprise industry model used model tables named <name>_MODEL. When you open an industry model that has the old model table structure, the system updates existing model tables, so they support the new concept of model driven attributes.
The data structure update performs the following steps.
- Main feature class—The attribute FID_MODEL that links to the model table, will be removed.
- Main feature class—All attributes of the related model table will be added. The values of these model attributes are filled with the model information of the model table, so that no data is lost.
- Main feature class form—A model selector will be added. Use the model selector to access the values of the model table.
- Model table—The attribute NAME_NUMBER is renamed to MODEL_NAME.
The model feature class is still being used, according to the new concept. However the model attributes are now stored in the main feature class, and you use the model table to support data acquisition.