XML 유효성을 확인하기 위한 xmllint의 대안

XML 유효성을 확인하기 위한 xmllint의 대안

때때로 xsd 파일에 대해 일부 큰 xml 파일의 유효성을 확인해야 합니다. 제가 받은 가장 큰 XML 파일의 크기는 1.5GB에 가깝습니다. xmllint총 메모리 사용량은 18GB로 모든 RAM과 거의 모든 스왑 공간을 차지했습니다. 결과적으로 검증 프로세스는 24시간 동안 지속되었습니다.

xmllint --schema내 질문: 파일을 메모리에 로드하는 대신 일부 스트리밍 기능을 사용하는 등 메모리를 덜 소비하는 대안이 있습니까 ?

답변1

나는 이 유효성 검사기를 테스트하지 않았지만 마음속으로/약간의 검색을 통해 다음을 수행했습니다.

  1. XML별표- 다른 용도로도 사용할 수 있습니다.
  2. msv- Sun 다중 스키마 유효성 검사기
  3. HaXML- haskell xml 도구에는 명령줄 유틸리티가 포함되어 있습니다(하나는 유효성 검사기임)
  4. xsltproc시작 시 문서도 확인해야 합니다.

대부분의 유틸리티는 xml 문서와 같이 자동으로 xml 문서의 유효성을 검사하므로 더 많은 옵션이 있습니다 xsltproc.

답변2

내 Linux 시스템의 패키지 라이브러리에서 xmlcopyeditor를 찾았습니다. XML 파일을 확인하고 편집하는 데 사용했습니다. 매뉴얼 페이지에서는 "DTD/XML 스키마/RELAX NG 유효성 검사, XSLT, XPath, 예쁜 인쇄, 구문 강조, 접기, 태그 완성/잠금, 철자/스타일 검사 및 Windows의 경우 무손실 Microsoft 가져오기/내보내기를 수행한다고 주장합니다. 워드 문서." 하지만 실제로 그것이 얼마나 잘 수행되는지 테스트해 본 적은 없습니다. 나는 시작 태그와 끝 태그가 제대로 일치할 때까지 예쁜 인쇄가 작동하지 않는다는 것을 알고 있습니다. http://xml-copy-editor.sourceforge.net/

관련 정보