Tag: xsd

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> […]

XML Schema如何通过枚举限制属性

我有以下的XML标签 <price currency="euros">20000.00</price> 如何限制货币属性为以下一种: 欧元 英镑 美元 价格是双倍的? 当我尝试使用两种types时,我只是得到一个错误,这是迄今为止: <xs:element name="price"> <xs:complexType> <xs:attribute name="currency" type="xs:string"> <xs:simpleType> <xs:restriction base="xs:string"> <xs:enumeration value="pounds" /> <xs:enumeration value="euros" /> <xs:enumeration value="dollars" /> </xs:restriction> </xs:simpleType> </xs:attribute> </xs:complexType> </xs:element>

JAXB – 从生成的XML中移除standalone =“yes”

你知道一个JAXB设置来防止在生成的XML中生成standalone =“yes”吗? <?xml version="1.0" encoding="UTF-8" standalone="yes"?>

如何使XML模式中的元素可选?

所以我得到了这个XML模式: <?xml version="1.0"?> <xs:schema version="1.0" xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified"> <xs:element name="request"> <xs:complexType> <xs:sequence> <xs:element name="amenity"> <xs:complexType> <xs:sequence> <xs:element name="description" type="xs:string" /> </xs:sequence> </xs:complexType> </xs:element> </xs:sequence> </xs:complexType> </xs:element> </xs:schema> 我如何使描述元素可选? 因此,带有description元素的XML和不带XSD的XML都将被validation。

用Python中的XML模式进行validation

我在另一个文件中有一个XML文件和一个XML模式,我想validation我的XML文件是否符合模式。 我如何在Python中做到这一点? 我更喜欢使用标准库的东西,但是如果需要,我可以安装第三方软件包。

什么是xs:NCNametypes,什么时候应该使用?

我通过模式生成器运行了我的一个xml文件,生成的所有内容都是预期的,除了一个节点: <xs:element name="office" type="xs:NCName"/> 什么是xs:NCName ? 为什么会使用它,而不是xs:string ?

使用Delphi XML数据绑定向导时,所需的标签不存在

我在Delphi XE2中使用XML数据绑定向导。 该模式具有这种types的标签: <xs:element name="MyReport" type="MyReportType" /> <xs:complexType name="MyReportType"> <xs:all> <xs:element name="Header" type="HeaderType" /> <xs:element name="Values" type="ValuesType" /> <xs:element name="Events" type="EventsType" /> </xs:all> </xs:complexType> 问题是,如果我不向Value组添加任何元素,则不会有<Values> -tag,并且XML文件将无法通过XSD进行validation。 如果界面提供了一种“添加”Values-tag的方法,这可能不会成为问题。 有没有处理这个标准的方法,或者我正确地使用生成的代码? 简单地说 ,是否有任何方式,变通方法或其他方法,使用数据绑定向导中的代码来生成以下XML(在没有子节点时使用上述模式进行validation所需的),给定HeaderType ,ValuesType和EventsType是complexType: <MyReport> <Header /> <Values /> <Events /> </MyReport> (我知道还有其他类似的问题,比如<xs:sequence>生成的代码没有在最终的XML文件中强制执行正确的顺序,但至less对于这个问题,只需要在我仍然认为如果Embarcadero提供一个完整的界面,将会考虑更多这些function,那么这样做还是不错的。)

XSD:xs:integer和xs:int有什么区别?

我已经开始创buildXSD,并在xs:integer和xs:int几个示例中find。 xs:integer和xs:int什么区别? 当我应该使用xs:integer ? 当我应该使用xs:int ?

XSD – 如何允许任何次数的任何顺序的元素?

我正在尝试创build一个XSD,并尝试写入具有以下要求的定义: 允许指定的子元素出现任意次数(0为无界) 允许子元素以任何顺序 我环顾四周,发现了像这样的各种解决scheme: <xs:element name="foo"> <xsl:complexType> <xs:choice minOccurs="0" maxOccurs="unbounded"> <xs:element name="child1" type="xs:int"/> <xs:element name="child2" type="xs:string"/> </xs:choice> </xs:complexType> </xs:element> 但从我的理解XS:select仍然只允许单个元素的select。 因此,像这样将MaxOccurs设置为无界应该只是意味着子元素的“任何一个”可以出现多次。 这是准确的吗? 如果上面的解决scheme是不正确的,我怎么能达到我上面在我的要求中所陈述的? 编辑 :如果要求如下? 元素child1 child2可以出现任意次数(0表示无界) 元素以任何顺序 元素child3和child4应该只出现一次。 例如,这个XML是有效的: <foo> <child1> value </child1> <child1> value </child1> <child3> value </child3> <child2> value </child2> <child4> value </child4> <child1> value </child1> </foo> 但这不(缺less孩子3) <foo> <child1> value </child1> […]

XML和XSD有什么区别?

可扩展标记语言(XML)和XML模式(XSD)有什么区别?