Create and Register Derived Objects

Derived objects represent relational tables that you create out of the registered file objects. File objects (XML, XSD, WSDL, RR Pairs, and JSON) include non-relational data. You cannot directly work with these file objects that contain non-relational data in the CA TDM Portal. To work with them, convert the non-relational model into a relational model and store it in the relational database. 
tdm41
Derived objects represent relational tables that you create out of the registered file objects. File objects (XML, XSD, WSDL, RR Pairs, and JSON) include non-relational data. You cannot directly work with these file objects that contain non-relational data in the CA TDM Portal. To work with them, convert the non-relational model into a relational model and store it in the relational database. 
Therefore, by creating derived objects, you achieve the following objectives:
  • Convert the non-relational data model into a relational model by creating tables in the relational database.
  • Register created relational tables with the CA TDM Portal.
Follow these steps:
  1. Select an appropriate project and its corresponding version from the
    Project
    drop-down list in the top blue bar.
    This selection sets the required project and version context for all the related operations that you perform in the Portal.
  2. Click
    Modeling
    in the left pane.
    The
    Modeling
    option expands and displays two options:
    Objects
    and
    Variables
    .
  3. Click
    Objects
    .
    The
    Objects
    page opens. This page lists objects that are registered to the selected project and the version.
  4. Click the file object that you want to use to create derived tables.
    The
    <Object_Name>
    page opens. Appropriate options based on the object type that you selected appear in the 
    Derived Tables 
    section.
  5. Provide information depending on your object type. 
    1. Enter information for the following common options that appear for all object types:
      • Connection Profile
        Specifies the appropriate connection profile to use for creating derived tables.
        Note:
        Users can access only those connection profiles that they have created. They cannot access connection profiles created by other users.
      • Advanced Settings
        Lets you provide information for the advanced options. Click the 
        Advanced Settings
         option and specify the following information:
        • Generate Foreign Key Constraints
          Lets you generate foreign keys for the derived tables when you select this option. The foreign keys information helps you identify relationships between different derived tables.
        • Table Prefix
          Lets you specify a prefix to add to the names of the derived tables that are created in the database.
        • Duplicate Table Suffix
          Lets you add a meaningful suffix to derived object (table) names to distinguish among the same names. Whenever multiple derived objects are going to get created with the same name, you can use this suffix to differentiate among them. For example, if your schema has two billTo tables, then without this option, you get billTo and billTo_1. However, if you enable this option, you get billTo and billTo_tdm_1.
          Default: _tdm_1
        • Reconcile tables
          Lets you resolve conflicts with the existing registered tables. When you slect this option, the CA TDM Portal unregisters the existing conflicting tables from the version and then adds the new derived objects. When the conflicting tables no longer remain registered with the version, the CA TDM Portal lets you proceed with the operation. In this case, all the data generation rules that are added to the existing tables are moved to the derived objects. For more information about resolving conflicts, see Resolve Conflicts (Derived Objects Creation/Registration).
    2. Click the appropriate link to provide information for the remaining options that appear only for a specific object type:
  6. Click 
    Create and Register
    .
    The CA TDM Portal creates a job for this operation and adds it to the jobs queue. You can view the jobs queue in the requests table by clicking the job ID in the message. The requests
     
    table displays all the job requests with their status, date, name, and other relevant information. When the status of the job is shown as Completed, the CA TDM Portal completes the task of deriving tables out of the selected object type and registering them. You can click the required row in the requests table to view the additional information about the job, if necessary. The additional information is displayed in the
    Additional Information
    dialog.
You can now perform different actions?on the derived tables. These actions are available at the top of the list where derived tables are displayed.
Note:
You can also create a data generator from this view. The ability to create a data generator in context of a project and its version improves the overall workflow. You no longer need to navigate out of your selected project or version view to create a generator for the same project or version. In this case, click the
Create Generator
button and follow the remaining instructions in Create Data Generator.
XSD
For XSD, provide the following information:
Note:
To edit the noNamespaceSchemaLocation, schemaLocation, and namespaces information, expand the
Advanced Settings
option present above the
Derived Tables
section.
  • Root Element
    Specifies the root element to use for creating derived tables.
  • Advanced Settings
    Click the 
    Advanced Settings
     option and specify the following information:
    • Cyclic Recursion Depth
      Lets you specify the required recursion depth when you have cyclic references in the XSD that you want to use to create derived tables. The supported recursion depth range is from 1 through 32.
      Default: 2
WSDL
For WSDL, provide the following information:
  • WSDL Operation
    Lets you specify the WSDL operation name for which you want to create derived tables.
  • Advanced Settings
    Click the 
    Advanced Settings
     option and specify the following information:
    • Cyclic Recursion Depth
      Lets you specify the required recursion depth when you have cyclic references in the XSD that you want to use to create derived tables. The supported recursion depth range is from 1 through 32.
      Default: 2
XML
For XML, provide the following information:
Note:
 To edit the noNamespaceSchemaLocation, schemaLocation, and namespaces information, expand the 
Advanced Settings
 option present above the 
Derived Tables
 section.
  • Import Object Data
    Specifies whether you want to import data into the derived tables after they are created. This option uses the same XML file that you use for creating derived objects to import data. The CA TDM Portal populates the relational database with data from the provided XML file. 
    When you select this option, the
    Document Group ID
    field is displayed. Enter the appropriate ID that you want to associate with the data that you are importing into derived objects. This ID helps you group the data, which is useful during the export process. The document group ID that you specify at the time of importing the data into derived objects can be used during the export process to group the data based on the same ID. You can then export only that grouped data. This ability, therefore, helps you filter only the required data during the export process. That is, instead of exporting all the data, you can simply use this ID to group the required data and then export only that set of relevant data.
    For import, the value can be a string or integer without a comma (,) and hyphen (-). 
  • Advanced Settings
    Click the 
    Advanced Settings
     option and specify the following information:
    • Cyclic Recursion Depth
      Lets you specify the required recursion depth when you have cyclic references in the XSD that you want to use to create derived tables. The supported recursion depth range is from 1 through 32.
      Default: 2
The CA TDM Portal follows the Russian Doll design approach to convert the registered XML file into relational tables. For more information about the Russian Doll design approach, see Introducing Design Patterns in XML Schemas. Derived tables of already registered XML files that come from the previous CA TDM Portal releases (prior to 4.0) work properly in this release, too. However, if you register the same XML file object to the same project version in this release and derive tables, the structure of the derived tables might change. For example, the number of derived tables or columns in the derived tables might increase or decrease depending on the updated scenario.
RRPAIR
For RR Pair, provide the following information:
  • Import Object Data
    Specifies whether you want to import data into derived tables after they are created. This option uses the same request and response .xml, .json, or .txt files that you use for creating derived objects to import the data. The CA TDM Portal populates the relational database with the data from the provided request and response .xml, .json, or .txt files. 
    Note:
     RR pair files using .txt extension contain information in the form of HTTP headers and body, thereby providing support for REST format. For more information about the structure of .txt RR files, see the REST RR Pair Format section.
    When you select this option, the following options are displayed:
    • Document Group ID
       
      Specifies the appropriate ID that you want to associate with the data that you are importing into derived objects. This ID helps you group the data, which is useful during the export process. The document group ID that you specify at the time of importing the data into derived objects can be used during the export process to group the data based on the same ID. You can then export only that grouped data. This ability, therefore, helps you filter only the required data during the export process. That is, instead of exporting all the data, you can simply use this ID to group the required data and then export only that set of relevant data.
      For import, the value can be a string or integer without a comma (,) and hyphen (-).
    • R/R PAIR Link ID
      Specifies an alphanumeric request-response link ID that identifies the associated request-response pair. This ID establishes a link between the request file and the response file. The value can be a string or integer without a comma (,) and hyphen (-).
  • Advanced Settings
    Click the 
    Advanced Settings
     option and specify the following information:
    • Cyclic Recursion Depth
      Lets you specify the required recursion depth when you have cyclic references in the XSD that you want to use to create derived tables. The supported recursion depth range is from 1 through 32.
      Default: 2
JSON
For JSON, provide the following information:
  • Import Object Data
    Specifies whether you want to import data into the derived tables after they are created. This option uses the same JSON file that you use for creating derived objects to import data. The CA TDM Portal populates the relational database with data from the provided JSON file. 
    When you select this option, the 
    Document Group ID
     field is displayed. Enter the appropriate ID that you want to associate with the data that you are importing into derived objects. This ID helps you group the data, which is useful during the export process. The document group ID that you specify at the time of importing the data into derived objects can be used during the export process to group the data based on the same ID. You can then export only that grouped data. This ability, therefore, helps you filter only the required data during the export process. That is, instead of exporting all the data, you can simply use this ID to group the required data and then export only that set of relevant data.
    For import, the value can be a string or integer without a comma (,) and hyphen (-).
  • Advanced Settings
    Lets you provide information for the advanced options. Click the Advanced Properties option and specify the following information:
    • Allow Comments
      Specifies whether the JSON parser allows the use of Java or C++ style comments (both '/'+'*' and '//' varieties) in the JSON content. 
    • Allow Non-numeric Numbers
      Specifies whether the JSON parser recognizes a set of "Not-a-Number" (NaN) tokens as valid floating number values in the JSON content.
    • Allow Back Slash Escaping
      Specifies whether the JSON parser allows the use of backslash to escape any character in the JSON content. If you do not enable this property, only those characters that JSON specification supports are escaped.
    • Allow Single Quotes
      Specifies whether the JSON parser allows the use of single quotes (apostrophe, character '\'') for mentioning strings names and string values in the JSON content. For example, 'name' : 'value'.
    • Allow Unquoted Control Characters
      Specifies whether the JSON parser allows JSON strings to contain control characters without quotes in the JSON content.
    • Allow Unquoted Field Names
      Specifies whether the JSON parser allows the use of field names without quotes in the JSON content. For example, name : "value".
    • Allow Numeric Leading Zeros
      Specifies whether the JSON parser allows the integer numbers to start with additional zeroes (for example, 005) in the JSON content.