2014-02-11 46 views
1

我想在我的WML教科書中找到的變量上運行這個WML示例,但它每次都在同一行/語句中給我一個錯誤。這是代碼:WML:A <do>元素沒有定義的類型

<?xml version="1.0"?> 
    <!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.3//EN" 
"http://www.wapforum.org/DTD/wml13.dtd"> 
<wml> 
<card id="card1" title="First Card" newcontext="true"> 
    <p> 
     Card 1... <br/> 
     card1 var1=$(card1_var1) <br/> 
     card2 var1=$(card2_var1) <br/> 
     card3 var1=$(card3_var1) <br/> 
     <do type="accept" label="Next Card"> 
      <go href="#card2"> 
       <setvar name="card1_var1" value="val_1"/> 
      </go> 
     </do> 
    </p> 
</card> 
<card id="card2" title="Second Card"> 
    <p> 
     Card2 ...<br/> 
     Card1 var1 = $(card1_var1) <br/> 
     Card2 var1 = $(card2_var1) <br/> 
     Card3 var1 = $(card3_var1) <br/> 
     <do type="accept" label="First Card"> 
      <go href="#card1"/> 
     </do> 
     <do type="accept" label="Third Card"> 
      <go href="#card3"> 
       <setvar name="card2_var1" value="val_2"/> 
      </go> 
     </do> 
     <do type="prev" label="Previous Card"> 
      <prev/> 
     </do> 
    </p> 
</card> 
<card id="card3" title="Third Card"> 
    <onevent type="onenterforward"> 
     <refresh> 
      <setvar name="card3_var1 " value="val_3"/> 
     </refresh> 
    </onevent> 
    <p> 
     Card 3 ...<br/> 
     Card1 var1 = $(card1_var1) <br/> 
     Card2 var1 = $(card2_var1) <br/> 
     Card3 var1 = $(card3_var1) <br/> 
     <do type="prev" label="Previous"> 
      <prev/> 
     </do> 
    </p> 
</card> 

我得到的錯誤在26行甚至認爲類型是那邊定義,它仍然提供了錯誤。

回答

0

您發佈的示例有一些導致驗證失敗的錯誤。在發佈到StackOverflow時,這些可能只是剪切和粘貼問題,或者可能導致解析器失敗的實際錯誤。

行1:XML聲明<?xml version="1.0"?>應該在第一列;在你的例子中它是縮進的。

第53行:結束WML標籤</wml>丟失。


還有兩個小修正可能有益的:

行1:編碼添加到XML聲明例如<?xml version="1.0" encoding="UTF-8"?>

線40:有一個在name="card3_var1 "一個錯誤的空格字符,因此變量不能正確


更新有了這些更正你的WML根據W3C驗證驗證,所以它應該是罰款。我在Openwave 6.2.2 SDK中試過,它似乎沒有任何錯誤。

更正例如:

<?xml version="1.0" encoding="UTF-8"?> 
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.3//EN" 
"http://www.wapforum.org/DTD/wml13.dtd"> 
<wml> 
<card id="card1" title="First Card" newcontext="true"> 
    <p> 
     Card 1... <br/> 
     card1 var1=$(card1_var1) <br/> 
     card2 var1=$(card2_var1) <br/> 
     card3 var1=$(card3_var1) <br/> 
     <do type="accept" label="Next Card"> 
      <go href="#card2"> 
       <setvar name="card1_var1" value="val_1"/> 
      </go> 
     </do> 
    </p> 
</card> 
<card id="card2" title="Second Card"> 
    <p> 
     Card2 ...<br/> 
     Card1 var1 = $(card1_var1) <br/> 
     Card2 var1 = $(card2_var1) <br/> 
     Card3 var1 = $(card3_var1) <br/> 
     <do type="accept" label="First Card"> 
      <go href="#card1"/> 
     </do> 
     <do type="accept" label="Third Card"> 
      <go href="#card3"> 
       <setvar name="card2_var1" value="val_2"/> 
      </go> 
     </do> 
     <do type="prev" label="Previous Card"> 
      <prev/> 
     </do> 
    </p> 
</card> 
<card id="card3" title="Third Card"> 
    <onevent type="onenterforward"> 
     <refresh> 
      <setvar name="card3_var1" value="val_3"/> 
     </refresh> 
    </onevent> 
    <p> 
     Card 3 ...<br/> 
     Card1 var1 = $(card1_var1) <br/> 
     Card2 var1 = $(card2_var1) <br/> 
     Card3 var1 = $(card3_var1) <br/> 
     <do type="prev" label="Previous"> 
      <prev/> 
     </do> 
    </p> 
</card> 
</wml> 
相關問題