Вы можете работать с XML данными в Visual FoxPro путем импорта или экспорта XML документов, используя функции Visual FoxPro или объекты XMLAdapters. В приведенных ниже секциях вы познакомитесь с действительными (valid) или "хорошо сформированными" ("well-formed") XML документами и XML схемами, что поможет объяснить требования для работы с XML данными в Visual FoxPro:
Well-Formed XML Docments
XML документами являются действительными, когда они "хорошо сформированы". Visual FoxPro производит XML документы, которые действительно хорошо сформированы. Хорошо сформированный документ должен отвечать базовым правилам XML:
-
Каждый XML документ должен содержать уникальный корневой элемент, который представляет собой элемент, от которого осуществляется навигация по полному документу.
-
Все открывающие и закрывающие тэги должны соответствовать друг другу. XML тэги являются регистро-чувствительными.
-
Для каждого открытого тэга, должен существовать соответствующий закрывающий тэг. Специальные короткие тэги могут отсечать пустые элементы. (Прим. переводчика. Это не совсем верно, так как существуют элементы, которые не могут в принципе иметь закрывающего тэга - например тэг <img>. Для того, чтобы ввести такой элемент в документ XML и обеспечить при этом соответствие правилам хорошо сформированного документа применяется специальная нотация тэга такого элемента, например, использование дополнительного пробела и слэжа, перед закрывающей угловой скобкой тэга)
-
Элементы не должны перекрываться. Другими словами, открывающий и закрывающий тэги должны должным образом вложены внутрь других элементов.
-
Определенные зарезервированные символы, являющиеся частью XML syntax и не интерпретированные так, как они должны быть интерпретерированыa не должны быть использованы в областях данных элемента в прямом виде. В приведенной ниже таблице показаны символьные последовательности или сущности, используемые для замещения этих зарезервированных символов.
Символ Тип данных Кодировка сущности & (ampersand) < (левая угловая скобка) > (првая угловая скобка) " (значок цитирования) ' (апостроф)
String String String String String
Замещается & Замещается < Замещается > Замещается " Замещается '
Для других типов данных правила кодировки сущности приведены ниже в таблице.
Тип данных Символ и кодировка сущности Date
Должна отвечать стандарту ISO 8601
Numbers
Пунктуация должна использовать правила пунктуации U.S. English. Например, вы должны использовать точку в качестве десятичного разделителя. Числа могут включать в себя степени.
Boolean
False = 0, True = 1. (SQL XML возвращает 0 и 1)
BLOB
Используется кодировка MIME Base64
В приведенном ниже примере показан хорошо сформированный XML:
![]() | |
---|---|
<?xml version="1.0"?> |
![]() |
---|
Вы можете использовать пробелы в документе для улучшения читаемости. |
В приведенном примере показаны определенные части XML документа:
-
<?xml version="1.0"?>
Декларирует XML документ и предоставляет номер версии стандарта. Эта декларация является вспомогательной, но рекомендована для использования в любом XML документе.
-
<ORDER>
Определяет корневой элемент, который заключает в себе полный документ.
-
<CUSTOMER> ... </CUSTOMER>
Определяет набор открывающего и закрывающего тэгов, который описывает элемент данных, в данном случае, имя потребителя.
Замечание
Каждый набор тэгов имеет открывающий и закрываюзий тэги, которые являются регистро-чувствительными и правильно вложенными. При импорте данных приложением, сущности &apos трансформируются в апостроф ('). Апостроф имеет специальное назначение в XML документах и может быть неверно интерпретирован, если используется непосредственно в тексте. Сконвертируемые данные будут отображаться как Coho Winery's Chablis.
Поддержка XML схем
XML схема может помочь в определении правил и структуры XML документов. Visual FoxPro может интерпретировать XML файлы как со схемой, так и без нее. Однако, Visual FoxPro поддерживает XML Schema Definition (XSD), которые являются базовой инфраструктурой для описания типа и структуры документов XML. XML schema definition обслуживает специальные цели:
-
Описывает структуру данных в общем формате, который потребителя, другие Web браузеры или целый ряд программного обеспечения с XML-поддержкой может быть распознан и разобран.
-
Определяет правила данных XML документа, включая имена элементов и типы данных, какие элементы и в в каких комбинациях могут показываться, а также доступные для каждого элемента аттрибуты.
-
Предоставляет модель для документа XML, содержащего данные, путем определения оформления тэгов и текста внутри всех документов, ссылающихся на схему.
При использовании XML схемы, вы можете быть уверены, что любой XML документ, используемый для импорта или экспорта данных содержит специфические данные и удовлетворяет определенной схемой структуре. Когда вы указываете схемы при экспорте XML из Visual FoxPro, то экспортируемый документа подразумевается как действительный (valid) XML. Это означает, что в дополнение к тому, что документ является хорошо сформированным, он также отвечает определенной схеме. Вы можете, кроме того, предоставить схему для других производителей и приложений, так чтобы они могли структурировать XML данные, которые будут отвечать предоставленной вами схеме.
В частности, Visual FoxPro поддерживает формат W3C XSD schema. Формат XSD schema основан на рекомандации консорциума W3C Recommendation для спецификации XSD Schema. Для получения подробной информации обратитесь к источнику по адресу http://www.w3.org/TR/2001/REC-xmlschema-0-20010502/ и связанным с ним документам.
Смотри также
Справочное руководство
Функции XMLКонцепции
Преобразования между XML и данными Visual FoxProФункциональность XML обеспечиваемая использованием XMLAdapter'ов