HTML — язык разметки гипертекста 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

HTML — язык разметки гипертекста



HTML — Hypertext Markup language формулируется в терми­нах языка SGML. Например, документ как целое в DTD задает­ся декларацией:

<! ELEMENT HTML ((HEAD | BODY | %oldstyle)*,

PLAINTEXT?)>.

HTML ориентирован на решение нескольких важных задач, в которых участвуют его различные конструкции и элементы:

• описание структуры документа (head, body, HI—Н6, шрифты, списки и пр.);

• адресация ресурсов (base, link, href и пр.);

• создание гипертекстовых ссылок и управление навигацией в БД локальных и WWW Internet (href и т. п.);

• реализация интерфейсов с пользователем (isindex, menu, FORM и пр.).

Рассмотрим здесь только некоторые функции представления документов (см. также табл. 2.1). Функции навигации и интер­фейсов будут детализированы далее (гл. 6).

Базовые элементы HTML -документа:

• head — содержит всю информацию о документе в целом, но не содержит какого-либо текста. Последний является лишь частью документа и должен находиться в элементе body. Декларации SGML:

<! ELEMENT HEAD (%head.content) + (%head.misc)>

<! ENTITY % head.content "TITLE & ISINDEX? & BASE?">

• body — в противоположность элементу HEAD элемент body содержит всю ту информацию, из которой собственно и состоит рассматриваемый документ. Декларация SGML:

<! ELEMENT BODY (%bodyelement | %htext;)*>.

Приведем некоторые элементы HTML, относящиеся к пред­ставлению документа. 1.Заголовки разд ел о в документа.

SGML-декларация:

<!ENTITY % heading "HI|Н2|НЗ|Н4|Н5|Н6">.

Возможная интерпретация:

H1 — жирный, очень крупный шрифт, текст центрирован Между заголовком и последующим текстом вставляется одна или две пустые строки. При выводе на принтер заголовок печа­тается на новой странице;

Н2 — жирный крупный шрифт, до и после заголовка поме­щаются одна или две пустые строки;

НЗ — наклонный крупный шрифт, до и после заголовка по­мещаются одна или две пустые строки. Печатается с небольшим отступом;

Н4 — жирный нормальный шрифт, до и после заголовка по­мещается пустая строка;

Н5 — наклонный шрифт, как и для Н4, пустая строка ставит­ся перед заголовком;

Н6 — жирный шрифт, перед заголовком ставится пустая строка.

2 Физические (макетные) стили.

SGML-декларация:

<!ENTITY % font "TT|I|B|U|STRIKE|BIG|SMALL|SUB|SUP">.

Возможная интерпретация:

тт — (телетайп) шрифт фиксированной ширины;

В — жирный или еще каким-либо образом выделенный шрифт;

I — наклонный шрифт (или видоизмененный еще каким-либообразом);

U — подчеркивание.

3.Логические стили.

SGML-декларация:

<!ENTITY % phrase "EM|STRONG IDFN|CODE|SAMP IKBD|VARI

CITE">.

Интерпретация:

em — выделение символов (обычно наклон шрифта), смы­словое усиление определенного слова или фразы;

strong — более четкое выделение, привлечение внимания (обычно применение более жирного шрифта);

СОDE — пример кода; обычно фиксированный шрифт (фор­мулы, выражения);

samp последовательность символов (названия команд,

примеры);

VAR имя переменной (имена переменных в примерах, формулах);

DFN определение к какому-либо термину — обычно жир­ный наклонный;

СIТЕ цитата, обычно наклонный шрифт (названия доку­ментов, выдержки из документов, цитируемые фразы и т. д.)

Рассмотрим пример документа с разметкой HTML, содержа­щий приведенные выше элементы управления стилем символов текста:

<HTML>

<TITLE> Примеры управления шрифтами</TITLE>

<Н1> Заголовок 1 </Н1>

<Н2> Заголовок 2 </Н2>

<Ь> Это текст Bold </b><p>

<i> Это текст Italic</ixp>

<u> Это подчеркнутый текст </и> <р>

<strike> Это перечеркнутый текст </strike>

<р>В обычный текст можно вставить <sub> подстрочный

</sub> текст, что позволяет написать выражение типа

P<sub>max</sub>=max{P<sub>K/sub>,P<sub>2</sub>}

<р>В обычный текст можно вставить <sup>

надстрочный</зир> текст, что позволяет написать

обозначение изотопа в виде Cs<sup>134</sup>

</HTML>

Пример отображения этого текста браузером Mozilla FireFox представлен на рис 2.6.

Некоторые дополнительные возможности. Списки. В HTML

предусмотрены следующие виды списков:

• UL — ненумерованный список (неупорядоченный);

• ol — нумерованный список (упорядоченный);

• DL — список определений. Типичный неупорядоченный список:

<UL>

<LH>Titlе of WWW programmes (NCSA).

<LI> NCSA HTTPD;

<LI> NCSA MOSAIC

<UL>

<LH>Title of WWW programmes (CERN).

<LI> CERN HTTPD;

<LI> AGORA - email robot;

<LI> HTTPD CERN;

<LI> WWW Line Browser;

<LI> Arena.

</UL>

<UL>

<LH> Title of WWW programmes (Netscape).

<LI> Netsite - server;

<LI> Netscape Navigator.

</UL>

Пример интерпретации данного списка приведен на рис. 2.7- Таблицы. Для описания таблиц служит элемент TABLE, кото­рый является контейнером для других элементов описания таб­лицы. Наиболее часто он употребляется с атрибутом BORDER, определяющим разделительные линии граф таблицы, которые могут быть либо трехмерными (рис. 2,8), либо обычными.

Из элементов формы следует отметить colspec и dp. COLSPEC позволяет заказать параметры отображения каждой колонки таблицы и имеет вид:

COLSPEC="L20 C8 L40"

Здесь определены три колонки шириной 20, 8 и 40 условных единиц которые могут измеряться в пикселях и типографских интервалах или зависеть от размеров самой таблицы. Атрибут dp определяет вид десятичной точки.

Элемент TR (Table Row) дает общее описание строки таблицу Обычно используется для выравнивания содержания граф строки. Способ выравнивания определяют: атрибут align — горизонталь­ное выравнивание, который принимает значения left,right center, justify, decimal, и атрибут VALIGN — вертикальное вы­равнивание, который принимает значения top, bottom, middle baseline. По умолчанию графы – заголовки центрируются, а графы – данные выравниваются по левому верхнему углу.

Элементы ТН (Table Header) и TD (Table Data) использу­ются для описания граф таблицы. Кроме выравнивания тн и то позволяют еще и объединять графы, как это показано в примере (третья строка из текстового примера, см. ниже). Это делается с помощью атрибутов rowspan (пропуск строки) и colspan (про­пуск столбца). Цифра в этих атрибутах определяет количество последовательно расположенных граф таблицы, объединенных в одну графу.

Приведем пример таблицы (интерпретация отображена на рис. 2.8):

<TABLE BORDER>

<CAPTION>A test table with merged

cells. <CREDIT>(T.Berners

Lee/WWWC, 1995.) </CREDITX></CAPTION>

<TR><TH R0WSPAN=2><TH C0LSPAN=2>Average>

<TH rowspan=2>other<BR>category<TH ROWSPAN=2>Misc</TR>

<TR><TH>height<TH>weight</TR>

<TR><TH ALIGN=left>males<TD>l. 9<TD>0. 003

<TR><TH ALIGN=left>females<TD>1.7<TD>0.002

</TABLE>

Математика. Для реализации математических выражений в языке определен элемент MATH, внутри которого содержатся следующие компоненты:

• above (запись символа над выражением);

• below (запись символа под выражением);

• sqrt,root (радикалы);

• text (для записи текста);

• в,Т,ВТ (выделение символов);

• OVER (черта) и пр.

На пример, запись <root>3<of>1+x</ROOT> соответствует .

Технологии XML

Сконца 80-х гг. самые существенные языки разметки были основаны на принципах SGML, включая например TEI и DocBook. SGML был провозглашен как международный стандарт ISO8879 в 1986 г.

SGML нашел широкое использование в областях с крупно­масштабными документационными требованиями. Однако он оказался слишком громоздким и трудным для обучения (побоч­ный эффект попытки создать универсальный и всеобъемлющий язык). Например, в SGML теги конца (или теги начала, или даже оба) являются необязательными в определенных контек­стах (предполагалось, что разметка будет делаться только вруч­ную и это сэкономило бы пользователю время и усилия).

Новый язык разметки, который теперь широко использует­ся, — XML (Extensible Markup Language — расширяемый язык разметки), был разработан Консорциумом WWW и основная за­дача состояла в том, чтобы упростить SGML, сосредоточиваясь на частной проблеме, — обмен документами в Internet. XML ос­тается метаязыком, как и SGML, разрешая пользователям созда­вать любые необходимые теги (поэтому он — «расширяемый»), а затем описывая эти теги и их разрешенную интерпретацию.

Принятию XML способствовало то, что каждый документ XML является также и документом SGML, поэтому существую­щие пользователи SGML и действующее программное обеспече­ние могли легко адаптироваться к XML. XML устранил также многие из более сложных особенностей SGML, облегчая изуче­ние и выполнение. Другие усовершенствования исправили неко­торые проблемы SGML в международных параметрах настройки и позволили анализировать и интерпретировать иерархию доку­мента, даже при отсутствии его схемы в явном виде.

XHTML

С января 2000 г. все рекомендации W3C для HTML основываются на ХML, а не на SGML, при этом используется сокращение XHTML (E Х tensible H yper Т ext M arkup L anguage) — расширяемый язык разметки гипертекста. Языковая спецификация требует, чтобы Web-документы XHTML были «правильно структурированными» документами XML — это позволяет создавать более устойчи­вые документы, используя теги, знакомые по HTML.

Одно из самых значимых различий между HTML иXHTML — правило, что все теги должны быть закрыты: «пус­тые» HTML-теги, типа <br> должны быть либо «закрыты» правильным тегом окончания либо заменены специальной формой: <br/> (отметим, что перед «/» на теге конца должен быть «про­бел», иначе, тег — недопустимый SGML). Другое — в том, что все «атрибуты» в тегах должны браться в кавычки.

В настоящее время известно множество приложений, осно­ванных на XML, включая Resource Description Framework (RDF), XForms, DocBook, OpenDocument (ODF), SOAP и Web Ontology Language.

Упрощая ситуацию, можно сказать, что разработчики XML взяли лучшие решения SGML и, руководствуюсь опытом HTML, создали язык, не уступающий по мощности SGML, но гораздо более удобный и легкий в использовании. XML предна­значен для создания новых языков разметки и используется в качестве средства для описания грамматики других языков и контроля за правильностью составления документов.

С его помощью можно описать целый класс агрегатов дан­ных, называемых XML-документами, ориентированными на конкретную предметную область. XML позволяет определить допустимый набор тегов, их атрибуты и внутреннюю структуру документа. Теги (подобно тегам в HTML) представляют специ­альные инструкции, предназначенные для формирования в до­кументах определенной структуры и четких отношений между различными элементами этой структуры. Для описания данных XML использует DTD (Document Type Definition — Определение типа документа) или схему документа.

Синтаксис XML

Так же, как и в HTML, инструкции, заключенные в угловые скобки, называются тегами и служат для разметки основного текста документа. В XML существуют открывающие, закрывающие и пустые теги (в HTML понятие пустого тега тоже существует, но специального его обозначения не требуется).

Тело документа XML состоит из элементов разметки и непосредственно содержимого документа — данных. XML-теги предназначены определения элементов документа, их атрибутов и других конструкций языка.

Любой XML-документ должен всегда начинаться с инструкции <?xml?>, внутри которой также можно задавать номер версии языка, номер кодовой страницы и другие параметры, необходимые программе-анализатору в процессе разбора документа.

Содержимое XML-документа представляет собой набор эле­ментов, секций CDATA, директив анализатора, комментариев, спецсимволов, текстовых данных. Рассмотрим каждый из них подробней.

Элементы данных. Элемент — это структурная единица XML-документа. Например, заключая слово rose в теги, мы оп­ределяем непустой элемент, называемый <flower>, содержимым которого является rose. В общем случае в качестве содер­жимого элементов могут выступать как просто какой-то текст, так и другие, вложенные, элементы документа, секции CDATA, инструкции по обработке, комментарии, т. е. практически лю­бые части XML-документа.

Любой непустой элемент должен состоять из начального, ко­нечного тегов и данных между ними, заключенных: <flower> rose </flower>.

Элемент в DTD определяется с помощью дескриптора! element, в котором указывается название элемента и структура его содержимого.

Например, для элемента <flower> можно определить сле­дующее правило:

<!ELEMENT flower PCDATA>

Ключевое слово element указывает, что данной инструкци­ей будет описываться элемент XML. Внутри этой инструкции за­дается название элемента (flower) и тип его содержимого.

Атрибуты. Если при определении элемента необходимо задать какие-либо параметры, уточняющие его характеристики, то имеется возможность использовать атрибуты элемента. Атрибут – это пара название = значение, которую надо задавать при определении элемента в начальном теге, например,

<cоlor RGB="true">#ff08ff</color>

<cоlor RGB="false">white</color>

Списки атрибутов элемента определяются с помощью ключевого слова!attlist. Внутри него задаются названия атрибутов, типы их значений и дополнительные параметры. Например для элемента <article> могут быть определены следующие ат­рибуты:

<!ATTLIST article

id ID #REQUIRED

about CDATA #IMPLIED

type (actual | review | teach) 'actual' ''

>

В данном примере для элемента article определяются три атрибута: id, about и type, которые имеют типы id (идентифи­катор), cdata и список возможных значений соответственно. Всего существует шесть возможных типов значений атрибута:

• cdata — содержимым документа могут быть любые сим­вольные данные;

• id — определяет уникальный идентификатор элемента в документе;

• idref (idrefs) — указывает, что значением атрибута должно выступать название (или несколько таких названий, разделенных пробелами во втором случае) уникального идентификатора определенного в этом документе элемента;

• entity (entities) — значение атрибута должно быть на­званием (или списком названий, если используется entities) компонента (макроопределения), определенно­го в документе;

• nmtoken (nmtokens) — содержимым элемента может быть только одно отдельное слово (т. е. этот параметр яв­ляется ограниченным вариантом cdata);

• список допустимых значений — определяется список зна­чений, которые может иметь данный атрибут.

Также в определении атрибута можно использовать следующиепараметры:

• #required — определяет обязательный атрибут, который должен быть задан во всех элементах данного типа;

• #implied — атрибут не является обязательным;

• #FIXED значение — указывает, что атрибут должен иметь только указанное значение, однако само определение атрибута не является обязательным, но в процессе разбора его значение в любом случае будет передано програм­ме-анализатору. Значение задает значение атрибута по умолчанию

Сущности и специальные символы. Сущности (entity) представляют собой определения, содержимое которых может быть повторна использовано в документе. В языках программирования подобные элементы называются макроопределениями (расширениями). Для того чтобы включить в документ символ, используемый для определения каких-либо конструкции языка (например, символ угловой скобки) и не вызвать при этом ошибок в процессе разбора такого документа, нужно использовать его специальный символьный либо числовой иденти­фикатор.

Например, &lt;, &gt; &quot; или &#036 (десятичная фор­ма записи), &#xla (шестнадцатеричная) и т. д.

Создаются DTD-сущности с помощью инструкции!entity:

<!ENTITY hello ' Мы рады приветствовать Вас!' >

Программа-анализатор, просматривая в первую очередь со­держимое области DTD – определений, обработает эту инструк­цию и при дальнейшем разборе документа будет использовать содержимое DTD-сущности в том месте, где будет встречаться его название. То есть теперь в документе мы можем использо­вать выражение &hello;, которое будет заменено на строчку «Мы рады приветствовать Вас».

В общем случае, внутри DTD можно задать следующие типы сущностей:

• внутренние — предназначены для определения строко­вой константы, с их помощью можно организовывать ссылки на часто изменяемую информацию, делая документ более читабельным. Внутренние компоненты включаются в документ с помощью амперсанда &;

• внешние — указывают на содержимое внешнего файла, причем этим содержимым могут быть как текстовые, так и двоичные данные. В первом случае в месте использования макроса будут вставлены текстовые строки, во втором — бинарные данные, которые анализатором не рассматрива­ются и используются внешними программами.

Комментариями является любая область данных, заключенная между последовательностями символов: <!-- -->

Комментарии пропускаются анализатором и поэтому при разборе структуры документа в качестве значащей информации не рассматриваются.

Директивы анализатора. Инструкции, предназначенные для анализаторов языка, описываются в XML-документе с помощью специальных тегов <? и?>;. Программа клиента использует эти инструкции для управления процессом разбора документа. Наи­более часто инструкции используются при определении типа документа (например, <? Xml version="l. 0"?>) или создании пространства имен.

CDATA. Чтобы задать область документа, которую при разбо­ре анализатор будет рассматривать как простой текст, игнорируя любые инструкции и специальные символы, но, в отличии от комментариев, иметь возможность использовать их в приложе­нии, необходимо использовать теги <![cdata] и ]]>. Внутри этого блока можно помещать любую информацию, которая мо­жет понадобиться программе-клиенту для выполнения каких-ли­бо действий (в область cdata можно помещать, например, инст­рукции JavaScript). Естественно, надо следить за тем, чтобы в об­ласти, ограниченной этими тегами, не было последовательности символов]].

Формат DocBook

DocBook — язык разметки технических документов. Он был первоначально предназначен для того, чтобы разрабатывать тех­ническую документацию, связанную с компьютерной аппарату­рой и программным обеспечением, однако может использовать­ся и для любых других видов документации.

Одно из основных преимуществ DocBook — он дает возмож­ность пользователям создавать содержание документа в ней­тральной форме, которая описывает только логическую структу­ру содержания, которое затем может быть отображено в разно­образных форматах, включая HTML, формат PDF, страницы руководства и помощи, не требуя от пользователей каких-либо изменений в исходном тексте.

DocBook появился в 1991 г. как совместная разработка HaL Computer Systems и O'Reilly & Associates и в конечном счете по­родил свою собственную организацию обслуживания (Davenport Group) перед перемещением в 1998 г. в консорциум SGML Open, который впоследствии был преобразован в OASIS (The Organization for the Advancement of Structured Information Standards — Организация развития стандартов структурированной информации). DocBook в настоящее время поддерживается ПосВоок Technical Committee (подразделение OASIS).

DocBook первоначально начал существование как приложе­ние SGML, однако затем было разработано эквивалентное при­ложение XML, которое заменило SGML в большинстве приме­нений. Первоначально только ключевая группа компаний-разра­ботчиков программного обеспечения использовала DocBook, поскольку их представители были вовлечены в его начальный ди­зайн. В конечном счете, однако, DocBook был принят сообщест­вом свободного программного обеспечения, где стал стандартом для того, чтобы создавать документацию для многих проектов, включая FreeBSD, KDE, GNOME, справочную информацию GTK+API, документацию по Linux и работу Linux Documentation

Project.

Рассмотрим пример кода.

Формат DocBook, будучи основанным на XML, легко читает­ся и понимается как людьми, так и компьютерами. Формат со­стоит из меток (тегов типа <book>), каждой из которых соответ­ствует закрывающая метка (например, </book>), и текстового содержания (например, Hello world!). Полное содержание Документа («книга») структурировано в данном примере в две «главы» (<chapter>), каждая из которых имеет «заголовок» ^:title>) и состоит из одного или более «параграфов» (<рага>). акая структура может образовывать книгу произвольного размера или любой другой документ.

Отметим, что теги указывают структуру и значение содержания, но не его отображение. Нет таких команд, которые требуют «напечатать этот параграф жирным шрифтом» или «центрировать эту строку» и т. д. Один и тот же файл DocBook может быть преобразован во многие различные выходные форматы, каждый с полностью отличным представлением и даже с другим распо­ложением элементов содержания.

ODF

OpenDocument (ODF) — сокращение от «OASIS Open Document Format for Office Applications» (Открытый формат до­кументов для офисных приложений), является форматом файла документа, используемым для того, чтобы описать электронные документы, например письма, сообщения, книги, электронные таблицы, диаграммы, презентации и файлы текстовых процес­соров. Стандарт основан на формате XML, был разработан тех­ническим комитетом OASIS (Organization for the Advancement of Structured Information Standards) и первоначально воплощен в офисном комплексе OpenOffice.org. OpenDocument является стандартом OASIS и принят как международный стандарт ISO/ IEC 26300:2006.

Основная цель таких открытых форматов как OpenDocument состоит в том, чтобы гарантировать долгосрочный доступ к дан­ным без юридических или технических барьеров, и некоторые правительства пришли к выводу, что использование открытых форматов следует рассматривать как аспект публичной политики. OpenDocument предназначен, чтобы быть альтернативой закры­тым форматам, включая такие, как doc, xls и ppt, обычно ис­пользуемые Microsoft Office и другими приложениями (эти фор­маты не описаны в открытой документации, но описание может быть получено путем заключения соответствующего соглашения непосредственно с Microsoft Corporation). Microsoft поддерживает создание дополнений к программам для MS Office, чтобы позво­лить использовать OpenDocument. В частности, Microsoft создал транслятор Office Open XML — проект «моста» между Office Open; XML и OpenDocument. Предполагается в течение 2007 г. выпустить версию этого программного обеспечения для Microsoft Word, Excel и PowerPoint. Для имен файлов, содержащих документы OpenDocument, используются следующие расширения:

•. odt — для текстовых документов;

•. ods — для электронных таблиц;

•. odp — для презентаций;

•. odg — для графической информации;

•. odf — для документов, содержащих формулы или математических уравнения.

Файл OpenDocument может быть или XML-файлом, который использует <office:document> как корневой элемент, или сжатым ZIР-архивом, содержащим множество файлов и каталогов. ZIР – формат используется чаще, так как может содержать бинар­ную информацию и обычно значительно меньше в размере. OpenDocument основан на разделении по четырем отдельным XML-файлам таких составляющих документа, как содержание, стили, метаданные и параметры настройки приложений.



Поделиться:


Последнее изменение этой страницы: 2021-04-05; просмотров: 113; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.14.142.115 (0.089 с.)