it-swarm-ko.tech

XML 인스턴스 문서에서 XSD 스키마를 생성하는 도구가 있습니까?

XML 인스턴스 문서를 가져 와서 해당 XSD 스키마를 출력하는 도구를 찾고 있습니다.

필자는 생성 된 XSD 스키마가 수동으로 스키마를 만드는 것과 비교할 때 (선택적이거나 반복적 인 요소 또는 데이터 제약 조건을 처리하지 않을 것임) 비교할 때 제한적이지만 적어도 빠른 시작점 역할을 할 수 있음을 알고 있습니다.

146
Matt Dillard

Microsoft XSD 추론 도구 는 좋은 무료 솔루션입니다. XmlSpy (@Garth Gilmour가 언급 함) 또는 OxygenXML Editor와 같은 많은 XML 편집 도구에도 해당 기능이 있습니다. 그러나 다소 비쌉니다. BizTalk Server에는 XSD 유추 도구도 있습니다.

편집 : 방금 .net XmlSchemaInference 클래스를 발견 했으므로 .net을 사용하는 경우 다음을 고려해야합니다.

65
Danimal

오픈 소스 및 크로스 플랫폼 옵션을 사용할 수 있습니다 : inst2xsd from Apache 's XMLBeans . 나는 그것이 매우 유용하고 쉽다는 것을 알았습니다.

다운로드, 압축 풀기 및 재생 만하면됩니다 (Java 필요).

54
Dario

Trang 이 최선의 선택입니다. 오픈 소스 및 크로스 플랫폼 (Java이 필요하지만)

트랑 웹 사이트에서 :

Trang은 XML에 대해 서로 다른 스키마 언어를 변환합니다. 다음 언어를 지원합니다

  • RELAX NG (XML 구문)
  • RELAX NG 간단한 구문
  • XML 1.0 DTD
  • W3C XML 스키마

지원되는 스키마 언어로 작성된 스키마는 W3C XML 스키마가 입력 용이 아닌 출력용으로 만 지원되는 것을 제외하고 다른 지원되는 스키마 언어로 변환 될 수 있습니다.

Trang은 하나 이상의 예제 XML 문서에서 스키마를 유추 할 수도 있습니다.

다운로드 링크

51
Derferman

VS2010에서 XML 파일을 편집기에로드하는 경우 XML 메뉴 >> 스키마 작성을 클릭하십시오.

16
Nathan Donnellan

XML schema learner 도 있으며 Github 에서 사용할 수 있습니다.

여러 xml 파일 이 모든 파일 에서 공통 XSD를 추출 할 수 있습니다.

11
edorian

.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 문서를 가져 와서 /o:<your path> 플래그로 XSD 도구를 통해 스키마 (xsd)를 생성 한 다음 /classes /L:VB (or CS) /o:<your path>을 사용하여 도구를 통해 xsd 파일을 다시 푸시합니다. 일상에서 가져오고 사용할 수있는 클래스를 가져 오는 플래그 .Net 프로젝트

10
Pat Hermens

원하는 모든 것이 XSD 인 경우 LiquidXML에는 XSD를 수행하는 무료 버전이 있으며 GUI를 제공하므로 원하는 경우 XSD를 조정할 수 있습니다. 어쨌든 요즘 나는 손으로 직접 XSD를 작성하지만이 앱 덕분에 모든 것이 가능합니다.

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

6
Robert Gould

Java world에서 작업중인 경우 intelliJ idea는 xsd 생성의 xsd 생성 및 samle xml을 포함하여 광범위한 XML 지원을 제공하며 플러그인을 사용하면 xslt 디버거를 얻을 수 있습니다. -나중에 jaxb와 같은 도구를 사용하려는 경우 특히 좋습니다.

4
Andreas Petersson

Altova XmlSpy는이 작업을 잘 수행합니다. 개요를 찾을 수 있습니다 here

3
Garth Gilmour

이것은 오래된 스레드이지만이 링크를 게시하는 것이 유용 할 수 있다고 생각했습니다.이 도구를 찾았습니다. xsd-gen XML에서 XML 스키마 생성

그리고 그것은 내가 필요한 것을 해냈습니다.

3
v_e