Информационные технологии управления

Вид материалаДокументы

Содержание


Язык гипертекстовой разметки HTML
Язык гипертекстовой разметки XML
3.3.2. Протокол передачи гипертекстовых данных HTTP
Тим Бернерс-Ли
HyperText Transfer Protocol (HTTP
3.3.3. Система адресации информационных ресурсов URL
3.3.4. Универсальный шлюзовой интерфейс CGI
Подобный материал:
1   ...   10   11   12   13   14   15   16   17   ...   36

Приведенные в примере идентификаторы обозначают следующее:

<р> - абзац,

- заголовок первого уровня,

- заголовок второго уровня. Идентификаторы, начинающиеся со знаков «
Язык обобщенной разметки SGML обладает такими важными функциями, как:
  • расширяемость. Автор документа может самостоятельно определять имена тэгов и атрибутов, задавая их синтаксис и семантику, путем создания определения типа документа, включающего совокупность тэгов разметки и правила их интерпретации;
  • структурированность. Документ может служить контейнером для других документов при неограниченной степени вложенности, что позволяет создавать сложные документы из более простых документов;
  • проверка корректности. Формальное описание грамматики языка позволяет автоматизировать проверку корректности SGML-документа в обрабатывающей системе поддержки текстовых документов.

Язык SGML широко распространен на практике, однако основная проблема его применения связана со сложностью этого языка. Так, полная спецификация языка SGML содержит около 500 страниц. По этой причине на основе SGML разработаны специализированные языки разметки документов.

Язык гипертекстовой разметки HTML

HTML представляет собой упрощенный вариант языка обобщенной разметки с ограниченными возможностями, созданный на основе языка SGML.

Язык разметки HTML – гипертекстовый язык разметки, используемый для публикации информационных ресурсов в WWW.

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

Основная область применения языка HTML – это публикация документов в сетях Internet/Intranet и поиск информации с использованием гипертекстовых ссылок. Возможности языка HTML обеспечивают вывод информации на экран в удобном для пользователя виде.

Гипертекстовый документ состоит из двух частей - контейнеров:

заголовка документа (HEAD)

тела документа (BODY)

Контейнер всего документа называется HTML. Ниже представлена структура простейшего документа HTML:





Содержание заголовка





Содержание тела документа




Основные классы элементов тела. Тело документа состоит из:
  • Иерархических контейнеров и заставок
  • Заглавий (от H1 до H6)
  • Блоков (параграфы, списки, формы, таблицы, картинки и т. п.)
  • Горизонтальных подчеркиваний и адресов
  • Текста, разбитого на области действия стилей (подчеркивание, выделение, курсив), математические описания, графику и гипертекстовые ссылки

Примеры описания
  • элементов стиля

    Элемент

    Значение

    .....

    Курсив(Italic)

    ...

    Усиление(BOLD)

    ...

    Телетайп

    ...

    Подчеркивание
  • ссылка скрыта

ссылка скрыта


  • таблиц





Average>

heightweght

  • форм




Ниже приведен список примеров полей ввода:


Простое текстовое поле:


Поле типа checkbox:


Поле типа password:


Кнопка Reset:


Графическая кнопка:




Таким образом, документ HTML – это текстовой файл, за исключением того, что некоторые из символов интерпретируются как разметка. Разметка придает документу структуру, и текст приобретает черты структурированного. Документ HTML как обычный текстовый файл может легко передаваться по сети с использованием протокола http.

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

Подводя итог, можно утверждать, что HTML уже сегодня не удовлетворяет в полной мере требованиям, предъявляемым современными разработчиками к языкам подобного рода. И ему на смену был предложен новый язык гипертекстовой разметки, мощный, гибкий, и, одновременно с этим, удобный язык XML.
Язык гипертекстовой разметки XML

XML (Extensible Markup Language - расширяемый язык разметки) - это язык разметки, описывающий целый класс объектов данных, называемых XML- документами. Так же, как и HTML, XML является подмножеством давно существующего, но не получившего пока широкого распростране­ния языка SGML

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


Однако:
  • сам по себе XML не содержит никаких тэгов, предназначенных для разметки, он просто определяет порядок их создания. Таким образом, если, например, мы считаем, что для обозначения элемента rose в документе необходимо использовать тэг , то XML позволяет свободно использовать определяемый нами тэг, и мы можем включать в документ фрагменты, подобные следующему:

rose
  • Набор тэгов может быть легко расширен. Если, предположим, мы хотим также указать, что описание цветка должно по смыслу идти внутри описания оранжереи, в которой он цветет, то просто задаем новые тэги и выбираем порядок их следования:



rose



Если требуется указать другие цветы в оранжерее, то нужно внести следующие изменения:



rose

cactus



Процесс создания XML документа очень прост и требует лишь базовых знаний HTML и понимания тех задач, которые мы хотим выполнить, используя XML в качестве языка разметки.

Таким образом, у разработчиков появляется уникальная возможность определять собственные команды, позволяющие им наиболее эффективно определять данные, содержащиеся в документе. Автор документа создает его структуру, строит необходимые связи между элементами, используя те команды, которые удовлетворяют его требованиям и добивается такого типа разметки, который необходим ему для выполнения операций просмотра, поиска, анализа документа.

Достоинства XML:
  • возможность использования в качестве универсального языка запросов к хранилищам информации. Сегодня разрабатывается рабочий вариант стандарта XML-QL(или XQL), который, возможно, в будущем составит серьезную конкуренцию SQL;
  • основан на объектно-ориентированной модели (Document Object Model, DOM), позволяющей легко преобразовывать XML-документы для хранения в объектно-реляционных и реляционных СУБД, и наобо­рот. (например, эти функции выполняет средство Oracle — XML SQL Utility for Java);
  • возможность использования XML-документов в качестве уникального способа хранения данных, который включает в себя одновременно средства для разбора информации и представления ее на стороне клиента. В этой области одним из перспективных направлений является интеграция Java и XML - технологий, позволяющая использовать мощь обеих технологий при построении машинно-независимых приложений, использующих, кроме того, универсальный формат данных при обмене информации;
  • возможность осуществления контроля корректности данных, хранящихся в документах, производить проверки иерархических соотношений внутри документа и устанавливать единый стандарт на структуру документов, содержимым которых могут быть самые различные данные. Это означает, что его можно использовать при построении сложных информационных систем, в которых очень важным является вопрос обмена информацией между различными приложениями, работающими в одной системе. Создавая структуру механизма обмена информации в самом начале работы над проектом, менеджер может избавить себя в будущем от многих проблем, связанных с несовместимостью используемых различными компонентами системы форматов данных;
  • программы-обработчики XML- документов не сложны и уже сегодня появились и свободно распространяются всевозможные программные продукты, предназначенные для работы с XML-документами. XML поддерживается сегодня в Microsoft Internet Explorer 4.0 и в бэта-версиях IE5. Было заявлено о его поддержке в последующих версиях Netscape Communicator, СУБД Oracle, DB2, в приложениях MS Office.

Все это дает основания предполагать, что, скорее всего, в ближайшем будущем XML станет основным языком обмена информации для информационных систем, заменив собой, тем самым, HTML. На основе XML уже сегодня созданы такие известные специализированные языки разметки, как SMIL, CDF, MathML, XSL, и список рабочих проектов новых языков постоянно пополняется.

В настоящее время XML используется:
  • как средство настройки представления данных для различных навигаторов и специфических устройств, а также в широком смысле — для прикладных программ и пользователей. Используя XML-документы в рамках архитектуры клиент/сервер, можно организовывать, трансформировать и представлять данные, сформированные для потребностей конкретного пользователя, для широкого класса различных устройств, включая графические и неграфические навигаторы, персональные цифровые помощники (PDA), такие, как Palm Pilot, сотовые телефоны, пэйджеры и т.д.;
  • как средство замены устаревшей технологии EDI (Electronic Data Interchange), что позволяет включать в сферу e-commerce множество средних и мелких предприятий, для которых технология EDI была недоступна из-за своей громоздкости и дороговизны;.
  • как средство интеграции ERP-системам. Например, в Oracle Applications Release 11i предполагается использовать основанные на XML средства интеграции как внутри Oracle Applications, так и с ERP-системами других поставщиков.

Тем не менее, на сегодняшний день язык гипертекстовой разметки HTML - самый простой и популярный. Все программы, совместимые с WWW поддерживают язык HTML. Программы клиентов и серверов WWW используют протокол передачи гипертекста http.

3.3.2. Протокол передачи гипертекстовых данных HTTP


Протокол – набор правил и процедур, управляющих взаимодействием системных компонентов, например, передачей информации между компонентами сети.

Протоколов, обслуживающих компьютерные сети разработано множество. Взаимодействие протоколов описано моделью OSI – моделью взаимодействия открытых компьютерных систем. Согласно этой модели протоколы сгруппированы в 7 групп – уровней. Самый высокий уровень включает протоколы, отвечающие за взаимодействие с прикладными программами – приложениями. Данные приложений должны быть преобразованы к виду, доступному для передачи по физической среде (проводной или беспроводной). HyperText Transfer Protocol (HTTP) – это протокол высокого уровня (уровня приложений), обеспечивающий передачу кодированной информации между клиентом и сервером сети, со скоростью, требующейся для распределенных информационных систем гипермедиа. HTTP используется World Wide Web с 1990 года.

Тим Бернерс-Ли

Физик лаборатории физики элементарных частиц Европейского Центра ядерных исследований (CERN). Разработчик системы гипертекста, создал первый текстовый браузер, позволяющего просматривать связанные гиперссылками текстовые файлы в среде он-лайн. Разработал протокол WWW .

HTTP основывается на концепции запросов/ответов. Запрашивающая программа (клиент) устанавливает связь с обслуживающей программой-получателем (сервер) и посылает запрос серверу, содержащий, кроме управляющей информации запроса, указание на версию протокола. Сервер отвечает сообщением, содержащим, кроме прочего, версию протокола, информацию о сервере и само тело ответа. Таким образом,

HyperText Transfer Protocol (HTTP)- протокол, основанный на принципах архитектуры клиент-сервер и используемый в internet для обмена гипертекстовыми документами между веб-сервером и веб-клиентом.

HTTP построен на дисциплине ссылок, где для указания ресурса, к которому должен быть применен данный протокол, используется Универсальный Идентификатор Ресурсов – URL.

3.3.3. Система адресации информационных ресурсов URL


Универсальный Идентификатор Ресурсов - Uniform Resource Locator - URL используется в World Wide Web для задания местоположения файлов на серверах сети Internet .


URL включает в себя:
  • метод доступа к ресурсу, т.е. протокол доступа (HTTP, Gopher, WAIS, FTP, Telnet и др.)
  • сетевой адрес ресурса (имя хост-машины и домена)
  • полный путь к файлу на сервере

В общем виде формат URL выглядит так:

протокол://доменный адрес ресурса в сети Internet/путь к файлу/имя файла

где протокол имеет одно из значений, перечисленных ниже:

ftp файл в локальной системе, или файл на анонимном FTP - сервере

http файл на сервере World Wide Web

gopher файл на сервере Gopher

wais файл на сервере WAIS (Wide Area Information Server)

news группа новостей телеконференции Usenet

telnet выход на ресурсы сети Telnet

Узловые компьютеры Internet по доменному адресу, используя Службу Доменных Имен (Domain Name Service – DNS), определяют IP-адрес Web-сервера и на него отправляют запрос на предоставление информации. При правильном функционировании DNS замкнута, т.е. если запрошенная информация имеется у кого-либо, то она будет найдена и сообщена клиенту, либо, если вопрос не имеет ответа, клиент получит сообщение о невозможности получения ответа на вопрос.

3.3.4. Универсальный шлюзовой интерфейс CGI


Большое количество приложений World Wide Web основано на использовании внешних программ, управляемых Web-сервером. Использование данных программ позволяет строить Web-приложения с динамически обновляемой информацией, хранящейся в базах данных или генерирующейся в зависимости от бизнес-правил решаемых задач. Для связи между Web-сервером и вызываемыми программами широко используется универсальный шлюзовой интерфейс - Common Gateway Interface (CGI), имеющий реализации как для Windows-ориентированных программ, так и для приложений, функционирующих в среде Unix и основанный на специальных программах - CGI - шлюзах.

CGI - шлюз - это программа, называемая CGI-скрипт, используемая для обмена данными Web-сервера с другими информационными ресурсами Internet.

CGI-скрипты:
  • сопровождают документ HTML, находясь на Web-сервере, или непосредственно внедрены в него;
  • запускаются Web-сервером для выполнения некоторой работы, выполняются на клиентской машине при загрузке документа или в другое время, например, когда активизируется ссылка, перемещается мышь, совершается щелчок на командной кнопке формы в HTML-документе, при этом:
  • Web-сервер, получив запрос к клиентской машины (загрузке документа, активизируется ссылка и т.п.) передает данные CGI-скриптам;
  • CGI-скрипт возвращает результат работы, отвечающий целям запроса, и завершает свое выполнение;
  • Web-сервер кодирует результат работы в соответствии со стандартом HTTP и использует HTTP для отправки результата клиенту.
  • могут быть написаны на любом языке программирования (C, C++, PASCAL, FORTRAN и т. п.) или командном языке (Shell, Cshell, командный язык MS-DOS, Perl и т. п.) в соответствии со спецификацией Common Gateway Interface. Поддержка скриптов в HTML не зависит от языка скрипта.

Назначение интерфейса CGI – обеспечить единообразный поток данных между сервером и прикладной программой, запускаемой из-под сервера.