FACULDADE DE TECNOLOGIA DE SÃO JOSÉ DOS CAMPOS




                PERPÉTUO RODRIGUES PEIXINHO




ESTUDO DE CASOS SOBRE A...
II


                PERPÉTUO RODRIGUES PEIXINHO




ESTUDO DE CASOS SOBRE A APLICAÇÃO DA WEB SEMÂNTICA NAS REDES
        ...
III


                PERPÉTUO RODRIGUES PEIXINHO




ESTUDO DE CASOS SOBRE A APLICAÇÃO DA WEB SEMÂNTICA NAS REDES
       ...
IV




    Dedico este trabalho às pessoas que me apoiaram e me derem
   condições de galgar êxito na sociedade letrada, F...
V

                             AGRADECIMENTOS



Eu tenho muito que agradecer, a começar pelo fato de estar vivo, e de po...
VI




"Tecnologia é a habilidade de organizar o mundo

      De forma que não tenhamos que senti-lo."

                  ...
VII


                                        RESUMO


A Web encontra-se abarrotada de documentos e continua a aumentar de...
VIII


                                        ABSTRACT


The Web meets overloaded of documents and it continues to increa...
IX


                                                              SUMÁRIO


1      INTRODUÇÃO ..............................
X


       4.1.1      FOAF ..................................................................................................
XI


                                                    LISTA DE FIGURAS


Figura 1 - Arquitetura proposta para a Web Sem...
XII


Figura 25 - Código para referenciar a biblioteca Backplanejs. ................................................ 62

F...
XIII


Figura 51 - Modelo de tripla RDF. ....................................................................................
XIV


                                         LISTA DE TABELAS


Tabela 1 - Ranking das redes sociais mais acessadas no m...
XV



                        LISTA DE ABREVIATURAS E SIGLAS


AJAX: Asynchronous Javascript And XML
CSS: Cascading Style ...
16




1             INTRODUÇÃO


1.1            Motivação


Publicar informações na web nunca foi tão fácil (Wordpress, 2...
17



computador). Esta é a definição de Web Semântica, segundo o "pai da Web", Tim Berners-
Lee, um dos comandantes desse...
18



1.2.2          Objetivos Específicos


A seguir são apresentados os objetivos específicos deste Trabalho:


        ...
19




1.4              Organização do Trabalho


O Trabalho está organizado em 6 Capítulos:


      a) o Capítulo 2 apres...
20



2              WEB SEMÂNTICA: TECNOLOGIAS, APLICAÇÕES E


FERRAMENTAS


O objetivo deste Capítulo é apresentar conce...
21



do uso intensivo de linguagens computacionais e instrumentos de metadados espera-se obter o
acesso automatizado às i...
22



(URN), de modo que pode ser representado por qualquer um destes, ou por ambos. Fazendo
uma analogia de um recurso di...
23




              Figura 1 - Arquitetura proposta para a Web Semântica 2001.


Fonte: imagem extraída do site Semantic ...
24



c) RDF: Estende a ligação da estrutura da Web para usar URIs para nomear a
   relação entre as coisas, bem como as d...
25



           j) Crypto: Consiste de um processo em que as informações são cifradas de modo
              que não possa...
26



propriedades e valores. Para tornar essa discussão um pouco mais concreta, o grupo de
instruções "existe uma pessoa ...
27




                           Figura 3 - RDF usa URIs para identificar.




Nos passos a seguir a explicação da Figura...
28




            Figura 4 - mostra a estrutura subjacente de uma expressão RDF.




Um conjunto de triplas, como é chama...
29




                Figura 5 - RDF sendo representado com um nó em branco.


Fonte: Imagem extraída do site da Tecweb, ...
30



           b) property (propriedade): é uma característica, um atributo ou uma relação
              utilizada para ...
31



podem ler e entender essa informação, mas para um computador isso não é nada, além de
sequencias de texto não estrut...
32




                    Figura 7 - Codificação da resenha em HTML.




Na Figura 8 a seguir, ver-se o mesmo exemplo, po...
33



Este exemplo mostrou três propriedades importantes que podem ser usadas em todos os Tags
do HTML.
Como segue:


    ...
34




A seguir nas Figuras 9, 10 e 11 será visto um exemplo simples de como buscar informações
na base de dados RDF utili...
35




2.3              Aplicações da Web Semântica


O projeto da Web Semântica é muito ambicioso e permite imaginar solu...
36



A ideia da busca semântica tem como objetivo construir um mecanismo de busca que não faça
apenas uma simples pesquis...
37



Índices de Web Semântica tem o objetivo de facilitar a localização dos documentos com base
nas informações que eles ...
38



Rich Snippets já é uma novidade do Google na apresentação dos resultados de busca. O
objetivo é extrair pelo sistema...
39



uma ontologia específica, possibilitando que computadores possam entender melhor o
conteúdo e oferecer serviços de b...
40



Este recurso permite buscar todos os jogadores de tênis que vivem em Moscou ou os nomes
de todos os prefeitos de cid...
41



3             REDES SOCIAIS


Este capítulo fará uma introdução sobre redes sociais, apresentará algumas das redes s...
42




                      Figura 13 - Representação de uma rede social.


Fonte: imagem extraída do site: America data ...
43




                        Figura 14 - Redes sociais por continentes.


Fonte: ComScore World Metrix, 2010.


Como pod...
44




                            Figura 15 - Redes sociais por países.


Fonte: Imagem extraída de: oxyweb, 2009.


3.2 ...
45



O Blog é a mais fácil e mais rápida ferramenta de publicação já inventada. Permite que as
pessoas tenham uma voz que...
46



discussões que transitam nas redes sociais. Os blogs têm modificando comportamentos,
aproximado povos e trazido melh...
47




           Figura 16 - Perspectiva para adição de novos posts do Wordpress.




Já na Figura 17 a seguir é mostrado...
48




3.3           Considerações Finais


Este capítulo fez uma introdução a redes sociais, apresentou algumas das redes...
49



4             AVALIAÇÃO DE TECNOLOGIAS E PADRÕES DA WEB


SEMÂNTICA


Este capítulo apresentará alguns dos vocabulár...
50




                           Figura 18 - Vocabulários semânticos.


Fonte: Imagem extraída de; W3C.


A seguir a desc...
51



4.1.1         FOAF


Para um computador, a Internet é um mundo desprovido de significado. Como ocorre de fato
na Web...
52




             Figura 19 - Ilustração de funcionamento do vocabulário FOAF.


Fonte: Imagem extraída de: dcs FOAF.


...
53



convertidos em FOAF, como: nome, sexo, imagem etc., a fim de identificar arquivos FOAF
de outros que contém propried...
54



preferência explícita, criação ou adaptação de sugestões de produtos com base em um
histórico de compras. Usando FOA...
55



"A associação de metadados descritivos padronizados com objetos em rede tem o potencial de
melhorar substancialmente...
56



Isso permitiria comunidades resolverem as suas próprias necessidades, fazendo integrações de
dados de forma colabora...
57




          a) assunto: Área de conhecimento ao qual o trabalho pertence;
          b) título: É definido como o nome...
58



ordem em todos os ambientes do usuário. Ordenação ou sequenciação pode ser dependente de
sintaxe, por exemplo, RDF/X...
59



 by-nc = Atribuição não    Esta licença permite o ―remix‖, e a construção
 comercial                 sobre o trabalh...
60




                Figura 24 - Exemplo de código RDFa Creative Commons.




No destaque da Figura 24 o Creative Common...
61



          b) Dublin Core para obter semântica e tags automaticamente posts com o título, o
              criador e o...
ESTUDO DE CASOS SOBRE A APLICAÇÃO DA WEB SEMÂNTICA NAS REDES SOCIAIS
ESTUDO DE CASOS SOBRE A APLICAÇÃO DA WEB SEMÂNTICA NAS REDES SOCIAIS
ESTUDO DE CASOS SOBRE A APLICAÇÃO DA WEB SEMÂNTICA NAS REDES SOCIAIS
ESTUDO DE CASOS SOBRE A APLICAÇÃO DA WEB SEMÂNTICA NAS REDES SOCIAIS
ESTUDO DE CASOS SOBRE A APLICAÇÃO DA WEB SEMÂNTICA NAS REDES SOCIAIS
ESTUDO DE CASOS SOBRE A APLICAÇÃO DA WEB SEMÂNTICA NAS REDES SOCIAIS
ESTUDO DE CASOS SOBRE A APLICAÇÃO DA WEB SEMÂNTICA NAS REDES SOCIAIS
ESTUDO DE CASOS SOBRE A APLICAÇÃO DA WEB SEMÂNTICA NAS REDES SOCIAIS
ESTUDO DE CASOS SOBRE A APLICAÇÃO DA WEB SEMÂNTICA NAS REDES SOCIAIS
ESTUDO DE CASOS SOBRE A APLICAÇÃO DA WEB SEMÂNTICA NAS REDES SOCIAIS
ESTUDO DE CASOS SOBRE A APLICAÇÃO DA WEB SEMÂNTICA NAS REDES SOCIAIS
ESTUDO DE CASOS SOBRE A APLICAÇÃO DA WEB SEMÂNTICA NAS REDES SOCIAIS
ESTUDO DE CASOS SOBRE A APLICAÇÃO DA WEB SEMÂNTICA NAS REDES SOCIAIS
ESTUDO DE CASOS SOBRE A APLICAÇÃO DA WEB SEMÂNTICA NAS REDES SOCIAIS
ESTUDO DE CASOS SOBRE A APLICAÇÃO DA WEB SEMÂNTICA NAS REDES SOCIAIS
ESTUDO DE CASOS SOBRE A APLICAÇÃO DA WEB SEMÂNTICA NAS REDES SOCIAIS
ESTUDO DE CASOS SOBRE A APLICAÇÃO DA WEB SEMÂNTICA NAS REDES SOCIAIS
ESTUDO DE CASOS SOBRE A APLICAÇÃO DA WEB SEMÂNTICA NAS REDES SOCIAIS
ESTUDO DE CASOS SOBRE A APLICAÇÃO DA WEB SEMÂNTICA NAS REDES SOCIAIS
ESTUDO DE CASOS SOBRE A APLICAÇÃO DA WEB SEMÂNTICA NAS REDES SOCIAIS
ESTUDO DE CASOS SOBRE A APLICAÇÃO DA WEB SEMÂNTICA NAS REDES SOCIAIS
ESTUDO DE CASOS SOBRE A APLICAÇÃO DA WEB SEMÂNTICA NAS REDES SOCIAIS
ESTUDO DE CASOS SOBRE A APLICAÇÃO DA WEB SEMÂNTICA NAS REDES SOCIAIS
ESTUDO DE CASOS SOBRE A APLICAÇÃO DA WEB SEMÂNTICA NAS REDES SOCIAIS
ESTUDO DE CASOS SOBRE A APLICAÇÃO DA WEB SEMÂNTICA NAS REDES SOCIAIS
ESTUDO DE CASOS SOBRE A APLICAÇÃO DA WEB SEMÂNTICA NAS REDES SOCIAIS
ESTUDO DE CASOS SOBRE A APLICAÇÃO DA WEB SEMÂNTICA NAS REDES SOCIAIS
ESTUDO DE CASOS SOBRE A APLICAÇÃO DA WEB SEMÂNTICA NAS REDES SOCIAIS
ESTUDO DE CASOS SOBRE A APLICAÇÃO DA WEB SEMÂNTICA NAS REDES SOCIAIS
ESTUDO DE CASOS SOBRE A APLICAÇÃO DA WEB SEMÂNTICA NAS REDES SOCIAIS
ESTUDO DE CASOS SOBRE A APLICAÇÃO DA WEB SEMÂNTICA NAS REDES SOCIAIS
ESTUDO DE CASOS SOBRE A APLICAÇÃO DA WEB SEMÂNTICA NAS REDES SOCIAIS
ESTUDO DE CASOS SOBRE A APLICAÇÃO DA WEB SEMÂNTICA NAS REDES SOCIAIS
ESTUDO DE CASOS SOBRE A APLICAÇÃO DA WEB SEMÂNTICA NAS REDES SOCIAIS
ESTUDO DE CASOS SOBRE A APLICAÇÃO DA WEB SEMÂNTICA NAS REDES SOCIAIS
ESTUDO DE CASOS SOBRE A APLICAÇÃO DA WEB SEMÂNTICA NAS REDES SOCIAIS
ESTUDO DE CASOS SOBRE A APLICAÇÃO DA WEB SEMÂNTICA NAS REDES SOCIAIS
ESTUDO DE CASOS SOBRE A APLICAÇÃO DA WEB SEMÂNTICA NAS REDES SOCIAIS
Upcoming SlideShare
Loading in...5
×

ESTUDO DE CASOS SOBRE A APLICAÇÃO DA WEB SEMÂNTICA NAS REDES SOCIAIS

8,688

Published on

A Web encontra-se abarrotada de documentos e continua a aumentar de forma exponencial. Esse quadro tem se agravado desde o surgimento da Web 2.0, onde muitos usuários tornaram-se publicadores de conteúdo, levando ao caos os sistemas de buscas. A ineficiência nos sistemas de buscas ocorre porque o conteúdo das páginas não é descrito semanticamente. A solução para este problema está nos padrões e tecnologias da Web Semântica, que possibilitam a marcação do conteúdo. O objetivo deste Trabalho é realizar um estudo de caso sobre a aplicação da Web Semântica nas redes sociais.

Published in: Technology
0 Comments
5 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
8,688
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
230
Comments
0
Likes
5
Embeds 0
No embeds

No notes for slide

ESTUDO DE CASOS SOBRE A APLICAÇÃO DA WEB SEMÂNTICA NAS REDES SOCIAIS

  1. 1. FACULDADE DE TECNOLOGIA DE SÃO JOSÉ DOS CAMPOS PERPÉTUO RODRIGUES PEIXINHO ESTUDO DE CASOS SOBRE A APLICAÇÃO DA WEB SEMÂNTICA NAS REDES SOCIAIS SÃO JOSÉ DOS CAMPOS 2010
  2. 2. II PERPÉTUO RODRIGUES PEIXINHO ESTUDO DE CASOS SOBRE A APLICAÇÃO DA WEB SEMÂNTICA NAS REDES SOCIAIS Trabalho de graduação apresentado à Fatec de São José dos Campos, como parte dos requisitos necessários para a obtenção do título de Tecnólogo em Banco de Dados Orientador: Giuliano Araujo Bertoti, Me SÃO JOSÉ DOS CAMPOS 2010
  3. 3. III PERPÉTUO RODRIGUES PEIXINHO ESTUDO DE CASOS SOBRE A APLICAÇÃO DA WEB SEMÂNTICA NAS REDES SOCIAIS Trabalho de graduação apresentado à Fatec de São José dos Campos, como parte dos requisitos necessários para a obtenção do título de Tecnólogo em Banco de Dados Orientador: Giuliano Araujo Bertoti, Me Adriana da Silva Jacinto, Me Érica Ferreira de Souza, Me Giuliano Araujo Bertoti, Me --/--/-- DATA DE APROVAÇÃO
  4. 4. IV Dedico este trabalho às pessoas que me apoiaram e me derem condições de galgar êxito na sociedade letrada, Fernando Ferri, Mônica Ferri e família. A minha mãe, aos professores, professoras e amigos que muito contribuíram para a minha formação, dos quais tenho boas lembranças.
  5. 5. V AGRADECIMENTOS Eu tenho muito que agradecer, a começar pelo fato de estar vivo, e de poder compartilhar este trabalho com outros seres, iguais a mim, que gostam de se apoderarem dos conhecimentos herdados de nossos antepassados. Eles são meus heróis e merecem meus agradecimentos, todos eles, aos seres humanos que viveram antes de mim, o meu muito obrigado! Aos que participaram de minha vida, de forma direta, quero agradecer muito a minha mãe, que nas horas difíceis, manteve firmemente a vontade de escolarizar os filhos. Quero muito agradecer também aos meus amigos e conselheiros Fernando Ferri, Mônica Ferri e família que, em todos os momentos, estiveram ao meu lado apoiando e incentivando para que eu pudesse concluir essa jornada. Ao professor Giuliano Araujo Bertoti, por ter dedicado seu precioso tempo e acreditado no sucesso desse projeto. Obrigado a todos!
  6. 6. VI "Tecnologia é a habilidade de organizar o mundo De forma que não tenhamos que senti-lo." (Max Frisch)
  7. 7. VII RESUMO A Web encontra-se abarrotada de documentos e continua a aumentar de forma exponencial. Esse quadro tem se agravado desde o surgimento da Web 2.0, onde muitos usuários tornaram- se publicadores de conteúdo, levando ao caos os sistemas de buscas. A ineficiência nos sistemas de buscas ocorre porque o conteúdo das páginas não é descrito semanticamente. A solução para este problema está nos padrões e tecnologias da Web Semântica, que possibilitam a marcação do conteúdo. O objetivo deste Trabalho é realizar um estudo de caso sobre a aplicação da Web Semântica nas redes sociais. Palavras-chave: Web Semântica, Redes Sociais, RDF.
  8. 8. VIII ABSTRACT The Web meets overloaded of documents and it continues to increase exponentially. This environment has been aggravated since the beginning of Web 2.0, where each simple user became a content generator, leading to the chaos the systems of web searches. The inefficiency in the systems of web searches occurs because the content of the pages is not described semantically. The solution for this problem lives in the semantics Web, making possible the marking of the content. The aim of this work is to carry through a study case on the application of the Semantics Web in the social nets works. Keywords: semantic web, social networks, RDF.
  9. 9. IX SUMÁRIO 1 INTRODUÇÃO .............................................................................................................. 16 1.1 Motivação ..................................................................................................................... 16 1.2 Objetivos....................................................................................................................... 17 1.2.1 Objetivo Geral ...................................................................................................... 17 1.2.2 Objetivos Específicos ........................................................................................... 18 1.3 Metodologia .................................................................................................................. 18 1.4 Organização do Trabalho.............................................................................................. 19 2 WEB SEMÂNTICA: TECNOLOGIAS, APLICAÇÕES E FERRAMENTAS ....... 20 2.1 Web Semântica ............................................................................................................. 20 2.2 Padrões da Web Semântica .......................................................................................... 22 2.2.1 RDF ...................................................................................................................... 25 2.2.2 RDFa (Resource Description Framework in attributes) ....................................... 30 2.2.3 SPARQL ............................................................................................................... 33 2.3 Aplicações da Web Semântica ..................................................................................... 35 2.3.1 Busca Semântica ................................................................................................... 35 2.3.1.1 Rich Snippets ................................................................................................ 37 2.3.1.2 Search Monkey Yahoo ................................................................................. 38 2.3.1.3 Wiki Semântica ............................................................................................ 38 2.3.1.4 Conhecimento Global Engenharia ................................................................ 39 2.3.1.5 A música do amigo de um amigo ................................................................. 39 2.3.1.6 DBPedia ........................................................................................................ 39 2.4 Considerações Finais .................................................................................................... 40 3 REDES SOCIAIS ........................................................................................................... 41 3.1 Introdução ..................................................................................................................... 41 3.2 Blog .............................................................................................................................. 44 3.2.1 Wordpress ............................................................................................................. 46 3.3 Considerações Finais .................................................................................................... 48 4 AVALIAÇÃO DE TECNOLOGIAS E PADRÕES DA WEB SEMÂNTICA .......... 49 4.1 Vocabulários ................................................................................................................. 49
  10. 10. X 4.1.1 FOAF .................................................................................................................... 51 4.1.2 Dublin Core .......................................................................................................... 54 4.1.3 Creative Commons ............................................................................................... 58 4.2 Edição de Conteúdo ...................................................................................................... 60 4.2.1 Wp-RDFa ............................................................................................................. 60 4.2.2 Image Licenser ..................................................................................................... 61 4.3 Busca Semântica ........................................................................................................... 61 4.3.1 Backplanejs ........................................................................................................... 61 4.4 Considerações Finais .................................................................................................... 62 5 ESTUDO DE CASOS ..................................................................................................... 63 5.1 Otimização de Sistemas de Busca ................................................................................ 63 5.1.1 Análise de Tecnologias ......................................................................................... 65 5.1.2 Arquitetura ............................................................................................................ 65 5.1.3 Implementação...................................................................................................... 67 5.1.4 Resultado .............................................................................................................. 68 5.2 Licença de Imagens em Blogs e outras Redes .............................................................. 73 5.2.1 Análise de Tecnologias ......................................................................................... 73 5.2.2 Arquitetura ............................................................................................................ 74 5.2.3 Implementação...................................................................................................... 76 5.2.4 Resultados............................................................................................................. 81 5.3 Rede Social para Compartilhamento de Slides............................................................. 83 5.3.1 Análise de Tecnologias ......................................................................................... 85 5.3.2 Arquitetura ............................................................................................................ 85 5.3.3 Implementação...................................................................................................... 87 5.3.4 Resultados............................................................................................................. 88 6 CONSIDERAÇÕES FINAIS ......................................................................................... 92 6.1 Contribuições e Conclusões.......................................................................................... 92 6.2 Trabalhos Futuros ......................................................................................................... 93 REFERÊNCIAS BIBLIOGRÁFICAS ..................................................................... 94
  11. 11. XI LISTA DE FIGURAS Figura 1 - Arquitetura proposta para a Web Semântica. .......................................................... 23 Figura 2 - Um Grafo RDF descrevendo Eric Miller................................................................. 26 Figura 3 - mostra que o RDF usa URIs para identificar. .......................................................... 27 Figura 4 - mostra a estrutura subjacente de uma expressão RDF. ............................................ 28 Figura 5 - RDF sendo representado com um nó em branco. .................................................... 29 Figura 6 - Exemplo de marcação do site Amazon. ................................................................... 31 Figura 7 - Codificação da resenha em HTML. ......................................................................... 32 Figura 8 - Exemplo de marcação RDFa em notação padrão XML. ......................................... 32 Figura 9 - Dado. ........................................................................................................................ 34 Figura 10 - Consulta. ................................................................................................................ 34 Figura 11 - Resultado. .............................................................................................................. 34 Figura 12 - Representa a indexação de documentos na Web Semântica.................................. 36 Figura 13 - Representação de uma rede social. ........................................................................ 42 Figura 14 - Redes sociais por continentes. ............................................................................... 43 Figura 15 - Redes sociais por países. ........................................................................................ 44 Figura 16 - Perspectiva para adição de novos posts do Wordpress. ......................................... 47 Figura 17 - Perspectiva para adição de novos plugins do Wordpress. ..................................... 47 Figura 18 - Vocabulários semânticos. ...................................................................................... 50 Figura 19 - Ilustração de funcionamento do vocabulário FOAF. ............................................. 52 Figura 20 - Elementos FOAF em meio ao HTML. .................................................................. 53 Figura 21 - Crescimento da web, dados de Setembro de 1995 a Junho de 2008. .................... 55 Figura 22 - Arquitetura do DC (Dublin Core). ......................................................................... 56 Figura 23 - Exemplo simples de Dublin Core. ......................................................................... 57 Figura 24 - Exemplo de código RDFa Creative Commons. ..................................................... 60
  12. 12. XII Figura 25 - Código para referenciar a biblioteca Backplanejs. ................................................ 62 Figura 26 - Exemplo de busca com tags no Google. ................................................................ 64 Figura 27 - Arquitetura do estudo de caso do blog Wordpress. ............................................... 66 Figura 28 - Código da página do Blog Wordpress com RDFa. ................................................ 67 Figura 29 - Exemplo de busca semântica no blog Wordpress. ................................................. 69 Figura 30 - Exemplo de busca pelo título do post no blog Wordpress. .................................... 70 Figura 31 - Exemplo de busca da data do post no blog Wordpress.......................................... 71 Figura 32 - Exemplo de busca do plugin wp-RDFa no blog Wordpress. ................................. 71 Figura 33 - Código gerado incompleto pelo plugin wp-RDFa no blog Wordpress. ................ 72 Figura 34. Formação correta, um verbo para cada objeto. ....................................................... 72 Figura 35 - Código corrigido manualmente. ............................................................................ 72 Figura 36 - Arquitetura do estudo de caso do Creative Commons........................................... 75 Figura 37 - Painel de controle do Wordpress. .......................................................................... 76 Figura 38 - Painel de controle do Wordpress ........................................................................... 77 Figura 39 - Formulário do site da Creative Commons. ............................................................ 78 Figura 40 - Formulário do site da Creative Commons. ............................................................ 79 Figura 41 - Formulário para inserir imagens. ........................................................................... 80 Figura 42 - Espaço indicado para a inserção de código fonte. ................................................. 81 Figura 43 - Figura licenciada pela Creative Commons. ........................................................... 82 Figura 44 - Query responsável pela identificação da imagem do blog. ................................... 83 Figura 45 - Busca realizada pelo site do Slideshare. ................................................................ 84 Figura 46 - Arquitetura do estudo de caso do Slideshare. ........................................................ 86 Figura 47 - Script da biblioteca Backplanejs e a chamada CSS na página. ............................. 87 Figura 48 - Código de busca SPARQL. ................................................................................... 88 Figura 49 - Resultado da busca no site Slideshare. .................................................................. 89 Figura 50 - Código da página do Slideshare. ........................................................................... 90
  13. 13. XIII Figura 51 - Modelo de tripla RDF. ........................................................................................... 90 Figura 52 - Modelo de tripla RDF incompleta. ........................................................................ 90
  14. 14. XIV LISTA DE TABELAS Tabela 1 - Ranking das redes sociais mais acessadas no mundo.............................................. 45 Tabela 2 - Representação das licenças Creative Commons. .................................................... 59
  15. 15. XV LISTA DE ABREVIATURAS E SIGLAS AJAX: Asynchronous Javascript And XML CSS: Cascading Style Sheets DC: Dublin Core DOAP: Description of a Project DAWG: Data Access Working Group DLG: Directed Labeled Graphs EARL: Evaluation and Report Language FOAF: Friend of a friend GPL: Geral Pública Licença GUI: Interface gráfica de usuário HTML: Hiper Text Markup Language ISBN: National Standard Book Number IBM: International Business Machines NCSA: National Center for Supercomputing Aplications OCLC: Online Computer Library Center OWL: Online Web Learning RDF: Resource Description Framework RDFa: Resource Description Framework in attributes RSS: Really Simple Syndication SIOC: Semantically-Interlinked Online Communities SPARQL: Sparql Protocol and RDF Query Language SKOS: Simple Knowledge Organization System URI: Uniform Resource Identifier URL: Uniform Resource Locator URN: Uniform Resource Name XML: Extensible Markup Language XHTML: Extensible Hypertext Markup Language W3C: World Wide Web Consortium WWW: World Wide Web
  16. 16. 16 1 INTRODUÇÃO 1.1 Motivação Publicar informações na web nunca foi tão fácil (Wordpress, 2010). Com a proliferação de sistemas de gerenciamento de conteúdo (Gomes, 2005), plataformas online de blogs, microblogging e outros tornaram-se possível para qualquer indivíduo, pequenas empresas, organizações de qualquer natureza tornar-se uma parte da web . Essa popularização ocasionou num crescimento exponencial da web dificultando a indexação das informações. A indexação não é possível por meio do uso da linguagem de marcação (Hiper Text Markup Language) HTML, que ficou popular nos anos 90 e ainda é utilizada pela maioria dos sites, mesmo não possuindo recursos que lhe permita atribuir significado à informação (Baeza, 1999). Essa limitação por parte das páginas HTML traz um grande problema, devido à inexistência de marcações semântica nas atuais páginas, fazendo com que as mesmas sejam entendidas apenas pelos humanos e não fazendo sentido para os programas de computador que ainda estão muito distantes de imitar o funcionamento da mente humana (Berners-Lee, 2001). Você em algum momento abriu a página da Google, digitou uma palavra-chave e obteve como conteúdo exatamente aquilo de que procurava? Certamente não. Pois é, essa é a realidade da web hoje. O cenário a seguir exemplifica muito bem a dificuldade que temos para encontrar a informação desejada. Imagine que você esteja buscando informações sobre metrópoles brasileiras na Internet. Entre com a palavra "metrópoles" num programa de busca e virão respostas tão variadas quanto a revista Metrópoles, a rádio Metrópoles, o shopping Metrópoles, sobre pesquisa e políticas de migração e cidades entre outras. Isto porque os programas não distinguem o significado do filme e da revista ou do centro de pesquisas. É claro que você pode (aliás, deve) combinar ―metrópoles‖ com outras palavras-chave, acrescentando ou excluindo termos que permitam refinar a busca, preferencialmente indicando também outros parâmetros, como data, língua ou domínio, que muitos programas aceitam na função de "busca avançada". Ainda assim, o resultado é muitas vezes desolador. São dezenas (às vezes milhares) de páginas que não interessam, tornando difícil a tarefa de encontrar a informação desejada. A Web Semântica é uma tentativa de solução para esse problema (Berners-Lee, 2001). Em vez de pensar na informação para os humanos, a ideia é pensar na máquina (programa de
  17. 17. 17 computador). Esta é a definição de Web Semântica, segundo o "pai da Web", Tim Berners- Lee, um dos comandantes desse projeto. A Web Semântica objetiva dar uma estrutura aos conteúdos das páginas web, criando um ambiente onde agentes de softwares perambulam pelas páginas para desempenhar tarefas sofisticadas requisitadas pelos usuários. Entre estas tarefas, está a busca contextualizada da informação (Berners-Lee, 2001). A proposta não é a de uma web separada da atual, mas uma extensão da mesma, baseada em documentos, descrevendo relacionamentos entre objetos e contendo informação semântica dos mesmos para automatizar o processamento pelas máquinas (Berners-Lee, 2001). Na web há uma quantidade imensa de informações não pertinentes que é fornecida pelos processos de busca. As ferramentas de busca enfrentam a dificuldade de executar pesquisas entre documentos que não estão diferenciados em termos de assunto, qualidade e relevância. A tecnologia atual não é capaz de diferenciar uma informação comercial de uma educacional, ou informação entre idiomas, culturas e mídia. É necessário haver informações de qualificação da própria informação, chamada de metadados, para ser possível classificá-las e tornar os processos de buscas mais eficazes. Imagine você, se tivesse uma web que permitisse buscar por todos os jogadores Rugby que vivem em São José dos Campos ou nome de todos os hotéis das cidades do estado de São Paulo situadas em altitudes inferiores a 1000 metros e obter uma resposta exata. Pois é, essa é a proposta da Web Semântica que promete revolucionar o sistema de busca na web. 1.2 Objetivos As seções a seguir apresentarão os objetivos deste Trabalho. 1.2.1 Objetivo Geral O objetivo deste Trabalho é apresentar um estudo de caso sobre a aplicação da Web Semântica nas redes sociais.
  18. 18. 18 1.2.2 Objetivos Específicos A seguir são apresentados os objetivos específicos deste Trabalho: a) avaliar vocabulários de web semântica; b) avaliar ferramentas de busca semântica; c) avaliar ferramentas de conteúdo semântico; d) desenvolver um estudo de caso para a otimização de sistemas de busca; e) desenvolver um estudo de caso em blogs e outras redes; f) desenvolver busca semântica na rede para a rede social de compartilhamento de slides. 1.3 Metodologia No âmbito dos testes realizados serão implementados exemplos reais a partir de marcações semânticas inseridas pelos plugins semânticos. Esses plugins foram desenvolvidos com o intuito de proporcionar funcionalidades a blogs, microbloggins e outros. Neste estudo será utilizado o blog Wordpress versão 2.9.2, que já dispõe de um plugin semântico, o wp-RDFa. Após a configuração do blog Wordpress e a integração do plugin wp- RDFa os testes serão realizados a partir de conteúdos postados. Nesse conteúdo postado, automaticamente é gerado a marcação semântica, e através dessa marcação serão feitas buscas semânticas. Busca semântica é o principal foco dos estudos de casos do Capítulo 5. Neste Capítulo será implementado um exemplo real de busca sintática contrastando com um exemplo de busca semântica. Já o segundo estudo mostrou, através de implementações, que é possível trazer numa busca a imagens, apenas as que estiverem sob a licença Creative Commons. E por fim, no terceiro estudo foi implementado mais um exemplo real de busca a material no Slideshare (site que tem o objetivo de compartilhar arquivos de apresentações PowerPoint e Open Office com no máximo 20MB), que já dispõe de marcação semântica.
  19. 19. 19 1.4 Organização do Trabalho O Trabalho está organizado em 6 Capítulos: a) o Capítulo 2 apresenta os conceitos relativos a ferramentas, tecnologias e aplicações da web semântica; b) o Capítulo 3 apresenta o conceito de redes sociais e apresentará algumas das principais ferramentas utilizadas atualmente pelos internautas nos seus relatos e exposições; c) no Capítulo 4 serão apresentados os vocabulários referentes as tecnologias utilizadas nos estudos de casos; d) no Capítulo 5 serão apresentados os blogs como sistemas de recomendação; e) e por fim, no Capítulo 6, serão apresentadas as considerações finais.
  20. 20. 20 2 WEB SEMÂNTICA: TECNOLOGIAS, APLICAÇÕES E FERRAMENTAS O objetivo deste Capítulo é apresentar conceitos sobre as ferramentas, tecnologias e aplicações da Web Semântica. Este Capítulo está organizado como segue: a Seção 2.1 apresenta a Web Semântica como a tecnologia que mudará o conceito de web sintática para semântica. Na sequência a Seção 2.2 que faz um breve relato de algumas das aplicações existentes e a 2.2.1 mostra as possibilidades quando se utiliza o serviço de busca inteligente. 2.1 Web Semântica Web Semântica é um projeto, dirigido pelo World Wide Web Consortium (W3C), que pretende embutir inteligência e contexto nos códigos Extensible Markup Language (XML) utilizados para confecção de páginas web, de modo a melhorar a forma com que programas podem interagir com estas páginas e também possibilitar um uso mais intuitivo por parte dos usuários (Decker, 2000). Desde seus primórdios o projeto Web Semântica foi concebido como um conjunto de tecnologias relacionadas, de modo que, no ano de 2000, o W3C, tendo como seu maior expoente Berners-Lee, divulgou publicamente a primeira proposta de arquitetura da Web Semântica. Com base em uma série de camadas sobrepostas, onde cada camada ou tecnologia deveria obrigatoriamente ser complementar e compatível com as camadas inferiores (W3C, 2010). E ao mesmo tempo em que não deveria depender das camadas superiores, a estrutura idealmente escalonável indicaria os passos e as tecnologias necessárias para a concretização do projeto Web Semântica. Segundo Bernes-Lee (1999), o primeiro passo para o desenvolvimento da Web Semântica seria a inclusão de dados em um formato que os sistemas computacionais pudessem naturalmente compreender de forma direta ou indireta. Após a publicação desta definição, em seu livro ―Weaving the web”, a expressão ―Web Semântica‖ passou a ser disseminada como um título genérico que representa uma série de pesquisas que têm como objetivo principal possibilitar um melhor aproveitamento das potencialidades do ambiente web, onde por meio
  21. 21. 21 do uso intensivo de linguagens computacionais e instrumentos de metadados espera-se obter o acesso automatizado às informações de maneira mais precisa a partir da utilização de processamentos semânticos e heurísticas automáticas. Conforme afirmou Berners-Lee (2001), ―A Web Semântica é uma extensão da web atual, onde a informação possui um significado claro e bem definido, o que possibilita uma melhor interação entre máquinas e pessoas‖. Assim, observa-se que comparando com as abordagens tradicionalmente desenvolvidas, o projeto Web Semântica constitui-se como uma tentativa inversa de solução, ou seja, em vez de focar o humano as atenções se voltam para as máquinas, dando lhes inteligência através de marcações semântica com o objetivo de desenvolver meios para que as máquinas possam servir aos humanos de maneira mais eficiente. No entanto, para isso tornar-se uma realidade é necessário construir instrumentos que forneçam sentido lógico e semântico aos computadores. Para um melhor entendimento das dificuldades encontradas nos processos de recuperação de informações na web atual, pode-se analisar o resultado de uma busca realizada por meio dos tradicionais ―motores de busca‖ como, por exemplo, a busca de textos científicos de um determinado autor. Utilizando-se, ―Samuel Pinto‖ como expressão de busca ter-se-ia como resultado todos os tipos de documentos que contenham ―Samuel Pinto‖ em alguma parte de seu conteúdo. Caso esta mesma busca seja realizada utilizando-se apenas o sobrenome deste autor o problema se agravaria ainda mais, pois ―Pinto‖ pode igualmente se referir ao sobrenome de uma pessoa, como também a uma ave da espécie ―Gallus gallus domesticus” pois a Web atual não fornece condições que possibilitem distinguir entre os vários significados semânticos que um termo pode comportar, o que favorece a recuperação de uma grande quantidade de documentos irrelevantes ou não relacionados com a busca realizada, tornando algumas vezes, inexequível, a tarefa de localizar informações específicas no ambiente Web . Segundo Koivunen e Miller (2001), um dos princípios fundamentais do projeto Web Semântica é o fato de que “tudo” pode ser identificado por um Uniform Resource Identifier (URI), de modo que pessoas, lugares e elementos do mundo físico possam ser referenciados a partir de tais identificadores. Possibilitando assim identificar uma instituição a partir do URI de sua página web, por exemplo, ou uma pessoa por meio do URI de sua caixa de e-mail. Conforme afirmam Berners-Lee (1994) e Fielding (1995), um URI é um padrão conjunto que abarca os conceitos de Uniform Resource Locator (URL) e do Uniform Resource Name
  22. 22. 22 (URN), de modo que pode ser representado por qualquer um destes, ou por ambos. Fazendo uma analogia de um recurso disponível no ambiente web com um livro armazenado em uma biblioteca, pode-se considerar o URN de um recurso como o número ISBN de um livro, os quais fornecem uma identificação exclusiva, porém não oferecendo informações a respeito de onde o livro/recurso pode ser obtido. Do mesmo modo, pode-se considerar que o código que identifica onde um livro está localizado, em meio ao acervo de uma biblioteca, desempenha a mesma função do URL de um recurso no ambiente web, indicando o local onde o livro/recurso pode ser obtido. Segundo Krishnamurthy e Rexford (2001), o modo mais popular de apresentação de um URI é utilizando um URL, o qual pode ser considerado como uma cadeia de caracteres formada por componentes padronizados. Outra característica importante do projeto Web Semântica é que os links podem possuir diferentes tipos, possibilitando a definição de conceitos úteis para as máquinas, como por exemplo, indicando que um recurso é uma versão de outro recurso ou que contém informações a respeito de uma determinada pessoa. A web sintática também consiste de recursos e links, porém estes links são criados apenas para o entendimento humano, de modo que é relativamente simples para um humano identificá-lo, quando contido em um determinado recurso, referenciando uma fatura, um romance ou um trabalho científico. Contudo, tais informações não estão acessíveis para as máquinas, pois os links da web sintática não indicam formalmente quais são os tipos de relações existentes entre os recursos referenciados. 2.2 Padrões da Web Semântica Para que fosse possível construir aplicações envolvendo Web Semântica, Berners-Lee (2001) propôs uma arquitetura em camadas, que está representada na Figura 1. Esta arquitetura, em suas camadas, define as tecnologias necessárias para que os conteúdos das páginas Web possam ser compreendidos pelos computadores.
  23. 23. 23 Figura 1 - Arquitetura proposta para a Web Semântica 2001. Fonte: imagem extraída do site Semantic Focus, 2001. Baseando-se na proposta de arquitetura apresentada acima, foi descrito de maneira sucinta as principais tecnologias e camadas inerentes ao projeto Web Semântica. a) URI / IRI: Conforme apresentado anteriormente, tal componente consiste de um identificador único de recursos que possibilita a definição e adoção, de maneira precisa, de nomes aos recursos e seus respectivos endereços na Internet; b) XML: É uma linguagem computacional que possibilita a estruturação dos dados por meio da definição de elementos e atributos, e que permite capturar a estrutura da informação. Além de permitir a criação de novas tags para atender aplicações específicas;
  24. 24. 24 c) RDF: Estende a ligação da estrutura da Web para usar URIs para nomear a relação entre as coisas, bem como as duas extremidades do link (isto é normalmente referido como um ―triplo‖). Usando este modelo simples, ele permite que dados estruturados e semi-estruturados para serem misturados, expostos e compartilhados entre aplicações diferentes; d) RDF Schema: Utilizada para a descrição do vocabulário RDF, possibilita a definição de taxonomias de recursos em termos de uma hierarquia de classes. A RDF Schema é uma extensão semântica do código RDF, que fornece mecanismos para descrever grupos de recursos e os relacionamentos existentes entre eles (Brickley, 2004); e) OWL: Linguagem computacional recomendada pelo W3C para o desenvolvimento de ontologias (modelo de dados que representa um conjunto de conceitos dentro de um domínio e os relacionamentos entre eles). A linguagem OWL permite descrever formalmente, de modo mais eficiente, os aspectos semânticos dos termos utilizados e seus respectivos relacionamentos, possibilitando representações mais abrangentes das linguagens RDF e RDF Schema e favorecendo uma maior interoperabilidade (McGuinness, 2004); f) Sparql: É uma linguagem computacional utilizada para realizar consultas a partir de estruturas RDF, favorecendo a recuperação de informações de maneira mais eficaz (Seaborne, 2005); g) Rules: Permite a definição de regras lógicas relacionadas aos recursos informacionais. Rules é uma camada que possibilita uma espécie de ―Introdução Lógica‖, enquanto que a camada superior, Logic Framework, possibilita a incorporação de ―Lógicas Avançadas‖ (Daconta, 2003); h) Unifying Logic: Camada para a definição de regras mais abrangentes, utilizadas no tratamento das informações descritas nos níveis inferiores, possibilitando que agentes computacionais possam realizar inferências automáticas a partir das relações existentes entre os recursos informacionais, podendo inclusive inferir novas informações; i) Proof: Espera-se que esta camada possibilite a verificação/comprovação da coerência lógica dos recursos, de modo que os aspectos semânticos das informações estejam descritos de maneira consideravelmente adequada, atendendo a todos os requisitos das camadas inferiores;
  25. 25. 25 j) Crypto: Consiste de um processo em que as informações são cifradas de modo que não possam ser interpretadas por qualquer pessoa ou sistema computacional, garantindo assim a confidencialidade das informações; Encryption é o processo de disfarçar a mensagem original de tal modo que sua substância é escondida em uma mensagem com texto cifrado (Nakamura e Geus, 2003); k) Trust: Camada de confiança, a partir da qual espera-se garantir que as informações estejam representadas de modo correto, possibilitando certo grau de confiabilidade; l) User interface & Applications: Personalização da interface do usuário em suas aplicações, modelando as preferências, necessidades e interesses de cada usuário. Gerenciamento de conteúdo, interfaces colaborativas, comunicação entre comunidades virtuais e outros. 2.2.1 RDF Segundo (Brickley, 2004), o Resource Description Framework (RDF) é uma linguagem para representar informação sobre recursos no world wide web . Destina-se particularmente para representar metadados sobre recursos da web, como o título, autor e data de modificação de uma página web, direitos autorais e licenciamento de informações sobre um documento da web, ou o calendário de disponibilidade de algum recurso compartilhado. No entanto, ao generalizar o conceito de um recurso da web, RDF também pode ser usado para representar informações sobre coisas que podem ser identificadas na web, mesmo quando elas não podem ser recuperadas diretamente na web. Exemplos incluem informações sobre os itens disponíveis em estabelecimentos comerciais on-line (por exemplo, informações sobre as especificações, preços e disponibilidade), ou a descrição das preferências de um usuário da web para entrega de informações. RDF destina-se a situações em que informações precisam ser processadas por aplicativos, em vez de ser exibido apenas para as pessoas (Brickley, 2004). RDF é baseado na ideia de identificar coisas usando identificadores da web (chamado de uniform resource identifier, ou URIs), e descrever recursos em termos de propriedades simples e valores de propriedade. Isso permite RDF para representar declarações simples sobre recursos como um gráfico de nós e arcos que representam os recursos e as suas
  26. 26. 26 propriedades e valores. Para tornar essa discussão um pouco mais concreta, o grupo de instruções "existe uma pessoa identificada por http://www.w3.org/People/EM/contact # me, cujo nome é Eric Miller, cujo endereço de e-mail é em@W3.org, e cujo título é doutor‖ poderia ser representado como o gráfico RDF na Figura 2: Figura 2 - Um Grafo RDF descrevendo Eric Miller Fonte: Imagem extraída do site da Tecweb, 2010. Como mostrou o grafo da Figura 2, as especificações RDF fornecem um sistema de ontologia simples, tem aplicação universal e apoia o intercâmbio de conhecimentos na web. Qualquer coisa com identidade pode ser descrito em RDF e, dessa forma, RDF é um bom candidato para a gravação e partilha de conhecimento na web. Com RDF é possível fazer declarações sobre os recursos em termos de propriedade e valores de propriedade. A seguir, na Figura 3, será mostrado o código referente ao grafo da Figura 2 codificado.
  27. 27. 27 Figura 3 - RDF usa URIs para identificar. Nos passos a seguir a explicação da Figura 3: a) indivíduos, por exemplo, Eric Miller é identificado por http://WWW.W3.org/People/EM/contact#me; b) tipos de recursos, por exemplo, uma pessoa é identificada por http://WWW.W3.org/2000/10/swap/pim/contact#Person; c) propriedades desses recursos, por exemplo, caixa de correio é identificado por http://WWW.W3.org/2000/10/swap/pim/contact#mailbox; d) valores dessas propriedades, por exemplo, mailto:em@W3.org como o valor da propriedade de caixa (RDF também utiliza cadeias de caracteres como "Eric Miller", e os valores de outros tipos de dados, como números inteiros e datas, como os valores de unidades). Assim como o HTML, o RDF / XML é processável na máquina e, usando URIs, pode-se ligar pedaços de informações na web . No entanto, ao contrário do hipertexto convencional, RDF URIs pode se referir a qualquer coisa identificável, incluindo recursos que não podem ser diretamente recuperáveis na web (como a pessoa Eric Miller). O resultado é que, além de descrever páginas web, RDF também pode descrever automóveis, empresas, pessoas, eventos, notícias, etc. Além disso, as propriedades RDF, próprios URIs, identificam com precisão as relações que existem entre os itens relacionados. A estrutura subjacente de qualquer expressão em RDF é uma coleção de triplas, cada uma composta de um sujeito, um predicado e um objeto (como mostra a Figura 4).
  28. 28. 28 Figura 4 - mostra a estrutura subjacente de uma expressão RDF. Um conjunto de triplas, como é chamado um grafo RDF, pode ser ilustrado por um nó, em que cada tripla é representada como um nó-arco-nó de ligação (daí o termo "grafo"). Uma representação familiar de tal fato pode ser como uma linha em uma tabela em um banco de dados relacional. A tabela tem duas colunas, que correspondem ao sujeito e o objeto da tripla RDF. O nome da tabela corresponde ao predicado da tripla RDF. A representação pode ser mais familiar como um lugar de dois predicados em lógica de primeira ordem. Bancos de dados relacionais permitem uma tabela ter um número arbitrário de colunas, uma linha que expressa a informação correspondente a um predicado com um número arbitrário de lugares. Esse tipo de linha, ou predicado, tem de ser decomposto pela representação como triplas RDF. Uma forma simples de decomposição introduz um novo nó em branco, o que corresponde à linha, e uma nova tripla é introduzida para cada célula da linha. O tema de cada tripla é o novo nó em branco, o predicado corresponde ao nome da coluna, e objeto corresponde ao valor na célula. O novo nó em branco também pode ter uma propriedade RDF: type cujo valor corresponde ao nome da tabela. A seguir na Figura 5, mostra uma representação gráfica de como um RDF é declarado quando há a necessidade de um novo nó em branco.
  29. 29. 29 Figura 5 - RDF sendo representado com um nó em branco. Fonte: Imagem extraída do site da Tecweb, 2010. Provendo a interoperabilidade entre as aplicações, RDF possibilita a automação de processos na Web. O metadado neutro em termos de sintaxe e de domínio de conhecimento é provido pelo RDF, sendo este, responsável pela interoperabilidade estrutural, tendo como ressalvas o não fornecimento de mecanismos para declaração e definição de propriedades e seus relacionamentos (Brickley, et al, 2004). Para a definição de propriedades de domínios específicos e sua semântica é necessária a aplicação do esquema RDF. O esquema RDF é utilizado para identificação de equivalência de significado, já que duas ou mais expressões em RDF são equivalentes se, e somente se, a representação de seus modelos de dados for similar. Essa definição de equivalência permite a variação sintática em algumas expressões sem alterar seu significado. Esse modelo de dados é representado por meio de um Directed Labeled Graphs (DLG) e consiste de três tipos de objetos: a) resource (recurso): tudo que é descrito através de expressões RDF, podendo ser tanto um documento HTML, quanto um elemento XML de um documento; uma coleção de páginas ou um site inteiro. Um recurso pode também ser objeto que não seja acessado diretamente pela web, tal como um livro impresso. Recursos são sempre nomeados por um URI, o que permite a criação de identificadores para qualquer entidade imaginável;
  30. 30. 30 b) property (propriedade): é uma característica, um atributo ou uma relação utilizada para descrever o recurso. Propriedades também são utilizadas para descrever relacionamentos entre recursos. Dessa forma, o modelo de dados RDF se assemelha ao modelo de Entidade-Relacionamento. Cada propriedade tem um significado específico, definem seus valores permitidos, os tipos de recursos que podem descrever, e seus relacionamentos com outras propriedades; c) declaration (valor): uma declaração é um recurso específico com uma propriedade definida mais o valor desta propriedade. Em outras palavras, representa a relação entre um recurso, uma de suas propriedades e o valor que essa propriedade pode assumir. 2.2.2 RDFa (Resource Description Framework in attributes) A web foi construída predominantemente para o consumo humano. Aos poucos começam a aparecer dados legíveis por máquinas na web, que são distribuídos em um arquivo separado, com um formato específico, sendo muito limitada a correspondência entre humanos e as versões de máquinas. Como resultado, os navegadores podem fornecer apenas o atendimento mínimo aos seres humanos na análise e processamento de dados na web: browsers apenas veem as informações de apresentação (Brickley, et al, 2004). Um evento anunciado no Orkut, Facebook ou Twitter pode ser facilmente copiado para o calendário do usuário, informações de contato completo de um artista para o livro de endereços do usuário. Quando os dados na internet são significativos para o ser humano e são aumentados com dicas de significado para os programas de computador, estes programas se tornam muito mais úteis, porque eles começam a compreender a estrutura dos dados. RDFa permite aos atores XHTML (linguagem baseada em XML, que foi projetada para trabalhar em conjunto com os agentes do utilizador baseada em XML) para fazer exatamente isso, pegar dados legíveis para humanos e torna-los legíveis para a máquina. Usando alguns atributos XHTML simples, os atores pegam os dados legíveis para humanos e torna-os legíveis para máquina, através de indicadores de leitura para os navegadores e outros programas interpretarem. Uma página web pode incluir marcação de itens simples como o título de um artigo, ou tão complexo como rede social completa (Brickley, et al, 2004). Imagine que você tem uma resenha de um hotel em sua página no seu HTML, você mostra o nome do hotel, o endereço e telefone e a média de usuários que deram opiniões. As pessoas
  31. 31. 31 podem ler e entender essa informação, mas para um computador isso não é nada, além de sequencias de texto não estruturado. Com RDFa, você pode identificar cada pedaço de texto para deixar claro que ele representa um certo tipo de dado: por exemplo, o nome do hotel, um endereço ou uma classificação. Isto é feito usando-se tags HTML adicionais que os computadores entendem. Estes RDFs não afetam a aparência de suas páginas, mas um serviço de busca que olhar para o HTML pode usar as ―tags‖ para compreender melhor a sua informação, e apresentá-la de forma útil, por exemplo, nos resultados da pesquisa. Na Figura 6 a seguir ver-se um exemplo de aplicação do RDFa no sita da Amazon. Esse tipo de marcação permite aos usuários uma resposta precisa quanto ao que foi especificado na busca. Figura 6 - Exemplo de marcação do site Amazon. Fonte: Imagem extraída do site da Amazon, 2008. A Figura 7 na sequência nos permitirá visualizar um exemplo de como usar tal marcação para gerar esta resenha com a estrutura HTML.
  32. 32. 32 Figura 7 - Codificação da resenha em HTML. Na Figura 8 a seguir, ver-se o mesmo exemplo, porém com uma novidade, a marcação RDFa. Figura 8 - Exemplo de marcação RDFa em notação padrão XML.
  33. 33. 33 Este exemplo mostrou três propriedades importantes que podem ser usadas em todos os Tags do HTML. Como segue: a) xmlns: Especifica o namespace XML para um documento. Estará sempre na primeira linha e tem a função de indicar uma lista de entidades e seus componentes; b) typeof: Ocorre na primeira linha deste bloco do HTML, e define entidades; c) properties: Usado para etiquetar as propriedades de uma entidade. RDFa (vocabulário recomendado pela W3C que agrega um conjunto de extensões ao nível de atributos XHTML para inserir metadados em documentos Web), é o responsável por permitir aos editores construir o seu próprio vocabulário, estender os outros, e evoluir o seu vocabulário com interoperabilidade máxima ao longo do tempo. A estrutura expressa está intimamente ligada aos dados, para que os dados processados possam ser copiados e colados junto com a sua estrutura relevante. 2.2.3 SPARQL SPARQL é uma linguagem de consulta RDF, padronizada pelo RDF Data Access Working Group (DAWG) do World Wide Web Consortium e, em janeiro de 2008 foi oficializada pela W3C. É considerada uma tecnologia chave da Web Semântica (W3C, 2009). SPARQL realiza consultas e consiste em: a) padrão triplo: (objetivo-construído, banco de dados para o armazenamento e recuperação de RDF); b) conjunções: (conectivo lógico que tem o valor verdadeiro se ambos os seus operandos forem verdadeiros, caso contrário, um valor de falso); c) disjunções: (operador lógico que resulta em verdadeiro sempre que um ou mais dos seus operandos são verdadeiros); d) padrão opcional: (tipo de tema de eventos recorrentes ou objetos, por vezes referido como elementos de um conjunto).
  34. 34. 34 A seguir nas Figuras 9, 10 e 11 será visto um exemplo simples de como buscar informações na base de dados RDF utilizando SPARQL: Dado: Figura 9 - Dado. A Figura 9 representa o dado que será buscado pela figura 10. Consulta: Figura 10 - Consulta. A Figura 10 representa o modelo de query que fará a busca pelo título na Figura 9. Resultado: Figura 11 - Resultado. A Figura 11 representa o resultado da consulta montada na Figura 10 sobre o código da Figura 9. O exemplo mostrou uma consulta SPARQL para encontrar o título de um livro sobre a curva de dados fornecidos. A consulta consiste em duas partes: a cláusula select identifica as variáveis que aparecem nos resultados da consulta, e a cláusula where fornece o padrão gráfico de base para o gráfico de dados. O padrão gráfico de base neste exemplo consiste de um padrão único, tripla com uma única variável (? título). Na posição de objeto (W3C, 2009).
  35. 35. 35 2.3 Aplicações da Web Semântica O projeto da Web Semântica é muito ambicioso e permite imaginar soluções tanto na área da saúde, educação como nas relações sociais. A sua meta não é apenas indexar páginas na Web. O texto de Berners-Lee, James Hendler e Ora Lassila, na revista Scientific American de maio/2001, descreve o caso de Pete, um filho que busca na Internet, através de seu agente (um software robô), alternativa para a fisioterapia de sua mãe. Dispondo previamente de uma série de dados de Pete (seu endereço, seus horários, o seguro-saúde de sua mãe, etc.), o agente busca na web as informações relevantes (lista de médicos credenciados, suas agendas, etc.) e, em alguns minutos, oferece uma lista de opções para que ele escolha a que mais lhe convém. Não satisfeito com a primeira lista, Pete pede que o agente refaça a busca de acordo com as restrições por ele estabelecidas. Desta vez, a solução oferecida é satisfatória e com algumas ações simples. Pete muda parte de seus compromissos, obtém a aceitação do agente de Lucy (sua irmã, com quem irá dividir as idas à fisioterapia da mãe) e acerta a agenda (Berners-Lee, et al, 2001). Voltando a realidade da Web hoje, todo esse cenário ainda está relativamente distante. Além disso, as aplicações mais prováveis das ferramentas acima descritas serão o comércio eletrônico e grandes bancos de dados, como os próprios autores ressaltam. Como veremos na Seção 2.3.1, gigantes como Google, Amazon, Yahoo e outras já aderiram, em parte, à Web Semântica. Isso significa que, num futuro próximo, a Web inteligente será uma realidade. Sites não comerciais também se beneficiarão da utilização do XML e do desenvolvimento da Web Semântica, pois seus conteúdos serão indexados mais eficientemente pelos programas de busca e poderão ser mais facilmente convertidos em novos formatos ou ganharem novo visual. 2.3.1 Busca Semântica Esta Seção tem por objetivo fazer uma pequena introdução sobre como funcionam o sistema de busca semântico e exemplificar de maneira geral o seu uso no âmbito prático em áreas diversas.
  36. 36. 36 A ideia da busca semântica tem como objetivo construir um mecanismo de busca que não faça apenas uma simples pesquisa por palavras, mas que reconheça o significado das palavras pesquisadas no contexto desejado. Cada documento sobre a Web Semântica contém um modelo RDF, que pode ser pensado como um discreto banco de dados. Informações em um documento de informação pode fazer referência em outra construção de um modelo RDF maciço que é distribuído através da Internet. Uma vez indexado o documento na web, a Web Semântica busca por índice para este modelo RDF em computadores distribuídos para ajudar a localizar rapidamente o documento que contêm as informações de que necessitam (W3, 2010). Figura 12 - Representa a indexação de documentos na Web Semântica. A Web Semântica é um banco de dados distribuídos massivamente na Internet. Cada documento RDF contém um pequeno pedaço de um modelo RDF muito maior que os formulários da Web Semântica. Os formulários RDF adicionam à Web Semântica, recursos semelhantes aos fornecidos pelos formulários HTML baseadas na web. Este formulário é funcionalmente similar a um formulário HTML via POST, na medida em que fornece ao consumidor a informação, tais como, a URI (o valor de rdf: about) para que os dados possam ser apresentados (semelhante ao atributo action), o método HTTP por força do rdf: declaração do tipo de RF: Container (algo semelhante ao atributo de HTML do método, apenas o método é, neste caso, implicitamente POST), e do tipo de mídia desejada de dados (como o atributo HTML enctype).
  37. 37. 37 Índices de Web Semântica tem o objetivo de facilitar a localização dos documentos com base nas informações que eles contêm. Desde que a informação seja descrita usando vocabulários RDF que tenha significado bem definido para os computadores, bem como para pessoas, as condições de pesquisa podem ser descritas com precisão. A Web Semântica realiza buscas usando estes vocabulários. Ela retorna a localização dos documentos na Web Semântica, onde as informações descritas pela condição de pesquisa existem (W3, 2010). A ideia da busca semântica é que todas as páginas indexadas pelo motor de pesquisa devam utilizar um conjunto de tags especiais, uma espécie de meta-tags. Essas marcas fornecem mais do que palavras-chave e descrições, que relatam o conteúdo e relacionamentos. O XML, por si só, não pode resolver o problema de pesquisa. Não há nenhum significado compreensível para a máquina associados com as tags XML comuns, e como resultado, os motores de buscas tradicionais ficarão confusos com o XML, como estão agora com HTML. No exemplo de uma pesquisa simples pela palavra "Loura", é questionado ao usuário através de critérios da busca ao navegador, o contexto a que a pesquisa deve estar relacionada, no caso se a "Loura" se refere a uma pesquisa pela: cor média entre o dourado e o castanho-claro, a uma mulher de cabelo louro ou a uma cerveja. Dessa forma são exibidos sempre resultados de alta relevância. Por se tratar de uma busca semântica, é necessário que se defina um padrão de busca. Esse padrão fará com que o usuário encontre documentos, pessoas, organizações, resumo de obras literárias etc., que condiz com a sua busca, no entanto, para que isso seja possível a instrução que disparará o agente tem de ser criteriosa. Atualmente existe um grande número de pequenas aplicações que utilizam algumas tecnologias desenvolvidas pela Web Semântica, visto que algumas camadas de infraestrutura da mesma, como: Logic Framework, Rules, Proof, Trust e outras ainda estão em desenvolvimento. Além de aplicações que visam a exploração, a pesquisa das novas tecnologias, já podemos observar que empresas com fins comerciais começam a perceber a real utilidade e benefícios das mesmas, incorporando os padrões consolidados dentro de pequenas soluções seja para uso em produtos comercializados ou para uso interno na própria corporação. Nas seções a seguir alguns exemplos de aplicações práticas das tecnologias da Web Semântica. 2.3.1.1 Rich Snippets
  38. 38. 38 Rich Snippets já é uma novidade do Google na apresentação dos resultados de busca. O objetivo é extrair pelo sistema de busca um resumo sobre do que se trata a página. Para que isso seja possível, o usuário terá que digitar três ou mais termos. Utilizando formatos de marcação em um site, o ―Webmaster‖ define a estrutura de dados do seu site, que é o que o Google utiliza para criar as Rich Snippets. Por enquanto, o Google somente atende as marcações referentes a pessoas e revisões de produtos ou serviços, mas pretende expandir para outras áreas e outros padrões de formatos de marcação (Idg now, 2009). 2.3.1.2 Search Monkey Yahoo O Search Monkey (nova plataforma de pesquisa aberta), trata-se de uma série de APIs que permite você alterar os resultados de busca do próprio Yahoo, usando seus próprios dados e alterando o formato de exibição para o usuário (Yahoo, 2010). Com Search Monkey será possível trazer resumos mais completos nos resultados da pesquisa, com imagens, direções e links para outros conteúdos. É mais ou menos o que se pode fazer com a famosa extensão para o Firefox, o Greasemonkey (extensão para o navegador de web Mozila Firefox, que modifica a exibição das páginas de determinados sites, mudando o layout, adicionando ou retirando botões e formulários e etc). Inclusive o produto se chama ―Search Monkey‖ por causa da extensão. A diferença que as adaptações que você fizer não aparecem somente para você ou para quem instalar sua adaptação, como é o caso do Greasemonkey, e sim para todo mundo. A página de resultados que você programar pode conter muito mais informações que o convencional, de acordo com o contexto e a aplicação que você quer dar. 2.3.1.3 Wiki Semântica Wiki Semântica (Semantic Wiki): Projeto que foi desenvolvido para criar um ambiente no estilo Wikipédia utilizando alguns recursos da Web Semântica para adicionar mais conhecimento agregado ao conteúdo já disponível em forma de texto e hiperlinks. Através de anotações semânticas no conteúdo, metadados são adicionados de maneira formal e segundo
  39. 39. 39 uma ontologia específica, possibilitando que computadores possam entender melhor o conteúdo e oferecer serviços de busca mais precisos no ambiente Wiki. Assim sendo, os conceitos e relações deixam de ser meros strings e hiperlinks, sem distinção do ponto de vista dos computadores e passam a representar tipos bem definidos em uma linguagem processável por máquina (W3C, 2010). 2.3.1.4 Conhecimento Global Engenharia Conhecimento Global Engenharia (Global Knowledge Engineering): A Sun Microssystem adotou essa tecnologia para integrar melhor e gerenciar a informação corporativa que representa um ponto crítico para melhorar a produtividade e prover novas soluções. O GKE inclui diversos componentes como vocabulários controlados, classificações organizacionais, descrição de metadados utilizando RDF, regras de negócios e etc. a fim de provar a infraestrutura necessária para facilitar a integração de conhecimento distribuído (Sun, 2009). 2.3.1.5 A música do amigo de um amigo A música do amigo de um amigo (Foafing the Music): Este projeto visa disponibilizar aos interessados por música um sistema de recomendação de música diferenciado. O objetivo é utilizar o perfil do usuário para a sugestão de novas experiências musicais, além de características musicais como artista, título e gênero. As músicas são enriquecidas com metadados como ritmo, timbre, harmonia, instrumentação e outros (Simac, 2009). 2.3.1.6 DBPedia Chris Bizer e colegas da Universidade Livre de Berlim e da Universidade de Leipzig, na Alemanha, criaram o projeto Dbpedia. Essa ferramenta desenvolvida com técnicas de Web Semântica está sendo utilizada para consultar os mais de 700 mil modelos de infoboxes (conjunto de acontecimentos) existentes em inglês (Scientific A., 2008).
  40. 40. 40 Este recurso permite buscar todos os jogadores de tênis que vivem em Moscou ou os nomes de todos os prefeitos de cidades dos Estados Unidos situadas em altitudes superiores a mil metros e obter uma resposta exata (Scientific A., 2008). Em novembro de 2008 o conjunto de dados dbpedia descreve mais de 2,6 milhões de registros, incluindo pelo menos, 213.000 pessoas, 328.000 lugares, 57.000 álbuns de música, 36.000 filmes e 20.000 empresas. O conjunto de dados possui rótulos e resumos curtos para esses registros em 30 idiomas diferentes; 609.000 links para imagens e 3.150.000 ligações a páginas externas; 4.878.100 links externos para outros conjuntos de dados RDF e 415.000 categorias Wikipédia (Dbpedia, 2009). O projeto Dbpedia utiliza o RDF como um modelo de dados flexível para representar as informações extraídas e para publicação na web. Em novembro de 2008, o conjunto de dados Dbpedia estava constituído por cerca de 274 milhões de triplas RDF, que foram extraídas do inglês, alemão, francês, espanhol, italiano, português, polonês, sueco, holandês, japonês, chinês, russo, finlandês norueguês e versões da Wikipédia (Dbpedia, 2009). 2.4 Considerações Finais Neste Capítulo foram apresentados os principais conceitos sobre busca semântica e alguns dos projetos existentes que já utilizam tecnologias semânticas. O próximo Capítulo apresenta algumas das redes sociais mais utilizadas atualmente e alguns conceitos sobre as mesmas, tendo em vista o seu crescimento exponencial nos últimos anos.
  41. 41. 41 3 REDES SOCIAIS Este capítulo fará uma introdução sobre redes sociais, apresentará algumas das redes sociais mais utilizadas atualmente e alguns conceitos sobre as mesmas, tendo em vista o seu crescimento exponencial nos últimos anos. O capítulo está organizado da seguinte forma: Na Seção 3.1 teremos a introdução seguida da Seção 3.2 que dará ênfase em blogs e, na sequência, a Seção 3.2.1 que se resumirá ao blog Wordpress. E, por fim, a Seção 3.3 faz as considerações finais. 3.1 Introdução Rede social é o conjunto de relações e intercâmbios entre indivíduos, grupos ou organizações que partilham interesses, que funcionam na sua maioria através de plataformas da internet (Aurélio, 2010). Rede virtual é sistema de nós e elos; uma estrutura sem fronteiras; uma comunidade não geográfica; um sistema de apoio ou um sistema físico que se pareça com uma árvore ou uma rede (DANAH, et al, 2007). A rede social, derivando deste conceito, passa a representar um conjunto de participantes autônomos, unindo idéias e recursos em torno de valores e interesses compartilhados. A Figura 13 a seguir ilustra uma rede social onde cada quadrado representa um indivíduo conectado.
  42. 42. 42 Figura 13 - Representação de uma rede social. Fonte: imagem extraída do site: America data redes sociais, 2010. Assim, um grupo de discussão é composto por indivíduos que possuem identidades semelhantes. Essas redes sociais estão hoje instaladas principalmente na Internet devido ao fato desta possibilitar a divulgação de ideias de forma ampla e absorção de novos elementos em busca de algo em comum (DANAH, et al, 2007). As Figuras 14 e 15 darão um panorama das redes sociais mais utilizadas, mais populares em cada país ao redor do mundo entre os usuários com mais de 15 anos. Na Figura 14, os gráficos representam as redes mais populares por continentes. Já na segunda Figura, são mostradas as redes mais populares em seus respectivos países.
  43. 43. 43 Figura 14 - Redes sociais por continentes. Fonte: ComScore World Metrix, 2010. Como podemos ver, o Orkut do Google lidera ficou em primeiro lugar no Brasil. Já nos Estados Unidos o mais usado é o Myspace da Microsoft, sendo o Facebook no Canadá, Austrália e em alguns países da América do Sul, do Oriente Médio e do Norte da África. Na América Central predomina o HI-5 e por fim na Europa e na Ásia o cenário é bem variado.
  44. 44. 44 Figura 15 - Redes sociais por países. Fonte: Imagem extraída de: oxyweb, 2009. 3.2 Blog Jorn Barger tornou-se a primeira pessoa a usar o termo "Weblog" para descrever a sua coleção de links registrados a partir da Internet, em 17 de dezembro de 1997. É uma página na Web que normalmente é atualizada com grande frequência através da colocação de informações – que se designam ―posts‖ – constituída por imagens e/ou textos de pequenas dimensões (muitas vezes incluindo links para sites de interesse e/ou comentários e pensamentos pessoais do autor) e apresentadas de forma cronológica, sendo as mensagens mais recentes normalmente apresentadas em primeiro lugar (Gomes, 2005). O The New York Times, jornal norte americano, publicou em agosto de 2007 uma matéria com a informação de que, na última década, os blogs passaram a dominar a rede, com aproximadamente 100 milhões de diários pessoais.
  45. 45. 45 O Blog é a mais fácil e mais rápida ferramenta de publicação já inventada. Permite que as pessoas tenham uma voz que não tinham antes. Hoje os blogs não são só notícias e entretenimento, mas também a publicação sobre política e relações públicas. Atualmente dentre os blogs o Twitter é o mais badalado, pois, é a terceira rede social mais acessada do mundo, atualmente com 54.218.731 milhões de usuários (Compete, 2009). O Twitter chegou de forma explosiva, teve picos de crescimento de até 3712% ano. Veja o ranking na Tabela 1. Tabela 1 - Ranking das redes sociais mais acessadas no mundo. Twitter é um "microblog" — um ―feed‖ personalizado de pequenas declarações sobre você mesmo, com no máximo 140 caracteres de comprimento, que qualquer pessoa que queira "seguir" poderá receber via atualizações da web, really simple syndication (RSS), mensagem de texto, entre outros (IBM, 2009). Feed personalizado é um formato de dados utilizado para fornecer os usuários com conteúdo atualizado com frequência. Permitindo aos utilizadores subscrever a ele. Fazer uma coleção de feeds da Web acessíveis em um determinado local é conhecido como agregação. A alimentação da Web é também por vezes referida como um feed distribuído. Os blogs proporcionam conhecimento, experiências compartilhadas, os pontos de vista expostos sobre diversos ângulos, sobretudo, quando existem diversas culturas envolvidas nas
  46. 46. 46 discussões que transitam nas redes sociais. Os blogs têm modificando comportamentos, aproximado povos e trazido melhoria para a qualidade de vida das pessoas. 3.2.1 Wordpress Wordpress é um projeto Open Source (que tem o código aberto) que nasceu do desejo de um elegante e bem estruturado sistema de publicação pessoal construído em PHP e Mysql e licenciado sob a Geral Pública Licença (GPL). O que significa que existem centenas de pessoas em todo o mundo a trabalhar nele (Mais do que a maioria das plataformas comerciais). Significa também que você é livre para usá-lo para qualquer coisa, da página de seu gato até para um web site de organizações com fins lucrativos, sem pagar qualquer taxa de licenciamento e uma série de outras liberdades importantes (Wordpress, 2010). Wordpress começou apenas como um sistema de blogs, mas evoluiu para ser utilizado como sistema de gerenciamento de conteúdo completo e muito mais através dos milhares de plugins (programa de computador usado para adicionar funções a outros programas maiores, provendo alguma funcionalidade especial ou muito específica), widgets (componente de uma interface gráfica de usuário (GUI), o que inclui janelas, botões, menus, ícones, barras de rolagem, etc.) e temas. O Wordpress é limitado apenas pela sua imaginação. A seguir nas Figuras 16 e 17 ilustrações de algumas das diversas perspectivas do Wordpress na função adição de novos posts, novos plugins, adição de novos usuários, configuração de novas ferramentas entre outros. Na perspectiva adição de posts é possível publicar novos e editar os já existentes.
  47. 47. 47 Figura 16 - Perspectiva para adição de novos posts do Wordpress. Já na Figura 17 a seguir é mostrado o painel que possibilita a adição de novos plugins, a edição e a exclusão dos mesmos. Figura 17 - Perspectiva para adição de novos plugins do Wordpress.
  48. 48. 48 3.3 Considerações Finais Este capítulo fez uma introdução a redes sociais, apresentou algumas das redes sociais mais utilizadas atualmente e alguns conceitos sobre as mesmas, haja vista o crescimento exponencial das redes nos últimos anos. O próximo capítulo apresentará os vocabulários estudados e testados nos estudos de caso que serão apresentados no Capítulo 5.
  49. 49. 49 4 AVALIAÇÃO DE TECNOLOGIAS E PADRÕES DA WEB SEMÂNTICA Este capítulo apresentará alguns dos vocabulários que foram estudados e testados nos estudos de caso que serão apresentados no Capítulo 5. Como Editores de conteúdos serão apresentados a biblioteca Backplanejs, e o plugin RDFQuery. O Capítulo 4 está organizado da seguinte forma: na Seção 4.1 serão apresentados os vocabulários, sendo que subseções 4.1.1 e 4.1.2 apresentam respectivamente FOAF e Dublin Core. Posteriormente, na Seção 4.2 à edição de conteúdos, seguido das subseções 4.2.1 com o plugin wp-RDFa, a 4.2.2 Creative Commons. Já na Seção 4.3 é apresentado a biblioteca Backplanejs seguida da Seção 4.3.1 com o plugin RDFQuery. E, para finalizar, a Seção 4.4 que apresentará as considerações finais. 4.1 Vocabulários Vocabulários de línguas descrevem "facetas". O esquema RDF descreve as propriedades em termos de classes de recursos a que se aplicam: domínio e intervalo de valores (Brickley, 2004). Para que a marcação semântica fosse entendida pelos computadores foi necessário criar vocabulários específicos. (BIZER, et al, 2007). Infelizmente, não é possível dar um dicionário, um almanaque ou um conjunto de enciclopédias para um computador e deixar que ele aprenda tudo sozinho. Para entender o que as palavras significam e qual a relação entre elas, o computador precisa ter documentos que descrevem todas as palavras e a lógica para fazer as conexões necessárias. Na Web Semântica, isto vem de esquemas e ontologias. Ontologia é um vocabulário que descreve objetos e como eles se relacionam. Neste contexto, uma ontologia é a representação do conhecimento em um domínio. Ontologias, espinha dorsal da Web Semântica, fornecem um vocabulário para a anatoção dos dados na Web. Veja na Figura 18 alguns dos vocabulários mais comuns:
  50. 50. 50 Figura 18 - Vocabulários semânticos. Fonte: Imagem extraída de; W3C. A seguir a descrição quanto à representação de cada um dos vocabulários apresentados: a) FOAF: descrição de pessoas; b) DOAP: descrição de projetos; c) RSS: publicação de notícias; d) Dublin Core: catalogação e descrição de recursos (livros, imagens, etc.); e) SIOC: descrição de comunidades online; f) EARL: informes de resultados de ensaios; g) SKOS: representação de dicionários; h) GoodRelations: comércio eletrônico. A combinação desses vocabulários é imprescindível na ampliação de funcionalidades de uma página marcada semanticamente. As ontologias responsáveis pelo fornecimento dos vocabulários devem ter a capacidade de identificar contextos de um termo, compartilhar definições e dar suporte ao reuso. (BIZER, et al, 2007). Quando elas são construídas levando-se em consideração esses aspectos, é possível ajudar as pessoas na busca, extração, interpretação e processamento da informação.
  51. 51. 51 4.1.1 FOAF Para um computador, a Internet é um mundo desprovido de significado. Como ocorre de fato na Web atual, ela descreve em seus documentos objetos reais e os conceitos imaginários, porém não dar relações particulares entre si. Por exemplo, um documento pode descrever uma pessoa. O documento de uma casa descreve uma casa e também a relação de propriedade com uma pessoa. Adicionar conceitos de Web Semântica envolveria duas coisas: permitir que os documentos que tenham informações de formulários para leitura óptica, e permitir a criação de laços com os valores do relacionamento. Só quando tivermos este nível extra de semântica, seremos capazes de usar o poder do computador para nos ajudar a explorar a informação para uma maior extensão do que nossa própria leitura (Berners-Lee, et al, 1994). FOAF, como a própria web, é um sistema de informação vinculada, ele foi construído usando a tecnologia descentralizada Web Semântica, e foi concebido para permitir a integração de dados por meio de uma variedade de aplicações, web sites, serviços e sistemas de software. Para conseguir isso, FOAF toma uma atitude liberal para o intercâmbio de dados. Ele não exige que você queira dizer alguma coisa sobre si mesmo ou outros, nem colocar limites nas coisas que você pode dizer. Esta especificação atual fornece uma base "dicionário" de termos para falar sobre as pessoas e as coisas que eles fazem ou deixam de fazer (FOAF, 2010). FOAF foi projetado para ser usado junto com outros dicionários como ("esquemas" ou "ontologias"), e para ser usado com a grande variedade de ferramentas genéricas e serviços que tenham sido criadas para a Web Semântica. O projeto FOAF baseia-se em torno da utilização da máquina de homepages legíveis web para pessoas, grupos, empresas e outros tipos de coisa. Para conseguir isto, usamos o "vocabulário FOAF" para fornecer um conjunto de condições básicas que podem ser usadas nestas páginas Web. O coração do projeto FOAF é um conjunto de definições concebido para servir como um dicionário de termos que podem ser usados para expressar afirmações sobre o mundo. O foco inicial do FOAF foi à descrição de pessoas, pois as pessoas são as coisas que interligam a maioria dos outros tipos de coisas que descrevemos na Web: eles fazem documentos, participam de reuniões, são retratados em fotografias, e assim por diante (FOAF, 2010). Um documento FOAF, ao contrário de uma página da web tradicional, pode ser combinado com outros documentos FOAF para criar um banco de dados unificado de informações. A Figura 19 a seguir ilustra a ideia de uma rede de integração de dados, não há limites, sem fim.
  52. 52. 52 Figura 19 - Ilustração de funcionamento do vocabulário FOAF. Fonte: Imagem extraída de: dcs FOAF. Este exemplo de integração refere-se aos processos envolvidos na exportação de informações do Facebook. O real de exportação de informações pessoais envolve o mapeamento existente do Facebook esquema de dados XML com os conceitos a partir da especificação FOAF para permitir a representação de conhecimentos suficientes. Esta versão contém a infraestrutura básica para a exportação de dados RDF a partir do Facebook, segundo as especificações FOAF. A identificação é feita usando o FOAF: holdsAccount propriedade dentro da especificação FOAF. O user id extraído do Facebook é utilizado como identificador único dentro do FOAF: OnlineAccount e a propriedade FOAF: accountName entre outras. Após autenticar o usuário, ocorre a recuperação das informações pessoais do usuário e da lista de amigos desse usuário juntamente com os seus detalhes. Primeiro os detalhes são
  53. 53. 53 convertidos em FOAF, como: nome, sexo, imagem etc., a fim de identificar arquivos FOAF de outros que contém propriedades similares. A próxima etapa é do processo de criação de uma representação geocodificada da localização do utilizador. Essa etapa só é possível consultando o serviço Google Maps. Utilizando atributos como latitude e longitude. Aí sim, é possível determinar a sua localização. A ideia básica é bastante simples. Se as pessoas podem publicar informações no formato de documento FOAF, as máquinas serão capazes de fazer uso dessa informação. Se esses arquivos contêm ponteiros que apontam para outros documentos na web, teremos então um verdadeiro grafo de dados. Os programas de computadores com isso serão capazes de armazenar em torno dessa web, documentos concebidos para máquinas em vez de seres humanos, armazenar as informações que encontram, mantendo uma lista de ponteiros para outros documentos, verificando assinaturas digitais (para a segurança) e construção de web páginas e pergunta-resposta dos serviços com base nos documentos colhidos. Veremos a seguir na Figura 20, um exemplo de elementos FOAF inseridos em meio ao HTML de uma página web. Figura 20 - Elementos FOAF em meio ao HTML. Como exemplo considere sites de comércio eletrônico como Amazon, que se tornaram sucesso por causa de seu alto nível de personalização. Aproveitar o melhor desses sites envolve um processo de aprendizagem, onde eles descobrem que seus interesses através de
  54. 54. 54 preferência explícita, criação ou adaptação de sugestões de produtos com base em um histórico de compras. Usando FOAF há o potencial para capturar essa informação uma vez, em um formulário que pode ser usado não apenas por um site, mas muitos. O usuário poderia, então, circular livremente entre os sistemas. 4.1.2 Dublin Core A palavra metadados foi criada por Jack Myres em 1969, para denominar os dados que descreviam registros de arquivos convencionais (Berners-Lee, et al, 1994). A seguir algumas definições de metadados. Metadados são dados sobre dados que objetivam descrever completamente os dados (bases) que representam, permitindo ao usuário decidir sobre a utilização desse conjunto de dados de acordo com as suas necessidades específicas (Shadbolt, et al, 2008). Metadados são um conjunto de dados estruturados que identificam os dados de um determinado documento, que podem fornecer informação sobre o modo de descrição, administração, requisitos legais de utilização, funcionalidade técnica, uso e preservação (Berners-Lee, 2002). No ano de 1995 a Online Computer Library Center (OCLC) e o National Center for Supercomputing Aplications (NCSA) organizaram um workshop sobre metadados em Dublin, Ohio. Neste workshop participaram pessoas das mais variadas áreas, biblioteconomia, ciências da informação, informática e provedores de informações da rede. O resultado foi a definição do padrão de metadados para a internet, Dublin Core (Dublin Core, 2010). Embora o conceito de metadados seja anterior a internet e a web , o interesse mundial nos padrões de metadados e práticas explodiu com o aumento de publicações eletrônicas e bibliotecas digitais. Qualquer um que tenha tentado encontrar informações online usando um dos serviços de busca populares da web hoje, tem provalvelmente experimentado a frustração de recuperar centenas, se não milhares de links (lixo) devido a capacidade limitada de refinamento de conteúdo por parte dos atuais motores de busca. A adoção, em larga escala descritiva de normas e práticas de recursos eletrônicos, irá melhorar a recuperação dos recursos pertinentes em qualquer local onde a recuperação de informação é crítica. Como observado por Weibel e Lagose, dois líderes nas áreas de desenvolvimento de metadados e bibliotecas digitais:
  55. 55. 55 "A associação de metadados descritivos padronizados com objetos em rede tem o potencial de melhorar substancialmente a capacidade de descoberta de recursos, possibilitando com base em um campo (por exemplo, autor, título, assunto) a procura, a indexação de objetos não textuais, e permitindo o acesso ao conteúdo que é substituto, distinto de acesso ao conteúdo do recurso em si‖ (Weibel, 2000). A web passa por um momento ruim devido ao seu crescimento exponencial e anseia pela necessidade de servir bem a demanda por conteúdo de qualidade e o acesso rápido aos dados nela disponibilizados pelos seus usuários. A necessidade de ser visível dentre os aproximados dois milhões de sites existentes (Necraft 2008, vide na Figura 21) tem despertado um sentimento de frustração a diversas comunidades. Figura 21 - Crescimento da web, dados de Setembro de 1995 a Junho de 2008. Fonte: Imagem extraída de: netcraft. Gerir e organizar dados interligados de diferentes tipos em diferentes repositórios, interoperar com outras comunidades, outras aplicações, expressar a estrutura dos nossos dados e codificar a transferência dos mesmos é tudo que de que precisa a web atual. Mas para que tudo isso vire realidade, aplicações necessitam de certa forma, que os dados tenham significados para as máquinas, não apenas para os humanos.
  56. 56. 56 Isso permitiria comunidades resolverem as suas próprias necessidades, fazendo integrações de dados de forma colaborativa baseado em padrões. Dublin Core nasce com a proposta de melhorar a descoberta de recursos na web de forma mais ampla, garantindo a busca de um conteúdo de qualidade. De forma simples, intuitiva e com muita flexibilidade. Propõe a utilização de apenas quinze elementos de metadados descritivos, todos os elementos opcionais que oferecem um ponto de partida para descrições semanticamente mais ricas e interdisciplinares. Favorecendo bibliotecas, museus, governo, educação entre outros. Veja na Figura 22 os elementos que compõem a arquitetura completa Dublin Core. Figura 22 - Arquitetura do DC (Dublin Core). Fonte: Imagem extraída de: ganesha Dublin Core, 2010. Alguns dos elementos mais comuns em websites que usam o Dublin Core:
  57. 57. 57 a) assunto: Área de conhecimento ao qual o trabalho pertence; b) título: É definido como o nome do objeto; c) autor: Responsável pelo conteúdo intelectual do trabalho. Como a maioria dos objetos na internet estão em forma de documentos, o objetivo principal do Dublin Core é identificar um conjunto contendo o mínimo de elementos capazes de descrever esses objetos. Devido a essa simplicidade DC é considerado o ponto de partida para os demais projetos envolvendo especificações de uma arquitetura de metadados para a Web (Dublin Core, 2010). Será visto na Figura 23 um exemplo simples de DC, para descrever uma gravação de áudio de um guia para o crescimento de roseiras. Com o XML ou RDF / XML, Dublin Core pode potencialmente ser misturado com outros vocabulários de metadados. Figura 23 - Exemplo simples de Dublin Core. O exemplo acima pode ser usado juntamente com outros vocábulos como vCard* (vCard é um formato de arquivo padrão para cartões de negócio eletrônico) que pode descrever a filiação do autor e informações de contatos, ou uma mais especializada ―rosa‖, na descrição do vocabulário que descreveu as roseiras em maior detalhe. Cada elemento Dublin Core é opcional e repetível, e não há nenhuma ordem definida dos elementos. A ordenação de várias ocorrências do mesmo elemento (por exemplo, creator) pode ter um significado pretendido pelo provedor, mas não há uma garantia de preservação da
  58. 58. 58 ordem em todos os ambientes do usuário. Ordenação ou sequenciação pode ser dependente de sintaxe, por exemplo, RDF/XML suporta ordenação, mas HTML não (Dublin Core, 2010). 4.1.3 Creative Commons Creative Commons é uma organização sem fins lucrativos, que trabalha com o intuito de aumentar a quantidade de criatividade na área científica, cultural e educacional. Fundada em 2001 com apoio do Center of Public Domain (Centro de Domínio Publico) e sua alta cúpula (Creative Commons, 2010), Creative Commons tem como objetivo ajudar a publicar um determinado trabalho online, deixando claro o que pode e o que não pode fazer com esse determinado trabalho. Com uma licença Creative Commons, é possível manter os direitos autorais, mas permitir que as pessoas copiem e distribuam o seu trabalho desde que elas lhe deem o crédito, e somente nas condições que forem especificadas (Creative Commons, 2010). Dentre as seis licenças existentes é preciso escolher a que atende às necessidades do respectivo trabalho, veja a Tabela 2 a seguir. Licenças Creative Commons by-nc-nd = Atribuição É a mais restritiva das seis licenças principais, não comercial – não permite redistribuição. Permite que os derivativa trabalhos sejam baixados e partilhados com os outros, desde que seja mencionado o link de origem. Não pode mudá-lo de qualquer forma ou usá-los comercialmente. by-nc-sa = Atribuição Esta licença permite o ―remix‖, a construção não comercial – sobre o trabalho contanto que você licencie compartilhamento suas criações nos termos idênticos. Todos os desde que não seja novos trabalhos com base neste realizará a alterada mesma licença, para todos os derivados também serão não comercial por natureza.
  59. 59. 59 by-nc = Atribuição não Esta licença permite o ―remix‖, e a construção comercial sobre o trabalho não comercial. E apesar de novas obras, também deve reconhecer que não pode comercializá-lo, não têm a sua licença de obras derivadas sobre os mesmo termos. by-nd = Atribuição não Esta licença permite a redistribuição, derivativa comercial e não comercial, contanto que a obra seja inalterada ao longo e na íntegra, com crédito para você. by-sa = Atribuição sem Esta licença permite o ―remix‖, reconstruir alteração sobre o seu trabalho, mesmo por motivos comerciais, contanto que o crédito seja dado ao autor original. Todas as novas obras com base em seu trabalho realizará a mesma licença, para todos os derivados também vai permitir o uso comercial. by = Atribuição apenas Esta licença permite aos outros distribuírem ―remixar‖ e construir sobre o seu trabalho, mesmo comercialmente, desde que seja dado o crédito para a criação original. Este é a mais acomodada das licenças oferecidas, em termos do que os outros podem fazer com suas obras sob licença e atribuições. Tabela 2 - Representação das licenças Creative Commons. Os desenvolvedores interessados em licenciar o seu Trabalho tem de preencher a Seção ―informações adicionais‖ do formulário de seletor de licença, e após o preenchimento eles recebem um trecho do código XHTML que contém o crachá da imagem, um link para a licença de algum texto e alguns tags span. Dentro dessas tags RDFa é expressa. Vamos dar uma olhada em alguns códigos de exemplo para aprender mais sobre RDFa na Figura 24.
  60. 60. 60 Figura 24 - Exemplo de código RDFa Creative Commons. No destaque da Figura 24 o Creative Commons está usando o próprio namespace XML, abreviado usando o cc. A propriedade é do AttributionName atributo cc, o valor é o conteúdo dentro da tag âncora (mikexelrod), e uma relação de cc: AttributionURL é definida como sendo http://WWW.mikexelrod.com/wp/wp-content/uploads/2008/10/iswc-ontology- web.png. O ―rel = license‖ se encarrega de especificar a relação de URL’s a href. Neste caso a relação é a ―license‖ e a URL é um padrão licença Creative Commons. Já as propriedades a seguir que não compõe a Figura 24 como: o ―dc: source‖ é semelhante à fonte dc:title, dc especifica onde a fonte a fonte original do arquivo está localizada. E por fim o ―cc: morePermissions‖ que como parte do protocolo mais Creative Commons, os criadores podem especificar uma URL onde re-usuários de licenças podem obter mais direitos para o Trabalho. 4.2 Edição de Conteúdo A edição pode ser feita usando qualquer editor de texto. Porém, assim como as redes sociais facilitam a edição de informações não estruturadas, é desejável oferecer ao usuário ferramentas que também facilitem a edição de informações estruturada. Nas subseções a seguir serão apresentadas algumas ferramentas que contribuem para isso. 4.2.1 Wp-RDFa Wp-RDFa é um plugin Wordpress desenvolvido em linguagem php por Richard Harvey. O objetivo deste plugin é inserir a Web Semântica no Blog Wordpress, (SquareCows, 2010). Ele automaticamente adiciona: a) FOAF que pode ser usado para relacionar as informações pessoais para o blog. Também pode ser usado para relacionar outros usuários do blog para se construir um mapa semântico dos relacionamentos no mundo online;
  61. 61. 61 b) Dublin Core para obter semântica e tags automaticamente posts com o título, o criador e os elementos de data. 4.2.2 Image Licenser O plugin Image Licenser foi desenvolvido com o objetivo de simplificar a marcação de imagens com um selo Creative Commons, utilizando RDFa para permitir que os motores de buscas compreendam os metadados de licenciamento. O plugin também adiciona o nome e URL do autor, para definir o cc: attributionName e cc: attributionURL. 4.3 Busca Semântica Nas subseções a seguir serão apresentadas as bibliotecas de busca semântica avaliadas. 4.3.1 Backplanejs Backplanejs é uma biblioteca que oferece uma gama de componentes (plugins) de código aberto a partir de bibliotecas Asynchronous Javascript And XML (Ajax) de extensões do navegador. À possibilidade das aplicações rodando na web de poder fazer uso de qualquer funcionalidade avançada que o usuário tenha optado por instalar dá-se o nome de progressive browser enchancement ou (reforço browser progressivo), porém, se a funcionalidade não estiver disponível pode resultar na a execução Java Script. A gama de extensões disponíveis inclui suporte completo para XForms, componentes para a criação fácil de sidebars (página HTML simples) navegador e barras de ferramentas, o acesso ao MicrosoftAgent (tecnologia que permite o computador ler o que você está escrevendo) para o discurso, e muito mais (Backplane, 2010). A biblioteca Backplanejs também permite que os programadores desenvolvam aplicações desktops, disponibilizando uma estrutura de aplicativos sofisticados que permite aos autores criarem gadgets (pequeno software que pode ser agregado a um serviço maior), widgets (pequenos aplicativos que flutuam pela área de trabalho e fornecem funcionalidade específicas ao utilizador como: previsão do tempo, cotação de moedas, relógio, etc..),

×