Figure 6.3: Tim's Browser for the NeXT HTML had been agreed as the document markup language. This was based on the application of SGML used at CERN called GUID. Tim included in HTML tags from the SGML tagset used at CERN. The initial HTML parser ignored tags which it did not understand, and ignored attributes which it did not understand from the CERN-SGML tags. As a result, existing SGML documents could be made HTML documents by changing the filename from xxx.sgml to xxx.html. The earliest known HTML document is dated 3 December 1990:
• 1993 „ipari” érdeklődés • 1994 WWW Consortium
Standardisation
There was not a lot of discussion of this at ECHT90, but there seem to be two leads:
Steve newcombe's and Goldfarber's "Hytime" committee looking into SGML, and
An ISO working group known as MHEG, "Multimedia/HyperText Expert Group". led by one Francis Kretz (Thompsa SA? Rennes?).
Note the error on the last line. If you look at documents from the period between early December and the end
Alkalmazások II
3
Hypertext • • • •
1945 Vannevar Bush: Memex
•
hypermédia: szöveg, képek, hangok
~ 1965 Ted Nelson: Xanadu 1987 Bill Atkinson: HyperCard hypertext: nem lineáris szöveg, kapcsolatok más szövegekre
Alkalmazások II
4
A Web megoldás
• Jelölő nyelv (markup language) • Egységes címzési jelölés (URL) • Dokumentum átviteli protokoll (HTTP)
• Kliensek (browser) • Szerverek
Alkalmazások II
5
Kliensek (browserek)
• 1992 • line mode browser • Viola GUI browser for X • 1993 • Mac browser • február: NCSA Mosaic for X • szeptember: Mosaic az összes elterjedt platformra • 1994 • Netscape megalakítása • 1995-96 • legtöbben Netscape-t használnak • 1997-99 • Internet Explorer térhódítása
Alkalmazások II
6
Szerverek
(Netcraft)
Alkalmazások II
7
A HTML és eredete
• HTML - SGML alkalmazás • Meta-markup language SGML
Meta-markup language Application XML
Markup language
HTML XHTML
SMIL
SOAP
WML
Alkalmazások II
8
A http protokoll
• A web alkalmazás-réteg protokollja • Kliens-szerver modell • http1.0: RFC 1945 • http1.1: RFC 2068 http kérés
• OPTIONS • GET • HEAD • POST • PUT • DELETE • TRACE • CONNECT
Alkalmazások II
16
http válasz
státuszsor
fejléc sorok adatok (dokumentum)
HTTP/1.0 200 OK Date: Thu, 06 Aug 1998 12:00:15 GMT Server: Apache/1.3.0 (Unix) Last-Modified: Mon, 22 Jun 1998 …... Content-Length: 6821 Content-Type: text/html data data data data data ...
éré s kliens http vál asz rés ké p sz htt á la v tp ht
kliens
eredeti szerver
ht
á la pv htt
proxy cache
sz
Alkalmazások II
25
Web böngészők (browserek)
• Általános böngésző architektúra Felhasználói felület
Hálózati interfész
Parszer
Segéd könyvtárak
Megjelenítés
Alkalmazások II
26
HTML
• egyszerű leírónyelv platform független hypertext dokumentumok létrehozására • ISO Standard 8879:1986 • alkalmazás: • hypertext, hypermedia • struktúrált dokumentumok, • dokumentáció • menük • mail • MIME ‘text/html’ Internet Media Type
1992 HTML is first defined 1993 HTML+ (some physical layout, fill-out forms, tables, math) 1994 HTML 2.0 (standard for core features) HTML 3.0 (an extension of HTML+ submitted as a draft standard) 1995 Netscape-specific non-standard HTML appears 1996 Competing Netscape and Explorer versions of HTML HTML 3.2 (standard based on current practices) 1997 HTML 4.0 (separates structure and presentation with stylesheets) 1999 HTML 4.01 (slight modifications only) 2000 XHTML 1.0 (XML version of HTML 4.01) 2001 XHTML 1.1 (modularization to allow different subsets) 2002 XHTML 2.0 (simplifying and generalizing several tags)
Alkalmazások II
29
HTML mark-up
• Elemek • start tag (<element-name>) • end tag () • Az elemek nem a tagek. • Attribútumok • hozzárendelt tulajdonságok • pl.:
• Megjegyzések
Alkalmazások II
30
Stílus lapok
• HTML nem alkalmas a megjelenítés megadására
• kerülő megoldások • html kiterjesztések • képpé alakított szöveg • “távtartó” képek • elrendező táblázatok • Stílus lapok - új megjelenítési lehetőségek
Alkalmazások II
31
Stíluslap (pl.)
This paragraph should have special green text. P.special { color : green; border: solid red; }
Alkalmazások II
32
XML
• Adatok leírására • Meta mark-up language • DTD, XML Schema • XML alkalmazások • pl. XHTML
Alkalmazások II
33
XML DTD
• XML dokumentum érvényes építő elemeinek és struktúrájának megadása
]> <note date=”12/11/99”> DTD ToveJaniReminder
Don’t forget me this weekend!
XML dokumentum
Alkalmazások II
34
XML transzformáció
• XSL, XSLT • transzformációs szabályok (XMLben)
XSLT stylesheet
XHTML document Web browser rendering
XML document CSS stylesheet
Alkalmazások II
35
CGI mechanizmus
• Interfész külső alkalmazások és a web szerver közé • Dinamikus tartalom generálás • Tetszőleges programozási nyelven • Kommunikáció • környezeti változók • standard I/O • Használat • űrlapok • spec. URL-ek
Alkalmazások II
36
Űrlapok feldolgozása
• űrlap tartalom továbbítása method • GET • action?name=value&name=value&name=value • POST method • adattovábbítás az üzenet testében • env REQUEST_METHOD, CONTENT_TYPE, CONTENT_LENGTH • stdio
Alkalmazások II
37
Információ visszakeresés a Weben
• Információs web használat • böngészés • keresés • humán összeállítású link gyűjtemények • teljes tartalom keresőgépek • web linkszerkezete Sziget
Kiinduló oldalak
Sziget
Sziget
Mag
Vég oldalak
Sziget
Alkalmazások II
38
Keresőgépek Keresőgép
Méret
Oldal mélység
Google
8.1 milliárd
101K
MSN
5.0 milliárd
150K
Yahoo
4.2 milliárd (becslés)
500K
Ask Jeeves
2.5 milliárd
101K+
(SearchEngine Watch)
dokumentum index milliárd db
Alkalmazások II
39
Szöveg visszakeresés (IR) Dokumentumok
cat
...the cat is fat ...
dog
...was raining cats and dogs... ...Fido the dog ...
Invertált listák
cat
dog
ó s ozíci ely u h p t íp Cím 5 Szerző 10 Kivonat 57
• Elosztott számítógépes környezet • Automatikusan indított tranzakciók nem csak böngészőkből
• Intelligens ügynökök, piacterek, árverések, ...
-> Nyílt rendszerek -> Web services
Alkalmazások II
43
Web szolgáltatások
• Összetett üzleti információk • időjárás, hírek, menetrendek, • •
árfolyamok csekk és kártya ellenőrzés, árverés Tranzakciós szolgáltatások helyfoglalások, bérlések, megrendelések beszállítói láncok Üzleti folyamatok megnyitása munkafolyamat szintű összekapcsolás folyamat szintű integráció