it-swarm-id.com

Adakah alat untuk menghasilkan skema XSD dari dokumen contoh XML?

Saya mencari alat yang akan mengambil dokumen contoh XML dan menghasilkan skema XSD yang sesuai.

Saya tentu menyadari bahwa skema XSD yang dihasilkan akan terbatas bila dibandingkan dengan membuat skema dengan tangan (mungkin tidak akan menangani elemen opsional atau berulang, atau kendala data), tetapi setidaknya bisa berfungsi sebagai titik awal yang cepat.

146
Matt Dillard

the alat inferensi Microsoft XSD adalah solusi yang bagus dan gratis. Banyak alat pengeditan XML, seperti XmlSpy (disebutkan oleh @Garth Gilmour) atau OxygenXML Editor juga memiliki fitur itu. Mereka agak mahal. BizTalk Server juga memiliki alat penghilang XSD juga.

sunting: Saya baru saja menemukan .net XmlSchemaInference kelas, jadi jika Anda menggunakan .net Anda harus mempertimbangkan itu

65
Danimal

Anda dapat menggunakan open source dan opsi lintas platform: inst2xsd dari Apache's XMLBeans . Saya merasa sangat berguna dan mudah.

Cukup unduh, unzip, dan mainkan (ini membutuhkan Java).

54
Dario

Trang adalah pilihan terbaik di sini. Open source dan lintas platform (walaupun Java diperlukan)

Dari Situs Web Trang:

Trang mengkonversi antara berbagai bahasa skema untuk XML. Ini mendukung bahasa-bahasa berikut

  • RELAX NG (sintaks XML)
  • RELAX NG sintaks kompak
  • XML 1.0 DTD
  • Skema XML W3C

Skema yang ditulis dalam salah satu bahasa skema yang didukung dapat dikonversi ke salah satu bahasa skema yang didukung lainnya, kecuali bahwa W3C XML Schema didukung untuk output saja, bukan untuk input.

Trang juga dapat menyimpulkan skema dari satu atau lebih contoh dokumen XML.

Tautan Unduhan

51
Derferman

Dalam VS2010 jika Anda memuat file XML ke editor, klik menu XML >> Buat Skema.

16
Nathan Donnellan

Ada juga XML schema learner yang tersedia di Github .

Itu dapat mengambil beberapa file xml dan mengekstrak XSD umum dari semua file tersebut .

11
edorian

Jika Anda telah menginstal .Net, alat untuk menghasilkan skema dan kelas XSD sudah disertakan secara default.
Bagi saya, alat XSD diinstal di bawah struktur berikut. Ini mungkin berbeda tergantung pada direktori instalasi Anda.

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:]

Biasanya kelas dan skema yang dihasilkan alat ini bekerja dengan baik, terutama jika Anda akan menggunakannya dalam bahasa .Net

Saya biasanya mengambil dokumen XML yang saya cari, Dorong melalui alat XSD dengan _ /o:<your path> bendera untuk menghasilkan skema (xsd) dan kemudian Dorong file xsd kembali melalui alat menggunakan bendera /classes /L:VB (or CS) /o:<your path> untuk mendapatkan kelas yang dapat saya impor dan gunakan dalam proyek .Net hari saya

10
Pat Hermens

Jika semua yang Anda inginkan adalah XSD, LiquidXML memiliki versi gratis yang dapat melakukan XSD, dan memiliki GUI sehingga Anda dapat men-tweak XSD jika Anda mau. Lagipula saat ini saya menulis XSD saya sendiri dengan tangan, tetapi semuanya berkat aplikasi ini.

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

6
Robert Gould

jika Anda bekerja di dunia Java - intelliJ juga memiliki dukungan xml yang luas, termasuk generasi xsd dan samle xml dari generasi xsd, dan dengan plugin Anda bisa mendapatkan debugger xslt. - Terutama bagus jika Anda berencana untuk menggunakan alat seperti jaxb sesudahnya.

4

Altova XmlSpy melakukan ini dengan baik - Anda dapat menemukan ikhtisar di sini

3
Garth Gilmour

Ini adalah utas lama tapi saya pikir ini berguna untuk memposting tautan ini: baru saja menemukan alat ini: xsd-gen Hasilkan Skema XML dari XML

dan itu hanya melakukan apa yang saya butuhkan.

3
v_e