Tag , tagy (někdy tag [1] , anglicky tag je pojmenovaný štítek, čti /tæg/ ; správnější název je deskriptor [2] [3] [4] [5] ). V SGML ( HTML , WML , AmigaGuide , jazyky rodiny XML ) - prvek hypertextového značkovacího jazyka . Text obsažený mezi počátečním a koncovým tagem je zobrazen a umístěn podle vlastností zadaných v počátečním tagu.
Například text Wikipedie uzavřený mezi počáteční značkou <small> a koncovou značkou </small> (z angličtiny small - small ) je zobrazen v menší velikosti než hlavní text: Toto je malý text a text mezi <big> a < tags /big> se zobrazí s velkou velikostí: A toto je velká.
Obvykle se používají párové tagy - otevírací , nebo startovací , a zavírací , nebo end . Je také možné použít jeden tag. Například značka odsazení odstavce může upravit odstavec mezi značky <p> a </p> nebo v jednoduchém tvaru, dokud další značka <p> poprvé narazí.
Značka s prázdným textem : <HR></HR> vloží zalomení textu bez odsazení, můžete použít i speciální formu značky - <HR/>.
Sadu a doporučené interpretace značek definuje W3C .
SGML může přiřadit další znaky k uzavření značky (například složené závorky), ale některé podmnožiny jazyka (například HTML a XML ) nikoli.
Kromě toho existují různé systémy podmnožin jazyků s menšími schopnostmi. Například webová fóra a nástěnky používají značkovací jazyk BBCode , jehož značky jsou odděleny znaky hranatých závorek: [ ].
Například [url="http://ru.wikipedia.org"]ruská Wikipedie[/url] je odkaz BBCode směřující na ruskou stránku Wikipedie [6] .
Veškerý text mezi počáteční a koncovou značkou, včetně těchto samotných značek, se nazývá element . Samotný text mezi značkami je obsahem souboru . Obsah prvku může zahrnovat libovolný text, včetně dalších prvků.
Značka může mít vlastnosti nazývané atributy, které poskytují další možnosti formátování textu. Jsou psány jako kombinace: název atributu a hodnoty s textovými hodnotami uzavřenými v uvozovkách.
Například můžete zvýraznit část textu konkrétním písmem pomocí značky <font> a zadáním názvu písma a požadované velikosti v této značce: text ve stylu <font face="Times, Arial, Courier" size=4> </font>.
Název tagu definuje typ prvku . V HTML název značky definuje pouze pravidlo značkování, takže název značky "i" (například ) určuje, že mezi značkami je text, který by se měl v prohlížeči<i> Курсивный текст</i> zobrazit kurzívou . XML je flexibilnější standard. Názvy tagů v něm nejsou přísně regulovány: uživatelé mohou zadávat a používat nové tagy pro své potřeby (viz XML ). Můžeme si například sami určit, že u prvku s názvem tagu "person" definujeme typ tohoto XML prvku jako příjmení, jméno a patronymie. A řekněme rok narození, jako součást informací pro tuto osobu:
HTML je tedy nestrukturovaný text a XML je dokument s hierarchickou strukturou, která umožňuje zpracovávat dokument: transformovat data, hledat potřebné prvky dokumentu atd.
V SGML a jazycích na něm založených ( HTML verze 2-4.01, jazyky rodiny XML atd.) musí být prvky do sebe striktně vnořeny, "překrývající se" prvky nejsou povoleny [7] :
Obvyklá mylná představa, že SGML a HTML umožňují „překrývání“ prvků, je založena na chování starších verzí prohlížečů , které se pokoušely „opravit“ chyby při označování, [8] porušující standardy svými vlastními algoritmy.
SGML (a HTML) však umožňují řadu zkrácených syntaktických konstrukcí, včetně volitelných uzavíracích a dokonce otevíracích značek (automaticky dokončených, když je dokument analyzován na základě zadaného schématu dokumentu a aktuálního kontextu). Naopak v XML musí být všechny značky otevřeny a zavřeny explicitně, což značně zjednodušuje algoritmus analýzy a snižuje hardwarové požadavky na něj.