2010-02-25 11 views
6

में मिनीडॉम का उपयोग करके एक डीटीडी सेट करें मैं मिनीडॉम का उपयोग करके अपने एक्सएमएल दस्तावेज़ में डीटीडी के संदर्भ को शामिल करने का प्रयास कर रहा हूं।पायथन

मैं जैसे दस्तावेज़ बनाने हूँ:

<?xml version="1.0" ?> 
<!DOCTYPE something SYSTEM "http://www.path.to.my.dtd.com/my.dtd"> 
<foo/> 

उत्तर

9

दस्तावेज़ीकरण पुराना है। स्रोत का प्रयोग करें, ल्यूक। मैं ऐसा कुछ करता हूँ।

from xml.dom.minidom import DOMImplementation 

imp = DOMImplementation() 
doctype = imp.createDocumentType(
    qualifiedName='foo', 
    publicId='', 
    systemId='http://www.path.to.my.dtd.com/my.dtd', 
) 
doc = imp.createDocument(None, 'foo', doctype) 
doc.toxml() 

यह निम्न प्रिंट करता है।

<?xml version="1.0" ?><!DOCTYPE foo SYSTEM \'http://www.path.to.my.dtd.com/my.dtd\'><foo/> 

नोट कैसे मूल तत्व createDocument द्वारा स्वचालित रूप से बनाई गई है()। साथ ही, आपके 'कुछ' को 'foo' में बदल दिया गया है: डीटीडी को मूल तत्व नाम स्वयं रखना होगा।

+0

अच्छा। खुशी है कि आपको एक समाधान मिला! – smencer

1

the Python docs के अनुसार, कोई:

<?xml version="1.0" ?> 
<foo/> 

मैं की तरह कुछ प्राप्त करने की आवश्यकता:

doc = Document() 
foo = doc.createElement('foo') 
doc.appendChild(foo) 
doc.toxml() 

यह मैं देता मिनीडॉम में दस्तावेज़ टाइप इंटरफ़ेस का कार्यान्वयन।

 संबंधित मुद्दे

  • कोई संबंधित समस्या नहीं^_^