Origini, motivazioni e regole di evoluzione del World Wide Web

Oreste Signore, <oreste@w3.org>
Responsabile Ufficio Italiano W3C
Area della Ricerca CNR - via Moruzzi, 1 - 56124 Pisa


Storia dell' Informatica
Università di Pisa
28 aprile 2008


Presentazione: http://www.w3c.it/talks/2008/storia/slides.html

Cover page W3C Office Logo Cover page Weblab Logo Valid XHTML 1.0! Valid CSS!

Ringraziamenti

L’invenzione del web

Un processo di accrescimento, non la soluzione lineare di una serie di problemi ben definiti.

Le radici del Web

le origini del Web: Esigenze (CERN), Tools (SGML, Internet, Hypertext) permettono a Tim Berners-Lee di inventare il World Wide Web e poi fondare il W3C

Internet

Tutto comincia guardando alla luna…

…e con la gara per lo spazio

foto dello Sputnik

4 ottobre 1957: lancio dello Sputnik

ARPANET…

… nel 1969…

arpanet nel 1969
  1. UCLA: Network Measurement Center
  2. SRI: Network Information Center
  3. UCSB: Culler-Fried interactive mathematics
  4. Utah: 3D graphics

…nel 1971…

arpanet nel 1971

…e Internet

Nel 1989 Tim Berners-Lee può creare il World Wide Web basato su distributed computing e Internet.

Ray Tomlinson: la magica @

TM2121

computer who sent the first email
(Fotografia di Dan Murphy)

home page: http://openmap.bbn.com/~tomlinso/ray/home.html

SGML (breve storia del markup)

Il text retrieval

Naturalis Historia - frontespizio
Plinio il Vecchio-immagine

In principio fu lo scriptorium…

miniatura di un amanuense

stat rosa pristina nomine, nomina nuda tenemus

…e i manoscritti

manoscritto manoscritto

Bibbia, in latino. Manoscritto in pergamena della prima metà del sec. XIII.
(http://www.regione.sicilia.it/beniculturali/bibliotecacentrale/tesori/immagini/t14a.jpg e http://www.regione.sicilia.it/beniculturali/bibliotecacentrale/tesori/immagini/t15b.jpg)

Poi venne Gutenberg…

Gutenberg - la Bibbia

(http://upload.wikimedia.org/wikipedia/commons/b/b0/Gutenberg_Bible.jpg)

… e nacque il markup

paragrafo Paragrafo più vicino Diminuire lo spazio orizzontale inserire annotazione a margine Inserire il testo a margine
in maiuscolo In maiuscolo a sinistra Spostare a sinistra a destra Spostare a destra

Poi venne la tecnologia

Nasce il "generic coding"

GML

GML: un esempio

:book.
:body.
:h1.Introduzione
:p.Il GML supportava contenitori gerarchici, come
:ol.
:li.Liste ordinate (come questa),
:li.Liste non ordinate, e
:li.Liste di definizione
:eol.
:p.e strutture semplici
:p.È stato possibile omettere i tag di chiusura 
   per gli elementi "h1" e "p", grazie al principio di minimalizzazione.

SGML

SGML al CERN

<BODY>
<H1>Introduction
This manual describes how to build a distributed system using the
Remote Procedure Call system developed in the Online Group
of the DD Division of CERN, the European Particle Physics Laboratory.
<h2> The system
The remote procedure call product consists of two essential parts:
an RPC compiler which is used during development of an application,
and the RPC run time system, which is part of the run time code.
Target systems supported are
<ul>
<li>VAX/VMS,
<li>Unix (Berkley 4.3 or Ultrix or equivalent)
<li>stand-alone M680x0 (MoniCa) systems (Valet-Plus, etc)
<li>stand-alone M6809 systems
<li>M680x0 systems running RMS68K
<li>M680x0 systems running OS9
<li>The IBM-PC running TurboPascal or Turbo-C
<li>The Macintosh running TurboPascal or MPW
</ul>

Tipi di markup

James H. Coombs, Allen H. Renear, Steven J. DeRose: Markup Systems and the Future of Scholarly Text Processing (Communications of the ACM 30, November 1987; 933-47)

Hypertext

Vannevar Bush

bush2

vb21

Il Memex

memexlg

A memex is a device in which an individual stores his books, records and communications and which is mechanized so that it may be consulted with exceeding speed and flexibility. It is an enlarged intimate supplement to his memory.

The memex "affords an immediate step, however, to associative indexing, the basic idea of which is a provision whereby any item may be caused at will to select immediately and automatically another. This is the essential feature of the memex. The process of tying two items together is the important thing."

(Una riproduzione dell' articolo a: http://www.multimedialab.be/doc/citations/bush_aswemaythink.pdf o copia locale a: bush_aswemaythink)

Douglas (Doug) Englebart

englebart

englebart2

Ted Nelson e la definizione di ipertesto (1965)

tednelson A body of written or pictorial material interconnected in a complex way that it could not be conveniently represented on paper. It may contain summaries or maps of its contents and their interrelations; it may contain annotations, additions and footnotes from scholars who have examined it.

Progetto Xanadu (1965-1999):


Talvolta i risultati migliori si ottengono ridimensionando gli obiettivi

Tim e Ted si incontrano nel 1992, e Tim salda il debito per la copia di Literary Machines.

Tim Berners-Lee

Brevi note biografiche

tbl-300high

tim

Il tarlo del meccanismo associativo

Una volta discusse con il padre come rendere intuitivo il computer, e metterlo in grado di realizzare le associazioni tipiche della mente umana

Nel 1980, durante il primo soggiorno al CERN, matura il concetto:
Suppose all the information stored on computers everywhere were linked. Suppose I could program my computer to create a space in which anything could be linked to anything.

Qui puoi trovare tutto ...

I suoi genitori avevano una copia del libro di epoca Vittoriana. Ne aveva ricevuta un' altra copia in regalo dal suo padrino.

Staying in a House without Staff

It is for the guest to be as unobtrusively helpful to host and hostess. The simplest thing is to ask exactly how you may do this and also remember that there are times when even the most saught-after guest may get in the way of the routine domestic chores - it is often easier, for example, to opt for breakfast in bed while the hostess copes with the early morning routine.

In any household (even that of a millionaire), the thoughtful guest does not make free with the establishment's drinks, cigarettes, postal and telephone facilities, nor does he or she demand numerous additional services from the staff.

La sfida dei gruppi di lavoro al CERN

Il primo periodo al CERN (1980)

Programmatore a contratto

Il secondo periodo al CERN (1984-89)

Nasce il Web…

tbl original

…e HTML

Il secondo periodo al CERN (1989-1994)

Il primo Web Browser (1)

screen shot of Next Browser

Il primo Web Browser (2)

editor web di Tim

L’approccio

Dalla fisica:
Trovate le regole semplici che descrivono il comportamento di oggetti semplici e piccoli ...
... si ha la chiave per spiegare il comportamento di sistemi molto complessi e grandi

Definire le poche e semplici regole comuni dei protocolli che permettono ai computer di parlarsi tra di loro.

Tre concetti essenziali

URI
Universal Resource Identifier: cosa significa come indirizzo.
È l' innovazione più fondamentale del Web.
Qualunque programma Web lo utilizza quando segue un link.
Una volta che un documento ha un URI, può essere memorizzato su un server e ritrovato da un browser.
Non esiste un archivio centralizzato di URI.
HTTP
Hypertext Transfer Protocol: la sequenza con cui i computer interagiscono e si scambiano informazioni.
La format negotiation permette la coesistenza di tutti i tipi di formato.
HTML
Hypertext Markup Language: se due computer usano lo stesso software per rappresentare i dati, possono scambiarli in modo nativo, altrimenti, li possono tradurre in HTML.
HTML descrive la struttura, non la presentazione.

Tutto qui?

Quello che fa la differenza…

Qualche curiosità

Come nasce il nome World Wide Web

Mesh o Information Mesh
troppo simile a mess
Mine of Information (MOI)
troppo egocentrico
The Information Mine (TIM)
anche più egocentrico!!
World Wide Web
nonostante molti pareri contrari

URI/URL

Il rapporto con l’ accademia: Hypertext91

poster

Tim e il successo economico

People have sometimes asked me whether I am upset that I have not made a lot of money from the Web. In fact, I made some conscious decisions about which way to take my life. These I would not change - though I am making no comment on what I might do in the future. What does distress me, though, is how important a question it seems to be to some. This happens mostly in America, not Europe. What is maddening is the terrible notion that a person's value depends on how important and financially successful they are, and that is measured in terms of money. That suggests disrespects for the researchers across the globe developing ideas for the next leaps in science and technology.
Core in my upbringing was a value system that put monetary gain well in its place, behind things like doing what I really want to do. To use net worth as a criterion by which judge people is to set out our children's sights on cash rather than on things that will actually make them happy.

It can be occasionally frustrating to think about things my family could have done with a lot of money. But in general I'm fairly happy to let other people be in the Royal Family role (as it were), as long as they don't abuse the power they have as a result. It's not as if I can just make decisions that change the Web ... but I can try to get an entire industry to do it. My priority is to see the Web develop in a way that will hold us in good stead for a long time. If someone tries to monopolize the Web - by, for example, pushing a proprietary variation of network protocols - they're in for fight.

[da Weaving the Web, p. 107-108]

Il W3C

L' evoluzione del Web

Web connects people, applications, devices

(Storia)

World Wide Web Consortium (W3C)

Photo of TBL

“To lead the World Wide Web to its full potential by developing protocols and guidelines that ensure long-term growth for the Web”

Alcuni principi guida del W3C

Il W3C è internazionale

The Globe, with dots denoting the hosts, the offices, and team residences

(W3C - http://www.w3.org/)

I membri italiani

  1. Asemantics s.r.l.
  2. Università di Bologna
  3. CINECA
  4. CNR - Consiglio Nazionale delle Ricerche
  5. CSI-Piemonte
  6. CSP Innovazione nelle ICT s.c.a r.l.
  7. Dipartimento di Informatica e Telecomunicazioni - Università di Trento
  8. Dipartimento di Informatica-Università degli Studi di Pisa
  9. Fondazione Bruno Kessler
  10. Libera Università di Bolzano (Freie Universität Bozen)
  11. Istituto per la Ricerca, la Formazione e la Riabilitazione - Onlus (I.Ri.Fo.R.)
  12. Loquendo, S.p.A.
  13. Presidenza del Consiglio dei Ministri
  14. Prometheo Srl
  15. SOGEI (Società Generale d' Informatica)
  16. Telecom Italia S.p.A.

W3C: gli obiettivi a lungo termine

The WAI home page on a SP910 phone

Lo stack delle tecnologie W3C

 Technology stack, see http://www.w3.org/Consortium/techstack-desc.html for more details

L' attività dei Working Group

Stages of a WG life in a stacked diagram

Nascita di una Recommendation

Stages of the Recommendation process in a stacked diagram

Qualche riferimento

Il Web e le sue tecnologie: da HTML a XML

HTML: le caratteristiche

I limiti di HTML

Perché XML?

Comparsa di nuove applicazioni Web "Data centric"

XML in breve

<root>
  <first>
    <Subelement attr="xyz" attr2="qwr"/>
  </first>
  <second>
    <AnotherSubelement>
      ABC<Something attr="plk"/>
    </AnotherSubelement>
  </second>
  <third/>
</root>
  • Nesting corretto
  • Corrispondenza dei tag
  • Elementi nulli
  • Attributi racchiusi tra apici
  • Well formed
  • Validated

XHTML

Un frammento di documento XML

(Ringrazio Andrea Marchetti e Fabio Vitali per avermi fornito il sorgente XML)

Un frammento di DTD

<!ENTITY % docarticolato "(meta,intestazione,formulainiziale,
                      articolato,formulafinale,conclusione,annessi?)" >

<!ELEMENT Legge                %docarticolato; >
<!ATTLIST Legge %idnorma;  %status;  >
<!ELEMENT LeggeCostituzionale  %docarticolato; >
<!ATTLIST LeggeCostituzionale %idnorma;  %status;  >
<!ELEMENT DecretoLegge         %docarticolato; >
<!ATTLIST DecretoLegge %idnorma;  %status;  >
<!ELEMENT DecretoLegislativo   %docarticolato; >
<!ATTLIST DecretoLegislativo %idnorma;  %status;  >
<!ELEMENT DecretoMinisteriale  %docarticolato; >
<!ATTLIST DecretoMinisteriale %idnorma;  %status;  >
<!ELEMENT RegioDecreto         %docarticolato; >
<!ATTLIST RegioDecreto %idnorma;  %status;  >
<!ELEMENT Dpr                  %docarticolato; >
<!ATTLIST Dpr %idnorma;  %status;  >
<!ELEMENT Dpcm                 %docarticolato; >
<!ATTLIST Dpcm %idnorma;  %status;  >

Da DTD a XML Schema

Un frammento di XMLSchema NIRLight

Dal Web al Web Semantico

W3C SW logo

Il Web non è solo tecnologia

“The Web is more a social creation than a technical one. I designed it for a social effect - to help people work together - and not as a technical toy. The ultimate goal of the Web is to support and improve our weblike existence in the world.”
(Tim Berners-Lee - Weaving the Web, p. 123)

I limiti del Web attuale

L' integrazione dei dati

esportazione dei dati semplificata

Per un processo automatico

L' architettura del Semantic Web

immagine dei livelli del semantic web
Il Semantic Web ...
  • è un' infrastruttura basata su metadati per poter svolgere ragionamenti sul Web
  • estende, non sostituisce il web attuale
I metadati sono:
  • Informazioni, elaborabili automaticamente (machine understandable), relative a una risorsa web o a qualche altra cosa
  • ... data about data
  • ... informazioni che possono essere utilizzate da intelligent software agents per fare un uso appropriato delle risorse
  • ... dati ...
  • ... che possono essere descritti da altri metadati ...

Perché i metadati?

Elementi di RDF

Cosa è RDF?

RDF è per il Semantic Web ciò che HTML è stato per il web

Triple RDF

Un esempio semplice di RDF (in RDF/XML)

A Simple RDF Graph with full URI-s
<rdf:Description rdf:about="http://…/isbn/2020386682">
    <f:titre xml:lang="fr">Le palais des mirroirs</f:titre>
    <f:original rdf:resource="http://…/isbn/000651409X"/>
</rdf:Description>

(Nota: per semplificare gli URI sono stati usati i namespace)

Un esempio semplice di RDF (in Turtle)

A Simple RDF Graph with full URI-s
<http://…/isbn/2020386682>
    f:titre "Le palais des mirroirs"@fr;
    f:original <http://…/isbn/000651409X>.

Merging dei dati…

The merged data with nodes with identical URI-s pointed out

…e delle risorse identiche

The merged data with one of the nodes merged with common URI

Il ruolo fondamentale degli URI

RDFSchema

Perché RDF Schema?

Ontologie (OWL)

Cos'è un' ontologia?

Jim Hendler

A set of knowledge terms, including the vocabulary, the semantic interconnections and some simple rules of inference and logic for some particular topic

Studer et al. (1998)

An ontology is a formal, explicit specification of a shared conceptualisation.
A 'conceptualisation' refers to an abstract model of some phenomenon in the world by having identified the relevant concepts of that phenomenon.
'Explicit' means that the type of concepts used, and the constraints on their use are explicitly defined. For example, in medical domains, the concepts are diseases and symptoms, the relations between them are causal and a constraint is that a disease cannot cause itself.
'Formal' refers to the fact that the ontology should be machine readable, which excludes natural language.
'Shared' reflects the notion that an ontology captures consensual knowledge, that is, it is not private to some individual, but accepted by a group.

Disaccordo o accordo?

Il Semantic Web: la visione del W3C

Ipotesi e sfide
  • il Web è intrinsecamente distribuito
  • le macchine possono accedere ad un insieme strutturato di informazioni e a un insieme di regole di inferenza da utilizzare per il ragionamento automatico
  • per ragionare sui dati occorrono le ontologie
  • fornire un linguaggio per esprimere dati e regole per ragionare sui dati
  • esportare sul web delle regole da qualunque sistema di rappresentazione della conoscenza

Ricapitolando…

Metadati
  • informazioni, comprensibili dalla macchina, relative a una risorsa web o a qualche altra cosa
Resource Description Framework (RDF)
  • strumento base per la codifica, lo scambio e il riutilizzo di metadati strutturati
  • consente l'interoperabilità tra applicazioni che si scambiano sul web informazioni machine-understandable
RDFS
  • può essere considerato un Web Ontology Language semplice
Web Ontology Language (OWL)
  • linguaggio per descrivere proprietà, vincoli, cardinalità, etc.
  • permette di esportare ontologie in modo interoperabile

OWL: tre sottolinguaggi

OWL Lite
per rappresentare classificazioni gerarchiche e vincoli semplici. Permette una migrazione rapida per thesauri e altre tassonomie.
OWL DL
per utenti che desiderano la massima potenza espressiva garantendo comunque la completezza computazionale (tutte le conclusioni sono computabili) e la decidibilità (tutte le computazioni terminano in un tempo finito)
OWL Full
per utenti che desiderano la massima potenza espressiva e la libertà sintattica di RDF.
Non fornisce garanzie sui tempi di computazione, e difficilmente sarà supportato nella sua interezza da software che implementano il ragionamento

L' integrazione dei dati: il ruolo delle tecnologie

esportazione dei dati con indicazione delle tecnologie

Conclusioni

Sono orgoglioso di ...

Happy birthday, W3C

Tim Berners-Lee e Oreste Signore

Grazie per l' attenzione

Domande?


Se non è sul Web non esiste ...

... troverete sul sito dell' Ufficio (http://www.w3c.it/)
le slide (http://www.w3c.it/talks/2008/storia/)