-1

私は1つのxmlファイル(IDE Eclipse Indigo)があるという点で、プロジェクトに取り組んでいます。シンクルラインの問題に直面しています

<?xml version="1.0" encoding="UTF-8"?>
<BookingConfirmRQ xmlns="http://www.expediaconnect.com/EQC/BC/2007/09"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<Authentication username="yyyyyyyy" password="xxxxxxxx" />
<Hotel id="<hotelId/>" />
<BookingConfirmNumbers>
    <BookingConfirmNumber bookingID="<bookindId/>"
        bookingType="<bookingType/>" confirmNumber="<confirmNumber/>"
        confirmTime="<confirmTime/>" />
</BookingConfirmNumbers>
</BookingConfirmRQ>

ここ< Hotel id="< hotelId/>"/>の近くで_のようなエラーが発生しています

要素タイプ「ホテル」に関連付けられた属性「id」の値には、「<」文字を含めることはできません。

私はそれを検索し、jar をチェックし、再フォーマットしてもまだエラーが発生しています。ありがとう。

4

3 に答える 3

1

Eclipse の windows-preference-validation メニューから XML の検証を無視できます。変更したくない場合は、この方法でこのエラーを回避できます。

于 2012-10-16T11:54:15.450 に答える
0

次のように、属性の値の山かっこをエスケープする必要があります。

     <Hotel id="&lt;hotelId/&gt;" />

他のすべての属性と同じです。山かっこは、XMLでエスケープする必要のある予約文字のリストにあります。

そうしないと、XMLは整形式ではなく、何も処理されません。検証(つまり、DTDまたはスキーマに対する検証)をオフにしても、ここでは役に立ちません。XMLは、解析する前に整形式である必要があります。

とは言うものの、XMLは非常に奇妙に見えます。まるで、XML要素全体を属性の値として含めているかのようです。これは間違っています。したがって、エスケープの問題を修正しても、このXMLは意図した内容を示していない可能性があります。

于 2012-10-20T23:34:53.197 に答える
0

属性値には、リテラル テキストのみを含める必要があります。

<Hotel id="134" /> 
于 2012-10-16T09:13:25.427 に答える