XmlValidatingReader의 유효성 검사 형식
업데이트: November 2007
ValidationType 속성은 XmlValidatingReader에서 수행한 유효성 검사의 형식을 결정합니다. Read 메서드를 호출하기 전에 이 속성을 설정해야 합니다. 유효성 검사에 외부 DTD(문서 종류 정의)나 스키마가 필요한 경우 XmlResolver 속성을 사용합니다.
참고: |
---|
XmlValidatingReader 클래스는 .NET Framework 버전 2.0에서 사용되지 않습니다. XmlReaderSettings 클래스와 Create 메서드를 사용하여 유효성 검사 XmlReader 인스턴스를 만들 수 있습니다. 자세한 내용은 XmlReader를 사용하여 XML 데이터의 유효성 검사를 참조하십시오. |
ValidationType 열거형
ValidationType 속성은 ValidationType 열거형 값 중 하나로 설정할 수 있습니다. 다음 단원에서는 ValidationType 값에 대해 설명합니다.
ValidationType.Auto
ValidationType 속성에 대한 기본값입니다. 다음 표에서는 ValidationType 속성을 Auto로 설정한 경우의 유효성 검사 규칙을 보여 줍니다.
DTD 또는 스키마 |
ValidationType.Auto |
---|---|
DTD 또는 스키마 없음 |
유효성을 검사하지 않고 XML 구문을 분석합니다. 예외가 throw되지 않습니다. 형식 정보가 제공되지 않습니다. |
DTD |
DTD 유효성 검사를 수행합니다. 기본 특성 및 엔터티가 확장됩니다. 일반 엔터티를 사용할 경우에만 로드하고 구문 분석합니다. 형식 정보가 제공되지 않습니다. |
XML 스키마(참조 또는 인라인) |
XSD(XML 스키마 정의 언어) 유효성 검사를 수행합니다. 스키마를 사용하여 유효성을 검사합니다. 기본 특성이 확장됩니다. 형식 정보가 제공됩니다. |
XDR 스키마(참조 또는 인라인) |
XDR(XML-Data Reduced) 스키마 유효성 검사를 수행합니다. 스키마를 사용하여 유효성을 검사합니다. 기본 특성이 확장됩니다. 형식 정보가 제공됩니다. |
DTD 및 XML 스키마 또는 XDR 스키마(참조 또는 인라인) |
유효성 검사 형식의 첫 번째 항목에 따라 DTD/XML 스키마/XDR 유효성 검사를 수행합니다. DTD 유효성 검사는 항상 다른 유효성 검사 형식보다 우선권을 갖습니다. |
ValidationType.DTD
ValidationType.DTD 값이 지정되면 XmlValidatingReader가 DTD에 따라 문서의 유효성을 검사합니다. 다음 표에서는 ValidationType 속성을 ValidationType.DTD로 설정한 경우의 유효성 검사 규칙을 보여 줍니다.
DTD 또는 스키마 |
ValidationType.DTD |
---|---|
DTD 또는 스키마 없음 |
루트 요소에서 No DTD found 경고를 반환합니다. 예외가 throw되지 않습니다. 형식 정보가 제공되지 않습니다. |
DTD |
DTD 유효성 검사를 수행합니다. 기본 특성 및 엔터티가 확장됩니다. 일반 엔터티를 사용할 경우에만 로드하고 구문 분석합니다. 형식 정보가 제공되지 않습니다. |
XML 스키마(참조 또는 인라인) |
루트 요소에서 No DTD found 경고를 반환합니다. 스키마가 있을 경우 혼합된 유효성 검사 형식에 대해 XmlException이 throw됩니다. |
XDR 스키마(참조 또는 인라인) |
루트 요소에서 No DTD found 경고를 반환합니다. 스키마가 있을 경우 혼합된 유효성 검사 형식에 대해 XmlException이 throw됩니다. |
DTD 및 XML 스키마 또는 XDR 스키마(참조 또는 인라인) |
DTD 유효성 검사를 수행합니다. 기본 특성 및 엔터티가 확장됩니다. |
ValidationType.Schema
ValidationType.Schema 값이 설정된 경우 XmlValidatingReader에서는 인라인 스키마를 포함하여 XML 스키마에 따라 문서의 유효성을 검사합니다. 다음 표에서는 ValidationType 속성을 ValidationType.Schema로 설정한 경우의 유효성 검사 규칙을 보여 줍니다.
DTD 또는 스키마 |
ValidationType.Schema |
---|---|
DTD 또는 스키마 없음 |
모든 요소에 대한 No schema found 경고를 반환합니다. |
DTD |
혼합된 유효성 검사 형식에 대해 XmlException이 throw됩니다. |
XML 스키마(참조 또는 인라인) |
XML 스키마 유효성 검사를 수행합니다. 스키마를 사용하여 유효성을 검사합니다. 스키마에서 기본 특성이 확장됩니다. 형식 정보가 제공됩니다. |
XDR 스키마(참조 또는 인라인) |
혼합된 유효성 검사 형식에 대해 XmlException이 throw됩니다. |
DTD 및 XML 스키마 또는 XDR 스키마(참조 또는 인라인) |
XML 스키마 유효성 검사를 수행합니다. 스키마에서 기본 특성이 확장됩니다. 형식 정보가 제공됩니다. DTD 또는 XDR 스키마가 있을 경우 혼합된 유효성 검사 형식에 대해 XmlException이 throw됩니다. |
ValidationType.XDR
ValidationType.XDR 값이 설정된 경우 XmlValidatingReader에서는 인라인 스키마를 포함하여 XDR 스키마에 따라 문서의 유효성을 검사합니다. 다음 표에서는 ValidationType 속성을 ValidationType.XDR로 설정한 경우의 유효성 검사 규칙을 보여 줍니다.
DTD 또는 스키마 |
ValidationType.XDR |
---|---|
DTD 또는 스키마 없음 |
유효성 검사가 수행되지 않았음을 나타내는 최종 경고를 반환합니다. |
DTD |
혼합된 유효성 검사 형식에 대해 XmlException이 throw됩니다. |
XML 스키마(참조 또는 인라인) |
혼합된 유효성 검사 형식에 대해 XmlException이 throw됩니다. |
XDR 스키마(참조 또는 인라인) |
XDR 유효성 검사를 수행합니다. 스키마를 사용하여 유효성을 검사합니다. 스키마에서 기본 특성이 확장됩니다. 형식 정보가 제공됩니다. |
DTD 및 XML 스키마 또는 XDR 스키마(참조 또는 인라인) |
XDR 유효성 검사를 수행합니다. 스키마에서 기본 특성이 확장됩니다. 형식 정보가 제공됩니다. DTD 또는 XML 스키마가 있을 경우 혼합된 유효성 검사 형식에 대해 XmlException이 throw됩니다. |
ValidationType.None
ValidationType.None 값에서는 W3C(World Wide Web 컨소시엄) XML(Extensible Markup Language) 1.0 권장 사항을 준수하는 유효성 검사를 하지 않는 파서를 만듭니다. 기본 특성이 보고되고 일반 엔터티를 확인할 수 있습니다. 유효성 검사 오류가 throw되지 않습니다. 다음 표에서는 ValidationType 속성을 ValidationType.None로 설정한 경우의 유효성 검사 규칙을 보여 줍니다.
DTD 또는 스키마 |
ValidationType.None |
---|---|
DTD 또는 스키마 없음 |
유효성을 검사하지 않고 XML 구문을 분석합니다. 예외가 throw되지 않습니다. 형식 정보가 제공되지 않습니다. |
DTD |
XML 1.0 규격의 유효성 검사를 수행하지 않는 파서가 생성됩니다. DTD 유효성 검사를 수행하지 않습니다. DTD에서 기본 특성 및 엔터티가 확장됩니다. 형식 정보가 제공되지 않습니다. |
XML 스키마(참조 또는 인라인) |
유효성을 검사하지 않고 XML 구문을 분석합니다. 예외가 throw되지 않습니다. 스키마에서 기본 특성이 확장되지 않습니다. 형식 정보가 제공되지 않습니다. |
XDR 스키마(참조 또는 인라인) |
유효성을 검사하지 않고 XML 구문을 분석합니다. 예외가 throw되지 않습니다. 스키마에서 기본 특성이 확장되지 않습니다. 형식 정보가 제공되지 않습니다. |
DTD 및 XML 스키마 또는 XDR 스키마(참조 또는 인라인) |
XML 1.0 규격의 유효성 검사를 수행하지 않는 파서가 생성됩니다. DTD 유효성 검사를 수행하지 않습니다. DTD에서 기본 특성 및 엔터티가 확장됩니다. 형식 정보가 제공되지 않습니다. |
ValidationType 속성이 첫 번째 Read 메서드 다음에 설정되어 있는 경우 XmlValidatingReader에서 InvalidOperationException이 throw됩니다.