XSD Signature issue

2019-01-28 11:02发布

I cannot resolve this error about <xs:element ref="ds:Signature"/>. I need some help please.

Copyright (C) Microsoft Corporation. All rights reserved. Schema validation warning: The 'http://www.w3.org/2000/09/xmldsig#:Signature' el ement is not declared. Line 162, position 8.

Warning: Schema could not be validated. Class generation may fail or may produce incorrect results.

Warning: cannot generate classes because no top-level elements with complex type were found.

XSD

<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"  
            xmlns:ds="http://www.w3.org/2000/09/xmldsig#"
  attributeFormDefault="unqualified" elementFormDefault="qualified">

  <xs:import namespace="http://www.w3.org/2000/09/xmldsig#"
             schemaLocation="http://www.w3.org/TR/2002/REC-xmldsig-core-20020212/xmldsig-core-schema.xsd"/>

             <xs:complexType name="SobreCheques">
        <xs:annotation>
            <xs:documentation>Definition of the ...</xs:documentation>
        </xs:annotation>
        <xs:sequence>
             ...
      <xs:element ref="ds:Signature"/>
        </xs:sequence>
    </xs:complexType>
</xs:schema>

1条回答
手持菜刀,她持情操
2楼-- · 2019-01-28 11:25

Retrieving xmldsig-core-schema.xsd from the W3C site can take a long time, causing timeouts.

Instead, use a cached local copy in the same directory as your XSD,

<xs:import namespace="http://www.w3.org/2000/09/xmldsig#"
           schemaLocation="xmldsig-core-schema.xsd"/>

or use an absolute path as shown by @ulab in the comments:

<xs:import namespace="http://www.w3.org/2000/09/xmldsig#"   
           schemaLocation="file:///D:/xmldsig-core-schema.xsd" />

See also How to reference a local XML Schema file correctly?

查看更多
登录 后发表回答