2011-11-08 10 views
0

私はstruts、spring、iibatisなどの多くのxml構成に出くわしました。私は無知な宣言を盲目的に使用していました。私は本当にこの宣言がどのように役立つのか知りたがっていますが、DTDに確認していますか?春のサーブレットxmlの上にある宣言は、実際にはどういう意味ですか?

<?xml version="1.0" encoding="UTF-8"?> 
<beans xmlns="http://www.springframework.org/schema/beans" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd"> 
+1

DTDはありません。 XSDとDTDの違いをGoogleに伝えることができます。あなたが興味を持っているならば、違いについての[SOの質問](http://stackoverflow.com/questions/2389760/dtd-vs-xsd-which-one-to-choose)があります。 –

答えて

2

あなたが意味する場合:

xmlns="http://www.springframework.org/schema/beans"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

を、これは名前空間です。

xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd">は、名前空間の宣言がどこにあるかについてです。コメントから


は、なぜ我々はそのようにそれらを与えるのですか? xmlの構文検証のみですか?または他のいくつかの余分な目的?

XMLで使用する2つの異なるXSDスキーマがあるとします。そして、どちらも同じ名前のタグを定義しますが、意味は異なっています。次に、XMLファイルを読み込むプログラムは、両方のタグのどちらを意味するのかを理解する必要があります。それで接頭辞(xsi)やこれまで使用されていたものは何ですか?

完全なものは、検証、およびエディタのサポート(自動補完)に使用されます。しかし、具体的なセマンティクスについての知識がなくても、XMLを処理しているものについても。 (XLSTなど)

+0

なぜ私たちはそれらを与えるのですか? xmlの構文検証のみですか?または他のいくつかの余分な目的? – cherit

+0

@tito:私の拡張回答を参照 – Ralph

+0

ありがとうございます。私は名前空間がユニークであることを理解しています。 – cherit

関連する問題