Web Semântica: Conceitos e Tecnologias
|
|
- Rita Aldeia Canário
- 8 Há anos
- Visualizações:
Transcrição
1 Capítulo 9 Web Semântica: Conceitos e Tecnologias Fernando Wagner Filho e Bernadette Farias Lóscio Abstract With the advent of the Web 2.0, the amount of data available on the Web is growing in an exponential way, increasingly the need for a way to organize and dispose these data, in order to integrate and share them easily. Also is important that applications that use these data be able to interpret them to automate tasks and facilitate the navigation on the Web. In this context, the Semantic Web is meant to be a gradual evolution of the current Web, where the data will be easily processed by applications. Resumo Com o advento da Web 2.0, o volume de dados disponível na Internet vem aumentando de forma exponencial, tornando cada vez mais necessária uma forma de organizar e dispor estes dados de maneira que seja possível integrá-los e compartilhá-los com facilidade. Além disso, a fim de automatizar tarefas e facilitar a navegação do usuário é importante que as aplicações que fazem uso desses dados sejam capazes de interpretá-los. Neste contexto, surgiu o conceito de Web Semântica, que se propõe a ser uma evolução gradual da Web atual, onde os dados poderão ser facilmente processados pelas aplicações e técnicas avançadas poderão ser utilizadas a fim de tirar proveito desta representação..
2 9. Web Semântica O advento da Web 2.0 trouxe aos usuários uma melhor forma de comunicação e interação, popularizando ainda mais o acesso a Internet e incentivando tanto a colaboração intelectual quanto de recursos por parte dos usuários. Como conseqüência direta deste comportamento, o volume de dados disponíveis na Web vem crescendo em quantidade exponencial. Para prover acesso a este grande volume de dados, mecanismos para busca de informações, amplamente utilizados hoje em dia, como Google, usam estratégias baseadas em busca por palavra-chave. Apesar de amplamente difundidas e utilizadas estas estratégias possuem sérios problemas como[10]: Alta sensibilidade à sintaxe e pouca precisão: os mecanismos de busca não levam em consideração a semântica do domínio, e isto pode causar o retorno de inúmeras ocorrências irrelevantes. Dessa forma, as ocorrências relevantes recuperadas geralmente são acompanhadas de milhares de outras ocorrências com pouca ou nenhuma relevância. Organização ineficiente dos dados: informações e recursos relevantes podem não estar relacionados e, em conseqüência, aparecerão separadamente no resultado da consulta. Isto pode exigir do usuário várias consultas extras e uma triagem manual dos documentos resultantes. Diante deste cenário, surgiu a idéia da Web Semântica, que tem como um dos seus principais objetivos prover meios para organizar os dados e permitir que estes possam ser interpretados pelos computadores. Dessa forma será possível melhorar os resultados das buscas e facilitar a automação de tarefas relevantes, evitando, sempre que possível, o desperdício de tempo e fazendo com que tanto os dados quanto as máquinas sejam utilizados de forma mais inteligente. Para ilustrar um exemplo de aplicação da Web Semântica, imagine que um usuário deseja viajar de uma localidade a outra. Para isso terá que pegar um avião e depois ficar hospedado em um hotel. Com o advento da Web Semântica, será possível realizar uma busca pela passagem mais barata para o destino em questão, incluindo as restrições de horário de saída e chegada. Posteriormente, uma busca pelo hotel mais adequado às necessidades do usuário também poderá ser feita sem que haja inúmeras intervenções ou triagens humanas. Em 2001, Berners-Lee [8] definiu o conceito de Web Semântica bem como uma possível arquitetura para aplicações sob o mesmo contexto. A arquitetura passou por várias modificações e a sua configuração atual é ilustrada na Figura 9.1.
3 Figura 9.1. Arquitetura atual da Web Semântica A arquitetura mencionada é separada em camadas, onde cada uma delas possui uma determinada função. Outro fato interessante é a alta interoperabilidade entre as mesmas. Abaixo, uma breve explicação das funcionalidades de cada uma destas camadas: Camada URI/IRI: Permite identificar unicamente cada recurso(ex: figures e páginas HTML) disponível na Web através de um endereço (Universal Resource Identifier); Camada XML: Permite a criação de marcações para descrição de informações. A sintaxe das camadas superiores é baseada em XML; Camada RDF: Provê um modelo de descrição lógica de dados permitindo descrever assertivas e informações sobre um determinado recurso; Camada RDFS: Permite a criação de um vocabulário para a camada RDF. Com o RDFS, é possível criar hierarquia de classes e propriedades; Camada da Ontologia: Estende a camada RDFS, provendo um maior nível de expressividade para a definição da semântica das informações; Camada de Consulta: Responsável prover meios para a realização de consultas sobre o modelo de dados RDFS/Ontologia; Camada de Regras: Provê um mecanismo de criação de relações entre recursos que não podem ser descritas diretamente na ontologia; Camada Lógica: É responsável pelo raciocínio e execução de inferências lógicas a partir da semântica previamente descrita; Camada de Prova e Confiança: Camada que provê um mecanismo para avaliar o nível de confiabilidade das fontes de recursos e informações; Camada de Aplicação: Camada que permite a interação entre o usuário e a aplicação Web Semântica.
4 Uma questão que merece destaque no contexto de Web Semântica é o uso de ontologias, que são utilizadas para prover uma correta interpretação do significado dos dados. Na Ciência da Computação, uma ontologia pode ser descrita como sendo uma especificação explícita e formal de um domínio a qual se tem interesse em representar. As ontologias são baseadas em lógica descritiva, consistindo de conceitos (classes) e relacionamentos (propriedades) entre estes conceitos [10]. No domínio de uma universidade, por exemplo, os termos professor, aluno, funcionário, disciplina são exemplos de conceitos existentes em uma possível ontologia para este domínio. Como exemplos de relacionamento entre estes conceitos, podemos citar que um professor ensina um aluno, um aluno cursa uma disciplina, entre outros. Dentro de uma ontologia, vale destacar o relacionamento hierárquico entre conceitos, consistindo de classes e subclasses. Similar à orientação a objetos, toda subclasse herda as características de sua classe pai. No contexto da Web Semântica, o uso de ontologias provê uma série de vantagens como por exemplo a possibilidade de realização de inferências para a descoberta de novas informações. Outro grande benefício é o fato de que as ontologias são extensíveis, ou seja, é possível estender uma ontologia de modo a adaptá-la para modelar o domínio de interesse. Para exemplificar tal característica, suponha que se tenha interesse em descrever um domínio com informações sobre computadores. Neste caso, se existir uma ontologia mais geral que descreve equipamentos, então será possível estendê-la para que seja possível descrever dados sobre computadores. Entretanto, para que a Web Semântica torne-se uma concreta realidade, é necessário que haja uma padronização de tecnologias. Neste contexto, o W3C (World Wide Web Consortium) e a comunidade acadêmica têm unido esforços no sentido de criar, disponibilizar e padronizar linguagens e tecnologias para garantir a correta e melhor interoperabilidade possível. Neste capítulo, serão apresentados os conceitos básicos relacionados à Web Semântica, bem como algumas das principais tecnologias atualmente disponíveis para o desenvolvimento de aplicações neste contexto. O restante deste capítulo está organizado como se segue: a Seção 9.2 apresenta alguns conceitos básicos relacionados à XML; a Seção 9.3 aborda o conceito de namespaces; as seções 9.4 e 9.5 apresentam RDF e RDFS respectivamente; a Seção 9.6 descreve brevemente a linguagem de consulta SPARQL; a Seção 9.7 apresenta a linguagem OWL; a Seção 9.8 discute rapidamente o uso do SWRL e o papel dos reasoners Conceitos básicos de XML XML é uma linguagem de marcação que, diferentemente do HTML, permite a criação e o uso de tags personalizadas, fornecendo assim uma maneira simples de organizar e estruturar os dados existentes em uma determinada aplicação [1][25]. De posse dos dados estruturados, é possível estabelecer uma comunicação entre aplicações, permitindo a cooperação entre as mesmas para execução de tarefas complexas. Atualmente XML é a linguagem padrão recomendada pela W3C para troca de dados via Web. A Web Semântica exige uma descrição formal da semântica dos dados, de tal forma a evitar ambigüidades e permitir a interpretação de informações por parte das
5 aplicações. Neste contexto, XML provê uma sintaxe bem definida, sendo atualmente utilizado na maioria das aplicações existentes na Web. A Figura 9.2 exibe trechos de documentos HTML e XML que exibem informações relacionadas a professores. É possível verificar que no documento HTML a maior preocupação é com a aparência dos dados e em como eles serão exibidos para o usuário. Por outro lado, no documento XML, o objetivo principal consiste em estruturar os dados de tal forma a possibilitar o processamento destes. Dessa forma, é possível saber que o dado é referente ao ID do professor em questão, bem como Fernando Wagner trata-se do nome deste mesmo professor. Vale ressaltar que a sintaxe do XML é bem formal e possui uma série de regras a serem obedecidas. Um documento XML que segue todas as regras sintáticas da linguagem é chamado de documento XML bem formado. Figura 9.2. Trechos de código HTML e XML destacando os dados de um professor Por outro lado, XML permite estruturar um mesmo conjunto de dados de formas diferentes. A Figura 9.3, por exemplo, mostra uma maneira alternativa de representação das informações relacionadas a um professor. Tal característica pode levar a discordância entre aplicações além de uma possível confusão na hora de capturar os dados estruturados. Figura 9.3. Documento XML alternativo ao da Figura 9.2 Para evitar este tipo de problema, foram propostas linguagens para definição de esquemas XML, que são uma espécie de contrato, onde todas as partes envolvidas por um contexto de aplicação devem escrever seus documentos XML seguindo o padrão de estruturação especificado no esquema XML correspondente. Dentre as linguagens para definição de esquemas XML, destacam-se DTD e XML Schema. Um esquema especifica quais elementos e atributos são permitidos em um determinado documento XML, além da maneira como estes devem estar. A Figura 9.4 mostra um exemplo de um esquema para o documento XML da Figura 9.2.
6 Figura 9.4. Documento XML Schema correspondente ao XML da Figura 9.2 O XML Schema foi desenvolvido com o mesmo propósito do DTD. Porém, este provê uma linguagem bem mais rica para a definição de esquemas XML. Uma vantagem é que XML Schema é baseado em XML, o que aumenta a interoperabilidade e não exige conhecimento prévio de outro tipo de linguagem para definição de esquemas. Além disso, é possível manipular um arquivo XML Schema usando um editor XML ou uma API como DOM ou SAX. O XML Schema é uma recomendação da W3C desde 2001 que visa substituir o DTD. Documentos XML que são bem-formados e estão de acordo com o esquema especificado são chamados de documentos válidos. A aplicação responsável por executar esta verificação é chamada de Parser. Caso haja algum erro de sintaxe ou alguma desconformidade entre o documento XML e o esquema correspondente, o parser acusará o erro Namespaces Atualmente, a forma mais utilizada de troca de dados pela Web é através de documentos XML. Tecnicamente, documentos XML podem utilizar vários esquemas para estruturação de seus dados, ou seja, um documento XML pode fazer referência a vários esquemas XML. Na maioria dos casos, os esquemas são desenvolvidos por vários grupos distintos. Como as fontes desconhecem os outros esquemas envolvidos na especificação da estrutura dos documentos XML, ambigüidades podem ser geradas, como por exemplo, a declaração de tags de mesmo nome, mas com semânticas distintas. Nestes casos, o parser não saberá como validar corretamente estes elementos, pois não conseguirá fazer a distinção a qual esquema o elemento faz referência. Para resolver problemas como este, foram criados os chamados namespaces, os quais são URIs que referenciam o esquema do qual o elemento faz parte. A Figura 9.6 ilustra um exemplo da utilização de namespaces. Prefixos que referenciam o namespace são declarados no elemento raiz do documento XML, como em destaque na Figura 9.6. Neste caso o parser tem condições de identificar qual elemento titulo trata da titulação acadêmica e qual trata da titulação como empregado da universidade.
7 Figura 9.5. Exemplo utilizando namespace 9.4. RDF Resource Description Framework Apesar de ser uma recomendação do W3C amplamente utilizada em diversas aplicações, XML não possui os requisitos necessários para descrever adequadamente a semântica de uma informação. A forma como os elementos devem estar relacionados, bem como a definição significado dos mesmos fica a cargo do desenvolvedor. O modelo de dados RDF foi proposto como uma possível solução para esta limitação de XML. Freqüentemente referenciado como uma linguagem, o mais correto seria afirmar que o RDF é um modelo de dados que possibilita a definição de afirmações, chamadas sentenças, sobre um recurso. Entende-se por um recurso, qualquer coisa sobre a qual se quer expressar uma idéia. Um recurso pode estar relacionado com dados ou com outros recursos através das sentenças. Uma sentença é estruturada no formato sujeito + predicado + objeto onde: Sujeito: Tem como valor o recurso do qual se quer escrever uma sentença. Predicado: Especifica um relacionamento entre sujeito e objeto. O predicado é especificado através de propriedades, que são relações binárias, geralmente nomeadas por um verbo e permitem relacionar um recurso a dados ou a outros recursos. Objeto: Denomina o recurso ou dado que se relaciona ao sujeito. Devido ao seu formato, uma sentença é freqüentemente chamada de tripla. Assim sendo, um documento RDF pode ser visto como um conjunto de triplas, onde estas descrevem informações sobre os recursos envolvidos no domínio de interesse. A Figura 9.6 mostra uma maneira abstrata de se visualizar triplas. Figura 9.6. Forma abstrata de visualizar triplas. As triplas representadas na Figura 9.6 contêm informações sobre dois recursos. A primeira tripla informa que o recurso p possui nome Berna Farias. A
8 segunda tripla descreve um segundo recurso CK120, cujo nome é Banco de Dados I. A terceira tripla descreve um relacionamento entre os dois recursos criados através do predicado EnsinadoPor. Os elementos de RDF para descrição de triplas são: <rdf:description>: Usado toda vez que se quer escrever uma tripla acerca de um recurso. <rdf:id>: Responsável pela declaração de um recurso. rdf:resource: Atributo utilizado para fazer referência a outros recursos existentes. Documentos RDF também podem ser visualizados como grafos, onde cada recurso e/ou literais existentes são os nós e as propriedades são as arestas. A Figura 9.7 mostra as triplas da Figura 9.6 dispostas sobre a forma de um grafo. Figura 9.7. Visualização de triplas através de um grafo Considere agora a Figura 9.8 que contém o exemplo de triplas descritas utilizando a sintaxe de XML. A linha 1 mostra a versão da sintaxe XML utilizada. As linhas 2 e 3 exibem o elemento raiz de um documento RDF, juntamente com os namespaces que serão utilizados. Por padrão o elemento raiz de todo documento RDF é <rdf:rdf>. A linha 5 mostra a criação de um recurso cujo o ID é P Na linha 7, descrevemos a mesma informação da contida na Figura 9.6, de que o recurso criado na linha 5 tem por nome Berna Farias. Vale salientar a importância do namespace uni, especificando o domínio das informações que o recurso em questão fará uso. Figura 9.8. Trecho de um documento RDF. Nas linhas 11 à 14 descrevemos um recurso como uma disciplina. Podemos verificar que não é obrigatório o uso do <rdf:id> para a criação do recurso, ou seja,
9 podemos utilizar a tag <rdf:description> juntamente com o atributo rdf:about para criar e escrever informações acerca do recurso. É uma boa prática utilizar rdf:resource ao invés de escrever o valor do elemento. Isto fortalece o relacionamento entre os recursos. No caso da Figura 9.8, por exemplo, não seria interessante escrever <uni:ensinadopor>p </ uni:ensinadopor >. Outra importante funcionalidade presente no RDF são os containers. Eles permitem certa propriedade fazer referência a mais de um recurso. Estes são divididos em 3 formas: rdf:bag: Simboliza um conjunto de recursos ou literais onde permite-se repetições de elementos e a ordenação disposta não é relevante. rdf:seq: Similar ao bag, porém a ordem dos elementos é relevante. rdf:alt: Um conjunto de recursos onde apenas um destes poderá ser escolhido como real valor da propriedade. A Figura 9.9 mostra um exemplo do uso do container bag. No exemplo o container foi usado para especificar os componentes de um projeto. É importante ressaltar que o RDF é um modelo de dados que possibilita escrever triplas sobre qualquer recurso em qualquer domínio, ou seja, o RDF é independente de domínio. Atualmente, o RDF utiliza a sintaxe XML em sua especificação. Porém, nada impede que os conceitos do RDF sejam implementados utilizando outras sintaxes. Figura 9.9 Uso do container <rdf:bag> 9.5. RDFS Resource Description Framework Schema RDF provê um modelo de dados que permite descrever sentenças sobre domínios de interesse. Apesar disso, um documento RDF não pode ser considerado uma ontologia. Isto porque não é possível conceitualizar um domínio como proposto na definição de ontologias [6]. Não é possível especificar em RDF, por exemplo, que todo docente é um funcionário, ou que os participantes de um projeto devem ser todos pesquisadores. Além disso, RDF dá margem a certas inconsistências como a ilustrada na Figura O código da Figura 9.10 é validado com sucesso pelo parser RDF. Porém, a semântica do documento contém uma falha grave. A tripla representada pelas linhas 9-
10 11 diz que um recurso que representa um conjunto de indivíduos é do tipo deste indivíduo, quando o mais sensato seria expressar o oposto. Figura Possível inconsistência no RDF Neste contexto, RDFS visa solucionar tais problemas provendo construtores que permitem especificar formalmente um esquema. A idéia principal é unir RDFS + RDF de tal forma que todas as sentenças descritas em RDF obedeçam à semântica descrita no esquema especificado em RDFS. Este esquema nada mais é do que a modelagem do domínio de interesse. Alguns construtores de RDFS são citados e descritos abaixo: <rdfs:class> - Permite a criação de classes. O conceito de classes em RDF é similar ao existente na programação orientada a objetos, ou seja, uma classe descreve um conjunto de indivíduos/instâncias que possuem as mesmas características e comportamentos. A existência das classes é muito importante para o contexto das ontologias, uma vez que estas permitem explicitar generalizações, além de impedir inconsistências semânticas como a ilustrada na Figura <rdfs:subclassof> - Permite especificar especializações entre classes, inclusive heranças múltiplas. Assim como na orientação a objetos, uma subclasse herda todas as características das classes pai. Podemos expressar, por exemplo, que um docente é subclasse de funcionário, ou seja, todo docente também é um funcionário. Vale destacar o caráter transitivo deste construtor, ou seja, dada três classes A, B e C, se A é subclasse de B e B é subclasse de C, então podemos inferir que A é subclasse de C. RDF provê um construtor para declaração de propriedades. Porém, RDFS estende este construtor fazendo uso de outros novos construtores, gerando maior poder de expressividade para a explicitação da semântica de uma propriedade. Os construtores utilizados na extensão são citados abaixo: <rdfs:domain> - Define quais classes de indivíduos serão aceitas como sendo o sujeito em triplas envolvendo a propriedade. Este conjunto de classes é denominado de domain <rdfs:range> - Define quais classes de indivíduos ou valores literais serão aceitos como sendo o objeto em triplas envolvendo propriedade. <rdfs:subpropertyof> - Caracteriza uma hierarquia entre propriedades. Análogo ao conceito de subclasse para classes. Este conjunto de classes ou valores literais é denominado de range. As subpropriedades herdam os conjuntos domain e range de suas propriedades mais gerais. Considere o exemplo da Figura 9.11.
11 Figura Declaração de Domains, Ranges e subproperty. As linhas 8 11 apresentam declarações de duas classes, Pesquisador e Evento, juntamente com uma instância de cada uma destas classes. Nas linhas é declarada uma propriedade Envolve que relacionará instâncias de pesquisadores com instâncias de eventos. Logo após, as linhas apresentam a declaração de outra propriedade, chamada Organiza. Os conjuntos domain e range desta nova propriedade não estão declarados de maneira explicita, mas pode-se inferir que estes têm como valores os conjuntos de pesquisadores e eventos respectivamente, pelo fato de que a propriedade Organiza é uma subpropriedade de Envolve. Da mesma maneira que subclasses herdam as características de suas classes pai, as propriedades também herdam as características das suas propriedades pai. Pelo exemplo da Figura 9.11, é possível notar que RDFS expande os horizontes de RDF, de tal forma que é possível explicitar e inferir outras informações relevantes ao domínio de interesse. Por este motivo é válido ressaltar que o modelo de dados constituído da união de RDF e RDFS tem uma maior expressividade do que o modelo RDF por si só. Vale também destacar a declaração de namespaces no elemento raiz (linhas 2-6) bem como o seu uso ao longo do documento, visando distinguir o contexto dos elementos utilizados. Apesar do aumento da expressividade advindo da união de RDF com RDFS, isto ainda não é o suficiente para prover uma rica descrição semântica acerca de um domínio de interesse. É necessário que haja um vocabulário mais amplo, que possibilite a especificação de regras que poderão ser usadas pelo reasoner para inferência novos fatos. Em RDF/RDFS não é possível, por exemplo, restringir a cardinalidade de uma propriedade. Não é possível dizer que um time de futebol contém no mínimo onze jogadores, por exemplo. Também não há expressividade suficiente para classificar um indivíduo mediante certo tipo de valor que este contém em alguma propriedade. A próxima seção aborda SPARQL, a linguagem recomendada pela W3C para consultas por informações em documentos RDF/RDFS. Em seguida, será introduzida a linguagem OWL (Ontology Web Language), que disponibiliza um rico vocabulário de construtores permitindo aumentar consideravelmente a expressividade para descrição de ontologias.
12 9.6. SPARQL Linguagem para consultas por triplas RDF Assim como os sistemas de bancos de dados relacionais fazem uso do SQL para consultar registros nas suas bases de dados, o SPARQL é a linguagem recomendada pelo W3C para recuperação de informações em documentos RDF/RDFS O RDF e RDFS permitem que uma determinada informação possa ser modelada de diversas maneiras, apesar de sempre dispô-la na forma de uma tripla. Logo, se faz necessário ter uma linguagem de consulta que consiga recuperar os dados de interesse levando em consideração a semântica das sentenças, e não a sintática. Considere o seguinte trecho de um documento: <rdf:description rdf:about="949318"> <rdf:type rdf:resource="&uni;professor"/> <uni:name>davi Cavalcante</uni:name> <uni:title>doutorado</uni:title> </rdf:description> O trecho acima cria uma instância do tipo Professor e determina seu nome, Davi Cavalcante, e sua titulação, Doutorado. Existe uma maneira equivalente de especificarmos estas mesmas sentenças, como descrito a seguir: <uni:professor rdf:about="949318"> <uni:name> Davi Cavalcante </uni:name> <uni:title> Doutorado </uni:title> </uni:professor> É possível perceber que os dois trechos declaram triplas que possuem o mesmo significado, mas são expressos de forma diferente. As linguagens para consulta XML existentes atualmente não dão suporte para essa variedade sintática, o que requer a especificação de uma linguagem de consulta que dê suporte a estes níveis de expressividade e que entenda a semântica do modelo RDF/RDFS. Apesar de existirem outras linguagens de consulta (SeRQL, RQL, etc..) mais antigas, maduras e com maior poder de expressividade que o SPARQL, estas ou foram projetadas para se trabalhar em um domínio específico ou são interpretadas apenas por algumas poucas ferramentas, o que acaba resultando em uma baixa interoperabilidade. Semelhante ao SQL, o SPARQL possui uma estrutura SELECT-FROM- WHERE onde: SELECT: Especifica uma projeção sobre os dados como a ordem e a quantidade de atributos e/ou instâncias que serão retornados. FROM: Declara as fontes que serão consultadas. Esta cláusula é opcional. Quando não especificada, assumimos que a busca será feita em um documento RDF/RDFS particular. WHERE: Impões restrições na consulta. Os registros retornados pela consulta deverão satisfazer as restrições impostas por esta cláusula.
13 O resultado de uma consulta SPARQL pode ser encarado como um subgrafo resultante da execução da consulta sobre o grafo que representa o modelo. Considere por exemplo o grafo apresentado na Figura 9.12 extraído de [15]. Figura Representação das instâncias de um domínio O grafo da Figura 9.12 representa a relação entre as instâncias de uma ontologia cujo domínio é focado na descrição e formalização de escritores. O subgrafo destacado em negrito pode ser encarado, por exemplo, como o resultado de uma consulta que retorna o escritor que escreveu o livro King Lear e é casado com AnneHathaway. Esta consulta pode ser descrita abaixo: PREFIX rdf: < PREFIX rdfs: < PREFIX wri: < SELECT?x WHERE { }?x rdf:type escritor AnneHathaway wri:married?x?x wri:wrote KingLear Neste exemplo,?x é uma variável que representa o conjunto de recursos que será retornado como resposta da consulta. As cadeias de caracteres?x wri:wrote KingLear, AnneHathaway wri:married?x e?x wrote KingLear são chamados de padrões de
14 tripla (triple patterns). No contexto de SPARQL, os padrões de triplas são usados para designar condições de retorno na cláusula WHERE. Os significados dos padrões de tripla podem ser interpretados em linguagem natural. No caso da consulta acima, tais significados são respectivamente: O recurso é escritor? AnneHathaway foi casado com o recurso? O recurso escreveu King Lear? Todos os recursos que satisfizerem a essas três perguntas serão retornados pela consulta em questão. Segue abaixo outro exemplo de consulta SPARQL. A consulta irá retornar todas as classes existentes no modelo da Figura 9.12: PREFIX rdf: < PREFIX rdfs: < SELECT?c WHERE { }?c rdf:type rdfs:class. A consulta acima é bem geral e pode ser utilizada em qualquer esquema, independente do domínio modelado. Outro exemplo similar seria escrever uma consulta que retornasse todas as propriedades existentes no modelo e assim por diante. É possível formular consultas de modo a retornar informações complexas ou mais simples, dependendo do objetivo que se queira alcançar. Outro exemplo de consulta consiste em fazer uma projeção das propriedades de dados de um determinado modelo para obtenção de seus valores: SELECT?nome? WHERE { }?x rdf:type uni:professor ; uni:nome?nome ; uni: ? . A consulta acima retornará o nome e o de todos os professores descritos. Além das cláusulas básicas SELECT, FROM e WHERE, tem-se outras cláusulas opcionais com o objetivo de aumentar a expressividade das consultas. São estas: FILTER: Operador usado para comparações booleanas entre instâncias. Ex: SELECT?n WHERE
15 { }?x rdf:type uni:curso ; uni:ensinadopor: ?c uni:nome?n. FILTER (?c =?x). A consulta acima retorna o nome de todos os cursos no qual o professor de código leciona. OPTIONAL: Torna uma determinada restrição na cláusula WHERE opcional. Ex: SELECT?nome? WHERE { }?x rdf:type uni:professor ; uni:nome?nome. OPTIONAL {?x uni: ? } Se a cláusula OPTIONAL não fosse usada na consulta acima, seriam retornados todos os professores que, obrigatoriamente, possuem um nome e um . Caso um professor não tivesse um , este não seria retornado no resultado final da consulta. Com o uso da cláusula, serão inclusos no resultado final os professores que possuem um nome, mas não possuem OWL - Ontology Web Language A expressividade RDF/RDFS, descrita nas seções anteriores, é bastante limitada. Basicamente, RDF descreve sentenças sem que haja qualquer descrição formal de um domínio, e o RDF Schema somente suporta hierarquia de classes e propriedades. No contexto da Web Semântica, a camada da ontologia visa suprir essas limitações provendo uma maior expressividade para descrever um domínio de interesse.. Abaixo são descritas algumas dessas características Restrições de propriedades: Muitas vezes precisamos impor restrições nos valores que uma propriedade pode assumir. Por exemplo, não conseguimos dizer em RDF/RDFS que um time de futebol tem que ter, no mínimo, onze jogadores para poder disputar uma partida. Disjunção de classes: No domínio-alvo pode acontecer de classes (conceitos) serem disjuntos. Por exemplo, homem e mulher são dois conceitos disjuntos, pois uma pessoa não pode ser do sexo masculino e feminino ao mesmo tempo. Em RDF/RDFS, é possível somente expressar relações de hierarquia como mulher é subclasse de pessoa. Combinação entre classes: RDF/RDFS não permite que se criem novos conceitos utilizando uma combinação de conceitos já especificados usando, por exemplo, a união ou interseção destes.
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 maisSemâ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 maisOrientaçã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 maisPROJETO 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 maisESTENDENDO 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 maisDESENVOLVENDO APLICAÇÃO UTILIZANDO JAVA SERVER FACES
DESENVOLVENDO APLICAÇÃO UTILIZANDO JAVA SERVER FACES Alexandre Egleilton Araújo, Jaime Willian Dias Universidade Paranaense (Unipar) Paranavaí PR Brasil araujo.ale01@gmail.com, jaime@unipar.br Resumo.
Leia maisDESENVOLVIMENTO 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 maisWeb 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 maisONTOLOGIA DE DOMÍNIO PARA ANÁLISE DE BLOGS
Centro Universitário Feevale ONTOLOGIA DE DOMÍNIO PARA ANÁLISE DE BLOGS Fernando Mertins Prof. Orientador: Rodrigo Rafael Villarreal Goulart Dezembro de 2007 Roteiro da Apresentação Introdução Objetivos
Leia maisProtégé-OWL Tutorial. Adriano Melo André Chagas Fred Freitas. Sistemas Inteligentes http://www.cin.ufpe.br/~if684
Protégé-OWL Tutorial Adriano Melo André Chagas Fred Freitas Sistemas Inteligentes http://www.cin.ufpe.br/~if684 Instalação Download do Protégé public de astm stanford.edu (site oficial) Protégé 3.4.4 OWL
Leia maisDesenvolvendo 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 maisBanco 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 maisO 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 maisUFG - 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 maisConceitos 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 maisFACULDADE 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 maisDesenvolvendo 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 maisPadrõ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 maisWeb Semântica e Matching de Ontologias: Uma Visão Geral
Web Semântica e Matching de Ontologias: Uma Visão Geral Hélio Rodrigues de Oliveira Departamento de Computação Universidade Federal do Ceará heliorodrigues@lia.ufc.br Bernadette Farias Lóscio Departamento
Leia maisUML - Unified Modeling Language
UML - Unified Modeling Language Casos de Uso Marcio E. F. Maia Disciplina: Engenharia de Software Professora: Rossana M. C. Andrade Curso: Ciências da Computação Universidade Federal do Ceará 24 de abril
Leia maisAgregadores 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 maisPersistê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 maisAjuda ao SciEn-Produção 1. 1. O Artigo Científico da Pesquisa Experimental
Ajuda ao SciEn-Produção 1 Este texto de ajuda contém três partes: a parte 1 indica em linhas gerais o que deve ser esclarecido em cada uma das seções da estrutura de um artigo cientifico relatando uma
Leia mais3 Modelo de Controle de Acesso no Projeto de Aplicações na Web Semântica
3 Modelo de Controle de Acesso no Projeto de Aplicações na Web Semântica Este trabalho tem o objetivo de integrar o controle de acesso no projeto de aplicações na web semântica. Uma arquitetura de software
Leia maisPara 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 maisCAPÍTULO 3 - TIPOS DE DADOS E IDENTIFICADORES
CAPÍTULO 3 - TIPOS DE DADOS E IDENTIFICADORES 3.1 - IDENTIFICADORES Os objetos que usamos no nosso algoritmo são uma representação simbólica de um valor de dado. Assim, quando executamos a seguinte instrução:
Leia maisProtó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 maisLINGUAGEM DE BANCO DE DADOS
LINGUAGEM DE BANCO DE DADOS Gabriela Trevisan Bacharel em Sistemas de Informação Universidade Federal do Rio Grande Pós-Graduanda Formação Pedagógica de Professores (FAQI) Conceito de BD Um banco de dados
Leia maisTabela 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 mais3 Um Framework Orientado a Aspectos para Monitoramento e Análise de Processos de Negócio
32 3 Um Framework Orientado a Aspectos para Monitoramento e Análise de Processos de Negócio Este capítulo apresenta o framework orientado a aspectos para monitoramento e análise de processos de negócio
Leia mais02 - 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 mais4 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 maisCriação e publicação de um dataset de dados interligados das edições passadas do Simpósio Brasileiro de Banco de Dados
U NIVERSIDADE FEDERAL DE PERNAMBUCO GRADUAÇÃO EM CIÊNCIA DA COMPUTAÇÃO CENTRO DE INFORMÁTICA 2 0 1 2. 2 Criação e publicação de um dataset de dados interligados das edições passadas do Simpósio Brasileiro
Leia maisRequisitos de Software
Requisitos de Software Centro de Informática - Universidade Federal de Pernambuco Kiev Gama kiev@cin.ufpe.br Slides originais elaborados por Ian Sommerville e adaptado pelos professores Márcio Cornélio,
Leia maisAná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 maisRDF 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 maisProtégé Desenvolvimento de contologias
Protégé Desenvolvimento de contologias Joel Luis Carbonera jlcarbonera@inf.ufrgs.br Protégé Desenvolvimento de contologias Ontologias Ontologias Termo do domínio da Filosofia A disciplina filosófica preocupada
Leia maisCapítulo 3. Avaliação de Desempenho. 3.1 Definição de Desempenho
20 Capítulo 3 Avaliação de Desempenho Este capítulo aborda como medir, informar e documentar aspectos relativos ao desempenho de um computador. Além disso, descreve os principais fatores que influenciam
Leia maisUma ontologia para a representação do domínio de agricultura familiar na arquitetura AgroMobile. Roger Alves Prof. Me.
Uma ontologia para a representação do domínio de agricultura familiar na arquitetura AgroMobile Roger Alves Prof. Me. Vinícius Maran O que é uma ontologia? Palavra vinda do grego, advinda da união entre
Leia maisSistema de Controle de Solicitação de Desenvolvimento
Sistema de Controle de Solicitação de Desenvolvimento Introdução O presente documento descreverá de forma objetiva as principais operações para abertura e consulta de uma solicitação ao Setor de Desenvolvimento
Leia maisAnálise da Nova Linguagem HTML5 para o Desenvolvimento Web
Análise da Nova Linguagem HTML5 para o Desenvolvimento Web Sergio N. Ikeno¹, Késsia Rita da Costa Marchi¹ ¹Universidade Paranaense (Unipar) Paranavaí PR Brasil sergioikn@gmail.com, kessia@unipar.br Resumo.
Leia maisADM041 / EPR806 Sistemas de Informação
ADM041 / EPR806 Sistemas de Informação UNIFEI Universidade Federal de Itajubá Prof. Dr. Alexandre Ferreira de Pinho 1 Sistemas de Apoio à Decisão (SAD) Tipos de SAD Orientados por modelos: Criação de diferentes
Leia mais2 Diagrama de Caso de Uso
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 Caso de Uso (Use Case) Autoria:Aristófanes Corrêa
Leia maisPadrõ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 maisTRABALHO 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 maisUm 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 maisPadrõ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 maisXML e Banco de Dados. Prof. Daniela Barreiro Claro DCC/IM/UFBA
XML e Banco de Dados DCC/IM/UFBA Banco de Dados na Web Armazenamento de dados na Web HTML muito utilizada para formatar e estruturar documentos na Web Não é adequada para especificar dados estruturados
Leia maisDado: Fatos conhecidos que podem ser registrados e têm um significado implícito. Banco de Dados:
MC536 Introdução Sumário Conceitos preliminares Funcionalidades Características principais Usuários Vantagens do uso de BDs Tendências mais recentes em SGBDs Algumas desvantagens Modelos de dados Classificação
Leia maisgerenciamento de portais e websites corporativos interface simples e amigável, ágil e funcional não dependendo mais de um profissional especializado
O NetPublisher é um sistema de gerenciamento de portais e websites corporativos (intranets ou extranets), apropriado para pequenas, médias e grandes empresas. O conteúdo do website pode ser atualizado
Leia maisServiços Web Semânticos
Serviços Web Semânticos Paulo Vitor Antonini Orlandin paulovitor_e@hotmail.com Resumo O grande crescimento na utilização de Serviços Web torna imprescindível o desenvolvimento de uma forma de melhoria
Leia maisEngenharia 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 maisD2R 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 mais3.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 mais04/08/2012 MODELAGEM DE DADOS. PROF. RAFAEL DIAS RIBEIRO, M.Sc. @ribeirord MODELAGEM DE DADOS. Aula 1. Prof. Rafael Dias Ribeiro. M.Sc.
MODELAGEM DE DADOS PROF. RAFAEL DIAS RIBEIRO, M.Sc. @ribeirord MODELAGEM DE DADOS Aula 1 Prof. Rafael Dias Ribeiro. M.Sc. @ribeirord 1 Objetivos: Apresenta a diferença entre dado e informação e a importância
Leia maisWeb Semântica. Web Semântica. uma introdução @yaso
Web Semântica uma introdução @yaso O que é SEMÂNTICA Semântica é o estudo do signifcado. Incide sobre a relação entre signifcantes, tais como palavras, frases, sinais e símbolos, e o que eles representam,
Leia maisConteú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 maisProjeto de Sistemas I
Instituto Federal de Educação, Ciência e Tecnologia de São Paulo Projeto de Sistemas I Professora: Kelly de Paula Cunha E-mail:kellypcsoares@ifsp.edu.br Requisitos: base para todo projeto, definindo o
Leia maisXML 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 maisUNIVERSIDADE ESTADUAL DO AMAZONAS ESPECIALIZAÇÃO EM DESENVOLVIMENTO EM SOFTWARE LIVRE CONCEITOS E PROJETOS DE BANCO DE DADOS E SQL
O trabalho consiste na resolução de um exercício e na confecção de um relatório. 17/10/2005 é o último dia para entrega. O trabalho deverá entregue impresso e o seu conteúdo gravado numa mídia. O formato
Leia maisISO/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 maisUso de taxonomias na gestão de conteúdo de portais corporativos.
Gestão de Conteúdo web através de ontologias: conceitos e aplicações Fernando Silva Parreiras Contextualização O que? Uso de taxonomias na gestão de conteúdo de portais corporativos. Quem? Gerentes, consultores
Leia maisUNIVERSIDADE 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 maisLinguagem Lógica Prolog
Linguagem Lógica Prolog Linguagens de Programação Departamento de Computação Universidade Federal de Sergipe Conteúdo O que é diferente na Programação Lógica Cláusulas, Fatos, Regras e Predicado Objetos
Leia mais04/08/2012 MODELAGEM DE DADOS. PROF. RAFAEL DIAS RIBEIRO, M.Sc. @ribeirord MODELAGEM DE DADOS. Aula 2. Prof. Rafael Dias Ribeiro. M.Sc.
MODELAGEM DE DADOS PROF. RAFAEL DIAS RIBEIRO, M.Sc. @ribeirord MODELAGEM DE DADOS Aula 2 Prof. Rafael Dias Ribeiro. M.Sc. @ribeirord 1 Objetivos: Revisão sobre Banco de Dados e SGBDs Aprender as principais
Leia maisResoluçã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 maisBanco de Dados. Introdução. João Eduardo Ferreira Osvaldo Kotaro Takai. jef@ime.usp.br DCC-IME-USP
Banco de Dados Introdução João Eduardo Ferreira Osvaldo Kotaro Takai jef@ime.usp.br DCC-IME-USP Importância dos Bancos de Dados A competitividade das empresas depende de dados precisos e atualizados. Conforme
Leia maisHoje é inegável que a sobrevivência das organizações depende de dados precisos e atualizados.
BANCO DE DADOS Universidade do Estado de Santa Catarina Centro de Ciências Tecnológicas Departamento de Ciência da Computação Prof. Alexandre Veloso de Matos alexandre.matos@udesc.br INTRODUÇÃO Hoje é
Leia maisGUIA DE CURSO. Tecnologia em Sistemas de Informação. Tecnologia em Desenvolvimento Web. Tecnologia em Análise e Desenvolvimento de Sistemas
PIM PROGRAMA DE INTEGRAÇÃO COM O MERCADO GUIA DE CURSO Tecnologia em Sistemas de Informação Tecnologia em Desenvolvimento Web Tecnologia em Análise e Desenvolvimento de Sistemas Tecnologia em Sistemas
Leia maisRoteiro 3 Modelagem relacional
Roteiro 3 Modelagem relacional Objetivos: Explorar conceitos sobre: o Modelagem de bancos de dados projetos: conceitual, lógico e físico; o Conceitos sobre o modelo relacional: tuplas, atributo, entidades,
Leia maisApesar de existirem diversas implementações de MVC, em linhas gerais, o fluxo funciona geralmente da seguinte forma:
1 Introdução A utilização de frameworks como base para a construção de aplicativos tem sido adotada pelos desenvolvedores com três objetivos básicos. Primeiramente para adotar um padrão de projeto que
Leia mais2 Geração Dinâmica de Conteúdo e Templates de Composição
2 Geração Dinâmica de Conteúdo e Templates de Composição Alguns dos aspectos mais importantes na arquitetura proposta nesta dissertação são: a geração dinâmica de conteúdo e a utilização de templates de
Leia maisEngenharia 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 maisUniversidade da Beira Interior
Universidade da Beira Interior Relatório Apresentação Java Server Pages Adolfo Peixinho nº4067 Nuno Reis nº 3955 Índice O que é uma aplicação Web?... 3 Tecnologia Java EE... 4 Ciclo de Vida de uma Aplicação
Leia maisDadas 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 maisROTEIRO PARA TREINAMENTO DO SAGRES DIÁRIO Guia do Docente
Conceito ROTEIRO PARA TREINAMENTO DO SAGRES DIÁRIO Guia do Docente O Sagres Diário é uma ferramenta que disponibiliza rotinas que facilitam a comunicação entre a comunidade Docente e Discente de uma instituição,
Leia maisDiagrama 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 maisMODELAGEM DE DADOS MODELAGEM DE DADOS. rafaeldiasribeiro.com.br 04/08/2012. Aula 7. Prof. Rafael Dias Ribeiro. M.Sc. @ribeirord
MODELAGEM DE DADOS PROF. RAFAEL DIAS RIBEIRO, M.Sc. @ribeirord MODELAGEM DE DADOS Aula 7 Prof. Rafael Dias Ribeiro. M.Sc. @ribeirord 1 Objetivos: Aprender sobre a modelagem lógica dos dados. Conhecer os
Leia maisFernando Albuquerque - fernando@cic.unb.br. Bancos de Dados. Fernando Albuquerque. 061-2733589 fernando@cic.unb.br
Bancos de Dados Fernando Albuquerque 061-2733589 fernando@cic.unb.br Tópicos Introdução O modelo relacional A linguagem SQL Introdução O que é um banco de dados : Coleção de informações que existe por
Leia maisBanco de Dados I. Apresentação (mini-currículo) Conceitos. Disciplina Banco de Dados. Cont... Cont... Edson Thizon (edson@esucri.com.
Sistemas da Informação Banco de Dados I Edson Thizon (edson@esucri.com.br) 2008 Apresentação (mini-currículo) Formação Acadêmica Mestrando em Ciência da Computação (UFSC/ ) Créditos Concluídos. Bacharel
Leia mais5 Mecanismo de seleção de componentes
Mecanismo de seleção de componentes 50 5 Mecanismo de seleção de componentes O Kaluana Original, apresentado em detalhes no capítulo 3 deste trabalho, é um middleware que facilita a construção de aplicações
Leia mais1. CONCEITOS BÁSICOS DE BD, SBD E SGBD
Introdução 1. CONCEITOS BÁSICOS DE BD, SBD E SGBD A importância da informação para a tomada de decisões nas organizações tem impulsionado o desenvolvimento dos sistemas de processamento de informações.
Leia maisTarefa Orientada 16 Vistas
Tarefa Orientada 16 Vistas Objectivos: Vistas só de leitura Vistas de manipulação de dados Uma vista consiste numa instrução de SELECT que é armazenada como um objecto na base de dados. Deste modo, um
Leia maisModelo 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 maisTOTVS BA Guia de Customização Linha Logix
TOTVS BA Guia de Customização Linha Logix Guia de Customização Sumário Título do documento 1. Objetivo... 3 2. Introdução... 3 3. Customização... 3 2 TOTVS BA Linha Logix Guia de Customização Projeto/Versão:
Leia maisUniversidade 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 maisProjeto 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 maisEspecificaçã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 maisSISTEMA GERENCIADOR DE BANCO DE DADOS
BANCO DE DADOS Universidade do Estado de Santa Catarina Centro de Ciências Tecnológicas Departamento de Ciência da Computação Prof. Alexandre Veloso de Matos alexandre.matos@udesc.br SISTEMA GERENCIADOR
Leia maisUNIVERSIDADE FEDERAL DE SANTA CATARINA GRADUAÇÃO EM SISTEMAS DE INFORMAÇÃO DEPARTAMENTO DE INFORMÁTICA E ESTATÍSTICA DATA MINING EM VÍDEOS
UNIVERSIDADE FEDERAL DE SANTA CATARINA GRADUAÇÃO EM SISTEMAS DE INFORMAÇÃO DEPARTAMENTO DE INFORMÁTICA E ESTATÍSTICA DATA MINING EM VÍDEOS VINICIUS DA SILVEIRA SEGALIN FLORIANÓPOLIS OUTUBRO/2013 Sumário
Leia maisHistórico de Revisão Data Versão Descrição Autor
H6Projetos Documento de Requisitos Versão 1.3 Histórico de Revisão Data Versão Descrição Autor 05/09/2013 1.0 Preenchimento do Capítulo 2 Requisitos Funcionais Evilson Montenegro 26/09/2013 1.1 Preenchimento
Leia mais)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 maisGlossários em Moodle (1.6.5+)
Glossários em Moodle (1.6.5+) Athail Rangel Pulino 2 Ficha Técnica Título Glossários em Moodle Autor Athail Rangel Pulino Filho Copyright Creative Commons Edição Agosto 2007 Glossários em Moodle 3 Índice
Leia maisSAV Sistema de Aluguel de Veículos I - DOCUMENTO DE REQUISITOS Versão 1.00
SAV Sistema de Aluguel de Veículos I - DOCUMENTO DE REQUISITOS Versão 1.00 Conteúdo 1. INTRODUÇÃO...3 1.1 CONVENÇÕES, TERMOS E ABREVIAÇÕES... 3 1.1.1 Identificação dos Requisitos... 3 1.1.2 Prioridades
Leia maisPrevayler. Perola. André Luís Sales de Moraes Juliana Keiko Yamaguchi Tatiana Yuka Takaki
Prevayler Perola André Luís Sales de Moraes Juliana Keiko Yamaguchi Tatiana Yuka Takaki Prevayler Prevayler é a implementação em Java do conceito de Prevalência. É um framework que prega uma JVM invulnerável
Leia maisDATA WAREHOUSE. Introdução
DATA WAREHOUSE Introdução O grande crescimento do ambiente de negócios, médias e grandes empresas armazenam também um alto volume de informações, onde que juntamente com a tecnologia da informação, a correta
Leia mais