Green-sell.info

Новые технологии
0 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Xml язык программирования

Десять правил XML, которые нужно знать

Как правильно использовать XML

XML как инструментальное средство

Часто используемые сокращения
  • CDATA: Character Data (символьные данные)
  • DOM: Document Object Model (объектная модель документа)
  • E4X: ECMAScript for XML (ECMAScript для XML)
  • IDE: Integrated Development Environment (интегрированная среда разработки)
  • W3C: World Wide Web Consortium (консорциум WWW)
  • XML: Extensible Markup Language (расширяемый язык разметки)
  • XSLT: Extensible Stylesheet Language Transformations (расширяемый язык преобразований таблиц стилей)

В настоящее время XML воспринимается как нечто само собой разумеющееся. Он повсюду! Но если посмотреть со стороны, то можно увидеть, что это мощная технология. Есть интегрированные среды разработки, которые помогают строить XML-деревья. Есть целый ряд технологий проверки корректности XML-кода. Есть XSLT – специальный язык преобразования XML. Поддержка XML встроена даже непосредственно в синтаксис некоторых языков (как, например, E4X в ActionScript).

Но у XML есть и обратная сторона. Его можно использовать неправильно. Его можно использовать плохо. Он может быть чрезмерно сложным. Он может быть недоопределенным. С ним может быть трудно работать. Что нужно сделать для более эффективного использования этой мощной технологии? В своей статье я дам 10 советов, которые помогут ответить на этот вопрос.

Не используйте XML в качестве имени файла или корневого тега

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

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

Не переопределяйте обобщенные или специфичные для языка конструкции

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

Этим я хочу сказать, что специфичные для языка конструкции нужно хранить вне XML. Как часто вы встречали 07-18-2010 ? Что такое NSDate? Ага, это имя класса для работы с датами на прикладной платформе. Что произойдет при смене платформы или языка? Потребуется преобразование тегов NSDate во что-то другое, что используется на новой платформе.

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

Еще одно важное правило – избегайте использования в XML излишних обобщений. Взгляните на следующий пример (листинг 1):

Листинг 1. Обобщенное дерево узлов

Что это означает? Я понял, что это список пользователей. Но человеку трудно это читать и редактировать. Еще хуже то, что этот XML-код очень трудно использовать в средствах, подобных XSLT, или проверять его корректность при помощи схемы. В листинге 2 показано, что на самом деле означает приведенный выше XML-код.

Листинг 2. Более эффективное дерево узлов

Разве так не лучше? Код говорит то, что означает, и означает то, что говорит. Его легче читать и анализировать. Его легче проверять и преобразовывать при помощи XSLT. Он даже меньше по размеру.

Не делайте файлы слишком большими

Знаю, что вы скажете: «Дисковая память стоит дешево. За десять центов я куплю еще один терабайт». Это верно. Вы действительно можете создавать гигабайтные XML-файлы. Но программирование – это постоянные компромиссы. Приходится менять дисковое пространство на время или память на время. А при работе с огромным XML-файлом вы получаете худшие стороны и того, и другого. Файл занимает много места на диске, а на его анализ и проверку уходит много времени. Кроме того, большой файл исключает использование DOM-анализатора, поскольку построение дерева требует бесконечного времени и огромного количества памяти.

Какова же альтернатива? Можно создать несколько файлов. Один выступает в качестве индекса, а другие содержат большие ресурсы, которые, возможно, будут нужны не всем пользователям этого XML. Другой вариант– вынос всех больших фрагментов CDATA из XML-файла и помещение их в свои собственные файлы с собственными форматами. Если вы хотите хранить все данные вместе, запакуйте все файлы в новый файл с новым расширением. Любой популярный язык программирования имеет модули, облегчающие быструю упаковку и распаковку файлов.

Не используйте пространства имен, если в этом нет острой необходимости

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

Однако пространства имен очень затрудняют синтаксический анализ и управление данными. Они сбивают с толку расширения языков программирования, такие как E4X. Они затрудняют использование XML в XSLT. Наконец, они делают XML-файлы намного более трудными для чтения.

Поэтому используйте пространства имен XML, только если это действительно необходимо. Не используйте их просто потому, что «XML позволяет это делать». XML прекрасно работает и без пространств имен.

Не используйте специальные символы

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

Я рекомендую избегать использования любых специальных символов в названиях элементов и атрибутов.

Используйте XML Schema

Синтаксический анализ XML является непростой задачей. Для точного анализа необходимо проделать большую работу по защите кода от возможного отсутствия и некорректного использования тегов или атрибутов. Это дополнительная работа по написанию кода, дополнительная сложность, а также затенение реальной бизнес-логики, являющейся вашей главной заботой. Как избежать этого? Проверяйте XML перед его использованием. Для этого можно использовать несколько стандартов. Можно указать Document Type Definition (DTD) или XML Schema (ссылки на информацию о DTD и XML Schema приведены в разделе Ресурсы). Лично я нахожу XML Schema намного более простой в работе, но если вы новичок в этом деле, попробуйте различные системы проверки корректности.

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

Нумеруйте версии

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

Читать еще:  Системы программирования картинки

Сочетайте узлы и атрибуты

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

Листинг 3. Список пользователей

Должен ли быть тегом? Я утверждаю, что он должен быть атрибутом. Код становится более коротким и осмысленным, появляется возможность искать пользователя по идентификатору при помощи простого XPath-выражения ( /users/user[@id=1] ).

Чтобы код был читабелен, несомненно лучше использовать атрибуты, как показано в листинге 4.

Листинг 4. Более удобный список пользователей

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

Используйте CDATA, но не злоупотребляйте этим

XML налагает множество ограничений на использование определенных символов: кавычек, амперсандов, знаков «меньше» и «больше» и т.д. Однако на практике эти символы используются очень часто. Поэтому приходится либо преобразовывать все в безопасный для XML формат, либо помещать большие фрагменты текста, кода или еще чего-нибудь в блоки CDATA . Мне кажется, что разработчики избегают использования CDATA , поскольку думают, что это затруднит синтаксический анализ. Но разделы CDATA анализировать не труднее, чем что-либо другое – большинство DOM-анализаторов обрабатывает их самостоятельно, поэтому вам даже не нужно думать об этом.

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

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

Храните необязательные данные в отдельной области

До сих пор я рассказывал об XML-документах с жестким форматом. Я даже рекомендовал использовать технологию проверки корректности, (например, XML Schema), гарантирующую жесткую структуру. Тому есть веская причина: структурированные данные легче анализировать. А если нужна определенная гибкость? Я рекомендую размещать необязательные данные в отдельном блоке в своем собственном узле. Взгляните, например, на листинг 5.

Листинг 5. Неупорядоченная запись о пользователе

Эта запись содержит все ожидаемые данные о пользователе. Я согласен с first, middle, last, но зачем здесь runningpace? Это необходимо? Будете ли у вас много таких полей? Будут ли они расширяемыми? Если ответ на все эти вопросы утвердителен, я порекомендовал бы сделать так (см. листинг 6):

Листинг 6. Хорошо структурированная запись о пользователе

При таком подходе вы можете иметь сколько угодно полей, не загромождая пространство имен родительского элемента . Вы даже можете проверить корректность этого документа, а также обратиться к определенному полю при помощи XPath-выражения (//user/userdata/field[@name=’runningpace’).

Заключение

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

Введение в XML. Структура XML документа

Введение в XML

В 1986 году, задолго до того, как идея создания сети Веб была воплощена в жизнь, универсальный стандартизированный язык разметки SGML ( Standardized Generalized Markup Language ) был утвержден в качестве международного стандарта ( ISO 8879 ) определения языков разметки, хотя SGML существовал еще с конца шестидесятых. Он использовался для того, чтобы описывать языки разметки, предоставляя при этом автору возможность давать формальные определения каждому элементу и атрибуту языка .

Язык HTML первоначально был всего лишь одним из SGML -приложений. Он описывал правила, по которым должна быть подготовлена информация для World Wide Web . Таким образом, язык HTML — это набор предписаний SGML , сформулированных в виде определения типа документа ( DTD ), объясняющих, что именно обозначают тэги и элементы. Схема DTD для языка HTML хранится в веб-браузере.

К недостаткам языка HTML можно отнести следующие:

  • HTML имеет фиксированный набор тэгов. Нельзя создавать свои тэги, понятные другим пользователям.
  • HTML — это исключительно технология представления данных. HTML не несет информации о значении содержания, заключенного в тэгах.
  • HTML — «плоский» язык. Значимость тэгов в нем не определена, поэтому с его помощью нельзя описать иерархию данных.
  • В качестве платформы для приложений используются браузеры. HTML не обладает достаточной мощью для создания веб-приложений на том уровне, к которому в настоящее время стремятся веб-разработчики. Например, на языке HTML невозможно разработать приложение для профессиональной обработки и поиска документов.
  • Большие объемы трафика сети. Существующие HTML -документы, используемые как приложения, перегружают Интернет большими объемами трафика в системах клиент-сервер. Примером может служить пересылка по сети большого по объему документа, в то время как необходима только небольшая часть этого документа.

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

Группа экспертов по языку SGML , возглавляемая Джоном Боузэком ( Jon Bosak ) из компании Sun Microsystems , приступила к работе по созданию подмножества языка SGML , которое могло бы быть принято Web -сообществом. Решено было удалить многие несущественные возможности SGML . Перестроенный таким образом язык назвали XML . Упрощенный вариант оказался значительно более доступным, чем оригинал, его спецификации занимали всего 26 страниц по сравнению с более чем 500 страницами спецификаций SGML .

Рассмотрим более детально структуру и особенности этого языка.

XML ( eXtensible Markup Language ) — рекомендованный W3C язык разметки . XML — текстовый формат , предназначенный для хранения структурированных данных, для обмена информацией между программами, а также для создания на его основе специализированных языков разметки. XML является упрощённым подмножеством языка SGML .

Язык XML имеет следующие достоинства:

  • Это человеко-ориентированный формат документа, он понятен как человеку, так и компьютеру.
  • Поддерживает Юникод.
  • В формате XML могут быть описаны основные структуры данных — такие как записи, списки и деревья.
  • Это самодокументируемый формат, который описывает структуру и имена полей также как и значения полей.
  • Имеет строго определённый синтаксис и требования к анализу, что позволяет ему оставаться простым, эффективным и непротиворечивым.
  • Широко используется для хранения и обработки документов;
  • Это формат, основанный на международных стандартах;
  • Иерархическая структура XML подходит для описания практически любых типов документов;
  • Представляет собой простой текст, свободный от лицензирования и каких-либо ограничений;
  • Не зависит от платформы;
  • Является подмножеством SGML , для которого накоплен большой опыт работы и созданы специализированные приложения;
Читать еще:  Уроки программирования с нуля бесплатно

К известным недостаткам языка можно отнести следующие:

  • Синтаксис XML избыточен.
    • Размер XML документа существенно больше бинарного представления тех же данных (порядка 10 раз).
    • Размер XML документа существенно больше, чем документа в альтернативных текстовых форматах передачи данных (например JSON , YAML ) и особенно в форматах данных, оптимизированных для конкретного случая использования.
    • Избыточность XML может повлиять на эффективность приложения. Возрастает стоимость хранения, обработки и передачи данных.
    • Для большого количества задач не нужна вся мощь синтаксиса XML , и можно использовать значительно более простые и производительные решения.

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

    Основы XML для начинающих

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

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

    Определение языка XML

    XML (eXtensible Markup Language) – универсальный и расширяемый язык разметки данных, который не зависит от операционной системы и среды обработки. Xml служит для представления неких данных в виде структуры, и эту структуру Вы можете сами разработать или подстроить под ту или иную программу или какой-то сервис. Именно поэтому данный язык называют расширяемый, и в этом является его главное достоинство, за которое его так ценят.

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

    Как уже отметилось выше xml очень распространенный и универсальный язык, посредствам которого практически все приложения, как web, так и просто для компьютера используют его в качестве обмена информации, так как с помощью него можно очень легко обмениваться данными между приложениями или сервисами, которые даже написаны на разных языках. В связи с чем, каждый начинающий программист, который занимается абсолютно любым программированием, должен иметь представление об XML. Если Вы хотите стать web мастером, то Вы просто обязаны знать XML, а как стать WEB Мастером и что для этого нужно знать, мы с Вами уже рассматривали.

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

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

    Также мне один раз пришлось хранить данные xml в базе MS SQL 2008, для того чтобы лучше представлять эти самые данные и обмениваться ими между сервером и клиентской частью приложения, это мы рассматривали в статье — Transact-sql – работа с xml.

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

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

    Переходим к практике. И все примеры, которые мы будем рассматривать, я буду писать в Notepad++ только потому, что он очень удобен, но сейчас не будем об этом разговаривать, так как мы уже это рассматривали в статье — Чем хорош Notepad++ для начинающего разработчика.

    XML теги

    Язык XML для разметки использует теги (теги регистрозависимы), но не такие теги как в html, а те, которые Вы придумаете сами, но у xml документа есть также четкая структура, т.е. есть открывающий тег и закрывающий, есть вложенные теги и есть, конечно же, значения, которые расположены в этих тегах. Другими словами, все, что нужно для начальных знаний xml — это просто придерживаться этим правилам. Все вместе открывающий, закрывающий тег и значение называется элементом и весь xml документ состоит именно из элементов, которые в совокупности образуют структуру данных. У xml документа может быть только один корневой элемент, это запомните, так как если Вы напишите два корневых элемента, то это будет ошибка.

    И пришло время привести пример xml разметки, и первый пример пока для синтаксиса:

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

    Теперь давайте приведем пример, настоящего xml документа:

    Как видите, я здесь просто привел пример своего рода каталога книг, но я не объявлял этот документ, т.е. не писал XML декларацию, которая говорит приложению, которое будет обрабатывать эти данные, что здесь расположены данные именно xml и в какой кодировке они представлены. Также можно писать комментарии и атрибуты, так давайте приведем пример такого документа:

    Где первая строка и есть объявление декларации о том, что это документ XML и его необходимо читать в кодировке UTF-8.

    Эти данные без обработки будут выглядеть, например, в браузере (Mozilla Firefox) следующим образом:

    Надеюсь, Вы понимаете, что здесь catalog — это корневой элемент, который состоит из элементов book, который в свою очередь состоит из элементов name, author и comment, также для примера я задал несколько атрибутов у элемента catalog и у элемента book.

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

    Язык XML практика и теория

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

    Создание XML файла

    XML (Extensible Markup Language) — расширяемый язык разметки, применяется для создания баз данных, web страниц, используется для обмена информацией между программами, применяется в таких технологиях, как Ajax, SOAP, а так же является основой языка XAML, с которым Вы можете встретиться при работе с WPF.

    Для создания xml файла нам всего лишь необходимо внести

    Структура XML файла

    Любой XML файл, начинается с объявления декларации.

    Декларация

    Декларация xml файла включает в себя:

    Версию (version) — номер версии языка XML, 1.0 и 1.1

    Если Вы используете xml version 1.0, то строку декларации можно не указывать, если Вы используете версию 1.1, то необходимо обязательно указать данную строку.

    Кодировку (encoding) — указывает кодировку файла

    Данной записью Вы не устанавливаете кодировку физическому файлу! А только лишь даёте понять программе, которая будет обрабатывать данный файл, в какой кодировке, содержаться данные внутри файла. При этом Вы должны гарантировать, что кодировка документа и кодировка, указанная в строке декларации совпадают.

    Чтобы установить кодировку документу, Вы можете воспользоваться, к примеру, программой Notepad++

    Элементы xml файла

    Язык XML состоит из элементов.

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

    В одном файле может содержаться любое количество элементов.

    Как упоминалось ранее, элемент состоит из тегов.

    Имена тегов могут начинаться с буквы, символа подчеркивания, или знака двоеточие, затем могут указываться любые символы.

    Теги бывают: парные и одиночные.

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

    При построение XML документа очень важно соблюдать правильность вложенности тегов:

    XML регистро-зависимый язык

    Комментарии

    Комментарии в XML документе, используют такой же синтаксис, как в языке HTML.

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

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

    Первым всегда указывается корневой элемент (root element), в одном XML документе может быть только один корневой элемент!

    В данном примере, создано два корневых элемента

      не правильно

        правильно

      Во втором примере создан один корневой элемент «Root», который содержит обычный элемент «Admin».

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

      «library» корневой элемент содержащий элемент book, который содержит вложенные элементы: title, author, year.

      Атрибуты xml файла

      Атрибуты устанавливают в открывающем теге любого элемента.

      Синтаксис: имя = «значение», заключенное в двойные кавычки.

      Атрибутов может быть любое количество, но они не должны повторяться, а их имена не должны содержать пробелов.

      Ошибка, присутствуют два повторяющихся атрибута «id», а так же между id и number содержится пробел.

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

      Добавить комментарий Отменить ответ

      Для отправки комментария вам необходимо авторизоваться.

      Синтаксис и основные понятия языка XML, создание валидных документов

      Понятие о языке XML

      XML — это расширяемый язык разметки (Extensible Markup Language), разработанный специально для размещения информации в World Wide Web, наряду с HTML, который давно стал стандартным языком создания Web-страниц. В отличие от HTML, вместо использования ограниченного набора определённых элементов вы имеете возможность создавать ваши собственные элементы и присваивать им любые имена по вашему выбору. Примечание: подразумевается, что читатель данной статьи хотя бы очень поверхностно знаком с языком HTML.

      XML решает ряд проблем, которые не решает HTML, например:

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

      В зависимости от уровня соответствия стандартам документ может быть «верно сформированным» («well-formed»), либо «валидным» («valid»). Вот несколько основных правил создания верно сформированного документа:

      • Каждый элемент XML должен содержать начальный и конечный тэг (либо пустой тэг типа , который может нести информацию посредством своих атрибутов).
      • Любой вложенный элемент должен быть полностью определён внутри элемента, в состав которого он входит.
      • Документ должен иметь только один элемент верхнего уровня.
      • Имена элементов чувствительны к регистру.

      Есть три основных способа сообщить браузеру, как отображать каждый из созданных вами XML-элементов:

      • Каскадная таблица стилей (Cascading Style Sheet — CSS) или расширяемая таблица в формате языка стилевых таблиц (Extensible Stylesheet Language — XSL).
      • Связывание данных. Этот метод требует создания HTML-страницы, связывания с ней XML-документа и установления взаимодействий HTML-элементов с элементами XML. В дальнейшем HTML-элементы автоматически отображают информацию из связанных с ними XML-элементов.
      • Написание сценария. Этот метод требует создания HTML-страницы, связывания с ней XML-документа и получение доступа к XML-элементам с помощью кода сценария JavaScript или VBScript.

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

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

      Простейший XML-документ

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

      • Объявление типа документа.
      • Одну или несколько инструкций по обработке.

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

      XML-документ можно набрать в любом текстовом редакторе, сохранив документ как текстовый файл с расширением .xml. В дальнейшем такой документ будет открываться двойным щелчком в Internet Explorer. Вот пример простейшего XML-документа:

Ссылка на основную публикацию
ВсеИнструменты
Adblock
detector