Tag , taggar (ibland tag [1] , engelska tag är en namngiven etikett, läs /tæg/ ; ett mer korrekt namn är en deskriptor [2] [3] [4] [5] ). I SGML ( HTML , WML , AmigaGuide , språk i XML -familjen ) - en del av hypertextmarkeringsspråket . Texten som finns mellan start- och sluttaggen visas och placeras enligt de egenskaper som anges i starttaggen.
Till exempel visas Wikipedia-texten mellan <small> starttaggen och </small> sluttaggen (från engelska small - small ) i en mindre storlek än huvudtexten: Detta är liten text , och texten mellan <big> och < tags /big> visas med en stor storlek: Och det här är en stor.
Vanligtvis används parade taggar - öppning , eller start , och stängning , eller slut . Det är också möjligt att använda en enda tagg. Till exempel kan styckeindragstaggen formatera stycket mellan taggarna <p> och </p>, eller i enkel form tills nästa första påträffade <p>-taggen.
Taggen med tom text : <HR></HR> infogar en textbrytning utan indrag, du kan även använda taggens speciella form - <HR/>.
Uppsättningen och rekommenderade tolkningar av taggar definieras av W3C .
SGML kan tilldela andra tecken för att omsluta en tagg (som t.ex. klammerparenteser), men vissa delmängder av språket (som HTML och XML ) gör det inte.
Dessutom finns det olika system av undergruppsspråk med mindre kapacitet. Till exempel, webbforum och anslagstavlor använder BBCode markup language , vars taggar är avgränsade med hakparenteser: [ ].
Till exempel är [url="http://ru.wikipedia.org"]ryska Wikipedia[/url] en BBCode- länk som pekar till den ryska Wikipedia-sidan [6] .
All text mellan start- och sluttaggar, inklusive dessa själva, kallas ett element . Själva texten mellan taggarna är innehållet i . Innehållet i ett element kan innehålla vilken text som helst, inklusive andra element.
En tagg kan ha egenskaper som kallas attribut som ger ytterligare textformateringsalternativ. De är skrivna som en kombination: attribut-värdenamn, med textvärden inom citattecken.
Du kan till exempel markera en textbit i ett specifikt teckensnitt med <font>-taggen och ange teckensnittsnamnet och önskad storlek i denna tagg: <font face="Times, Arial, Courier" size=4> -stilad text </font>.
Taggnamnet definierar elementtypen . I HTML definierar taggnamnet endast en uppmärkningsregel, så taggen "i" (till exempel <i> Курсивный текст</i>) anger att det finns text mellan taggarna som ska visas i kursiv stil i webbläsaren . XML är en mer flexibel standard. Taggnamn i den är inte strikt reglerade: användare kan ange och använda nya taggar för sina behov (se XML ).
Till exempel kan vi själva bestämma att elementet med taggnamnet "person" vi definierar typen av detta XML-element som efternamn, förnamn och patronym. Och låt oss säga födelseåret, som en del av informationen för denna person:
Således är HTML en ostrukturerad text, och XML är ett dokument med en hierarkisk struktur, vilket gör det möjligt att bearbeta ett dokument: transformera data, söka efter nödvändiga dokumentelement, etc.
I SGML och språk baserade på det ( HTML -versioner 2-4.01, språk i XML -familjen , etc.), måste element vara strikt kapslade i varandra, "överlappande" element är inte tillåtna [7] :
Den vanliga missuppfattningen att SGML och HTML tillåter "överlappning" av element är baserad på det standardbrytande [8] beteendet hos äldre versioner av webbläsare som försökte "fixa" uppmärkningsfel med sina egna algoritmer.
SGML (och HTML) tillåter dock ett antal stenografiska syntaktiska konstruktioner, inklusive valfria stängnings- och till och med öppningstaggar (slutförs automatiskt när dokumentet tolkas baserat på det angivna dokumentschemat och aktuella kontexten). I XML måste tvärtom alla taggar öppnas och stängas explicit, vilket avsevärt förenklar parsningsalgoritmen och minskar hårdvarukraven för den.