ISIS como software ‘aberto’

ABC do ABCD

Considerando que o ISIS, a partir da versão DOS, produzida e distribuída pela UNESCO desde 1985, sempre foi “livre” – ou seja, sem custo, mas com uma restrição: somente para setores sem-fins-lucrativos – o  software não era “aberto” no sentido estrito do conceito, do hoje conhecido como “Open Source Software”, com suas diferentes definições (ver http://www.opensource.org/docs/osd) e licenças (por exemplo, (L)GPL, BSD, Creative Commons).

Mas em 3 significados havia, já deste o início – e, portanto, muito antes do movimento de software livre começar a se tornar realmente visível -, os elementos de ser “aberto”, além de ser (software) livre:

  • As normas estavam abertas e publicadas. No “CDS/ISIS Manual de Referência”, escrito pelo seu pai criador Gianpablo Del Bigio (trabalhando para OIT e depois UNESCO), os detalhes técnicos foram publicados nos anexos, permitindo que outros programassem as suas próprias versões do ISIS, utilizando os mesmos padrões compatíveis. Por exemplo, na Eslováquia Marek Smihla programou executáveis (por exemplo, ADEM para entrada de dados), que funcionou de forma independente dos executáveis  ISIS da UNESCO e podia gravar e ler registros ISIS. Bireme, em São Paulo, Brasil, fez uma coisa semelhante: eles programaram em linguagem C (portanto CISIS) ferramentas com uma série de características avançadas de gravação, leitura e de indexação (por exemplo, “join” de bases de dados, linkando-as como relações, etc.), que ainda são a base para seus outros programas relacionados a ISIS: a DLL e os servidores web (WWWisis, WXIS) e que agora têm capacidade expandida, por exemplo, máximo de 4 GB de tamanho de bases de dados, registros 1 Mb de tamanho, 60 caracteres de chaves de índice. Cooperação com a UNESCO foi então estabelecida, por exemplo, permitindo que o “CDS/ISIS para Windows” tornar-se uma mistura de módulos programados pela UNESCO e módulos programados pela Bireme.
  • Uma interface aberta, ajustável: o software em si foi apresentado como um ambiente muito flexível, com três principais características que foram usadas intensamente em todo o mundo, não apenas para alterar a sua “interface”, mas também as funções e características.
  1. Uma estrutura de menu aberta: Micro-CDS/ISIS foi totalmente baseada em menus que podiam ser produzidos e alterados, usando o próprio software em si, incluindo a definição de “ações” a serem invocadas por cada opção do menu e permitindo sub-menus hierárquicos, bem como opções de acrescentar/apagar.
  2. Um sistema de mensagem aberto: todas as mensagens foram/são baseadas em pequenas bases de dados ISIS que podem ser editadas e expandidas (cada idioma tendo a sua própria base de dados de mensagens). Isto não só permite (muitas vezes em conjunto com a característica anterior de menu aberto) a criação de conformações bastante diferentes do software – tendo em conta também as cores e recursos de tela que podem ser mudadas – mas também a expansão e a introdução de parâmetros (que podem então ser “lidos” como mensagens) para softwares adicionais, executando internamente no ISIS (ver mais adiante: “add-ons” do ISIS/Pascal), amplamente utilizados, por exemplo, pela interface de catalogação “ODIN” e IRIS OPAC (pelo autor do presente artigo).
  3. Uma ferramenta de programação “ISIS/Pascal”, que atuou como uma “API” (com publicação de chamadas para funções e seus parâmetros) dentro do CDS/ISIS. Programas ISIS/Pascal, variando de algumas linhas para milhares de linhas de aplicações sofisticadas, podiam ser incluídas no programa, quer seja como “format exits” (para expandir as funções da já muito rica Linguagem de Formatação) ou como “menu exits” para expandir as funções dos menus, permitindo quase interfaces independentes para “assumir” o ambiente CDS/ISIS na criação e manipulação de suas bases de dados. Uma característica que ilustra a “abertura” foi a possibilidade de acrescentar um parâmetro no arquivo de inicialização “SYSPAR.PAR” para invocar automaticamente um menu e suas opções, permitindo assim pular interface de menu e imediatamente apresentar a interface ISIS/Pascal. Desta forma completa OPAC (por exemplo, IRIS usando uma tela de boas-vindas, que podia ser invocada por um mecanismo de “time-out” após sair de uma sessão anterior) e módulos de busca em CD-ROM (Heurisko é um exemplo) foram escritas, sistemas de empréstimo para bibliotecas e ferramentas de gestão de tesauro foram produzidas.
  • Por último, mas não menos importante: o caráter “aberto” da linguagem de formatação. A linguagem de formatação é uma gramática usada para definir de forma detalhada como os elementos da base de dados, provenientes de campos e subcampos repetíveis, também de outros registros da mesma ou outra base de dados (assemelhando-se, portanto, com abordagens relacionais) e com links de navegação, serão “processados” em alguma saída (para visualização, ordenação, impressão, exportação). Foi largamente expandido com recursos gráficos na versão Windows (RichText mas também imagens e extra textos e caixas de imagem).  Juntos, esta característica “poderosa” de processamento de dados e de apresentação da linguagem de formatação, permitiram a produção de novas “identidades” do software, por exemplo, como um software de automação de bibliotecas com OPAC e sistema de empréstimos (por exemplo, PURNA da Índia). Em aplicações correntes, baseadas em tecnologia web, a Linguagem de Formatação normalmente ainda é usada para produzir elementos HTML (por exemplo, os links, mas também as tabelas), mesmo se ferramentas mais dedicadas para isso, por exemplo, PHP, são acrescentadas ao poder da própria linguagem de Formatação ISIS.

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *