SlideShare a Scribd company logo
1 of 76
Download to read offline
¿Quienes Somos en
    Internet ?
  Joaquín Salvachua, Juan Quemada
data portability
     Es una idea.
DataPortability

• Es la implementación de la idea.

• Necesidad de adhesiones para incrementar
  los trabajos que podemos realizar.
Organización

• Grupos abiertos de trabajo.
 • Google groups
• Comunicación chat via Skype
    ( persistencia)
•
Azar o Necesidad
Identidad
• Anteriormente centradas en
  corporaciones.


• Transmitimos este modelo a Internet.

• Los usuarios NO son empleados.
Esquemas centrados en
      el usuario
¿Como hacerlo?
Web Semántica y
     SOA
  Soluciones a los problemas.
No ha triunfado
Las mismas ideas:
  Web Semántica
       SOA

Implementación KISS
Microformatos
 La web semántica de pobres
REST
Uso de semántica de HTTP
Funciona
Organización
DataPortability
OpenId

• Identidad centrada en usuario.
• Soy mi url.

• Evito registros repetidos.
Características Open-Id

• Sistema descentralizado: Eliges quien deseas
  que gestione tu identidad.
• Tu identidad es un URL
• http://jsalvachua.myopenid.com
• Permite un SSO con diferentes organizaciones
  de forma flexible.
RSS / ATOM
 ATOM-PP
OPML


• Blogrolls
• Listas de lectura.
FoaF
SIOC
APML
Microformatos

• Hcard
• Hcalendar
• Hfn
• XOXO
Web Semántica
  Semántica: “Estudio del significado de las palabras”
     Sintaxis: “Estudio de las reglas de composición de las palabras”

  La información Web accesible esta mayoritariamente
  en (X)HTML
     (X)HTML no puede ser procesado fácilmente por programas
        (X)HTML está pensado para personas
        Un programa no es capaz de deducir el significado de una página Web
        a partir del código (X)HTML


  La Web Semántica
     Iniciativa para facilitar la deducción automática del significado
      de los contenidos Web
        Añadiendo meta-datos a las páginas Web
           Que definan su significado y sus propiedades
Web Semántica o Microformatos
  W3C: World Wide Web Consortium
     Esta definiendo lenguajes “semánticos”
        RDF (Resource Description Framework)
           Para describir propiedades semánticas de recursos Web

        OWL: Web Ontology Language
           Para describir significado y propiedades semánticas de recursos Web

        …..
     Son lenguajes de bastante complejidad

  Microformatos
     Conjunto de meta-datos sencillos y abiertos
        Descritos en (X)HTML semántico
           Basados en normas ampliamente adoptadas en Internet
Microformatos
  Mantenidos por un grupo de usuarios
     Definidos en: http://microformats.org/
     Aparecen relacionadas con el mundo de los blogs
     Se crean a medida que se necesitan


  Ejemplos
     hCard: Tarjeta de visita basada en vCard (RFC2426)
     hCalendar: Datos de reunión basada en iCalendar (RFC2445)
     Geo y Adr: posición y dirección
     XFN: Redes sociales de conocidos
     Rel-licence: licencia de publicación
     Rel-tag: índice de clasificación (tag)
     XMDP: XHTML Meta Data Profiles
     …
Microformatos: características
 Diseñados para personas primero, maquinas después


 Diseñados para resolver problemas concretos


 Diseños iniciales lo mas sencillos posibles

 Modulares e insertables


 Reusando partes de normas ampliamente aceptadas


 Permitiendo y promoviendo desarrollos, contenidos y servicios
 descentralizados
Microformatos: beneficios
  Código (X)HTML mas eficiente y mantenible
  Permiten indexación y agregación de micro-contenidos
     Búsquedas mas eficaces (Google, Yahoo, Technorati, …)
     Agregación de recomendaciones, tags, … dispersos
  Interoperabilidad entre contenidos Web y aplicaciones
     Por ejemplo: Outlook, Agendas, Calendarios, ....
        Ejemplo basado en Firefox add-on:
             https://addons.mozilla.org/es-ES/firefox/addon/4106
Marcado (X)HTML semántico
  Semántica: “Estudio del significado de las palabras”
     Sintaxis: “Estudio de las reglas de composición de las palabras”
     Visualización: “Presentación visual de la información”

  Marcado (X)HTML semántico
     Marcado que define la estructura de un documento
        Definiendo el formato de visualización de forma independiente
             Por ejemplo, CSS (Cascading Style Sheets)


  (X)HTML semántico
     Utiliza marcas estructurales existentes siempre que sea posible
        Headings (<h1,..>), Lists (<ul>, <ol>, ..), Paragraphs (<p>), Citation (<cite>, <q>,
        <blockquote>,..), Abbreviations (<abbr>), ….
     Cuando no es posible, se extiende (X)HTML utilizando
        Marca genérica de bloque <div> o de linea (inline) <span>
        Con atributos de clase “class”, identificador “id” o de relación “rel” o “rev”
Marcas y Atributos más usados
 Marcas
  <div>: define un bloque
  <span>: define un elemento de un bloque
  <abbr>: define una abreviatura
  <p>: párrafo
  <ul>, <ol>, <li>: listas itemizadas u ordenadas
  <a>: define un enlace en el cuerpo visible (body)
  <link>: define un enlace en la cabecera (head)

 Atributos: definen la semántica
   Atributo “class”: clase asociada a la marca
   Atributo “id”: identificador único en el fichero
   Atributo “rel”: relación con la página enlazada
   Atributo “rev”: relación inversa con página enlazada
Ejemplo: vCard y hCard
   hCard: Microformato para definir contactos y tarjeta de visita
   basados en vCard (RFC2426)
       Generador de hCard: http://microformats.org/code/hcard/creator

 Ejemplo de hCard:

 <div id=quot;hcard-Juan-Quemadaquot; class=quot;vcardquot;>
   <span class=quot;fnquot;>Juan Quemada</span>
   <div class=quot;orgquot;>UPM</div>
   <a class=quot;emailquot;
            href=quot;mailto:jquemada@dit.upm.esquot;>jquemada@dit.upm.es</a>
   <div class=quot;telquot;>+34 91 336 7331</div>
   <p style=quot;font-size:smaller;quot;>This
       <a href=quot;http://microformats.org/wiki/hcardquot;>hCard</a> created with the
       <a href=quot;http://microformats.org/code/hcard/creatorquot;> hCard creator</a>.
   </p>
 </div>
Ejemplo: iCalendar y hCalendar
   hCalendar: Microformato para definir eventos y citas basados en vCard iCalendar
   (RFC2445)
       Generador de hCalendar: http://microformats.org/code/hcalendar/creator

Ejemplo de iCalendar:
BEGIN:VCALENDAR
PRODID:-//XYZproduct//EN
VERSION:2.0
BEGIN:VEVENT
URL:http://www.web2con.com/
DTSTART:20071005
DTEND:20071020
SUMMARY:Web 2.0 Conference
LOCATION:Argent Hotel, San Francisco, CA
END:VEVENT
END:VCALENDAR


Ejemplo de hCalendar:
<div class=quot;veventquot;>
  <a class=quot;urlquot; href=quot;http://www.web2con.com/quot;>http://www.web2con.com/</a>
  <span class=quot;summaryquot;>Web 2.0 Conference</span>:
  <abbr class=quot;dtstartquot; title=quot;2007-10-05quot;>October 5</abbr>-
  <abbr class=quot;dtendquot; title=quot;2007-10-20quot;>19</abbr>, at the
  <span class=quot;locationquot;>Argent Hotel, San Francisco, CA</span>
</div>
Relaciones
 Los atributos “rel” y “rev” se utilizan para definir relaciones,
   por ejemplo

 Microformato “rel-tag”: definición de índices (tags) de una página.
    El URL se utiliza para permitir búsquedas adicionales de dicho
    índice.
 <a rel=“tagquot; href=“http://technorati.com/tag/css“>CSS</a>

 Microformato “rel-license”: definición de licencia (URL) bajo la que
    se publica una página.
 <a rel=“licensequot; href=“http://creativecommons.org/licenses/by/
    2.5/“>
  This doc is published under …..</a>
Ejercicio aplicación-4
Cambiar el código CSS para que la configuración del
ejemplo de página Web con 2 columnas se visualice de la
siguiente forma
    Los colores de fondo sean en tonos verdosos
    El ancho de la página sea de 500 puntos
Añadir estos microformatos en el pie de página
    los índices “CSS” y “W3C” como “rel-tag”
    La licencia (“rel-license”) identificada por el URL:
       http://creativecommons.org/licenses/by/2.5/
Visualizar la página con Firefox y el add-on “Operator”
que reconoce microformatos para validar que los
reconoce correctamente
    Operator: https://addons.mozilla.org/es-ES/firefox/addon/4106
¿Para que necesito a
    data portability?
• Marco que permita identificar a los
  usuarios que se implementan dichos
  estándares.


• Ayudar a la implantación.
• ¿Están muertas otras formas de
  estandarización?
¿Porque colaborar?

• Organización abierta.

• Investigación de lagunas en los distintos
  casos.
Contribuciones

• Ayudando a la traducción.
• WAKAME


• RoR plugging
¿Quereis uniros?
Coste de la calidad de la
      experiencia
SPAIN IS DIFFERENT
REST
Web humana y Web programable
 Web humana
    Visor Web, HTTP y HTML
      HTML: diseñado para leer documentos
          A evolucionado hacia CSS, XML, XHTML, …


 Web programable
    API, HTTP/SOAP, XML y ………
      XML: Datos procesables por programa
    Fuerte debate entre
      REST: utilizado en los servicios reales
      “Big” Web Services: propuesto por W3C
          A medio desarrollar
Servicios o Recursos
 “Big” Web Services (W3C)
    SOA: Arquitectura orientada a servicios
      APIs de Servicio de acceso a objetos remotos tipo RMI
           RMI: Remote Method Invocation


 RESTful Web Services
    ROA: Arquitectura Orientada a Recursos
      Interfaces Uniformes (métodos HTTP)
           APIs de acceso y gestión de recursos Web
              Los recursos se representan en XML, XHTML, JSON, ..
Que es REST
REpresentational StateTransfer.

Arquitectura de aplicaciones Web
    Propuesta por Roy Fielding en su tesis doctoral (2000)
       http://www.ics.uci.edu/~fielding/pubs/dissertation/top.htm

    Co-diseñador de HTTP y uno de los principales desarrolladores del
     proyecto Apache

Arquitectura desacoplada y escalable
Rest y HTTP
REST es una abstracción que puede implementarse
sobre cualquier protocolo.

 La mejor forma de implementarlo es sobre HTTP.

 Perfectamente adaptado a HTTP
    Principal diferencia con SOAP
Principios sobre REST
 Recursos Identificables (Addressability)
    Cualquier recurso de Internet posee un URI/URL

 Interfaz de acceso uniforme
    Buen uso de HTTP

 Comunicación sin estado (Statelessness)
    Servidores escables

 Representación de los recursos
    En formatos abiertos

 Hypermedia (Connectedness)
    Navegación basada en enlaces entre recursos
Identificador de
                   recursos
Recurso: cualquier cosa en Internet que “merezca la pena ser
referenciada pos si misma”

   Un fichero, un mapa, un usuario, un libro, un coche, …

Cada recurso se identifica con un URI

   El URI (Permalink) da acceso al recurso

Cada URI añade valor a la red.
Ejemplo: Amazon S3
Servicio de almacenamiento de objetos.

Tiene 3 tipos de recursos:

1. Bucket-list: conjunto de buckets* de un usuario
         https://s3.amazonaws.com/
2. Bucket en particular: repositorio de objetos
        https://s3.amazonaws.com/{Bucket}/
3. Objeto: posee metadato y valor
        https://s3.amazonaws.com/{Bucket}/{Objeto}


 *Bucket: disco o repositorio virtual accesible a través de HTTP
Interfaz uniforme
 Gestionar recursos solo con métodos HTTP:
    GET (leer, copia solo lectura)
    HEAD (cabecera)
    PUT (crear)
    POST (añadir)
    DELETE (eliminar)

 Es el interfaz CRUD: Create, Read, Update, Delete

 Posibilidad de hacer uso extensivo de
    Cabeceras y códigos de respuesta de HTTP

 Posibilidad de optimizar mediante el uso de caches.
Amazon S3: Interfaz Uniforme
             GET           HEAD         PUT           DELETE
Bucket-list Lista los
             buckets de
             un usuario

Bucket       Lista los                  Crear bucket Borrar bucket
             objetos del
             bucket

Objeto       Obtener valor Obtener      Crear y/o     Borrar Objeto
             y metadato    metadato del Asignar valor
             del objeto    objeto       a objeto y
                                        metadato
Representación de los recursos
 Que es lo que obtenemos al acceder al URI del recurso?
    Una representación “bien conocida” y “abierta”


 Pueden utilizar varios formatos:
    HTML, XHTML, XML, JSON, PDF, FLASH, FLEX, ...


 HTTP nos facilita el tipo (MiME) y permite negociar el
 formato.
    Habitualmente es XML.
Comunicación sin estado
El servidor NO mantiene el estado de la conversación
con cada cliente.

El estado esta explicito en las llamadas.
    Cada estado se representa con una URI

Incrementa exponencialmente la escalabilidad.

Enfoque dispara y olvida (“fire and forget”).
Muy bajo acoplamiento
Ejemplos
 Ejemplo stateful:
    FTP
       Existe un directorio implicito de trabajo
    HTTP stateful
       URI relativo: dependencia entre accesos consecutivos


 Ejemplo statelessness:
    HTTP con URLs absolutas
    ATOM-PP y ATOM
    Google Maps, Amazon S3, del.icio.us, …
Hypermedia
Las transiciones entre estados
    Son siempre a través de enlaces
      No hay que acordarse de los comandos de memoria

Usar un servicio:
    similar a navegar por la Web

El servidor contiene la definición del servicio
  Proporciona los enlaces como parte del recurso
  El cliente es genérico


Modelo distribuido de fácil evolución.
Web humana y Web programable
 Un servicio REST bien diseñado
    También puede ser utilizado con un visor Web
      Los recursos se presentan en el visor
           Con CSS, XSLT, …..
      Se usa navegando
           haciendo click sobre las operaciones (enlaces)


 Existe un problema con XHTML4
  Los formularios solo soportan GET, POST
  Quiza se solucione en XHTML5
Aplicación Web
 Aplicación capaz de viajar por la red
  Reside en un servidor
  Se ejecuta en el cliente

      Normalmente se invoca automáticamente al cargar la pagina
       HTML que la contiene
 La aplicación debe ser segura
    Se suele ejecutar sobre un gestor de seguridad que
     evita acciones peligrosas para el cliente
 Ejemplos:
  Applets Java (los primeros)
  AJAX (Asynchronous Javascript and XML)

  Widgets
REST y AJAX


El despliegue AJAX de un servicio REST

   Son clientes en Javascript

      que invocan el servicio con el interfaz uniforme
Aplicaciones Web
     frente a
•   Necesidad de Instalar un programa.

•   Problemas de las actualizaciones




•
Widgets - Gadgets
Conclusiones
 ROA: Resource Oriented Architecture
    REST es el protocolo para la arquitectura del mayor
     sistema distribuido del mundo (la web).

 Mayor adopción
    Adoptado casi unánimemente en el Web2.0
      Google, del.icio.us, Amazon, Yahoo, ….
    Las normas de “Big” Web Services están todavía
     incompletas
      RoR a discontinuado el soporte a “Big WS”

More Related Content

Viewers also liked

Seis caminhos que nos levam às tentações
Seis caminhos que nos levam às tentaçõesSeis caminhos que nos levam às tentações
Seis caminhos que nos levam às tentaçõesLuciano Garcia de Sousa
 
Monografia Jairlândia Pedagogia 2011
Monografia Jairlândia Pedagogia 2011Monografia Jairlândia Pedagogia 2011
Monografia Jairlândia Pedagogia 2011Biblioteca Campus VII
 
Una mente, dos_cerebros
Una mente, dos_cerebrosUna mente, dos_cerebros
Una mente, dos_cerebroshuertotucu
 
Caderno atencao basica15
Caderno atencao basica15Caderno atencao basica15
Caderno atencao basica15ecilme
 
My vegan wedding by Vegetarianos Magazine in Brazil
My vegan wedding by Vegetarianos Magazine in BrazilMy vegan wedding by Vegetarianos Magazine in Brazil
My vegan wedding by Vegetarianos Magazine in BrazilThaisa Fernandes
 
Jingding aluminum Carports models
Jingding aluminum  Carports modelsJingding aluminum  Carports models
Jingding aluminum Carports modelsMichael Fang
 
Slides julislene
Slides   julisleneSlides   julislene
Slides julislenejulislene
 
T39 tcc estratégia de posicionamento para um empreendimento de massas semipro...
T39 tcc estratégia de posicionamento para um empreendimento de massas semipro...T39 tcc estratégia de posicionamento para um empreendimento de massas semipro...
T39 tcc estratégia de posicionamento para um empreendimento de massas semipro...DanianaSantos
 
Práticas em web 2.0: O uso da internet como ambiente virtual de aprendizagem
Práticas em web 2.0: O uso da internet como ambiente virtual de aprendizagemPráticas em web 2.0: O uso da internet como ambiente virtual de aprendizagem
Práticas em web 2.0: O uso da internet como ambiente virtual de aprendizagemtassianeviana
 
019 acreditar-e-agir-novo
019 acreditar-e-agir-novo019 acreditar-e-agir-novo
019 acreditar-e-agir-novoleneviana
 

Viewers also liked (15)

Projecte volcans 6 b grup 3
Projecte volcans 6 b grup 3Projecte volcans 6 b grup 3
Projecte volcans 6 b grup 3
 
Pole dance
Pole dancePole dance
Pole dance
 
Seis caminhos que nos levam às tentações
Seis caminhos que nos levam às tentaçõesSeis caminhos que nos levam às tentações
Seis caminhos que nos levam às tentações
 
Monografia Jairlândia Pedagogia 2011
Monografia Jairlândia Pedagogia 2011Monografia Jairlândia Pedagogia 2011
Monografia Jairlândia Pedagogia 2011
 
Una mente, dos_cerebros
Una mente, dos_cerebrosUna mente, dos_cerebros
Una mente, dos_cerebros
 
Christina Henry Resume
Christina Henry ResumeChristina Henry Resume
Christina Henry Resume
 
Caderno atencao basica15
Caderno atencao basica15Caderno atencao basica15
Caderno atencao basica15
 
My vegan wedding by Vegetarianos Magazine in Brazil
My vegan wedding by Vegetarianos Magazine in BrazilMy vegan wedding by Vegetarianos Magazine in Brazil
My vegan wedding by Vegetarianos Magazine in Brazil
 
Jingding aluminum Carports models
Jingding aluminum  Carports modelsJingding aluminum  Carports models
Jingding aluminum Carports models
 
Slides julislene
Slides   julisleneSlides   julislene
Slides julislene
 
T39 tcc estratégia de posicionamento para um empreendimento de massas semipro...
T39 tcc estratégia de posicionamento para um empreendimento de massas semipro...T39 tcc estratégia de posicionamento para um empreendimento de massas semipro...
T39 tcc estratégia de posicionamento para um empreendimento de massas semipro...
 
Apresentação1
Apresentação1Apresentação1
Apresentação1
 
Práticas em web 2.0: O uso da internet como ambiente virtual de aprendizagem
Práticas em web 2.0: O uso da internet como ambiente virtual de aprendizagemPráticas em web 2.0: O uso da internet como ambiente virtual de aprendizagem
Práticas em web 2.0: O uso da internet como ambiente virtual de aprendizagem
 
019 acreditar-e-agir-novo
019 acreditar-e-agir-novo019 acreditar-e-agir-novo
019 acreditar-e-agir-novo
 
E moderator vs community manager
E moderator vs community managerE moderator vs community manager
E moderator vs community manager
 

Similar to Web2 Quiensomos

Desarrollo de aplicaciones con HTML5
Desarrollo de aplicaciones con HTML5 Desarrollo de aplicaciones con HTML5
Desarrollo de aplicaciones con HTML5 Gonzalo C.
 
Introdución a la web: HTTP, URL y HTML
Introdución a la web: HTTP, URL y HTMLIntrodución a la web: HTTP, URL y HTML
Introdución a la web: HTTP, URL y HTMLJoaquín Salvachúa
 
Frameworks CSS
Frameworks CSSFrameworks CSS
Frameworks CSSbetabeers
 
Introducción a los Frameworks CSS
Introducción a los Frameworks CSSIntroducción a los Frameworks CSS
Introducción a los Frameworks CSSLuis Miguel Martín
 
Aplicaciones en HTML 5: Los pilares de una Nueva Web
Aplicaciones en HTML 5: Los pilares de una Nueva WebAplicaciones en HTML 5: Los pilares de una Nueva Web
Aplicaciones en HTML 5: Los pilares de una Nueva WebGonzalo C.
 
Fundamentos del diseño web front end
Fundamentos del diseño web front endFundamentos del diseño web front end
Fundamentos del diseño web front endDavid Hurtado
 
STRUTS (MVC e Java)
STRUTS (MVC e Java)STRUTS (MVC e Java)
STRUTS (MVC e Java)ousli07
 
Presentacion Curso CSS
Presentacion Curso CSSPresentacion Curso CSS
Presentacion Curso CSSIsmael Celis
 
Mashups Aplicaciones hacia el Enterprise 2.0
Mashups Aplicaciones hacia el Enterprise 2.0Mashups Aplicaciones hacia el Enterprise 2.0
Mashups Aplicaciones hacia el Enterprise 2.0Esteban Saavedra
 
Seminario html5
Seminario html5Seminario html5
Seminario html5UDECI
 
Lecciones aprendidas creando una red social
Lecciones aprendidas creando una red socialLecciones aprendidas creando una red social
Lecciones aprendidas creando una red socialRoberto Luis Bisbé
 
12-Unidad 3: Webservices-3.3 Inicio del Proyecto
12-Unidad 3: Webservices-3.3 Inicio del Proyecto12-Unidad 3: Webservices-3.3 Inicio del Proyecto
12-Unidad 3: Webservices-3.3 Inicio del ProyectoLuis Fernando Aguas Bucheli
 
Jc Web20 Open Source Why Floss2007
Jc Web20 Open Source Why Floss2007Jc Web20 Open Source Why Floss2007
Jc Web20 Open Source Why Floss2007guest976d083
 

Similar to Web2 Quiensomos (20)

Desarrollo de aplicaciones con HTML5
Desarrollo de aplicaciones con HTML5 Desarrollo de aplicaciones con HTML5
Desarrollo de aplicaciones con HTML5
 
Introdución a la web: HTTP, URL y HTML
Introdución a la web: HTTP, URL y HTMLIntrodución a la web: HTTP, URL y HTML
Introdución a la web: HTTP, URL y HTML
 
Frameworks CSS
Frameworks CSSFrameworks CSS
Frameworks CSS
 
Introducción a los Frameworks CSS
Introducción a los Frameworks CSSIntroducción a los Frameworks CSS
Introducción a los Frameworks CSS
 
2009 09 21 Optimizacioncodigofuente V1
2009 09 21 Optimizacioncodigofuente V12009 09 21 Optimizacioncodigofuente V1
2009 09 21 Optimizacioncodigofuente V1
 
2009 09 21 Optimizacioncodigofuente V1
2009 09 21 Optimizacioncodigofuente V12009 09 21 Optimizacioncodigofuente V1
2009 09 21 Optimizacioncodigofuente V1
 
HTML5 + Asp.NET
HTML5 + Asp.NETHTML5 + Asp.NET
HTML5 + Asp.NET
 
Aplicaciones en HTML 5: Los pilares de una Nueva Web
Aplicaciones en HTML 5: Los pilares de una Nueva WebAplicaciones en HTML 5: Los pilares de una Nueva Web
Aplicaciones en HTML 5: Los pilares de una Nueva Web
 
Fundamentos del diseño web front end
Fundamentos del diseño web front endFundamentos del diseño web front end
Fundamentos del diseño web front end
 
Moviweb
MoviwebMoviweb
Moviweb
 
STRUTS (MVC e Java)
STRUTS (MVC e Java)STRUTS (MVC e Java)
STRUTS (MVC e Java)
 
Presentacion Curso CSS
Presentacion Curso CSSPresentacion Curso CSS
Presentacion Curso CSS
 
HTML5
HTML5HTML5
HTML5
 
Mashups Aplicaciones hacia el Enterprise 2.0
Mashups Aplicaciones hacia el Enterprise 2.0Mashups Aplicaciones hacia el Enterprise 2.0
Mashups Aplicaciones hacia el Enterprise 2.0
 
HTML.ppt
HTML.pptHTML.ppt
HTML.ppt
 
Html, Css y JavaScript
Html, Css y JavaScriptHtml, Css y JavaScript
Html, Css y JavaScript
 
Seminario html5
Seminario html5Seminario html5
Seminario html5
 
Lecciones aprendidas creando una red social
Lecciones aprendidas creando una red socialLecciones aprendidas creando una red social
Lecciones aprendidas creando una red social
 
12-Unidad 3: Webservices-3.3 Inicio del Proyecto
12-Unidad 3: Webservices-3.3 Inicio del Proyecto12-Unidad 3: Webservices-3.3 Inicio del Proyecto
12-Unidad 3: Webservices-3.3 Inicio del Proyecto
 
Jc Web20 Open Source Why Floss2007
Jc Web20 Open Source Why Floss2007Jc Web20 Open Source Why Floss2007
Jc Web20 Open Source Why Floss2007
 

More from Joaquín Salvachúa (20)

Eemov data
Eemov dataEemov data
Eemov data
 
Etica big data
Etica big dataEtica big data
Etica big data
 
FIWARE Data usage control
FIWARE Data usage controlFIWARE Data usage control
FIWARE Data usage control
 
Fiware overview3
Fiware overview3Fiware overview3
Fiware overview3
 
Fiware overview
Fiware overviewFiware overview
Fiware overview
 
Kubernetes2
Kubernetes2Kubernetes2
Kubernetes2
 
Introducción al ecosistema de React.js
Introducción al ecosistema de React.jsIntroducción al ecosistema de React.js
Introducción al ecosistema de React.js
 
FIWARE Identity Manager Exercises
FIWARE Identity Manager ExercisesFIWARE Identity Manager Exercises
FIWARE Identity Manager Exercises
 
FIware Identity Manager
FIware Identity ManagerFIware Identity Manager
FIware Identity Manager
 
Fi ware en Hack for good (#H4G)
Fi ware en Hack for good  (#H4G) Fi ware en Hack for good  (#H4G)
Fi ware en Hack for good (#H4G)
 
Id fiware upm-dit
Id fiware  upm-ditId fiware  upm-dit
Id fiware upm-dit
 
Vagrant
VagrantVagrant
Vagrant
 
Big data Jornada Fundación Ramón Areces
Big data Jornada Fundación Ramón ArecesBig data Jornada Fundación Ramón Areces
Big data Jornada Fundación Ramón Areces
 
Intro20 socioeconomia
Intro20 socioeconomiaIntro20 socioeconomia
Intro20 socioeconomia
 
Master w20 01
Master w20 01Master w20 01
Master w20 01
 
Blogs micro
Blogs microBlogs micro
Blogs micro
 
Social networks upm
Social networks upmSocial networks upm
Social networks upm
 
Nube redes
Nube redesNube redes
Nube redes
 
Identidad2
Identidad2Identidad2
Identidad2
 
Blogs Micro
Blogs MicroBlogs Micro
Blogs Micro
 

Recently uploaded

La tecnología y su impacto en la sociedad
La tecnología y su impacto en la sociedadLa tecnología y su impacto en la sociedad
La tecnología y su impacto en la sociedadEduardoSantiagoSegov
 
Análisis de Artefactos Tecnologicos (3) (1).pdf
Análisis de Artefactos Tecnologicos  (3) (1).pdfAnálisis de Artefactos Tecnologicos  (3) (1).pdf
Análisis de Artefactos Tecnologicos (3) (1).pdfsharitcalderon04
 
Herramientas que posibilitan la información y la investigación.pdf
Herramientas que posibilitan la información y la investigación.pdfHerramientas que posibilitan la información y la investigación.pdf
Herramientas que posibilitan la información y la investigación.pdfKarinaCambero3
 
La electricidad y la electronica.10-7.pdf
La electricidad y la electronica.10-7.pdfLa electricidad y la electronica.10-7.pdf
La electricidad y la electronica.10-7.pdfcristianrb0324
 
Agencia Marketing Branding Google Workspace Deployment Services Credential Fe...
Agencia Marketing Branding Google Workspace Deployment Services Credential Fe...Agencia Marketing Branding Google Workspace Deployment Services Credential Fe...
Agencia Marketing Branding Google Workspace Deployment Services Credential Fe...Marketing BRANDING
 
La Electricidad Y La Electrónica Trabajo Tecnología.pdf
La Electricidad Y La Electrónica Trabajo Tecnología.pdfLa Electricidad Y La Electrónica Trabajo Tecnología.pdf
La Electricidad Y La Electrónica Trabajo Tecnología.pdfjeondanny1997
 
LINEA DE TIEMPO LITERATURA DIFERENCIADO LITERATURA.pptx
LINEA DE TIEMPO LITERATURA DIFERENCIADO LITERATURA.pptxLINEA DE TIEMPO LITERATURA DIFERENCIADO LITERATURA.pptx
LINEA DE TIEMPO LITERATURA DIFERENCIADO LITERATURA.pptxkimontey
 
Trabajando con Formasy Smart art en power Point
Trabajando con Formasy Smart art en power PointTrabajando con Formasy Smart art en power Point
Trabajando con Formasy Smart art en power PointValerioIvanDePazLoja
 
Modelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptx
Modelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptxModelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptx
Modelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptxtjcesar1
 
Actividades de computación para alumnos de preescolar
Actividades de computación para alumnos de preescolarActividades de computación para alumnos de preescolar
Actividades de computación para alumnos de preescolar24roberto21
 
Slideshare y Scribd - Noli Cubillan Gerencia
Slideshare y Scribd - Noli Cubillan GerenciaSlideshare y Scribd - Noli Cubillan Gerencia
Slideshare y Scribd - Noli Cubillan Gerenciacubillannoly
 
certificado de oracle academy cetrificado.pdf
certificado de oracle academy cetrificado.pdfcertificado de oracle academy cetrificado.pdf
certificado de oracle academy cetrificado.pdfFernandoOblitasVivan
 
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptxLAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptxAlexander López
 
Inteligencia Artificial. Matheo Hernandez Serrano USCO 2024
Inteligencia Artificial. Matheo Hernandez Serrano USCO 2024Inteligencia Artificial. Matheo Hernandez Serrano USCO 2024
Inteligencia Artificial. Matheo Hernandez Serrano USCO 2024u20211198540
 
Viguetas Pretensadas en concreto armado
Viguetas Pretensadas  en concreto armadoViguetas Pretensadas  en concreto armado
Viguetas Pretensadas en concreto armadob7fwtwtfxf
 
David_Gallegos - tarea de la sesión 11.pptx
David_Gallegos - tarea de la sesión 11.pptxDavid_Gallegos - tarea de la sesión 11.pptx
David_Gallegos - tarea de la sesión 11.pptxDAVIDROBERTOGALLEGOS
 
Análisis de los artefactos (nintendo NES)
Análisis de los artefactos (nintendo NES)Análisis de los artefactos (nintendo NES)
Análisis de los artefactos (nintendo NES)JuanStevenTrujilloCh
 
Trabajo de tecnología excel avanzado.pdf
Trabajo de tecnología excel avanzado.pdfTrabajo de tecnología excel avanzado.pdf
Trabajo de tecnología excel avanzado.pdfedepmariaperez
 
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).ppt
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).pptLUXOMETRO EN SALUD OCUPACIONAL(FINAL).ppt
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).pptchaverriemily794
 

Recently uploaded (20)

La tecnología y su impacto en la sociedad
La tecnología y su impacto en la sociedadLa tecnología y su impacto en la sociedad
La tecnología y su impacto en la sociedad
 
El camino a convertirse en Microsoft MVP
El camino a convertirse en Microsoft MVPEl camino a convertirse en Microsoft MVP
El camino a convertirse en Microsoft MVP
 
Análisis de Artefactos Tecnologicos (3) (1).pdf
Análisis de Artefactos Tecnologicos  (3) (1).pdfAnálisis de Artefactos Tecnologicos  (3) (1).pdf
Análisis de Artefactos Tecnologicos (3) (1).pdf
 
Herramientas que posibilitan la información y la investigación.pdf
Herramientas que posibilitan la información y la investigación.pdfHerramientas que posibilitan la información y la investigación.pdf
Herramientas que posibilitan la información y la investigación.pdf
 
La electricidad y la electronica.10-7.pdf
La electricidad y la electronica.10-7.pdfLa electricidad y la electronica.10-7.pdf
La electricidad y la electronica.10-7.pdf
 
Agencia Marketing Branding Google Workspace Deployment Services Credential Fe...
Agencia Marketing Branding Google Workspace Deployment Services Credential Fe...Agencia Marketing Branding Google Workspace Deployment Services Credential Fe...
Agencia Marketing Branding Google Workspace Deployment Services Credential Fe...
 
La Electricidad Y La Electrónica Trabajo Tecnología.pdf
La Electricidad Y La Electrónica Trabajo Tecnología.pdfLa Electricidad Y La Electrónica Trabajo Tecnología.pdf
La Electricidad Y La Electrónica Trabajo Tecnología.pdf
 
LINEA DE TIEMPO LITERATURA DIFERENCIADO LITERATURA.pptx
LINEA DE TIEMPO LITERATURA DIFERENCIADO LITERATURA.pptxLINEA DE TIEMPO LITERATURA DIFERENCIADO LITERATURA.pptx
LINEA DE TIEMPO LITERATURA DIFERENCIADO LITERATURA.pptx
 
Trabajando con Formasy Smart art en power Point
Trabajando con Formasy Smart art en power PointTrabajando con Formasy Smart art en power Point
Trabajando con Formasy Smart art en power Point
 
Modelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptx
Modelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptxModelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptx
Modelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptx
 
Actividades de computación para alumnos de preescolar
Actividades de computación para alumnos de preescolarActividades de computación para alumnos de preescolar
Actividades de computación para alumnos de preescolar
 
Slideshare y Scribd - Noli Cubillan Gerencia
Slideshare y Scribd - Noli Cubillan GerenciaSlideshare y Scribd - Noli Cubillan Gerencia
Slideshare y Scribd - Noli Cubillan Gerencia
 
certificado de oracle academy cetrificado.pdf
certificado de oracle academy cetrificado.pdfcertificado de oracle academy cetrificado.pdf
certificado de oracle academy cetrificado.pdf
 
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptxLAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
 
Inteligencia Artificial. Matheo Hernandez Serrano USCO 2024
Inteligencia Artificial. Matheo Hernandez Serrano USCO 2024Inteligencia Artificial. Matheo Hernandez Serrano USCO 2024
Inteligencia Artificial. Matheo Hernandez Serrano USCO 2024
 
Viguetas Pretensadas en concreto armado
Viguetas Pretensadas  en concreto armadoViguetas Pretensadas  en concreto armado
Viguetas Pretensadas en concreto armado
 
David_Gallegos - tarea de la sesión 11.pptx
David_Gallegos - tarea de la sesión 11.pptxDavid_Gallegos - tarea de la sesión 11.pptx
David_Gallegos - tarea de la sesión 11.pptx
 
Análisis de los artefactos (nintendo NES)
Análisis de los artefactos (nintendo NES)Análisis de los artefactos (nintendo NES)
Análisis de los artefactos (nintendo NES)
 
Trabajo de tecnología excel avanzado.pdf
Trabajo de tecnología excel avanzado.pdfTrabajo de tecnología excel avanzado.pdf
Trabajo de tecnología excel avanzado.pdf
 
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).ppt
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).pptLUXOMETRO EN SALUD OCUPACIONAL(FINAL).ppt
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).ppt
 

Web2 Quiensomos

  • 1. ¿Quienes Somos en Internet ? Joaquín Salvachua, Juan Quemada
  • 2. data portability Es una idea.
  • 3. DataPortability • Es la implementación de la idea. • Necesidad de adhesiones para incrementar los trabajos que podemos realizar.
  • 4. Organización • Grupos abiertos de trabajo. • Google groups • Comunicación chat via Skype ( persistencia) •
  • 6. Identidad • Anteriormente centradas en corporaciones. • Transmitimos este modelo a Internet. • Los usuarios NO son empleados.
  • 9. Web Semántica y SOA Soluciones a los problemas.
  • 10.
  • 11.
  • 12.
  • 13.
  • 15.
  • 16. Las mismas ideas: Web Semántica SOA Implementación KISS
  • 17. Microformatos La web semántica de pobres
  • 22. OpenId • Identidad centrada en usuario. • Soy mi url. • Evito registros repetidos.
  • 23. Características Open-Id • Sistema descentralizado: Eliges quien deseas que gestione tu identidad. • Tu identidad es un URL • http://jsalvachua.myopenid.com • Permite un SSO con diferentes organizaciones de forma flexible.
  • 24.
  • 25.
  • 26. RSS / ATOM ATOM-PP
  • 28. FoaF
  • 29. SIOC
  • 30. APML
  • 31.
  • 33. Web Semántica Semántica: “Estudio del significado de las palabras”  Sintaxis: “Estudio de las reglas de composición de las palabras” La información Web accesible esta mayoritariamente en (X)HTML  (X)HTML no puede ser procesado fácilmente por programas  (X)HTML está pensado para personas  Un programa no es capaz de deducir el significado de una página Web a partir del código (X)HTML La Web Semántica  Iniciativa para facilitar la deducción automática del significado de los contenidos Web  Añadiendo meta-datos a las páginas Web  Que definan su significado y sus propiedades
  • 34. Web Semántica o Microformatos W3C: World Wide Web Consortium  Esta definiendo lenguajes “semánticos”  RDF (Resource Description Framework)  Para describir propiedades semánticas de recursos Web  OWL: Web Ontology Language  Para describir significado y propiedades semánticas de recursos Web  …..  Son lenguajes de bastante complejidad Microformatos  Conjunto de meta-datos sencillos y abiertos  Descritos en (X)HTML semántico  Basados en normas ampliamente adoptadas en Internet
  • 35. Microformatos Mantenidos por un grupo de usuarios  Definidos en: http://microformats.org/  Aparecen relacionadas con el mundo de los blogs  Se crean a medida que se necesitan Ejemplos  hCard: Tarjeta de visita basada en vCard (RFC2426)  hCalendar: Datos de reunión basada en iCalendar (RFC2445)  Geo y Adr: posición y dirección  XFN: Redes sociales de conocidos  Rel-licence: licencia de publicación  Rel-tag: índice de clasificación (tag)  XMDP: XHTML Meta Data Profiles  …
  • 36. Microformatos: características Diseñados para personas primero, maquinas después Diseñados para resolver problemas concretos Diseños iniciales lo mas sencillos posibles Modulares e insertables Reusando partes de normas ampliamente aceptadas Permitiendo y promoviendo desarrollos, contenidos y servicios descentralizados
  • 37. Microformatos: beneficios Código (X)HTML mas eficiente y mantenible Permiten indexación y agregación de micro-contenidos  Búsquedas mas eficaces (Google, Yahoo, Technorati, …)  Agregación de recomendaciones, tags, … dispersos Interoperabilidad entre contenidos Web y aplicaciones  Por ejemplo: Outlook, Agendas, Calendarios, ....  Ejemplo basado en Firefox add-on:  https://addons.mozilla.org/es-ES/firefox/addon/4106
  • 38. Marcado (X)HTML semántico Semántica: “Estudio del significado de las palabras”  Sintaxis: “Estudio de las reglas de composición de las palabras”  Visualización: “Presentación visual de la información” Marcado (X)HTML semántico  Marcado que define la estructura de un documento  Definiendo el formato de visualización de forma independiente  Por ejemplo, CSS (Cascading Style Sheets) (X)HTML semántico  Utiliza marcas estructurales existentes siempre que sea posible  Headings (<h1,..>), Lists (<ul>, <ol>, ..), Paragraphs (<p>), Citation (<cite>, <q>, <blockquote>,..), Abbreviations (<abbr>), ….  Cuando no es posible, se extiende (X)HTML utilizando  Marca genérica de bloque <div> o de linea (inline) <span>  Con atributos de clase “class”, identificador “id” o de relación “rel” o “rev”
  • 39. Marcas y Atributos más usados Marcas <div>: define un bloque <span>: define un elemento de un bloque <abbr>: define una abreviatura <p>: párrafo <ul>, <ol>, <li>: listas itemizadas u ordenadas <a>: define un enlace en el cuerpo visible (body) <link>: define un enlace en la cabecera (head) Atributos: definen la semántica Atributo “class”: clase asociada a la marca Atributo “id”: identificador único en el fichero Atributo “rel”: relación con la página enlazada Atributo “rev”: relación inversa con página enlazada
  • 40. Ejemplo: vCard y hCard hCard: Microformato para definir contactos y tarjeta de visita basados en vCard (RFC2426)  Generador de hCard: http://microformats.org/code/hcard/creator Ejemplo de hCard: <div id=quot;hcard-Juan-Quemadaquot; class=quot;vcardquot;> <span class=quot;fnquot;>Juan Quemada</span> <div class=quot;orgquot;>UPM</div> <a class=quot;emailquot; href=quot;mailto:jquemada@dit.upm.esquot;>jquemada@dit.upm.es</a> <div class=quot;telquot;>+34 91 336 7331</div> <p style=quot;font-size:smaller;quot;>This <a href=quot;http://microformats.org/wiki/hcardquot;>hCard</a> created with the <a href=quot;http://microformats.org/code/hcard/creatorquot;> hCard creator</a>. </p> </div>
  • 41. Ejemplo: iCalendar y hCalendar hCalendar: Microformato para definir eventos y citas basados en vCard iCalendar (RFC2445)  Generador de hCalendar: http://microformats.org/code/hcalendar/creator Ejemplo de iCalendar: BEGIN:VCALENDAR PRODID:-//XYZproduct//EN VERSION:2.0 BEGIN:VEVENT URL:http://www.web2con.com/ DTSTART:20071005 DTEND:20071020 SUMMARY:Web 2.0 Conference LOCATION:Argent Hotel, San Francisco, CA END:VEVENT END:VCALENDAR Ejemplo de hCalendar: <div class=quot;veventquot;> <a class=quot;urlquot; href=quot;http://www.web2con.com/quot;>http://www.web2con.com/</a> <span class=quot;summaryquot;>Web 2.0 Conference</span>: <abbr class=quot;dtstartquot; title=quot;2007-10-05quot;>October 5</abbr>- <abbr class=quot;dtendquot; title=quot;2007-10-20quot;>19</abbr>, at the <span class=quot;locationquot;>Argent Hotel, San Francisco, CA</span> </div>
  • 42. Relaciones Los atributos “rel” y “rev” se utilizan para definir relaciones, por ejemplo Microformato “rel-tag”: definición de índices (tags) de una página. El URL se utiliza para permitir búsquedas adicionales de dicho índice. <a rel=“tagquot; href=“http://technorati.com/tag/css“>CSS</a> Microformato “rel-license”: definición de licencia (URL) bajo la que se publica una página. <a rel=“licensequot; href=“http://creativecommons.org/licenses/by/ 2.5/“> This doc is published under …..</a>
  • 43. Ejercicio aplicación-4 Cambiar el código CSS para que la configuración del ejemplo de página Web con 2 columnas se visualice de la siguiente forma  Los colores de fondo sean en tonos verdosos  El ancho de la página sea de 500 puntos Añadir estos microformatos en el pie de página  los índices “CSS” y “W3C” como “rel-tag”  La licencia (“rel-license”) identificada por el URL:  http://creativecommons.org/licenses/by/2.5/ Visualizar la página con Firefox y el add-on “Operator” que reconoce microformatos para validar que los reconoce correctamente  Operator: https://addons.mozilla.org/es-ES/firefox/addon/4106
  • 44. ¿Para que necesito a data portability? • Marco que permita identificar a los usuarios que se implementan dichos estándares. • Ayudar a la implantación. • ¿Están muertas otras formas de estandarización?
  • 45. ¿Porque colaborar? • Organización abierta. • Investigación de lagunas en los distintos casos.
  • 46. Contribuciones • Ayudando a la traducción. • WAKAME • RoR plugging
  • 48.
  • 49.
  • 50.
  • 51.
  • 52. Coste de la calidad de la experiencia
  • 53.
  • 54.
  • 56. REST
  • 57. Web humana y Web programable Web humana  Visor Web, HTTP y HTML  HTML: diseñado para leer documentos  A evolucionado hacia CSS, XML, XHTML, … Web programable  API, HTTP/SOAP, XML y ………  XML: Datos procesables por programa  Fuerte debate entre  REST: utilizado en los servicios reales  “Big” Web Services: propuesto por W3C  A medio desarrollar
  • 58.
  • 59. Servicios o Recursos “Big” Web Services (W3C)  SOA: Arquitectura orientada a servicios  APIs de Servicio de acceso a objetos remotos tipo RMI  RMI: Remote Method Invocation RESTful Web Services  ROA: Arquitectura Orientada a Recursos  Interfaces Uniformes (métodos HTTP)  APIs de acceso y gestión de recursos Web  Los recursos se representan en XML, XHTML, JSON, ..
  • 60. Que es REST REpresentational StateTransfer. Arquitectura de aplicaciones Web  Propuesta por Roy Fielding en su tesis doctoral (2000)  http://www.ics.uci.edu/~fielding/pubs/dissertation/top.htm  Co-diseñador de HTTP y uno de los principales desarrolladores del proyecto Apache Arquitectura desacoplada y escalable
  • 61. Rest y HTTP REST es una abstracción que puede implementarse sobre cualquier protocolo. La mejor forma de implementarlo es sobre HTTP. Perfectamente adaptado a HTTP  Principal diferencia con SOAP
  • 62. Principios sobre REST Recursos Identificables (Addressability)  Cualquier recurso de Internet posee un URI/URL Interfaz de acceso uniforme  Buen uso de HTTP Comunicación sin estado (Statelessness)  Servidores escables Representación de los recursos  En formatos abiertos Hypermedia (Connectedness)  Navegación basada en enlaces entre recursos
  • 63. Identificador de recursos Recurso: cualquier cosa en Internet que “merezca la pena ser referenciada pos si misma”  Un fichero, un mapa, un usuario, un libro, un coche, … Cada recurso se identifica con un URI  El URI (Permalink) da acceso al recurso Cada URI añade valor a la red.
  • 64. Ejemplo: Amazon S3 Servicio de almacenamiento de objetos. Tiene 3 tipos de recursos: 1. Bucket-list: conjunto de buckets* de un usuario https://s3.amazonaws.com/ 2. Bucket en particular: repositorio de objetos https://s3.amazonaws.com/{Bucket}/ 3. Objeto: posee metadato y valor https://s3.amazonaws.com/{Bucket}/{Objeto} *Bucket: disco o repositorio virtual accesible a través de HTTP
  • 65. Interfaz uniforme Gestionar recursos solo con métodos HTTP:  GET (leer, copia solo lectura)  HEAD (cabecera)  PUT (crear)  POST (añadir)  DELETE (eliminar) Es el interfaz CRUD: Create, Read, Update, Delete Posibilidad de hacer uso extensivo de  Cabeceras y códigos de respuesta de HTTP Posibilidad de optimizar mediante el uso de caches.
  • 66. Amazon S3: Interfaz Uniforme GET HEAD PUT DELETE Bucket-list Lista los buckets de un usuario Bucket Lista los Crear bucket Borrar bucket objetos del bucket Objeto Obtener valor Obtener Crear y/o Borrar Objeto y metadato metadato del Asignar valor del objeto objeto a objeto y metadato
  • 67. Representación de los recursos Que es lo que obtenemos al acceder al URI del recurso?  Una representación “bien conocida” y “abierta” Pueden utilizar varios formatos:  HTML, XHTML, XML, JSON, PDF, FLASH, FLEX, ... HTTP nos facilita el tipo (MiME) y permite negociar el formato.  Habitualmente es XML.
  • 68. Comunicación sin estado El servidor NO mantiene el estado de la conversación con cada cliente. El estado esta explicito en las llamadas.  Cada estado se representa con una URI Incrementa exponencialmente la escalabilidad. Enfoque dispara y olvida (“fire and forget”). Muy bajo acoplamiento
  • 69. Ejemplos Ejemplo stateful:  FTP  Existe un directorio implicito de trabajo  HTTP stateful  URI relativo: dependencia entre accesos consecutivos Ejemplo statelessness:  HTTP con URLs absolutas  ATOM-PP y ATOM  Google Maps, Amazon S3, del.icio.us, …
  • 70. Hypermedia Las transiciones entre estados  Son siempre a través de enlaces  No hay que acordarse de los comandos de memoria Usar un servicio:  similar a navegar por la Web El servidor contiene la definición del servicio  Proporciona los enlaces como parte del recurso  El cliente es genérico Modelo distribuido de fácil evolución.
  • 71. Web humana y Web programable Un servicio REST bien diseñado  También puede ser utilizado con un visor Web  Los recursos se presentan en el visor  Con CSS, XSLT, …..  Se usa navegando  haciendo click sobre las operaciones (enlaces) Existe un problema con XHTML4  Los formularios solo soportan GET, POST  Quiza se solucione en XHTML5
  • 72. Aplicación Web Aplicación capaz de viajar por la red  Reside en un servidor  Se ejecuta en el cliente  Normalmente se invoca automáticamente al cargar la pagina HTML que la contiene La aplicación debe ser segura  Se suele ejecutar sobre un gestor de seguridad que evita acciones peligrosas para el cliente Ejemplos:  Applets Java (los primeros)  AJAX (Asynchronous Javascript and XML)  Widgets
  • 73. REST y AJAX El despliegue AJAX de un servicio REST  Son clientes en Javascript  que invocan el servicio con el interfaz uniforme
  • 74. Aplicaciones Web frente a • Necesidad de Instalar un programa. • Problemas de las actualizaciones •
  • 76. Conclusiones ROA: Resource Oriented Architecture  REST es el protocolo para la arquitectura del mayor sistema distribuido del mundo (la web). Mayor adopción  Adoptado casi unánimemente en el Web2.0  Google, del.icio.us, Amazon, Yahoo, ….  Las normas de “Big” Web Services están todavía incompletas  RoR a discontinuado el soporte a “Big WS”