Book XSD Added

master
Pavan Mandava 6 years ago
parent 940ddca4dc
commit 5ae77714d5

@ -0,0 +1,67 @@
<?xml version="1.0" encoding="UTF-8" ?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<xsd:element name="book">
<xsd:complexType>
<xsd:sequence>
<xsd:element ref="bookInfo" minOccurs="1" maxOccurs="1" />
<xsd:element ref="content" minOccurs="1" maxOccurs="1" />
</xsd:sequence>
<xsd:attribute name="code" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
<xsd:element name="bookInfo">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="title" type="xsd:string" minOccurs="1" maxOccurs="1" />
<xsd:element name="lang" type="xsd:string" minOccurs="1" maxOccurs="1" />
<xsd:element name="isTranslation" type="xsd:boolean" minOccurs="1" maxOccurs="1" />
<xsd:element name="totalChapters" type="xsd:nonNegativeInteger" minOccurs="1" maxOccurs="1" />
<xsd:element name="source" type="xsd:string" minOccurs="1" maxOccurs="1" />
<xsd:element name="description" type="xsd:string" minOccurs="0" maxOccurs="1" />
<xsd:element name="isbn" type="xsd:string" minOccurs="0" maxOccurs="1" />
<xsd:element ref="author" minOccurs="1" maxOccurs="unbounded" />
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="author">
<xsd:complexType>
<xsd:simpleContent>
<xsd:extension base="xsd:string">
<xsd:attribute name="translator" type="xsd:boolean" use="optional" />
</xsd:extension>
</xsd:simpleContent>
</xsd:complexType>
</xsd:element>
<xsd:element name="content">
<xsd:complexType>
<xsd:sequence>
<xsd:element ref="chapter" minOccurs="1" maxOccurs="unbounded" />
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="chapter">
<xsd:complexType>
<xsd:sequence>
<xsd:element ref="sentence" minOccurs="1" maxOccurs="unbounded" />
</xsd:sequence>
<xsd:attribute name="num" type="xsd:nonNegativeInteger" use="required" />
<xsd:attribute name="name" type="xsd:string" use="optional" />
</xsd:complexType>
</xsd:element>
<xsd:element name="sentence">
<xsd:complexType>
<xsd:simpleContent>
<xsd:extension base="xsd:string">
<xsd:attribute name="num" type="xsd:nonNegativeInteger" use="required" />
</xsd:extension>
</xsd:simpleContent>
</xsd:complexType>
</xsd:element>
</xsd:schema>

@ -24,14 +24,13 @@ def create_xml_file(book_dict, book_metadata):
total_chapters = ET.SubElement(book_info, 'totalChapters')
total_chapters.text = book_metadata['totalChapters']
source = ET.SubElement(book_info, 'source')
source.text = book_metadata['source']
if 'description' in book_metadata:
description = ET.SubElement(book_info, 'description')
description.text = book_metadata['description']
if 'source' in book_metadata:
source = ET.SubElement(book_info, 'source')
source.text = book_metadata['source']
if 'isbn' in book_metadata:
isbn = ET.SubElement(book_info, 'isbn')
isbn.text = book_metadata['isbn']

Loading…
Cancel
Save