>  기사  >  백엔드 개발  >  코드의 공백 XML 처리에 대한 자세한 소개

코드의 공백 XML 처리에 대한 자세한 소개

黄舟
黄舟원래의
2017-03-10 19:40:332022검색

이 글에서는 XML의 공백 처리를 주로 소개합니다. XML 작성 시 유효한 공백과 유효하지 않은 공백의 차이점을 소개합니다.

XML 사양에서는 공백을 참조할 수 있습니다. 공백, 탭 및 빈 줄이 포함됩니다. XML 문서를 편집할 때 더 나은 가독성을 얻기 위해 공백을 사용하여 태그를 구분하는 경우가 많습니다. 그러나 대화형 빈 문서에서는 이러한 공백이 필요하지 않지만 때로는 유지해야 합니다. 예를 들어 시와 프로그램 코드의 공백
2. XML 프로세서는 항상 태그가 아닌 문서의 모든 문자를 애플리케이션에 전달합니다. 유효성 검사를 수행하는 XML 프로세서는 이러한 문자 중 어느 것이 있는지 애플리케이션에 알립니다. 요소는 요소의 콘텐츠에 나타나는 공백을 구성합니다.
3. XML 문서에서는 요소에 xml:space라는 특수 속성을 사용하여 이 요소에 공백을 유지하도록 애플리케이션에 알릴 수 있습니다.
4. 유효한 문서에서 이 속성은 다른 속성과 마찬가지로 사용될 때 선언되어야 합니다. Xml: 공간 특성은 열거형으로 선언되어야 하며 해당 값은 "기본값"과 "보존" 중 하나이거나 둘 다여야 합니다.
예:

<!ATTLIST poem xml:space (default preserve)’preserve’>

는 poem 요소에 xml:space 속성을 선언하는 것을 의미합니다. 해당 유형은 열거형이며 "default" 및 "preserve" 값을 사용할 수 있습니다. 이 속성의 기본값은 Preserve'

<!ATTLIST pre xml:space (preserve)#FIXED ‘preserve’>

입니다. 이는 xml:space 속성이 pre 요소에 선언되었음을 의미합니다. 유형도 열거 유형이지만 하나만 갖습니다. 값은 "preserve"이고 FIXED 키워드는 기본적으로 이 속성을 선언합니다. 암시적 기본값인 "default"를 선언하는 것은 이 요소에 대해 응용 프로그램의 기본 공백 처리 모드를 사용한다는 것을 의미하고 "preserve"는 응용 프로그램에 모든 공백을 보존하도록 지시합니다.
5. 요소가 xml:space 속성을 사용하는 경우 xml:space 속성의 다른 인스턴스로 재정의되지 않는 한 요소 콘텐츠의 모든 요소에 적용됩니다.

XML 문서에는 두 가지 유형의 공백(a) 유효한 공백과 (b) 잘못된 공백이 포함되어 있습니다. 다음 예에서는 이러한 두 가지 유형의 공백을 설명합니다.

유효한 공백
유효한 공백은 일반적으로 요소에 텍스트와 마크업이 모두 포함된 경우에 발생합니다. 예:

<name>TanmayPatil</name>

<name>Tanmay Patil</name>

위의 두 요소는 Tanmay와 Patil 사이의 공백이 다르기 때문에 다릅니다. XML 파일에서 이러한 요소를 읽는 모든 프로그램은 해당 요소의 구별을 유지해야 합니다.

잘못된 공백
잘못된 공백은 요소의 콘텐츠 내에서만 허용된다는 의미입니다. 예:

<address.categoryaddress.category="residence">

또는

<address....categoryaddress....category="..residence">

위의 두 예는 동일합니다. 여기서는 공백을 표시하기 위해 마침표(.)를 사용합니다. 위의 예에서는 주소와 카테고리 사이의 공백이 유효하지 않습니다.

또한 요소에 xml:space라는 특수 속성을 첨부합니다. 이는 요소의 공백이 애플리케이션에 의해 제거되어서는 안 된다는 것을 의미합니다. 이 속성을 기본값 또는 보존으로 설정할 수 있습니다. 다음 예에 표시된 대로:

<!ATTLIST address xml:space (default|preserve) &#39;preserve&#39;>

여기:

기본값은 이 요소가 애플리케이션의 기본 공백 처리 모드를 허용할 수 있음을 나타냅니다.
값 보존은 애플리케이션이 모든 공백을 보호한다는 의미입니다.

위 내용은 코드의 공백 XML 처리에 대한 자세한 소개의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.