# -*- cperl -*- =head1 Audio-Browser =head2 Introdução Nem sempre é fácil integrar todas as funcionalidades desejadas numa aplicação para distribuir ao público. Em particular, em relação ao I, torna-se complicada a inserção de extensões que permitam extrair informação da Internet (web-mining) sem para isso aumentar demasiado a aplicação, quer em código extra, quer em linguagens a usar,... Desta forma, preve-se a integração da aplicação com um servidor (ou conjunto de servidores) que funcionem de I e pre-processadores sobre grande parte dos documentos da Internet. =head2 Serviços Prestados SMART PROXY (SP) Uma aplicação que faz a comunicação entre o utilizador e a Internet, com o objectivo de pré-mastigar as páginas numa estrutura conceptual. A sua colocação no servidor e não na aplicação permite a actualização constante das ferramentas sem necessidade de alteração da aplicação. Por outro lado, poderá ser construída uma I que aproveite o tempo de processamento. É importante, também, que esta I seja auto-actualizável (que contenha meta-informação sobre de quanto em quanto tempo deve remastigar as páginas). ESTATÍSTICAS DE VISITAS Para que o serviço de SP contenha em I grande parte dos documentos que vão ser solicitados (para evitar demasiado tempo em espera por parte do utilizador) a aplicação deve estar dotada de um sistema de I que seja periodicamente enviada ao servidor que, por sua vez, irá criar estatísticas de visitas sobre determinados URL's e portanto, tentar manter as páginas mais visitadas em I. Embora este processo automático possa ser bastante fiável para ter uma ideia de que páginas são visitadas e/ou importantes, será interessante dotar a aplicação de aviso explicito ao servidor de que determinada página vale realmente a pena. =head2 Ferramentas Para que os serviços indicados possam ser prestados existe um conjunto de ferramentas que devem ser desenvolvidas: DETECTOR DE LÍNGUA Dado um URL, saber em que língua o documento se encontra. Também é importante que a ferramenta seja capaz de dividir o documento em porções de língua diferente (e portanto, possíveis traduções). f: TXT --> (TXT x LING-ID)* Também relacionado com a língua dos documentos, e de acordo com as experiências realizadas no project BITEXTRA, agrupar URLs em blocos de traduções para que o próprio servidor e SP possa servir melhor o utilizador. DETECTORES E PROCESSADORES DE FORMATOS A Internet não é só HTML. Para cada tipo de documento existente On-line e que permita a extração de uma estrutura conceptual deve existir uma ferramenta que realize essa mesma extracção. Este processo divide-se na detecção do tipo de documento e no processador do documento em causa (txt, pdf, doc, rtf, ...) detect_type: FILE --> TYPE process[TYPE]: FILE --> CF DETECTOR DE FERRAMENTAS DE AUTHORING Determinadas páginas, embora em formato HTML, foram geradas por aplicações que não sabem como usar o HTML (word, por exemplo). Ao tentar detectar para cada documento se foi gerado por uma dessas aplicações, associar a cada uma delas um processo de limpeza e reverse engineering apropriado. DETECTOR DE DESIGN Embora a ferramenta anterior possa fazer muito deste tipo de serviço, existem muitas páginas cuja estrutura não é explicita (em que a estrutura está implicita na camada gráfica). Por exemplo, não usam as etiquetas h1..h6 para títulos, mas sim a etiqueta font com tamanhos diferentes. Para estes casos, é importante fazer o reverse engineering apropriado para as tornar estruturadas. CATALOGAÇÃO AUTOMÁTICA Para cada documento que se vá incluir em I automática, ou na biblioteca de referencia, deverá ser extraído um conjunto de meta-informação: cataloga : url -> meta meta = titulo x resumo x tipoConceptual x formato x classificaçao x... KLASSIFICAÇÃO Com base em ontolgias tentar classificar com alguns assuntos determinada página. MAPAS DE SITE Criação de um grafo de todo um site de forma a permitir uma navegação mais estruturada. TableOrientedProcessing Processa html de modo a ... =cut