【发布时间】:2017-11-07 10:48:25
【问题描述】:
我必须从这个图中生成 XML 和 XSD:
但是会弹出一个错误:文件过早结束。 我还遇到另一个错误:xsd:all must terminate with end tag 我的代码正确吗?
实体关系约束:
1. A theater can have at least 1 screen but not more than 3.
2. A screen may have many shows and sometimes it may not have any show.
show-time example - 10 AM, 12 PM etc.
3. A show has information on the movie which has the director name, title
and the release date which can occur in any order.
4. A movie will have actors and actors may have many actor's name.
代码:
<?xml version="1.0" encoding="UTF-8"?>
<theater>
<name>rajat</name>
<address>mumbai</address>
<phone>987654</phone>
<screen>
<seats>30</seats>
<width>30</width>
<show>
<show-time>10 AM</show-time>
<movie>
<director>jade</director>
<title>game</title>
<release-date>10/10/2017</release-date>
<actors>
<name>james</name>
<name>aaron</name>
</actors>
</movie>
</show>
</screen>
</theater>
XSD:
<?xml version="1.0" encoding="UTF-8"?>
<xsd:schema xmlns:xsd="https://www.w3.org/2001/XMLSchema"
attributeFormDefault="unqualified" elementFormDefault="qualified">
<xsd:element name="theater">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="name" type="xsd:string"/>
<xsd:element name="address" type="xsd:string"/>
<xsd:element name="phone" type="xsd:long"/>
<xsd:element name="screen" maxOccurs="3"/>
<xsd:complexType>
<xsd:sequence>
<xsd:element name="seats" type="xsd:byte"/>
<xsd:element name="width" type="xsd:byte"/>
<xsd:element name="show" minOccurs="0"/>
<xsd:complexType>
<xsd:sequence>
<xsd:element name="show-time" type="xsd:string" maxOccurs="unbounded"
minOccurs="0"/>
<xsd:element name="movie"/>
<xsd:complexType>
<xsd:all>
<xsd:element name="director" type="xsd:string"/>
<xsd:element name="title" type="xsd:string"/>
<xsd:element name="release-date" type="xsd:string"/>
<xsd:element name="actors"/>
<xsd:complexType>
<xsd:sequence>
<xsd:element name="name" type="xsd:string" maxOccurs="unbounded"
minOccurs="0"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:all>
</xsd:complexType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:schema>
【问题讨论】:
-
您的 XML 是有效的,如果这是您所要求的。您还没有提供应该阅读它的代码。
-
我也添加了 xsd。基本上我必须同时生成 XML 和 XSD
-
您的 XSD 无效有效。使用具有突出显示和适当缩进的编辑器。您有几个不匹配的打开/关闭标签。