2010-02-23 12 views
5

को XML फ़ाइल को डीटीडी में कनवर्ट करने के लिए कोई PHP स्क्रिप्ट है।php स्क्रिप्ट xml से dtd

मैंने बहुत कोशिश की। मैं टूल्स ढूंढने में सक्षम हूं लेकिन PHP स्क्रिप्ट नहीं कर सकता।

क्या कोई है?

कोई मदद आभारी होंगे ...

Fero

+0

आप क्या पहचान एक एक्सएमएल स्कीमा फ़ाइल या सिर्फ एक मनमानी एक्सएमएल फ़ाइल का मतलब है? – Gordon

+0

सिर्फ मनमानी फ़ाइल गॉर्डन ... देर से खेद है ... – Fero

+3

मुझे कोई नहीं पता, लेकिन यदि संभव हो तो यह अच्छा होगा। मेरा मतलब है, एक डीटीडी घोंसले नियमों और डेटा प्रकारों जैसी चीजें भी निर्दिष्ट करता है। एक एक्सएमएल फाइलों से डीटीडी बनाना इस टिप्पणी से अंग्रेजी व्याकरण नियमों का निर्माण करना है। क्या 'बाइकिंग' शब्द की अनुपस्थिति का मतलब यह कानूनी शब्द नहीं है? – Pepijn

उत्तर

4

किसी XML फ़ाइल से डीटीडी उत्पन्न करना कुछ ऐसा नहीं है जिसे मैंने अक्सर नहीं देखा है - के मुख्य कारणों में से एक यह सुनिश्चित नहीं हो सकता कि आप डीटीडी डब्ल्यू उत्पन्न करने के लिए उपयोग की गई XML फ़ाइल बीमार में सबकुछ शामिल है जिसे डीटीडी को परिभाषित करना चाहिए।

अर्थात उत्पन्न DTD केवल तत्वों और विशेषताओं को उस विशिष्ट एक्सएमएल फ़ाइल में उपस्थित थे शामिल होंगे - जो करता है जरूरी नहीं कि सभी तत्वों और विशेषताओं को जब यह बाद में का उपयोग कर स्वीकार किया जाना चाहिए मतलब है।


कहा जा रहा है, मैं एक XML फ़ाइल से एक DTD बनाने के लिए किसी भी पीएचपी उपकरण नहीं मिला है ...

... लेकिन मैं एक जावा एक मिल गया है: DTDGenerator - A tool to generate XML DTDs(के हवाले से):

DTDGenerator एक प्रोग्राम है जो इनपुट के रूप में लेता है एक XML दस्तावेज और का उत्पादन एक दस्तावेज़ प्रकार परिभाषा (DTD) outp के रूप में है यू

कार्यक्रम का उद्देश्य आपको एक डीटीडी लिखने में त्वरित शुरुआत देना है।
डीटीडी कई संभावित डीटीडी में से एक है जिसमें इनपुट दस्तावेज़ अनुरूप है।
आमतौर पर आप डीटीडी की जांच करना चाहते हैं और अपने इच्छित दस्तावेजों का अधिक सटीक वर्णन करने के लिए इसे संपादित करना चाहते हैं।


इस DTDGenerator कार्यक्रम के बारे में अच्छा कुछ बातें कर रहे हैं:

  • यह कैसे काम करता
  • के बुनियादी विचारों के बारे में वेबसाइट पर कुछ स्पष्टीकरण स्रोत कोड
  • प्रदान की जाती है कर रहे हैं
  • यह केवल इतना कम है कि 600 लाइन लंबे
    • जिसका अर्थ है कि कोई होना चाहिए बहुत अधिक प्रयास किए बिना समझने में सक्षम
    • और संभवतः इसे PHP पर पोर्ट करें?
    • और स्रोत कोड में कुछ टिप्पणियां हैं - जो की सहायता करेंगी।
  • यह MPLके तहत प्रकाशित है - जिसका अर्थ है ओपन सोर्स; जो अच्छा है, अगर तुम, यह (यदि आप जावा पर अमल नहीं कर सकते कुछ PHP कोड लिखने के लिए संभव हो जाना चाहिए, और वास्तव में इस लिखने की ज़रूरत होती बंदरगाह यह


कि इस कार्यक्रम के स्रोत कोड से शुरू करना चाहते हैं PHP में)
एक ही बात करने के लिए: बुनियादी विचारों कि मुश्किल नहीं कर रहे हैं:

  • आप XML संरचना
  • के माध्यम से जाना यह की ट्री प्रतिनिधित्व के निर्माण से प्रत्येक पर, है टैग
    • जो तत्वों का मतलब है शुरू करने
    • विशेषताओं
  • और, जब आप इसे पूरा कर XML दस्तावेज के माध्यम से जा कर सकते हैं, तो आप दस्तावेज़ के अपने reprensentation से DTD का निर्माण करने के लिए है
    • कि कठिन हिस्सा हो सकता है - जावा उपकरण मैं जुड़ा हुआ के स्रोत को देखते हुए, यह कोड के लाइनों की काफी बड़ी संख्या में reprensents को ^^

शुरू करने से पहले इस DTDGenerator पर एक नज़र लेने के अच्छे बात यह है कि उसके लेखक पहले से ही इस प्रक्रिया के बारे में सोचा है - और पहले से ही कुछ स्थितियों है कि आप नहीं सोच सकते हैं के बारे में ;-)

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