Партнерка на США и Канаду по недвижимости, выплаты в крипто

  • 30% recurring commission
  • Выплаты в USDT
  • Вывод каждую неделю
  • Комиссия до 5 лет за каждого referral

Основы языка XML



Занятие № 6. Основы языка XML

ВОПРОС №1. Зачем нужен XML

XML позволяет использовать данные из большего числа источников данных и большим числом способов.

Так почему же вам нужно использовать XML? Потому что процветание современного бизнеса зависит от данных, которые могут поступать в любых форматах и из любого количества источников: баз данных, веб-страниц, электронных таблиц, электронной почты, если упомянуть лишь некоторые из них. XML дает вам возможность работать с большим количеством данных из большего количества источников и получать лучший результат от работы с этими данными. Использование XML настолько полезно и удобно, что вы слышите о нем все больше и больше.

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

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

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

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

НЕ нашли? Не то? Что вы ищете?

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

XML-данные, введенные в одном отделе, могут работать в разных программах в других отделах.

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

XML обозначает Extensible Markup Language (Расширяемый язык разметки). «Расширяемым» это язык называется не зря: его можно расширять, адаптируя практически под любые нужды — в бизнесе, издательском деле, государственных учреждениях, прикладной науке и фундаментальных исследованиях — везде, где информацию требуется передавать из одной области применения в другую.

XML делает возможным обмен данными между ранее несовместимыми системами.

Язык XML первоначально разрабатывался для обмена данными в Интернете. В настоящее время он стал открытым и широко принятым стандартом для обмена данными между любыми компьютерными системами.

Часто можно также слышать, что XML — «язык, независимый от платформы». Это означает, что любая программа, поддерживающая XML, может читать и обрабатывать любые XML-данные, независимо от операционной системы и аппаратных средств компьютера. Эта возможность позволяет использовать программы для настольных систем, например, Microsoft Word или Microsoft Excel, непосредственно для работы с данными, созданными на большой ЭВМ. Сегодня поддержку XML обеспечивает все возрастающее число компьютерных программ. Применение этой технологии в бизнесе, общественной сфере, науке, образовании и многих других областях будет расти и в будущем.

Помощь в освоении XML можно получить в информационном (ИТ) подразделении или просто у специалиста по XML.

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

Так где же взять такую систему? Вы должны спланировать и построить ее сами. XML-систему нельзя просто купить и установить. Для развертывания XML-системы потребуется провести совместную работу с ИТ-подразделением или кем-то, кто разбирается в проектировании и создании различных компонентов XML-системы.

Это может потребовать серьезных усилий. Однако нужно иметь в виду, что людям, которые будут использовать XML-систему, не обязательно придется изучать новое программное обеспечение или язык XML. Как разработчик, так и пользователи XML-системы для создания, обработки и совместного использования данных смогут использовать знакомые документы, электронные таблицы, базы данных и веб-формы. Обычно XML работает незаметно для пользователей.

Компоненты типичной XML-системы.

Типичная XML-система состоит из файлов трех типов:

XML-данные — это данные пользователя плюс XML-теги, которые описывают смысл и структуру данных.

XML-схемы задают правила, определяющие, какие объекты могут, а какие не могут присутствовать в файлах данных. Например, схема может запрещать пользователям вводить слова в поле даты.

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


ВОПРОС №2. Общие сведения о файлах данных XML

Данные — ключевой компонент любой XML-системы.

Главным компонентом системы XML являются данные. Файлы данных XML содержат ваши данные и набор кодов, называемых тегами, которые поясняют значение данных. Это одна из причин адаптивности и полезности языка XML, по которой его называют расширяемым.

Пример данных XML.

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

На иллюстрации показан пример файла данных XML для кошки по кличке Izzy. Здесь теги представляют комбинацию угловых скобок и текста:

<CAT>, <NAME>, <AGE>

и так далее.

Тег XML фактически состоит из двух частей — открывающего тега и закрывающего тега, например:

<BREED> … </BREED>

Косая черта (/) указывает, что данный тег является закрывающим. В открывающий и закрывающий теги заключаются любые данные, например:

<BREED>Siamese</BREED>

Назначение тегов XML — ясно описать заключенные в них данные. Ответом на вопрос «что могут означать теги» будет «они могут означать все, что вы хотите, чтобы они означали». Именно это (но не только) делает язык XML «расширяемым». В данном случае значение тегов и данных возраст – «6», declawed (когти обрезаны) — «no» и license — «Izzl138bod» вполне понятно.

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

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

Дополнительные элементы файла данных XML.

Объявления

Корневой элемент

Атрибут

Теги и данные

Кроме данных и тегов, файлы данных XML содержат объявления, корневые элементы и атрибуты. Эти названия могут звучать несколько таинственно, но после кратких определений все станет просто и логично.

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

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

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

Ну и, конечно, основные компоненты файла — это теги и данные. Теги и данные можно рассматривать также как дочерние элементы, входящие в состав корневого элемента <CAT> … </CAT> .

Правило

Пример

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

<cat>

  <name>Izzy</name>

</cat>

Если введен открывающий тег, должен быть обеспечен и закрывающий тег (за исключением пустых тегов, которые объясняются ниже).

<cat> ... </cat>

Все открывающие и закрывающие теги должны соответствовать друг другу.

Правильно

<cat> ... </cat>

Неправильно

<cat> ... </Cat>

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

Горизонтальная линия

<hr/> 

Разрыв строки

<br/> 

Все значения атрибутов должны заключаться в одинарные или двойные кавычки.

Правильно

patient_id="389467"

Неправильно patient_id=389467

Все теги должны быть правильно вложены. Последовательность закрывающих тегов должна зеркально дублировать последовательность открывающих тегов.

Правильно

<cat>

  <name>Izzy</name>

</cat>

Неправильно

<cat>

  <name>Izzy</cat>

</name>

Все объекты должны быть объявлены. Только не впадайте в панику. Объект — это область виртуальной памяти. Он может содержать изображения, текст или символы, например, символ авторского права. На иллюстрации показаны объекты для символа авторского права и угловых скобок.

&copy; ©

&lt; <

&gt; >

Базовые правила построения XML-файла с правильной структурой.

Что означает фраза «XML-файл с правильной структурой»? Все очень просто: файл XML построен правильно, если он отвечает небольшому набору строгих правил.

Например, язык XML чувствителен к регистру букв, поэтому различает заглавные буквы. Чтобы данные XML были правильно построены, в соответствующих тегах должны использоваться идентичные последовательности заглавных и прописных букв. То есть, <CAT> ... </CAT> будет записано правильно, а <CAT> ... </Cat> — нет.

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

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

В ходе практического занятия мы нарушим одно из правил построения XML и посмотрим, как Word  справится с этой ошибкой.

ВОПРОС№3. Общие сведения о схемах XML

Схема — второй базовый компонент XML-системы.

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

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

Схемы задают правила, которые гарантируют правильность данных.

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

Важно различать правила, содержащиеся в схеме, и правила построения XML. Правила построения XML диктуют, как разработчик или ИТ-подразделение должны создавать структуру данных, включая соответствующие схемы. Схема — часть XML и, следовательно, она также должна отвечать всем правилам построения XML.

С другой стороны, правила в схеме диктуют, чему разрешено, а чему не разрешено быть в данной структуре данных. Например, схема может задавать, что определенный тег должен содержать только даты, а другой может содержать только цены. Без схемы поле даты в правильно построенном XML могло бы содержать текст, а в поле цены можно было бы ввести дату. Данные XML были бы подобны грамматически правильному, но лишенному смысла предложению.

Схема может содержаться в файле данных или быть отдельным файлом, связанным с файлом данных. В любом случае, когда файл данных используется совместно с схемой, этот файл должен соответствовать своей схеме. При создании отдельного файла схемы этот файл получает расширение. xsd. Файлы данных имеют расширение. xml.

Части XML-схемы

Объявления

Необязательное объявление последовательности (определяет порядок тегов в файле данных)

Тип данных

Схемы могут быть чрезвычайно сложными, и обычно их создают специалисты после выяснения типов данных, в которых нуждаются пользователи, а также порядка работы XML-системы. Понимание структуры схемы поможет пользователю в формировании задания на ее разработку. На иллюстрации показана схема, задающая правила для набора тегов <CAT> ... </CAT> , описываемых в предыдущем уроке.

Эта схема содержит набор объявлений. Объявления определяют типы данных, которые может содержать каждый тег. В данном случае объявление sequence (последовательность) также устанавливает порядок тегов, которые располагаются внутри корневого элемента <CAT>. В любом файле данных, который использует эту схему, теги должны располагаться в данном порядке. Далее объявления type определяют тип данных, который может содержать каждый тег в файле данных: строка символов (string), положительное целое число (positiveInteger) или выбор Да\Нет (boolean). Как и можно предположить, теги в файле данных не могут содержать данных, типы которых отличаются от объявленных в схеме. Именно этот механизм позволяет с помощью схемы контролировать правильность XML-данных.

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

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

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

ВОПРОС№ 4. Общие сведения о преобразованиях XML

Преобразование: третий базовый компонент любой XML-системы.

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

Преобразования позволяют автоматизировать обмен данными.

Ранее уже упоминалось, что XML, кроме структурирования и проверки правильности данных, обеспечивает также мощные возможности их конвертации и реорганизации. Механизм выполнения этих процедур называется преобразованием языка расширяемых таблиц стилей (XSLT) или, если проще, преобразованием. (Поэтому файлы преобразований имеют расширение. xsl.)

Преобразование задает набор правил (да-да, еще один набор правил) для преобразования данных, описанных одним набором тегов, в данные, описанные другим набором тегов.

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

Независимо от того, как должны использоваться данные, преобразование поможет в этом.

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

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

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

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

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

Один набор тегов строит таблицу в веб-странице Одно объявление переносит в таблицу XML-данные В каждой ячейке таблицы отображается определенная часть данных

Подобно схемам, преобразования представляют собой XML-файлы, которые также должны удовлетворять правилам построения XML. Преобразования также могут быть чрезвычайно сложны, и написание их — дело специалистов. Опять же, однако, понимание основ преобразований поможет в достижении нужных результатов за счет правильного планирования и постановки задачи. На иллюстрации показана часть преобразования, которое записывает данные из файла <CAT>, обсуждаемого в предыдущих уроках, в таблицу веб-страницы.

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

Для интересующихся: язык расширяемых таблиц стилей — это не язык, отдельный от XML, это — словарь XML. А преобразование — всего лишь еще один XML-документ.

ВОПРОС№ 5. Общие сведения о XML в Microsoft Office

Программы Office обеспечивают свойственные им варианты поддержки XML

XML поддерживается несколькими программами Microsoft Office. Каждая программа снабжена инструментальными средствами XML, отвечающими характеру данной программы. В предыдущем упражнении было показано, как Word позволяет сохранять файлы в виде XML. К документам Word можно также присоединять схемы и преобразования.

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

Чтобы получить дополнительные сведения о поддержке XML программой Office, откройте справку по данной программе и выполните поиск по ключевому слову «XML».

Что касается XML-схем, преобразований или данных от сторонних поставщиков, программы Microsoft Office полностью готовы к работе с ними.

Практическое занятие