Adding a Query-Driven Template Step

Query-Driven Template steps are similar to Templated steps in that they provide a way to create query templates that use parameters to represent key-value pairs. The queries are reusable across data sets because, rather than rewriting the query, the existing parameters can be substituted for alternate key-value pairs. The difference between the two types of steps is that the key-value pairs for Templated steps must be user-defined. In Query-Driven Template steps, a parameter query is run that automatically generates the key-value pairs. Then the defined template query is run for each key-value solution from the parameter query.

For more information about Templated steps with manually created key-value pairs, see Adding a Templated Step.

  1. In the Anzo application, expand the Blend menu and click Graphmarts. Anzo displays a list of the existing graphmarts. For example:

  2. On the Graphmarts screen, click the name of the graphmart that you want to change.
  3. Click the Data Layers tab. Anzo displays the existing data layers.
  4. Click the menu icon () on the layer for which you want to create a step, and then select Add Step/View. Anzo opens the Add step dialog box.

  5. Follow one of the options in this step, depending on whether you want to create a step from scratch or clone an existing step for reuse:
    • If you want to create a new step, select Query Driven Templated Step, and then click OK. Anzo opens the Create step screen. Proceed to the next step.

    • If you want to clone an existing step and add it to this layer, click the Existing Steps tab and follow these steps:
      1. Select the query-driven templated step that you want to clone and click OK. Anzo displays the Clone dialog box, which asks if you want to copy the permissions from the existing step.

      2. On the Clone dialog box, click Yes to copy the permission configuration from the existing step or click No to copy the step without the permission configuration.

        Anzo clones the step, adds the copy to the layer, and returns to the Data Layers screen.

      3. On the Data Layers screen, click the menu icon () on the cloned step and select Edit. Anzo opens the Edit load data step screen. Proceed to the next step.
  6. On the Details tab, type a name for the step in the Title field and add an optional description in the Description field.
  7. By default the Enabled option is selected, indicating that the step is enabled and will run when the layer is loaded. If you want to disable the step so that it is not processed, clear the Enabled check box.
  8. Click the Source drop-down list and configure the source data for this step. Steps can build upon the data generated by steps in other layers or can be self-contained, applying changes that relate only to the data defined in the layer that contains this step. You can select any number of the following options:
    • Self: This option is selected by default and means that the query runs against only the data that is generated in the layer to which this step belongs.
    • All Previous Layers Within Graphmart: Choosing this option means that the query runs against the data that is generated by all of the layers in the graphmart that precede this layer.
    • Previous Layer Within Graphmart: Choosing this option means that the query runs against only the data that is generated by the one layer that precedes this layer.
    • Layer Name: The Source drop-down list also includes options for specific layer names. You can choose a specific layer to run the query against only the data that is generated by that layer.

      You can remove any of the source options by clicking the X to the left of the option name.

  9. Click the Data models drop-down list and select the model or models to create the template against.
  10. Click the Parameters Query tab to view the parameter query that is used to determine the key-value pairs for the selected source. The tab includes the syntax for writing a SPARQL SELECT query.
    SELECT DISTINCT ?param1 ?param2 ?param3
    ${fromSources}
    WHERE{
    ?param1 ?param2 ?param3.            
    }

    Edit the query as needed. The template includes the source graph parameter ( ${fromSources}). Using the configured Source data options from the Details tab, Anzo automatically populates the query with the appropriate source graph URIs when the query runs.

  11. Click the Template tab to use the provided template to write the query that will be run for each of the key-value pairs identified by the Parameter Query. The template includes the syntax for writing SPARQL DELETE and INSERT queries and includes source and target graph parameters that Anzo replaces at runtime. Edit the template text as needed.
    DELETE{
      GRAPH ${targetGraph}{                
     }
    }
    INSERT{
      GRAPH ${targetGraph}{
     }
    }
    ${usingSources}
    WHERE{
      ${param1} ${param2} ${param3} .
    }
  12. Click Save to add the step to the data layer. Anzo adds the step as the last step in the layer. If you want to change the order of the steps, click the black bar on the left side of a step and drag it up or down.
Related Topics