xml 의 빈 칸 에 대한 완전한 설명

알림:저 는 에서 빈 칸 해석 에 관 한 핵심 부분 을 추출 하여 벽돌 을 던 져 옥 을 끌 어 올 렸 으 니 여러분 들 이 적극적으로 토론 에 참여 하 시기 바 랍 니 다.너의 빈 칸 에 대한 이 해 를 말 해라.xml 파일 구조 에 대해 어느 정도 알 고 있 는 학자 에 게 만 적합 하 며 초보 자 에 게 는 적합 하지 않 습 니 다.위 에서 아래로 순서대로 읽 으 세 요.html 파일 에 있어 서 빈 칸 은 중요 하지 않 습 니 다.그러나 xml 에 있어 서 기본 입장 은 빈 칸 노드 를 유지 하 는 것 입 니 다(빈 칸 노드 의 설명 은 다음 과 같 습 니 다).xml 규범 에 따 르 면 이른바 빈 칸 은 네 가지 문자 의 임 의 조합 서열 입 니 다.---------------------------빈 칸 문자(space)이 고 대응 하 는 문자 값 은\#x20 반환 문자(Carriage Return)이 며 대응 하 는 문자 값 은\#XD 새 줄 문자(Newline)이 고 대응 하 는 문자 값 은\#xA 점프 문자(Tab)이 며 대응 하 는 문자 값 은\#x9 입 니 다.xml 파일 의 빈 칸 도 결점,즉 빈 칸 결점 을 형성한다.빈 칸 결점 은 문자 결점 형식 에 속한다.xml 와 xslt 에 있어 빈 칸 의 결점 은 두 가지 의제 와 관련 될 것 이다.-------------------------------1.xml 입력 파일 에서 어떤 빈 칸 을 결정 하 는 것 이 중요 합 니까?xslt 프로 세 서 는 이 빈 칸 의 결점 을 보아 야 합 니 다.결 정 된 키 는 xml:space 속성 입 니 다.2。xsl 템 플 릿 파일 에서 어떤 빈 칸 을 결정 하 는 것 이 중요 합 니까?xslt 프로 세 서 는 결과 트 리 에 복사 해 야 합 니 다.결 정 된 키 는 xsl:strip-space 와 xsl:preserve-space 두 명령 입 니 다."중요 하고 중요 하지 않 은 빈 칸 결점'----------------------어떤 구성 요소 의 내용 이 구성 요소 만 넣 을 수 있다 면 이 구성 요소 중의 빈 칸 결점 은 중요 하지 않다(Insignificant).만약 어떤 구성 요소 의 내용 이\#PCDATA 의 유형 이 라면,그 안의 빈 칸 결점 은 중요 한 것 으로 간주 해 야 한다(Signficant).구성 요소 의 내용 이 문자 내용 과 구성 요소 가 뒤 섞 인 경우 평가 할 수 없 으 며 구성 요소 와 그 내용 의 의미 에 따라 결정 해 야 합 니 다.xslt 프로세서 가 xml 입력 파일 에 접촉 하기 전에 xml 분석 기 에서 분석 합 니 다------------------------(1)xml:space 속성 은 후속 으로 인수 하 는 xml 응용 프로그램 이 빈 칸 결점 을 처리 하 는 모델 을 바 꿀 수 있 습 니 다.예 를 들 어 xslt 처리 기 는 xml:space 속성 에 영향 을 받 습 니 다.(2)xml 파일 의 모든 열 표시 나 내용 끝의 끝 기 호 는 하나의 새 줄 문자(\#xA)로 변 경 됩 니 다.(3)속성 값 을 xml 응용 프로그램 에 맡 기기 전에 xml 분석 기 는 속성 값 을 규범화 해 야 한다.이것 은 서로 다른 운영 체제 의 줄 마다 문자 열의 끝 문자 가 서로 다른 조합 을 가지 고 있 기 때 문 입 니 다.예 를 들 어 windows 시스템 은 되 돌아 오 는 문자 허 새 줄 문자 로 끝 기 호 를 구성 하고 유 닉 스 시스템 은 새 줄 문자 그룹 만 있 기 때 문 입 니 다.     마침표 가 되다.xml 분석 기 는 xml 파일 을 읽 은 후에 모든 끝 기 호 를 단일 한 새 줄 문자 로 바 꾸 었 습 니 다.서로 다른 시스템 간 의 서로 다른 끝 기호 디자인 의 차이 점 을 통일 시 켰 을 뿐만 아니 라 후속 xml 응용 프로그램의 조작 난이도 도 간소화 시 켰 습 니 다.이러한 처리 과정 을'규범화(Normalization)'라 고 부른다. a.모든 문자열 의 끝 기 호 는 하나의 새 줄 문자(\#xA)로 규범화 해 야 합 니 다. b.모든 빈 칸 문자(\#x20,\#XD,\#xA,\#x9)는 빈 칸 문자(\#x20)로 바 꿔 야 합 니 다. c.속성 값 에 글자 참조 가 포함 되 어 있 으 면 이 참고 문자 로 바 꿔 야 합 니 다.예 를 들 어&\#xA;새 줄 문자 로 바 뀝 니 다(\#xA). d.속성 값 이 실체 참고 가 있 으 면 문자 로 교체 해 야 합 니 다. e,그 밖 에 모든 문 자 는 규범화 속성 값 에 직접 넣 어야 합 니 다. f.마지막 으로 속성 유형 이 CDATA 가 아니라면 xml 분석 기 는 속성 값 전후의 빈 칸 문자 서열 을 더 삭제 해 야 합 니 다.또한 속성 값 중간 에 빈 칸 서열 이 있 으 면 단일 빈 칸 문자 로 교체 해 야 합 니 다.    xslt 프로 세 서 는 xml 입력 파일 과 xsl 템 플 릿 파일 의 구조 트 리 를 만 든 후 구성 요소 에 인접 한 텍스트 노드 를 단일 한 텍스트 노드 로 합 친 다음 텍스트 노드 를 추출 합 니 다.그러나 텍스트 노드 가 다음 조건 중 하나 에 부합 되면 보 존 됩 니 다.------------------------(1)문자 노드 의 부모 구성 요 소 는 빈 칸 보존 구성 요소 이름 집합(Set Of Whitespace-preserving Element Names)중의 하나 입 니 다.(2)텍스트 노드 에 최소한 빈 칸 이 아 닌 문자 가 있 습 니 다.(3)문자 결점 의 한 조상 구성 요소 에는 xml:space 속성 이 있 고 그 값 은 preserve 이 며 가 까 운 조상 구성 요소 에는 다른 xml:space 속성 값 이 default 이 없습니다.그 외 에 도 글 귀 는 뽑 힐 수 있 습 니 다.xsl 템 플 릿 의 경우 빈 칸 보존 구성 요소 이름 집합 은 xsl:text 구성 요소 만 사용 할 수 있 습 니 다.xsl 템 플 릿 파일 의 빈 칸 노드 는 모두 삭 제 됩 니 다.그러나 빈 칸 노드 가 xsl:text 구성 요소 에 나타 나 면 유 지 됩 니 다.

좋은 웹페이지 즐겨찾기