Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Xml 从xsd架构文件中删除循环组引用_Xml_Visual Studio_Wcf_Web Services_Xsd - Fatal编程技术网

Xml 从xsd架构文件中删除循环组引用

Xml 从xsd架构文件中删除循环组引用,xml,visual-studio,wcf,web-services,xsd,Xml,Visual Studio,Wcf,Web Services,Xsd,是否有一种方法可以自动从XSD模式中删除所有循环组引用 我试图在OGC架构上运行svcutil.exe和xsd.exe,并出现以下错误: 错误:来自的组“AnyScalar” targetNamespace=http://www.opengis.net/swe/1.0' 具有无效的定义:循环组 参考资料 架构太大,无法手动执行 这是我正在使用的模式: 在中找到任何标量 我找不出有什么问题。整个模式集在LiquidXMLStudio中进行验证(我不能保证它的可靠性,我没有太多使用它)。simple

是否有一种方法可以自动从XSD模式中删除所有循环组引用

我试图在OGC架构上运行svcutil.exe和xsd.exe,并出现以下错误:

错误:来自的组“AnyScalar” targetNamespace=http://www.opengis.net/swe/1.0' 具有无效的定义:循环组 参考资料

架构太大,无法手动执行

这是我正在使用的模式:

在中找到任何标量

我找不出有什么问题。整个模式集在LiquidXMLStudio中进行验证(我不能保证它的可靠性,我没有太多使用它)。simpleTypes模式也进行验证。我对这个定义进行了更深入的研究,没有任何东西看起来像是对我的循环引用

这是组定义:

<xs:group name="AnyScalar">
    <xs:annotation>
        <xs:documentation>Re-usable group providing a choice of scalar data types</xs:documentation>
    </xs:annotation>
    <xs:choice>
        <xs:group ref="swe:AnyNumerical"/>
        <xs:element ref="swe:Boolean"/>
        <xs:element ref="swe:Category"/>
        <xs:element ref="swe:Text"/>
    </xs:choice>
</xs:group>

提供标量数据类型选择的可重用组
您可能还发现这是一个有用的资源:

编辑:看起来您的问题根本不在于模式:


只是代码生成工具无法处理这些问题——毫不奇怪,基于GML构建的模式集将测试这些实用程序的限制。

我同意。对于像GML这样复杂的模式,数据绑定不是处理XML的正确方法。最好使用XSLT或XQuery将所需信息的子集提取到更简单的内容中。不幸的是,正是当模式变得有点毛茸茸时,人们才最需要一个工具来为他们进行数据绑定!我知道你会认为工具是为更大的模式设计的。你是说我应该咬紧牙关,全部手工完成吗?正如迈克尔·凯所说,你可能需要先做一些预处理,如果你能简化事情,那就更好了。好消息是,其他人已经走在你前面了:你能详细介绍一下预处理吗?你有关于我将如何处理此事的链接吗?