domingo, 28 de setembro de 2008

Notas sobre Engenharia Ontológica

ENGENHARIA ONTOLÓGICA

Iraci Sobral de Oliveira, PUC/PR

1 Considerações sobre Ontologia

O entendimento de Engenharia Ontológica passa necessariamente pelo entendimento do que é ontologia. Várias são as definições encontradas na literatura, algumas das quais citadas na seqüência. Almeida e Bax (2003), afirmam que nos últimos anos, a utilização de ontologias para a organização de conceitos tem sido amplamente citada. Por esta razão eles acreditam que o uso das ontologias seja uma opção para caracterizar e relacionar entidades em um domínio, representando desta forma o conhecimento nele contido. Já Guarino e Welty (1998, p. 12), fazem uma diferenciação entre a ontologia em sentido ilosófico defendida por Aristóteles e a ontologia estudada pela Inteligência Artificial, segundo eles uma ontologia em sentido filosófico é uma disciplina que se preocupa com a estrutura das coisas, objetos e propriedades, e outros aspectos da ealidade, por utro lado, em Inteligência Artificial, uma ontologia refere-se à representação de um conhecimento por meio da engenharia e vocabulários específicos usados para descrever uma realidade. No caso específico desta pesquisa o foco está na definição de ontologia que surgiu da IA, cuja importância tem sido reconhecida em várias áreas de pesquisa, tais como engenharia do conhecimento, gestão do conhecimento e modelagem orientada a objetos. Guarino e Giaretta (1995, p. 7), confirmam que a palavra ontologia alcançou boa popularidade dentro da Comunidade de Engenharia do Conhecimento. Porém, segundo eles o significado da palavra é um pouco vago e possui diferentes interpretações, tais como: 1) ontologia como disciplina filosófica, radicalmente diferente de todas as outras, ontologia (sem o artigo indefinido e com a inicial minúscula) refere-se à disciplina filosófica que lida com a natureza e a organização da realidade; as outras interpretações de ontologia (com o artigo indefinido e com inicial maiúscula) referem-se a determinados objetos em particular.

Guarino e Welty (1998, p. 12) ampliam esta visão e assumem que uma ontologia refere-se a um artefato de engenharia formado por um vocabulário específico que é usado para descrever certa realidade e um conjunto de afirmações explícitas sobre o significado das palavras do vocabulário. Almeida e Bax (2003), observam que uma ontologia é criada por especialistas e define as regras que regulam a combinação entre temas e relações em um domínio do conhecimento. Definir ontologias é “classificar em categorias aquilo que existe em um mesmo domínio do conhecimento”, segundo Almeida (2003, p. 54), Para Almeida, Moura, Cardoso e Cendon (2005), uma ontologia é uma estrutura de organização do conhecimento que apresenta algumas inovações em relação ao “thesaurus” tradicional, dentre elas, algumas que permitem inferências automáticas, que podem ser úteis para a manutenção da estrutura em um domínio complexo.

Uma ontologia é um catálogo de tipos de coisas, as quais (Sowa 1999), assume-se existir em um domínio de interesse, na erspectiva de uma pessoa que usa uma linguagem. Almeida (2003) apud Borst (1997 p.12), apresenta uma definição de ontologia simples e completa, na qual ele define: “uma ontologia é uma especificação formal e explícita de uma conceitualização compartilhada .” Ontologia segundo Santos et al.(2001), basicamente é o vocabulário usado para representar um certo domínio do conhecimento e a conceitualização que estes termos pretendem capturar. Os autores argumentam que o processo de conceitualização implica definir um corpo de conhecimento, representado formalmente, que seja baseado nos seguintes elementos: objetos, entidades, relações entre objetos e entre conceitos. Já os estudos de Gruber (1995, p. 9) crescentam uma dimensão mais formal á definição de ontologia que é uma especificação explícita dos objetos, conceitos e outras entidades que assumam que existem em outras áreas de interesse, além das relações entre esses conceitos e restrições expressadas por meio de axiomas. Para Gruber (1995), os componentes básicos de uma ontologia são as classes, as quais são organizadas em uma taxonomia, as relações que representam a interação entre os conceitos, os axiomas que representam sentenças verdadeiras e as instâncias, que representam dados. De acordo com Duarte e Falbo (2000, p. 5, 12) ratificam esta definição e acrescentam uma dimensão de utilidade à ontologia. Uma ontologia é uma especificação de uma conceitualização, isto é, uma descrição de conceitos e relações que existem em um domínio de interesse, basicamente consiste desses conceitos e relações e suas definições, propriedades e restrições, descritas na forma de axiomas. Ontologias são úteis para apoiar a especificação e a implementação de qualquer sistema de computação complexo. Neste sentido: ontologia pode ser desenvolvida para diversos fins, mas, de modo geral, os seguintes propósitos são atingidos: ajuda as pessoas a compreender melhor uma certa área de conhecimento; ajuda as pessoas a atingir um consenso sobre uma área de conhecimento; ajuda outras pessoas a compreender uma certa área de conhecimento.

As autoras Noy e McGuiness (2001, p. 15) reforçam a razão para utilizar ontologia e acrescentam outras. São elas:

a) compartilhar a mesma estrutura de informação entre pessoas e agentes de software; b) permitir o reuso do conhecimento o domínio; c) separar o conhecimento do domínio do conhecimento operacional; e d) analisar o conhecimento do domínio. Almeida e Bax (2003, p. 7), confirmam o caráter de representação do conhecimento por meio de ontologias. A utilização de ontologias para a organização de conceitos tem sido amplamente aplicada e, por esta razão, o uso das ontologias seja uma opção para caracterizar e relacionar entidades em um domínio, representando desta forma o conhecimento nele contido.
Cantele, Adamatti, Ferreira e Sichman (2004, p. 11) adicionam que, para que possa existir o compartilhamento de conhecimento, é necessário que pelo menos os conceitos mais comuns estejam descritos em uma ontologia básica, que possa ser o ponto de convergência dos engenheiros ontológicos. 36 As autoras Noy e McGuinness (2001, p. 15), afirmam que uma ontologia define um vocabulário comum para pesquisadores que necessitam compartilhar informações em um domínio. Inclui definições de conceitos básicos e a relação entre eles. Ainda, ontologia é uma descrição explícita formal de conceitos em um domínio do discurso (classes algumas vezes chamadas conceitos), propriedades de cada conceito que descreve várias características e atributos do conceito, (slots algumas vezes chamados papéis ou propriedades) e restrições em slots (facets algumas vezes chamados restrições do papel). Uma ontologia com um conjunto de exemplos de classes individuais constitui uma base de conhecimento. Reitera-se que o presente trabalho não se fixa a uma definição de ontologia específica por considerar que as mesmas não são de natureza contraditória mas sim complementar. A ontologia a ser tratada nesta pesquisa considerará apenas a aplicação relacionada à representação de conhecimento, com objetivo de contribuir para o desenvolvimento de sistemas baseados em conhecimento, ou engenharia do conhecimento. O principal objetivo é a possibilidade de desenvolver uma base de conhecimento para utilização em outras ontologias relacionada a assuntos semelhantes. Deve-se ressaltar que, embora várias das definições apresentadas estejam relacionadas à utilização de ontologias na área de engenharia de software, está aplicação da ontologia não será foco deste trabalho. Após a apresentação das definições de ontologia, faz-se necessário classificar a ontologia a ser obtida quanto aos diferentes tipos existentes.

2 Tipos de ontologias

Almeida e Bax (2003), dizem que as ontologias não têm sempre a mesma estrutura, mas algumas características e componentes estão presentes na maioria delas. Adicionalmente, apresentam uma síntese dos tipos de ontologia e sua
descrição, os quais são apresentados no Quadro 1- tipos de ontologia.

A Estratégia de Pesquisa se apóia neste Quadro e ilustra a classificação da ontologia a ser representada em termos de função, grau de formalismo, aplicação, estrutura e conteúdo.

Tipos de Ontologia - Abordagem, Classificação e Descrição

Ontologia de domínio Reutilizável no domínio, fornece vocabulário sobre conceitos, seus relacionamentos, sobre atividades e regras que os governam.

Ontologia de tarefa Fornece um vocabulário sistematizado de termos, especificando tarefas que podem ou não estar no mesmo domínio.

Quanto à função

Mizoguchi, Vanwellkenhuysen & Ikeda (1995) Ontologias gerais Inclui um vocabulário relacionado a coisas, eventos, tempo, espaço, casualidade, comportamento, funções etc.

Ontologia altamente informal Expressa livremente em linguagem natural
Ontologia semi-informal Expressa em linguagem natural de forma restrita e estruturada.

Ontologia semiinformal Expressa em uma linguagem artificial definida formalmente Quanto ao grau de formalismo Uschold & Gruninger (1996).

Ontologia rigorosamente formal Os termos são definidos com semântica formal, teoremas e provas.

Ontologia de autoria neutra Um aplicativo é escrito em uma única língua e depois convertido para uso em diversos sistemas, reutilizando-se as informações.

Ontologia como especificação Cria-se uma ontologia para um domínio, a qual é usada para documentação e manutenção do desenvolvimento de softwares.

Quanto à aplicação Jasper & Uschold (1999)

Ontologia de acesso comum à informação Quando o vocabulário é inacessível, a ontologia torna a informação inteligível, proporcionando conhecimento compartilhado dos termos.

Ontologia de alto nível Descreve conceitos gerais relacionados a todos os elementos da ontologia (espaço, tempo, matéria, objeto, evento, ação etc.) os quais são independentes do problema ou domínio.

Ontologia de domínio Descreve um vocabulário relacionado a um domínio,
como por exemplo, medicina ou automóveis.

Quanto à estrutura Haav & Lubi (2001).

Ontologia de tarefas Descreve uma tarefa ou atividade, como por exemplo,
diagnósticos ou compras, mediante inserção de termos especializados em ontologia.

Ontologia terminológica Especifica termos que serão usados para representar o conhecimento em um domínio (por exemplo, os léxicos).

Quanto ao Conteúdo Van-Heijist, Schreiber & Wielinga (2002) apud Almeida e Bax (2003)

Ontologia de informação Especifica a estrutura de registros de bancos de dados (por exemplo, os esquemas de bancos de dados). Ontologia de modelagem do conhecimento Especifica conceitualização do conhecimento, tem uma estrutura interna semanticamente rica e são refinadas para uso no domínio do conhecimento que descreve.

Ontologia de aplicação Contém as definições necessárias para modelar o conhecimento em uma aplicação.

Ontologia de domínio Expressa a conceitualização que é especifica para um
determinado domínio do conhecimento.

Ontologias genéricas Similar á ontologia de domínio, mas os conceitos que a definem são considerados genéricos e comuns a vários campos.

Ontologia de representação Explica as conceitualizações que estão por traz do formalismo de representação do conhecimento. FONTE: ALMEIDA E BAX (2003:10) Faz-se necessário ressaltar que embora haja diversos tipos de ontologia, apenas aquelas destacadas no Quadro 1 foram escolhidas. Esta classificação está orientada a buscar a representação de um domínio de conhecimento.

3 Engenharia Ontológica

Russel e Norvig (1995, p. 65), afirmam que a Engenharia Ontológica incorpora decisões sobre como representar uma ampla seleção de objetos e relações, dentro de uma ordem lógica, levando a um modelo de nível ontológico.

Segundo os autores, trata-se de organizar os seguintes títulos:

a) categorias;
b) medidas;
c) composição de objetos;
d) tempo, espaço e evento;
e) eventos e processos;
f) objetos físicos; g) substância; e
h) objetos mentais e crenças.


O presente trabalho assume em particular a abordagem de Noy e McGuiness para construção de ontologias. Noy e Mcguiness (2001), apresentam algumas regras para tal:

a) não há um modelo correto – existem sempre alternativas viáveis. a melhor solução sempre depende da aplicação e extensão que se pretende para a ontologia;

b) desenvolvimento de ontologia é sempre um processo interativo;

c) conceitos em ontologia deveriam ser próximos para objetos (físicos ou lógicos) e relacionamentos em seu domínio de interesse. estes são na maioria substantivos (objetos) ou verbos (relacionamentos) em sentenças que descrevem seu domínio.

Noy e Mcguiness (2001), ainda sugerem as seguintes etapas para a construção de ontologias:

a) Determinar o domínio e escopo da ontologia;
b) Considerar o reuso de ontologias existentes:
c) Enumerar termos importantes na ontologia;
d) Definir as classes e a hierarquia de classes;
e) Definir as propriedades de classes-slots;
f) Definir as facetas dos slots;
g) Definir instâncias.

3.1 Construção da ontologia

Na seqüência detalham-se estas etapas.

a) Etapa Determinação do domínio e do escopo da ontologia.

O desenvolvimento inicia-se pela definição do domínio e escopo, respondendo às questões de competência em relação ao tema estudado. Uma das maneiras de determinar o escopo da ontologia é elaborar uma lista de perguntas que uma base de conhecimento deve ser capaz de responder. Estas questões são denominadas questões de competência.


a) Qual é o domínio que a ontologia cobrirá?
b) Qual a finalidade que estamos usando a ontologia?
c) Quais respostas às informações da ontologia devem trazer?
d) Quem usará e manterá a ontologia?
b) Etapa Consideração da reutilização de ontologias existentes


Nesta fase é importante a verificação de ontologias já existentes no domínio de conhecimento. A reutilização de ontologias existentes pode ser um requisito se o sistema necessitar interagir com outras aplicações que já tenham sido consideradas por ontologias particulares ou vocabulários controlados. Muitas ontologias já estão disponíveis em formato eletrônico e podem ser importadas para o ambiente de desenvolvimento que está sendo utilizado. Visando evitar a construção de uma ontologia que já exista ou então aproveitar as bases conceituais de uma ontologia existente, realizou-se uma pesquisa para verificação da existência de ontologias já construídas nos domínios em estudo.

b) Considerar o reuso de ontologias existentes:

Nesta fase busca-se a ontologia numa biblioteca especializada na internet.

c) Etapa Enumeração dos termos importantes na ontologia

Nesta fase devem-se escrever uma lista de todos os termos que necessitam de definições ou explicações para os usuários, os termos sobre os quais é importante falar. Muitos dos termos identificados nas duas áreas de conhecimento podem ser usados ou descartados na construção da ontologia. A construção da ontologia também mostra a necessidade de que haja uma relação entre os termos encontrados com suas propriedades, ou seja, estas propriedades devem responder a seguinte pergunta: O que gostaríamos que a ontologia respondesse sobre estes termos?

d) Etapa Definição das classes e a hierarquia das classes

A definição de classes e hierarquias pode ser efetivada: (i) de cima para baixo, (ii) de baixo para cima ou (iii) por combinação. Um processo de desenvolvimento de cima para baixo começa com a definição da maioria dos conceitos gerais no domínio e as especializações subseqüentes dos conceitos, podem-se criar classes gerais de conceitos e então especializa-se em sub-classes categorizando-as. Um processo de desenvolvimento de baixo para cima começa com a definição da maioria das classes mais específicas, que partem da hierarquia, com subseqüente agrupamento destas classes em conceitos mais gerais. Um processo de desenvolvimento por combinação cima para baixo e baixo para cima inicia-se primeiro pela definição dos conceitos mais salientes e então se generaliza e especializa-se apropriadamente. Pode-se começar por poucos conceitos de alto nível e poucos conceitos específicos e então relacioná-los com conceitos de nível médio. Nenhum destes três métodos é melhor um do que o outro, o método depende do ponto de vista de quem vai desenvolver a ontologia e a visão que tem do domínio. Nesta etapa deve ocorrer uma seleção dos conceitos listados anteriormente. Os conceitos selecionados são as classes da ontologia e orientam a hierarquia. De acordo com Booch, Rumbauch e Jacobson (2000 p.47), uma classe é uma descrição de um conjunto de objetos que compartilham os mesmos atributos, operações, relacionamentos e semântica. Os autores explicam que as classes são utilizadas para capturar o vocabulário do sistema que está em desenvolvimento. Um exemplo de classe pode ser a construção de uma casa: as janelas seriam uma classe, modelo e tamanho seriam considerados atributos destas classes. Outro termo importante na construção da ontologia é a instância que segundo Booch,Rumbauch e Jacobson (2000 p.181), é a manifestação concreta de uma abstração à qual um conjunto de operações pode ser aplicado e que tem um estado capaz de armazenar os efeitos da operação. De acordo com Almeida (2003), com a lista de conceitos identificada, as classes são criadas através de agrupamentos semânticos dos conceitos existentes, entretanto, apenas classes não possibilitam a construção da ontologia, é preciso definir as propriedades das classes, atributos e operações. Neste caso os conceitos excedentes, após a definição das classes podem ser propriedades das classes, normalmente estes termos são, em geral, chamados de relações (slots).

e) Etapa Definição das propriedades das classes – Slots ou atributos

Esta fase define atributos das classes e visa à estruturação interna dos conceitos necessária para satisfazer os requisitos de informação do cenário em desenvolvimento.

Booch, Rumbaugh e Jacobson (2000, p.50), definem atributo como sendo uma propriedade nomeada de uma classe que descreve um intervalo de valores que as instâncias da propriedade podem apresentar. Uma classe pode ter qualquer número de atributos ou nenhum atributo. Para cada atributo da lista, devese determinar à que classe pertence. Estes atributos anexam-se à classe. Em geral existem diversos objetos de propriedades que podem se tornar atributos em uma ontologia: propriedades intrínsecas, propriedades extrínsecas e peças. Se o objeto está estruturado, estas peças podem ser físicas e abstratas.

f) Etapa Definição das Facets (propriedades) dos atributos

Esta fase corresponde à definição das facets ou propriedades dos atributos que podem ser: tipo de valor, valores permitidos, número de valores (cardinalidade), e características que os valores do atributo podem tomar. Alguns exemplos destas características são: a) cardinalidade - define quantos valores um atributo pode ter: um valor ou valores múltiplos; b) atributo tipo valor – descreve que tipo de valores pode completar o atributo; tais como: nome; c) número- descreve algumas coisas mais específicas, tais como valores numéricos. Por exemplo: preço.; d) Boolean atributos são simples sim ou não flag. Por exemplo: verdadeiro ou falso; e) enumerado- especifica uma lista de valores permitidos para slots. Por exemplo: forte, moderado e delicado, pode-se usar símbolos; f) Tipo exemplo: permitem definição de relacionamentos entre indivíduos. A classificação dos atributos está disponível no capitulo 6 construção da ontologia.

g) Etapa Criação de instâncias

O último passo é criar instâncias exemplos de hierarquia de classes individuais. Definir um exemplo de classe individual requer (1) escolher a classe, (2) criar um exemplo individual daquela classe, e (3) completar os valores dos atributos.
Outra fase importante da construção da ontologia e a identificação de operações que segundo Booch, Rumbauch e Jacobson (2000, p.51), é a implementação de um serviço que pode ser solicitado por algum objeto da classe para modificar o comportamento. Uma operação é uma abstração de algo que pode ser feito com um objeto e que é compartilhado por todos os objetos da classe, podem ser movidos, redimensionados ou ter suas propriedades examinadas.

Texto extraído da Dissertação de Mestrado do autor

Uma visão da Web Semântica

Download do texto aqui!

Ontologias: conceitos, usos, tipos, metodologias

Download aqui!

Aplicações de suporte à Web Semântica

Download aqui!

Ontologia e OWL

Veja aqui

Resource Description Framework (RDF)

Download aqui

Ferramentas de busca na Internet

Download aqui

Comunidades virtuais e a Web Semântica

Download aqui

XML

Material para leitura XML

Metadados

Atenção alunos: Material para leitura sobre metadados click aqui

quinta-feira, 24 de julho de 2008

RDF uma primeira aproximação


A First Course in RDF and RDFS (Resource Description Framework and Resource Description Framework Schema)

From: mark.birbeck, 2 months ago





This tutorial was given at SemTech 2008, on May 19th.

From the program: "RDF is a key W3C specification and a foundational component of the Semantic Web. This tutorial will explain the basics of RDF and how it functions as a key building block of semantic systems.

Mark Birbeck is the managing director of webBackplane. He has been creating software for many years, and his particular interests are the semantic web, and components that help to create dynamic, flexible, user interfaces. He has consulted, given training, spoken at conferences and contributed to books and articles on these and other topics. He is also heavily involved in the creation of new standards on these themes. Mark is an Invited Expert on both the XForms Working Group and the XHTML 2 Working Group, at the W3C. Over the years his work there has included devising and proposing RDFa."


SlideShare Link

domingo, 15 de junho de 2008

Slides do Método 101

Exame Final


Elaborar uma ontologia de domínio utilizando o método 101 para um “JOGO DE CARTAS” como demonstrado na figura abaixo:

Utilize uma abordagem iterativa para o desenvolvimento da ontologia, ou seja, parta de uma versão inicial da ontologia, que será revisada e refinada aos poucos. Os conceitos na ontologia deverão estar ligados aos objetos (as cartas) e aos relacionamentos de interesse.

Para a elaboração desse trabalho não é obrigatório o uso de nenhuma ferramenta de projeto de ontologia, usar ou não é uma decisão da equipe, que para esta tarefa deverá ser a mesma dos seminários apresentados em classe.

As datas de apresentação são as seguintes:

1a. Equipe: 19 de junho de 2008
2a. Equipe: 24 de junho de 2008
3a. Equipe: 26 de junho de 2008

terça-feira, 29 de abril de 2008

Agenda de Web Semântica


Prezados alunos CBCC-Web Semântica

Nesta terça 29 de abril 2008 = Não haverá aulas motivado por minha participação em duas bancas de concurso público da Faculdade de Computação de ICEN.

Na quinta 01 de maio de 2008 = Dia do Trabalho Feriado.

N terça 06 de abril de 2008 = Apresentação dos Seminários

SGML (Não recebi nenhuma indicação até agora da equipe)

HTML
Equipe:
Danielle de Micheli Palhano
Ana Carolina Araújo
Ana Carla Cerbino
Douglas Pinheiro

XML
Equipe
Ana Idalina
Cristiane
Alessandra
Romulo

Estou aguardando os nomes da Equipe de SGML

Atenciosamente,

Prof. Adagenor Ribeiro

quinta-feira, 17 de abril de 2008

Aviso aos alunos

Prezados alunos,

Comunico de minha impossibilidade de comparecer a nossa aula no dia de hoje. Infelizmente estou com o problema de doença em minha casa com minha filha caçula, enfrentando internações, soros, consultas etc.. O que posso sugerir para evitar a descontinuidade de nossos trabalhos é a leitura do artico sobre Ontologia e Web Semântica é um texto em língua portuguesa mediamente longo. Basta ler somente a parte de ontologia. Agradeço à compreensão.

Prof. Adagenor Ribeiro

quarta-feira, 26 de março de 2008

As Camadas da Arquitetura da Web Semântica




A Web Semântica é um esforço colaborativo liderado pelo World Wide Web Consortium (W3C), com a participação de pesquisadores da academia e da indústria de computação.  O objetivo da Web Semântica é melhorar as potencialidades da web através da criação de padrões e ferramentas que permitam atribuir significado ao conteúdo das páginas web e, também possibilitar que usuários e programas possam trabalhar de forma cooperativa.

 Nessa contexto um conjunto de padrões estão sendo especificados para a identificação de recursos na web, assim como para a representação sintática, estrutural, semântica e lógica de informações referentes a esses recursos.  Esse conjunto de padrões forma as diversas camadas em que se divide a Arquitetura da Web Semântica.

A camada denomindada Unicode / URI fornece a interoperabilidade em relação à codificação de caracteres e ao endereçamento e nomeação de recursos da Web Semântica. O Unicode é um padrão de codificação para fornecer uma representação numérica universal e sem ambigüidade para cada caractere de maneira independente da plataforma de software e do idioma. O URI é um padrão para identificar um recurso físico ou abstrato de maneira única e global. Um identificador URL é um caso específico de URI, formado pela concatenação de seqüências de caracteres para identificar o protocolo de acesso ao recurso, o endereço da máquina na qual o recurso pode ser encontrado e o próprio recurso em questão. 

A camada denominada de XML / Namespace / XML Schema fornece a interoperabilidade em relação à sintaxe de descrição de recursos da Web Semântica. A Extensible Markup Language (XML) é uma linguagem para representação sintática de recursos de maneira independente de plataforma. Os documentos que tem sua estrutura e conteúdo representados na linguagem XML são denominados de documentos XML. A XML Schema é uma linguagem de definição para descrever uma gramática (ou esquema) para uma classe de documentos XML. A linguagem XML Schema fornece elementos para descrever a estrutura e restringir o conteúdo de documentos XML.  Os espaços de nomes (namespaces) fornecem um método para qualificar os nomes de elementos e atributos, utilizados nos documentos XML, através da associação destes nomes com os espaços de nomes identificados por referências de URI.  Os espaços de nomes são úteis para distinguir entre dois elementos definidos com um mesmo nome, mas que pertencem a esquemas diferentes.  Alem disso, um documento pode associar elementos previamente definidos à sua estrutura, desde que utilize referencias aos esquemas que definem esses elementos.

 A camada denominada RDF / RDF Schema fornece um framework para representar informação (metadados) sobre recursos.  As principais especificações do Resource Description Framework (RDF) abrangem um modelo de dados (para expressar declarações sobre os recursos), uma sintaxe baseada na Extensible Markup Language (XML) (para o intercâmbio das declarações) e uma linguagem de definição de esquemas para vocabulários. 

A RDF fornece um modelo de dados fundamentado na idéia de expressar declarações simples sobre recursos; cada declaração consiste de uma tripla (sujeito, predicado, objeto). Por exemplo na declaração: “a data de criação da página http://www.ufpa.br/index.html  é 06/08/2000”

             Sujeito        : “http://www.ufpa.br/index.html

Predicado   : “data de criação”

Objeto        : “06/08/2000” 

Um conjunto de triplas (ou declarações) é chamado de grafo RFD, que pode ser ilustrado como um diagrama de nós e arcos orientados, no qual cada tripla é representada como uma ligação nó-arco-nó. O RDF fornece uma sintaxe baseada na linguagem XML, denominada de RDF / XML, para realizar o intercâmbio desses grafos. 

Alem do modelo e da sintaxe, a RDF também fornece uma linguagem, denominada RDF / Schema, para a definição de esquemas para os vocabulários (termos) utilizados nas declarações. A RDF-Schema estende a especificação básica do RDF para permitir a definição de vocabulários.  Assim, o RDF-Schema é uma linguagem mínima para a representação de Ontologias simples. Basicamente, essa linguagem fornece o suporte necessário para descrever classes e propriedades, e também para indicar quais propriedades são utilizadas para a descrição de uma classe.

 A camada denominada de Ontologia fornece suporte para a evolução de vocabulários e para processar e integrar a informação existente sem problemas de indefinição ou conflito de terminologia.  A linguagem RDF-Schema permite a construção de ontologias com expressividade e inferência limitadas, pois fornece um conjunto básico de elementos para a modelagem, e poucos desses elementos podem ser utilizados para inferência.  A Web Ontology Language (OWL) estende o vocabulário da RDF Schema para a inclusão de elementos com maior poder com relação a expressividade e inferência.  Alem disso, a linguagem OWL fornece três módulos (ou dialetos), OWL Lite, OWL DL e OWL Full, para permitir o uso da linguagem por aplicações com diferentes requisitos de expressividade e inferência.  O desenvolvedor pode escolher o módulo OWL adequado, de acordo com os requisitos da sua aplicação.

 A camada denominada Lógica fornece suporte para a descrição de regras para expressar relações sobre os conceitos de uma ontologia, as quais não podem ser expressas com a linguagem de ontologia utilizada.  As linguagens Rule Markup Language (RuleML) e Semantic Web Rule Language (SWRL) são exemplos de linguagens propostas para a descrição de regras para a Web Semântica.  Nesse sentido, o W3C iniciou o trabalho sobre o Rule Interchange Format (RIF) para fornecer suporte ao intercâmbio das diversas tecnologias baseadas em regras.

 As camadas denominadas de Prova e Confiança fornecem o suporte para a execução das regras, alem de avaliar a correção e a confiabilidade dessa execução.  Essas camadas ainda estão em desenvolvimento e dependem da maturidade das camadas inferiores.

Para DOWNLOAD do texto clique aqui!

terça-feira, 25 de março de 2008

DOWNLOAD de Mitos e Verdades da Web Semântica




Estava ocorrendo um problema para realizar download deste arquivo, já foi resolvido caso persista por favor comunique-se com o professor.

Grande abraço a todos e até 5a. feira
Adagenor

sexta-feira, 14 de março de 2008



Vai aderir à Web Semântica

O Yahoo anunciou hoje novos detalhes de sua plataforma para desenvolvedores chamada Open Search. Além de mostrar como essa plataforma vai se integrar com o futuro suporte que a empresa terá aos vários padrões da Web Semântica como RDF e microformats.
Um site pode determinar semanticamente seu conteúdo, através dos microformats. Especificando o que é um endereço, dizendo que um telefone é de determinada pessoa, entre outros detalhes. O que o Yahoo pretende, é fazer com que sua máquina de busca entenda esses dados semi-estruturados de forma automática e insira nos resultados da busca. Para demonstrar isto, o blog do Yahoo Search dá o exemplo de uma rede social como o LinkedIn:

Neste caso, a resposta para a consulta do usuário é um perfil da rede social, só que desta vez com muito mais informação agregada, graças aos microformats.
Em conjunto com o suporte aos padrões semânticos, o Yahoo irá abrir sua plataforma Open Search para os desenvolvedores. Com esta ferramenta é possível desenvolver “mods” para os resultados da busca usando os dados semânticos no índice da máquina de busca ou em qualquer API pública.


O que isso tudo realmente significa para nós?


Se um site de comércio eletrônico, por exemplo, resolver implementar microformats nas páginas de seus produtos, o Yahoo irá poder extrair o preço, nome do produto, características, entre outros detalhes diretamente da página e guardar essas informações. Além disso, com a plataforma Open Search será possível criar algo parecido com o visto acima sobre o perfil no LinkdIn. Ao procurar por “Televisões de LCD”, por exemplo, o Yahoo pode mostrar informações sobre o produto junto com o link para a página do produto.


As utilidades dessas tecnologias são inúmeras, mas há algumas questões a serem observadas. Os formatos da Web Semântica ainda são novos e não estão bem consolidados, além disso quem quiser implementar estes formatos precisa fazer muita coisa “na mão”, ou seja, ainda não há ferramentas que facilitem este processo. Além da iniciativa do Yahoo, existem poucas utilidades para estes formatos semânticos. Logo, colocar microformats em um site pode ser uma tarefa árdua para poucos resultados práticos.


O Yahoo quer mudar esse cenário e de quebra criar um ambiente onde desenvolvedores possam criar resultados de busca mais dinâmicos e informativos para seus sites, melhorando a experiência do usuário.


Séra esse o começo do caminho para uma Web mais Semântica?

Veja mais em: http://feeds.feedburner.com/~r/googlediscovery/~3/250900795/

quarta-feira, 12 de março de 2008

Sobre a leitura e a análise temática de um texto


Para orientar o entendimento do texto tratado em classe, propõe-se aqui algumas questões a serem respondidas após a leitura.


 (1) Qual o tema ou assunto ? Do que ele esta falando e como apresenta a sua perspectiva ?


(2)  Qual o tipo de texto ? Acadêmico, de informação, jornalístico, técnico ?


(3)  Qual o problema que o autor pretende desenvolver ? ou seja, o que levou o autor a escrever o seu texto e qual tipo de questão que procura responder com sua argumentação ?


(4) A partir disso como o autor apresenta sua(s) idéia(s)  central(is), qual é a(s) sua(s)  proposição fundamental ou tese(s)?


(5) Se ele defende determinada(s) tese(s) como constrói a estrutura de seus argumentos para fundamenta-la(s)?


(6) Existem idéias secundárias, argumentações complementares que auxiliam a construção da(s) tese(s)?

 

Resumindo:   


Sobre o que o autor está falando? Qual a questão que pretende responder? Frente a esta questão, qual a sua resposta? Como fundamenta as suas afirmações e suas respostas? Seus argumentos são convincentes? Existem outras idéias que compõem o texto?

Ontologias, Web Semântica e Saúde

Uma longa tradição de estudo no ramo da filosofia, que remonta há pelo menos remotos 23 séculos, o termo “Ontologia” transformou-se num dos termos mais em moda no mundo da informática de hoje, sendo aplicado em sistemas de muitos outros campos, incluindo-se, entre os principais, biologia e medicina. Enquanto o termo “Ontologia” outrora denotava um ramo da metafísica, “ontologias” são hoje entendidas como vocabulários formais que descrevem as premissas básicas de um determinado domínio. Há pelo menos uma razão principal para todo este interesse por parte dos informatas. Segundo Tim Bernes-Lee, um dos principais responsáveis pela sedimentaçãoda própria internet, as ontologias constituem o componente e a motivação principalda web semântica, uma web em que os programas e os sistemas são capazes de "entender" e processar dados das páginas, de acordo com o contexto. Mas o que são ontologias e como elas ajudam os sistemas a conseguir processar os dados com tal profundidade? Em palavras práticas, .. veja mais aqui!


A revista especial que trata do assunto ontologia e saúde

Web Semântica - Guia do Futuro

A TV1 ouviu o consórcio W3C e a especialista Martha Gabriel sobre web semântica. O vídeo trata das novas possibilidades e diferenciais da 'web 3.0' para a comunicação e o marketing. Veja o vídeo!

Web 3.0 in pratica

http://www.ictv.it/ - Le applicazioni pratiche del Web 3.0: dai motori di ricerca, alla pubblicità online, dall'analisi delle opinioni alla gestione dei fogli di calcolo con Excel. Veja o vídeo

A Web Semantica nas palavras de Tim Berners-Lee no MIT

RDFa Basics

Video sobre princípios da Linguagem RDF. Aqui.

Artigo em português sobre RDF