É uma arquitetura genérica de soluções de mediação projetada pela Advanced Research Projects Agency (ARPA) do Departamento de Defesa dos Estados Unidos. Esta arquitetura denominada I3 (Intelligent Integration of Information) é um desenvolvimento daquela proposta por Wiederhold em que o termo “mediador” é um termo genérico que designa qualquer componente de uma solução de mediação. Já para Wiederhold, o termo “mediador” é utilizado no sentido de um componente responsável pela integração dos dados, gerando informações de alto nível, principalmente por resumir todas as informações fornecidas por diferentes fontes.
A arquitetura I3 é dividida em cinco classes de serviços; serviços de coordenação, serviços de gestão, serviços de integração e transformação semântica (SIT), serviços de extensão funcional e serviços de adaptação. Esses serviços não são ortogonais, o diagrama da arquitetura ARPA explica as dependências funcionais.
Os serviços de coordenação incluem todas as ferramentas para gerenciar a configuração de uma solução de mediação, a saber:
Este serviço recebe solicitações de usuários diretamente. Isso não realiza nenhuma operação de decomposição do pedido ou de tradução. Sua única função é localizar, por meio de metadados, ontologias e diretórios, o serviço mais adequado para resolver a consulta. Em seguida, delega a tarefa de resolver a solicitação ao serviço que encontrou. Alguns autores usam o termo "roteador" para este tipo de serviço.
Os serviços usados pelos corretores são serviços de descoberta de recursos (M1) e serviços de interpretação e execução de moldes (M3). Eles também usam os serviços da família S e F.
As entradas são:
Os resultados são:
Um facilitador é um corretor que oferece mais serviços. É capaz de realizar traduções permitindo que a solicitação seja redirecionada para um serviço usando outra sintaxe. Ele também pode dividir uma solicitação em sub-solicitações e programá-las e distribuí-las aos vários serviços que localizou anteriormente. Finalmente, ele pode combinar (integrar) os diferentes resultados em uma resposta coerente. Os serviços utilizados pelos facilitadores são os serviços de descoberta de recursos (M1) e os serviços de interpretação e execução de mexilhões (M3). Eles também usam os serviços da família S e F.
As entradas são:
Os resultados são:
Este serviço é descrito como capaz de gerar um mediador. Ele gera a configuração necessária para fornecer o serviço desejado. Esta configuração define os serviços usados, os links de comunicação usados, as traduções necessárias e os programas de controle necessários para sequenciar a solicitação. Este serviço, portanto, não resolve a solicitação, mas devolve ao usuário uma solução para resolver a solicitação, ou seja, todas as etapas que o usuário deve realizar para resolver sua solicitação.
Os serviços usados pelos matchmakers são serviços de descoberta de recursos (M1) e serviços de processo de configuração (M2). Eles também usam os serviços da família S e F.
As entradas são: Solicitação do usuário
Os resultados são:
Categoria abrangente onde encontramos qualquer interface que ofereça serviços de mediação utilizáveis diretamente pelo usuário e que não podem ser descritos por C1, C2 ou C3.
É uma coleção de serviços que permite a invocação e programação de serviços I3. Eles também permitem que os diferentes serviços sejam configurados para processar uma determinada solicitação.
As páginas brancas são as mais simples, elas apenas registram e cancelam o registro de recursos e os ativam ou desativam; eles permitem que você encontre um recurso sabendo apenas seu nome. As páginas amarelas permitem encontrar recursos de acordo com o serviço desejado. Inferência de Smart Yellow Pages para inferir o serviço desejado com base em uma solicitação de serviço que não está perfeitamente sintaticamente e / ou semanticamente normalizada.
Os navegadores permitem que os usuários naveguem nos metadados e no esquema de uma fonte de dados específica. Eles também permitem que outro serviço acesse e navegue pelos metadados e esquema de uma fonte de dados. Estes são, entre outras coisas, usados por adaptadores.
M1.C a M1.E Explicação e serviço de ajuda para serviços, processos e ferramentasEsses serviços auxiliam o usuário ou os serviços de coordenação na utilização do sistema e na criação de solicitações.
Esses serviços são usados por serviços de coordenação quando constroem uma solução de configuração. O seletor de serviço permite que você encontre os serviços que permitem que você execute uma tarefa específica. O Seletor de ferramentas e fontes de informações permite que você encontre as fontes de informações e ferramentas corretas para realizar uma tarefa específica. O Serviço de Fabricação de Molde é usado para determinar como combinar as diferentes ferramentas e fontes de informação para gerar um molde (itens de configuração). O controlador de processo permite a construção de um molde (o molde é aqui considerado um código executável).
Esses serviços são usados para executar um molde (modelo de configuração). O analisador gera uma configuração a partir de um molde. O planejador de processo gerencia o controle de distribuição e configuração sobre vários processos, enquanto o gerenciador de processos e dados gera o controle para um processo específico e mantém um armazenamento de informações local.
Esses serviços permitem gerenciar e manipular ontologias, contextos e esquemas. No primeiro caso, a entrada consiste em uma ou mais fontes de informação e a saída consiste em uma integração ou transformação dessa informação. No segundo caso, a entrada consiste em um componente de software e a saída é o componente reconfigurado.
Esses serviços permitem a integração de esquemas e conhecimento de múltiplas fontes.
S1.A Serviço de tradução de ontologia e vocabulárioEste serviço permite gerar uma ontologia sendo a intersecção de várias ontologias ou converter um termo de uma ontologia de origem no termo correspondente da ontologia de destino.
S1.B Ver serviço de traduçãoEste serviço é usado para estabelecer correspondências entre um esquema local e um esquema global.
S1.C View Integration ServiceEste serviço possibilita a integração de um esquema local em um esquema global.
Esses serviços permitem criar uma síntese de informações de várias fontes. Os serviços de criação de resumos e abstrações permitem que as informações sejam condensadas para a tomada de decisões.
Serviço de mapeamento de objeto S2.CEste serviço permite que objetos de origens distintas sejam considerados iguais dentro de um esquema comum (responsável pela reconciliação semântica e operações de reconciliação ou unificação de contexto).
Serviço de transformação de contexto S2.DEste serviço normalmente permite a tradução de um contexto de uma ontologia para outra e de um formato de contexto para outro.
S3.A Serviço de decomposição de solicitações Usado para decompor uma solicitação em sub-solicitações destinadas a vários serviços. Serviço de integração de resultados S3.B Permite combinar os diferentes resultados das diferentes subconsultas em uma resposta integrada e coerente. S4. Serviços de integração física Esses serviços permitem a integração e a vinculação entre componentes no sistema e nos níveis de sintaxe.
Esses serviços permitem realizar procedimentos de eventos, como monitoramento de eventos ou conformidade com restrições de integridade.
Esses serviços permitem operações que requerem raciocínio complexo a partir de regras (raciocínio do tipo sistema especialista).
Esses serviços permitem o gerenciamento de mudanças, incluindo evolução de esquema, dados, versões, replicação de dados e acesso hipotético a dados.
Este é o serviço que os adaptadores devem fornecer. A necessidade funcional de um adaptador é padronizar a sintaxe e a semântica de uma fonte de dados local, convertendo-os para o formato de mediação. Este serviço oferece uma solução de disseminação de informação, permitindo preservar a autonomia local das fontes de dados.
Permite a conversão sintática e semântica das interfaces de chamada entre dois programas.
Serviço de gerenciamento de eventos W1.BPermite o gerenciamento do tráfego de eventos entre uma fonte de informações e um serviço incompatível de nível superior.
Serviço de adaptação W1.C para chamadas de método e funçãoPermite a conversão de chamadas de método e função entre uma fonte de informação e um serviço incompatível de nível superior.
Permite a conversão esquemática e sintática de dados para o formato de mediação.
Reestruturação de metadados W2.BPermite a conversão de metadados em formato de mediação.
Permite a modificação da semântica (comportamento) de um programa, modificando, por exemplo, cálculos.
Permite a modificação de um protocolo (comunicação, gestão de competição, etc.).
Serviço de tradução de idiomas W3.CPermite a tradução de uma linguagem de manipulação de dados para outra. Por exemplo, de SQL para OQL ou no caso de um modelo XML semiestruturado indo para QXML.