Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
MU_Prakticheskie_raboty_OPI.docx
Скачиваний:
0
Добавлен:
03.03.2020
Размер:
9.91 Mб
Скачать

3 Схемы xml.

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

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

ADO.NET позволяет:

  • считывать данные из DataSet в XML-формат. Это полезно, когда необходимо послать данные другим приложениям, возможно даже работающими под другими платформами;

  • заполнять объекты DataSet данными из XML;

  • создавать XML-схемы;

  • загружать XML-данные из файла или из любого потока, после чего манипулировать ими, используя DataSet;

  • создавать объекты DataSet на основе существующих схем.

3.1 Пример использования xml-формата для взаимодействия с xml Web-службами:

  • Клиентское приложение вызывает XML Web-службу, которая запрашивает данные из источника и формирует DataSet.

  • После этого XML Web-служба конвертирует данные в XML-формат и возвращает XML-данные клиенту.

  • Клиентское приложение может оперировать как XML-данными, так и загрузить их в DataSet.

  • После окончания манипулирования данными клиентское приложение посылает их XML Web-службе, которая преобразует их в DataSet и обновляет информацию в источнике данных.

3.2 Ado.Net 2.0 тесно интегрировано с xml.

  • ADO.NET 2.0 поддерживает работу с типом XML, который появился в SQL Server 2005.

  • Позволяет преобразовывать данные из DataSet или DataTable в XML

ADO.NET использует XML как способ передачи данных от источника данных к объекту DataSet и обратно. Также есть возможность работать с данными в XML-формате напрямую.

XML подходит для передачи данных по сети:

  • XML-файл – текстовый файл, который имеет определенную структуру,

  • возможность по обработке XML-файлов существует практически на каждом ПК.

Пример XML-файла:

<CustomersSet>

<Customer>

<ID>1</ID>

<Name>Sergey</Name>

<Age>25</Age>

</Customer>

<Customer>

<ID>2</ID>

<Name>Victor</Name>

<Age>24</Age>

</Customer>

<Order>

<ID>1</ID>

<Name>Tea</Name>

<CustID>1</CustID>

</Order>

</CustomersSet>

Для заполнения объектов типа DataSet этих данных недостаточно:

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

  • эти данные не описывают связей между таблицами.

4 Xsd (xml Structure Defenitions) схема.

4.1 Описание.

XSD схема - представляет собой механизм позволяющий описать типы данных.

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

XSD-схемы содержат:

  • описание связей между полями данных, что позволяет хранить информацию о связях в реляционной БД;

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

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

Посредством XSD-схемы можно пересылать данные из DataSet в XML-формате, предоставив их описание, и иметь возможность работать с XML-документом.

Также можно используя XML-документ создать объект DataSet , но для этого необходимо знать структуру данных, которая и содержится в XSD-схеме.

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

XSD-схема для документа XML может иметь вид:

<xs:schema id="CustomerSet"

xmlns=""

xmlns:xsd="http://www.w3.org/2001/XMLSchema">

<xs:element name="Customer">

<xs:complexType>

<xs:sequence>

<xs:element name="ID" type="xs:integer" minOccurs="0"/>

<xs:element name="CompanyName" type="xs:string" minOccurs="0"/>

<xs:element name="Age" type="xs:integer"/>

</xs:sequence>

</xs:complexType>

</xs:element>

</xs:schema>

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]