هل توجد أدوات لإنشاء مخطط XSD من مستند مثيل XML؟[مغلق]

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

  •  09-06-2019
  •  | 
  •  

سؤال

أنا أبحث عن أداة تأخذ مستند مثيل XML وتخرج مخطط XSD المطابق.

أدرك بالتأكيد أن مخطط XSD الذي تم إنشاؤه سيكون محدودًا عند مقارنته بإنشاء مخطط يدويًا (ربما لن يتعامل مع العناصر الاختيارية أو المتكررة، أو قيود البيانات)، ولكنه يمكن أن يكون على الأقل بمثابة نقطة بداية سريعة.

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

المحلول

ال أداة الاستدلال الخاصة بـ Microsoft XSD هو حل جيد ومجاني.تحتوي العديد من أدوات تحرير XML، مثل XmlSpy (المذكورة بواسطةGarth Gilmour) أو OxygenXML Editor أيضًا على هذه الميزة.إنها باهظة الثمن إلى حد ما، رغم ذلك.يحتوي BizTalk Server أيضًا على أداة استنتاج XSD أيضًا.

يحرر:لقد اكتشفت للتو .net XmlSchemaInference class، لذلك إذا كنت تستخدم .net فيجب أن تفكر في ذلك

نصائح أخرى

يمكنك استخدام خيار مفتوح المصدر وعبر الأنظمة الأساسية:inst2xsd من أباتشي XMLBeans.أجد أنه من المفيد جدا وسهلة.

ما عليك سوى التنزيل وفك الضغط والتشغيل (يتطلب Java).

ترانج هو الخيار الأفضل هنا.مفتوح المصدر وعبر الأنظمة الأساسية (على الرغم من أن Java مطلوبة)

من موقع ترانج:

يقوم Trang بالتحويل بين لغات المخطط المختلفة لـ XML.وهو يدعم اللغات التالية

  • الاسترخاء NG (بناء جملة XML)
  • الاسترخاء بناء الجملة المضغوط
  • XML 1.0 DTDs
  • مخطط W3C XML

يمكن تحويل المخطط المكتوب بأي من لغات المخطط المدعومة إلى أي من لغات المخطط المدعومة الأخرى، باستثناء أن مخطط W3C XML مدعوم للإخراج فقط، وليس للإدخال.

يمكن لـ Trang أيضًا استنتاج مخطط من مثال واحد أو أكثر من مستندات XML.

رابط التحميل

في VS2010، إذا قمت بتحميل ملف XML إلى المحرر، فانقر فوق قائمة XML >> إنشاء مخطط.

هناك أيضا XML schema learner الذي يتوفر على جيثب.

يمكن أن يستغرق ملفات XML متعددة و قم باستخراج XSD مشترك من كل تلك الملفات.

إذا كان لديك .Net مثبتًا، فسيتم بالفعل تضمين أداة لإنشاء مخططات وفئات XSD افتراضيًا.
بالنسبة لي، تم تثبيت أداة XSD ضمن البنية التالية.قد يختلف هذا وفقًا لدليل التثبيت الخاص بك.

C:\Program Files\Microsoft Visual Studio 8\VC>xsd
Microsoft (R) Xml Schemas/DataTypes support utility
[Microsoft (R) .NET Framework, Version 2.0.50727.42]
Copyright (C) Microsoft Corporation. All rights reserved.

xsd.exe -
   Utility to generate schema or class files from given source.

xsd.exe <schema>.xsd /classes|dataset [/e:] [/l:] [/n:] [/o:] [/s] [/uri:]
xsd.exe <assembly>.dll|.exe [/outputdir:] [/type: [...]]
xsd.exe <instance>.xml [/outputdir:]
xsd.exe <schema>.xdr [/outputdir:]

عادةً ما تعمل الفئات والمخططات التي تنشئها هذه الأداة بشكل جيد، خاصة إذا كنت ستستخدمها بلغة .Net

عادةً ما أقوم بأخذ مستند XML الذي أبحث عنه، وأدفعه عبر أداة XSD باستخدام ملف /o:<your path> علامة لإنشاء مخطط (xsd) ثم ادفع ملف xsd مرة أخرى عبر الأداة باستخدام الملف /classes /L:VB (or CS) /o:<your path> أعلام للحصول على الفصول الدراسية التي يمكنني استيرادها واستخدامها في مشاريعي اليومية على .Net

إذا كان كل ما تريده هو XSD، فإن LiquidXML لديه إصدار مجاني يعمل على XSD، ويحتوي على واجهة المستخدم الرسومية الخاصة به حتى تتمكن من تعديل XSD إذا أردت.على أي حال، في الوقت الحاضر، أكتب ملفات XSD الخاصة بي يدويًا، ولكن كل هذا بفضل هذا التطبيق.

http://www.liquid-technologies.com/

إذا كنت تعمل في عالم جافا - فكرة intelliJ يتمتع أيضًا بدعم شامل لـ XML، بما في ذلك إنشاء xsd وsamle xml من إنشاء xsd، ومع المكونات الإضافية يمكنك الحصول على مصححات أخطاء xslt.- لطيف بشكل خاص إذا كنت تخطط لاستخدام أدوات مثل jaxb بعد ذلك.

يقوم Altova XmlSpy بهذا بشكل جيد - يمكنك العثور على نظرة عامة هنا

هذا موضوع قديم ولكن أعتقد أنه من المفيد وضع هذا الرابط:وجدت للتو هذه الأداة:xsd-gen إنشاء مخطط XML من XML

وقد فعلت ما احتاجه فقط.

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