우리 시스템에서 중요한 문제인 성능 및 정확성을 위해 어떤 XML 유효성 검사 도구를 권장 할 수 있습니까? 우리는 다음과 같은 요구 사항이 있습니다RelaxNG를 사용하는 XML 스키마 유효성 검사
- 그것은이다 하지 xmllint가
- 이 RelaxNG 지원 (아래 참조)
- 쉽게 펄 (이것은 선택 사항이지만 좋은 것)
왜 xmllint가 아닌가요? (배경이고 원하는 경우 건너 뛸 수 있습니다.)
우리는 RelaxNG를 사용하여 XML을 검증하는 대형 Perl 시스템을 보유하고 있습니다. compact RelaxNG format 및 trang을 사용하여 표준 RelaxNG 형식으로 변환합니다. 그런 다음 xmllint을 통해 실제 유효성 검사를 수행합니다.
그 때 문제가 시작됩니다. xmllint 정기적으로 유효성 검사 오류를보고하는 데 문제가 있습니다. 거짓 긍정이나 부정을주지는 않지만 문서의 유효성을 검사하지 못하면 xmllint는 주어진 오류에 대해 잘못된 요소 나 속성을보고합니다. 때로는 이전 오류가보고되지 않았기 때문에 ('bar'는 필수이지만 누락 된 요소 인 'foo'를 따르기로되어 있었기 때문에) 오류가 올바른 경우 ("요소 'bar'가 표시되지 않을 것으로 예상했으나), xmllint가 ' 이것은 xmllint의 오랜 문제점이며 최신 버전조차도 동일한 문제가 있음을 기억하십시오. 우리는 종종 거대한 XML 문서를 가지고 있으며 오류를 잘못보고하면 클라이언트와 개발자 모두에게 큰 슬픔을 안겨줍니다.
7 년 전 (지금은 2015 년)이 질문을 받았기 때문에 : xmllint는 여전히 목적에 맞지 않습니까? – Jens
Jens : 그게 BBC에 있었고 몇 년 동안 거기에서 일하지 않았고 그 이후로 xmllint도 사용하지 않았습니다. – Ovid