ads

terça-feira, 20 de novembro de 2007

Campfire One: Introducing OpenSocial

terça-feira, 13 de novembro de 2007

OpenSocial

OpenSocial

OpenSocial é um conjunto de 3 APIs do google, desenvolvidas com o intuíto de integrar redes sociais.A idéia do google é prover uma interface comum para desenvolvedores e redes sociais.

Principais Funções:

  • Perfil da Informação (dados de usuários)
  • Atividades (coisas que acontecem, Notícias, Feeds, tipos de coisas)
  • Informação sobre amigos (gráfico social)


O desenvolvimento deste conjunto de APIs foi uma boa estratégia adotada pelo Google como tentativa deconter o crescimento do Facebook (rede social concorrente, na qual a Microsoft é sócia).Facebook requer uso de FBML (linguagem proprietária desenvolvida por eles) por razões de segurança,mas por FBML ser proprietário, seu código é praticamente inutilizado fora do Facebook, ao contrário do OpenSocialque utiliza de HTML e Javascript.


As principais redes sociais parceiras são:
Orkut, Salesforce, LinkedIn, Ning, Hi5,Plaxo, Friendster, Viadeo e Oracle.Entre os desenvolvedores incluem iLike, RockYou e Slide.


O Orkut já possui uma Sandbox, para os que quiserem começar a desenvolver gadgets!

As APIs são: People Data API, Activities Data API e Persistence Data API. E envolvem:


Métodos de autenticação (AuthSub proxy authentication).
A url gerada é tipo esta:

https://www.google.com/accounts/AuthSubRequest?scope=http%3A%2F%2Forkut.com%2Ffeeds%2F&session=1&secure=0&next=http%3A%2F%2Fwww.example.com%2Fwelcome.html


Os parâmetros são

  • scope

Indica que a aplicação está requisitando uma token para accessar o OpenSocial People feeds.

  • session

Indica se a token returnada pode ser trocada para multi-uso (session) token.

  • secure

Indica se o Client está requerindo uma token segura.

  • next

URL da página que o Google deve redirecionar os usuários após a autenticação.

ClientLogin username/password authentication


https://www.google.com/accounts/ClientLogin


Deve ser enviado usando o método POST.

Parâmetros:

  • Email

Email do usuário

  • Passwd

Password do usuário

Recuperação de entradas Persistentes

&lt?xml version='1.0' encoding='UTF-8'?>&ltfeed xmlns='http://www.w3.org/2005/Atom'>&ltid>http://sandbox.orkut.com:80/feeds/apps/02864641990088926753/persistence/global&lt/id>&ltupdated>2007-10-30T20:53:20.086Z&lt/updated>&lttitle>Persistence&lt/title>&ltlink rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://sandbox.orkut.com:80/feeds/apps/02864641990088926753/persistence/global'/>&ltlink rel='http://schemas.google.com/g/2005#post' type='application/atom+xml' href='http://sandbox.orkut.com:80/feeds/apps/02864641990088926753/persistence/global'/>&ltlink rel='self' type='application/atom+xml' href='http://sandbox.orkut.com:80/feeds/apps/02864641990088926753/persistence/global'/>&ltgenerator version='1.0' uri='/feeds'>Orkut&lt/generator>&ltentry> &ltid>http://sandbox.orkut.com:80/feeds/apps/02864641990088926753/persistence/global/somekey&lt/id> &lttitle>somekey&lt/title> &ltcontent>somevalue&lt/content> &ltlink rel='self' type='application/atom+xml' href='http://sandbox.orkut.com:80/feeds/apps/02864641990088926753/persistence/global/somekey'/> &ltlink rel='edit' type='application/atom+xml' href='http://sandbox.orkut.com:80/feeds/apps/02864641990088926753/persistence/global/somekey'/>&lt/entry>&lt/feed>

Tela de Exemplo OpenSocial


segunda-feira, 12 de novembro de 2007

OpenSocial




















OpenSocial - Conjunto de APIs do Google para integração de redes sociais.

terça-feira, 23 de outubro de 2007

Análise de Loja Virtual

Esta é uma análise superficial de alguns recursos apresentados pelo site da Loja Virtual Magazine Luiza.
http://www.magazineluiza.com.br

Vantagens:
  • Interface pouco carregada
    (barra superior com seções
    abaixo produtos em promoção e mais abaixo outros produtos...)

  • O carrinho de compras é visível a todo momento

  • auto demostração de produtos de forma muito bem feita (como uma apresentação de slides)

  • Dicas relacionadas ao produto. Ex impressora: O QUE É DPI?
    TIPOS DE IMPRESSÃO.
    COMO FUNCIONA O CARTUCHO DE TINTA?

  • Credibilidade e Know-How desde 1996

  • Suporte on-line


Desvantagens:

  • Não é possível ordenar por preço produtos da página principal de uma seção.

  • Falta avaliação dos consumidores e comentários.

  • Falta ordenar produtos por avaliação média dos consumidores

Conclusão:

O site do Magazine Luiza é um dos melhores sites de comércio eletrônico brasileiro e apresenta muito mais vantagens do que desvantagens, além disso os preços são muito bons =)

Apesar de tudo, poderiam ser implementadas áreas para postagem de comentários sobre os produtos, para ajudar na hora da compra. Também poderia oferecer o recurso de ordenação de produtos por nota da avaliação dos consumidores.

Concluindo, vejo a Magazine Luiza como uma loja que todos internautas devem consultar antes de fazer as compras, por ser uma das melhores da internet. Já comprei muitos produtos lá e recomendo.

Boas Compras!!!!

sábado, 13 de outubro de 2007

//Alteração do livro no Banco de Dados

$cod=$_POST['cod'];
$titulo=$_POST['titulo']; //Dados recebidos por POST
$autor=$_POST['autor'];
$preco=$_POST['preco'];

//Se código não for nulo
if ($cod!=" "){
//faz update do livro no BD
$sql = "UPDATE `livro` SET `tituloLivro`='$titulo', `autorLivro`='$autor', `precoLivro`='$preco' WHERE `codigoLivro`='$cod'";
$resp = mysql_query($sql) or die (mysql_error()); //Função que executa uma query
//em caso de erro, exibe mensagem de erro

if($resp==1)
echo "<h1>Livro alterado com Sucesso!!!</h1><br>";
}else
echo "Codigo Inválido!";
?>

altlivro.php

//Página de alteração de um livro

<?
$queryselp="SELECT codigoLivro, tituloLivro, autorlivro, precolivro from livro where codigoLivro like '$_POST[cod]' LIMIT 1 ";
$respselp = mysql_query($queryselp) or die (mysql_error());
while (list ($codigo, $titulo, $autor, $preco)=mysql_fetch_row($respselp)){
?>
<form enctype="multipart/form-data" action="<?=$PHP_SELF;?>" method="POST">
Código: <input name="cod" type="text" maxlength="12" value="<?echo $codlivro?>" size="6">
<input name="Buscar" type="submit" value="Buscar" > <br>
</form>

<form action="alt_livro.php" method="POST">
<input name="cod" type="hidden" <?if($cod!=null) echo "value='$codigo'";?>>
Titulo: <input name="titulo" type="text" maxlength="120" size="50" value="<? echo $titulo?>"><br>
Autor: <input name="autor" type="text" maxlength="120" size="50" value="<? echo $autor?>"><br>
Preço: <input name="preco" type="text" maxlength="6" size="5" value="<? echo $preco?>"><br>
<BR>
<input type="submit" value="Confirma" >
</form>

exclivro.php

//código para exclusão de livro
$del=$_POST['del'];


if (isset($del)){


$sql = "DELETE FROM livro WHERE codigo=$del LIMIT 1";
$resp = mysql_query($sql) or die (mysql_error());

if($resp==1)
echo "<h1>Livro deletado com sucesso!!!</h1>";

}else{

?>


<form enctype="multipart/form-data" action="<?=$PHP_SELF;?>" method="POST">
Código do Livro:<input name="del" type="text" maxlength="40" size="6">
<input name="Buscar" type="submit" value="excluir" > <br>
</form>


<?
}
?>
//código para inclusão em Banco de Dados
<?
$titulo=$_GET['titulo'];
$autor=$_GET['autor'];
$preco=$_GET['preco'];

$sql = "insert into livro (`titulo`, `autor`, `preco`) values ('$titulo', '$autor', '$preco')";
$resp = mysql_query($sql) or die (mysql_error());


?>

inclivro.php

//Página para inclusão de livros

<h1>Incluir Livro:</h1>
//form com os respectivos textfields
<form name="incliv" method="GET" action="inclui.php">
Titulo: <input type="text" name="titulo" size="50" /> <br><br>
Autor(es): <input type="text" name="autor" size="50" /> <br><br>
Preço: <input type="text" name="preco" size="5" /> <br><br>
<input type="reset" value="limpar" />
<input type="submit" value="cadastrar" /> <br>

</form>

livrosel.php

//exibe um livro informado anteriormente em livraria.php
<?php
$livro=$_POST['livro'];
?>




<table id="oTable" border="1" style="border-left:solid black thin; border-top:solid black thin; border-top:solid black thin;" cellspacing="0" cellpadding="5">
<h1>Resultados Encontrados:</h1>
<thead>
<tr style="border-right: solid black thin;
border-bottom: solid black thin;
background: #CCCCCC;"><th>Código</th><th>Título</th><th>Autor(es)</th><th>Preço</th></tr>
</thead>

<tbody id="livros">

<?php
//Busca características do livro a partir de um titulo de livro passado através do POST
$sql = "select `codigoLivro`, `tituloLivro`, `autorLivro`, `precoLivro` from `livro` where titulo like '%$livro%' ";
$resp = mysql_query($sql) or die (mysql_error());
//enquanto obtiver resultados, concatena-os na tabela...
while (list ($codigo, $titulo, $autor, $preco)=mysql_fetch_row($resp)){
echo "<tr><td>$codigo</td><td> $titulo </td><td>$autor</td><td>$preco</td></tr><br>";
}
?>

livraria.php

A página principal da livraria ficou assim:

<div id="content">
<div class="feature">
<h3 class="feature style3"><img src="livros.jpg" width="130" height="86" align="top">
<table id="oTable" border="1" style="border-left:solid black thin; border-top:solid black thin; border-top:solid black thin;" cellspacing="0" cellpadding="5">
<h1>Livros mais vendidos</h1>
<thead>
<tr style="border-right: solid black thin;
border-bottom: solid black thin;
background: #CCCCCC;"><th>Código</th><th>Título</th><th>Autor(es)</th><th>Preço</th></tr>
</thead>

<tbody id="livros">
<?php
$sql = "select `codigoLivro`, `tituloLivro`, `autorLivro`, `precoLivro`, `vendasLivro` from `livro` order by vendasLivro desc limit 10";
$resp = mysql_query($sql) or die (mysql_error());
while (list ($codigo, $titulo, $autor, $preco)=mysql_fetch_row($resp)){
echo "<tr><td>$codigo</td><td> $titulo </td><td>$autor</td><td>$preco</td></tr></a><br>";
}
?>

</tbody>
</table>


</h3>
</div>

<div class="story">

<BR><BR><h1>Digite o nome do livro que procura:</h1>


<form action="livrosel.php" name="formlivro" method=post>
<input name="livro" type="text" size="50" maxlength="120" onkeyup="ajaxFunction();" >
<input name="btnB" type="submit" value="Buscar" align="dir">
</form>
<br><br>

<p></p>
<br><br>

</div>
<br>
<div>
<h3>Gestão de livros</h3>
<br>
<p><a link href="inclivro.php">Incluir livros </a></p> <br>
<p><a link href="exclivro.php">Exluir livros </a> </p> <br>
<p><a link href="altlivro.php">Alterar livros </a> </p> <br> <br>
</div>

</div>

quarta-feira, 10 de outubro de 2007

Sistema de Livraria em PHP

Desenvolvi um Sistema de Livraria em PHP, que explicita o uso da linguagem PHP e da conexão ao Banco de Dados mySQL.
Neste Sistema representei atividades básicas de um SGBD, o que chamamos de VEIA (VER, EXCLUIR, INCLUIR e ALTERAR).
Confira como ficou, acessando o endereço http://theway.789mb.com/livraria.php
Em breve disponibilizarei o código-fonte, onde ensinarei passo a passo o que significam os comandos utilizados.

Até lá!

domingo, 30 de setembro de 2007

Este é o código de um sistema de livraria, feito em HTML e JavaScript,
que permite ver como funciona e também manipular uma tabela através do DOM.


<html>
<head>

<script type="text/javascript">

var ultimocodigo=2;

function remover() {


//Recebe a posição a ser alterada
pos=codigo.value-1;
pos=parseInt(pos);

//remove filho de livro da posição pos
var oChild=livros.children(pos);
livros.removeChild(oChild);
if(pos+1==ultimocodigo)
ultimocodigo--;

}


function removerCol() {

//remove filhos de linha, um a um (na posição 0) a cada vez que a função é chamada
var oChild=linha.children(0);
linha.removeChild(oChild);

}

function removerALL() {

try
{
livros.removeNode(true);//remove todos nodes de livros

}
catch(x)
{
alert("Você já removeu todos elementos. A página será recarregada quando você apertar ok.");
document.location.reload();
}

}


function removerTable() {

try
{
oTable.removeNode(true);
}
catch(x)
{
alert("Você já removeu a tabela. A página será recarregada quando você apertar ok.");
document.location.reload();
}

}


function incluir() {



linha=document.createElement('tr');

_codigo=document.createElement('td');
ultimocodigo++;
textoCodigo=document.createTextNode(ultimocodigo);
_codigo.appendChild(textoCodigo);// inclui textoCodigo como filho de td

_titulo=document.createElement('td');
textoTitulo=document.createTextNode(document.getElementById("titulo").value); // Returna uma referencia para o primeiro objeto com o valor específico do atributo ID
_titulo.appendChild(textoTitulo);// inclui como filho de td


_autor=document.createElement('td');
textoautor=document.createTextNode(document.getElementById("autor").value); // Returna uma referencia para o primeiro objeto com o valor específico do atributo ID
_autor.appendChild(textoautor);// inclui como filho de td

_preço=document.createElement('td');
textopreço=document.createTextNode(document.getElementById("preço").value); // Returna uma referencia para o primeiro objeto com o valor específico do atributo ID
_preço.appendChild(textopreço);// inclui como filho de td

linha.appendChild(_codigo); // refere td a tr
linha.appendChild(_titulo); // refere td a tr
linha.appendChild(_autor);
linha.appendChild(_preço);

x = document.getElementById("livros"); // refere tr a tbody
x.appendChild(linha);

}



</script>

<style type="text/css">
table { border-left:solid black thin;
border-top:solid black thin;
}
th { border-right: solid black thin;
border-bottom: solid black thin;
background: #CCCCCC;
}
td { border-right:solid black thin;
border-bottom:solid black thin;
}
</style>

</head>

<body>
<h1>Livraria</h1>

<table id="oTable" border="0" cellspacing="0" cellpadding="5">
<caption>Livros Disponíveis</caption>
<thead>
<tr><th>Código</th><th>Título</th><th>Autor(es)</th><th>Preço</th></tr>
</thead>

<tbody id="livros">
<tr><td>1</td><td>Internet & WWW</td><td>Deitel, Deitel e Nieto</td><td>79.80</td></tr>
<tr><td>2</td><td>Harry Potter</td><td>J.K.Rowling</td><td>29.90</td></tr>
</tbody>
</table>

<p style="margin-top:30pt"><strong>Inserir livros:</strong><br/>
Título: <input type="text" id="titulo" value="Everyday Italian"/>
Autor(es): <input type="text" id="autor" value="Giada de Laurentis"/>
Preço: <input type="text" size="7" id="preço" value="14.90"/>
<input type="button" value="Incluir" onclick="incluir()"/></p>

<p style="margin-top:30pt"><strong>Remover livros:</strong><br/>
Número da linha: <input type="text" size="4" id="codigo"/>
<input type="button" value="Remover" onClick="remover()"/></p>

<p style="margin-top:30pt"><strong>Remover TODOS livros:</strong>
<input type="button" value="Remover" onClick="removerALL()"/></p>

<p style="margin-top:30pt"><strong>Remover livro coluna a coluna:</strong>
<input type="button" value="Remover" onClick="removerCol()"/></p>

<p style="margin-top:30pt"><strong>Remover toda a tabela:</strong>
<input type="button" value="Remover" onClick="removerTable()"/></p>

</body>
</html>

Para ver esse código em funcionamento acesse:
theway.789mb.com/aulas/livros.html

segunda-feira, 17 de setembro de 2007

CSS

Cascading Style Sheets, ou simplesmente CSS, é uma linguagem de estilo utilizada para definir a apresentação de documentos escritos em uma linguagem de marcação, como HTML ou XML. Seu principal benefício é prover a separação entre o formato e o conteúdo de um documento.

Ao invés de colocar a formatação dentro do documento, o desenvolvedor cria um link (ligação) para uma página que contém os estilos, procedendo de forma idêntica para todas as páginas de um portal. Quando quiser alterar a aparência do portal basta portanto modificar apenas um arquivo.

Fonte: Wikipedia
Acesso em 17/09/2007

Exemplo Calculadora em JavaScript

Desenvolvi esta calculadora simples, que realiza as operações básicas e também aceita algarismos decimais. Acho que ela exemplifica bem os conhecimentos básicos de JavaScript.

<html>
<head>
<title> Calculadora</title>
<script type="text/javascript">
num1=0.0;
num2=0.0;
operador=null;
getnum=null;
isdecimal=false;

function entranum(a){

if(getnum==null){
getnum=a.toString();
visor.value=getnum;
}
else{

getnum+=a.toString();
visor.value=getnum;


}


if(operador=='+'){
num=parseFloat(getnum);
num2=num1+num;
}

if(operador=='-'){
num=parseFloat(getnum);
num2=num1-num;
}

if(operador=='*'){
num=parseFloat(getnum);
num2=num1*num;
}
if(operador=='*'){
num=parseFloat(getnum);
num2=num1*num;
}
if(operador=='/'){
num=parseFloat(getnum)
num2=num1/num;
}
}

function soma(){
operador="+";
num1=parseFloat(getnum);

getnum=null;
visor.value=num1;

}
function subtrai(){
operador="-";
num1=parseFloat(getnum);
getnum=null;
visor.value=num1;

}
function multiplica(){
operador="*";
num1=parseFloat(getnum);
getnum=null;
visor.value=num1;

}
function divide(){
operador="/";
num1=parseFloat(getnum);
getnum=null;
visor.value=num1;

}
function reset(){
num1=0.0;
num2=0.0;
visor.value=num1;
getnum=null;
operador=null;
}
function resultop(){


visor.value=num2;
num1=0.0;
num2=0.0;
getnum=null;
operador=null;
}
var gosta = confirm( "Gostaria de usar a calculadora?" );

if ( gosta == true )
{
document.write( "<p>Faça bom proveito!</p>" );
}
else
{
document.write( "<p>Use da próxima vez!</p>" );
}
</script>

</head>
<body>
<h1>Calculadora em Javascript<br><br></h1>
<table border="2" cellspacing="0" cellpadding="5">
<thead>
<tr><input type="text" name="visor"/></tr>
</thead>
<tbody id="calc">
<tr><td><input type="button" name="num1" value="1" onClick="entranum(1)" /></td><td><input type="button" name="num2" value="2" onClick="entranum(2)"/></td><td><input type="button" name="num3" value="3" onClick="entranum(3)"/></td><td><input type="button" name="num4" value="4" onClick="entranum(4)"/></td></tr>
<tr><td><input type="button" value="5" onClick="entranum(5)" /></td><td><input type="button" value="6" onClick="entranum(6)"/></td><td><input type="button" value="7" onClick="entranum(7)"/></td><td><input type="button" value="8" onClick="entranum(8)"/></td></tr>
<tr><td><input type="button" value="9" onClick="entranum(9)" /></td><td><input type="button" value="0" onClick="entranum(0)"/></td><td><input type="button" value="+" onClick="soma()"/></td><td><input type="button" value="-" onClick="subtrai()" /></td></tr>
<tr><td><input type="button" value="*" onClick="multiplica()"/></td><td><input type="button" value=":" onClick="divide()"/></td><td><input type="button" value="C" onClick="reset()"/></td><td><input type="button" value="=" onClick="resultop()" /></td></tr>
</tbody>
</table>
<input type="button" name="num1" value="decimal" onClick="entranum('.')" />
</body>
</html>

Se quiser ver este site em funcionamento acesse: pedrofao.789mb.com/portal/calculadora.html

JavaScript

JavaScript é uma linguagem de programação criada pela Netscape em 1995, que a princípio se chamava LiveScript, para atender, principalmente, as seguintes necessidades:

Validação de formulários no lado cliente (programa navegador);
Interação com a página. Assim, foi feita como uma linguagem de script. Javascript tem sintaxe semelhante à do Java, mas é totalmente diferente no conceito e no uso.
Oferece tipagem dinâmica - tipos de variáveis não são definidos;
É interpretada, ao invés de compilada;
Possui ótimas ferramentas padrão para listagens (como as linguagens de script, de modo geral);
Oferece bom suporte a expressões regulares (característica também comum a linguagens de script).
Sua união com o CSS é conhecida como DHTML. Usando o Javascript, é possível modificar dinamicamente os estilos dos elementos da página em HTML.

Dada sua enorme versatilidade e utilidade ao lidar com ambientes em árvore (como um documento HTML), foi criado a partir desta linguagem um padrão ECMA, o ECMA-262, também conhecido como ECMAScript. Este padrão é seguido, por exemplo, pela linguagem ActionScript da Adobe(Antigamente Macromedia, porém a empresa foi vendida à Adobe).

Além de uso em navegadores processando páginas HTML dinâmicas, o JavaScript é hoje usado também na construção do navegador Mozilla, o qual oferece para a criação de sistemas GUI todo um conjunto de ferramentas (em sua versão normal como navegador, sem a necessidade de nenhum software adicional), que incluem (e não apenas) um interpretador de Javascript, um comunicador Javascript <-> C++ e um interpretador de XUL, linguagem criada para definir a interface gráfica de aplicações.

O uso de JavaScript em páginas XHTML, pelo padrão W3C, deve ser informado ao navegador da seguinte forma:




Fonte: Wikipedia
Acesso em 15-09-2007

segunda-feira, 20 de agosto de 2007

Exercício XML Schema Receita

<--! Exercício XML Schema Receita>

<? XML version="1.0" encoding="iso-8859-1" ?>
<xs:schema xmlns:xs="www.w3c.org/2001/xmlschema" >
<xs:element name="receita">
<xs:complexType>
<xs:attribute name="codigo" type="xs:positiveInteger">
<xs:sequence>
<xs:element name="nome" type="xs:String" />
<xs:element name="ingredientes">
<xs:complexType>
<xs:sequence>
<xs:element name="ingrediente" type="xs:String" maxOccurs="unbounded"/>
<xs:complexType>
<xs:sequence>
<xs:attribute name="quantidade" type="xs:positiveInteger">
<xs:attribute name="unidade" type="xs:String">
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="preparo">
<xs:complexType>
<xs:sequence>
<xs:element name="passo" type="xs:String" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="rendimento">
<xs:complexType>
<xs:sequence>
<xs:attribute name="quantidade" type="xs:positiveInteger">
<xs:attribute name="unidade" type="xs:String">
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>

sábado, 18 de agosto de 2007

http://twi.freehostia.com/

Este é mais um site que eu criei, com o objetivo de estudar mais os recursos disponíveis para programação web.

http://twi.freehostia.com/

quinta-feira, 16 de agosto de 2007

Estudo Dirigido sobre XML

Estudo Dirigido


1-)O que é RSS?
RSS é um subconjunto de "dialetos" XML que servem para agregar conteúdo ou "Web syndication" podendo ser acedido mediante programas/sites agregadores. É usado principalmente em sites de notícias e blogs.



2-)O que é Atom?
Atom é o nome dado a um estilo baseado em conteúdo XML e meta data, ou seja, é um protocolo ao nível da aplicação para publicar
e editar Fontes web que são periodicamente atualizadas, como por exemplo Blogs. Os feeds devem ser formados em formato XML e são
identificados como application/atom+xml media type.
O funcionamento deles não difere das Markup Languages tradicionais, com cabeçalhos, títulos e corpo como no HTML 4.0.


3-)Se o RSS e o Atom têm o mesmo objetivo, por que são diferentes?
após a finalização do grupo de estudos do RSS da Netscape duas organizações continuaram o desenvolvimento separadamente, o que originou duas versões diferentes. A especificação Atom (RFC-4287) é a única publicada por um orgão normatizador, no caso a IETF. Resumindo arquivos Feeds são listas de atualização de conteúdo de um determinado site, escritos com especificações baseadas em XML.



4-)Como os dados em RSS e Atom são usados?
Com um programa chamado agregador de Feeds, você recebe as atualizações dos sites escolhidos sem ter que visitá-los.
Pode-se utilizar o código do RSS ou Atom para divulgar informação de vários web sites numa só página web. O Firefox 2.0 e o Internet Explorer 7 também lêem Feeds.



5-)Quais os principais elementos (de dados) desses padrões? Explique-os.
(mínimo 3 e máximo 6)
Título - Título do notícia/ mensagem
Autor - Quem criou a notícia/informação
Conteúdo - A informação propriamente dita
Data - Data de publicação da fonte

6-)O que são agregadores? Cite Exemplos.
Um agregador é um tipo de software para inscrever-se a canais de informação em (RSS, Atom e outros formatos derivados de XML/RDF). O agregador reconhece e organiza as informações que são vistas de forma final pelo usuário. Esta tecnologia permite a distribuição/recebimento de conteúdo (texto, som, vídeo) sem a necessidade de acessar um website para poder recebê-lo. Por exemplo, o iTunes, player de música da Apple, a partir de sua versão, 4.9 - o menu Podcast,
no qual você pode inserir arquivos XML que direcionarão seu agregador até a distribuição de notícias de um portal especificado, ou o podcast de uma rádio.
Ex:
Google Desktop
Akregator
FeedReader
Active Web Reader
Pluck RSS Reader



7-)Quais sites/páginas você consultou para este trabalho?
Fontes: Wikipedia
Guia do Hardware

quinta-feira, 9 de agosto de 2007

Exemplo arquivo XML

< ?xml version="1.0" encoding="UTF-8"?> < Addresses>< Address>< Type>Rua </Type>< ThoroughfareName>Rio de janeiro </ThoroughfareName>< BuildingNumber>2000 </BuildingNumber> < BuildingName>Ed. Campos </BuildingName> < Complement>307 </Complement> < Neighborhood>Centro </Neighborhood> < City>Belo Horizonte </City> <State>MG </State> < Country>Brasil </Country> < PostalCode>31450-120 </PostalCode> </Address> </Addresses>

Bem Vindo!

Bem vindos ao meu blog de Tecnologias Web!
Este é o primeiro de uma série de muitos posts...
No próximo post verás a estrutura genérica de um arquivo XML.
Volte sempre!