تعيين عناصر البيانات الداخلية لمخطط XML الخاص بالموردين الخارجيين

StackOverflow https://stackoverflow.com/questions/79594

سؤال

أنا أفكر في Altova MapForce (أو شيء مشابه) لإنتاج إما XSLT و/أو فئة Java أو C# للقيام بالترجمة.اليوم، نقوم بسحب البيانات مباشرة من قاعدة البيانات ونبني يدويًا سلسلة XML التي ننشرها على خدمة الويب.

هل يجب أن يكون db -> (داخلي) XML -> XSLT -> (خارجي) XML؟ماذا تفعلون يا رفاق هناك في العالم الواسع؟

هل كانت مفيدة؟

المحلول

سأستخدم إحدى فئات تسلسل XML الجاهزة لإنشاء XML الداخلي الخاص بك، ثم استخدم XSLT للتحويل إلى XML الخارجي.يمكنك إنشاء مخطط أيضًا لفرض أن كود الترجمة (أي شيء سيقود ترجمة XSLT الخاصة بك) يستمر في الحصول على XML الذي يتوقع ترجمته في حالة حدوث تغييرات في الكائن مما يؤدي إلى كسر الأشياء.

يوجد عدد من برامج تحرير XSLT في السوق والتي ستساعدك في إجراء التعيينات، ولكنني أفضل استخدام محرر XML عادي فقط.

نصائح أخرى

نعم، أعتقد أنك تسير على الطريق الصحيح مع MapForce.إذا كنت لا ترغب في كتابة تعليمات برمجية لإجراء التحويل الفعلي، فيمكن لـ MapForce القيام بذلك نيابةً عنك أيضًا.قد يكون هذا أفضل على المدى الطويل ب/ج، حيث يتطلب الحفاظ عليه رمزًا أقل.

ابتعد عن الخيارات الأكثر تكلفة (على سبيل المثال.BizTalk) إلا إذا كنت بحاجة حقًا إلى تكامل وتنسيق B2B.

ما هي قاعدة البيانات التي تستخدمها؟لدى Oracle بعض أدوات رسم خرائط XML الرائعة.هناك بعض أدوات ربط Java (أحدها هو http://java.sun.com/developer/technicalArticles/WebServices/jaxb).ومع ذلك، إذا كان لديك الرفاهية، ففكر في استخدام Ruby الذي يحتوي على أساليب "to_xml" مدمجة لطيفة.

نصيحة رقم 1:تجنب كل استخدام لـ XSLT.

دعم الأداة سيءسيكون الحل الناتج غير قابل للاستمرار.

نصيحة رقم 2:القضاء على جميع الخطوات غير الضرورية.

ما عليك سوى ترجمة مجموعة النتائج الخاصة بك (بافتراض أنك تستخدم JDBC أو ما يعادلها) إلى ملف XML الصادر.

نصيحة رقم 3:افترض أن كل استخدامات الأدوات المستندة إلى المخطط غير صحيحة وقم بالتخطيط وفقًا لذلك.

وبعبارة أخرى، مجرد وهمية.إذا كان عليك إطلاق بعض حمولة SOAP المتحولة (زائدة عن الحاجة، وأنا أعلم) فما عليك سوى محاكاة رسالة SOAP عاملة ثم تحويلها إلى قالب.السرعة لا تمتص.

ومع ذلك، فإن الإجابة الأفضل/الصحيحة هي استخدام حل نمط "XML Writer".هناك عدد قليل.

وأجمل ما كتبت LOX (كائنات خفيفة الوزن لـ XML).

تستخدم واجهة برمجة التطبيقات العامة نمط تصميم Builder.بسبب بعض السحر الموجود تحت الغطاء، من المستحيل إنشاء ملف XML مشوه.

يرجى الملاحظة: إذا كان XML هو الجواب، فقد طرحت السؤال الخطأ.في بعض الأحيان، نجبر ضد إرادتنا على استخدامه بطريقة ما.عندما يحدث ذلك، فمن الضروري استخدام الأدوات التي تقلل من جهد المطور وتحسن إمكانية صيانة التعليمات البرمجية.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top