Мне нужно сделать XSD-файл для XSD CodeSynthesis.
Будет несколько схем для разных типов ответов.
Как вы можете видеть в примере XML-файла, некоторые элементы имеют атрибут type, а некоторые имеют атрибут nil. Эти атрибуты не предоставляют никакой информации для разбора, я уже знаю типы и правильно установил их в файле xsd. Кроме того, я не знаю, какие элементы могут быть нули. Могут ли эти атрибуты каким-либо образом быть пропущены в схеме xsd, или я должен написать для каждого элемента:
<xsd:complexType>
<xsd:attribute name="type" type="TypeAttr" fixed="integer"/>
<xsd:attribute ref="nil"/>
</xsd:complexType>
где
<xsd:attribute name="nil" type="xsd:boolean"/>
Это один из файлов XML:
<?xml version="1.0" encoding="UTF-8"?>
<account>
<access-key>bla-bla-bla</access-key>
<billing-error-date type="date" nil="true"></billing-error-date>
<default-ticket-report-id type="integer">0</default-ticket-report-id>
<default-time-zone nil="true"></default-time-zone>
<description nil="true"></description>
<disk-usage type="integer">38048</disk-usage>
<flagged-for-billing-error type="boolean">false</flagged-for-billing-error>
<force-ssl type="boolean">false</force-ssl>
<id type="integer">1</id>
<plan>micro</plan>
<subdomain>companyname</subdomain>
<text-markup>markdown,textile,plain</text-markup>
<title>companyname</title>
<features>
<attachments>true</attachments>
<ssl>false</ssl>
<storage>512</storage>
<time_tracking>false</time_tracking>
<max_people>10</max_people>
<max_pages>99999</max_pages>
<beta>false</beta>
</features>
<notebook_pages>0</notebook_pages>
<created-at>2011-02-16T13:50:09Z</created-at>
<updated-at>2011-04-07T09:11:10Z</updated-at>
</account>