- xml - AJAX/Jquery XML 解析
- 具有多重继承的 XML 模式
- .net - 枚举序列化 Json 与 XML
- XML 简单类型、简单内容、复杂类型、复杂内容
我正在构建我的 svcutil 命令行以从 OSEO schema 生成业务对象.
每当它告诉我缺少“xxx”类型时,我都会确定我需要将什么 xsd 添加到命令行并添加它。到目前为止,我的命令行如下所示:
svcutil /language:C# /namespace:*,OGC.OSEO.DataContract /out:IOSEO.cs oseo/1.0/oseo.wsdl oseo/1.0/oseo.xsd ows/2.0/owsAll.xsd ows/2.0/ows19115subset.xsd ows/2.0/owsAdditionalParameters.xsd ows/2.0/owsCommon.xsd ows/2.0/owsContents.xsd ows/2.0/owsDataIdentification.xsd ows/2.0/owsExceptionReport.xsd ows/2.0/owsGetCapabilities.xsd ows/2.0/owsGetResourceByID.xsd ows/2.0/owsInputOutputData.xsd ows/2.0/owsManifest.xsd ows/2.0/owsOperationsMetadata.xsd ows/2.0/owsServiceIdentification.xsd ows/2.0/owsServiceProvider.xsd ows/2.0/owsDomainType.xsd http://www.w3.org/2006/03/addressing/ws-addr.xsd sweCommon/2.0/block_components.xsd sweCommon/2.0/advanced_encodings.xsd sweCommon/2.0/basic_types.xsd sweCommon/2.0/choice_components.xsd sweCommon/2.0/record_components.xsd sweCommon/2.0/simple_components.xsd sweCommon/2.0/simple_encodings.xsd sweCommon/2.0/swe.xsd xlink/1.0.0/xlinks.xsd swes/2.0/swes.xsd swes/2.0/swesCommon.xsd swes/2.0/swesContents.xsd swes/2.0/swesDeleteSensor.xsd swes/2.0/swesDescribeSensor.xsd swes/2.0/swesInsertSensor.xsd swes/2.0/swesNotification.xsd swes/2.0/swesUpdateSensorDescription.xsd gml/3.2.1/basicTypes.xsd gml/3.2.1/coordinateOperations.xsd gml/3.2.1/coordinateReferenceSystems.xsd gml/3.2.1/coordinateSystems.xsd gml/3.2.1/coverage.xsd gml/3.2.1/datums.xsd gml/3.2.1/defaultStyle.xsd gml/3.2.1/deprecatedTypes.xsd gml/3.2.1/dictionary.xsd gml/3.2.1/direction.xsd gml/3.2.1/dynamicFeature.xsd gml/3.2.1/feature.xsd gml/3.2.1/geometryAggregates.xsd gml/3.2.1/geometryBasic0d1d.xsd gml/3.2.1/geometryBasic2d.xsd gml/3.2.1/geometryComplexes.xsd gml/3.2.1/geometryPrimitives.xsd gml/3.2.1/gml.xsd gml/3.2.1/gmlBase.xsd gml/3.2.1/grids.xsd gml/3.2.1/measures.xsd gml/3.2.1/observation.xsd gml/3.2.1/referenceSystems.xsd gml/3.2.1/temporal.xsd gml/3.2.1/temporalReferenceSystems.xsd gml/3.2.1/temporalTopology.xsd gml/3.2.1/topology.xsd gml/3.2.1/units.xsd gml/3.2.1/valueObjects.xsd gmd/applicationSchema.xsd gmd/citation.xsd gmd/constraints.xsd gmd/content.xsd gmd/dataQuality.xsd gmd/distribution.xsd gmd/extent.xsd gmd/freeText.xsd gmd/gmd.xsd gmd/identification.xsd gmd/maintenance.xsd gmd/metadataApplication.xsd gmd/metadataEntity.xsd gmd/metadataExtension.xsd gmd/portrayalCatalogue.xsd gmd/referenceSystem.xsd gmd/spatialRepresentation.xsd gco/basicTypes.xsd gco/gcoBase.xsd gts/temporalObjects.xsd gss/geometry.xsd gsr/spatialReferencing.xsd smil20/smil20-animate.xsd smil20/smil20-animate.xsd smil20/smil20-language.xsd
所以我在最新的 xsd to add 上遇到了麻烦到命令行,即 smil20-language.xsd
我收到以下错误:
The 'minOccurs' attribute cannot be present
正如您从 xsd 中看到的那样,有很多“minOccurs”。
所以我的问题是:是哪些导致了这些错误?我怎么知道?
整个错误没有给出行号、代码或任何提示。
最佳答案
由可从您提供的 OSEO 架构链接中追踪到的所有文件组成的 XML 架构集是有效的。不幸的是,这些工具似乎不能只处理那个文件;这使得整个过程很麻烦,因为总共有 104 个文件...包含/导入非常复杂。
我将使用我可用的工具(以及与我相关的工具)描述我能够做些什么来让它发挥作用。我无法解释为什么 xsd.exe 或 svcutil.exe 会以它们的方式运行;当然,最有趣的可能是对它们进行逆向工程...
我已经在我的本地机器上导入了所有的 XSD 文件。我使用了这个工具;它保留布局并自动重写
我已经重构了整个集合,以便获得等效项,但使用尽可能少的 XSD 文件数。
使用生成的文件,我运行了以下 xsd.exe 命令行; C# 类很干净,输出中没有错误或警告。
xsd oseo.xsd gco.xsd gmd.xsd gml.xsd gsr.xsd gss.xsd gts.xsd ows-1-1.xsd ows-2-0.xsd swe.xsd swes.xsd ws-addr.xsd wsn.xsd xlinks.xsd xml.xsd /c
用 svcutil 尝试相同的设置是行不通的;它提示模式无效...不幸的是,我没有时间去研究。
完整的解决方案和工具特定说明位于此 link 上可用的 zip 文件中.如果你想在这个话题之外聊天,只需通过网站上发布的支持地址给我发一封电子邮件。我将 PDF 保持得非常小,只专注于解释如何测试。该 zip 包含下载的 XSD 以及生成的 XSD。希望对您有所帮助...
关于xml - 'minOccurs' 属性不能存在,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8896602/
我有以下架构:(摘录)
我正在构建我的 svcutil 命令行以从 OSEO schema 生成业务对象. 每当它告诉我缺少“xxx”类型时,我都会确定我需要将什么 xsd 添加到命令行并添加它。到目前为止,我的命令行如下所
这个问题已经有答案了: XML Schema minOccurs / maxOccurs default values (3 个回答) 已关闭 3 年前。 当我们在 WSDL 声明中不声明任何 min
我正在使用 Apache CXF 进行 Web 服务开发。我们写好了Java代码,WSDL会由CXF引擎自动生成 我有一个名为 xmlMessage 的 String 必须将 minoccurs 设置
我使用的是apache cxf 3.1.8,wsdl是由cxf引擎自动生成的。我想为字段 ProductId 设置 minOccurs 和 maxOccurs,如下所示: 预计: 实际: 换句话
当我运行我的代码时,它给了我这个错误 [ s4s-att-not-allowed: Attribute 'maxOccurs' cannot appear in element 'element'.]
在下面的这个例子中,
鉴于此 XML 模式片段: 预期结果有效元素可能包含 0 个或多个 元
我们将 CXF 框架与 aegis 映射器一起用于 java 服务器和 .NET 客户端。默认情况下,WSDL 类中的所有变量的 minOccurs=0。我们在 CXF 配置中使用这样的设置来防止它:
我有一个 XML 架构: 我有一条 XML 消息: Fred 我使用 JAXB 自动生成我的类(即 Person.java 等)。 因此,在运行时
我想知道 XML 模式规范如何处理这些情况: 没有给出 maxOccurs -> 这是基数 [1..1] 吗? 我想这简直是无效的? 这是基数 [0..2] 还是 [1..2]? 是否有关于 X
我有一个简单的架构,我将 minOccurs 和 maxOccurs 都声明为 1。当我运行 XSD.exe 以生成 C# 类并在代码中使用该类时;该字段未强制执行。是否缺少一些额外的步骤?还是使用
我无法理解以下 XML 模式的行为: 我预计这两个元素中
我正在构建一个 ASP.NET Web 服务。 我的代码定义如下,但我不知道如何通过 wsdl 指定 FirstName 和 LastName 属性的 minOccurs。我要那些按要求,不能为空。是
我正在使用 svcutil 从 Web 服务生成客户端代理。WSDL 包含属性 minOccurs 设置为 0 的元素 然而,生成的 DataContract 完全忽略了这个属性,只是创建了一个没有
我正在尝试使用 EclipseLink MOXy 2.1.2 和 Java 1.6 生成基于我的域类的模式,遵循以下示例:http://wiki.eclipse.org/EclipseLink/Exa
我遇到了一个遗留的 XSD,它有一堆像...... ...其中 minOccurs 和 maxOccurrs 都等于 1,并且有一个默认值。由于 XML 文档无论如何都需要包含一些值,因
如何使用 XSOM 解析器从元素中获取 minOccurs 属性?我看过这个获取与复杂类型相关的属性的示例: private void getAttributes(XSComplexType xsCo
所以我想要一个像下面这样用@XmlElements 注释的列表 @XmlElements( { @XmlElement(name = "Apple", type
我正在为 Web 服务的客户端编写代码。在 Web 服务定义文件中,定义了“minOccurs”和默认值。我如何访问这些 minOccurs 和默认值? 在 WSDL 文件中,元素定义如下: 其中 o
我是一名优秀的程序员,十分优秀!