O documento discute como integrar a Web Semântica e a Web Social usando PHP. Ele explica o que é a Web Semântica e como garantir semântica na Web, além de como interpretar o significado dos dados usando identificação, definição, estrutura e consultas. Também aborda serviços Web, redes sociais online, ferramentas PHP e conclusões sobre como manipular padrões da Web Semântica e acessar recursos de redes sociais.
Uma grande dificuldade da World Wide Web atualmente ´e a incapacidade dos computadores de inferir sobre algo. Neste contexto, surge a
Web Semˆantica, cuja proposta est´a em dotar a informa¸c˜ao de um significado bem definido possibilitando a computadores e pessoas cooperarem
entre si. Para que isso se torne poss´ıvel, uma arquitetura de camadas foi
proposta pelo W3C, com a finalidade de direcionar tecnologias associadas
a Web Semˆantica. Apesar dela estar em um estado inicial de desenvolvimento, j´a se tem aplica¸c˜oes que foram projetadas utilizando o conceito de
camadas, ratificando o futuro da Web Semˆantica.
Uma grande dificuldade da World Wide Web atualmente ´e a incapacidade dos computadores de inferir sobre algo. Neste contexto, surge a
Web Semˆantica, cuja proposta est´a em dotar a informa¸c˜ao de um significado bem definido possibilitando a computadores e pessoas cooperarem
entre si. Para que isso se torne poss´ıvel, uma arquitetura de camadas foi
proposta pelo W3C, com a finalidade de direcionar tecnologias associadas
a Web Semˆantica. Apesar dela estar em um estado inicial de desenvolvimento, j´a se tem aplica¸c˜oes que foram projetadas utilizando o conceito de
camadas, ratificando o futuro da Web Semˆantica.
Palestra realizada no FISL 11, em Porto Alegre, abordando os conceitos da Web Semântica, suas novidades, tecnologias empregadas e empresas que já estão utilizando-a.
O documento apresenta brevemente a definição de semantica, e alguns de seus tipos, visões da web. Também são apresentadas títulos e links de páginas da web que trabalham com busca semantica.
Também apresenta brevemente os tipos de ontologias, sua utilidade, e alguns exemplos de ferramentas de construção e utilização de ontologias.
Interoperabilidade de linguagens documentais:Simple Knowledge Organization System (SKOS).
Linguagens Documentais Alfabéticas - Prof. Walter Moreira
Biblioteconomia – UNESP, Campus de Marília, 2015
Roteiro
- O que é Entrega Contínua e DevOps?
- O que é Integração Contínua?
- Erros Comuns em Entrega de Software;
- Princípios de Entrega Contínua;
- Práticas em Arquitetura de Software;
Palestra ministrada no V FGSL/I SGSL em maio de 2008 sobre os principais padrões de desenvolvimento utilizados para web e seus usos no padrão de arquitetura MVC.
O processo de entrega de software envolve várias etapas e a participação de todas as áreas de uma empresa: do comercial ao desenvolvimento. Com o amadurecimento da entrega contínua de software, surgiu o termo DevOps que destina-se a descrever uma nova cultura para colaboração de todas as equipes na entrega do software. Essa palestra destina-se a abordar os princípios da entrega contínua e as práticas utilizadas em DevOps.
Palestra apresentada no V FGSL/I SGSL, que aconteceu em maio de 2008, sobre a API de Mapas do Google. São discritas as funcionalidades disponiveis nela, bem como links para mais informações à respeito.
Palestra realizada no FISL 11, em Porto Alegre, abordando os conceitos da Web Semântica, suas novidades, tecnologias empregadas e empresas que já estão utilizando-a.
O documento apresenta brevemente a definição de semantica, e alguns de seus tipos, visões da web. Também são apresentadas títulos e links de páginas da web que trabalham com busca semantica.
Também apresenta brevemente os tipos de ontologias, sua utilidade, e alguns exemplos de ferramentas de construção e utilização de ontologias.
Interoperabilidade de linguagens documentais:Simple Knowledge Organization System (SKOS).
Linguagens Documentais Alfabéticas - Prof. Walter Moreira
Biblioteconomia – UNESP, Campus de Marília, 2015
Roteiro
- O que é Entrega Contínua e DevOps?
- O que é Integração Contínua?
- Erros Comuns em Entrega de Software;
- Princípios de Entrega Contínua;
- Práticas em Arquitetura de Software;
Palestra ministrada no V FGSL/I SGSL em maio de 2008 sobre os principais padrões de desenvolvimento utilizados para web e seus usos no padrão de arquitetura MVC.
O processo de entrega de software envolve várias etapas e a participação de todas as áreas de uma empresa: do comercial ao desenvolvimento. Com o amadurecimento da entrega contínua de software, surgiu o termo DevOps que destina-se a descrever uma nova cultura para colaboração de todas as equipes na entrega do software. Essa palestra destina-se a abordar os princípios da entrega contínua e as práticas utilizadas em DevOps.
Palestra apresentada no V FGSL/I SGSL, que aconteceu em maio de 2008, sobre a API de Mapas do Google. São discritas as funcionalidades disponiveis nela, bem como links para mais informações à respeito.
Slides de oficina sobre o desenvolvimento orientado a objetos com PHP, ministrado em abril de 2007 no FLISOL-GO. São apresentados conceitos como Classes, Objetos, Abstração, Herança, Polimorfismo, Encapsulamento e Interfaces, entre outros.
Como fazer dispositivos para a Internet das Coisas usando Raspberry e programando em Python. Além disso, disponibilizar integrações Web a partir do Node.js e o Express integrados ao Python.
Palestra ministrada no CONAPHP/CONISLI de 2008 explicando como funciona o padrão de arquitetura Model-View-Controller, em PHP, sem uso de frameworks. É tambem analisada a integração deste com AJAX, de forma simples.
10+ Deploys Per Day: Dev and Ops Cooperation at FlickrJohn Allspaw
Communications and cooperation between development and operations isn't optional, it's mandatory. Flickr takes the idea of "release early, release often" to an extreme - on a normal day there are 10 full deployments of the site to our servers. This session discusses why this rate of change works so well, and the culture and technology needed to make it possible.
Artificial intelligence (AI) is everywhere, promising self-driving cars, medical breakthroughs, and new ways of working. But how do you separate hype from reality? How can your company apply AI to solve real business problems?
Here’s what AI learnings your business should keep in mind for 2017.
O artigo fala sobre a Web Semântica e as melhorias que são possíveis serem feitas no HTML adicionando metadados, que são ocultos para o usuário mas altamente visíveis para os buscadores. Junto com o HTML5, aumenta o peso semântico no conteúdo, também propiciando um melhor resultado nas buscas e preparando o site para possíveis serviços da WEB no futuro
Material de apoio a disciplina de Webdesign, curso de Tecnologia em Design Gráfico, UTFPR - Curitiba. Elaborado pela prof. Claudia Bordin Rodrigues. Uso didático-pedagógico.
Semelhante a Integrando a Web Social e a Web Semântica com PHP (20)
Palestra ministrada por mim e pelo Marcelo Akira no VI Forum Goiano de Software Livre. Aborda o que é ORM e como utilizar Doctrine para abstrair a camada de dados da sua aplicação.
Palestra apresentada no CEPA em Anápolis-GO por mim e o Almir Neto, mostrando a cena tecnológica em que o PHP encontra-se, e o que podemos esperar para o futuro.
Classe V: Educação à distância com Videoconferência no MoodleOtávio Calaça Xavier
Apresentação, realizada no Latinoware 2008, sobre um módulo de videoconferência para o Moodle, desenvolvido somente com ferramentas livres e aprimorado por alunos do CEFET Goiás.
Classe V: Educação à distância com Videoconferência no Moodle
Integrando a Web Social e a Web Semântica com PHP
1. Integrando
Web Social e
Web Semântica
com PHP
Otávio Calaça Xavier
otaviocx@gmail.com
@otaviocx
Foz do Iguaçu, 20 de Outubro de 2011
2. Grupo de Desenvolvedores
PHP de Goiás
Criado em dezembro de 2007;
Lista de Discussão:
− Mais de 550 membros.
Encontros:
− Palestras;
− Networking.
Site:
− www.gophp.com.br
Eventos:
− FLISOL, FGSL, Latinoware, Conisli, CONSOFT, PHP
Conference Brasil, FISL ...
3. Integrando Web Semântica e Web Social com PHP
Roteiro
• O que é a Web Semântica?
• Como garantir Semântica na Web?
• Como interpretar o significado dos dados?
• Serviços Web;
– Arquitetura SOAP/WSDL vs REST;
• Redes Sociais Online;
– APIs e Aplicações Sociais;
• Ferramentas PHP;
• Conclusão.
3
4. Integrando Web Semântica e Web Social com PHP
O que é a Web Semântica?
• Web 1.0
– Documentos ligados por Hyperlinks pela
Internet;
– Sites pessoais, institucionais e
informativos;
– Preocupação com o conteúdo e as
referências, não com a interface.
4
5. Integrando Web Semântica e Web Social com PHP
O que é a Web Semântica?
• Web 2.0
– O Ajax virou tendência;
– Conteúdo em multimídia;
– Compartilhamento de fotos e vídeos;
– Redes Sociais;
– Wikis;
– Colaborativismo e interatividade.
5
6. Integrando Web Semântica e Web Social com PHP
O que é a Web Semântica?
• O problema:
– A Web é baseada no HTML;
– O HTML define a estrutura, ou sintaxe, do
conteúdo;
– Mas e a semântica?
6
7. Integrando Web Semântica e Web Social com PHP
O que é a Web Semântica?
Web 1.0 Web 2.0 Web 3.0
Web Sintática; Web Social; Web Semântica;
7
8. Integrando Web Semântica e Web Social com PHP
O que é a Web Semântica?
• A Web 3.0
– Se os computadores conseguirem
interpretar o significado do conteúdo,
serão capazes de “entender” a informação;
informação = dados contextualizados
– Buscas mais eficazes e inteligentes;
– O resultado passa a ser a informação e
não um suposto local para encontrá-la
8
9. Integrando Web Semântica e Web Social com PHP
Como garantir semântica na
Web?
• De cima para baixo:
– Análise da informação;
– Processamento de linguagem natural;
– Alta complexidade e possíveis falhas;
9
10. Integrando Web Semântica e Web Social com PHP
Como garantir semântica na
Web?
• De baixo para cima:
– Encapsular semântica através de
anotações, no conteúdo;
– Descrevendo cada coisa;
– Relacionando coisas;
– Descrevendo relacionamentos.
10
11. Integrando Web Semântica e Web Social com PHP
Como interpretar o significado
dos dados?
• Identificação (URIs)
• Definição (Ontologias em OWL)
• Estrutura (RDF e RDFS ou Microformatos)
• Consultas (SPARQL)
• Interpretação (Agentes de Software)
11
12. Integrando Web Semântica e Web Social com PHP
Como interpretar o significado dos
dados?
• Identificação
– Cada coisa, recurso ou conceito deve ter um
identificador único
• São usados URIs
• Exemplo:
– Laranja1: http://www.exemplo.com/cor/laranja
– Laranja2: http://www.exemplo.com/fruta/laranja
• Padrões:
– ISBN: Livros
– ISMN: Musicas
– CPF: Pessoas Brasileiras
12
13. Integrando Web Semântica e Web Social com PHP
Como interpretar o significado dos
dados?
• Definição
– Ontologias
• Define e descreve coisas, conceitos,
recursos, propriedades e relacionamentos;
• Exemplo:
– Laranja1 é uma Cor
– Laranja2 é um tipo de Fruta
– Fruta é uma Coisa Comestível
– Uma Cor nunca poderá ser uma Coisa
Comestível
13
14. Integrando Web Semântica e Web Social com PHP
Como interpretar o significado dos
dados?
• Definição
– Ontologias
• Exemplo:
– Propriedades de Coisa Comestível:
» Sazonal – Sim/Não
» Calorias – # (número)
» Ingredientes (opcional) – outra Coisa
Comestível
14
15. Integrando Web Semântica e Web Social com PHP
Como interpretar o significado dos
dados?
• Definição
– OWL: Ontology Web Language
<rdf:RDF xmlns:owl =http://www.w3.org/2002/07/owl#"
xmlns:rdf ="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"
xmlns:xsd ="http://www.w3.org/2001/XMLSchema#">
<owl:Ontology rdf:about="">
<rdfs:comment>An example OWL ontology</rdfs:comment>
<owl:priorVersion
rdf:resource="http://www.mydomain.org/uni-ns-old"/>
<owl:imports
rdf:resource="http://www.mydomain.org/persons"/>
<rdfs:label>University Ontology</rdfs:label>
</owl:Ontology> 15
16. Integrando Web Semântica e Web Social com PHP
Como interpretar o significado dos
dados?
• Estrutura
– RDF: Resource Description Framework;
• Padrão W3C para descrever recursos Web;
• Identifica coisas através de URIs;
• Várias implementações;
• Triples: Formadas por 3 elementos:
sujeito+predicado+objeto
16
17. Integrando Web Semântica e Web Social com PHP
Como Interpretar o significado dos
dados?
Estrutura:
@prefix : <http://www.exemplo.com/ontologias#>.
@prefix f: <http://www.exemplo.com/ontologias/frutos#>.
@prefix c: <http://www.exemplo.com/ontologias/cores#>.
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>.
:SucoDeLaranja :hasIngredient f:laranja.
f:laranja rdf:type :Fruto.
f:laranja :hasColor c:laranja.
f:laranjaTerra rdf:type f:laranja.
Triplas RDF
17
18. Integrando Web Semântica e Web Social com PHP
Como interpretar o significado dos
dados?
• Consulta
– SPARQL: Simple Protocol and RDF Query
Language
PREFIX abc: <http://example.com/exampleOntology#>
SELECT ?capital ?country
WHERE {
?x abc:cityname ?capital ;
abc:isCapitalOf ?y .
?y abc:countryname ?country ;
abc:isInContinent abc:Africa .
}
18
19. Integrando Web Semântica e Web Social com PHP
Serviços Web
Aplicações capazes de receber requisições e
gerar respostas para outras aplicações;
Integração de Sistemas;
Independência de Sistema Operacional e
Linguagem de Programação.
19
20. Integrando Web Semântica e Web Social com PHP
Serviços Web
Arquiteturas
SOAP e WSDL REST
Arquitetura Orientada a Serviços; Arquitetura Orientada a Recursos;
A Web é utilizada apenas como Baseada no funcionamento da Web;
camada de transporte; Descrição sintática opcional;
Maior complexidade de implementação; Utilização do protocolo padrão da Web
Contrato formal entre as partes. para definição de interface uniforme.
20
21. Integrando Web Semântica e Web Social com PHP
Serviços Web
Arquitetura REST
– Descrição sintática pode ser feita com WADL ou HTML;
– Implementação simplificada e muito utilizada na Web Social;
– Interações de estado através de hyperlinks;
– Identificação de recursos através de URI;
– Mensagens auto-descritivas;
– Interface Uniforme.
21
22. Integrando Web Semântica e Web Social com PHP
Redes Sociais Online
Relacionamentos entre pessoas, seus interesses
e atividades em comum;
Compartilhamento de conhecimento, experiência
e recursos;
Comunidades Virtuais;
Aplicações e Serviços Sociais;
Meio de Comunicação Interativo.
22
23. Integrando Web Semântica e Web Social com PHP
Redes Sociais Online - APIs
Application Programming Interfaces
– Disponibilizam as funcionalidades de uma rede social para
outras aplicações;
– São Serviços Web;
– Arquitetura REST (também chamados de Serviços
RESTful);
– Exemplos:
• Facebook API;
• Twitter API;
• Flickr API;
• OpenSocial;
23
24. Integrando Web Semântica e Web Social com PHP
Redes Sociais Online
Aplicações Sociais
Interação entre usuários;
APIs de Redes Sociais Online como plataforma;
Segurança com protocolos de autenticação e
autorização, como OAuth;
Utilizam JSON, principalmente, e XML para a
representação dos dados;
24
25. Integrando Web Semântica e Web Social com PHP
Ferramentas PHP
• Web Semântica
– ARC
• Sistema flexível para manipulação de
modelos RDF para Web Semântica, feito
em PHP;
– RAP
• RDF API for PHP: Sistema para análise,
consulta, manipulação e provimento de
modelos RDF;
– pOWL
• Editor OWL, em PHP, e API para OWL
baseada no RAP. 25
26. Integrando Web Semântica e Web Social com PHP
Ferramentas PHP
• Web Semântica
– Consulta SPARQL para Exemplos
PREFIX foaf: <http://xmlns.com/foaf/0.1/> .
SELECT ?name ?age WHERE {
?person a foaf:Person ;
foaf:name ?name .
?person foaf:age ?age .
FILTER (?age >= 18)
}
26
27. Integrando Web Semântica e Web Social com PHP
Ferramentas PHP
• Web Semântica
– ARC - Exemplo
include_once("path/to/arc/ARC2.php");
$config = array(
// configurações de banco de dados
);
$store = ARC2::getStore($config);
if (!$store->isSetUp()) {
$store->setUp();
}
$query = 'Consulta SPARQL';
if ($people = $store->query($q, 'rows')) {
foreach ($people as $person) {
echo $person['name'] . ' - ' . $person['age'];
}
} 27
28. Integrando Web Semântica e Web Social com PHP
Ferramentas PHP
• Web Semântica
– RAP - Exemplo
require_once '/var/www/rap/rdfapi-php/test/config.php';
$database = ModelFactory::getDbStore(
// configurações de banco de dados
);
$strModel = "http://xmlns.com/foaf/0.1/";
$dbModel = $database->getModel($strModel);
$query = 'Consulta SPARQL';
if ($result = $dbModel->sparqlQuery($query);) {
foreach ($result as $person) {
echo $person['?name'] . ' - ' . $person['?age'];
}
28
}
29. Integrando Web Semântica e Web Social com PHP
Ferramentas PHP
• APIs de Redes Sociais Online
– Existem bibliotecas em PHP para os mais
diversos tipos de APIs;
– Essas bibliotecas são comumente
chamadas de SDK;
– Alguns exemplos de APIs de Redes
Sociais com SDK em PHP:
• Facebook Graph API;
• Twitter API;
• Flickr API;
• OpenSocial. 29
30. Integrando Web Semântica e Web Social com PHP
Ferramentas PHP
• APIs de Redes Sociais Online
– Exemplo de Uso – Facebook:
require_once('php-sdk/facebook.php');
$config = array(
'appId' => 'ID_da_App',
'secret' => 'Código_Secreto_da_App',
);
$facebook = new Facebook($config);
$user_id = $facebook->getUser();
if($user_id) {
try {
$user_profile = $facebook->api('/me','GET');
echo "Nome: " . $user_profile['name'];
} catch(FacebookApiException $e) {
$login_url = $facebook->getLoginUrl();
echo 'Por favor, faça <a href="' . $login_url . '">login.</a>';
error_log($e->getType());
error_log($e->getMessage());
} 30
}
31. Integrando Web Semântica e Web Social com PHP
Conclusão
• Com PHP é possível manipular os padrões
fundamentais da Web Semântica;
• Por meio de SDKs criados em PHP, também é
possível acessar os recursos disponibilizados por
Redes Sociais Online de maneira simples;
• Através dos dados obtidos de recursos em Redes
Sociais Online, é possível construir triplas RDF
formando um repositório semântico;
• Desta forma, torna-se possível a realização de
consultas semânticas, com SPARQL, em dados de
Redes Sociais Online.
31
32. Integrando Web Semântica e Web Social com PHP
FIM
Perguntas?
Otávio Calaça Xavier – otaviocx@gmail.com
@otaviocx
Obrigado!
32