99

で使用してXML Data Binding WizardDelphi XE2ます。スキーマには、次のタイプのタグが必要です:

<xs:element name="MyReport" type="MyReportType" />
<xs:complexType name="MyReportType">
  <xs:all>
    <xs:element name="Header" type="HeaderType" />
    <xs:element name="Values" type="ValuesType" />
    <xs:element name="Events" type="EventsType" />
  </xs:all>
</xs:complexType>

問題は、-group などに要素を追加しないと、Values-tag がなくなり<Values>、XML ファイルが .xml に対する検証に失敗することXSDです。Valuesインターフェースが-tagを「追加」する方法を提供している場合、これはおそらく問題にはなりません。

これを処理する標準的な方法はありますか、それとも生成されたコードを間違って使用していますか?

簡単に言えば、 のコードを使用して、次のものを生成する方法、回避策またはその他の方法はありますか (これは、子ノードがない場合に上記のスキーマを使用して検証するために必要なものです)、与えられたおよびは complexType です:Data Binding WizardXMLHeaderTypeValuesTypeEventsType

<MyReport>
  <Header />
  <Values />
  <Events />
</MyReport> 

<xs:sequence>(最終ファイルで正しい順序を強制しないことによって生成されたコードなど、他の同様の問題があることは知っていますXMLが、少なくともその問題については、子を正しい順序で挿入するだけで回避策があります。私はまだ考えていますEmbarcaderoこれらの機能をより多く考慮した完全なインターフェースを提供できれば素晴らしいと思います。)

4

1 に答える 1