다음을 통해 공유


특성

특성을 사용하면 이름 값 쌍으로 요소에 대한 정보를 추가할 수 있습니다. HTML img 요소와 같은 일부 경우에 요소 내용이 특성 값으로 결정되지만 대게 특성을 사용하여 요소 내용으로 간주되지 않는 요소의 속성을 정의합니다.

특성을 시작 태그나 빈 태그에 표시할 수 있지만 끝 태그에는 표시할 수 없습니다. 구문은 다음과 같습니다.

<elementName att1Name="att1Value" att2Name="att2Value"...>

또는

<elementName att1Name="att1Value" att2Name="att2Value".../>

특성에는 이름과 값이 둘 다 있어야 합니다. 값이 없는 이름은 허용되지 않습니다. 요소 하나에 이름이 같은 특성 두 개가 있을 수 없습니다. XML에서는 요소 내에 특성이 나타난 순서가 중요하지 않으므로 XML 파서에서 이 순서를 유지하지 않을 수 있습니다.

요소 이름과 마찬가지로 특성 이름도 대/소문자를 구분하며 문자나 밑줄로 시작해야 합니다. 이름의 나머지 부분에 문자, 숫자, 하이픈, 밑줄 및 마침표를 포함할 수 있습니다.

ms256152.note(ko-kr,VS.100).gif참고:
콜론은 네임스페이스에 사용하도록 예약되어 있습니다.문자와 숫자로 사용할 수 있는 유니코드 문자에 대한 자세한 내용은 XML 사양의 부록 B를 참조하십시오.

특성 값은 일반 텍스트 내용과 같은 규칙을 따라야 하며 그 외에도 몇 가지 추가 제한이 있습니다. 특성 값에는 텍스트만 포함할 수 있으며 요소 태그는 포함할 수 없습니다. 특성 값 내에서 엔터티 참조 및 문자 참조는 허용되지만 CDATA 섹션은 허용되지 않습니다.

마지막으로 따옴표를 이스케이프해야 할 수 있습니다. XML 사양에서는 작은따옴표나 큰따옴표를 사용하여 특성을 나타내도록 허용하며 특성 값 양쪽에 사용하는 따옴표 형식이 같아야 합니다. 기본적으로 특성 값은 따옴표로 묶어야 합니다. XML 파서는 특성 값을 따옴표로 묶지 않은 문서를 거부하고 오류를 보고합니다.

작은따옴표를 사용하여 특성 값을 나타내는 경우 &apos; 엔터티 참조를 사용하여 특성 값 안에 작은따옴표를 표시해야 합니다.

<myElement contraction='isn&apos;t' />

큰따옴표를 사용하여 특성 값을 나타내는 경우 &quot; 엔터티 참조를 사용하여 특성 값 안에 큰따옴표를 표시해야 합니다.

<myElement question="They asked &quot;Why?&quot;" />

그러나 다음 예제에서 볼 수 있듯이 작은따옴표로 묶은 특성 값 안에 큰따옴표를 사용할 수 있으며 그 반대의 경우도 가능합니다.

<myElement contraction="isn't" />
<myElement question='They asked "Why?"' />

같은 요소 내에서 다른 특성 값에 다른 따옴표 형식을 사용할 수도 있습니다.

<myElement contraction="isn't" question='They asked "Why?"' />

XML 파서는 요소 텍스트 내용 내에 있는 공백을 유지하는 것과 같은 방법으로 특성 값 안에 있는 공백을 유지하지 않습니다. DTD에 액세스할 수 있는 유효성 검사 파서에서 CDATA를 제외한 모든 형식의 특성 값 안에 있는 모든 공백은 단일 공백으로 바뀌고 시작 공백과 끝 공백은 제거됩니다.