Tag Archives: w3c

Cómo recuperar la web

Por Manuel G. Noriega

Jeremy Keith es un tío listo. Gracias en parte a su dominio de la programación en Javascript, ha podido crear Adactio Elsewhere, dónde recopila fotos, enlaces y eventos en su propio nudo central de información. La tarea de Jeremy se ha visto enormemente facilitada por cosas como la proliferación de las tecnologías de sindicación de contenidos y de APIs, un mecanismo fácil de recuperar información, en los distintos servicios web.

Con esfuerzos como este vamos llegando a lo que se llama la Web 2.0, un pasito más hacia las promesas de la web semántica. Antes la web estaba hecho de “sitios”, que “visitabamos”, hacia donde “navegábamos”. Ahora, la web va cada vez más hacia una serie de servicios. Antes queriamos sitios y llegabamos a ellos a traves de los navegadores. Ahora queremos información y llegamos a ella a través de los sitios. El sitio ha pasado de ser el recurso a ser el interfaz.


Read more »

Tags:

Consultas XPath desde la línea de comandos

Existe una aplicación llamada

xmlstarlet

que permite hacer consultas XPath a archivos XML.

Supongamos el siguiente archivo XML, al cual llamaremos libro.xml:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
<xml version="1.0" encoding="UTF-8">

<libro>

<titulo>Patas arriba<titulo>
<autor>Eduardo Galeano</autor>

<capitulo num="1" titulo="La escuela del mundo al revés">
    <seccion num="1" titulo="Educando con el ejemplo">
        <parrafo destacado="si">La escuela del mundo al revés es la más democrática de las instituciones educativas.</parrafo>

        <parrafo>El mundo al revés premia al revés.</parrafo>
    </seccion>

    <seccion num="2" titulo="Los alumnos">
        <parrafo destacado="si">Día tras día, se niega a los niños el derecho de ser niños.</parrafo>
      <parrafo>En el océano del desamparo, se alzan las islas del privilegio.</parrafo>
    </seccion>
</capitulo>

<capitulo num="2" titulo="Cátedras del miedo">
    <seccion num="1" titulo="La enseñanza del miedo">
        <parrafo destacado="si">En un mundo que prefiere la seguridad a la justicia, hay cada vez más gente que aplaude el sacrificio de la justicia en los altares de la seguridad.</parrafo>
        <parrafo>A mediados de 1982, ocurrió en Río de Janeiro un hecho de rutina: la policía mató a un sospechoso de hurto.</parrafo>
    </seccion>

    <seccion num="2" titulo="La industria del miedo">
        <parrafo destacado="si">El miedo es la materia prima de las prósperas industrias de la seguridad privada y del control social.</parrafo>
        <parrafo>"Nuestra mejor publicidad son los noticieros de la televisión", dice, y bien sabe lo que dice, uno de los especialistas en la venta de seguridad.</parrafo>
    </seccion>

</capitulo>

</libro>

Consultas

Obtener el título del libro:

xmlstarlet select -t -v //titulo libro.xml

Obtener el capítulo 1:

xmlstarlet select -t -v "//capitulo[@num='1']" libro.xml

Obtener el capítulo 2:

xmlstarlet select -t -v "//capitulo[2]" libro.xml

Obtener el capítulo 2 usando last():

xmlstarlet select -t -v "//capitulo[last()]" libro.xml

Obtener la sección 1 del capítulo 2:

xmlstarlet select -t -v "/libro/capitulo[@num='2']/seccion[@num='1']" libro.xml

Obtener los párrafos que contienen algún atributo:

xmlstarlet select -t -c '//parrafo[@*]' libro.xml

Obtener los párrafos no destacados del capítulo 1:

xmlstarlet select -t -c "/libro/capitulo[@num='1']//parrafo[not(@destacado)]" libro.xml

Parámetros

Syntax for templates: -t|--template <options>
where <options>
  -c or --copy-of <xpath>         - print copy of XPATH expression
  -v or --value-of <xpath>        - print value of XPATH expression
  -o or --output <string>          - output string literal
  -n or --nl               - print new line
  -f or --inp-name         - print input file name (or URL)
  -m or --match <xpath>           - match XPATH expression
  -i or --if <test-xpath>              - check condition <xsl:if test="test-xpath">
  -e or --elem <name>            - print out element <xsl:element name="name">
  -a or --attr <name>            - add attribute <xsl:attribute name="name">
  -b or --break            - break nesting</xsl:attribute></name></xsl:element></name></xsl:if></test-xpath></xpath></string></xpath></xpath></options></options>

Sitio oficial: XMLStarlet Command Line XML Toolkit

Tags: , ,

16 años del nacimiento de WorldWideWeb

El 26 de Febrero de 1991, Tim Berners Lee presentaba WorldWideWeb (posteriormente renombrado a Nexus), un programa para la estación de trabajo Next que implementaba el primer navegador web del mundo.


Imagen tomada de Wikipedia

Durante los años 80, mientras trabajaba como físico en el CERN, Tim Berners Lee concibió un sistema de intercambio de información científica construido sobre el concepto de hiperenlace; es decir,  un sistema en el que cada documento incluyera referencias (enlaces) a otros. Su idea se materializó bajo dos componentes, por un lado estaba HTTP, que era el protocolo utilizado por el programa de navegación para pedir los documentos al servidor, y por otro lado estaba HTML, que era el formato de los documentos que mostraba el programa de navegación.


Tim Berners-Lee

Las ideas de Berners se materializaron en dos programas, por un lado el mencionado navegador Nexus, y por otro el CERN httpd, el servidor de páginas web. Ninguno de estos programas tuvo una vida muy larga; Nexus solo funcionaba en Next, así que no tardó en ser reemplazado por Mosaic, un navegador web creado por Marc Andreessen que funcionaba tanto bajo sistemas Unix como Windows. Respecto a CERN Httpd, no tardaría en ser reemplazado por Apache, un proyecto que nació como un fork del propio CERN Httpd para acabar convirtiéndose en el servidor web mas popular.

Actualmente, Tim Berners Lee es presidente del World Wide Web Consortium, un organismo creado para dirigir el desarrollo de las tecnologías relacionadas con la web.

Tags: ,

37 pasos para un perfecto etiquetado HTML

El siguiente artículo continene un total de 37 puntos con respuestas frecuentes sobre HTML. En inglés. Estos son algunos de los puntos que trata el artículo:

  1. Why do I need to write&amp;instead of just&?
  2. Why are external CSS and JavaScript files a good idea?
  3. What does “semantic” mean?
  4. Should I replacebandiwithstrongandem?
  5. Are tables deprecated?
  6. What is the correct use of thedfnelement type?
  7. Must I have analtattribute for every image?

“HTML es la base de la Web y tanto desarrolladores como diseñadores necesitan comprenderlo”

37 Steps to Perfect Markup

Tags: , ,