XML 인스턴스 문서에서 XSD 스키마를 생성하는 도구가 있습니까?[닫은]
문제
XML 인스턴스 문서를 가져와 해당 XSD 스키마를 출력하는 도구를 찾고 있습니다.
생성된 XSD 스키마는 수동으로 스키마를 생성하는 것과 비교할 때 제한적이라는 점을 확실히 알고 있지만(선택적 요소나 반복 요소 또는 데이터 제약 조건을 처리하지 못할 수도 있음) 적어도 빠른 시작점 역할을 할 수는 있습니다.
해결책
그만큼 Microsoft XSD 추론 도구 좋은 무료 솔루션입니다.XmlSpy(@Garth Gilmour가 언급함) 또는 OxygenXML Editor와 같은 많은 XML 편집 도구에도 해당 기능이 있습니다.하지만 가격이 꽤 비쌉니다.BizTalk Server에는 XSD 추론 도구도 있습니다.
편집하다:방금 .net을 발견했어요 Xml스키마추론 클래스이므로 .net을 사용하는 경우 이를 고려해야 합니다.
다른 팁
오픈 소스 및 크로스 플랫폼 옵션을 사용할 수 있습니다.inst2xsd의 아파치의 XMLBeans.나는 그것이 매우 유용하고 쉽다고 생각합니다.
다운로드하고 압축을 풀고 플레이하세요(Java 필요).
트랑 여기서는 최선의 선택입니다.오픈 소스 및 크로스 플랫폼(Java가 필요함)
Trang 웹사이트에서:
Trang은 XML에 대해 서로 다른 스키마 언어 간을 변환합니다.다음 언어를 지원합니다.
- RELAX NG(XML 구문)
- RELAX NG 압축 구문
- XML 1.0 DTD
- W3C XML 스키마
지원되는 스키마 언어로 작성된 스키마는 지원되는 다른 스키마 언어로 변환될 수 있습니다. 단, W3C XML 스키마는 입력이 아닌 출력용으로만 지원됩니다.
Trang은 하나 이상의 예제 XML 문서에서 스키마를 추론할 수도 있습니다.
VS2010에서 XML 파일을 편집기에 로드하는 경우 XML 메뉴 >> 스키마 생성을 클릭합니다.
또한 있다 XML schema learner
에서 사용할 수 있는 Github.
걸릴 수 있습니다 여러 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를 조정할 수 있도록 GUI가 있습니다.어쨌든 요즘에는 XSD를 직접 작성하는데 그게 다 이 앱 덕분이에요.
당신이 자바 세계에서 일하고 있다면 - IntelliJ 아이디어 또한 xsd 생성 및 xsd 생성의 샘플 xml을 포함하여 광범위한 xml 지원이 있으며 플러그인을 사용하면 xslt 디버거를 얻을 수 있습니다.- 나중에 jaxb와 같은 도구를 사용할 계획이라면 특히 좋습니다.
Altova XmlSpy는 이 기능을 잘 수행합니다. 개요를 찾을 수 있습니다. 여기
이것은 오래된 스레드이지만 다음 링크를 게시하는 것이 유용할 것이라고 생각했습니다.방금 이 도구를 찾았습니다:xsd-gen XML에서 XML 스키마 생성
그리고 그것은 내가 필요한 것을 해냈습니다.