![]() | |
![]() |
![]() ![]() |
Politica de confidentialitate |
|
![]() | |
• domnisoara hus • legume • istoria unui galban • metanol • recapitulare • profitul • caract • comentariu liric • radiolocatia • praslea cel voinic si merele da aur | |
![]() |
![]() |
||||||
Specificarea si organizarea informatiilor pe Web | ||||||
![]() |
||||||
|
||||||
e3t13tl "Tehnica reprezinta fantezia realitatii." -------------------------------------------------------------------------------- 1. Incercare de definire si istoric In anul 1980, NSF (National Science Foundation) reproiecteaza modelul ARPAnet, transformindu-l intr-o retea moderna, arhitectura primind numele de Internet, interconectind la inceput super-calculatoare guvernamentale, institutii academice si centre de cercetare si utilizind o suita standard de protocoale de comunicatie reprezentata de TCP/IP. In anii care urmeaza, Internetul se dezvolta spectaculos, intr-o maniera exponentiala. Serviciile traditionale ale Internetului se rezumau in anii '80 la posta electronica (e-mail), accesul la grupuri de stiri (usenet), conectare la distanta (telnet) si transfer de fisiere (FTP). In 1990-1991 apar doua noi servicii: Archie utilizat pentru cautarea fisierelor pe Internet si Gopher, structura de meniuri ierarhizate facilitind organizarea documentelor pe Internet. Unul dintre cele mai importante si de succes servicii ale Internetului, World Wide Web-ul - sau, mai pe scurt, Web ori spatiul WWW - a fost creat la CERN (Centrul European de Cercetari Nucleare de la Geneva) in anul 1989 de catre fizicienii Tim Berners-Lee, Robert Caillau si echipa lor, cu scopul de a avea acces mai usor la informatiile tehnice ale manualelor de utilizare a calculatoarelor. Data de 12 noiembrie 1990 se considera a fi ziua de nastere oficiala a Web-ului. Dezvoltarea ulterioara a sistemului a fost facilitata de programul Mosaic, sub mediul X Window, foarte simplu de folosit si poseda facilitati multimedia, de la NCSA (Centrul National pentru aplicatiile supercalculatoarelor, Universitatea Urbana-Champaign) furnizat gratuit pe Internet incepind din 1993. Web-ul reprezinta un sistem de distributie locala sau globala a informatiilor hipermedia. Din punct de vedere tehnic, spatiul Web pune la dispozitie un sistem global si standardizat de comunicare multimedia, informatiile fiind organizate asociativ si fiind distribuite in functie de cererile utilizatorilor, functionind conform modelului client-server. Web-ul, cu toata dezvoltarea lui spectaculoasa, nu trebuie confundat cu Internetul, ci poate fi vazut drept cea mai dinamica si "minunata" componenta software a acestuia, neputind exista fara infrastructura hardware a retelelor mondiale interconectate. Cresterea masiva a numarului de servicii si produse Web este data de utilizarea unui tot mai bogat continut informational: imagini, video si sunet. Combinarea si integrarea acestor medii formeaza multimedia, utilizata pe scara larga in reprezentarea si interschimbarea informatiilor. Diverse obiecte/documente multimedia incluzind hiperlegaturi definesc conceptul de hipermedia. Nu exista insa o definitie universal acceptata a multimediei. Putem privi multimedia drept sursa a activitatilor de design, stocare, interogare si utilizare a documentelor electronice compuse din "medii" multiple ca video, audio, animatie, text, grafica si imagine. In general, o aplicatie este considerata a fi multimedia, daca ea contine macar o media continua (video, de pilda) si una discreta (cum ar fi textul). Pentru a intelege notiunea de hipermedia, trebuie sa intelegem ce inseamna hipertextul. In anul 1965, Ted Nelson inventeaza termenul hipertext (text non-linear), definindu-l drept "material scris sau grafic interconectat intr-o maniera complexa care in mod conventional nu poate fi reprezentat pe hirtie. El poate contine cuprinsuri ale propriului sau continut si relatiile dintre diverse parti componente; poate de asemeni contine adnotari, adaugiri si note de subsol pentru cei care doresc sa-l examineze". Definitiile hipertextului sint diverse. De exemplu, iata doua dintre ele. Conform cu J.Smith si S.Weiss, hipertextul este: o forma de document electronic; o metoda de organizare a informatiilor in care datele sint memorate intr-o retea de noduri si legaturi, putind fi accesata prin intermediul navigatoarelor interactive si manipulata de un editor structural. In viziunea lui W.Weiland si B.Shneiderman, hipertextul denota o tehnica pentru organizarea informatiei textuale printr-o metoda complexa neliniara in vederea facilitarii explorarii rapide a unei cantitati mari de cunostinte. Conceptual, o baza de date hipertext poate fi gindita ca un digraf, unde fiecare nod poarta un fragment de text si unde arcele grafului conecteaza unele fragmente de text cu altele inrudite. Pentru a vizualiza textul dintr-o astfel de baza de date, utilizatorul se va folosi de o interfata, traversind legaturile. Ideea de a reprezenta printr-o modalitate nelineara mai multe tipuri de medii este insa mult mai veche. Inceputurile hipertextului si multimediei apar intr-un articol publicat in iulie 1945 in Atlantic Monthly: "As We May Think", autorul lui fiind Vannebar Bush, profesor la MIT si Institutul Carnegie din Washington. El descrie o masina menita a ajuta omul in cadrul procesului de memorare, pe baza asociatiilor intre continut si forma, aceasta masina numind-o MEMEX (MEMory EXtended). MEMEX se baza partial pe tehnologia microfilmelor, fiind prevazuta cu dispozitive de selectie foto-optica si tastaturi, "dispozitiv ce poate stoca toate cartile, inregistrarile si comunicatiile si care este mecanizat in asa fel incit consultarea informatiilor se realizeaza flexibil si rapid." (Bush, 1945) O alta persoana implicata in dezvoltarile de inceput ale multimediei este Douglas Engelbart, membru al Institutului de Cercetare de la Stanford unde dezvolta revolutionarul proiect Augment. Acest proiect deschide o directie importanta de cercetare odata cu prezentarea lui la Fall Joint Computer Conference in 1968. In anul 1963, Engelbart propune dispozitive computerizate de scriere automata cu un deceniu inainte de aparitia primelor procesoare de texte evoluate. In cadrul prezentarii din 1968, prima demonstratie publica a unor facilitati de baza standard ale actualelor programe de tehnoredactare, interfete grafice, aplicatii hipertext si multimedia, Engelbart ilustreaza urmatoarele idei inovative si inventii: mouse-ul, ferestre multiple pe ecranul computerului, facilitati de procesare de texte si hipertexte, posta electronica, teleconferinte, documente compuse din text si grafica, limbaje de comanda de tip script, interfata grafica. A treia figura importanta in istoria multimediei este Ted Nelson, inventatorul termenului de hipermedia si a unui sistem hipermedia: Xanadu ("locul magic al memoriei literare" dupa cum il descrie poetul Samuel Taylor Coleridge in poemul "Kubla Kahn: Or, A Vision in a Dream", scris in anul 1798). Ideea de baza a proiectului Xanadu era aceea de a concepe un sistem care sa contina intreaga literatura universala, plus alte informatii, intr-un singur depozit de date. Prototipul lui Xanadu exista intr-o versiune dezvoltata de Autodesk (niciodata facuta publica, in ciuda numeroaselor anunturi a unor variante de test) si in 1991 permitea: stocarea digitala a informatiilor de tip text, grafica, video etc. legaturi flexibile intre documente (la nivel de caracter, cuvint, fragment de imagine etc.) atasarea de senzori activi partilor de documente controlul versiunilor si compararea lor accesul concurent si sigur al mai multor utilizatori Desigur, in prezent, Xanadu a fost depasit de ceea ce inseamna Web-ul, dar multe din ideile de pionerat ale lui Nelson se regasesc in cadrul WWW si a altor sisteme hipermedia actuale. In cadrul Laboratorului Media de la MIT, incepind cu anii '70, s-au dezvoltat o serie de sisteme multimedia clasice, surse de inspiratie pentru aplicatiile actuale. Dintre acestea se pot mentiona: Spatial Data Management System, Aspen Movie Map, Project Athena, care definesc si domeniile de interes ale hipermediei: simulari interactive, colaborari stiintifice la distanta, invatamint. Astazi se estimeaza ca numarul serverelor WWW a depasit un milion. In ultimii trei-patru ani, Web-ul s-a dezvoltat exploziv si a dobindit un nou aspect, devenind domeniu public si extinzindu-se foarte mult in lumea afacerilor. Astfel, Web-ul poate fi considerat segmentul Internet cu cea mai rapida dezvoltare: in timp ce Internetul se dubleaza la fiecare 100 de zile, spatiul WWW numara deja peste un miliard de pagini. Istoricul WWW-ului decurge in paralel cu istoricul HTML-ului, limbaj de marcare a documentelor hipermedia disponibile pe Web pe care il vom prezenta in unul dintre capitolele urmatoare. 1.2 Scurt istoric al HTML Tim Berners-Lee identifica un numar de considerente practice pentru sistemul propus care trebuia sa ofere: accesul la distanta intr-o retea, acceptindu-se diverse tipuri de conexiuni; accesul la o multitudine de surse de informatii stocate intr-o varietate de forme (text, grafica, sunet etc.) cu ajutorul unor tipuri diferite de sisteme de operare situate pe diferite platforme hardware; capabilitati de extindere si dezvoltare in ceea ce priveste aria de acoperire prin cresterea numarului de legaturi, fara existenta unui control central. Tim Berners-Lee scrie de asemeni prima aplicatie Web, un pachet de server Web rulind pe calculatoare NeXT. In noiembrie 1990, Nicola Pellow incepe sa conceapa un navigator (browser) text care la sfirsitul aceluiasi an era disponibil in cadrul CERN. In mai 1991, CERN prezinta WWW la seminarul anual si browserele in mod linie pentru platforme ca VAX, RS6000 si SUN sint disponibile pe grupurile de stiri alt.hypertext, comp.sys.net, comp.text.sgml si comp.mail.multi-media (august 1991). Dan Connolly se alatura proiectului Web, iar experienta sa in utilitare de documentare on-line si sisteme formale il ajuta sa dezvolte specificatia pentru HTML. Pe data de 15 ianuarie 1992 apare pentru prima data, disponibil prin FTP anonim, un browser text conceput de CERN, interpretind noul limbaj HTML, prezentat si la AIHEP'92 - La Londe. Proiectului Web i se alatura Jean-Francois Groff si Carl Barker. In 1993, primul navigator grafic, numit Mosaic, rulind sub X Window este proiectat de Marc Andreesen si facut public de NCSA (luna februarie). Mosaic utilizeaza primul standardul HTML, bazat pe tag-uri, inspirat dupa SGML. In aprilie 1993, dupa aproape un an si jumatate de la introducerea Web-ului, existau deja 60 de servere WWW. Urmeaza ulterior prezentarea standardului HTML 2.0 (IETF RFC 1866) care include abilitati de afisare mai precisa a imaginilor, utilizarea de formulare, tabele, tipuri de legaturi etc. HTML 2.0 permite dezvoltarea masiva a Web-ului si toate browserele WWW moderne il suporta fara restrictii. In fapt, standardul HTML 2.0 doar pune in ordine anumite facilitati practice aparute incepind cu anul 1994. Netscape extinde o parte din specificatiile HTML 2.0 in 1996 adaugind o serie de tag-uri utile in versiunea foarte populara Netscape Navigator 2.0. HTML+ se dorea a fi o incercare de a extinde HTML-ul, prima data publicata de Dave Raggett in 1993 si prezentata la prima conferinta Web in 1994. O extensie a HTML+ a fost HTML 3.0 care n-a fost niciodata standardizata. Ea a fost propusa de tinarul pe atunci Consortiu W3, format in 1994 de catre CERN si MIT cu scopul de a alcatui un standard viabil al limbajului HTML si de a ghida conceperea de pagini Web. Acest consortiu este cel care propune, certifica si urmareste intreaga dezvoltare a spatiului WWW. In luna iulie 1996, consortiul Web anunta oficial standardul HTML 3.2 adaugind specificatii pentru tabele, imagini, applet-uri, perfect compatibil cu HTML 2.0. In ianuarie 1997, standardul a fost aprobat si toate navigatoarele il suporta. Proiectantii de navigatoare (ca Netscape si, mai nou, Microsoft) au adaugat diferite facilitati care nu apar definite de nici un standard HTML. De exemplu, Netscape Navigator 3.0 oferea la data lansarii posibilitati de adaugare de elemente multimedia direct in paginile Web, fundaluri reprezentate de imagini, cadre (frames) etc. care nu aparusera inca in specificatiile HTML, plus suport pentru script-uri Java interpretate direct de catre client. Urmatoarea versiune a HTML-ului dezvoltata de consortiul W3, denumita Cougar, este standardul HTML 4.0, aparut relativ recent, in anul 1997, care aduce suport pentru accesibilitatea paginilor Web din partea persoanelor cu handicap, foi de stiluri interne, suport lingvistic si pentru formule matematice, evenimente etc. Dupa cum stipuleaza inventatorul Web-ului si directorul W3C, Tim Berners-Lee: "Cu HTML 4.0, orice aplicatie Web va fi independenta de navigator."
HTML 4.0 Strict HTML 4.0 Transitional HTML 4.0 Frameset Versiunile actuale ale celor mai cunoscute navigatoare (Netscape Communicator 4, 6, Internet Explorer 5 si Opera 4) suporta standardul HTML 4. Pentru a asigura fiabilitatea si corectitudinea comunicatiilor pe WWW, Consortiul Web a introdus HTML Validation Service (https://validator.w3.org/) care verifica daca un anumit document se conformeaza standardului HTML 4.0. Tim Berners-Lee declara ca HTML 4.0 n-a fost conceput pentru navigatoare, ci pentru aplicatii viitoare si produse Web. Ultima directie de standardizare a Consortiului WWW este cea a rescrierii HTML-ului in termenii meta-limbajului extensibil XML, pentru a creste flexibilitatea si a oferi proiectantilor de aplicatii Web o mai mare adaptabilitate. Astfel, HTML 4.0 este urmat de XHTML 1.0, standardizat relativ recent, in luna ianuarie 2000. 2. Metodologii O parte dintre avantajele hipertextului fata de textul tiparit sint: forma neliniara a hipertextului ofera capabilitati eficiente de parcurgere a continutului; mediile electronice pot stoca o cantitate impresionanta de informatii; hipertextul ofera o mai buna vizualizare a continutului si o navigare rapida, oricit de complexe ar fi documentele, tinind cont de specificatiile utilizatorilor; in cadrul sistemelor hipertext, interogarile, filtrarile, diversele preferinte si adnotarile utilizatorilor pot fi refolosite ori de cite ori este necesar, putind fi stocate in cadrul structurii hipertext a documentelor folosite. Principalele probleme cu care se confrunta informaticienii in ceea ce priveste hipertextul sint cele legate de: conversie (in general automata) a textului liniar in forma hipertext si liniarizare a hipertextului; proiectare (design) a documentelor hipertext; accesare concurenta a bazelor de date hipertext in context distribuit; construire a unor mecanisme optime pentru cautarea si interogarea inteligente in cadrul informatiilor hipertext; suportare a extensiilor multimedia; prezentare a documentelor hipertext intr-o forma usor de parcurs de catre utilizatori etc. 2.2 Noduri si legaturi Modalitatea de stocare a informatiei in cadrul nodurilor variaza de la sistem la sistem, dar cele mai folosite tehnici utilizeaza limbajele de marcare (SGML sau, mai nou, XML), standardele actuale construite pe baza acestor limbaje fiind HyTime (Hypermedia/Time-based Structuring Language), MHEG (Multimedia and Hypermedia Information Coding Expert Group), HTML (HyperText Markup Language). Avantajul major este asigurarea independentei de platforma hardware si software, formatele proprietare conducind la greutati de navigare, cautare sau intretinere. Din moment ce nodurile pot contine informatii multimedia, sistemele hipermedia trebuie sa fie suficiente de flexibile pentru a suporta o multitudine de formate grafice, audio si video. Legaturile sint conexiuni intre noduri (sau concepte) dependente unul de altul, putind fi bidirectionale sau doar unidirectionale. Si legaturilor li se pot asocia tipuri (legatura de specificare, de elaborare, legatura membru, legatura de opozitie etc.), definind natura relatiei dintre noduri. Dupa Conklin, legaturile pot fi referentiale (non-ierarhice, utile pentru realizarea referintelor incrucisate, ele fiind cele deosebesc cel mai bine hipermedia de celelalte forme de stocare a informatiei) sau organizationale (denumite ierarhice sau structurale, ilustrind relatiile parinte-copil dintre noduri, folosite la organizarea nodurilor in maniera ierarhica intr-o structura stricta). Legaturile organizationale sint esentiale pentru liniarizarea hipertextului si permit autorilor sa verifice coerenta structurii hipertext. Activarea marcajelor unei legaturi duce la vizualizarea (activarea) nodurilor. Conceptele de mai sus isi au originile in istoria omenirii. Talmudul (utilizind din plin comentarii si adnotari imbricate, colaterale), Ramayana si Mahabharata sint prototipuri antice ale reprezentarii hipertextului. Dictionarele si enciclopediile tiparite pot fi considerate vechi forme de hipertext, fiind vazute ca retele de noduri-text unite de legaturi-referinte. obiect hipertext nod structura nod-secvential cale lineara cale alternativa cale conditionata nod de explorare continut atomic sursa interna sursa externa nod compus legatura structura legatura secventiala legatura de explorare continut Structura ierarhica a conceptului de obiect hipertext nivelul 1: legaturile nu au asociate etichete; nivelul 2: legaturile poseda etichete descriind intelesul global al relatiei dintre obiecte (i.e. "este ilustrat de" sau "este discutat de"); nivelul 3: legaturile au etichete mai detaliate (precum "este vizualizat grafic prin", "este criticat de"). Aceasta clasificare poate fi rafinata, in sensul ca ierarhia nivelelor legaturilor depinde de starea actuala de cunoastere a autorului documentului. Partea de organizare Nodurile de structura organizeaza nodurile continut si legaturile intr-o maniera specifica, fiecare nod de structura avind un nume si un nod de start. Acestea pot fi de doua tipuri: noduri de secventa care permit autorului sa defineasca secventa de citire a continutului hipertextului (cititorul poate fi constrins sa urmeze secventa de noduri indicata de autor); noduri de explorare care ofera utilizatorului posibilitati de explorare a retelei hipertext. Legaturile de structura se pot clasifica astfel: legaturi de secventa asociate continutului fiecarui nod de secventa care poseda o secventa de prezentare (se utilizeaza pentru a defini ordinea de parcurgere: liniara, arborescenta etc.); legaturi de explorare oferind acces la nodurile de explorare. Nodurile de secventa impreuna cu legaturile de secventa pot oferi diverse secvente de prezentare a continutului hipertext (ca de exemplu cai de vizitare secventiale, arborescente sau conditionale). Partea de prezentare textual - nu se ofera o vizualizare grafica a structurii, prezentarea fiind limitata la afisarea continutului unuia sau mai multor noduri; grafic - exista o vizualizare grafica a structurii hipertext (e.g. harta legaturilor dintre noduri, arbore de navigare etc.); combinat - ofera ambele posibilitati de prezentare. 2.4 Structuri hipermedia Cea mai uzuala se bazeaza pe metafora cartii tiparite, structura lineara putind acompania un alt tip de structura, folosindu-se legaturi organizationale intre nodurile hiperdocumentelor. Alte legaturi pot fi utilizate pentru a oferi ceea ce se numeste "capabilitatea non-liniara controlata" de a parcurge hipertextul (legaturi catre cuprins, referinte, note de subsol, glosar de termeni etc. pot apare cu succes pentru a imbunatati structura documentelor). Structurile liniare pot fi utilizate pentru realizarea a ceea ce se numeste "tour-guide" a unui sistem, fiind pregatite in prealabil de care experti pentru a ghida un novice printr-o retea de noduri hipertext. Se ofera suport pentru traversarea unui text liniar in cadrul unui sistem hipermedia, dar aceasta abordare isi dovedeste slabiciunea atunci cind luam in considerare explorarea hiperdocumentelor liniare de dimensiuni considerabile. A doua maniera de realizare este structura liniara cu salturi, adoptata de Apple in cadrul sistemului HyperCard, constind dintr-o structura arborescenta in care utilizatorii pot sa traverseze nodurile in oricare directie urmind o cale liniara, dar de asemeni sint capabili sa faca salturi de la orice nod la un nod principal denumit nodul acasa ("home"). Nodul acasa poate fi o biblioteca avind in componenta diverse documente liniare (e.g. carti electronice). In cadrul literaturii de specialitate, hipermedia este vazuta ca imitatoare a memoriei umane, nodurile putind fi structurate ca o pinza (retea). Astfel, se pot realiza documente hipertext structurate semantic, prin impletirea hipermediei cu inteligenta artificiala, utilizindu-se diverse metode precum retele semantice, noduri semi-structurate, harti de concepte etc. Este posibil, desigur, ca in cadrul unui singur hiperdocument sa coexiste mai multe principii de structurare (vezi figura). Caile liniare sint uzuale pentru a parcurge o arie de interes intr-o ordine prestabilita, reteaua permite navigarea, iar ierarhia ofera o structura de tip index. Hypertext Abstract Machine (HAM) interfata cu utilizatorul - un mediu interactiv bazat pe ferestre; aplicatia - aplicatia curenta care poate rula pe aceeasi masina sau pe o masina diferita de cea pe care ruleaza HAM; masina hipertext abstracta (HAM) - un motor utilizat pentru managementul tuturor informatiilor referitoare la hipertext si pentru comunicarea cu aplicatia prin intermediul unui protocol siruri de octeti; sistemul de stocare sau sistemul de fisiere gazda - un depozit de date care memoreaza toate structurile hipertext si bazele de date. grafuri - retele de noduri si legaturi continind unul sau mai multe contexte; contexte - partitii de date in cadrul grafurilor; noduri; legaturi; atribute (asociind semantici). Asupra obiectelor HAM se pot realiza operatii de creare, stergere, distrugere, modificare, filtrare, interogare si altele. Arhitectura HAM ofera un sistem de control al versiunilor, securitatea si filtrarea datelor. Hypermedia Design Model (HDM) Modelul este gindit a fi independent de sistem, putind fi utilizat la translarea aplicatiilor hipertext dintr-un mediu intr-altul. HDM poate fi folosit pentru crearea unor hiperdocumente de dimensiuni mari sau pentru definirea topologiei unei retele hipertext, neputind oferi suport pentru documente mici sau pentru asocierea de informatii nodurilor. In cadrul HDM se pot defini specificatii de nivel inalt, una dintre facilitatile interesante fiind aceea prin care un autor poate defini "perspective" permitind prezentari alternative ale informatiei hipertext. Aceasta poate fi de folos atunci cind sistemul este bilingv sau cind reprezentarile sint atit text, cit si grafice. Modelul Dexter Modelul Dexter imparte un sistem hipertext in trei nivele majore: Runtime - este responsabil cu prezentarea hipertextului si interactiunea cu utilizatorul. Modelul Dexter nu intra in detaliile mecanismului de prezentare, specificatiile prezentarii oferind doar o interfata intre acest nivel si nivelul imediat inferior; Storage - este cel mai important nivel, modelind o baza de date care este compusa dintr-o ierarhie de componente continind date interconectate prin legaturi relationale. Componentele poseda identificatori unici si legaturile pot fi identificate de un set de doi sau mai multi identificatori. Componentele corespund notiunii generale de noduri si pot contine text, imagini statice, audio, video etc. Componentele sint tratate ca si containere generice de date si modelul nu specifica nici o structura a acestora (astfel, componentele text nu sint diferentiate de componentele audio, de exemplu). Component - nivelul specifica structura si continutul fiecarei componente a retelei hipertext. Acest nivel este unul deschis, putind fi inglobate noi forme de reprezentare a informatiei. Modelul Dexter presupune ca modele structurale precum SGML (Standard Generalized Markup Language), ODA (Open Document Architecture) vor fi utilizate pentru a captura continutul/structura nodurilor. Exista insa o interfata intre acest nivel si nivelul de stocare care analizeaza mecanismul de asociere de locatii (adrese) pentru continutul unei anumite componente. Modelul Trellis Nivelele pot fi grupate in trei categorii: abstracte, concrete si vizibile. Anumite aspecte ale hipertextului au fost deliberat excluse din cadrul modelului Trellis: semantica navigarii, comportamentul dinamic, caracteristicile continutului, descrierile de la nivelul fizic, interfetele cu utilizatorul. Astfel, modelul nu este indicat pentru modelarea unei aplicatii de genul unei carti electronice hipermedia. Modelul Tower Modelul, denumit Tower (turn), contine elemente structurale de baza ca noduri, legaturi si ancore, obiecte de tip turn si obiecte de tip oras. Obiectele turn sint utilizate sa modeleze diverse descrieri ale unui obiect (fiind similare, oarecum, nivelelor modelului Dexter). Tipul, modalitatile de stocare, modalitatile de vizualizare etc. reprezinta nivele ale obiectului turn. Orasele constau din multimi de vizualizare peste obiectele turn. Modelul permite fiecarui tip de obiect sa fie obiect virtual (i.e. rezultatul unei functii sau algoritm), operatorii pentru definirea structurilor virtuale fiind Apply-to-All, Filter, Enumeration si Abstraction, utili pentru prelucrarea informatiilor hipertext. Semantica navigarii este descrisa prin intermediul retelelor Petri. In cadul modelului Tower, nodurile, legaturile si ancorele sint "cetateni", fiecare avind un oid si o valoare care poate denota orice. Separind informatiile despre ancore de legaturi si noduri avem avantajul de a izola mecanismul de legare de diverse detalii ale nodurilor conectate. Aceasta separatie este importanta in cazurile in care hiperdocumentul trebuie sa suporte integrarea informatiei provenita din colectii eterogene. Obiectele pot fi noduri, legaturi sau ancore. Valoarea unui astfel de nod poate fi: o valoare de baza (aleasa dintr-o multime de clase primare, dependenta de aplicatia hipertext), o valoare compusa, o valoare turn (tower value) sau o valoare oras (city value). In cadrul acestei sectiuni ne vom referi la obiectele de baza: Valoarea unui nod modeleaza un fragment de informatie care, depinzind de aplicatie, poate fi simpla (e.g. sir de octeti) sau compusa (e.g. formular electronic). Continutul unui nod de baza este inaccesibil sistemului hipermedia prin mijloace obisnuite si poate fi manipulat numai prin metode specifice nodului (e.g. editoare specializate), respectindu-se principiul incapsularii datelor. O ancora de baza reprezinta locatia destinatie a unei legaturi, putind fi de tip uzual, ca pozitia in cadrul unui nod text, sau o locatie dependenta de aplicatie in cadrul unui nod complex, ca de exemplu o coordonata tridimensionala a unui corp 3D. O legatura de baza este o relatie simpla dintre doua ancore de baza (e.g. o legatura dintre doua noduri). Valorile legaturii sint alese in functie de aplicatie. Turnurile o dimensiune structurala constind din continutul lui (e.g. text) si operatiile de manipulare a acestui continut (e.g. editarea textului folosind un editor de text); un nivel de prezentare descriind afisarea sa pe ecran; o a treia dimensiune (nivel) este aceea a atributelor care ataseaza un rol semantic nodului (e.g. decizia). Nodurile dependente de timp (cele video, de exemplu) poseda o dimensiune temporala definind scenariul prezentarii lor. Acestor dimensiuni le corespund diferite nivele de descriere a unui hiperdocument. Nivelele adreseaza, astfel, diverse informatii si componente din arhitectura unui sistem hipertext. Un obiect turn este un obiect avind o valoare de tip turn (tower value). O astfel de valoare reprezinta o functie de asociere a unei multimi de etichete la o multime de obiecte. Fiecare eticheta consta dintr-un nivel de descriere, corespunzind unui nivel separat al functionalitatii hiperdocumentului. Domeniul de definire a functiei este fixat pentru fiecare clasa de obiecte turn. Toate obiectele sint modelate prin turnuri. De pilda, un turn legatura poate consta din: un nivel structural stocind multimea de legaturi, un nivel de prezentare indicind cum vor fi figurate legaturile pe ecran, un nivel semantic definind relatia dintre turnul sursa si turnul destinatie al legaturii. Numarul si natura nivelelor obiectelor turn sint complet arbitrare, in functie de necesitati. Orasele Nodurile de tip oras sint folosite pentru a vizualiza obiectele turn din diferite astfel de perspective. Elementele unui oras sint denumite vizualizari (views), fiecare vizualizare constind dintr-un turn ce descrie obiectul dintr-o perspectiva particulara. Aceste vizualizari modularizeaza informatia in conformitate cu diverse modalitati de accesare a datelor. 2.6 Standarde HyTime HyTime a fost creat pentru a fi utilizat ca infrastructura a aplicatiilor multimedia sincronizate sau nesincronizate, permitind schimbul de informatii hipertext independent de platforma hardware sau software folosita. MHEG abstractizari pentru prezentari in timp-real incluzind sincronizarea si interactivitatea informatiilor multimedia; abstractizari pentru schimbul de informatii in timp-real folosindu-se o zona temporara de memorare minimala; abstractizari pentru manipularea directa a informatiilor fara a necesita procesari suplimentare; facilitati de realizare de legaturi intre elementele obiectelor multimedia compuse. 2.7 Aplicatii In prezent exista o serie de sisteme hipertext operationale dintre care se pot aminti Hyperwave (https://www.hyperwave.com), Microcosm (https://www.multicosm.com/microcosm/index.html), Storyspace (https://www.eastgate.com/Storyspace.html), Webthing (https://www.webthing.com/self-org/) si, desigur, World Wide Web (https://www.w3.org/pub/WWW/WWW/). Hyperwave acces folosind hiper-legaturi, navigare si cautare ierarhice reducerea fragmentarii colectiilor de documente stocate pe servere multiple suport pentru documente in mai multe limbi identificarea si controlul accesului utilizatorilor (securitate) integrarea in sistemele informationale deja existente in Internet consistenta documentelor Serverul Hyperwave In afara de a suporta diverse facilitati ca asignarea unor atribute obiectelor multimedia sau indexarea si cautarea lor, serverul Hyperwave mentine o ierarhie a utilizatorilor organizati in grupuri. Unui document i se pot asocia atribute ca: permisiuni de citire/scriere pentru grupuri sau utilizatori cuvinte-cheie de cautare titluri in diverse limbi proprietati de afisare o durata de accesibilitate costul vizualizarii fanioane de actualizare concurenta Aceste atribute sint memorate intr-o baza de date separata, pentru facilitarea operatiunilor de extragere si manipulare. Documentele (hiper)documente in formate precum HTML sau HTF (Hyperwave Text Format) ori neformate imagini (JPEG, GIF, PNG, TIFF etc.) filme in formatul MPEG documente Postscript lumi tridimensionale in formate VRML/SDF programe (applet-uri Java, de exemplu) Este posibila definirea de legaturi spre o serie de documente sau parti ale lor. Se pot insera si pseudo-documente speciale de catre script-uri ce vor fi executate de server la cererea clientilor. Folosind acest mecanism, continutul poate fi creat "din zbor" si prezentat utilizatorului (sint suportate script-uri CGI, HGI sau cod SQL). Aceasta faciliteaza si operatiunile de cautare sau indexare. Prin facilitatile oferite, Hyperwave se poate considera a fi un veritabil sistem hipermedia. Virtual Shakespeare De cele mai multe ori se doreste ca parcurgerea unor documente de dimensiuni considerabile sa se realizeze simplu, rapid si natural. Cercetatorii de la laboratorul Visible Language Workshop (MIT), condusi de profesorul Muriel Cooper, au propus in anul 1996 in cadrul proiectului Virtual Shakespeare o metoda de vizualizare tridimensionala a continutului textual al pieselor lui Shakespeare, prin intermediul unei camere virtuale care poate naviga libera prin hiperdocumente. Toate aceste metode faciliteaza usurinta in explorarea continutului textual al hiperdocumentelor, chiar si de catre cei care nu detin cunostinte de informatica sau de catre persoanele cu diverse handicapuri. 3. Localizarea resurselor Internet URI sint caracterizati de definitiile de mai jos: Resursa Identificator Uniformitate Termenul URL (Uniform Resource Locator) se refera la un subset URI ce identifica resursele printr-o reprezentare a mecanismului de accesare a lor (e.g. localizarea retelei), nu identificindu-le prin nume sau alte atribute. Regulile de generare a unui URL valid sint prezentate in anexa 1. Termenul URN (Uniform Resource Name) include tot un subset al URI care ramine permanent si unic, chiar daca resursa a disparut ori a devenit inaccesibila. Exemple: ftp://ftp.is.co.za/rfc/rfc2396.txt schema ftp pentru serviciile protocolului de transfer de fisiere (FTP) https://www.infoiasi.ro/Ibusaco/teach/ schema http pentru serviciile protocolului de transfer a hipertextelor (HTTP) mailto:busaco@thor.infoiasi.ro schema mailto pentru adrese de posta electronica (SMTP) news:comp.infosystems.www.servers.unix schema news pentru grupurile de stiri USENET (NNTP) telnet://delta.ac.tuiasi.ro:7777 schema telnet pentru servicii interactive via protocolul TELNET 3.1 Componentele sintaxei URI Un URI poate contine urmatoarele caractere rezervate: reserved = ";" | "/" | "?" | ":" |
"@" | "&" | Un URI generic este compus din urmatoarele componente principale: schema://autority path?query Existind mai multe metode de a accesa resursele, vor fi mai multe scheme pentru a le identifica: schema = alpha (alpha | digit | "+" | "-" | ".")* Componenta autoritate este definita de o locatie de server Internet sau de o secventa speciala de inregistrare, e precedata de "//" si e terminata de urmatorul "/", "?" sau de sfirsitul URI-ului. autority = server | reg_name reg_name = (unreserved | escaped | "$" | "," | ";"
| ":" | Serverul poate fi dat fie prin adresa IP (de exemplu 193.231.30.225), fie prin adresa DNS (e.g. thor.infoiasi.ro), eventual urmat de un numar de port. Componenta cale contine date identificind o resursa: path = a abs_path | opaque_path i path_segm = segment ( "/" segment )* segment = pchar* ( ";" param)* param = pchar* pchar = unreserved | escaped | ":" | "@" | "&"
| Calea poate contine secvente de segmente de cale separate prin "/". In cadrul unui segment, caracterele "/", ";", "=" si "?" sint rezervate. Fiecare segment poate include o secventa de parametri, dupa ";". Componenta de interogare este un sir de informatii interpretate de resursa: query = uric* In cadrul componentei de interogare, caracterele ";", "/", "?", ":", "@", "&", "=", "+", "," si "$" sint rezervate. 3.2 Referinte URI URI-ref = a absoluteURI | relativeURI i a "#" fragment i Sintaxa unui URI relativ e o forma prescurtata a unui URI absolut, in care unele componente lipsesc si anumite componente de cale ("." si "..") au un inteles special (vezi mai jos). Atunci cind o referinta URI este utilizata sa realizeze o actiune de accesare a unei resurse, se poate folosi un identificator de fragmentare constind din anumite informatii spre a fi interpretate de agentul utilizator dupa ce operatia de transfer a resursei s-a finalizat cu succes. fragment = uric* Semantica identificatorului de fragmentare este o proprietate a datelor rezultate in urma actiunii de accesare si transfer a resursei. Formatul si interpretarea identificatorilor de fragmentare sint dependente de tipul de media. 3.3 Referinte URI relative relativeURI = (net_path | abs_path | rel_path) a "?" query i rel_path = rel_segm a abs_path i rel_segm = (unreserved | escaped | ";" | "@" | "&"
| Anumite scheme URI nu permit sintaxa ierarhica, deci nu pot utiliza referinte relative. 4. Protocolul de transport al hipertextelor: HTTP Prima versiune, referita HTTP/0.9, a reprezentat un simplu protocol de transfer de date prin Internet. Urmatoarea versiune HTTP/1.0, definita de RFC 1945, a imbunatatit transferul de mesaje, permitindu-se mesaje in format MIME (Multipurpose Internet Mail Extensions), continind meta-informatii despre datele transmise si despre semantica dialogului cererilor si raspunsurilor dintre clientii si serverele Web. A urmat HTTP/1.1 care ofera mai multe functionalitati suplimentare, precum mecanisme de cautare, adnotare si actualizare, avind suprt pentru URI (Uniform Resource Identifier), specificind adresele ca locatie (prin URL) sau prin nume (via URN). HTTP de asemeni este utilizat ca protocol generic pentru comunicarea intre agentii utilizator si portile (gateways) catre alte sisteme Internet, incluzind suport pentru protocoale ca SMTP (Simple Mail Transfer Protocol), NNTP (Network News Transfer Protocol), FTP (File Transfer Protocol), Gopher. In acest mod, HTTP permite accesul hipermedia la resurse disponibile din diverse aplicatii. Protocolul HTTP este un protocol sigur, de tip cerere/raspuns, comunicatiile decurgind peste conexiunile TCP/IP, portul standard de acces fiind portul 80. 4.2 Terminologie conexiune Un circuit virtual la nivelul transport stabilit intre doua programe care doresc sa comunice. mesaj Unitatea de baza a unei comunicatii HTTP, constind dintr-o secventa structurata de octeti, transmisa printr-o conexiune. cerere Un mesaj de cerere HTTP (vezi mai jos). raspuns Un mesaj de raspuns HTTP. resursa Un obiect de date sau serviciu care poate fi identificat de un URI. Resursele pot avea reprezentari multiple (e.g. formate, marimi, rezolutii etc.). entitate Informatia transferata intr-o operatie de cerere sau de raspuns. O entitate cuprinde atit meta-informatii, cit si continutul propriu-zis. reprezentare O entitate inclusa intr-un raspuns ce reprezinta o negociere intre client si server. negociere Mecanism de selectare a reprezentarii potrivite a unei date solicitate. client Un program care stabileste conexiuni cu scopul de a trimite cereri. agent-utilizator Clientul ce initiaza o cerere (navigator, editor, robot de traversare Web). Navigatoarele cele mai cunoscute sint Netscape Navigator, Internet Explorer, Arena, Mozaic. server O aplicatie care accepta conexiuni, raspunzind la anumite cereri transmise de clienti. Un program poate juca rol atit de server, cit si de client. Un server se poate comporta ca server initial, poarta, tunel sau proxy Web in functie de natura cererii. Cele mai cunoscute servere Web sint: Apache, Netscape Enterprise Server, Microsoft Internet Information Server (IIS), Sun Web Server, Stronghold, MacHTTP, WebSite. proxy (intermediar) Un program intermediar care ruleaza ca server, cit si drept client pentru a transmite cereri altor servere. Cererile trimise unui proxy pot fi rezolvate intern sau transmise mai departe, catre alte servere (posibil translatate). Un proxy trebuie sa implementeze cerintele de server si de client ale specificatiei HTTP. poarta Un server care lucreaza ca intermediar pentru alte servere, in mod transparent, fiind si un translator de protocoale. tunel Un program intermediar functionind ca mijlocitor intre doua conexiuni. cache Un depozit local de memorare a mesajelor (datelor) de raspuns si un subsistem de control al acestuia. Memoria cache reduce timpul de raspuns si congestia retelei. Orice client si server poate include un cache. In figura urmatoare vom ilustra structura unui server Web sub Linux: message-header ::= field-name ":" a field-value i CRLF Formatul unei cereri este urmatorul: Request ::= Method Request-URI ProtocolVersion CRLF Raspunsul la o cerere are urmatoarea sintaxa: status-line ::= HTTP-version status-code reason CRLF status-code ::= digit digit digit reason ::= string Structura HTTP-Version ::= "HTTP-Version" ":" "HTTP" "/" digit "." digit In prezent este operational protocolul 1.1 deci toate mesajele de cerere si de raspuns vor incepe cu linia HTTP/1.1. Mesajele pot fi codificate conform autoritatii IANA (Internet Assigned Numbers Authority) fiind permise codificarile: gzip (GNU zip) este un cod Lempel-Ziv (LZ77) cu suma de control pe 32 de biti compress este un cod produs de programul compress din toate mediile UNIX, dupa codificarea Lempel-Ziv-Welch (LZW) Aceste codificari sint specificate de cimpul Content-Transfer-Encoding. Pentru MIME, se specifica tipul si subtipul mediului de informatii (de exemplu: text/html, text/plain, image/jpeg, video/mpeg etc.) in cimpul Content-Type. Un mesaj poate fi tranmis in format multipart, constind din mai multe entitati, toate avind o sintaxa comuna. Daca o aplicatie receptioneaza un subtip nerecunoscut, in mod automat il va trata ca multipart/mixed. Cimpul Accept dintr-un mesaj de cerere poate specifica multimea de tipuri de date returnata de server ca raspuns: Accept ::= "Accept" ":" (media-range a accept-params i)+ media-range ::= ("*/*" | type "/*" | type "/" subtype)* accept-params ::= ";" "q=" qvalue accept-extension* accept-extension ::= ";" token a "=" (token|string) i type ::= string subtype ::= string qvalue ::= digit "." digit Simbolul "*" specifica toate tipurile/subtipurile de medii dintr-o anumita categorie. De exemplu, pentru a accepta doar imagini, indiferent de format, se va transmite Accept: image/*. Pot fi specificati unul sau mai multi factori de calitate relativa. De pilda, cererea Accept: audio/*; q=0.2, audio/basic este interpretata astfel: "se prefera tipul audio/basic dar serverul va trebui sa trimita toate tipurile audio avind calitatea de cel putin 80%". Locatia unei resurse HTTP va fi data de cimpul Content-Location in formatul URI, conform schemei https: Content-Location ::= "Content-Location" ":" http-URL http-URL ::= "https://" host a ":" port i a abs_path i De exemplu: https://www.infoiasi.ro/Ibusaco/egon/http.html Daca portul nu apare, se ia prin definitie portul 80, rezervat protocolului HTTP. Adresele host vor fi tratate indiferent de scrierea cu caractere majuscule sau nu (case-insensitive), dar calea de directoare abs_path este tratata case-sensitive. Daca abs_path nu apare, se va considera "/", iar caracterele rezervate vor fi echivalente cu codul lor in hexa, precedat de "%" (in forma "% hex hex"). De exemplu, aceste trei URI sin echivalente: https://www.infoiasi.ro:80/Ibusaco/poems.html https://www.infoiasi.ro/%7Ebusaco/poems.html https://WWW.InfoIasi.Ro/%7ebusaco/poems.html Corpul mesajului va contine informatiile propriu-zise ale unei cereri sau raspuns, specificate de o entitate. O entitate-corp difera de corpul mesajului numai daca sint aplicate codificari. 4.4 Formatul mesajelor de cerere Request-Line ::= Method Separator Request-URI Separator HTTP-Version CRLF |
||||||
![]() |
||||||
![]() |
||||||
|
||||||
|
||||||
Copyright© 2005 - 2025 | Trimite document | Harta site | Adauga in favorite |
![]() |
|