Zove se poseban jezik za označavanje tekstualnih dokumenata. Jezik za označavanje HTML dokumenta. Logičko i vizuelno označavanje

jezici za označavanje) je skup posebnih uputstava, nazvanih tagovi, dizajniranih da formiraju strukturu u dokumentima i definiraju odnose između različitih elemenata ove strukture. Drugim riječima, označavanje pokazuje koji dio dokumenta je naslov, koji je podnaslov, šta treba smatrati imenom autora itd. Oznake se dijeli na stilsku, strukturnu i semantičku. Stilska oznaka

Za izgled dokumenta odgovorna je stilska oznaka. Na primjer, u HTML-u ova vrsta označavanja uključuje oznake kao što su (kurziv), (podebljano), (podvučeno), (precrtani tekst) itd.

Strukturno obeležavanje

Strukturne oznake definiraju strukturu dokumenta. U HTML-u su, na primjer, oznake (paragraf), (naslov), (odjeljak) itd. odgovorne za ovu vrstu označavanja.

Semantička oznaka

Semantičko označavanje daje informacije o sadržaju podataka. Primeri ove vrste markupa su oznake (ime dokumenta), (šifra, koja se koristi za liste kodova), (varijabla), (adresa autora).

Osnovni koncepti svakog markup jezika su oznake, elementi i atributi.

Oznake i elementi.

Značenja oznaka i elemenata se često brkaju.

Oznake, ili kontrolni deskriptori kako se još nazivaju, služe kao uputstva za program koji prikazuje sadržaj dokumenta na strani klijenta o tome šta da radi sa sadržajem oznake. Da bi se označila oznaka u odnosu na glavni sadržaj dokumenta, koriste se ugaone zagrade: oznaka počinje znakom manje od (), unutar kojeg se nalazi naziv instrukcija i njihovi parametri. Na primjer, u HTML-u oznaka označava da tekst koji slijedi treba biti u kurzivu.

Element su oznake zajedno sa njihovim sadržajem. Sljedeća konstrukcija je primjer elementa:

Ovaj tekst je u kurzivu .

Element se sastoji od početne oznake (u našem primjeru to je oznaka ), sadržaj oznake (u primjeru ovo je tekst "Ovo je tekst u kurzivu") i završnu oznaku (), iako se ponekad u HTML-u zatvarajuća oznaka može izostaviti.

Atributi

Za postavljanje parametara koji pojašnjavaju karakteristike ovog elementa prilikom definiranja elementa, koriste se atributi.

Atributi se sastoje od para ime = vrijednost koji se može specificirati prilikom definiranja elementa u početnoj oznaci. Možete ostaviti razmake lijevo i desno od simbola jednakosti. Vrijednost atributa je navedena kao string zatvoren u jednostruke ili dvostruke navodnike.

Bilo koja oznaka može imati atribut ako je taj atribut definiran.

Kada se koristi atribut, element poprima sljedeći oblik:

sadržaj oznake

Tekst je poravnat prema sredini

Jedna uvodna oznaka može sadržavati više atributa, na primjer:

Određena veličina i boja teksta

Istorija razvoja markup jezika.

Koncept hiperteksta uveo je W. Bush 1945. godine, a počevši od 60-ih godina počele su se pojavljivati ​​prve aplikacije koje koriste hipertekstualne podatke. Međutim, ova tehnologija je dobila svoj glavni razvoj kada se ukazala stvarna potreba za mehanizmom za kombinovanje više izvora informacija, pružajući mogućnost kreiranja i pregleda nelinearnog teksta.

Godine 1986, ISO je odobrio Standardizovani generalizovani jezik za označavanje. Ovaj jezik je namenjen kreiranju drugih jezika za označavanje; on definiše važeći skup oznaka, njihove atribute i internu strukturu dokumenta. Tako je moguće kreirati vlastite oznake vezane za sadržaj dokumenta. Sada postaje očigledno da je takve dokumente teško tumačiti bez definicije jezika za označavanje, koja je pohranjena u definiciji tipa dokumenta (DTD). DTD grupiše sva pravila jezika u SGML standardu. Drugim riječima, DTD opisuje međusobni odnos oznaka i pravila za njihovu upotrebu. Štaviše, za svaku klasu dokumenata definisan je sopstveni skup pravila koja opisuju gramatiku odgovarajućeg jezika za označavanje. Dakle, samo uz pomoć DTD-a može se provjeriti ispravna upotreba oznaka i stoga se on mora poslati zajedno sa SGML dokumentom ili uključiti u dokument.

U to vrijeme, pored SGML-a, postojalo je još nekoliko sličnih jezika koji su se međusobno takmičili, ali popularnost (HTML, koji je jedan od njegovih potomaka) dala je SGML-u neospornu prednost u odnosu na njegove kolege.

Koristeći SGML, možete opisati strukturirane podatke, organizirati informacije sadržane u dokumentima i predstaviti ove informacije u nekom standardiziranom formatu. Ali zbog svoje složenosti, SGML se prvenstveno koristio za opisivanje sintakse drugih jezika, a nekoliko aplikacija je radilo direktno sa SGML dokumentima. SGML se obično koristi samo u velikim projektima, na primjer, za stvaranje jedinstvenog sistema upravljanja dokumentima za veliku kompaniju.

HTML jezik za označavanje je mnogo jednostavniji i praktičniji od SGML-a, njegova uputstva su prvenstveno namenjena kontroli procesa prikazivanja sadržaja dokumenta na ekranu. HTML kao način označavanja tehničkih dokumenata kreirao je Tim Berners-Lee 1991. godine posebno za naučnu zajednicu. Prvobitno je to bila samo jedna od SGML aplikacija.

Uprkos činjenici da jedino što HTML može da uradi jeste da klasifikuje delove dokumenta i obezbedi njegov ispravan prikaz u pretraživaču, to je najpopularniji jezik za označavanje. To je zato što je HTML prilično lako naučiti. Sve što treba da uradite je da naučite HTML komande. DTD za HTML je pohranjen u pretraživaču. Osim toga, treba napomenuti da je HTML dizajniran za rad na velikom broju platformi. Ali ima niz značajnih ograničenja:

  • HTML ima fiksni skup oznaka i ovaj skup se ne može proširiti ili promijeniti;
  • Oznake HTML jezika pokazuju samo kako bi podaci trebali biti predstavljeni, odnosno izgled dokumenta. HTML ne nosi informacije o značenju sadržaja sadržanog u oznakama ili strukturi dokumenta.
  • Početkom februara 1998. međunarodna organizacija W3C odobrila je specifikaciju Extensible Markup Language (XML) 1.0, što je označilo početak razvoja mnogih novih jezika za označavanje za prijenos informacija putem Interneta na osnovu XML standarda. U suštini, to je značilo novi korak u razvoju jezika za označavanje hiperteksta. Tokom četiri godine svog postojanja, XML ne samo da je privukao veliku pažnju i običnih korisnika i mnogih web dizajnera, već je postao i sastavni dio interneta. Danas praktički nema servera koji ne koriste, u ovoj ili drugoj mjeri, ovu tehnologiju kao analog HTML-a. Međutim, još uvijek je u najmanju ruku preuranjeno reći da XML sada postaje glavna metoda prenošenja hiperteksta preko globalne mreže. Sam jezik je još prilično mlad, a neki njegovi elementi su još u razvoju. Do sada je napravljen samo opšti okvir za ono što će, možda, u budućnosti zameniti HTML, ali u kom će konkretnom obliku biti, još je nemoguće reći.

    Od početka

    U novembru 1990. godine, kada su korisnici Interneta prvi put čuli za novu tehnologiju, čiji se naziv lako može uklopiti u samo tri slova, gotovo niko nije mogao zamisliti da će proći vrlo malo vremena i da će ova tehnologija postati praktično jedini način za prenošenje informacija o globalnoj mreži. Danas je za mnoge neiskusne korisnike riječ Internet snažno povezana sa WWW-om, iako su u stvari ove stvari, naravno, povezane jedna s drugom, ali ipak malo drugačije.

    Uglavnom, upravo je nevjerovatna popularnost World Wide Weba i njegovog sastavnog dijela, HTML-a, svakako postao razlog izuzetno povećane pažnje strukturama hipertekstualnog označavanja dokumenata.

    Pojam hiperteksta prvi je uveo V. Bush davne 1945. godine. Međutim, stvarne aplikacije koje koriste takve strukture podataka počele su se koristiti tek od 60-ih godina, a zaista izvanredan nalet oko ove tehnologije počeo je tek kada je postojala stvarna potreba za mehanizmom za kombinovanje više informacijskih resursa, koji bi omogućio stvaranje i prikaz nelinearnog teksta. A primjer implementacije ovog mehanizma bio je isti WWW.

    Sam jezik za označavanje dokumenta je skup posebnih instrukcija koje se nazivaju tagovi (u nekim prevedenim publikacijama oznake se zovu prečice), dizajniranih da kreiraju strukturu u dokumentima i da definišu odnose, respektivno, između različitih elemenata ove strukture. Oznake jezika za označavanje, ili kontrolni deskriptori kako ih ponekad nazivaju, kodirani su u takvim dokumentima na vrlo specifičan način, dodijeljeni u odnosu na glavni sadržaj dokumenta, a zatim služe kao upute za program koji tumači i prikazuje sadržaj dokumenta. dokumenta, zapravo, osobi koja ga gleda, ako pokušate da nađete analogije sa internetom, onda je taj neko klijent, a program tumač u najčešćem slučaju pretraživač). Već u prvim sistemima odlučeno je da se za označavanje ovih naredbi koriste simboli “”, unutar kojih su smješteni nazivi instrukcija i njihovi parametri. Danas je ovaj način imenovanja oznaka opšteprihvaćen standard.

    Sama upotreba hipertekstnog raščlanjivanja tekstualnog dokumenta u savremenim informacionim sistemima je u velikoj meri posledica činjenice da hipertekst omogućava stvaranje mehanizma za takozvano nelinearno gledanje informacija. To znači da se u sistemima podaci ne predstavljaju kao kontinuirani tok tekstualnih struktura, već kao skup međusobno povezanih komponenti, kojima se kreće pomoću hiperveza.

    Najpopularniji i najpoznatiji jezik za označavanje hiperteksta danas, HTML, kreiran je posebno za strukturiranje i prenošenje informacija koje se nalaze na Internetu, i nesumnjivo je ključna komponenta WWW tehnologije. Korištenjem modela hipertekstualnog dokumenta uredniji je način predstavljanja različitih informacionih resursa na mreži, a korisnici su dobili pogodan mehanizam za pretraživanje i pregled potrebnih informacija. Međutim, prvi znak u ovom pitanju još uvijek se smatra mnogo starijim jezikom - SGML.

    SGML (Standard Generalized Markup Language) je zvanično usvojen 1986. godine kao međunarodni standard (ISO 8879:1986) za opisivanje metoda ulazno/izlaznih uređaja i okoline za predstavljanje tekstualnih informacija u elektronskom obliku. Osnova za njegovo stvaranje bio je prilično stari jezik za označavanje GML (Generalized Markup Language), koji je razvio IBM još u danima prvih personalnih računara. Da budemo precizni, SGML je metajezik dizajniran da opiše druge jezike za označavanje.

    Prvobitno, riječ markup se obično koristila za opisivanje bilješki ili drugih oznaka unutar teksta koje su imale za cilj da upute piscu dokumenta, ili "dizajneru rasporeda" kako se to ponekad naziva, kako tačno određeni odlomak treba kucati. Takve metode mogu uključivati ​​iskrivljeno podvlačenje radi označavanja kurziva, neke posebne ikone za preskakanje određenih fraza ili njihovo štampanje određenim fontom, itd. Kako su formatiranje i štampanje vremenom postali automatizovani, termin je obuhvatao sve vrste posebnih kodova za označavanje koji su umetnuti u elektronske tekstualne dokumente radi kontrole formatiranja, štampanja ili druge obrade.

    Markup jezik se stoga odnosi na skup konvencija oblikovanja koje se koriste za kodiranje blokova teksta. Jezik za označavanje mora jasno naznačiti koje oznake su prihvatljive u datom dokumentu, koje oznake su potrebne, kako razlikovati njegove elemente od običnog teksta i šta označavanje znači. SGML je uspio riješiti prva tri problema, rješenje posljednjeg zahtijeva prisustvo neformalnog opisa.

    SGML, za razliku od svih drugih jezika za označavanje kreiranih na njegovoj osnovi, koristi princip takozvanog deskriptivnog označavanja umjesto proceduralnog označavanja. Takav sistem koristi elemente označavanja koji jednostavno daju imena za dodjelu pojedinačnih dijelova dokumenta određenim kategorijama. Drugim riječima, oznake kao što je Ili \end(list) jednostavno identificiraju dio dokumenta i navode da je “ovaj dio pasus” ili da je “ovaj dio kraj započete liste” itd. Sistem koji koristi proceduralno označavanje (ovo uključuje procesore teksta, na primjer, Microsoft Word) određuje kakva će se obrada izvršiti na određenom mjestu u tekstualnom dokumentu: „na ovom mjestu pozovite tu i takvu proceduru sa parametrima 5, e i z” ili “pomaknuti ivicu dokumenta 7 mm udesno u odnosu na bilo koji element, preskočiti jedan red, započeti sljedeći od crvene linije, itd. U SGML-u, instrukcije koje su potrebne za obradu dokumenta za neku specifičnu svrhu (na primjer, formatiranje) jasno su odvojene od deskriptivne oznake koja se javlja unutar dokumenta. Obično se prikupljaju izvan dokumenta u posebnim procedurama ili programima.

    Koristeći deskriptivno, a ne proceduralno označavanje, isti dokument mogu obraditi različiti programi, od kojih svaki može primijeniti vlastite upute za obradu na one njegove dijelove koje smatra važnim. Na primjer, program za raščlanjivanje sadržaja može u potpunosti zanemariti fusnote, dok ih program za oblikovanje može izdvojiti i sastaviti za ispis na kraju svakog dijela. Različite vrste instrukcija za obradu mogu biti povezane sa istim dijelom datoteke. Na primjer, jedan program može izdvojiti imena ljudi i imena mjesta iz dokumenta kako bi kreirao indeks ili bazu podataka, dok bi drugi program koji obrađuje isti tekst mogao ispisati imena drugim fontom.

    SGML takođe uvodi pojam tipa dokumenta i, shodno tome, načine njegovog definisanja (definicija tipa dokumenta, DTD). Dokumenti se smatraju otkucanim, baš kao i drugi kompjuterski obrađeni objekti. Vrsta dokumenta je formalno određena njegovim sastavnim dijelovima i njihovom strukturom. Na primjer, može se definirati tip dokumenta tako da se sastoji od naslova i možda imena autora, nakon čega slijedi sažetak i niz od jednog ili više pasusa. Svaki dokument bez naslova, prema ovoj formalnoj definiciji, neće biti izvještaj, kao što to neće biti ni niz pasusa iza kojih slijedi sažetak, bez obzira koliko dokument može biti sličan izvještaju sa stanovišta čovjeka. čitalac..

    Budući da su dokumenti poznatih tipova, možete koristiti poseban program koji se zove parser da obradite dokument koji tvrdi da je određenog tipa i provjeri da li su svi elementi potrebni za tu vrstu dokumenta prisutni i pronađeni u ispravnom redoslijedu i ispravno strukturirano. Što je još važnije, različiti dokumenti iste vrste mogu se obraditi na jedinstven način. Moguće je pisati programe koji koriste znanje sadržano u informacijskoj strukturi dokumenta, koji na taj način može biti inteligentniji.

    SGML, kao metajezik, omogućava definiciju specifičnih jezika (često zvanih "SGML aplikacije") koji ciljaju na određene aplikacije. Primjer za to je HTML jezik, koji se široko koristi na WWW-u. Svaki takav jezik je opisan u obliku DTD-a, definirajući elemente i njihove atribute. Jednom kada se dobije takav DTD, SGML softver može ispravno obraditi dokumente napisane prema tom DTD-u.

    Čak iu projektu, ovaj jezik je zamišljen posebno za implementaciju modela prenosa informacija u globalnu mrežu koji sada imamo. Drugim riječima, HTML je proizvod Interneta. Iako je, zapravo, HTML pojednostavljena verzija Standard Generalized Markup Language - SGML (Standard Generalized Markup Language), koji je ISO odobrio kao standard još 80-ih godina prošlog stoljeća. SGTML nije jezik u svom čistom obliku, već skup nekih pravila i opisa za kreiranje drugih jezika; on definiše validan skup oznaka, njihovih atributa i interne strukture dokumenta. Kontrola nad ispravnom upotrebom deskriptora se vrši pomoću posebnog skupa pravila nazvanih DTD opisi, koje koristi klijentski program tumača prilikom raščlanjivanja dokumenta. Za svaku klasu dokumenata definiran je vlastiti skup pravila koja opisuju gramatiku odgovarajućeg jezika za označavanje. Koristeći SGML, možete organizirati informacije sadržane u dokumentima, opisati strukturirane podatke i predstaviti ove informacije u nekom standardiziranom formatu za kasniju upotrebu. Međutim, zbog neke svoje složenosti, SGML se uglavnom koristio za opisivanje sintakse drugih jezika (od kojih je najpoznatiji HTML), a nekoliko aplikacija je radilo direktno sa SGML dokumentima.

    HTML je mnogo praktičniji i lakši za upotrebu jezik od SGML-a. Ne dozvoljava da se na osnovu njega definišu dodatni jezici. Korištenje HTML-a uključuje označavanje dokumenta prema standardu, koji je definiran prilično ograničenim skupom uputstava ili oznaka. Ovakva uputstva imaju za cilj, pre svega, da kontrolišu proces prikazivanja sadržaja dokumenta na ekranu klijentskog programa i time određuju način predstavljanja dokumenta, ali ne i njegovu celokupnu strukturu. U većini slučajeva, HTML podaci su predstavljeni u običnom tekstualnom fajlu koji se lako može prenijeti preko mreže koristeći http protokol.

    Međutim, kako vrijeme odmiče i postavlja sve strože zahtjeve za popularne tehnologije, modernim aplikacijama nije potreban samo jezik za prikazivanje podataka na ekranu klijenta, već i mehanizam koji omogućava da se odredi struktura dokumenta i opiše elementi koji se u njemu nalaze. . HTML ima jednostavan skup naredbi i prilično se uspješno nosi sa zadatkom opisivanja tekstualnih informacija i prikazivanja na ekranu programa za pregled - pretraživača. Međutim, sami prikazani podaci nisu ni na koji način povezani sa oznakama koje se koriste za formatiranje, tako da programi za raščlanjivanje nemaju mogućnost da koriste HTML oznake za pronalaženje fragmenata dokumenta koji su nam potrebni. One. naišao na, na primjer, takav opis

    ruža

    Gledalac će znati u kojoj boji da prikaže tekst sadržan u tagovima i najvjerovatnije će ga ispravno prikazati, ali je apsolutno svejedno gdje se u dokumentu nalazi ova oznaka, u koje druge oznake je sadržan trenutni fragment, da li je u njemu su ugniježđeni fragmenti, da li su odnosi između objekata pravilno konstruirani. Ova „ravnodušnost“ prema strukturi dokumenta dovodi do činjenice da se pretraživanje ili analiza informacija unutar njega neće razlikovati od rada s kontinuiranim tekstualnim fajlom koji nije razbijen na elemente. A ovo, kao što znate, nije najefikasniji način rada sa informacijama.

    Još jedan značajan nedostatak same ideje, implementirane u HTML, je ograničen skup njegovih oznaka. DTD pravila za HTML definiraju fiksni skup deskriptora i stoga programer nema mogućnost da unese svoje, posebne oznake. Iako se s vremena na vrijeme pojavljuju nove jezičke ekstenzije (danas je najnovija verzija HTML-a HTML 4.0), dug put do njihove standardizacije, praćen stalnim nesuglasicama između glavnih proizvođača pretraživača, čini gotovo nemogućim brzo prilagođavanje jezika, njegovu upotrebu. za prikaz specijalizovanih informacija (na primer, multimedijalne, matematičke, hemijske formule, itd.).

    Da sumiramo sve rečeno, može se tvrditi da HTML danas ne zadovoljava u potpunosti zahtjeve koje postavljaju savremeni programeri za jezike ove vrste. A da bi ga zamijenio, predložen je novi jezik za označavanje hiperteksta: moćan, fleksibilan i, u isto vrijeme, zgodan XML jezik.

    XML (Extensible Markup Language) je jezik za označavanje koji opisuje čitavu klasu objekata podataka koji se nazivaju XML dokumenti. Ovaj jezik se koristi kao sredstvo za opisivanje gramatike drugih jezika i za kontrolu ispravnosti dokumenata. One. Sam XML ne sadrži nikakve oznake namijenjene za označavanje, on jednostavno definira redoslijed u kojem su kreirane. Dakle, ako, na primjer, mislimo da trebamo koristiti oznaku za predstavljanje elementa ruže u dokumentu, tada nam XML omogućava da slobodno koristimo oznaku koju definiramo i možemo uključiti isječke kao što su sljedeći u dokumentu:

    ruža

    Skup oznaka se može lako proširiti. Ako, pretpostavimo, želimo i naznačiti da opis cvijeta treba smisleno ući u opis staklenika u kojem cvjeta, onda jednostavno postavljamo nove oznake i biramo redoslijed kojim se pojavljuju:

    ruža

    Ako želimo tamo posaditi još nekoliko cvijeća, moramo napraviti sljedeće promjene:

    ruža

    tulip

    cactus

    Kao što vidite, proces kreiranja XML dokumenta je veoma jednostavan i zahteva samo osnovno znanje HTML-a i razumevanje zadataka koje želimo da obavimo koristeći XML kao jezik za označavanje. Ovo daje programerima jedinstvenu mogućnost da definišu prilagođene komande koje im omogućavaju da najefikasnije definišu podatke sadržane u dokumentu. Autor dokumenta kreira njegovu strukturu, gradi potrebne veze između elemenata, koristeći one naredbe koje zadovoljavaju njegove zahtjeve, i postiže vrstu označavanja koja mu je potrebna za obavljanje operacija pregleda, pretraživanja i analize dokumenta.

    Još jedna očigledna prednost XML-a je mogućnost da se koristi kao univerzalni jezik upita za repozitorije informacija. Danas se u dubinama W3C-a razmatra radna verzija XML-QL (ili XQL) standarda, koji bi u budućnosti mogao postati ozbiljan konkurent SQL-u. Osim toga, XML dokumenti mogu djelovati kao jedinstven način pohranjivanja podataka koji uključuje i sredstva za raščlanjivanje informacija i njihovo predstavljanje na strani klijenta. U ovoj oblasti, jedno od obećavajućih oblasti je integracija Java i XML tehnologija, što omogućava da se iskoristi snaga obe tehnologije pri izgradnji mašinski nezavisnih aplikacija koje takođe koriste univerzalni format podataka za razmenu informacija.

    XML vam takođe omogućava kontrolu ispravnosti podataka pohranjenih u dokumentima, provjeru hijerarhijskih odnosa unutar dokumenta i uspostavljanje jedinstvenog standarda za strukturu dokumenata, čiji sadržaj može biti različiti podaci. To znači da se može koristiti pri izgradnji složenih informacionih sistema, u kojima je pitanje razmene informacija između različitih aplikacija koje rade u istom sistemu veoma važno. Kreiranjem strukture za mehanizam razmjene informacija na samom početku rada na projektu, menadžer se u budućnosti može spasiti mnogih problema povezanih s nekompatibilnošću formata podataka koje koriste različite komponente sistema.

    Takođe, jedna od prednosti XML-a je to što su programi za obradu XML dokumenata jednostavni, a danas se slobodno distribuiraju sve vrste softverskih proizvoda dizajniranih za rad sa XML dokumentima. XML je danas podržan u svim pretraživačima porodice Microsoft Internet Explorer, počevši od verzije 4.0. Najavljeno je da će biti podržan u narednim verzijama aplikacija Netscape Communicator, Oracle DBMS, DB-2 i MS-Office. Sve ovo daje razlog za pretpostavku da će, najvjerovatnije, u bliskoj budućnosti XML postati glavni jezik za razmjenu informacija za informacione sisteme, čime će zamijeniti HTML. Poznati specijalizovani jezici za označavanje kao što su SMIL, CDF, MathML, XSL već su kreirani na bazi XML-a, a lista radnih nacrta novih jezika koje W3C razmatra stalno raste.

    Kako izgleda XML dokument?

    Ako ste upoznati sa HTML-om, učenje XML-a vam neće zahtijevati mnogo truda. Iako je XML po svojim mogućnostima i namjeri svakako vrlo različit od HyperText Markup Language, oba jezika su podskupovi SGML-a i stoga nasljeđuju njegove osnovne principe.

    Struktura dokumenta

    Jednostavan XML dokument može izgledati kao Primjer 1

    Prvo

    Drugi podstav 1

    Treće

    Last

    Imajte na umu da je ovaj dokument vrlo sličan običnoj HTML stranici. Baš kao u HTML-u, instrukcije zatvorene u ugaone zagrade nazivaju se tagovima i služe za označavanje tijela dokumenta. U XML-u postoje oznake za otvaranje, zatvaranje i prazne (u HTML-u takođe postoji koncept prazne oznake, ali nije potrebna posebna oznaka).

    Tijelo XML dokumenta sastoji se od markupnih elemenata i stvarnog sadržaja dokumenta – podataka (sadržaja). XML oznake su dizajnirane da definiraju elemente dokumenta, njihove atribute i druge jezičke konstrukcije. O vrstama oznaka koje se koriste u dokumentima ćemo detaljnije govoriti nešto kasnije.

    Svaki XML dokument uvijek mora početi s instrukcijom, unutar koje također možete specificirati broj jezične verzije, broj kodne stranice i druge parametre potrebne da bi program parser analizirao dokument.

    Pravila za kreiranje XML dokumenta

    Generalno, XML dokumenti moraju zadovoljiti sljedeće zahtjeve:

    Zaglavlje dokumenta sadrži XML deklaraciju koja specificira jezik za označavanje dokumenta, broj verzije i dodatne informacije.

    Svaka početna oznaka koja definira neko područje podataka u dokumentu mora imati svog završnog “partnera”, odnosno, za razliku od HTML-a, završne oznake se ne mogu izostaviti.

    XML je osjetljiv na velika i mala slova.

    Sve vrijednosti atributa koje se koriste u definicijama oznaka moraju biti stavljene u navodnike.

    Ugniježđenje tagova u XML-u je strogo kontrolirano, pa je potrebno pratiti redoslijed otvaranja i zatvaranja tagova.

    Sve informacije između početne i završne oznake tretiraju se kao podaci u XML-u, te se stoga svi znakovi oblikovanja uzimaju u obzir (tj. razmaci, prijelomi reda, tabovi se ne zanemaruju kao u HTML-u).

    Ako XML dokument ne krši gornja pravila, onda se naziva formalno ispravnim i svi analizatori dizajnirani za raščlanjivanje XML dokumenata moći će ispravno raditi s njim.

    Međutim, osim provjere formalne usklađenosti sa gramatikom jezika, dokument može sadržavati sredstva kontrole nad sadržajem dokumenta, nad usklađenošću s pravilima koja određuju potrebne odnose između elemenata i formiraju strukturu dokumenta. Na primjer, sljedeći tekst, iako savršeno valjan XML dokument, bit će potpuno besmislen:

    Rusija Novosibirsk

    Kako bi se osigurala provjera ispravnosti XML dokumenata, potrebno je koristiti analizatore koji vrše takvu provjeru i nazivaju se verifikatorima.

    Danas postoje dva glavna načina za kontrolu ispravnosti XML dokumenta: DTD definicije (Definicija tipa dokumenta) i šeme podataka (Semantička šema). Sljedeći put ćemo razgovarati više o korištenju DTD-ova i shema. Za razliku od SGML-a, definisanje DTD pravila u XML-u nije neophodno, a ova okolnost nam omogućava da kreiramo bilo kakve XML dokumente bez razbijanja mozga oko prilično komplikovane DTD sintakse.

    Osnovni princip

    Element je osnovna strukturna jedinica XML dokumenta. Stavljanjem riječi ruža u tagove definiramo neprazan element koji se zove , čiji je sadržaj ruža. U opštem slučaju, sadržaj elemenata može biti jednostavno neki tekst, ili drugi ugniježđeni elementi dokumenta, CDATA sekcije, upute za obradu, komentari, tj. gotovo svaki dio XML dokumenta.

    Svaki neprazan element mora se sastojati od početne oznake, završne oznake i podataka zatvorenih između njih.

    Skup svih elemenata sadržanih u dokumentu definira njegovu strukturu i određuje sve hijerarhijske odnose. Koristeći elemente, ravni model podataka se transformiše u složen hijerarhijski sistem sa mnogo mogućih odnosa između elemenata.

    Prilikom naknadnog pretraživanja dokumenta, klijentski program će se oslanjati na informacije koje su ugrađene u njegovu strukturu - koristeći elemente dokumenta. One. ako, na primjer, želite pronaći pravi univerzitet u pravom gradu, tada ćete morati pogledati sadržaj određenog elementa koji se nalazi unutar određenog elementa. Pretraživanje će u ovom slučaju, naravno, biti mnogo efikasnije od pronalaženja željenog niza kroz cijeli dokument.

    U XML dokumentu je po pravilu definiran barem jedan element, koji se naziva korijenski, i parseri počinju skenirati dokument iz ovog elementa. U gornjem primjeru, ovaj element je .

    U nekim slučajevima, oznake mogu promijeniti i razjasniti semantiku određenih fragmenata dokumenta, definirajući iste informacije na različite načine i time aplikaciji koja analizira ovaj dokument pružiti informacije o kontekstu korištenja opisanih podataka. Na primjer, nakon čitanja holivudskog fragmenta, možemo pretpostaviti da je ovaj dio dokumenta o gradu, ali u holivudskom fragmentu je riječ o restoranu.

    Zaključak

    Jezik za formatiranje web stranica HTML prvobitno je uveden kao aplikacija SGML-a. Kasnije, sa brzim razvojem WWW-a, HTML je počeo da se širi na sve moguće načine kako bi autoru dao veću kontrolu nad eksternom prezentacijom informacija. Novi elementi i atributi, kao što su ili , fokusirani su na vizualno oblikovanje. Pojavili su se i počeli se aktivno koristiti alati koji nisu dio samog jezika za označavanje: imagemape, Java i JavaScript, dodaci itd. Postoje i mnogi HTML elementi koje podržavaju samo određeni pretraživači ili koji rade drugačije u različitim pretraživačima. Stoga je sada teško reći da li je HTML SGML aplikacija ili ne. Vrlo malo stranica je kreirano prema HTML specifikacijama i odgovarajućim DTD-ovima.

    Ovaj problem se djelimično želi ublažiti kaskadnim stilovima, standard za koji je usvojio W3 konzorcij. CSS1 odvaja stil koji definira vizualni izgled elemenata od oznake elementa.

    Od velikog interesa je XML jezik, koji bi trebao zamijeniti HTML kao jezik za označavanje web stranica. Ovo je varijanta SGML-a, prvenstveno namijenjena korištenju na WWW-u. Ne zahtijeva DTD, a sam jezik je pojednostavljen zbog rijetko korištenih složenih struktura. Ovo će učiniti parsere jednostavnim, što će omogućiti aktivnu upotrebu XML-a u pretraživačima. (Vjerovatnoća za to je prilično velika, s obzirom na to da oba glavna igrača u polju pretraživača sklone XML-u).


    VERZIJA ZA ŠTAMPU>>
    Članak pročitan:jednom.

    (Standard Generalized Markup Language), predstavljen u standardu ISO 8879. Ovaj jezik je usvojen kao glavni jezik za dizajn tehničke dokumentacije, uključujući interaktivne elektronske tehničke priručnike za proizvode kreirane korištenjem CALS tehnologija.

    SGML definira strukturu dokumenata kao niz objekata podataka. Objekti podataka koji predstavljaju dijelove dokumenta mogu se pohraniti u različite datoteke. SGML standard uspostavlja skup simbola i pravila za predstavljanje informacija koji omogućavaju različitim sistemima da ispravno prepoznaju i identifikuju ove informacije. Ovi skupovi su opisani u posebnom dijelu dokumenta koji se zove DTD deklaracija(Definicija tipa dokumenta), koji se prenosi zajedno sa glavnim SGML dokumentom. DTD specificira korespondenciju znakova i njihovih kodova, maksimalnu dužinu korištenih identifikatora, način na koji su graničnici za oznake predstavljeni, druge moguće konvencije, DTD sintaksu i tip i verziju dokumenta. Stoga se SGML može nazvati metajezikom za porodicu specifičnih markup jezika. Konkretno, XML jezici za označavanje mogu se smatrati podskupovima SGML-a i HTML.

    Tehnički opis u obliku SGML dokumenta uključuje:

    • glavni fajl sa tehničkim priručnikom, označen SGML tagovima;
    • opis entiteta, ako dokument pripada grupi u kojoj se koriste isti entiteti i njihovo znanje se podrazumijeva;
    • rečnik za objašnjenje SGML oznaka;

    Međutim, SGML je teško naučiti i koristiti. Stoga, za široku upotrebu oznake u dokumentima dostavljenim WWW-tehnologije, 1991. godine razvijen je pojednostavljeni HTML jezik baziran na SGML-u(HyperText Markup Language), a 1996. i XML jezik(eXtensible Markup Language), koji u kombinaciji sa HTML-om postaje glavni jezik za prezentaciju dokumenata u raznim aplikacijama.

    HTML jezik je razvijen za široku upotrebu markupa u dokumentima predstavljenim u WWW tehnologijama.

    HTML opis se sastoji od ASCII teksta i niza komandi (kontrolnih kodova) uključenih u njega, koji se takođe nazivaju deskriptori ili oznake. Ovaj tekst se naziva HTML dokument, ili HTML stranica, ili kada se objavi na web serveru, web stranica.. Oznake se postavljaju na prava mjesta u izvornom tekstu, određuju fontove, crtice, izgled grafike, linkove itd. Kada koristite WWW editore, komande se ubacuju jednostavnim pritiskom na odgovarajuće tipke.

    XML se, kao i HTML, smatra podskupom SGML-a. Trenutno, XML jezik tvrdi da je glavni jezik prezentacije dokumenata u informacijskoj tehnologiji; može se smatrati metajezikom koji služi kao osnova za kreiranje privatnih jezika za označavanje u različitim aplikacijama. U isto vrijeme, XML je praktičniji od SGML-a, što je osigurano eliminacijom nekih manjih karakteristika SGML-a u XML-u. Opisi u XML-u su lakši za razumevanje i prilagođeni za upotrebu u modernim pretraživačima uz zadržavanje osnovnih karakteristika SGML-a.

    Za specifične aplikacije kreiraju se vlastite verzije XML-a, koje se nazivaju XML rječnici ili XML aplikacije. Stoga je razvijena XML aplikacija OSD (Open Software Description) za opis tekstova specifičnim matematičkim simbolima. Od interesa za CALS je opcija za razmjenu definicija proizvoda (PDX) posvećena razmjeni podataka. Postoje dobro poznati rječnici za hemiju (CML – Chemical Markup Language), biologiju (BSML – Bioinformmatic Sequence Markup Language) itd.

    Svaki dokument ima tri komponente:

    · struktura;

    Sadržaj je informacija koja se prikazuje u dokumentu. Sadržaj dokumenta na papiru može biti čisto tekstualni i sadržavati slike. Ako je dokument predstavljen u elektronskom obliku, može sadržavati multimedijalne podatke, kao i linkove ka drugim dokumentima. Iako se sadržaj različitih dokumenata razlikuje, oni se mogu klasificirati u vrste, kao što su knjiga ili karta za vlak.

    Stil dokumenta određuje oblik u kojem će njegov sadržaj biti prikazan na određenom uređaju (na primjer, štampaču ili displeju). Koncept stila uključuje karakteristike fonta (naziv, veličina, boja) cijelog izlaznog dokumenta ili njegovih pojedinačnih blokova, redoslijed paginacije, lokaciju blokova na stranicama i druge parametre. Isti dokument može biti objavljen u različitim stilovima, kako na različitim medijima, tako i na istom mediju.

    Jezici za označavanje dokumenata su umjetni jezici dizajnirani da opisuju strukturu dokumenta i odnose između različitih objekata strukture. Markupni podaci se također nazivaju metapodaci.

    Prvi markup jezik je GML (Generalized Markup Language), koji su razvili zaposleni u IBM-u još 60-ih godina prošlog vijeka. Njegov neposredni nasljednik bio je jezik SGML (Standard Generalized Markup Language), koji definira pravila za snimanje elemenata za označavanje dokumenta. Dokument koji prati pravila jezika naziva se SGML dokument.

    SGML jezik je definiran u standardu ISO 8879, koji specificira sljedeće osnovne zahtjeve za jezik za označavanje dokumenta:

    · Jezik mora biti čitljiv za ljude.

    · označene datoteke dokumenata moraju biti tekstualne i kodirane pomoću znakova ASCII koda (Američki standardni kod za razmjenu informacija). Međutim, sadržaj dokumenta ne mora biti ASCII kodiran ili tekst.

    SGML i slični jezici koriste posebne alate za označavanje dokumenata:

    · elementi i prateći atributi;

    · entiteti;

    · komentari.

    Strukturna jedinica SGML dokumenta je element. U označenom tekstu svaki element mora biti istaknut na određeni način. Selekcija se vrši umetanjem početne oznake (od engleske riječi tag - oznaka) na početak elementa (start tag) i završne oznake (end tag) na kraju elementa. Početna i završna oznaka imaju isto ime. Da biste razlikovali oznake od običnog teksta, one moraju početi znakom koji označava početak oznake i završavati znakom koji označava kraj oznake. Osim toga, u završnoj oznaci je naveden simbol - znak završne oznake. U SGML-u, bilo koji karakter se može specificirati kao takve karakteristike, ali najčešće korišteni znak je znak "" (lijeva ugaona zagrada) kao početak oznake i znak "/" (kosa crta) kao završni znak oznake. Elementi u SGML dokumentu mogu obuhvatiti druge elemente, što rezultira grafičkim prikazom SGML dokumenta kao hijerarhijske strukture (stablo).


    Primjer 4.3.1. SGML dokument koji navodi listu studenata sa rezultatima njihove ispitne sesije može se specificirati na sljedeći način:

    Spisak ocjenjivanja studenata na sjednici

    Ivanov Ivan Ivanovič

    TS-61

    A

    B

    B

    B

    Petrov Petr Petrovič

    TS-62

    C

    C

    D

    C

    U ovom dokumentu, prvi element je element liste studenata. Ovaj element sadrži jedan element naslova (title) i nekoliko studentskih elemenata (podaci o studentima). Zauzvrat, svaki studentski element sadrži jedan element punog imena (prezime, ime i patronimiju studenta), jedan element broj grupe (broj grupe) i jedan element liste ocjena (listu ocjena učenika na sjednici). I konačno, element liste oznaka sadrži nekoliko elemenata oznaka (score).

    Grafički prikaz ove liste na Sl. 4.3.1 ima strukturu stabla:

    Rice. 4.3.1. Struktura SGML dokumenta u grafičkom predstavljanju

    Atributi se mogu koristiti za preciziranje SGML elemenata. Atributi se upisuju u početnu oznaku elementa na sljedeći način:

    atribut-name="vrijednost-atributa".

    Element može imati više specificiranih atributa. Atributi su odvojeni jedan od drugog i imena elementa najmanje jednim razmakom.

    Primjer 4.3.2. Za elemente ocjene u primjeru 4.3.1 možete postaviti atribut predmeta čija je vrijednost naziv discipline u kojoj se polagao ispit. Tada će za prvog učenika elementi poprimiti sljedeći oblik:

    A

    B

    B

    B

    Jezici kao što je SGML koriste entitete za rad sa grupama podataka. Entitet je bilo koji imenovani podatak, i tekstualni i netekstualni. Prilikom pregledavanja dokumenta, naziv entiteta se zamjenjuje njegovom vrijednošću. Tako će, na primjer, ime tekstualnog entiteta kpi biti zamijenjeno njegovom vrijednošću: Kijevski politehnički institut, a netekstualni entitet image1 bit će zamijenjen slikom pod nazivom image1.

    jezici za označavanje) je skup posebnih uputstava, nazvanih tagovi, dizajniranih da formiraju strukturu u dokumentima i definiraju odnose između različitih elemenata ove strukture. Drugim riječima, označavanje pokazuje koji dio dokumenta je naslov, koji je podnaslov, šta treba smatrati imenom autora itd. Oznake se dijeli na stilsku, strukturnu i semantičku. Stilska oznaka

    Za izgled dokumenta odgovorna je stilska oznaka. Na primjer, u HTML-u ova vrsta označavanja uključuje oznake kao što su (kurziv), (podebljano), (podvučeno), (precrtani tekst) itd.

    Strukturno obeležavanje

    Strukturne oznake definiraju strukturu dokumenta. U HTML-u su, na primjer, oznake (paragraf), (naslov), (odjeljak) itd. odgovorne za ovu vrstu označavanja.

    Semantička oznaka

    Semantičko označavanje daje informacije o sadržaju podataka. Primeri ove vrste markupa su oznake (ime dokumenta), (šifra, koja se koristi za liste kodova), (varijabla), (adresa autora).

    Osnovni koncepti svakog markup jezika su oznake, elementi i atributi.

    Oznake i elementi.

    Značenja oznaka i elemenata se često brkaju.

    Oznake, ili kontrolni deskriptori kako se još nazivaju, služe kao uputstva za program koji prikazuje sadržaj dokumenta na strani klijenta o tome šta da radi sa sadržajem oznake. Da bi se označila oznaka u odnosu na glavni sadržaj dokumenta, koriste se ugaone zagrade: oznaka počinje znakom manje od (), unutar kojeg se nalazi naziv instrukcija i njihovi parametri. Na primjer, u HTML-u oznaka označava da tekst koji slijedi treba biti u kurzivu.

    Element su oznake zajedno sa njihovim sadržajem. Sljedeća konstrukcija je primjer elementa:

    Ovaj tekst je u kurzivu .

    Element se sastoji od početne oznake (u našem primjeru to je oznaka ), sadržaj oznake (u primjeru ovo je tekst "Ovo je tekst u kurzivu") i završnu oznaku (), iako se ponekad u HTML-u zatvarajuća oznaka može izostaviti.

    Atributi

    Za postavljanje parametara koji pojašnjavaju karakteristike ovog elementa prilikom definiranja elementa, koriste se atributi.

    Atributi se sastoje od para ime = vrijednost koji se može specificirati prilikom definiranja elementa u početnoj oznaci. Možete ostaviti razmake lijevo i desno od simbola jednakosti. Vrijednost atributa je navedena kao string zatvoren u jednostruke ili dvostruke navodnike.

    Bilo koja oznaka može imati atribut ako je taj atribut definiran.

    Kada se koristi atribut, element poprima sljedeći oblik:

    sadržaj oznake

    Tekst je poravnat prema sredini

    Jedna uvodna oznaka može sadržavati više atributa, na primjer:

    Određena veličina i boja teksta

    Istorija razvoja markup jezika.

    Koncept hiperteksta uveo je W. Bush 1945. godine, a počevši od 60-ih godina počele su se pojavljivati ​​prve aplikacije koje koriste hipertekstualne podatke. Međutim, ova tehnologija je dobila svoj glavni razvoj kada se ukazala stvarna potreba za mehanizmom za kombinovanje više izvora informacija, pružajući mogućnost kreiranja i pregleda nelinearnog teksta.

    Godine 1986, ISO je odobrio Standardizovani generalizovani jezik za označavanje. Ovaj jezik je namenjen kreiranju drugih jezika za označavanje; on definiše važeći skup oznaka, njihove atribute i internu strukturu dokumenta. Tako je moguće kreirati vlastite oznake vezane za sadržaj dokumenta. Sada postaje očigledno da je takve dokumente teško tumačiti bez definicije jezika za označavanje, koja je pohranjena u definiciji tipa dokumenta (DTD). DTD grupiše sva pravila jezika u SGML standardu. Drugim riječima, DTD opisuje međusobni odnos oznaka i pravila za njihovu upotrebu. Štaviše, za svaku klasu dokumenata definisan je sopstveni skup pravila koja opisuju gramatiku odgovarajućeg jezika za označavanje. Dakle, samo uz pomoć DTD-a može se provjeriti ispravna upotreba oznaka i stoga se on mora poslati zajedno sa SGML dokumentom ili uključiti u dokument.

    U to vrijeme, pored SGML-a, postojalo je još nekoliko sličnih jezika koji su se međusobno takmičili, ali popularnost (HTML, koji je jedan od njegovih potomaka) dala je SGML-u neospornu prednost u odnosu na njegove kolege.

    Koristeći SGML, možete opisati strukturirane podatke, organizirati informacije sadržane u dokumentima i predstaviti ove informacije u nekom standardiziranom formatu. Ali zbog svoje složenosti, SGML se prvenstveno koristio za opisivanje sintakse drugih jezika, a nekoliko aplikacija je radilo direktno sa SGML dokumentima. SGML se obično koristi samo u velikim projektima, na primjer, za stvaranje jedinstvenog sistema upravljanja dokumentima za veliku kompaniju.

    HTML jezik za označavanje je mnogo jednostavniji i praktičniji od SGML-a, njegova uputstva su prvenstveno namenjena kontroli procesa prikazivanja sadržaja dokumenta na ekranu. HTML kao način označavanja tehničkih dokumenata kreirao je Tim Berners-Lee 1991. godine posebno za naučnu zajednicu. Prvobitno je to bila samo jedna od SGML aplikacija.

    Uprkos činjenici da jedino što HTML može da uradi jeste da klasifikuje delove dokumenta i obezbedi njegov ispravan prikaz u pretraživaču, to je najpopularniji jezik za označavanje. To je zato što je HTML prilično lako naučiti. Sve što treba da uradite je da naučite HTML komande. DTD za HTML je pohranjen u pretraživaču. Osim toga, treba napomenuti da je HTML dizajniran za rad na velikom broju platformi. Ali ima niz značajnih ograničenja:

  • HTML ima fiksni skup oznaka i ovaj skup se ne može proširiti ili promijeniti;
  • Oznake HTML jezika pokazuju samo kako bi podaci trebali biti predstavljeni, odnosno izgled dokumenta. HTML ne nosi informacije o značenju sadržaja sadržanog u oznakama ili strukturi dokumenta.