Heim  >  Artikel  >  Backend-Entwicklung  >  Erstellen Sie eine XML-Datei mit einem zugehörigen XML-Schema. && Erstellen Sie ein XML-Schema aus einer XML-Datei

Erstellen Sie eine XML-Datei mit einem zugehörigen XML-Schema. && Erstellen Sie ein XML-Schema aus einer XML-Datei

黄舟
黄舟Original
2017-02-28 16:48:231955Durchsuche

1. Erstellen Sie eine XML-Datei mit zugehörigem XML-Schema
1. Erstellen Sie ein neues Windows-Anwendungsprojekt

Zuerst müssen Sie eine neue Windows-Anwendung in Visual Basic oder Visual C# erstellen. Erstellen Sie ein neues Projekt, nennen Sie es „XMLCustomerList“, zeigen Sie im Menü „Datei“ auf „Neu“ und klicken Sie dann auf „Projekt“, um das Dialogfeld „Neues Projekt“ anzuzeigen. Wählen Sie je nach der Sprache, die Sie verwenden möchten, im Bereich „Projekttyp“ die Option „Visual Basic-Projekt“ oder „Visual C#-Projekt“ und dann „Windows-Anwendung“ aus. Benennen Sie das Projekt „XMLCustomerList“ und klicken Sie auf „OK“, um das Projekt zu erstellen.

2. Visual Studio fügt das XMLCustomerList-Projekt zum Projektmappen-Explorer hinzu.

Um dem Projekt ein neues XML-Dateielement hinzuzufügen, wählen Sie im Menü „Projekt“ die Option „Neues Element hinzufügen“. Das Dialogfeld „Neues Element hinzufügen“ wird angezeigt. Wählen Sie im Bereich „Vorlagen“ des Dialogfelds „Neues Element hinzufügen“ die Option „XML-Datei“ aus. Benennen Sie die XML-Datei „CustomerList“ und klicken Sie auf „Öffnen“.

3. Fügen Sie dem Projekt ein neues XML-Schemaelement hinzu

Um ein neues XML-Schemaelement zum Projekt hinzuzufügen, wählen Sie „Neues Element hinzufügen“ aus dem Menü „Projekt“. Das Dialogfeld „Neues Element hinzufügen“ wird angezeigt. Wählen Sie im Bereich „Vorlagen“ des Dialogfelds „Neues Element hinzufügen“ die Option „XML-Schema“ aus. Benennen Sie das Schema „CustomerListSchema“ und klicken Sie auf „Öffnen“.

4. Fügen Sie dem Schema eine einfache Typdefinition hinzu

Erstellen Sie ein einfaches Typelement, das eine 5-stellige Postleitzahl darstellt

Auf der Registerkarte „XML-Schema“ des „ Toolbox“, ziehen Sie einen „simpleType“ auf die Designoberfläche. Wählen Sie den Standardnamen „simpleType1“ und benennen Sie den Typ in „postalCode“ um. Navigieren Sie mit der TAB-Taste zur nächsten Zelle rechts und wählen Sie „positiveInteger“ aus der Dropdown-Liste aus. Mit der TAB-Taste navigieren Sie zur nächsten Zeile.

Klicken Sie auf das Dropdown-Feld. Die einzige Option ist Facette. Dies liegt daran, dass einfache Typen keine Elemente oder Attribute als Teil ihres Inhaltsmodells enthalten können. Zur Generierung einfacher Typen können nur Facetten verwendet werden. Navigieren Sie mit der TAB-Taste zur nächsten Zelle rechts und wählen Sie „Muster“ aus der Dropdown-Liste aus. Navigieren Sie mit der TAB-Taste erneut zur nächsten Zelle rechts und geben Sie „d{5}“ ein.

Die Musterfacette ermöglicht die Eingabe regulärer Ausdrücke. Der reguläre Ausdruck d{5} bedeutet, dass der Inhalt des Typs postalCode auf 5 Ziffern begrenzt ist. Reguläre Ausdrücke gehen über den Rahmen dieser exemplarischen Vorgehensweise hinaus, aber Sie können sehen, wie Sie Musterfacetten mit ausgewählten Datentypen verwenden, um nur bestimmte Daten in einfachen Typen zuzulassen.

Wenn Sie das Schema auf XML-Ansicht umstellen, sollten Sie den folgenden Code im Schema-Tag der Stammebene sehen (das bedeutet, dass das Codebeispiel weder den eigentlichen Deklarationsteil des Frameworks noch das, was als Stamm bezeichnet wird, enthält oder auf Dokumentebene markiertes tatsächliches Schema-Markup):

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

Wählen Sie „Alle speichern“ aus dem Menü „Datei“.

5. Fügen Sie dem Schema eine komplexe Typdefinition hinzu.

Erstellen Sie ein komplexes Typelement, das eine Standard-US-Adresse darstellt.

Wechseln Sie zur Ansicht „Schema“. Ziehen Sie von der Registerkarte „XML-Schema“ der Toolbox einen complexType auf die Entwurfsoberfläche. Wählen Sie den Standardnamen „complexType1“ und benennen Sie den Typ in „usAddress“ um. Wählen Sie für dieses Element keinen Datentyp aus. Mit der TAB-Taste navigieren Sie zur nächsten Zeile. Klicken Sie auf das Dropdown-Listenfeld und Sie sehen mehrere Optionen für Elemente, die dem komplexen Typ hinzugefügt werden können. Das Element kann ausgewählt werden, aber für den Rest dieser exemplarischen Vorgehensweise bewegen Sie die Tabulatortaste einfach über die Zelle, da das Element die Standardeinstellung ist. Navigieren Sie mit der TAB-Taste zur nächsten Zelle rechts und geben Sie „Name“ ein.

Navigieren Sie mit der TAB-Taste zur nächsten Zelle rechts und legen Sie den Datentyp auf Zeichenfolge fest. Wiederholen Sie diesen Vorgang innerhalb des Elements „usAddress“, um neue Zeilen zu erstellen für:

Elementname
Datentyp

Street
 string
 
City
 string
 
State
 string
 
Zip
 postalCode


Bitte beachten Sie der dem Zip-Element zugewiesene Datentyp. Es handelt sich um den einfachen Typ postalCode, den Sie zuvor erstellt haben.

Wenn Sie zur XML-Ansicht wechseln, sollten Sie den folgenden Code im Schema-Tag auf Stammebene sehen (das bedeutet, dass das Codebeispiel weder den eigentlichen Deklarationsteil des Schemas noch das als Stamm oder Dokument bezeichnete Tag enthält Ebene Tatsächliches Schema-Markup):

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

Jetzt haben Sie zwei separate Typen definiert, die sowohl in Elementdefinitionen als auch in Typen verwendet werden können. Wählen Sie im Menü „Datei“ die Option „Alle speichern“. Fügen Sie das Hauptelement zum Schema hinzu

6. Nachdem Sie einige Datentypen definiert haben, können Sie die eigentliche Datendefinition für die zu erstellende XML-Datei erstellen. Die XML-Datei enthält Daten für die Kundenliste. Erstellen Sie daher die tatsächlichen Elemente, die die Daten definieren, die in der XML-Datei gültig sind.

Erstellen Sie das Kundenelement

Wechseln Sie zur Schemaansicht. Ziehen Sie ein „Element“ aus der Registerkarte „XML-Schema“ der Toolbox auf die Designoberfläche. Wählen Sie den Standardnamen „element1“ und benennen Sie ihn in „customer“ um. Wählen Sie für dieses Element keinen Datentyp aus. Navigieren Sie mit der TAB-Taste zur mittleren Zelle der nächsten Zeile und geben Sie „Firmenname“ ein. Navigieren Sie mit der TAB-Taste zur nächsten Zelle rechts und legen Sie den Datentyp auf Zeichenfolge fest. Wiederholen Sie diesen Vorgang innerhalb des Kundenelements, um neue Zeilen für Folgendes zu erstellen:

Elementname
Datentyp

ContactName
 string
 
Email
 string
 
Phone
 string
 
BillToAddress
 usAddress
 
ShipToAddress
 usAddress

 

请注意分配给“帐单地址”(BillToAddress) 元素以及“发货地址”(ShipToAddress) 元素的数据类型。它是以前创建的 usAddress 复杂类型。我们可能已经为“电子邮件”(Email)、“电话号码”(Phone) 元素等定义了简单类型。

如果将架构切换到 XML 视图,应在根级别架构标记中看到下列代码(这意味着该代码示例既不包括框架的实际声明部分,也不包括称为根或文档级别标记的实际架构标记):

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

从“文件”菜单中选择“全部保存”。

7、为了在 XML 文档内允许客户数据的多个实例,我们将创建名为 customerList 的元素,该元素将包含所有单独的 customer 元素。

创建 customerList 元素 从“工具箱”的“XML 架构”选项卡中将一个“element”拖到设计图面上。 选择默认名称“element1”,然后将其重命名为“customerList”。不要为此元素选择数据类型。 选择 customer 元素(以前创建的)并将其拖到 customerList 元素上。 单独的设计窗格进行绑定以表示数据的分层结构。 从“文件”菜单中选择“全部保存”。

8、将架构和 XML 文件相关联

创建 XML 文件和 XML 架构之间的关联 在“解决方案资源管理器”中,双击“CustomerList.xml”文件。该 XML 文件在设计器的 XML 视图中打开。 在“属性”窗口中,单击“targetSchema”属性右边的单元格,并选择“http://tempuri.org/CustomerListSchema.xsd”。

Visual Studio 在 CustomerList.xml 文件中添加对架构的引用,并添加 65c8c2eba47d45b28d58e9d8e0b9e199 标记。

向 XML 文件添加数据

9、现在可以向 XML 文件添加数据了。通过将架构与 XML 文件关联,XML 编辑器现在知道可包括在 XML 文件中的有效元素,并在数据视图中提供格式化的网格。

向 customerList.xml 文件添加数据 ,在处于 XML 视图的“customerList.xml”文件中,将光标定位在开始和结束 65c8c2eba47d45b28d58e9d8e0b9e199 标记(开始标记 = 65c8c2eba47d45b28d58e9d8e0b9e199,结束标记 = 40fe86b68958d21d46e3e510e3bba63f)之间。

键入 324a962f09dd6b0985768c5e5f4ac231 以结束该标记。

键入 b5158a8b4f627cc43a00e3df6a0c2a42 以结束该标记。

键入 Blue Yonder Airlines 作为公司名。

切换到“数据”视图。 在网格中的“联系人姓名”字段中键入 Nate Sun。 通过在网格中的其他字段中添加数据来填写记录。 切回到“XML”视图。 网格中的数据现在正确格式化为 XML。

二、从 XML 文件创建 XML 架构

基于现有 XML 文档创建新的 XML 架构

1、将一个 XML 文档(.xml 文件)加载到“XML 设计器”中。

2、从“XML”菜单单击“创建架构”。

3、将向当前项目添加一个 XML 架构(.xsd 文件),它具有与原始 XML 文件相同的名称。

4、将新创建的 XML 架构(.xsd 文件)加载到“XML 设计器”中。

5、验证和编辑创建架构时分配的数据类型。

注意   当从现有 XML 文档推导架构时,所有数据类型开始都设置为 string,因此您必须根据 XML 数据的内容要求编辑数据类型。

如果需要对架构进行更改,可以使用“XML 设计器”添加、编辑和移除元素。

 以上就是创建带有关联的 XML 架构的 XML 文件 && 从 XML 文件创建 XML 架构的内容,更多相关内容请关注PHP中文网(www.php.cn)!


Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Vorheriger Artikel:XPath 11-InstanzenNächster Artikel:XPath 11-Instanzen