Tutorial

Se você chegou até aqui, deve ter percebido que os relacionamentos entre elementos são a alma do Borgs *:). São eles que estruturam a informação e permitem reorganizá-la de diversas maneiras. São os relacionamentos, em última instância, que tornam a estrutura de dados do Borgs *:) semântica.

Parte 4

Relacionando Elementos

Um pouco de nerdice (você pode pular essa parte se estiver com pressa): enquanto as bases de dados relacionais tradicionais se concentram em registros e estruturam as informações a partir do seu local em diferentes tabelas de dados, as bases de dados orientadas por objetos (OODBMS), como a PERST, que o Borgs *:) utiliza, concentram-se nos relacionamentos entre os registros. Isso flexibiliza a estruturação da informação, permitindo constructos que são bem mais difíceis de representar com bases de dados baseadas em tabelas.

Esta é uma representação esquemática de relacionamento que o Borgs *:) utiliza: um elemento E1 é associado a outro elemento, E2, via um relacionamento direcional r. Em oturas palavras, a estrutura de dados do Borgs *:) é um grafo direcionado. A direção permite identificar o que cada elemento é ou fez na relação, tornando-a semântica.

O relacionamento chamado "Escreveu", por exemplo, associa elementos E1 do tipo Pessoa, a elementos E2 do tipo Referência. Um elemento E1 pode ter uma infinidade de outros relacionamentos, assim como o E2. Além disso, ambos podem existir independentemente do relacionamento r ser estabelecido.

Outra vantagem desse tipo de estrutura de dados é que os relacionamentos podem ser facilmente qualificados. O relacionamento r entre os elementos E1 e E2 tem uma contraparte inversa (ou propriedade inversa, em OWL), que é representada automaticamente quando os elementos são associados no Borgs *:).

Na prática, isso significa que quando você associa um elemento Pessoa a um elemento Referência, utilizando o relacionamento "Escreveu", não precisa associar novamente a Referência à Pessoa. O Borgs *:) entende que ela "Foi escrita" pela primeira. Além de economizar tempo e manter a informação estruturada, isso permite que sejam criados relacionamentos mais complexos, as chamadas inferências.

Agora vamos ver isso na prática. Quando você criou um novo conceito a partir da Aba de relacionamento "Explica", do elemento Declaração, o Borgs :*) estabeleceu entre os dois elementos um relacionamento.

Já vimos anteriormente o efeito que o relacionamento inverso, criado automaticamente, produz: na visualização do elemento Conceito, o elemento Declaração aparece como "Explicado como".

Embora útil, esse estabelecimento automático de relacionamento, que ocorre quando criamos elementos a partir da Aba de relacionamento, não vai resolver todas as situações. Frequentemente, você vai precisar associar um novo elemento a algum que já havia criado antes.

Vamos associar o elemento Declaração a um elemento Referência que não foi criado a partir da Aba de relacionamento, e por isso ainda não está associado.

Clique no botão que tem o ícone de relacionamento, na base do cartão, para mostrar todos os relacionamentos possíveis para o elemento Declaração.

Agora, arraste o mini-cartão que representa o elemento Referência que criamos anteriormente, da lista da barra de controle para cima da aba de relacionamento chamada "Apresentada em".

Pronto, um novo relacionamento foi estabelecido para o elemento Declaração. Se você tentar arrastar novamente o mini cartão para cima das outras abas de relacionamento, vai ver que só é possível soltá-lo sobre a aba "Menciona". Isso acontece por duas razões: primeiro, as abas de relacionamento só aceitam os tipos de elementos condizentes com o relacionamento que elas representam. Isso mantém a estrutura de dados coerente, impedindo que, por acidente, você acabe fazendo um elemento Pessoa "escrever" outro elemento Pessoa, por exemplo. Em segundo lugar, um elemento que já esteja associado por um determinado relacionamento não vai ser aceito, evitando que um mesmo relacionamento exista, em duplicidade.

Para remover o relacionamento "Apresentada em" que foi estabelecido entre o elemento Declaração e o elemento Referência, arraste o mini cartão que representa o elemento Referência da aba de relacionamento para o ícone da lixeira no canto superior direito dela. Lembre-se, isso não vai excluir nem o elemento Declaração, nem o elemento Referência, eles apenas não vão mais ser associados através do relacionamento em questão.

Caso você tenha removido o relacionamento para testar, crie-o novamente, para darmos continuidade ao exemplo. Depois, clique no mini cartão que representa o elemento Referência para mostrar as relações dele.

Clique no botão com o ícone de relacionamento, para mostrar todas as abas de relacionamento possíveis, não apenas as que mostram os relacionamentos já criados.

Procure a Aba de relacionamento chamada "Parte de" e clique no botão com o sinal de mais (+) para criarmos um outro elemento Referência para representar o livro que contém o capítulo que já criamos.

Aí estão os dados do livro que contém o capítulo que inserimos anteriormente, em um novo elemento Referência, que vai ser associado ao primeiro.

Como certos tipos de referência são composições de textos de várias pessoas diferentes, o Borgs *:) permite criar esse relacionamento hierárquico entre elas. Conforme você adicione mais partes da mesma referência-mãe, mais elementos Referência representando as partes aparecerão na Aba de relacionamento "Composta por".

Finalmente, vamos associar o elemento Referência que representa o livro a um elemento que represente quem o produziu. Nesse caso específico, Knud Illeris é autor do capítulo (que registramos anteriormente), e organizador do livro como um todo. Então vamos associá-lo à referência propriamente: arraste o mini cartão verde que representa ele da lista da Barra de controle para cima da Aba de relacionamento chamada "Organizada por".


Na próxima parte do tutorial, vamos aprender a criar notas e anexos para complementar a informação.

Clique aqui para acessar!