Тэг — метка данных в информатике¶
Тэг (также тег; от англ. tag — метка, ярлык) — метаданные, прикрепляемые к данным для их классификации, идентификации или задания свойств. Термин широко применяется в информатике, телекоммуникации, радиочастотной идентификации и программировании. В зависимости от контекста тэг может обозначать элемент разметки, идентификатор пакета данных, метку в базе данных или радиометку.
¶Происхождение термина
Слово происходит от англ. tag — «бирка, метка, ярлык». В информатике термин закрепился в 1980–1990-х годах в связи с развитием языков разметки (SGML, HTML) и сетевых протоколов. В русскоязычной технической литературе используются обе транслитерации — «тэг» и «тег»; вторая форма считается более распространённой в профессиональной среде.
¶Основные области применения
¶Языки разметки
В языках разметки тэг — это специальный конструкт, обозначающий начало или конец элемента документа. Наиболее известный пример — HTML, где тэги заключаются в угловые скобки: <p>, <div>, <a>. С помощью тэгов задаётся структура веб-страницы, форматирование текста, гиперссылки и мультимедийные элементы. Закрывающий тэг отличается от открывающего символом косой черты: <p>текст</p>.
В XML тэги определяются пользователем и описывают семантику данных: <имя>Значение</имя>. XML-тэги лежат в основе форматов обмена данными (SOAP, RSS, SVG), конфигурационных файлов (SVG, XAML) и протоколов вроде XMPP.
В языке программирования Python декораторы @property, @staticmethod и подобные конструкции иногда неформально называются тэгами, однако это неформальное употребление.
¶Телекоммуникации и сетевые протоколы
В компьютерных сетях тэг — это поле в заголовке пакета, определяющее тип данных, приоритет или принадлежность к потоку. Примеры:
- VLAN-тэг (IEEE 802.1Q) — четырёхбайтовая метка, добавляемая к Ethernet-кадру для идентификации виртуальной локальной сети. Содержит 12-битный идентификатор VLAN (до 4094 сетей) и три приоритетных бита.
- MPLS-метка — 20-битовая метка, определяющая маршрут пересылки пакета в сети с меткой (Multi-Protocol Label Switching).
- Тэги в MPEG-транспортном потоке — идентификаторы PID (Packet Identifier), позволяющие различать программы и служебные данные в цифровом телевидении.
¶Радиочастотная идентификация
В RFID-системах тэг — это радиометка, состоящая из антенны и микросхемы памяти, хранящей идентификатор объекта. Активные тэги имеют собственный источник питания и работают на расстоянии до сотен метров, пассивные питаются от излучения считывателя и работают в пределах нескольких метров. RFID-тэги применяются в системах контроля доступа, логистике, библиотечном учёте и продажах (антикражевые метки).
¶Базы данных и системы хранения
В системах хранения данных тэг — это метка, приписываемая объекту (записи, файлу, фотографии) для последующей сортировки и поиска. Метки могут быть свободными (пользователь задаёт произвольные слова) или контролируемыми (выбор из предопределённого списка). Принцип «фолксономии» — народной таксономии на основе свободных тэгов — лежит в основе организации контента на платформах Flickr, Delicious, а также в системах вики.
¶Молекулярная биология
В биоинформатике тэг — это короткая последовательность нуклеотидов, присоединяемая к ДНК или РНК для облегчения выделения и секвенирования целевых молекул. Наиболее распространённый тэг — олиго(dT), используемый для захвата матричной РНК по поли(A)-хвосту.
¶Классификация тэгов
| Тип | Назначение | Пример |
|---|---|---|
| Структурные | Определяют элементы документа | <div>, <article> в HTML |
| Семантические | Описывают смысл данных | <price>, <author> в XML |
| Сетевые | Идентифицируют пакеты и потоки | VLAN-тэг 802.1Q |
| Идентификационные | Присваивают объекту уникальный код | RFID-метка |
| Классификационные | Группируют объекты по признаку | метки в блогах и базах данных |
| Биологические | Маркируют молекулы | олиго(dT)-тэг |
¶Тэгирование как практика
Процесс назначения тэгов — тэгирование (теггирование) — стал основой организации пользовательского контента в веб-приложениях. В социальных сетях тэги (#хэштеги) позволяют объединять публикации по темам; хэштеги получили массовое распространение после внедрения их в Twitter в 2007 году. В фотопубликациях тэги заменяют иерархические каталоги, обеспечивая плоскую модель классификации.
В программировании аннотации (annotations) в Java, C# и Python часто называются тэгами верхнего уровня — они позволяют привязывать к коду метаданные, обрабатываемые компилятором или фреймворком.
Источники:
- Робертс, Б. «HTML5 и CSS3. Разработка сайтов для любых браузеров и устройств»
- Таненбаум, Э. «Компьютерные сети»
- W3C Recommendation: HTML5.2
- IEEE Standard 802.1Q — Bridges and Bridged Networks
- Кларк, К. «XML. Подробный справочник»
