주 스키마 선택
기본 경로는 main.xsd입니다. 문서의 xsi:schemaLocation 힌트로 스키마를 교체하지 않습니다. 루트 요소를 정의하는 XSD와 그 참조 파일을 준비하세요.
XML / XPath / XSD
버튼 또는 Ctrl/Cmd+Enter로 실행하세요. 예제에는 주 스키마와 참조하는 타입 파일이 있습니다.
XML과 스키마 내용은 이 브라우저에서 처리하며 검증 서버로 전송하지 않습니다.
types/common.xsd 같은 ASCII 상대 경로를 사용하세요. 참조하는 스키마를 기준으로 해석하며 URL이나 가상 루트 밖의 경로는 허용하지 않습니다.
수동 실행, 엔진 로딩 포함 10초. XML과 각 스키마 1,000,000자, 스키마 합계 2,000,000자 및 20개, 깊이 100까지.
이전 결과입니다. 다시 검증하면 내보낼 수 있습니다.
XSD 검증은 XML을 열 수 있는지보다 한 단계 더 확인합니다. 태그가 모두 닫혀 있어도 정수 필드에 문자를 쓰거나 필수 요소를 빠뜨리면 받는 시스템의 스키마를 만족하지 못할 수 있습니다.
이 XML 검증 도구는 선택한 주 파일을 기준으로 XML 스키마 검증을 수행합니다. XML 유효성 검사에 필요한 참조 파일도 직접 지정하므로 문서의 URL에 따라 다른 규칙을 가져오지 않습니다.
XSD 검증은 xs:include와 xs:import를 직접 제공한 파일 이름에 연결합니다. types.xsd의 수량 범위를 주 문서에 적용하며 파일이 빠지면 검증 실패로 알립니다.
데이터의 타입 오류라면 XML을, 정의되지 않은 타입이라면 XSD를 살펴야 합니다. 엔진이 파일과 행을 제공하면 해당 입력으로 이동할 수 있으며 원래 제약 메시지도 남습니다.
기본 경로는 main.xsd입니다. 문서의 xsi:schemaLocation 힌트로 스키마를 교체하지 않습니다. 루트 요소를 정의하는 XSD와 그 참조 파일을 준비하세요.
orders/main.xsd에서 ../types.xsd를 참조할 수 있지만 가상 루트 밖으로 나갈 수는 없습니다. UTF-8 파일을 읽은 후 경로를 편집하여 원래 폴더 관계를 맞추세요.
텍스트나 경로를 바꾸면 실행 중인 작업이 취소되고 보고서가 오래된 상태로 바뀝니다. Ctrl/Cmd+Enter로 다시 실행하세요. 보고 있는 스키마만 바꾸면 검증 내용은 그대로입니다.
libxml2 WASM이 XSD 1.0을 컴파일한 뒤 문서를 검사합니다. 정의되지 않은 타입과 잘못된 스키마 구조를 데이터가 제약을 어긴 경우와 다른 단계로 표시합니다.
예제의 quantity는 1부터 100까지의 정수입니다. 필수 요소, 반복 횟수, sequence 순서와 네임스페이스 선언을 실제 엔진으로 평가하며 태그 이름만 비교하지 않습니다.
적합 또는 부적합으로 완료된 결과를 JSON으로 복사하거나 저장합니다. 단계, 엔진과 진단을 기록합니다. 알 수 없는 열은 그대로 표시하며 실제로 1열에서 발생했다고 단정하지 않습니다.
문법 검사는 태그와 속성, 중첩의 올바른 구성을 확인합니다. 스키마 검사는 요소 순서와 타입 등의 선언까지 확인합니다. quantity에 zero를 넣은 XML은 문법상 읽을 수 있지만 정수 조건에는 맞지 않습니다.
내용은 이 페이지의 Worker에서 처리합니다. 로컬 파일 선택은 파일을 현재 페이지로 읽는 작업이며 검증을 위해 서버에 올리지 않습니다. 복사와 저장은 직접 요청할 때만 수행됩니다.
네임스페이스와 CDATA가 있는 XML 1.0을 처리합니다. 다만 스키마에 해당 이름과 타입이 정의되어야 합니다. CDATA로 감싸도 내용의 자료형 제약이 사라지지 않습니다.
원본 파일을 올바른 인코딩으로 열어 UTF-8로 저장하고 선언도 맞춰 주세요. 의존 파일 읽기는 잘못된 UTF-8 바이트를 거부하며 붙여 넣은 문서는 UTF-8 선언만 허용합니다. 이 페이지는 Windows-1251 같은 다른 인코딩의 변환기가 아닙니다.
이 도구는 JSON 보고서를 만들 뿐 XML 데이터를 JSON으로 변환하지 않습니다. 속성 매핑이 필요하면 XML → JSON 도구에서 처리하세요. 보고서의 진단 데이터와 원본 XML의 속성은 서로 다른 내용입니다.
예상과 다른 진단이 있나요?