2016-10-03 8 views
1

<xs:element ref="ds:Signature"/>についてこのエラーを解決できません。 私はいくつかの助けをお願いします。XSD署名の問題

Copyright(C)Microsoft Corporation。全著作権所有。スキーマ 検証の警告: 'http://www.w3.org/2000/09/xmldsig#:Signature' el ementが宣言されていません。行162、位置8

警告:スキーマを検証できませんでした。クラス生成が失敗するか、 が不正な結果を生成する可能性があります。

警告: 複合型の最上位要素が見つからないため、クラスを生成できません。

XSD W3Cのサイトからxmldsig-core-schema.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> 
+0

スキーママシンからアクセスできるhttp://www.w3.org/TR/2002/REC-xmldsig-core-20020212/xmldsig-core-schema.xsd? – ulab

+0

@ulabはい、そうです。 –

+0

ok。スキーマをローカルに保存して 'schemalocation'で参照すると、それでも名前空間を解決できません。 – ulab

答えて

4

はタイムアウトを起こし、長い時間がかかることがあります。代わりに

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

@ulab in the commentsによって示されるように、絶対パスを使用して、あなたのXSDと同じディレクトリにキャッシュされたローカルコピーを使用します。

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

も参照してくださいHow to reference a local XML Schema file correctly?

+0

追加、W3CからのXSDファイルがブラウザからアクセス可能であることを確認してください。私は同じ問題を抱えていましたが、ファイルをローカルに追加しても機能しませんでした。問題は、私のコンピュータがプロキシサーバーの背後にあり、W3Cサイトがブロックされていたことでした。 XSDファイルへのアクセスを修正した後、クラスを生成することができました。この問題がセットアップにのみ関連しているかどうかは不明です。 – adimoldovan

関連する問題