XSD文件的目的是什么?

尽pipe我们可以从c#(.net)查询xml文件。 为什么需要.xsd文件? 我知道这是特定XML文件的元数据文件。 我们可以在xsd中指定关系。 但是它的function呢?

当然:看,我有xml:

<?xml version="1.0" encoding="utf-8" ?> <Root> Customers-> ->Customer ->CustomerID="GREAL">-> <CompanyName>Great Lakes Food Market</CompanyName> <ContactName>Howard Snyder</ContactName> <ContactTitle>Marketing Manager</ContactTitle> <Phone>(503) 555-7555</Phone> <FullAddress> <Address>2732 Baker Blvd.</Address> <City>Eugene</City> <Region>OR</Region> <PostalCode>97403</PostalCode> <Country>USA</Country> </FullAddress> <-</Customer> <- </Customers> <Orders> <Order> <CustomerID>GREAL</CustomerID> <EmployeeID>6</EmployeeID> <OrderDate>1997-05-06T00:00:00</OrderDate> <RequiredDate>1997-05-20T00:00:00</RequiredDate> <ShipInfo ShippedDate="1997-05-09T00:00:00"> <ShipVia>2</ShipVia> <Freight>3.35</Freight> <ShipName>Great Lakes Food Market</ShipName> <ShipAddress>2732 Baker Blvd.</ShipAddress> <ShipCity>Eugene</ShipCity> <ShipRegion>OR</ShipRegion> <ShipPostalCode>97403</ShipPostalCode> <ShipCountry>USA</ShipCountry> </ShipInfo> </Order> <Order> <CustomerID>GREAL</CustomerID> <EmployeeID>8</EmployeeID> <OrderDate>1997-07-04T00:00:00</OrderDate> <RequiredDate>1997-08-01T00:00:00</RequiredDate> <ShipInfo ShippedDate="1997-07-14T00:00:00"> <ShipVia>2</ShipVia> <Freight>4.42</Freight> <ShipName>Great Lakes Food Market</ShipName> <ShipAddress>2732 Baker Blvd.</ShipAddress> <ShipCity>Eugene</ShipCity> <ShipRegion>OR</ShipRegion> <ShipPostalCode>97403</ShipPostalCode> <ShipCountry>USA</ShipCountry> </ShipInfo> </Order> </Orders> </Root> 

我想根据提供的CustomeId从ORDERS元素获取数据。

还有一个问题是 :在xsd中给出关系的目的什么?

XSD文件用于validationXML – 符合某种格式。

在这方面,它们与之前存在的DTD类似。

XSD和DTD的主要区别在于XSD是用XML编写的,被认为更易于阅读和理解。

没有XML Schema(XSD文件),XML文件是相对自由的一组元素和属性。 XSD文件定义允许哪些元素和属性以及以何种顺序。

一般来说,XML是一种元语言。 XSD文件定义该元语言中的特定语言。 例如,如果您的XSD文件包含XHTML 1.0的定义,那么您的XML文件需要适合XHTML 1.0而不是其他格式。

您在提到的问题中提到了C#,因此可以将XSD看作是为C#界面提供类似的angular色。

它以类似于接口定义类应该实现的方式来定义XML应该看起来像什么。

还有一个问题是:在xsd中给出关系的目的是什么?

假设你想为外部工具或类似的工具生成一些XML,你怎么知道允许使用什么结构才能正确使用它们的工具呢? 你写一个模式。 同样,如果你希望其他人使用你的工具,你会写一个模式让他们遵循。 这对validation您自己的XML也可能有用。

XSD限制了XML文档的词汇和结构。

  • 没有XSD ,XML文档只需遵循W3C XML Recommendation中给出的格式 良好的规则。
  • 对于XSD ,XML文档必须遵守其元素和属性名称和值的额外约束,以便根据W3C XML模式build议书对XSD认为有效

XML是关于协议的 ,XSD提供了超越XML本身的基本定义来构build和传达协议的手段。

XSD是指定如何形成XML文档的正式合同。 它通常用于validationXML文档或从中生成代码。

在了解XSD(XML Schema Definition)之前让我解释一下;

什么是模式?

例如; emailID:peter#gmail

您可以识别上面的emailID是无效的,因为没有@,.com或.net或.org。

我们知道电子邮件模式,它看起来像peter@gmail.com。

结论:Schema不validation数据,validation结构。

XSD实际上是XML Schema的实现之一。 其他我们已经放松

我们使用XSD来validationXML数据。

一个XSD文件是一个XML模式定义,它被用来提供一个标准的方法来检查一个给定的XML文档是否符合你的期望。

一个.xsd文件被称为XML模式。 通过XML模式,我们可能需要给定XML中的某个结构 – 哪些元素的顺序,次数,哪些属性,如何嵌套等等。如果我们有一个XMLinput模式,我们可以validation它包含我们需要它包含的数据,而没有别的,只需要几行就可以调用模式validation器。

xsd文件是xml文件的模式 – 它定义了可能发生的元素及其限制(如数量,顺序,边界,关系等)