어떤 코딩 XML 프롤로그 자체가 예를 들어는 XML 프롤로그 자체의 부호화
는
<?xml version="1.0" encoding="big5" ?>
자체 big5로 인코딩되어야한다 (그 이유)되어야 하는가? 포스터 big5로 인코딩 된 XML 프롤로그/선언이 How to parse non-UTF8 XML in browsers with Javascript?에서 영감을
질문.
어떤 코딩 XML 프롤로그 자체가 예를 들어는 XML 프롤로그 자체의 부호화
는
<?xml version="1.0" encoding="big5" ?>
자체 big5로 인코딩되어야한다 (그 이유)되어야 하는가? 포스터 big5로 인코딩 된 XML 프롤로그/선언이 How to parse non-UTF8 XML in browsers with Javascript?에서 영감을
질문.
Big5에서 ASCII를 인코딩 할 수 없습니다.
Big5는 순수한 2 바이트 문자 세트입니다. 1 바이트 문자 세트의 혼합을 허용하기 위해 모든 Big5 2 바이트 문자 인코딩에는 상위 비트가 설정됩니다. 표준은 결코 SBCS가 사용되는 것을 명시하지 않았고, 사실상의 표준은 모든 ASCII 문자가 상위 비트를 명확하게하기 때문에 명확하게 구별 할 수있는 ASCII입니다.
다른 방식으로 Big5는 표준 ASCII 문자 세트에 해당하는 2 바이트 인코딩을 포함하지 않으므로 XML 프롤로그 및 태그 구분 기호를 포함하는 유일한 방법은 ASCII 문자를 사용하는 것입니다.
XML 선언은 나머지 문서와 동일한 인코딩이어야합니다. 문서가 Big5에 있으면 XML 선언은 Big5에 있어야합니다.
XML 파서가 의미하는 것은 지원되는 인코딩 목록을 가져야하며 파일의 처음 20 바이트 또는 30 바이트를 디코딩 한 결과가 유효한 XML 선언인지를 알아낼 때까지 차례로 시도해야한다는 것입니다 올바른 인코딩 라벨로
물론이 전략을 최적화 할 수 있습니다. 파일의 처음 몇 바이트가 ASCII로 <?xml
인 경우 가능성이 줄어 듭니다.
XML 구문 분석기는 UTF-8 및 UTF-16과 같은 작은 최소 집합 이외의 인코딩을 지원할 의무가 없습니다.