freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

精品課件教案ppt】第二十章可擴(kuò)展標(biāo)記語言xml-資料下載頁

2025-01-12 15:40本頁面
  

【正文】 pathTreeViewerSelectedNode = tree。 } // end if else // node has no additional siblings MessageBox::Show( LCurrent node is last sibling., L, MessageBoxButtons::OK, MessageBoxIcon::Information )。 } // end method nextButton_Click System::Void previousButton_Click( System::Object^ sender, System::EventArgs^ e) { TreeNode ^parentTreeNode = nullptr。 // move to previous sibling if( xpathMoveToPrevious() ) { parentTreeNode = treeParent。 // get parent node // delete current node parentTreeNodeNodesRemove( tree )。 // move to previous node tree = parentTreeNodeLastNode。 // update TreeView control pathTreeViewerExpandAll()。 pathTreeViewerRefresh()。 pathTreeViewerSelectedNode = tree。 } // end if else // if current node has no previous siblings MessageBox::Show( LCurrent node is first sibling., L, MessageBoxButtons::OK, MessageBoxIcon::Information )。 } // end method previousButton_Click 5 單擊 Select 按鈕事件的處理方法 selectButton_Click 將依據(jù)在組 合下拉表框 selectComboBox 中選定的節(jié)點(diǎn)定位描述,使用節(jié) 點(diǎn)迭代器( XPathNodeIterator 類對象)在文本框中顯示 XML 文件數(shù)據(jù)中符合節(jié)點(diǎn)定位描述的所有數(shù)據(jù)文本。代碼如下: System::Void selectButton_Click( System::Object^ sender, System::EventArgs^ e) { XPathNodeIterator ^iterator。 // get specified node from ComboBox try { iterator = xpathSelect( selectComboBoxText )。 DisplayIterator( iterator )。 // print selection } // end try // catch invalid expressions catch( ArgumentException ^argumentException ) { MessageBox::Show( argumentExceptionMessage, LError, MessageBoxButtons::OK, MessageBoxIcon::Error )。 } // end catch // catch empty exception catch( XPathException^ ) { MessageBox::Show( LPlease select an expression, LError, MessageBoxButtons::OK, MessageBoxIcon::Error )。 } // end catch } // end method selectButton_Click 其中被調(diào)用的輔助方法 將使用參數(shù)指定的迭代器在文本框中 顯示 XML 文件數(shù)據(jù)中符合節(jié)點(diǎn)定位描述的所有數(shù)據(jù)文本。代 碼如下: void DisplayIterator( XPathNodeIterator ^iterator ) { selectTreeViewerText = L。 // print selected node39。s values while( iteratorMoveNext() ) { selectTreeViewerText = String::Concat( selectTreeViewerText, iteratorCurrentValueTrim(), L\r\n )。 } // end while } // end method DisplayIterator 程序的執(zhí)行結(jié)果如下: 文檔類型定義 ( DTD) 、架構(gòu)和驗(yàn)證 XML 文檔能引用一個(gè)可選的文檔,后者規(guī)定了 XML 文檔應(yīng)該 如何構(gòu)造。這種可選的文檔稱為 ?文檔類型定義?( DTD)或?架 構(gòu)?( Schema)。提供了一個(gè) DTD 或 Schema 文檔后,有的解析 器(驗(yàn)證解析器)會(huì)讀取 DTD 或 Schema,并根據(jù)它來檢查 XML 文檔結(jié)構(gòu)。如果被檢查的 XML 文檔遵循 DTD 或 Schema,就認(rèn) 為該 XML 文檔是 ? 有效 ? 的。不具有驗(yàn)證 XML 文檔能力的解析器 稱為 ?非驗(yàn)證解析器?。如果一個(gè)未引用 DTD 或 Schema 的 XML 文檔能被解析器(無論是否具有驗(yàn)證能力)處理,該 XML 文檔 就是 ? 良構(gòu) ? 的。換句話說,該文檔在語法上是正確的。顯然, ? 有效 ? 的 XML 文檔肯定是一個(gè) ? 良構(gòu) ? 的 XML 文檔。如果文檔不 是 良構(gòu) 的,則會(huì)引起解析停止,解析器報(bào)錯(cuò)。 文件類型定義 文件類型定義( DTD)提供了對 XML 文檔進(jìn)行類型檢查的一 種途徑,所以能驗(yàn)證它們的 ?有效性?(元素是否包含正確的屬 性,元素的順序是否正確等等)。使用擴(kuò)展的巴柯斯范式 EBNF ( Extended BackusNaur Form)語法來描述 XML 文檔內(nèi)容。解析 器需要附加的功能才能識別 EBNF 語法,因?yàn)樗⒉皇? XML 語 法。雖然 DTD 是可選的,但它可以確保不同程序生成的 XML 文 檔保持一致性。下面的 DTD 文檔定義了一個(gè)規(guī)則(語法)集, 用于構(gòu)造商務(wù)信函的 XML 文檔。 1 ! 2 ! DTD document for . 3 4 !ELEMENT letter ( contact+, salutation, paragraph+, 5 closing, signature ) 6 7 !ELEMENT contact ( name, address1, address2, city, state, 8 zip, phone, flag ) 9 !ATTLIST contact type CDATA IMPLIED 10 11 !ELEMENT name ( PCDATA ) 12 !ELEMENT address1 ( PCDATA ) 13 !ELEMENT address2 ( PCDATA ) 14 !ELEMENT city ( PCDATA ) 15 !ELEMENT state ( PCDATA ) 16 !ELEMENT zip ( PCDATA ) 17 !ELEMENT phone ( PCDATA ) 18 !ELEMENT flag EMPTY 19 !ATTLIST flag gender (M | F) M 20 21 !ELEMENT salutation ( PCDATA ) 22 !ELEMENT closing ( PCDATA ) 23 !ELEMENT paragraph ( PCDATA ) 24 !ELEMENT signature ( PCDATA ) 該 DTD 描述的規(guī)則說明: 第 4~5 行使用 ? 元素類型聲明 ? ELEMENT 為 letter 元素定義規(guī) 則(包含一個(gè)或多個(gè) contact 元素、一個(gè) salutation 元素、一個(gè)或 多個(gè) paragraph 元素、一個(gè) closing 元素以及一個(gè) signature 元素, 且必須按照此順序)。 加號( +)是 ? 出現(xiàn)指示符 ?。其他 ? 出現(xiàn)指示符 ? 包括星號( *) 表明元素是可選的,且能出現(xiàn)任意次;以及問號( ?)表明元素 是可選的,可不出現(xiàn)或只出現(xiàn)一次。如果元素沒有 ? 出現(xiàn)指示 符 ?,就默認(rèn)元素僅出現(xiàn)一次。 第 9 行使用 ? 元素類型聲明 ? ATTLIST 為 contact 元素定義一個(gè) 屬性(即 type)。 關(guān)鍵字 IMPLIED 表明,假如解析器發(fā)現(xiàn)一個(gè)沒有 type 屬性的 contact 元素,程序可以提供一個(gè)值,或忽略缺失的屬性。缺失 type 屬性的文檔仍是有效的。 其他類型的默認(rèn)值包括 REQUIRED(表明屬性必須在文檔中 存在) 和 FIXED(表明如果屬性存在,則必須賦一個(gè)特定值)。 例如: !ATTLIST address zip FIXED 01757 標(biāo)記 CDATA 表明 type 屬性包含的一個(gè) String 不由解析器進(jìn)行 處理,而是原樣傳給程序。 注意,語法沒有提供任何機(jī)制來描述一個(gè)元素(或?qū)傩裕┑? 數(shù)據(jù)類型。 標(biāo)記 PCDATA 表明元素中可存儲(chǔ) ? 已解析字符數(shù)據(jù) ?(即文 本)。? 已解析字符數(shù)據(jù) ? 不能包含標(biāo)記。字符 和 amp。 必須替換 成它們的 ? 實(shí)體引用 ?(即 amp。lt 和 amp。amp)。 第 18 行聲明了名為 flag 的一個(gè)空元素。關(guān)鍵字 EMPTY 表明 元素不能包含字符數(shù)據(jù)??赵赝ǔS糜谒鼈兊膶傩?。 第 19 行展示了一個(gè)枚舉屬性類型,它聲明了某個(gè)屬性可能具 有的所有值的一個(gè)列表。只有從該列表中選擇一個(gè)值來賦給屬 性,才算遵循 DTD。枚舉類型的值使用管道符( |)來分隔。屬 性 gender 的值只能是 M(男)或者 F(女)。右側(cè)指定了 gender 的默認(rèn)值 ? M‖。 注意,使用未由 DTD 定義的元素、屬性或關(guān)系,導(dǎo)致文檔無效。 下面是一個(gè)遵循了 ( DTD) 的 XML 文檔 。 1 ?xml version= encoding=utf8? 2 3 ! 4 ! Business letter formatted with XML 5 6 !DOCTYPE letter SYSTEM 7 8 letter 9 contact type =from 10 nameJane Doe/name 11 address1Box 12345/address1 12 address215 Any Ave./address2 13 cityOthertown/city 14 stateOtherstate/state 15 zip67890/zip 16 phone5554321/phone 17 flag gender =F / 18 /contact 19 20 contact type =to 21 nameJohn Doe/name 22 address1123 Main St./address1 23 address2/address2 24 cityAnytown/city 25 stateAnystate/state 26 zip12345/zip 27 phone5551234/phone 28 flag gender =M / 29 /contact 30 31 salutationDear Sir:/salutation 32 33 paragraphIt is
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1