RDF e RDFS na Infra-estrutura de Suporte à Web Semântica

Tamanho: px
Começar a partir da página:

Download "RDF e RDFS na Infra-estrutura de Suporte à Web Semântica"

Transcrição

1 RDF e RDFS na Infra-estrutura de Suporte à Web Semântica GEIZA CRISTINA DA SILVA, TARCÍSIO DE SOUZA LIMA (ORIENTADOR) Departamento de Ciência da Computação Instituto de Ciências Exatas Universidade Federal de Juiz de Fora Campus Universitário Martelos Juiz de Fora, MG aziegc@vento.com.br, tlima@dcc.ufjf.br Resumo: Muitos bancos de dados de uso corrente são relacionais, com colunas de informação relacionadas umas às outras. Os relacionamentos entre estas colunas são a semântica, o significado dos dados. A Web, entretanto, não contém somente dados estruturados e não pode ser considerada como um banco de dados. A questão do significado é, por um lado, um gargalo, mas por outro, o motor de arranque para a nova geração Web a Web Semântica. Para levar a Web Semântica ao seu potencial pleno, como arena de integração de todos os sistemas de informação, uma nova camada conceitual deve ser adicionada à arquitetura básica de software da Web. O W3C (World Wide Web Consortium) vem desenvolvendo a RDF (Resource Description Framework) e a RDF Schema com este propósito. Esta estrutura se faz necessária para que permitamos aos computadores representar, compartilhar e integrar a informação. Esta é a plataforma de estudo neste projeto, cujo objetivo maior é o de estudar a Web Semântica como meio único e universal para compartilhamento de informações. Em particular, com base na modelagem de um cenário de estudo segundo funcionalidades da RDF e da RDF Schema, verifica-se seus potenciais como aporte semântico para a geração Web que está por vir. Palavras chaves: RDF, RDF Schema, Web Semântica, relacionamento, significado 1 Introdução Os computadores são úteis para organização e processamento lógicos, mas não são capazes de estabelecer associações de significado. Um computador tipicamente mantém as informações em hierarquias rígidas, enquanto a mente humana tem a habilidade especial de ligar pequenas unidades de informação de forma randômica. Com base nesta constatação, a segunda geração da World Wide Web (WWW, Web), cunhada como Web Semântica [Berners- Lee, 1999], envolve o arranjo das idéias e de suas associações de forma não restrita. Assim, um computador poderia representar associações entre coisas que poderiam parecer não relacionadas, mas que de fato, compartilham algum relacionamento. Tim Berners-Lee, criador da Web, via nesta a necessidade de uma evolução, até que ela tenha o poder de fazer com que as informações possuam formato tal que as máquinas venham a fazer associações entre informações que se relacionam [Berners-Lee, 2001]. Quando isso ocorrer de fato, terá sido implementada a Web Semântica. Suponha que se queira pesquisar na Web quais as cidades do país que esteja chovendo. Mesmo havendo hoje uma infinidade de motores de buscas e esses façam uso de algoritmos cada vez mais inteligentes, provavelmente a uma consulta complexa do tipo cidades Brasil chuva hoje não seria retornado nenhum resultado. Se, de outra forma, esta consulta for feita com as palavras chuva, Brasil e cidades, seriam listados centenas de milhares de websites e, a menos que alguém possa acessá-los um a um, fazendo ligações entre os resultados, não se teria ainda resposta para essa pesquisa. Metadados. São dados que descrevem dados mais complexos [W3C, 2001]. Um catálogo de biblioteca é um bom exemplo de metadados porque nos permite obter dados sobre os livros contidos na biblioteca. Dão informações sobre quem escreveu, quando foi publicado, que assunto é discutido etc. De maneira geral, metadados são usados para descrever algum tipo de recurso. Especificamente no contexto do assunto tratado neste artigo, são dados que descrevem recursos da Web. Outros usos de metadados são preservação dos direitos de uso, assinaturas digitais, avaliação de conteúdo etc. Ontologias. Fornecem um entendimento comum e compartilhado de um domínio, que pode ser comunicado através de pessoas e sistemas de aplicação, tornando-se fator chave para o desenvolvimento da Web Semântica [Lima,

2 2001]. Elas podem ser vistas como metadados que representam explicitamente a semântica dos dados, de forma processável por máquina. Os serviços de raciocínio baseados em ontologias podem operacionalizar esta semântica no sentido de prover a Web com vários serviços. As ontologias ajudam as pessoas e os computadores tanto a acessar a informação que eles precisam quanto a comunicarem-se entre si de forma efetiva. Isto é possível tornando explícita a ligação entre a forma e o conteúdo da informação. As ontologias têm, portanto, um papel crucial no sentido que permitem o acesso, a interoperação e a comunicação baseados em conteúdo, fornecendo à Web um nível de serviço qualitativamente novo, que consideramos na Web Semântica. Ela une em rede incríveis porções do conhecimento humano, complementando-as com capacidade de processamento de máquina. Linguagens. A RDF (Resource Description Framework) [Lassila, 1999] é uma camada conceitual que junto com a XML (Extensible Markup Language) [Bray, 2000] tornam-se cruciais para a implementação da Web de significado. Para que a Web seja a integração de todos os sistemas de informação, levando-a, então a seu pleno potencial, a RDF foi desenvolvida pelo W3C World Wide Web Consortium [W3C, 2001], órgão padronizador de tudo o que é relativo a Web. A RDF é o padrão do W3C para metadados na Web. Essa linguagem permite aos computadores representar e compartilhar dados semânticos na Web [Lassila, 1999]. A RDF pode ser utilizada em várias áreas de aplicação da Web: na busca de recursos para melhorar os mecanismos de sites de busca já existente, em bibliotecas virtuais descrevendo o conteúdo disponível, no comércio eletrônico, principalmente na segurança, em websites particulares etc. Também é útil em outras aplicações que estão fora do escopo da Web, como recursos multimídias em geral, bibliotecas digitais e outras. A RDF em si é uma linguagem simples que é capaz de fazer relacionamentos entre informações, mas, além disso, é necessário um meio para definição de dados. A RDF Schema [Brickley, 2000] foi criada pelo W3C com essa finalidade. O objetivo deste artigo é o de verificar o potencial da RDF e da RDF Schema como aporte semântico para a Web. A seção 2 descreve os níveis de linguagens para a Web Semântica, contextualizando as linguagens RDF e RDF Schema dentro dessa arquitetura. A seção 3 apresenta alguns softwares desenvolvidos para trabalhar a RDF. As seções 4 e 5 descrevem detalhes da RDF e da RDF Schema, respectivamente, de acordo com a especificação do W3C. Isso é feito através de exemplos e figuras de forma a facilitar o entendimento. Para ilustrar os recursos dessas linguagens a seção 6 modela um cenário, apresentado em forma de grafo, levando-se em consideração o relacionamento que há entre Artistas e suas Obras. A seção apresenta também exemplos de consultas para o cenário modelado. A seção 7 conclui este artigo com algumas considerações finais. O código RDF/XML do cenário é apresentado no anexo. 2 Níveis de linguagens para a Web Semântica A Web Semântica pode ser vista como uma arquitetura em três níveis [Berners-Lee, 1998], conforme mostrado na figura 1. Somente quando um modelo comum é geral ele pode ser usado por qualquer aplicação mapeada sobre esse modelo. Nível Lógico OIL + DAML Nível Esquema RDF Schema Nível Dados RDF Figura 1: Níveis de linguagens para a Web Semântica O modelo geral aqui é o da Estrutura de Descrição de Recurso a RDF e o nível de dados da arquitetura é constituído por ela. Esta é uma linguagem simples que está apta a prover um modelo de afirmações e citações em que podemos mapear os dados em qualquer novo formato. Documentos RDF neste nível não têm grande poder, mas espera-se que estes dados, enquanto limitados dentro de uma aplicação, sejam combinados, mais tarde, com dados de

3 outras aplicações dentro da Web. Com toda a Web constituída dessas aplicações, elas deverão ser capazes de usar uma estrutura comum para combinar sua informação. O modelo básico da RDF permite que se faça relacionamento entre dados, mas não nos dá muitas ferramentas para isso. Faz-se necessário um nível de esquema onde é declarada a existência de novas propriedades. Assim como na SGML (Standard Generalized Markup Language) [Connolly, 1997] o DTD (Document Type Definition) [Bray, 2000] permite checar se os elementos são utilizados em posições apropriadas, na RDF um esquema permitirá checar que, por exemplo, a carteira de um motorista tem o nome de uma pessoa, e não um modelo de carro, como seu "nome". O próximo nível é o nível lógico. É necessário que haja caminhos de escrita lógica dentro de documentos que permitam coisas tais como a checagem de um documento contra um conjunto de regras de autoconsistência. Essa camada necessita de linguagens de representação de conhecimento, como a OIL (Ontology Inference Layer) ou sua sucessora, a DAML+OIL (DARPA Agent Markup Language, em um projeto conjunto com a OIL) [DAML, 20001][Horrocks, 2001], que está sendo desenvolvida por um grupo de cientistas europeus e norte-americanos. A proposta deste artigo, entretanto, é a de se ater nos níveis de dados, com a RDF, e de esquema, com a RDF Schema. 3 Softwares para RDF O W3C, na especificação de modelo e sintaxe da RDF, reservou duas seções que são básicas para aqueles que querem implementar softwares para a RDF. Elas proporcionam conhecimento do modelo formal e gramática formal da RDF, de forma que seja possível entender seu funcionamento em mais baixo nível. Já podemos encontrar na Web alguns programas como banco de dados, editores, interpretadores e compiladores que estão sendo desenvolvidos e outros que já estão disponíveis para os usuários. Dentre esses foram separados alguns que serão descritos nas próximas subseções deste artigo. 3.1 O editor RDFedt O RDFedt [Winkler, 2001] foi o editor de RDF escolhido para ser usado neste artigo. O RDFedt auxilia na construção de documentos estruturados em RDF e também RSS (RDF Site Summary). Esse editor suporta: a linguagem RDF propriamente dita; a linguagem RDF Schema; elementos Dublin Core (padrão de metadados); o RDF Site Summary 1.0 com os seguintes módulos: agregação, anotação, mudança de página, conteúdo, corte, organização, threading e RSS 0.91; declarações e folhas de estilos em XML; minimização de tags; conjunto de elementos importados; abrir e salvar documentos em arquivos do tipo.xml; gerar código a partir da árvore RDF; imprimir os códigos gerados; testar entradas na árvore RDF; gerar automaticamente lista de links baseados em RDF de um documento HTML. A figura 2 mostra uma imagem de tela do RDFedt para o cenário modelado na seção 6. Figura 2: Imagem de tela do RDFedt

4 3.2 O RDFSuite do ICS-FORTH 1 O ICS-FORTH, tendo em vista a realização do potencial total da Web Semântica, criou um conjunto de ferramentas para RDF [Alexaki, 2001] compreendendo um compilador de validação de RDF o VRP (Validating RDF Parser), um banco de dados específico para RDF o RSSDB (RDF Schema Specific Data Base) e a RQL (RDF Query Language) que é uma linguagem de consultas para RDF O compilador de validação de RDF (VRP) Segundo seus criadores (Alexaki, 2001] este é o primeiro compilador de RDF que suporta validação semântica em recursos de descrições e esquemas. Este compilador analisa sintaticamente as declarações de um documento dado em RDF/XML de acordo com a especificação de modelo e sintaxe da RDF, verifica se os esquemas RDF e as instâncias de metadados satisfazem as restrições semânticas estabelecidas pela especificação da RDF Schema do W3C. O compilador VRP está atualmente disponível para verificar a finalidade de um lançamento alfa. Há uma distribuição fonte e uma de rotinas. Ambas requerem Java 1.2 ou superior (como o YACC/Lex para C). O ICS- FORTH não garante a exatidão do programa. Esta versão atual é para ambiente Linux. Dentre as suas características, podemos citar: desenvolvido 100% em Java; admite RDF embutido em HTML ou XML; suporta Unicode completo; verifica a semântica e a sintaxe de RDF Schema e instâncias de metadados; valida de declarações através de diversos namespaces RDF/XML; baseado em ferramentas geradoras de compiladores padrões para o Java CUP/JFlex; fácil de usar e de se integrar com outros softwares. Quanto às suas limitações, o compilador não suporta o atributo "abouteachprefix" da RDF e, no caso de uso do atributo "abouteach" da RDF, o compilador não suporta referências a outros arquivos. Para um compilador o relatório de erros é uma das características principais. Conseqüentemente o VRP fornece uma lista enorme de mensagens de erro diferenciadas, refinadas com informações adicionais. O sistema fornece para cada erro um número original do erro O banco de dados específico da RDF Schema (RSSDB) É o primeiro complexo de RDF que explora o conhecimento do esquema para gerar automaticamente uma representação de relacionamento entre objetos (SQL3) de metadados RDF e carregar devidamente a descrição de recursos. Este módulo do conjunto ainda está sendo desenvolvido pelo ICS-FORTH A linguagem de consulta da RDF (RQL) A RQL (RDF Query Language) é a primeira linguagem de consulta declarativa (em estilo ODMG-OQL) para metadados e esquemas RDF. RQL é uma linguagem tipada que conta com um modelo de grafos formal, capturando a modelagem primitiva em RDF e RDF Schema e permitindo a interpretação de descrições sobrepostas por meio de um ou mais esquemas. A novidade da RQL está em sua habilidade de alternar diretamente entre esquemas e dados de consulta de forma transparente, a taxonomia de classes e propriedades, bem como as múltiplas classificações dos recursos. Dentre suas características estão: (a) desenvolvimento eficiente em C++ no topo de um sistema gerenciador de banco de dados objeto-relacional (por exemplo PostgreSQL); (b) conta com uma API RDF de consulta, fácil de executar para diferentes sistemas gerenciadores de banco de dados; (c) promove tanto quanto possível a avaliação da consulta ao motor subjacente ao gerenciador de banco de dados; (d) alto nível de acesso a funcionalidades para: navegação por portais de catálogos (fácil navegação, descoberta de recursos), personalização do conteúdo do portal (para vários alvos de audiências), esquemas de buscas e recursos de portais (exploração eficaz e eficiente de grandes bases de descrições), permutação do amontoado de descrições de recursos dentro ou através das comunidades (que empregam esquemas diferentes). Quanto à disponibilidade, o interpretador RQL (motor de consulta) está atualmente em desenvolvimento. Está disponível um demo on-line, para testar principalmente a liberação de uma versão alfa. O ICS-FORTH não dá ainda nenhuma garantia na exatidão do programa. 1 O ICS Institute of Computer Science é um dos sete institutos de pesquisa que constituem o FORTH Foundation of Research Technology Hellas, centro de pesquisa e desenvolvimento do governo grego. Disponível em: <

5 3.3 O SiRPAC interpretador e compilador de RDF O SiRPAC (Simple RDF Parser & Compiler) é um conjunto de classes Java que podem compilar documentos RDF/XML conforme as 3-tuplas do modelo de dados da RDF. Os documentos podem estar em um sistema de arquivo local ou em uma URI (Universal Resource Identifier) na Web. Quando usado via linha de comando, o compilador pode ser configurado para buscar automaticamente esquemas RDF correspondentes a seus namespaces declarados. A versão mais recente deste compilador é a SiRPAC 1.17, que conta com a correção de alguns erros encontrados nas versões anteriores. Para se utilizar do seu serviço on-line basta entrar com uma URI ou colar um documento em RDF/XML no campo do texto. Será retornada uma representação de 3-tuplas do modelo de dados correspondente assim como um grafo do modelo de dados. É possível configurar a forma de apresentação deste grafo, desde o tipo de arquivo até as cores. O serviço é baseado na versão Estão disponíveis para testes vários exemplos de RDF. A figura 3 ilustra a implementação do SiRPAC. Figura 3: Imagem de tela do serviço on-line 3.4 O rdfdb: um banco de dados para RDF O rdfdb [Guha, 2001] foi criado para ser um banco de dados simples, escalável e de código aberto. O objetivo deste projeto é construir um banco de dados que seja capaz de: suportar um grafo orientado a API através de uma linguagem de consulta textual como RDF; carregar e recarregar um arquivo RDF de uma URL na base de dados; escalável para os nós e tuplas; fornecer suporte a esquemas RDF; fornecer suporte para algumas formas básicas de inferência; fornecer o acesso de C e de Perl à base de dados; aplicar a filosofia do Perl: as coisas simples devem ser simples e as coisas complexas devem ser possíveis. A versão atual é 0.46 e foi desenvolvida para Unix, especificamente para BSD (Berkeley Software Distribution) e Linux. O rdfdb se utiliza de uma linguagem de consulta de alto nível chamada SQLish. Suas principais operações são: criação e exclusão de um banco de dados; carregamento de arquivos em um banco de dados; inserção e exclusão de tuplas de dados RDF; comandos de namespace e consultas ao banco de dados. 4 A linguagem RDF Basicamente, a RDF define um modelo de dados para a descrição de dados semânticos processáveis por máquina, que se parece com um diagrama de entidades e relacionamentos, com as propriedades RDF representando relacionamentos entre recursos. Mais precisamente, os RDF Schemas, que são instâncias de modelos de dados RDF, são diagramas ER (Entidade-Relacionamento).

6 4.1 Representação da RDF por grafos rotulados Uma declaração RDF pode ser representada através de grafos rotulados, que também podem ser chamados de diagramas de nós e arcos. A figura 4 é um esquema de como uma declaração pode ser representada através destes diagramas. propriedades RECURSO RECURSO Figura 4: Esquema de representação da RDF em grafo Os nós representam os recursos e as propriedades são representadas pelos arcos. Quando um nó é um literal, é representado por um retângulo. A direção da seta é significante: o arco sempre começa no sujeito e aponta para o objeto da declaração, conceitos esses que serão definidos na próxima seção. 4.2 O modelo básico da RDF O fundamento da RDF estabelece um modelo básico para descrição de dados que consiste em três tipos de objetos. Recursos: um recurso é qualquer coisa descrita em expressões da RDF. Pode ser uma página da Web, um website inteiro ou parte deste. Pode ser também um objeto não acessível via Web, como um livro, uma revista ou um CD. Recursos são sempre especificados por URI s. Propriedades: uma propriedade é uma característica, um atributo ou uma relação utilizada para descrever o recurso. Declarações: uma declaração é um recurso específico com uma propriedade definida mais o valor desta propriedade. Podemos dizer que uma declaração é um recurso mais as propriedades desse recurso e mais o valor dessas propriedades. Essas três partes individuais são chamadas respectivamente de sujeito, predicado e objeto. Em outras palavras, o modelo básico primitivo da RDF consiste de tuplas de objeto, propriedade e valor Exemplos Considere a seguinte sentença: Marcio de Faria é o diretor do site Esta sentença tem as seguintes partes: Sujeito (Recurso) Predicado (Propriedade) Diretor Objeto (literal) Marcio de Faria Isto pode também ser representado através de grafos rotulados como na figura 5. Diretor Marcio de Faria Figura 5: Nó simples e diagrama de arco Este diagrama pode ser lido como: tem como diretor Marcio de Faria ou, de maneira mais geral, <sujeito> TEM <predicado> <objeto>. No próximo exemplo, considere que se quer acrescentar mais características ao objeto da declaração ( Marcio de Faria ). Observe a seguinte sentença: O indivíduo cujo nome é Marcio de Faria, marcio@jfservice.com.br, é o diretor de O modelo para esta sentença é o da figura 6. A diferença entre a sentença anterior e essa é que na primeira temos uma declaração com uma única propriedade ligada a um objeto, um literal. Já nessa sentença, há uma propriedade estruturada (Diretor) que possui duas outras propriedades (Nome e ). Em RDF, propriedades estruturadas são representadas como outro recurso e como a sentença em questão não dá nome para este recurso, ele é anônimo e por isso, representado por uma elipse vazia. Este diagrama pode ser lido como: tem diretor e este tem nome Marcio de Faria e marcio@jfservice.com.br.

7 Diretor Nome Marcio de Faria Figura 6: Propriedade com valor estruturado Continuando com os exemplos, imagine que exista um número único por funcionário designado por ID. A URI que serve como chave única para o funcionário Marcio de Faria é Podemos escrever isto como: O indivíduo referenciado por ID funcionário 395 é chamado de Marcio de Faria, marcio@jfservice.com.br. O website é dirigido por este indivíduo. O modelo RDF para essas sentenças é o da figura 7. Diretor Nome Marcio de Faria marcio@jfservice.com.br Figura 7: Propriedade estruturada com identificador A elipse vazia do exemplo anterior é substituída aqui pela URI A entidade estruturada pode também ser designada por um único identificador, como foi aplicado neste exemplo. O diagrama acima corresponde à leitura de: O website tem por diretor o funcionário referenciado pelo ID 395 chamado Marcio de Faria e que tem por marcio@jfservice.com.br. Freqüentemente o valor de uma propriedade é alguma coisa que tem informação adicional que acaba sendo considerada parte daquele valor. Em outras palavras, há uma necessidade de se qualificar valores de propriedades. Exemplos disso seria a denominação de uma unidade de medida ou alguma outra notação. No modelo RDF uma propriedade de valor qualificado é simplesmente outra instância de um valor estruturado. O objeto da declaração original é este valor estruturado e os qualificadores são propriedades deste recurso comum. 4.3 Sintaxe básica da RDF A especificação do W3C apresenta duas sintaxes de XML para codificação de um modelo de instância de dados em RDF: A sintaxe de serialização básica e a sintaxe básica abreviada. A diferença mais marcante entre as duas está em como a estrutura do modelo RDF é apresentada. A primeira nos oferece uma estrutura mais clara enquanto a segunda uma forma mais compacta. Outra característica desta é que os elementos DTDs podem ser diretamente interpretados como modelos RDF. Como exemplo disso tem-se a terceira sentença acima, adicionando-se o fato que o recurso representa uma instância de uma Pessoa: O indivíduo referenciado por ID

8 funcionário 395 é chamado de Marcio de Faria, O Website é dirigido por este indivíduo. Usando a sintaxe de serialização completa tem-se: <rdf:rdf xmlns:rdf=" xmlns:s=" <rdf:description about=" <s:diretor> <rdf:description about=" <rdf:type resource=" <v:nome>marcio de Faria</v:Nome> <v: >marcio@jfservice.com.br</v: > </rdf:description> </s:diretor> </rdf:description> </rdf:rdf> E usando a sintaxe de serialização abreviada temos o seguinte código RDF/XML: <rdf:rdf <rdf:description about=" <s:diretor> <rdf:s:pessoa about=" <v:nome>marcio de Faria</v:Nome> <v: >marcio@jfservice.com.br</v: > </s:pessoa> </s:diretor> </rdf:description> </rdf:rdf> Observe que nos exemplos de sintaxe básica o prefixo s refere-se a um namespace específico definido na declaração XML tal como: xmlns:s=" Um namespace [Bray, 1999] é uma coleção de nomes, identificadas por uma referência URI, que são usadas em documentos XML como tipos de elementos e nomes de atributos. A especificação do W3C do modelo e sintaxe da RDF apresenta várias formas de uso tanto da sintaxe de serialização básica, como para a abreviada. Todas essas formas para fins da RDF são equivalentes. Algumas delas podem resultar em expressões altamente condensadas que não são recomendadas, já que a possibilidade de inconsistência é maior de que quando se usa prefixos explícitos. 4.4 Modelo de containers O RDF define três tipos de objetos de containers, a saber: Bag. É uma lista não ordenada de recursos ou literal, ou seja, é usada para declarar que uma propriedade tem múltiplos valores e que não importa a ordem em que esses valores são dados. Sequence. É uma lista ordenada de recursos ou literal, ou seja, é usada para declarar que uma propriedade tem múltiplos valores e que a ordem em que esses valores são dados é significante. Alternative. É uma lista de recursos ou literal que representa alternativa de valores para uma propriedade. Neste caso, qualquer um dos valores na lista pode ser escolhido como apropriado. Para representar um container, a RDF usa a propriedade type para identificar uma coleção específica, que deve ser declarada como sendo uma instância de um dos objetos de containers. A relação entre os membros do container e seus recursos é definida por um conjunto de propriedades nomeadas simplesmente por _1, _2, _3, etc Exemplos

9 Considere como exemplo de container a seguinte declaração: Os alunos da turma A são Maria, José, Carlos, Antônio e Francisco. O modelo RDF para essa sentença é o da figura 8. /turmas/a rdf:type rdf:bag Alumos rdf:_1 rdf:_2 rdf:_3 Alunos/Maria Alunos/José Alunos/Carlos rdf:_4 Alunos/Antônio O código RDF/XML pode ser algo do tipo: Figura 8: Container do tipo Bag <?xml version="1.0"?> <rdf:rdf xmlns:rdf=" xmlns:s=" <rdf:description about=" <s:alunos> <rdf:bag> <rdf:li rdf:resource=" <rdf:li rdf:resource=" <rdf:li rdf:resource=" <rdf:li rdf:resource=" </rdf:bag> </s:alunos> </rdf:description> </rdf:rdf> Note que a RDF usa o elemento li para explicitar o número de elementos de cada membro. O próximo exemplo vem ilustrar os três tipos de objetos de container. Considere um documento que tem dois autores, é apresentado em duas línguas diferentes cada qual tendo sua localização na Web. Isso em RDF/XML pode ser escrito como: <?xml version="1.0"?> <rdf:rdf xmlns:rdf=" xmlns:s=" <rdf:description about=" <s:autor> <rdf:seq ID="AutoresPorNome"> Ora Lassila Ralph R.Swick </s:autor> <s:recursos> <rdf:bag ID="Sites"> <rdf:li rdf:resource=" tml"/> <rdf:li rdf:resource=" </rdf:bag> </s:recursos> <s:titulo> <rdf:alt> <rdf:li xml:lang="it">resource Description Framework (RDF) Modello e Sintassi <rdf:li xml:lang="fr">spécification du modèle et la syntaxe du Cadre de Description des Resources </rdf:alt> </s:titulo> </rdf:description>

10 </rdf:rdf> Neste exemplo, os autores são classificados por ordem alfabética, por isso foi usado Sequence, já que a ordem em que são apresentados seus nomes se faz significante. As localizações na Web são equivalentes, portanto é usado um Bag. O container Alternative é usado porque cada tradução da publicação tem um título único e esse tem duas variantes, as línguas que são apresentadas. 5 A linguagem RDF Schema Como já foi citado, o modelo de dados da RDF pode lembrar um diagrama de entidade-relacionamento, já que as propriedades da RDF representam relacionamentos entre recursos. A RDF Schema [Brinkley, 2000] é responsável por prover mecanismos para declaração dessas propriedades. Um esquema não define somente as propriedades dos recursos, mas também os tipos de recursos que estão sendo descritos. Pode ser entendido como uma espécie de dicionário onde são definidos os termos que serão utilizados em declarações RDF. A especificação da RDF Schema do W3C fornece os mecanismos necessários à definição de elementos, de classes de recursos, de possíveis restrições de classes e relacionamentos e detecção de violação de restrições. Escopo. A especificação da RDF Schema foi diretamente pensada levando em consideração problemas específicos e imediatos. Seus criadores esperam que outros problemas futuros compartilhem características parecidas e que assim seja possível usar as classes básicas já projetadas. Os problemas em questão são: PICS (Platform for Internet Content Selection), os metadados simples da Web, mapa de sites e outras ferramentas de navegação e P3P (Platform for Privacy Preferences Project), descritos a seguir. PICS. O modelo e sintaxe RDF é adequado para representar rótulos de PICS, que foi originalmente desenvolvido para ajudar pais e professores a controlar o que as crianças acessam na Internet, além de facilitar outros usos de rótulos, incluindo assinatura de código e privacidade. A RDF Schema, no entanto, não fornece um mapeamento de propósito geral de sistemas de avaliação de PICS dentro de uma representação de RDF. Metadados simples da Web. Uma aplicação óbvia da RDF está na descrição de páginas da Web. Essa é uma das funções básicas da iniciativa Dublin Core. O Dublin Core [DCMI,2001] é um conjunto de 15 elementos largamente aplicáveis para descrever recursos da Web para habilitar sua descoberta. Mapa de sites e outras ferramentas de navegação. A especificação da RDF Schema fornece recursos suficientes para criar modelos RDF que representam sistemas hierárquicos para representar taxonomia de assuntos. Mapas de sites, dicionários e esquemas de classificação de bibliotecas são exemplos bem conhecidos de sistemas hierárquicos. P3P. A plataforma Projeto de Preferências de Privacidade requer uma gramática para construção de declarações sobre práticas de coleção de dados e preferências pessoais como exercício sobre estas práticas, assim como uma sintaxe de dados estruturados de troca. O uso de um esquema de metadados para descrever a estrutura formal de descrição de práticas de privacidade permitirá privacidade na prática de dados para serem utilizados junto com outros metadados em uma consulta durante descoberta de recurso, e permitirá a um agente de software agir de acordo com a privacidade dos metadados usando as mesmas técnicas como utilizadas para outros metadados descritivos. Convenções. (a) Nomes de Classe têm a primeira letra maiúscula (Ex: rdfs:resource); (b) Palavras adicionais ao nome de classe são também maiúsculas (Ex: rdfs:constraintproperty); (c) Nomes de propriedades não têm a primeira letra não maiúscula (Ex: rdfs:domain); e (d) Palavras adicionais ao nome são maiúsculas (Ex: rdfs:subclassof). Restrições. A RDF Schema serve também para especificar restrições visando um modelo RDF consistente. Exemplo de restrições são rdfs:domain e rdfs:range que se refere a propriedades de uso e a regra que rdfs:subpropertyof e rdfs:subclassof não devem formar laços. A RDF Schema usa as propriedades de restrição para definir como suas propriedades podem ser utilizadas. Classes e propriedades de restrições serão mostradas com detalhes na seção Modelagem primitiva da RDF Schema Esse termo refere-se às classes, propriedades e restrições do núcleo da RDF Schema. A RDF Schema descrita na especificação do W3C é uma coleção de recursos da RDF que podem ser utilizados para descrever propriedades de

11 outros recursos da RDF para definir vocabulários para aplicações específicas da RDF. O vocabulário do núcleo é definido usando o namespace rdfs assim como o da RDF usa o prefixo rdf. Os recursos que serão descritos nas próximas seções podem ser vistos em forma de esquema na figura 9 [Brickley, 2000] que ilustra os conceitos de classe, subclasse e recurso. Uma classe é representada pelo retângulo de cantos arredondados, os recursos são representados por um grande ponto preto e as setas apontam de um recurso à sua respectiva classe. Uma subclasse, que também é uma classe, é representada por um retângulo de cantos arredondados envolvido em outro, sua superclasse. Figura 9: Classes e recursos em um esquema de conjuntos e elementos A figura 10 [Brickley, 2000] mostra a hierarquia entre classes através de grafo. A seta com o indicativo s aponta do nó que representa a subclasse ao nó representante da sua respectiva classe, indicando que há entre elas uma propriedade rdfs:subclassof e a seta com o indicativo t, similarmente, aponta do nó que representa o recurso ao da sua instância, indicando que há entre eles uma propriedade rdf:type. Figura 10: Hierarquia de classes da RDF Schema 5.2 Classes e propriedades do núcleo Os seguintes recursos são as classes do núcleo que são definidas como parte do mecanismo da RDF Schema: rdfs:resource: representa o conjunto de recursos do modelo básico da RDF, descrita em 4.2. rdfs:property: representa as propriedades da RDF, que é subconjunto de recursos. Ex: <rdf:property rdf:id="faz"/> rdfs:class: Similar à noção de uma classe em linguagens de orientação a objeto como Java, tendo em vista que uma classe RDF pode representar qualquer recurso tais como: websites, pessoas, tipo de documentos ou conceitos abstratos. Ex: <rdfs:class rdf:id="artista"/>.

12 As propriedades a seguir fornecem um mecanismo para expressar relacionamentos entre classes e suas instâncias ou superclasses. São instâncias da classe rdf:property: rdfs:type: indica que um recurso é membro de uma classe e tem todas as características que são de se esperar de um membro daquela classe. Quando um recurso tem uma propriedade rdf:type cujo valor é alguma classe específica, esse recurso é uma instância dessa classe. Um recurso pode ser uma instância de mais que uma classe. rdfs:subclassof: especifica uma relação hierárquica entre classes. A figura 11 mostra um exemplo simples, onde foram definidas uma classe Artista e duas subclasses de Artista : Compositor e Escritor. Note que rdfs:class é subclasse de rdfs:resource e essa, é uma instância de rdfs:class. rdfs:resource s = rdfs:subclassof s t s s t = rdf:type rdfs:class t t s Artista s t Compositor Escritor Figura 11: Exemplo de hierarquia de classes A seguir é mostrado o código RDF/XML correspondente ao grafo. <?xml version="1.0"?> <rdf:rdf xml:lang="en" xmlns:rdf=" xmlns:rdfs=" <rdfs:class rdf:id="artista"> <rdfs:subclassof rdf:resource=" /> </rdfs:class> <rdfs:class rdf:id="compositor"> <rdfs:subclassof rdf:resource="#artista" /> </rdfs:class> <rdfs:class rdf:id="escritor"> <rdfs:subclassof rdf:resource="#artista" /> </rdfs:class> </rdf:rdf> rdfs:subpropertyof: especifica a relação hierárquica entre propriedades. Nunca pode se declarar que uma classe/propriedade é uma subclasse/subpropriedade de si mesma, nem de qualquer uma de suas subclasses/subpropriedades. A figura 12 mostra um exemplo simples que expressa hierarquia entre propriedades. Foram definidas a propriedade faz e duas subpropriedades de faz : compõe e escreve. Em seguida, é mostrado o código RDF/XML correspondente à parte do grafo que se refere a propriedades. Artista faz rdfs:subproperty Arte Compositor compoe Musica Escritor escreve Livro Figura 12: Exemplo de hierarquia de propriedades <?xml version="1.0"?> <rdf:rdf xml:lang="en" xmlns:rdf=" xmlns:rdfs="

13 <rdf:property rdf:id="faz"> <rdfs:subclassof rdf:resource=" <rdf:property rdf:id="compoe"> <rdfs:subpropertyof rdf:resource="#faz" /> <rdf:property rdf:id="escreve"> <rdfs:subpropertyof rdf:resource="#faz"/> </rdf:rdf> rdfs:seealso: especifica que um recurso contém informação sobre o sujeito de um recurso. rdfs:isdefinedby: é uma subpropriedade de rdfs:seealso; especifica o recurso que define o sujeito da declaração. 5.3 Restrições do núcleo As classes e propriedades descritas a seguir são utilizadas para declarar restrições de consistência: rdfs:contraintresource: define uma subclasse de rdfs:resource cujas instâncias são construções RDF Schema envolvidas no designo de restrições. O propósito desta classe é fornecer um mecanismo que permita que processadores da RDF chequem a consistência de um modelo RDF. rdfs:contraintproperty: define uma subclasse de rdfs:resource cujas instâncias são propriedades utilizadas para especificar restrições. Esta classe é uma subclasse de rdfs:constraintresource e corresponde ao subconjunto daquela classe representando propriedades. rdfs:range: instância de rdfs:constraintproperty que é utilizada para reprimir valores de propriedades. O valor de uma propriedade range é sempre uma classe. Uma propriedade pode ter no máximo uma propriedade rdfs:range. rdfs:domain: instância de rdfs:constraintproperty que é usada para especificar uma classe em que uma propriedade pode ser utilizada. Uma propriedade pode ter zero, uma ou mais que uma classe como seu domínio. Continuando com o exemplo anterior de Artista, temos: <?xml version="1.0"?> <rdf:rdf xml:lang="en" xmlns:rdf=" xmlns:rdfs=" > <rdf:property rdf:id="faz"> <rdfs:domain rdf:resource="#artista" /> <rdfs:range rdf:resource="#arte" /> <rdf:property rdf:id="compoe"> <rdfs:domain rdf:resource="#compositor" /> <rdfs:range rdf:resource="#musica" /> <rdf:property rdf:id="escreve"> <rdfs:domain rdf:resource="#escritor" /> <rdfs:range rdf:resource="#livro" /> </rdf:rdf> Isso quer dizer que, foram definidas três propriedades, a saber: faz, compõe e escreve. A propriedade faz é aplicável para qualquer Artista e seu valor é Arte. A propriedade compõe é aplicável para qualquer Compositor e tem como valor Música, assim como a propriedade escreve que é definida para qualquer Escritor com valor igual a Livro. 5.4 Conceitos de modelo e sintaxe da RDF As seguintes classes e propriedades são referentes aos conceitos de RDF introduzidos acima quando se discutiu acerca do modelo e sintaxe da RDF: rdf:literal: corresponde ao conjunto chamado Literais descrito na seção 4.2. rdf:statement: corresponde ao conjunto chamado declaração descrito na seção 4.2. rdf:subject:corresponde à propriedade chamada sujeito descrito na seção 4.2. rdf:predicate: corresponde à propriedade chamada predicado descrito na seção 4.2.

14 rdf:object: corresponde à propriedade chamada objeto descrito na seção 4.2. rdf:value: corresponde a propriedade chamada valor descrito na seção 4.2. rdfs:container: é utilizada para assegurar as classes de containers descritas na seção 4.4. rdf:bag: corresponde à classe chamada Bag descrita na seção 4.4. rdf:seq: corresponde à classe chamada Seq descrita na seção 4.4. rdf:alt: corresponde à classe chamada Alt descrita na seção 4.4. rdfs:containermembershipproperty: corresponde as propriedades _1, _2, _3, etc. utilizadas para indicar os membros do container descrito na seção Modelagem de um cenário de aplicação Para ilustrar os recursos da RDF e RDF Schema descritos anteriormente, foi modelado um cenário (figura 13) levando-se em conta o relacionamento que há entre Artistas e suas Obras. Assim foi considerado que a criação de todo Artista resulta em uma Arte que é exibida em alguma forma de coletânea que foi chamada de Álbum. Além disso, as Artes, seja a Música ou a Literatura (aqui expressa por Livro), possuem recursos externos como título, ano de criação, tipo de arquivo, gravadora ou editora, e outros atributos, dos quais os três primeiros foram usados na modelagem. ns1: n s2: w w w.w s.co m /n s S C H E M A nom e String faz Artista String sobrenom e com põe Com positor Arte e x ib id a Música Álbum parceria String Integer ano_criação String tipo_arquivo Escritor escreve Livro gênero String RecursoExterno títu lo String D E S C R I Ç Ã O D O S R E C U R S O S nom e M u rilo escreve &r1 sobrenom e M endes A na nom e com põe &r3 sobrenom e Carolina c o m p õ e &r5 instância de subclasse de subpropriedade de &r2 títu lo parceria &r4 títu lo e x ib id a títu lo Poem as ano_criação 1930 gênero Poesias Totonho Villeroy r1: r2:w w w.ce e m.u fjf.b r/p o e m a s.h tm r3: /om elhordem im / Confesso biograf.htm títu lo A na r4: /om elhordem im / &r6 Carolina le tra s.htm # 2 3 A rm azém r5: /om elhordem im / le tra s.htm # 5 r6: anacarolina/letrascd1.htm Figura 13: Modelagem do cenário 6.1 Exemplos de consultas para o cenário modelado As consultas abaixo, formuladas em RQL, ilustram a aplicação aqui modelada. Consulta 1. Encontre todas as propriedades que são especialistas da propriedade faz (ou de suas subpropriedades) e têm como domínio a classe Compositor. $Y from {:Compositor}@P{:$Y} <= faz <?xml version="1.0" encoding="iso "?> <RDF xmlns:rdf=" <rdf:bag ID="bag004"> <rdf:seq> <rdf:li rdf:type="property" rdf:resource="faz" /> <rdf:li rdf:type="class" rdf:resource="arte" />

15 <rdf:seq> <rdf:li rdf:type="property" rdf:resource="faz" /> <rdf:li rdf:type="class" rdf:resource="musica" /> <rdf:seq> <rdf:li rdf:type="property" rdf:resource="faz" /> <rdf:li rdf:type="class" rdf:resource="livro" /> <rdf:seq> <rdf:li rdf:type="property" rdf:resource="compoe" /> <rdf:li rdf:type="class" rdf:resource="musica" /> </rdf:bag> </RDF> Consulta 2. Encontre as propriedades que tem como domínio a classe RecursoExterno e seu respectivo alcance. range(@p) from ExtResource{:$Y}.@P{:$$X} <?xml version="1.0"?> <RDF xmlns:rdf=" <rdf:bag ID="bag005"> <rdf:seq> <rdf:li rdf:type="property" rdf:resource="ano_criacao " /> <rdf:alt> <rdf:li rdf:type="literal" rdf:resource="integer" /> </rdf:alt> <rdf:seq> <rdf:li rdf:type="property" rdf:resource="tipo_arquivo" /> <rdf:alt> <rdf:li rdf:type="literal" rdf:resource="string" /> </rdf:alt> <rdf:seq> <rdf:li rdf:type="property" rdf:resource="titulo" /> <rdf:alt> <rdf:li rdf:type="literal" rdf:resource="string" /> </rdf:alt> </rdf:bag> </RDF> Consulta3. Encontre todas as informações sobre select X, Y, $$W from {X:$Z}@P{Y:$$W} where X like "[^ *" or Y like "[^ *" <?xml version="1.0"?>

16 <RDF xmlns:rdf=" <rdf:bag ID="bag006"> <rdf:seq> <rdf:alt> <rdf:li rdf:type="resource" rdf:resource=" /> </rdf:alt> <rdf:li rdf:type="class" rdf:resource="recursoexterno" /> <rdf:li rdf:type="property" rdf:resource="titulo" /> <rdf:alt> <rdf:li rdf:type="string"> Ana Carolina </rdf:alt> <rdf:seq> <rdf:alt> <rdf:li rdf:type="resource" rdf:resource=" /> </rdf:alt> <rdf:li rdf:type="class" rdf:resource="musica" /> <rdf:li rdf:type="property" rdf:resource="exibida" /> <rdf:alt> <rdf:li rdf:type="resource" rdf:resource=" /> </rdf:alt> <rdf:alt> <rdf:li rdf:type="class" rdf:resource="album" /> </rdf:alt> </rdf:bag> </RDF> 7 Conclusão e considerações finais O objetivo deste artigo foi o de verificar as funcionalidades da RDF como suporte à Web Semântica. Isso foi feito seguindo um caminho por passos. O primeiro deles foi conhecer um pouco mais da Web Semântica, sua arquitetura, objetivos, aplicações etc., descobrindo qual o papel da RDF em todo esse contexto. Depois disso, se fez necessário ter uma noção da sintaxe da RDF e da RDF Schema. Para tal foi consultado o W3C que tem concentrado esforços em padronizar tudo o que é concernente à Web. Através do W3C buscou-se acesso à especificação da linguagem RDF, cujo status é o de recomendação, e também à especificação da RDF Schema, atualmente candidata a recomendação. Para adequação ao estado-da-arte, este artigo procurou conhecer um pouco mais sobre o que já foi feito no mundo com respeito a Web Semântica, particularmente as linguagens RDF e RDF Schema. Para tal, se encontrou na Web vários softwares desenvolvidos que dão suporte à linguagem RDF, dos quais alguns foram especificados na seção 3; diversos textos referentes ao assunto, alguns registrados como referência neste artigo; várias organizações oficiais exclusivamente dedicadas ou mobilizadas a promover a Web Semântica, entre outros recursos. Na fase seguinte, o artigo modelou um cenário para uma aplicação de forma que se pudesse entender mais claramente a sintaxe da RDF e RDF Schema. Para isso foi feito um modelo em forma de grafo, prototipado seu código RDF/XML e realizado consultas em termos da linguagem RQL para o cenário assim estabelecido. Os

17 softwares utilizados, na verdade, ainda estão em fase de construção e testes (versões beta) e, por isso, possuem grandes limitações. Um editor testado neste artigo foi o RDFedt e um compilador foi o SiRPAC. O RDFSuite, ambiente de ferramentas para apoio à RDF, entretanto, foi quem auxiliou sobremaneira o entendimento da RDF Schema, através de sua linguagem de consulta a RQL. Apesar da RDF ser uma recomendação do W3C e haver muitos esforços concentrados em sua evolução, há ainda muito por se fazer para que ela esteja consolidada. Soluções práticas incluem: (a) a derivação de RDF a partir de fontes XML; (b) a convergência de mapas de tópicos (topic maps) com RDF; (c) a emergência de motores e de banco de dados em RDF; e (d) interfaces com o usuário (gerais ou específicas) para dados RDF, implementando dessa forma novos websites. Estas soluções ficam aqui consideradas como sugestões para trabalhos futuros. As linguagens para a Web Semântica, em geral, ainda são pouco conhecidas da comunidade afim, até porque tratam-se de linguagens muito novas, recentemente tornadas padrão ou ainda em vias disso. Quanto às referências bibliográficas, ainda existem poucos textos em português, a maioria das referências encontrada foi em língua inglesa. Deve-se considerar ainda que foram tratados aqui somente os níveis de dados e de esquema da arquitetura de linguagens da Web Semântica. Esta arquitetura prevê ainda um nível lógico, com as linguagens DAML+OIL e outras linguagens mais específicas como, por exemplo, a DAML-R para tratamento de regras, que irá agregar mecanismos de provas, promovendo assim a credibilidade da Web. Juntamente com a infra-estrutura básica promovida pela HTML e XML, essas linguagens compõem o contexto da nova geração Web. O estudo focalizado aqui deve se inserir nesse contexto maior, para sua completude. Ainda como sugestão de trabalhos futuros, vale considerar a Web Semântica nos diversos níveis de sua arquitetura, complementando a abordagem aqui tratada. Maior atenção deve ser dada, entretanto, ao nível lógico, pela sua complexidade inerente. Agradecimentos Os autores agradecem a leitura e as críticas das professoras doutoras Fernanda Cláudia Alves Campos e Regina Maria Maciel Braga, que muito contribuíram para a versão em que se encontra este artigo. A primeira autora agradece, também, o suporte financeiro recebido da Coordenação de Desenvolvimento da Pesquisa através do VIII Programa de Bolsas de Conclusão de Curso de Graduação da UFJF, exclusivo para a realização deste trabalho. Referências bibliográficas [Alexaki, 2001] Alexaki, S. et al. The RDFSuite: managing voluminous RDF description bases. In: International Workshop on The Semantic Web, 2, 2001, Hong Kong. Proceedings, 2001 [Berners-Lee, 1998] Berners-Lee, T. Semantic Web road map, (Nota interna, W3C). Disponível em: < Acesso em: 11 junho [Berners-Lee, 1999] Berners-Lee, T. Weaving the Web: the original design and ultimate destiny of the World Wide Web by its inventor. 1.ed. San Francisco, CA: HarperSanFrancisco, p. [Berners-Lee, 2001] Berners-Lee, T.; Hendler, J.; Lassila, O. The Semantic Web. Scientific American, New York, May [Bray, 1999] Bray, T.; Hollander, D.; Layman, A. Namespaces in XML, 14 Jan (Candidata a recomendação do W3C). Disponível em: < Acesso em: 07 julho [Bray, 2000] Bray, T. et al. (eds.). Extensible Markup Language (XML) 1.0, 2.ed., 6 Oct (Recomendação do W3C). Disponível em: < Acesso em: 15 março [Brickley, 2000] Brickley, D.; Guha, R..V. (eds.). Resource Description Framework (RDF) Schema specification março 2000, 1.ed., (Recomendação do W3C). Disponível em: < Acesso em: 12 abril [Broekstra, 2000] Broekstra, J. et al. Adding formal semantics to the Web: building on top of RDF Schema. In: ECDL 2000 Workshop on the Semantic Web, 1, 2000, Lisboa. Electronic Proceedings... Disponível em < Acesso em: 18 abril 2001.

18 [Connolly, 1997] Connolly, D. Overview of SGML Resources, Disponível em: < Acesso em 5 julho de [DAML, 2001] [DCMI, 2001] [Guha, 2001] [Horrocks, 2001] [Lassila, 1999] [Lima, 2001] [Winkler, 2001] [W3C, 2001] The DARPA Agent Markup Language Homepage. Operada pelo DARPA Technology Integration Center, Arlington, VA, EUA. Disponível em: < Acesso em: 01 junho Dublin Core Metadata Iniciative, 2001, Disponível em: < Acesso em: 29 junho 2001 Guha, R.V. rdfdb: na RDF database, Disponível em: < Acesso em: 18 junho Horrocks, I. et al. DAML+OIL (march 2001). Disponível em: < Acesso em: 01 junho Lassila, O.; Swick, R. (eds.). Resource Description Framework (RDF) model and syntax specification.1.0, 22 Feb (Recomendação do W3C). Disponível em: < Acesso em: 12 abril Lima, T. Entrelaçamentos semânticos modelando a integração da informação na Web Semântica. São Carlos, f. Tese (Doutorado em Ciência da Computação) Instituto de Ciências Matemáticas e de Computação, Universidade de São Paulo. Winkler, J. RDFedt Disponível em: < Acesso em: 07 maio World Wide Web Consortium. Hospedada pelo MIT/LCS:USA; INRIA: França; e Keio University: Japão. Disponível em: < Acesso em: 29 junho Anexo : Código RDF/XML do cenário modelado <?xml version="1.0"?> <rdf:rdf xml:lang="en" xmlns:rdf=" xmlns:rdfs=" xmlns=""> <rdfs:class rdf:id="artista" /> <rdfs:class rdf:id="arte" /> <rdfs:class rdf:id="album" /> <rdfs:class rdf:id="compositor"> <rdfs:subclassof rdf:resource="#artista" /> </rdfs:class> <rdfs:class rdf:id="escritor"> <rdfs:subclassof rdf:resource="#artista" /> </rdfs:class> <rdfs:class rdf:id="musica"> <rdfs:subclassof rdf:resource="#arte" /> </rdfs:class> <rdfs:class rdf:id="livro"> <rdfs:subclassof rdf:resource="#arte" /> </rdfs:class> <rdf:property rdf:id="faz"> <rdfs:domain rdf:resource="#artista" /> <rdfs:range rdf:resource="#arte" /> <rdf:property rdf:id="compoe"> <rdfs:domain rdf:resource="#compositor" /> <rdfs:range rdf:resource="#musica" /> <rdfs:subpropertyof rdf:resource="#faz" /> <rdf:property rdf:id="escreve"> <rdfs:domain rdf:resource="#escritor" /> <rdfs:range rdf:resource="#livro" /> <rdfs:subpropertyof rdf:resource="#faz" /> <rdf:property rdf:id="exibida"> <rdfs:domain rdf:resource="#arte" />

19 <rdfs:range rdf:resource="#album" /> <rdf:property rdf:id="feita_em_parceria"> <rdfs:domain rdf:resource="#musica" /> <rdfs:range rdf:resource=" /> <rdf:property rdf:id="tem_genero"> <rdfs:domain rdf:resource="#livro" /> <rdfs:range rdf:resource=" /> <rdf:property rdf:id="nome"> <rdfs:domain rdf:resource="#artista" /> <rdfs:range rdf:resource=" /> <rdf:property rdf:id="sobrenome"> <rdfs:domain rdf:resource="#artista"/> <rdfs:range rdf:resource=" /> <rdfs:class rdf:id="recursoexterno" /> <rdf:property rdf:id="titulo"> <rdfs:domain rdf:resource="#recursoexterno" /> <rdfs:range rdf:resource=" /> <rdf:property rdf:id="tipo_arquivo"> <rdfs:domain rdf:resource="#recursoexterno" /> <rdfs:range rdf:resource=" /> <rdf:property rdf:id="ano_criacao"> <rdfs:domain rdf:resource="#recursoexterno" /> <rdfs:range rdf:resource=" /> <Compositor rdf:id="biograf"> <nome> Ana </nome> <sobrenome> Carolina </sobrenome> <compoe> <Musica rdf:about=" <exibida> <Album rdf:about=" /> </exibida> </Musica> </compoe> <compoe> <Musica rdf:about=" <parceria> Totonho Villeroy </parceria> </Musica> </compoe> </Compositor> <Escritor rdf:id="opoeta"> <escreve> <Livro rdf:about=" <genero> Poesias </genero> </Livro> </escreve> </Escritor> <RecursoExterno rdf:about=" <titulo> Ana Carolina </titulo> </RecursoExterno> <RecursoExterno rdf:about=" <titulo> Armazém </titulo> </RecursoExterno> <RecursoExterno rdf:about=" <titulo> Confesso </titulo> </RecursoExterno> <RecursoExterno rdf:about=" <titulo> Poemas </titulo> <ano_criacao> 1930 </ano_criacao> </RecursoExterno> </rdf:rdf>

RDF e RDF Schema na representação de páginas do portal CEULP/ULBRA

RDF e RDF Schema na representação de páginas do portal CEULP/ULBRA RDF e RDF Schema na representação de páginas do portal CEULP/ULBRA Danilo de Abreu Noleto 1, Parcilene Fernandes de Brito 1 1 Curso de Sistemas de Informação Centro Universitário Luterano de Palmas (CEULP/ULBRA)

Leia mais

O padrão RDF na descrição de imagens

O padrão RDF na descrição de imagens O padrão RDF na descrição de imagens Edeilson Milhomem da Silva 1, Parcilene Fernandes de Brito 1 1 Sistemas de Informação Centro Universitário Luterano de Palmas (CEULP/ULBRA) Cx. Postal 160 77054-970

Leia mais

Padrões, Ferramentas e Boas Práticas no Desenvolvimento de Software para Web Semântica

Padrões, Ferramentas e Boas Práticas no Desenvolvimento de Software para Web Semântica Padrões, Ferramentas e Boas Práticas no Desenvolvimento de Software para Web Semântica Ernesto F. Veiga, Márcio V. Oliveira Sena, Renato de F. Bulcão Neto ernestofonseca@inf.ufg.br marciovinicius@inf.ufg.br

Leia mais

D2R EDITOR: HABILITANDO A PUBLICAÇÃO AUTOMÁTICA DE ANOTAÇÕES SEMÂNTICAS DE SITES DINÂMICOS

D2R EDITOR: HABILITANDO A PUBLICAÇÃO AUTOMÁTICA DE ANOTAÇÕES SEMÂNTICAS DE SITES DINÂMICOS UNIVERSIDADE FEDERAL DE SANTA CATARINA PROGRAMA DE PÓS-GRADUAÇÃO EM CIÊNCIA DA COMPUTAÇÃO André Guerreiro Cantarelli D2R EDITOR: HABILITANDO A PUBLICAÇÃO AUTOMÁTICA DE ANOTAÇÕES SEMÂNTICAS DE SITES DINÂMICOS

Leia mais

Web de hoje (2.0) Porquê WEB 2.0?

Web de hoje (2.0) Porquê WEB 2.0? WEB 2.0 Conceitos O termo Web 2.0 refere-se a mudança para uma Internet como plataforma e um entendimento das regras para obter sucesso nesta nova plataforma. Segundo Tim O'Reilly, um dos criadores do

Leia mais

Metadados. 1. Introdução. 2. O que são Metadados? 3. O Valor dos Metadados

Metadados. 1. Introdução. 2. O que são Metadados? 3. O Valor dos Metadados 1. Introdução O governo é um dos maiores detentores de recursos da informação. Consequentemente, tem sido o responsável por assegurar que tais recursos estejam agregando valor para os cidadãos, as empresas,

Leia mais

DESENVOLVIMENTO WEB DENTRO DOS PARADIGMAS DO HTML5 E CSS3

DESENVOLVIMENTO WEB DENTRO DOS PARADIGMAS DO HTML5 E CSS3 DESENVOLVIMENTO WEB DENTRO DOS PARADIGMAS DO HTML5 E CSS3 Eduardo Laguna Rubai, Tiago Piperno Bonetti Universidade Paranaense (Unipar) Paranavaí PR- Brasil eduardorubay@gmail.com, bonetti@unipar.br Resumo.

Leia mais

Existem 109 questões nesta pesquisa

Existem 109 questões nesta pesquisa FASE 2: ANÁLISE DO WEBSITE INSTRUÇÕES Leia atentamente todas as questões Explore o website em avaliação, procurando pelas questões propostas Depois, responda cada questão Algumas questões precisam de informações

Leia mais

TRABALHO DE DIPLOMAÇÃO Regime Modular ORIENTAÇÕES SOBRE O ROTEIRO DO PROJETO FINAL DE SISTEMAS DE INFORMAÇÕES

TRABALHO DE DIPLOMAÇÃO Regime Modular ORIENTAÇÕES SOBRE O ROTEIRO DO PROJETO FINAL DE SISTEMAS DE INFORMAÇÕES TRABALHO DE DIPLOMAÇÃO Regime Modular ORIENTAÇÕES SOBRE O ROTEIRO DO PROJETO FINAL DE SISTEMAS DE INFORMAÇÕES [Observação: O template a seguir é utilizado como roteiro para projeto de sistemas orientado

Leia mais

Tabela de Símbolos. Análise Semântica A Tabela de Símbolos. Principais Operações. Estrutura da Tabela de Símbolos. Declarações 11/6/2008

Tabela de Símbolos. Análise Semântica A Tabela de Símbolos. Principais Operações. Estrutura da Tabela de Símbolos. Declarações 11/6/2008 Tabela de Símbolos Análise Semântica A Tabela de Símbolos Fabiano Baldo Após a árvore de derivação, a tabela de símbolos é o principal atributo herdado em um compilador. É possível, mas não necessário,

Leia mais

Aplicação Prática de Lua para Web

Aplicação Prática de Lua para Web Aplicação Prática de Lua para Web Aluno: Diego Malone Orientador: Sérgio Lifschitz Introdução A linguagem Lua vem sendo desenvolvida desde 1993 por pesquisadores do Departamento de Informática da PUC-Rio

Leia mais

Semântica para Sharepoint. Busca semântica utilizando ontologias

Semântica para Sharepoint. Busca semântica utilizando ontologias Semântica para Sharepoint Busca semântica utilizando ontologias Índice 1 Introdução... 2 2 Arquitetura... 3 3 Componentes do Produto... 4 3.1 OntoBroker... 4 3.2 OntoStudio... 4 3.3 SemanticCore para SharePoint...

Leia mais

L A C Laboratory for Advanced Collaboration

L A C Laboratory for Advanced Collaboration Publicação de Dados Governamentais no Padrão Linked Data 2.3 Web Ontology Language (OWL) Karin Breitman José Viterbo Edgard Marx Percy Salas L A C Laboratory for Advanced Collaboration Objetivo deste módulo

Leia mais

Desenvolvendo uma Arquitetura de Componentes Orientada a Serviço SCA

Desenvolvendo uma Arquitetura de Componentes Orientada a Serviço SCA Desenvolvendo uma Arquitetura de Componentes Orientada a Serviço SCA RESUMO Ricardo Della Libera Marzochi A introdução ao Service Component Architecture (SCA) diz respeito ao estudo dos principais fundamentos

Leia mais

FACULDADE DE ENGENHARIA DE COMPUTAÇÃO. PROJETO FINAL I e II PLANO DE TRABALHO <NOME DO TRABALHO> <Nome do Aluno> <Nome do Orientador>

FACULDADE DE ENGENHARIA DE COMPUTAÇÃO. PROJETO FINAL I e II PLANO DE TRABALHO <NOME DO TRABALHO> <Nome do Aluno> <Nome do Orientador> FACULDADE DE ENGENHARIA DE COMPUTAÇÃO PROJETO FINAL I e II PLANO DE TRABALHO O Trabalho de Conclusão de Curso (TCC) a ser desenvolvido

Leia mais

Feature-Driven Development

Feature-Driven Development FDD Feature-Driven Development Descrição dos Processos Requisitos Concepção e Planejamento Mais forma que conteúdo Desenvolver um Modelo Abrangente Construir a Lista de Features Planejar por

Leia mais

3.1 Definições Uma classe é a descrição de um tipo de objeto.

3.1 Definições Uma classe é a descrição de um tipo de objeto. Unified Modeling Language (UML) Universidade Federal do Maranhão UFMA Pós Graduação de Engenharia de Eletricidade Grupo de Computação Assunto: Diagrama de Classes Autoria:Aristófanes Corrêa Silva Adaptação:

Leia mais

Hardware (Nível 0) Organização. Interface de Máquina (IM) Interface Interna de Microprogramação (IIMP)

Hardware (Nível 0) Organização. Interface de Máquina (IM) Interface Interna de Microprogramação (IIMP) Hardware (Nível 0) Organização O AS/400 isola os usuários das características do hardware através de uma arquitetura de camadas. Vários modelos da família AS/400 de computadores de médio porte estão disponíveis,

Leia mais

"Manual de Acesso ao Moodle - Discente" 2014

Manual de Acesso ao Moodle - Discente 2014 "Manual de Acesso ao Moodle - Discente" 2014 Para acessar a plataforma, acesse: http://www.fem.com.br/moodle. A página inicial da plataforma é a que segue abaixo: Para fazer o login, clique no link Acesso

Leia mais

XML e Banco de Dados de Internet. Tópicos Especiais em Tecnologia da Informação Profa. Késsia R. C. Marchi

XML e Banco de Dados de Internet. Tópicos Especiais em Tecnologia da Informação Profa. Késsia R. C. Marchi XML e Banco de Dados de Internet Tópicos Especiais em Tecnologia da Informação Profa. Késsia R. C. Marchi Motivação Diversas aplicações Web utilizam Fontes de Dados (BD); Arquitetura Cliente-Servidor (2

Leia mais

Banco de Dados Aula 1 Introdução a Banco de Dados Introdução Sistema Gerenciador de Banco de Dados

Banco de Dados Aula 1 Introdução a Banco de Dados Introdução Sistema Gerenciador de Banco de Dados Banco de Dados Aula 1 Introdução a Banco de Dados Introdução Um Sistema Gerenciador de Banco de Dados (SGBD) é constituído por um conjunto de dados associados a um conjunto de programas para acesso a esses

Leia mais

PROJETO DE REDES www.projetoderedes.com.br

PROJETO DE REDES www.projetoderedes.com.br PROJETO DE REDES www.projetoderedes.com.br Centro Universitário de Volta Redonda - UniFOA Curso Tecnológico de Redes de Computadores 5º período Disciplina: Tecnologia WEB Professor: José Maurício S. Pinheiro

Leia mais

Conceitos de Banco de Dados

Conceitos de Banco de Dados Conceitos de Banco de Dados Autor: Luiz Antonio Junior 1 INTRODUÇÃO Objetivos Introduzir conceitos básicos de Modelo de dados Introduzir conceitos básicos de Banco de dados Capacitar o aluno a construir

Leia mais

Persistência e Banco de Dados em Jogos Digitais

Persistência e Banco de Dados em Jogos Digitais Persistência e Banco de Dados em Jogos Digitais Prof. Marcos Francisco Pereira da Silva Especialista em Engenharia de Software Jogos Digitais - Computação Gráfica 1 Agenda Vantagens de usar a abordagem

Leia mais

Diagrama de Classes. Um diagrama de classes descreve a visão estática do sistema em termos de classes e relacionamentos entre as classes.

Diagrama de Classes. Um diagrama de classes descreve a visão estática do sistema em termos de classes e relacionamentos entre as classes. 1 Diagrama de Classes Um diagrama de classes descreve a visão estática do sistema em termos de classes e relacionamentos entre as classes. Um dos objetivos do diagrama de classes é definir a base para

Leia mais

Conteúdo. Disciplina: INF 02810 Engenharia de Software. Monalessa Perini Barcellos. Centro Tecnológico. Universidade Federal do Espírito Santo

Conteúdo. Disciplina: INF 02810 Engenharia de Software. Monalessa Perini Barcellos. Centro Tecnológico. Universidade Federal do Espírito Santo Universidade Federal do Espírito Santo Centro Tecnológico Departamento de Informática Disciplina: INF 02810 Prof.: (monalessa@inf.ufes.br) Conteúdo 1. Introdução 2. Processo de Software 3. Gerência de

Leia mais

Universidade Federal de Santa Maria Curso de Arquivologia. Disciplina de Banco de Dados Aplicados à Arquivística. Versao 1.

Universidade Federal de Santa Maria Curso de Arquivologia. Disciplina de Banco de Dados Aplicados à Arquivística. Versao 1. Universidade Federal de Santa Maria Curso de Arquivologia Disciplina de Banco de Dados Aplicados à Arquivística Prof. Andre Zanki Cordenonsi Versao 1.0 Março de 2008 Tópicos Abordados Conceitos sobre Banco

Leia mais

Glossário Apresenta a definição dos termos, siglas e abreviações utilizadas no contexto do projeto Citsmart.

Glossário Apresenta a definição dos termos, siglas e abreviações utilizadas no contexto do projeto Citsmart. Apresenta a definição dos termos, siglas e abreviações utilizadas no contexto do projeto Citsmart. Versão 1.6 15/08/2013 Visão Resumida Data Criação 15/08/2013 Versão Documento 1.6 Projeto Responsáveis

Leia mais

ISO/IEC 12207: Gerência de Configuração

ISO/IEC 12207: Gerência de Configuração ISO/IEC 12207: Gerência de Configuração Durante o processo de desenvolvimento de um software, é produzida uma grande quantidade de itens de informação que podem ser alterados durante o processo Para que

Leia mais

Desenvolvendo Websites com PHP

Desenvolvendo Websites com PHP Desenvolvendo Websites com PHP Aprenda a criar Websites dinâmicos e interativos com PHP e bancos de dados Juliano Niederauer 19 Capítulo 1 O que é o PHP? O PHP é uma das linguagens mais utilizadas na Web.

Leia mais

INTEGRAÇÃO DE APLICAÇÕES UTILIZANDO WEB SERVICE 1. Kellen Kristine Perazzoli 2 ; Manassés Ribeiro 3

INTEGRAÇÃO DE APLICAÇÕES UTILIZANDO WEB SERVICE 1. Kellen Kristine Perazzoli 2 ; Manassés Ribeiro 3 INTEGRAÇÃO DE APLICAÇÕES UTILIZANDO WEB SERVICE 1 Kellen Kristine Perazzoli 2 ; Manassés Ribeiro 3 INTRODUÇÃO Atualmente empresas de diversos portes estão encontrando nos web services soluções para seus

Leia mais

UNIVERSIDADE. Sistemas Distribuídos

UNIVERSIDADE. Sistemas Distribuídos UNIVERSIDADE Sistemas Distribuídos Ciência da Computação Prof. Jesus José de Oliveira Neto Web Services Web Services Existem diferentes tipos de comunicação em um sistema distribuído: Sockets Invocação

Leia mais

ESTENDENDO A UML PARA REPRESENTAR RESTRIÇÕES DE INTEGRIDADE

ESTENDENDO A UML PARA REPRESENTAR RESTRIÇÕES DE INTEGRIDADE ESTENDENDO A UML PARA REPRESENTAR RESTRIÇÕES DE INTEGRIDADE Fabiana Gomes Marinho Faculdade Lourenço Filho Resumo: Na UML, a modelagem conceitual dos dados é descrita pelo diagrama de classes, que através

Leia mais

Este relatório tem por objetivo, abordar a sintaxe XML.

Este relatório tem por objetivo, abordar a sintaxe XML. Relatório do GPES Este relatório tem por objetivo, abordar a sintaxe XML. XML Estrutura do documento Um documento XML é uma árvore rotulada onde um nó externo consiste de: [1] Dados de caracteres (uma

Leia mais

Armazenamento e Pesquisa de Topic Maps em Banco de Dados Relacional

Armazenamento e Pesquisa de Topic Maps em Banco de Dados Relacional Armazenamento e Pesquisa de Topic Maps em Banco de Dados Relacional Lucas Indrusiak, Renato Azevedo, Giovani R. Librelotto UNIFRA Centro Universitário Franciscano Rua dos Andradas, 1614 97.010-032 Santa

Leia mais

UNIVERSIDADE FEDERAL DO PARANÁ UFPR Bacharelado em Ciência da Computação

UNIVERSIDADE FEDERAL DO PARANÁ UFPR Bacharelado em Ciência da Computação SOFT DISCIPLINA: Engenharia de software AULA NÚMERO: 08 DATA: / / PROFESSOR: Andrey APRESENTAÇÃO O objetivo desta aula é apresentar e discutir conceitos relacionados a modelos e especificações. Nesta aula

Leia mais

Roteiro para a escrita do documento de Especificação de Requisitos de Software (ERS)

Roteiro para a escrita do documento de Especificação de Requisitos de Software (ERS) Roteiro para a escrita do documento de Especificação de Requisitos de Software (ERS) Definição Geral: Disciplina de Compiladores Prof. Jorge Bidarra (UNIOESTE) A especificação de requisitos tem como objetivo

Leia mais

Engenharia de Requisitos

Engenharia de Requisitos Engenharia de Requisitos Introdução a Engenharia de Requisitos Professor: Ricardo Argenton Ramos Aula 08 Slide 1 Objetivos Introduzir a noção de requisitos do sistema e o processo da engenharia de requisitos.

Leia mais

Dadas a base e a altura de um triangulo, determinar sua área.

Dadas a base e a altura de um triangulo, determinar sua área. Disciplina Lógica de Programação Visual Ana Rita Dutra dos Santos Especialista em Novas Tecnologias aplicadas a Educação Mestranda em Informática aplicada a Educação ana.santos@qi.edu.br Conceitos Preliminares

Leia mais

Análise e Projeto Orientados por Objetos

Análise e Projeto Orientados por Objetos Análise e Projeto Orientados por Objetos Aula 02 Análise e Projeto OO Edirlei Soares de Lima Análise A análise modela o problema e consiste das atividades necessárias para entender

Leia mais

Para construção dos modelos físicos, será estudado o modelo Relacional como originalmente proposto por Codd.

Para construção dos modelos físicos, será estudado o modelo Relacional como originalmente proposto por Codd. Apresentação Este curso tem como objetivo, oferecer uma noção geral sobre a construção de sistemas de banco de dados. Para isto, é necessário estudar modelos para a construção de projetos lógicos de bancos

Leia mais

LINGUAGENS E PARADIGMAS DE PROGRAMAÇÃO. Ciência da Computação IFSC Lages. Prof. Wilson Castello Branco Neto

LINGUAGENS E PARADIGMAS DE PROGRAMAÇÃO. Ciência da Computação IFSC Lages. Prof. Wilson Castello Branco Neto LINGUAGENS E PARADIGMAS DE PROGRAMAÇÃO Ciência da Computação IFSC Lages. Prof. Wilson Castello Branco Neto Conceitos de Linguagens de Roteiro: Apresentação do plano de ensino; Apresentação do plano de

Leia mais

Especificação do 3º Trabalho

Especificação do 3º Trabalho Especificação do 3º Trabalho I. Introdução O objetivo deste trabalho é abordar a prática da programação orientada a objetos usando a linguagem Java envolvendo os conceitos de classe, objeto, associação,

Leia mais

Análise e Desenvolvimento de Sistemas ADS Programação Orientada a Obejeto POO 3º Semestre AULA 03 - INTRODUÇÃO À PROGRAMAÇÃO ORIENTADA A OBJETO (POO)

Análise e Desenvolvimento de Sistemas ADS Programação Orientada a Obejeto POO 3º Semestre AULA 03 - INTRODUÇÃO À PROGRAMAÇÃO ORIENTADA A OBJETO (POO) Análise e Desenvolvimento de Sistemas ADS Programação Orientada a Obejeto POO 3º Semestre AULA 03 - INTRODUÇÃO À PROGRAMAÇÃO ORIENTADA A OBJETO (POO) Parte: 1 Prof. Cristóvão Cunha Objetivos de aprendizagem

Leia mais

UNIVERSIDADE FEDERAL DO RIO GRANDE DO NORTE ESCOLA AGRÍCOLA DE JUNDIAÍ EAJ - PRONATEC / REDE etec MÓDULO III DESENVOLVIMENTO PROFESSOR ADDSON COSTA

UNIVERSIDADE FEDERAL DO RIO GRANDE DO NORTE ESCOLA AGRÍCOLA DE JUNDIAÍ EAJ - PRONATEC / REDE etec MÓDULO III DESENVOLVIMENTO PROFESSOR ADDSON COSTA UNIVERSIDADE FEDERAL DO RIO GRANDE DO NORTE ESCOLA AGRÍCOLA DE JUNDIAÍ EAJ - PRONATEC / REDE etec MÓDULO III DESENVOLVIMENTO PROFESSOR ADDSON COSTA RESUMO DE AULA CRIAÇÃO E MANIPULAÇÃO DO BANCO DE DADOS

Leia mais

L A C Laboratory for Advanced Collaboration

L A C Laboratory for Advanced Collaboration Publicação de Dados Governamentais no Padrão Linked Data 2.2 O Padrão RDF Karin Breitman José Viterbo Edgard Marx Percy Salas L A C Laboratory for Advanced Collaboration Objetivo deste módulo 1.Apresentar

Leia mais

Manual SAGe Versão 1.2 (a partir da versão 12.08.01)

Manual SAGe Versão 1.2 (a partir da versão 12.08.01) Manual SAGe Versão 1.2 (a partir da versão 12.08.01) Submissão de Relatórios Científicos Sumário Introdução... 2 Elaboração do Relatório Científico... 3 Submissão do Relatório Científico... 14 Operação

Leia mais

Engenharia de Software III

Engenharia de Software III Engenharia de Software III Casos de uso http://dl.dropbox.com/u/3025380/es3/aula6.pdf (flavio.ceci@unisul.br) 09/09/2010 O que são casos de uso? Um caso de uso procura documentar as ações necessárias,

Leia mais

Técnicas de Caixa Preta de Teste de Software

Técnicas de Caixa Preta de Teste de Software Técnicas de Caixa Preta de Teste de Software Na maioria de projetos de teste, o tempo para a realização dos mesmos sempre é curto e os números de testes a serem realizados nas aplicações são inúmeros.

Leia mais

Sumário. Uma visão mais clara da UML

Sumário. Uma visão mais clara da UML Instituto Federal de Santa Catarina Câmpus Chapecó Ensino Médio Integrado em Informática Módulo V Unidade Curricular: Engenharia de Software Professora: Lara P. Z. B. Oberderfer Uma visão mais clara da

Leia mais

Novell. Novell Teaming 1.0. novdocx (pt-br) 6 April 2007 EXPLORAR O PORTLET BEM-VINDO DESCUBRA SEU CAMINHO USANDO O NOVELL TEAMING NAVIGATOR

Novell. Novell Teaming 1.0. novdocx (pt-br) 6 April 2007 EXPLORAR O PORTLET BEM-VINDO DESCUBRA SEU CAMINHO USANDO O NOVELL TEAMING NAVIGATOR Novell Teaming - Guia de início rápido Novell Teaming 1.0 Julho de 2007 INTRODUÇÃO RÁPIDA www.novell.com Novell Teaming O termo Novell Teaming neste documento se aplica a todas as versões do Novell Teaming,

Leia mais

Protótipo de sistema de consultas utilizando a linguagem SPARQL

Protótipo de sistema de consultas utilizando a linguagem SPARQL Protótipo de sistema de consultas utilizando a linguagem SPARQL Aluno(a): André Luiz Nunes Orientador: Roberto Heinzle Roteiro Introdução Objetivos Web semântica Tecnologias para web semântica Trabalhos

Leia mais

Prof. Marcelo Machado Cunha www.marcelomachado.com mcelobr@yahoo.com.br

Prof. Marcelo Machado Cunha www.marcelomachado.com mcelobr@yahoo.com.br Prof. Marcelo Machado Cunha www.marcelomachado.com mcelobr@yahoo.com.br Ementa Introdução a Banco de Dados (Conceito, propriedades), Arquivos de dados x Bancos de dados, Profissionais de Banco de dados,

Leia mais

Padrões, Ferramentas e Boas Práticas no Desenvolvimento de Software para Web Semântica

Padrões, Ferramentas e Boas Práticas no Desenvolvimento de Software para Web Semântica Padrões, Ferramentas e Boas Práticas no Desenvolvimento de Software para Web Semântica Ernesto F. Veiga, Márcio V. Oliveira Sena, Renato de F. Bulcão Neto ernestofonseca@inf.ufg.br marciovinicius@inf.ufg.br

Leia mais

UFG - Instituto de Informática

UFG - Instituto de Informática UFG - Instituto de Informática Especialização em Desenvolvimento de Aplicações Web com Interfaces Ricas EJB 3.0 Prof.: Fabrízzio A A M N Soares professor.fabrizzio@gmail.com Aula 13 Web Services Web Services

Leia mais

A Linguagem de Modelagem Unificada (UML)

A Linguagem de Modelagem Unificada (UML) Aécio Costa A Linguagem de Modelagem Unificada (UML) Percebeu-se a necessidade de um padrão para a modelagem de sistemas, que fosse aceito e utilizado amplamente. Surge a UML (Unified Modeling Language)

Leia mais

Wilson Moraes Góes. Novatec

Wilson Moraes Góes. Novatec Wilson Moraes Góes Novatec Copyright 2014 Novatec Editora Ltda. Todos os direitos reservados e protegidos pela Lei 9.610 de 19/02/1998. É proibida a reprodução desta obra, mesmo parcial, por qualquer processo,

Leia mais

Um Processo para Desenvolvimento de Aplicações Web Baseado em Serviços. Autores: Fábio Zaupa, Itana Gimenes, Don Cowan, Paulo Alencar e Carlos Lucena

Um Processo para Desenvolvimento de Aplicações Web Baseado em Serviços. Autores: Fábio Zaupa, Itana Gimenes, Don Cowan, Paulo Alencar e Carlos Lucena Um Processo para Desenvolvimento de Aplicações Web Baseado em Serviços Autores: Fábio Zaupa, Itana Gimenes, Don Cowan, Paulo Alencar e Carlos Lucena Tópicos Motivação e Objetivos LP e SOA Processo ADESE

Leia mais

Introdução. Conceitos Básicos. Conceitos Básicos. Conceitos Básicos

Introdução. Conceitos Básicos. Conceitos Básicos. Conceitos Básicos Conceitos Básicos Introdução Banco de Dados I Prof. Guilherme Tavares de Assis Universidade Federal de Ouro Preto UFOP Instituto de Ciências Exatas e Biológicas ICEB Departamento de Computação DECOM Dados

Leia mais

SISTEMA DE GERENCIAMENTO DE PROJETOS - REDMINE MANUAL DE USO

SISTEMA DE GERENCIAMENTO DE PROJETOS - REDMINE MANUAL DE USO SISTEMA DE GERENCIAMENTO DE PROJETOS - REDMINE MANUAL DE USO AGOSTO DE 2013 SUMÁRIO STI/UFF - Sistema de Gerenciamento de Projetos do PDI SUMÁRIO... 2 1 Introdução... 3 1.1 O que é e qual a finalidade

Leia mais

Sumário INTRODUÇÃO... 3. 1. Acesso ao Ambiente do Aluno... 4. 2. Ferramentas e Configurações... 5. 2.1 Ver Perfil... 5. 2.2 Modificar Perfil...

Sumário INTRODUÇÃO... 3. 1. Acesso ao Ambiente do Aluno... 4. 2. Ferramentas e Configurações... 5. 2.1 Ver Perfil... 5. 2.2 Modificar Perfil... Sumário INTRODUÇÃO... 3 1. Acesso ao Ambiente do Aluno... 4 2. Ferramentas e Configurações... 5 2.1 Ver Perfil... 5 2.2 Modificar Perfil... 6 2.3 Alterar Senha... 11 2.4 Mensagens... 11 2.4.1 Mandando

Leia mais

XHTML 1.0 DTDs e Validação

XHTML 1.0 DTDs e Validação XHTML 1.0 DTDs e Validação PRnet/2012 Ferramentas para Web Design 1 HTML 4.0 X XHTML 1.0 Quais são os três principais componentes ou instrumentos mais utilizados na internet? PRnet/2012 Ferramentas para

Leia mais

)HUUDPHQWDV &RPSXWDFLRQDLV SDUD 6LPXODomR

)HUUDPHQWDV &RPSXWDFLRQDLV SDUD 6LPXODomR 6LPXODomR GH6LVWHPDV )HUUDPHQWDV &RPSXWDFLRQDLV SDUD 6LPXODomR #5,6. Simulador voltado para análise de risco financeiro 3RQWRV IRUWHV Fácil de usar. Funciona integrado a ferramentas já bastante conhecidas,

Leia mais

MINISTÉRIO DO DESENVOLVIMENTO AGRÁRIO SUBSECRETARIA DE PLANEJAMENTO, ORÇAMENTO E ADMINISTRAÇÃO COORDENAÇÃO-GERAL DE MODERNIZAÇÃO E INFORMÁTICA

MINISTÉRIO DO DESENVOLVIMENTO AGRÁRIO SUBSECRETARIA DE PLANEJAMENTO, ORÇAMENTO E ADMINISTRAÇÃO COORDENAÇÃO-GERAL DE MODERNIZAÇÃO E INFORMÁTICA MINISTÉRIO DO DESENVOLVIMENTO AGRÁRIO SUBSECRETARIA DE PLANEJAMENTO, ORÇAMENTO E ADMINISTRAÇÃO COORDENAÇÃO-GERAL DE MODERNIZAÇÃO E INFORMÁTICA SACI LIVRE SISTEMA DE ADMINISTRAÇÃO DE CONTEÚDO INSTITUCIONAL

Leia mais

Prof.: Clayton Maciel Costa clayton.maciel@ifrn.edu.br

Prof.: Clayton Maciel Costa clayton.maciel@ifrn.edu.br Programação com acesso a BD Prof.: Clayton Maciel Costa clayton.maciel@ifrn.edu.br 1 Modelos de Dados, Esquemas e Instâncias 2 Modelos de Dados, Esquemas e Instâncias Modelo de dados: Conjunto de conceitos

Leia mais

RDF (Resource Description Framework) RDFS (Resource Description Framework Schema)

RDF (Resource Description Framework) RDFS (Resource Description Framework Schema) RDF (Resource Description Framework) RDFS (Resource Description Framework Schema) Tópicos Especiais em Engenharia de Software I (Introdução à Engenharia de Ontologias) Curso: Engenharia de Computação Prof.

Leia mais

Construtor de sites SoftPixel GUIA RÁPIDO - 1 -

Construtor de sites SoftPixel GUIA RÁPIDO - 1 - GUIA RÁPIDO - 1 - Sumário Introdução...3 Por que utilizar o Construtor de Sites?...3 Vantagens do Construtor de Sites...3 Conceitos básicos...3 Configuração básica do site...5 Definindo o layout/template

Leia mais

HTML Página 1. Índice

HTML Página 1. Índice PARTE - 1 HTML Página 1 Índice HTML A HISTÓRIA... 2 O COMEÇO E A INTEROPERABILIADE... 3 Primeira Página... 4 Entendendo seu código... 5 Abrindo o código fonte da sua página... 6 Comentários na página...

Leia mais

Processos Técnicos - Aulas 4 e 5

Processos Técnicos - Aulas 4 e 5 Processos Técnicos - Aulas 4 e 5 Trabalho / PEM Tema: Frameworks Públicos Grupo: equipe do TCC Entrega: versão digital, 1ª semana de Abril (de 31/03 a 04/04), no e-mail do professor (rodrigues.yuri@yahoo.com.br)

Leia mais

PRODUTO 1 (CONSTRUÇÃO DE PORTAL WEB)

PRODUTO 1 (CONSTRUÇÃO DE PORTAL WEB) RELATÓRIO DE ENTREGA DO PRODUTO 1 (CONSTRUÇÃO DE PORTAL WEB) PARA A ELABORAÇÃO DOS PLANOS MUNICIPAIS DE GESTÃO INTEGRADA DE RESÍDUOS SÓLIDOS PMGIRS PARA OS MUNICÍPIOS DE NOVO HORIZONTE, JUPIÁ, GALVÃO,

Leia mais

CONCEITOS INICIAIS. Agenda A diferença entre páginas Web, Home Page e apresentação Web;

CONCEITOS INICIAIS. Agenda A diferença entre páginas Web, Home Page e apresentação Web; CONCEITOS INICIAIS Agenda A diferença entre páginas Web, Home Page e apresentação Web; O que é necessário para se criar páginas para a Web; Navegadores; O que é site, Host, Provedor e Servidor Web; Protocolos.

Leia mais

Histórico da Revisão. Versão Descrição Autor. 1.0 Versão Inicial

Histórico da Revisão. Versão Descrição Autor. 1.0 Versão Inicial 1 of 14 27/01/2014 17:33 Sistema de Paginação de Esportes Universitários Documento de Arquitetura de Software Versão 1.0 Histórico da Revisão Data 30 de novembro de 1999 Versão Descrição Autor 1.0 Versão

Leia mais

Agregadores de Conteúdo

Agregadores de Conteúdo Agregadores de Conteúdo São programas ou sites capazes de interpretar e mostrar o conteúdo dos Feeds RSS. Essa é uma forma de facilitar a leitura de vários sites e blogs, acessando o que há de novo em

Leia mais

Orientação a Objetos

Orientação a Objetos 1. Domínio e Aplicação Orientação a Objetos Um domínio é composto pelas entidades, informações e processos relacionados a um determinado contexto. Uma aplicação pode ser desenvolvida para automatizar ou

Leia mais

Palavras-chave: i3geo, gvsig, Mapserver, integração, plugin. Contato: edmar.moretti@terra.com.br ou edmar.moretti@gmail.com

Palavras-chave: i3geo, gvsig, Mapserver, integração, plugin. Contato: edmar.moretti@terra.com.br ou edmar.moretti@gmail.com III Jornada Latinoamericana e do Caribe do gvsig Artigo: Integração do software i3geo com o gvsig Autor: Edmar Moretti Resumo: O i3geo é um software para a criação de mapas interativos para internet qu

Leia mais

Manual do Visualizador NF e KEY BEST

Manual do Visualizador NF e KEY BEST Manual do Visualizador NF e KEY BEST Versão 1.0 Maio/2011 INDICE SOBRE O VISUALIZADOR...................................................... 02 RISCOS POSSÍVEIS PARA O EMITENTE DA NOTA FISCAL ELETRÔNICA.................

Leia mais

02 - Usando o SiteMaster - Informações importantes

02 - Usando o SiteMaster - Informações importantes 01 - Apresentação do SiteMaster - News Edition O SiteMaster foi desenvolvido para ser um sistema simples de gerenciamento de notícias, instalado em seu próprio computador e com configuração simplificada,

Leia mais

Introdução a listas - Windows SharePoint Services - Microsoft Office Online

Introdução a listas - Windows SharePoint Services - Microsoft Office Online Page 1 of 5 Windows SharePoint Services Introdução a listas Ocultar tudo Uma lista é um conjunto de informações que você compartilha com membros da equipe. Por exemplo, você pode criar uma folha de inscrição

Leia mais

AMBIENTE PARA AUXILIAR O DESENVOLVIMENTO DE PROGRAMAS MONOLÍTICOS

AMBIENTE PARA AUXILIAR O DESENVOLVIMENTO DE PROGRAMAS MONOLÍTICOS UNIVERSIDADE REGIONAL DE BLUMENAU CENTRO DE CIÊNCIAS EXATAS E NATURAIS CURSO DE CIÊNCIAS DA COMPUTAÇÃO BACHARELADO AMBIENTE PARA AUXILIAR O DESENVOLVIMENTO DE PROGRAMAS MONOLÍTICOS Orientando: Oliver Mário

Leia mais

Ontologias. Profa. Lillian Alvares Faculdade de Ciência da Informação, Universidade de Brasília

Ontologias. Profa. Lillian Alvares Faculdade de Ciência da Informação, Universidade de Brasília Ontologias Profa. Lillian Alvares Faculdade de Ciência da Informação, Universidade de Brasília Origem Teoria sobre a natureza da existência Ramo da filosofia que lida com a natureza e organização da realidade.

Leia mais

SISTEMAS OPERACIONAIS ABERTOS Prof. Ricardo Rodrigues Barcelar http://www.ricardobarcelar.com

SISTEMAS OPERACIONAIS ABERTOS Prof. Ricardo Rodrigues Barcelar http://www.ricardobarcelar.com - Aula 2-1. PRINCÍPIOS DE SOFTWARE DE ENTRADA E SAÍDA (E/S) As metas gerais do software de entrada e saída é organizar o software como uma série de camadas, com as mais baixas preocupadas em esconder as

Leia mais

EXPLORANDO TÉCNICAS E RECURSOS DO GERENCIADOR DE DADOS ABERTOS CKAN. TuaneFaria USP tuanefaria@yahoo.com.br

EXPLORANDO TÉCNICAS E RECURSOS DO GERENCIADOR DE DADOS ABERTOS CKAN. TuaneFaria USP tuanefaria@yahoo.com.br EXPLORANDO TÉCNICAS E RECURSOS DO GERENCIADOR DE DADOS ABERTOS CKAN Prof. Dr. José Eduardo Santarem Segundo USP santarem@usp.br TuaneFaria USP tuanefaria@yahoo.com.br Introdução Disponibilizar Dados Disponibilizar

Leia mais

Manual do Ambiente Moodle para Professores

Manual do Ambiente Moodle para Professores UNIVERSIDADE FEDERAL DA FRONTEIRA SUL Manual do Ambiente Moodle para Professores Tarefas Versão 1.0b Setembro/2011 Direitos Autorais: Essa apostila está licenciada sob uma Licença Creative Commons 3.0

Leia mais

Programação Orientada a Objetos com PHP & MySQL Cookies e Sessões. Prof. MSc. Hugo Souza

Programação Orientada a Objetos com PHP & MySQL Cookies e Sessões. Prof. MSc. Hugo Souza Programação Orientada a Objetos com PHP & MySQL Cookies e Sessões Prof. MSc. Hugo Souza Se você precisar manter informações sobre seus usuários enquanto eles navegam pelo seu site, ou até quando eles saem

Leia mais

IMPLEMENTAÇÃO DAS CAMADAS Inference Machine e Message Service Element PARA UM SERVIDOR DE SISTEMA DE GERENCIAMENTO DE Workflow HOSPITALAR

IMPLEMENTAÇÃO DAS CAMADAS Inference Machine e Message Service Element PARA UM SERVIDOR DE SISTEMA DE GERENCIAMENTO DE Workflow HOSPITALAR IMPLEMENTAÇÃO DAS CAMADAS Inference Machine e Message Service Element PARA UM SERVIDOR DE SISTEMA DE GERENCIAMENTO DE Workflow HOSPITALAR Jeferson J. S. Boesing 1 ; Manassés Ribeiro 2 1.Aluno do Curso

Leia mais

4 O Workflow e a Máquina de Regras

4 O Workflow e a Máquina de Regras 4 O Workflow e a Máquina de Regras O objetivo do workflow e da máquina de regras é definir um conjunto de passos e regras configuráveis. Ao longo de sua execução, um usuário consegue simplificar o seu

Leia mais

Documento de Análise e Projeto VideoSystem

Documento de Análise e Projeto VideoSystem Documento de Análise e Projeto VideoSystem Versão Data Versão Descrição Autor 20/10/2009 1.0 21/10/2009 1.0 05/11/2009 1.1 Definição inicial do documento de análise e projeto Revisão do documento

Leia mais

1. NÍVEL CONVENCIONAL DE MÁQUINA

1. NÍVEL CONVENCIONAL DE MÁQUINA 1. NÍVEL CONVENCIONAL DE MÁQUINA Relembrando a nossa matéria de Arquitetura de Computadores, a arquitetura de Computadores se divide em vários níveis como já estudamos anteriormente. Ou seja: o Nível 0

Leia mais

Projeto de Arquitetura

Projeto de Arquitetura Introdução Projeto de Arquitetura (Cap 11 - Sommerville) UNIVERSIDADE FEDERAL DE ALAGOAS Curso de Ciência da Computação Engenharia de Software I Prof. Rômulo Nunes de Oliveira Até agora, estudamos: Os

Leia mais

Roteiro. Modelo de Dados Relacional. Processo de Projeto de Banco de Dados. BCC321 - Banco de Dados I. Ementa. Posicionamento.

Roteiro. Modelo de Dados Relacional. Processo de Projeto de Banco de Dados. BCC321 - Banco de Dados I. Ementa. Posicionamento. Roteiro Modelo de Dados Relacional Posicionamento Luiz Henrique de Campos Merschmann Departamento de Computação Universidade Federal de Ouro Preto luizhenrique@iceb.ufop.br www.decom.ufop.br/luiz Introdução

Leia mais

Manual do Painel Administrativo

Manual do Painel Administrativo Manual do Painel Administrativo versão 1.0 Autores César A Miggiolaro Marcos J Lazarin Índice Índice... 2 Figuras... 3 Inicio... 5 Funcionalidades... 7 Analytics... 9 Cidades... 9 Conteúdo... 10 Referência...

Leia mais

Na medida em que se cria um produto, o sistema de software, que será usado e mantido, nos aproximamos da engenharia.

Na medida em que se cria um produto, o sistema de software, que será usado e mantido, nos aproximamos da engenharia. 1 Introdução aos Sistemas de Informação 2002 Aula 4 - Desenvolvimento de software e seus paradigmas Paradigmas de Desenvolvimento de Software Pode-se considerar 3 tipos de paradigmas que norteiam a atividade

Leia mais

Capítulo 9. Gerenciamento de rede

Capítulo 9. Gerenciamento de rede 1 Capítulo 9 Gerenciamento de rede 2 Redes de computadores I Prof.: Leandro Soares de Sousa E-mail: leandro.uff.puro@gmail.com Site: http://www.ic.uff.br/~lsousa Não deixem a matéria acumular!!! Datas

Leia mais

Resolução da lista de exercícios de casos de uso

Resolução da lista de exercícios de casos de uso Resolução da lista de exercícios de casos de uso 1. Explique quando são criados e utilizados os diagramas de casos de uso no processo de desenvolvimento incremental e iterativo. Na fase de concepção se

Leia mais

Modelo Entidade-Relacionamento

Modelo Entidade-Relacionamento Modelo Entidade-Relacionamento Banco de Dados I Fases do Projeto jt de BD Enunciado de requisitos entrevista com o usuário do banco de dados para entender e documentar seus requerimentos de dados. Projeto

Leia mais

ArpPrintServer. Sistema de Gerenciamento de Impressão By Netsource www.netsource.com.br Rev: 02

ArpPrintServer. Sistema de Gerenciamento de Impressão By Netsource www.netsource.com.br Rev: 02 ArpPrintServer Sistema de Gerenciamento de Impressão By Netsource www.netsource.com.br Rev: 02 1 Sumário INTRODUÇÃO... 3 CARACTERÍSTICAS PRINCIPAIS DO SISTEMA... 3 REQUISITOS DE SISTEMA... 4 INSTALAÇÃO

Leia mais