gpt4 book ai didi

xml - 有人有描述 Delphi TClientDataSet XML 文件的元数据部分的部分 XSD 吗?

转载 作者:数据小太阳 更新时间:2023-10-29 01:43:03 26 4
gpt4 key购买 nike

我知道您无法用 XSD 模式完整描述 TClientDataSet 的 XML,因为 ROW 元素的属性名称随内容而变化。

但是,此类 XML 的元数据部分应该是。

那么:是否有人拥有(部分)XSD 来描述可以使用 Delphi TClientDataSets 保存的 XML 的元数据部分?

问候。

附言:

感谢您提供指向 XML->XSD 转换工具/站点的指针;我应该写下我自己也这样做了,但是以正确的方式(即涵盖所有可能性的方式)生成该 XSD 将需要涵盖所有可能性(如往返、行状态等)的输入 XML。我会尝试以这种方式提出一个像样的 XSD 并将其发布在这里。

最佳答案

我也找不到,所以我用了 this website基于 ClientDataSet XML 文件生成此模式。

<?xml version="1.0" encoding="UTF-8" ?>

<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="DATAPACKET">
<xs:complexType>
<xs:sequence>
<xs:element ref="METADATA" />
<xs:element ref="ROWDATA" />
</xs:sequence>
<xs:attribute name="Version" type="xs:NMTOKEN" use="required" />
</xs:complexType>
</xs:element>

<xs:element name="FIELD">
<xs:complexType>
<xs:attribute name="fieldtype" type="xs:NMTOKEN" use="required" />
<xs:attribute name="WIDTH" type="xs:NMTOKEN" use="optional" />
<xs:attribute name="attrname" type="xs:NMTOKEN" use="required" />
<xs:attribute name="required" type="xs:NMTOKEN" use="optional" />
</xs:complexType>
</xs:element>

<xs:element name="FIELDS">
<xs:complexType>
<xs:sequence>
<xs:element ref="FIELD" maxOccurs="unbounded" />
</xs:sequence>
</xs:complexType>
</xs:element>

<xs:element name="METADATA">
<xs:complexType>
<xs:sequence>
<xs:element ref="FIELDS" />
<xs:element ref="PARAMS" />
</xs:sequence>
</xs:complexType>
</xs:element>

<xs:element name="PARAMS">
<xs:complexType>
<xs:attribute name="CHANGE_LOG" type="xs:string" use="required" />
</xs:complexType>
</xs:element>

<xs:element name="ROW">
<xs:complexType>
</xs:complexType>
</xs:element>

<xs:element name="ROWDATA">
<xs:complexType>
<xs:sequence>
<xs:element ref="ROW" maxOccurs="unbounded" />
</xs:sequence>
</xs:complexType>
</xs:element>

</xs:schema>

关于xml - 有人有描述 Delphi TClientDataSet XML 文件的元数据部分的部分 XSD 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/492198/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com