Filtrar Nós Recorrentes

Especificando um predicado XPath com o qual filtrar durante o tempo de execução, é possível limitar os nós recorrentes retornados por uma atividade de mapeamento.

Sobre Esta Tarefa

Filtrar usando um predicado diretamente nas áreas de janela de mapeamento de atividades elimina a necessidade das seguintes atividades:
  • Uma atividade While Loop ou For Each que efetua loop nas estruturas recorrentes
  • Uma atividade If...Then para testar os valores.
A eliminação do loop e das atividades If..Then melhora o desempenho da orquestração.
Por exemplo, é possível limitar os livros processados pela orquestração BatchOrderProcessingSample para retornar apenas títulos de livros que iniciam com a letra B, usando um dos seguintes métodos:
  • Após a atividade Ler Arquivo Simples que converte dados do arquivo simples em XML, é possível incluir uma atividade While Loop que contém uma atividade If..Then que é testada para todos os títulos de livros que iniciam com a letra B. Quando a atividade While Loop é concluída no tempo de execução, ela retorna o conjunto de nós BookOrder recorrentes que possuem títulos iniciando com a letra B.
  • Filtre especificando um predicado diretamente na área de janela Para Orquestração da tarefa Mapear Saídas da atividade Ler Arquivo Simples que converte dados de arquivo simples em XML. Este é o método preferencial porque ele reduz o processamento durante o tempo de execução - melhorando o desempenho da orquestração.Por exemplo, é possível especificar o seguinte predicado no nó BookOrder recorrente para limitar os nós Bookorder retornados durante o tempo de execução apenas aos títulos que iniciam com a letra B:*:title/starts-with(.,'B')
Este predicado de exemplo é explicado na tabela a seguir:
Caracteres do Predicado Descrição
*: Especifica que o predicado se aplica a qualquer espaço de nomes do nó de origem.
title/ Especifica para aplicar esse predicado ao nó do título do nó de origem atual.
starts-with(.,'B') Especifica que esse predicado retorna apenas os nós que possuem nós de títulos que iniciam com a letra B. A função starts-with é uma função XPath integrada.

Para obter informações adicionais sobre a amostra BookOrder, consulte o Getting Started Guide. Se você aceitou os padrões durante a instalação do Studio, poderá localizar a implementação de referência da amostra no diretório a seguir: C:\Arquivos de Programas\IBM\WebSphere Cast Iron Studio 3.X\Samples\BookOrder

Para especificar um predicado em um nó recorrente:

Procedimento

  1. É possível aplicar apenas um filtro em um nó de destino recorrente que é mapeado para um nó de origem recorrente nas áreas de janela de mapeamento das atividades, conforme mostrado na área de janela Mapear Saídas a seguir da atividade Ler Arquivo Simples na orquestração BatchOrderProcessingSample:
  2. Clique com o botão direito do mouse no nó de ocorrência de destino (neste exemplo BookOrder/occurrence) e selecione Filtrar Nós Recorrentes no menu. A caixa de diálogo Filtrar Nós Recorrentes é aberta.
  3. Insira o predicado XPath. Para este exemplo, insira o predicado mostrado na figura a seguir:
  4. Clique em OK. O predicado é avaliado para determinar se é válido:
    • Se o predicado for inválido, uma mensagem de erro será relatada.
    • Se o predicado for válido, o ícone de filtro (Ícone de Nó Recorrente) será mostrado próximo ao nó de ocorrência de destino.