Как уловить дух Сети

Как уловить дух Сети

В ходе усовершенствования для удовлетворения требований потребителей SGML вскоре накопил столько разнообразных параметров, исключений и запутанных синтаксических конструкций, что стал совершенно непонятен для большинства пользователей. Корпорации вынуждены были нанимать на работу специалистов, обладающих большим опытом работы с SGML, а также предоставлять им время на дорогостоящее создание эффективного набора дескрипторов и преобразование всех старых документов. Кроме того, этот язык был рассчитан на получение конечного результата в виде бумажной копии, а Web-среды тогда еще не существовало вообще. SGML использовался тогда на больших компьютерах, поэтому его код быстро разрастался. В итоге его размер значительно превысил размеры современных аплетов, которыми в настоящее время обмениваются пользователи Internet.

Созданию XML потребовалось уделить гораздо больше внимания, но впоследствии это принесло большие выгоды. Коротко говоря, HTML позволяет всем решать некоторые задачи, a XML позволяет некоторым решать практически любые задачи.

В 80-х годах стало возможно не только создавать текст, но и обмениваться им электронным образом: с помощью электронной почты, справочных файлов и компакт-дисков. Изобретение гипертекста предоставило пользователям новые возможности для работы с электронными текстами. Теперь можно было, щелкая на ссылках, быстро переходить к другим частям текста. Отталкиваясь от этой идеи, Тим Бернерс-Ли (Tim Berners-Lee) использовал основы SGML и DTD-определение для создания гипертекста. Таким образом, появление языка гипертекстовой разметки HTML (HyperText Markup Language) предопределило возможность появления и развития Web-среды.

Язык HTML представляет собой всего лишь набор дескрипторов. Дескриптор Н1 обозначает заголовок первого уровня, а дескриптор Р — абзац текста. Вопреки определению, “язык” HTML на самом деле является словарным списком, а не фабрикой по созданию новых дескрипторов, какой был его предшественник SGML.

Затем появился новый тип программного обеспечения, броузер (browser), способный копировать по сети HTML-страницы текста, считывать дескрипторы и с помощью DTD- определения (созданного Тимом Бернерс-Ли) применять собственный формат для каждого элемента текста с отображением полученного результата на экране.

Язык HTML способствовал росту числа Web-страниц, потому что его дескрипторы обладали рядом неоспоримых преимуществ.

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

Но с увеличением масштаба Web-среды и размера отдельных Web-узлов до миллиона страниц обнаружились некоторые ограничения HTML.

  • Дескрипторы не несут никакой информации о смысле текста, например ясно, что в данном месте располагается заголовок, но о чем он?
  • Дескрипторы могут появляться практически в любом порядке, потому что DTD- определение не строго определяет структуру документа (чтобы поощрить всех размещать свою информацию в Web-среде). Этот недостаток определения означает, что программное обеспечение обладает весьма приблизительными Сведениями о структуре документа. Поэтому для доступа к сведениям об авторе или ц,ене ему приходится просматривать все содержимое документа, а не переходить сразу же к нужному структурному элементу. Поиск в HTML-тексте и его и обработка является крайне трудоемким и ненадежным занятием.
  • Для организации электронной коммерции потребовалось затратить много усилий на предоставление доступа к базе данных и обмен данными с ней.

HTML-текст способен предоставить только очень общую информацию о перечисленных ниже элементах.

  • Заголовок документа.
  • Текст документа.
  • Заголовок раздела.
  • Абзац.
  • Таблица.
  • Ссылка, после щелчка на которой броузер перейдет к другой Web-странице.

Язык HTML не указывает программному обеспечению на смысл элемента, например: это элемент с заголовком книги, это элемент с именем автора, причем оба они содержатся в элементе с описанием книги. В HTML-тексте все эти элементы отмечаются как обычные абзацы. В таком тексте для программы трудно задать условия поиска в описании книги отдельного абзаца с названием книги, а не имени автора. Для создателей обычных Web- страниц это не имеет практически никакого значения, но для крупной компании, которая хотела бы организовать заказ и продажу продуктов в Weh-среде, огромную роль играет возможность установления различия между разными типами контента.

В течекие многих лет потребители предлагали поставщикам расширить используемый набор дескрипторов, которые помогли бы создавать Web-страницы с более привлекательным внешним видом. Однако для устранения ошибок, вызванных небрежной работой пользователей, создатели броузеров вынуждены были писать специальный код для обработки исключительных ситуаций, ошибок и проблем. Поэтому размер кода программного обеспечения стремительно рос, а его работа замедлялась.

Для решения этих проблем в 1996 году был создан язык XML (extensible Markup Language), который фактически стал стандартом в 1986 году. По fcym, XML был упрощенной версией SGML. Аналогично SGML, язык XML позволяет создавать собственные словари дескрипторов для разнообразных целей. Поскольку XML является подмножеством SGML, то текст на языке XML может считывать любой SGML-процессор. В связи с недавним появлением XML текст на этом языке в его чистом ввде могут считывать только броузеры самых последних версий. Поэтому серверы должны преобразовывать его в текст на HTML. Тем не менее XML превосходит SGML в отношении многоцелевой разметки, потому что представляет способ генерации собственных дескрипторов для личных целей.

XML-дескрипторы анализируют и идентифицируют контент; а не формат и способны сообщить следующую информацию.

  • Этот документ является каталогом.
  • Это описание книги.
  • Это название книги.
  • Это подзаголовок книги.
  • Это нумерация страниц книги.
  • Это цена книги в долларах США.
  • Это ISBN-код.

Ниже приводится пример XML-разметки текста рекламной статьи в жанре “функции и преимущества” (<featuresandbenef its), которая обычно содержит одновременно формулировку проблемы и ее решение.

<featuresandbenefits

<сЬа11епдеСегодня даже самые небольшие бизнес-предприятия должны иметь свой Web-узел. Он нужен, чтобы упростить для клиентов процесс поиска информации о наших продуктах, просмотреть благодарные отзывы наших клиентов, найти наш магазин на карте. </challenge

<solutionPR Express предлагает быстрый и простой способ создания Web-узлов, который наилучшим образом представит ваш бизнес.</solution

<featuresandbenefits

Указанные в документе дескрипторы вызывают документ с DTD-определением, в котором объявлены все элементы, показаны их внутренние компоненты, а также порядок и частота их расположения. Например, для определения дескрипторов, которые используются в этой рекламной статье, разработчики объявили элемент f eaturesandbenef its, который включает одновременно формулировку проблемы и ее решение. В DTD-опреде- лении сказано, что компонент challenge содержит обычный текст. Этот текст определяется как символьные данные, которые следует проверить специальным программным обеспечением, предназначенным для синтаксического анализа, т. е. парсером. Аналогично определяется компонент solution. В целом это определение компонента featuresandbenef its имеет следующий вид:

<!ELEMENT featuresandbenefits (challenge, solution)

<!ELEMENT challenge (#PCDATA)

<!ELEMENT solution (#PCDATA)

Дескрипторы контента напоминают имена записей и полей (или строк и столбцов) в реляционной базе данных. Иначе говоря, элементы-дескрипторы напоминают объекты в объектно-ориентированной базе данных. Какое бы сравнение ни использовалось, применяя XML-дескрипторы, разработчик создает то, что программисты называют “структурированной” информацией (в отличие от обычно небрежно организованных и непредсказуемых документов). Поэтому программисту довольно легко удается обработать такой контент и послать его в базу данных либо извлечь необходимые факты из базы данных и вставить их в документ без ошибочной вставки адреса в место размещения номера телефона. По сути, такой документ становится небольшой базой данных, которая способна обмениваться данными с другими базами данных.

Таким образом, XML-формат позволяет легко создавать программы, которые манипулируют контентом XML-документов. XML-формат усиливает строгость модели контента и принуждает писателей придерживаться дисциплины использования дескрипторов (без исключений, ошибок и сумасбродных идей). Он ограничивает количество возможных дескрипторов и организационных моделей для того, чтобы обеспечить простоту и компактность программного обеспечения, т. е. парсеров и броузеров. Любой словарь на основе XML имеет методичную и точную основу, поэтому является недвусмысленным, по крайней мере в контексте программного обеспечения. Удивительно, но после непродолжительного обучения любой пользователь может научиться читать любые XML-документы. Если оригинальные дескрипторы созданы достаточно грамотно, то даже новичок может сообразить, для чего предназначен каждый элемент и к чему он относится.

Вот почему XML называется расширенным (extensible) языком. Любой разработчик может размечать данные, называя их произвольным образом, даже если другие подразумевают под этими же названиями совсем другие понятия.

XML-файлы являются текстовыми файлами, в которых для всех символов используются стандартные коды, например ASCII или Unicode, поэтому могут считываться практически любым программным обеспечением. Кроме того, такая разметка содержит метаданные, которые делают файл “самодостаточным” и упрощают его обработку. Даже совершенно незнакомая вам программа способна считать XML-документ, скопировать его содержимое, вставить и обработать данные. Язык HTML фокусируется в основном на форматировании контента в броузере, a XML предоставляет программному обеспечению возможность выполнять более сложную обработку: поиск, сортировку, реорганизацию, вставку и удаление по желанию пользователя (а также позволяет скопировать по сети небольшой аплет вместе с этим файлом).

Язык XML достаточно демократичен. С его помощью любой пользователь может создать словарь дескрипторов, определяя элементы контента и способ их организации в DTD-определении или схеме. После отображения в Web-среде в XML-документе со своим DTD-определением эти дескрипторы и структуры становятся доступными для чтения и обработки всем желающим. Они не могут быть собственными или скрытыми, поэтому все желающие могут дизассемблировать документ, повторно использовать его части и транслировать дескрипторы в собственный словарь. В отдельных отраслях могут использоваться их собственные словари. Некоторые бизнес-предприятия могут иметь свои собственные варианты словарей и легко транслировать дескрипторы туда и обратно.

В фундаментальном аспекте XML отделяет структурную модель, фактический контент и правила форматирования контента.

  • DTD-определение задает абстрактную структуру дня этого типа документа, создавая словарь и организацию дескрипторов.
  • Сам по себе документ использует эти дескрипторы для разметки фактического контента.
  • Одна или несколько таблиц стилей указывают броузеру, какой формат следует применить для контента с использованием этих дескрипторов в разных обстоятельствах (устаревший броузер, новый броузер, карманный компьютер).

Такое разделение труда часто означает, что создателю не всегда удастся увидеть внешний вид созданного документа. Эта ситуаций напоминает ужасные дни использования редакторов типа vi в ЦМХ-подобнйх операционных системах. Но для создания такого текста теперь можно использовать программное обеспечение, которое способно отображать получаемый результат в соседнем окне и сообщать о выходе за пределы страницы, неправильном использовании элемента или удалении обязательного элемента. Способ письма остается прежним, но теперь пбд рукой у писателя всегда есть монитор. При этом, очевидно, утрачивается независимость текстового процессора, при работе с которым можно было произвольным способом форматировать и структурировать свой текст. Но таким образом ваш текст становится гораздо бЬлее полезным для читателей

Таким образом, мы покидаем свободный мир документов и вступаем в мир тщательно определенных и стандартизованных объектов: этапов, подписей, определений, введений и запретов. Каждый элемент, указанный с помощью XML-дескриптора, становится дискретным объектом. Очень часто он хранится в виде объекта в объектно-ориентированной базе данных, однако большинство Web-писателей совершенно не интересует, как и где они сохраняются программным обеспечением. Главное заключается в том, что теперь документ создается не в виде единого целого, а в виде набора отдельных объектов без Заранее известной структуры, в которую их предполагается интегрировать и форматировать.


Instagram

Instagram