Data Type Matching

To understand how the iTool data type matching system works, consider the following:

Now assume that an iTool user requests that a particular visualization be created from a particular collection of data objects, which are stored in a parameter set object. The iTool system will do the following:

  1. Retrieve the parameter name and iTool data types registered for the visualization's first parameter.
  2. If the parameter set object contains a data object whose Parameter Name matches the parameter name of the visualization's first registered parameter, use that data object as the data for the visualization parameter.
  3. If the parameter set object does not contain a data object with a matching Parameter Name, check the parameter set for data objects for which the Parameter Name property is not set. If there are no data objects without Parameter Names, no data is associated with the visualization parameter.
  4. Check the iTool data types of the data objects without Parameter Names. If a data object whose iTool data type matches the list of registered data types for the visualization parameter is found, use that data object as the data for the visualization parameter. If no data objects match any data types, no data is associated with the visualization parameter.
  5. Repeat until all registered visualization parameters have been either populated with data, skipped, or there are no more data objects to supply data.
  6. Note
    Parameter name matching is done in a case-insensitive fashion. If a parameter is registered with the parameter name "MyParameter" and a data object has its Parameter Name property set to "myParameter", the two will match.

The Figure 3-1 illustrates this process as a flow diagram.

Figure 3-1: Data type matching algorithm used by iTools.

DataTypeMatch.gif