xmlhack.ru XML-форумы
Обсуждение XML и связанных с ним технологий

Что лучше? (Два разных подхода к построению XML Schema)


Автор Сообщение
Shc
Гость




[4832] Вс Авг 10, 2003 10:43
Что лучше? (Два разных подхода к построению XML Schema)
Встречал два разных подхода к построению XML Schema.
1) Например,
<Schema xmlns="urn:schemas-microsoft-com:xml-data"
xmlns:dt="urn:schemas-microsoft-com:datatypes">
<AttributeType name='studentID' dt:type='string' required='yes'/>
<ElementType name='name' content='textOnly'/>
<ElementType name='GPA' content='textOnly' dt:type='float'/>
<ElementType name='student' content='mixed'>
<attribute type='studentID'/>
<element type='name'/>
<element type='GPA'/>
</ElementType>
<ElementType name='class' content='eltOnly'>
<element type='student'/>
</ElementType>
</Schema>
2) Что-то типа:
<element name="purchaseOrder" type="PurchaseOrderType"/>
<element name="comment" type="xsd:string"/>
<complexType name="PurchaseOrderType">
<sequence>
<element name="shipTo" type="USAddress"/>
<element name="billTo" type="USAddress"/>
<element ref="comment" minOccurs="0"/>
<element name="items" type="Items"/>
</sequence>
<attribute name="orderDate" type="xsd:date"/>
</complexType>
В чем разница и какокй вариант построения схемы предпочтительней?
Paranorm
Студент

Зарегистрирован: 24.04.2002
Сообщения: 81

Посетить сайт автора
[4843] Вт Авг 12, 2003 10:04
XSD forever
Первый вариант, приведенный Вами - это XDR (XML-Data Reduced schemas), придуманный Microsoft и реализованный в MSXML3 до появления официальной рекомендации XML Schema.
Второй вариант - это и есть упомянутый выше XSD (XML Schema), который, в принципе вытеснил XDR уже в следующей версии XML-парсера Microsoft.

Но вне всякой зависимости от корпорации Microsoft и ее замечательного парсера, "лучше", конечно, пользоваться XSD, поскольку XDR - это промежуточное, недоработанное, практически неподдерживаемое производителем решение.

Ссылки
* Официальная страница XML Schema http://www.w3.org/XML/Schema
* Школа XSD http://www.xml.nsu.ru/schema/schema_home.xml
На всякий случай, если придется все-таки пользоваться XDR:
* Введение в схемы XDR http://www.optim.ru/cs/2001/2/xdr/xdr5.asp