溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

XML中創(chuàng)建的示例分析

發(fā)布時間:2021-09-17 15:30:18 來源:億速云 閱讀:144 作者:小新 欄目:編程語言

這篇文章主要介紹了XML中創(chuàng)建的示例分析,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。

一、創(chuàng)建帶有關(guān)聯(lián)的 xml 架構(gòu)的 XML 文件
1、創(chuàng)建新的 Windows 應(yīng)用程序項目

首先需要在 Visual Basic 或 Visual C# 中創(chuàng)建新的 Windows 應(yīng)用程序。創(chuàng)建一個新項目并將其命名為“XMLCustomerList” ,從“文件”菜單中指向“新建”,然后單擊“項目”以顯示“新建項目”對話框。 根據(jù)要使用的語言,在“項目類型”窗格中選擇“Visual Basic 項目”或“Visual C# 項目”,然后選擇“Windows 應(yīng)用程序”。 將項目命名為“XMLCustomerList”,然后單擊“確定”以創(chuàng)建該項目。

2、Visual Studio 會將 XMLCustomerList 項目添加到解決方案資源管理器。

向項目添加新的 XML 文件項 ,從“項目”菜單中選擇“添加新項”。將出現(xiàn)“添加新項”對話框。從“添加新項”對話框的“模板”區(qū)域選擇“XML 文件”。將 XML 文件命名為“CustomerList”,然后單擊“打開”。

3、向項目添加新的 XML 架構(gòu)項

向項目添加新的 XML 架構(gòu)項 ,從“項目”菜單中選擇“添加新項”。 出現(xiàn)“添加新項”對話框。 從“添加新項”對話框的“模板”區(qū)域選擇“XML 架構(gòu)”。 將架構(gòu)命名為“CustomerListSchema”,然后單擊“打開”。

4、向架構(gòu)添加簡單類型定義

創(chuàng)建表示 5 位郵政編碼的簡單類型元素

從“工具箱”的“XML 架構(gòu)”選項卡中,將一個“simpleType”拖到設(shè)計圖面上。選擇默認(rèn)名稱“simpleType1”,并將該類型重命名為“postalCode”。使用 TAB 鍵定位到右側(cè)的下一個單元格,并從下拉列表中選擇“positiveInteger”。使用 TAB 鍵定位到下一行。

單擊下拉框。唯一的選項是 facet。這是因為簡單類型不能包含元素或?qū)傩宰鳛槠鋬?nèi)容模型的組成部分。只有 facet 可以用于生成簡單類型。使用 TAB 鍵定位到右側(cè)的下一個單元格,并從下拉列表中選擇“pattern”。再次使用 TAB 鍵定位到右側(cè)的下一個單元格,并鍵入“\d{5}”。

模式 facet 使您可以輸入正則表達(dá)式。正則表達(dá)式 \d{5} 表示“郵政編碼”(postalCode) 類型的內(nèi)容限制為 5 位。正則表達(dá)式超出了本演練的范圍,但您可看到如何與所選數(shù)據(jù)類型一起使用模式 facet 以便在簡單類型中只允許特定數(shù)據(jù)。

如果將架構(gòu)切換到 XML 視圖,應(yīng)在根級別架構(gòu)標(biāo)記中看到下列代碼(這意味著該代碼示例既不包括框架的實際聲明部分,也不包括稱為根或文檔級別標(biāo)記的實際架構(gòu)標(biāo)記):

<xs:simpleType name="postalCode">
      <xs:restriction base="xs:positiveInteger">
         <xs:pattern value="\d{5}" />
      </xs:restriction>
   </xs:simpleType>

從“文件”菜單中選擇“全部保存”。

5、向架構(gòu)添加復(fù)雜類型定義

創(chuàng)建表示標(biāo)準(zhǔn)美國地址的復(fù)雜類型元素

切換到“架構(gòu)”視圖。從“工具箱”的“XML 架構(gòu)”選項卡中,將一個“complexType”拖到設(shè)計圖面上。選擇默認(rèn)名稱“complexType1”,然后將該類型重命名為“usAddress”。不要為此元素選擇數(shù)據(jù)類型。使用 TAB 鍵定位到下一行。單擊下拉列表框,將看到可以添加到復(fù)雜類型的多個元素選項??蛇x擇元素,但對于本演練的其余部分,您將只是用 TAB 鍵跳過該單元格,因為元素是默認(rèn)設(shè)置。使用 TAB 鍵定位到右側(cè)的下一個單元格,并鍵入“Name”。

使用 TAB 鍵定位到右側(cè)的下一個單元格,并將數(shù)據(jù)類型設(shè)置為 string。 重復(fù)在 usAddress 元素中為以下項創(chuàng)建新行:

元素名稱
數(shù)據(jù)類型

Street
 string
 
City
 string
 
State
 string
 
Zip
 postalCode

請注意分配給“郵政編碼”(Zip) 元素的數(shù)據(jù)類型。它是您以前創(chuàng)建的 postalCode 簡單類型。

如果切換到 XML 視圖,應(yīng)在根級別架構(gòu)標(biāo)記中看到下列代碼(這意味著該代碼示例既不包括架構(gòu)的實際聲明部分,也不包括稱為根或文檔級別標(biāo)記的實際架構(gòu)標(biāo)記):

<xs:simpleType name="postalCode">
      <xs:restriction base="xs:positiveInteger">
         <xs:pattern value="\d{5}" />
      </xs:restriction>
   </xs:simpleType>
   <xs:complexType name="usAddress">
      <xs:sequence>
         <xs:element name="Name" type="xs:string" />
         <xs:element name="Street" type="xs:string" />
         <xs:element name="City" type="xs:string" />
         <xs:element name="State" type="xs:string" />
         <xs:element name="Zip" type="postalCode" />
      </xs:sequence>
   </xs:complexType>

現(xiàn)在您已定義了兩個單獨(dú)類型,它們可用于元素定義以及類型。從“文件”菜單中選擇“全部保存”。將主元素添加到架構(gòu)

6、在定義了一些數(shù)據(jù)類型后,可為將創(chuàng)建的 XML 文件構(gòu)造實際數(shù)據(jù)定義。該 XML 文件將包含客戶列表的數(shù)據(jù),因此請創(chuàng)建定義將在 XML 文件中有效的數(shù)據(jù)的實際元素。

創(chuàng)建 Customer 元素

切換到“架構(gòu)”視圖。從“工具箱”的“XML 架構(gòu)”選項卡中將一個“element”拖到設(shè)計圖面上。 選擇默認(rèn)名稱“element1”,然后將它重命名為“customer”。不要為此元素選擇數(shù)據(jù)類型。使用 TAB 鍵定位到下一行的中心單元格,并鍵入“CompanyName”。 使用 TAB 鍵定位到右側(cè)的下一個單元格,并將數(shù)據(jù)類型設(shè)置為 string。 重復(fù)在 Customer 元素中為下列項創(chuàng)建新行:

元素名稱
數(shù)據(jù)類型

ContactName
 string
 
Email
 string
 
Phone
 string
 
BillToAddress
 usAddress
 
ShipToAddress
 usAddress

請注意分配給“帳單地址”(BillToAddress) 元素以及“發(fā)貨地址”(ShipToAddress) 元素的數(shù)據(jù)類型。它是以前創(chuàng)建的 usAddress 復(fù)雜類型。我們可能已經(jīng)為“電子郵件”(Email)、“電話號碼”(Phone) 元素等定義了簡單類型。

如果將架構(gòu)切換到 XML 視圖,應(yīng)在根級別架構(gòu)標(biāo)記中看到下列代碼(這意味著該代碼示例既不包括框架的實際聲明部分,也不包括稱為根或文檔級別標(biāo)記的實際架構(gòu)標(biāo)記):

  <xs:simpleType name="postalCode">
      <xs:restriction base="xs:positiveInteger">
         <xs:pattern value="\d{5}" />
      </xs:restriction>
   </xs:simpleType>
   <xs:complexType name="usAddress">
      <xs:sequence>
         <xs:element name="Name" type="xs:string" />
         <xs:element name="Street" type="xs:string" />
         <xs:element name="City" type="xs:string" />
         <xs:element name="State" type="xs:string" />
         <xs:element name="Zip" type="postalCode" />
      </xs:sequence>
   </xs:complexType>
   <xs:element name="Customer">
      <xs:complexType>
         <xs:sequence>
            <xs:element name="CompanyName" type="xs:string" />
            <xs:element name="ContactName" type="xs:string" />
            <xs:element name="Email" type="xs:string" />
            <xs:element name="Phone" type="xs:string" />
            <xs:element name="ShipToAddress" type="usAddress" />
            <xs:element name="BillToAddress" type="usAddress" />
         </xs:sequence>
      </xs:complexType>
   </xs:element>

從“文件”菜單中選擇“全部保存”。

7、為了在 XML 文檔內(nèi)允許客戶數(shù)據(jù)的多個實例,我們將創(chuàng)建名為 customerList 的元素,該元素將包含所有單獨(dú)的 customer 元素。

創(chuàng)建 customerList 元素 從“工具箱”的“XML 架構(gòu)”選項卡中將一個“element”拖到設(shè)計圖面上。 選擇默認(rèn)名稱“element1”,然后將其重命名為“customerList”。不要為此元素選擇數(shù)據(jù)類型。 選擇 customer 元素(以前創(chuàng)建的)并將其拖到 customerList 元素上。 單獨(dú)的設(shè)計窗格進(jìn)行綁定以表示數(shù)據(jù)的分層結(jié)構(gòu)。 從“文件”菜單中選擇“全部保存”。

8、將架構(gòu)和 XML 文件相關(guān)聯(lián)

創(chuàng)建 XML 文件和 XML 架構(gòu)之間的關(guān)聯(lián) 在“解決方案資源管理器”中,雙擊“CustomerList.xml”文件。該 XML 文件在設(shè)計器的 XML 視圖中打開。 在“屬性”窗口中,單擊“targetSchema”屬性右邊的單元格,并選擇“http://tempuri.org/CustomerListSchema.xsd”。

Visual Studio 在 CustomerList.xml 文件中添加對架構(gòu)的引用,并添加 <customerList> 標(biāo)記。

向 XML 文件添加數(shù)據(jù)

9、現(xiàn)在可以向 XML 文件添加數(shù)據(jù)了。通過將架構(gòu)與 XML 文件關(guān)聯(lián),XML 編輯器現(xiàn)在知道可包括在 XML 文件中的有效元素,并在數(shù)據(jù)視圖中提供格式化的網(wǎng)格。

向 customerList.xml 文件添加數(shù)據(jù) ,在處于 XML 視圖的“customerList.xml”文件中,將光標(biāo)定位在開始和結(jié)束 <customerList> 標(biāo)記(開始標(biāo)記 = <customerList>,結(jié)束標(biāo)記 = </customerList>)之間。

鍵入 <。選擇 Customer 元素。

鍵入 > 以結(jié)束該標(biāo)記。

鍵入 <,并從有效元素列表中選擇 CompanyName。

鍵入 > 以結(jié)束該標(biāo)記。

鍵入 Blue Yonder Airlines 作為公司名。

切換到“數(shù)據(jù)”視圖。 在網(wǎng)格中的“聯(lián)系人姓名”字段中鍵入 Nate Sun。 通過在網(wǎng)格中的其他字段中添加數(shù)據(jù)來填寫記錄。 切回到“XML”視圖。 網(wǎng)格中的數(shù)據(jù)現(xiàn)在正確格式化為 XML。

二、從 XML 文件創(chuàng)建 XML 架構(gòu)

基于現(xiàn)有 XML 文檔創(chuàng)建新的 XML 架構(gòu)

1、將一個 XML 文檔(.xml 文件)加載到“XML 設(shè)計器”中。

2、從“XML”菜單單擊“創(chuàng)建架構(gòu)”。

3、將向當(dāng)前項目添加一個 XML 架構(gòu)(.xsd 文件),它具有與原始 XML 文件相同的名稱。

4、將新創(chuàng)建的 XML 架構(gòu)(.xsd 文件)加載到“XML 設(shè)計器”中。

5、驗證和編輯創(chuàng)建架構(gòu)時分配的數(shù)據(jù)類型。

注意   當(dāng)從現(xiàn)有 XML 文檔推導(dǎo)架構(gòu)時,所有數(shù)據(jù)類型開始都設(shè)置為 string,因此您必須根據(jù) XML 數(shù)據(jù)的內(nèi)容要求編輯數(shù)據(jù)類型。

如果需要對架構(gòu)進(jìn)行更改,可以使用“XML 設(shè)計器”添加、編輯和移除元素。

感謝你能夠認(rèn)真閱讀完這篇文章,希望小編分享的“XML中創(chuàng)建的示例分析”這篇文章對大家有幫助,同時也希望大家多多支持億速云,關(guān)注億速云行業(yè)資訊頻道,更多相關(guān)知識等著你來學(xué)習(xí)!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

xml
AI