네임스페이스 기반 유효성 검사 발송 언어
Namespace-based Validation Dispatching Language이 기사는 대체로 또는 전적으로 단일 출처에 의존한다. 기반 – · · 책 · · (2009년 3월) |
네임스페이스 기반 유효성 검사 발송 언어(NVDL)는 여러 네임스페이스와 통합된 XML 문서를 검증하기 위한 XML 스키마 언어다.ISO/IEC 표준이며, DSDL 스키마 규격의 Part 4이다.NVDL에 대한 대부분의 작업은 오래된 네임스페이스 라우팅 언어를 기반으로 한다.
확인
대부분의 XML 언어는 단일 XML 네임스페이스를 기반으로 한다.이러한 경우 특정 네임스페이스의 XML 요소는 해당 언어에 속하고 다른 네임스페이스의 요소는 다른 언어에 속할 것으로 예상된다.많은 XML 언어는 다른 네임스페이스에서 임의 요소를 사용할 수 있다.
문제는 이러한 복합 문서의 유효성을 확인하려는 시도 중에 발생한다.각 언어는 특정 XML 스키마에 의해 정의되지만 스키마 사이에는 연관성이 없다.
NVDL의 목적은 네임스페이스에 기반한 연결을 제공하는 것이다.스키마 검증자를 NVDL 스키마와 연결함으로써 검증자는 단일 문서의 유효성을 검사하기 위해 여러 스키마를 사용할 수 있으며, 해당 문서에 사용된 네임스페이스를 기반으로 이들 스키마 사이를 전환할 수 있다.
포맷
NVDL 문서에는 규칙 목록이 포함되어 있으며, 각 문서에는 해당 규칙이 사실일 때 취해야 할 조치가 하나 이상 있다.규칙에는 특정 네임스페이스와 모드 설정이 포함된다.NVDL은 이 모드를 문서가 처리될 때 변경되는 특정 상태로 인식한다.
행동은 규칙이 진실일 때 일어난다.작업에는 스키마 유효성 검사, 인스턴스 문서 무효 선언, 인스턴스 문서의 이 부분을 유효한 것으로 수락하고 상위 문서처럼 계속 검증하는 작업이 포함될 수 있다.작용은 또한 현재의 NVDL 모드를 변화시킬 수 있다.규칙이 참일 때 여러 작업을 수행할 수 있으며, 이를 통해 다른 유형의 여러 스키마를 사용하여 인스턴스 문서의 한 섹션을 검증할 수 있다.
예
<< rules> xmlns="http://purl.oclc.org/dsdl/nvdl/ns/structure/1.0"> << namespace> ns="http://www.w3.org/1999/xhtml"> << validate> 스키마="xhtml.rng"/> </기호> << namespace> ns="http://www.w3.org/2000/svg/"> << validate> 스키마="svg.sch"/> </기호> <모든 네임스페이스> <<reject/> </모든 네임스페이스> </기호>
이 NVDL 스키마는 REACE NG 스키마와 함께 XHTML 1.0 네임스페이스를 사용하는 부품을 검증하고, SVG 1.0 네임스페이스를 사용하는 부품을 Schematron 스키마와 검증하며, 다른 네임스페이스와 요소가 충돌할 경우 문서를 무효로 기각한다.