XML-구문

이 장에서는 XML 문서를 작성하기위한 간단한 구문 규칙에 대해 설명합니다. 다음은 완전한 XML 문서입니다-

<?xml version = "1.0"?>
<contact-info>
   <name>Tanmay Patil</name>
   <company>TutorialsPoint</company>
   <phone>(011) 123-4567</phone>
</contact-info>

위의 예에서 두 종류의 정보가 있음을 알 수 있습니다.

  • <contact-info>와 같은 마크 업

  • 텍스트 또는 문자 데이터, Tutorials Point(040) 123-4567 .

다음 다이어그램은 XML 문서에 다양한 유형의 마크 업 및 텍스트를 작성하기위한 구문 규칙을 보여줍니다.

위 다이어그램의 각 구성 요소를 자세히 살펴 보겠습니다.

XML 선언

XML 문서는 선택적으로 XML 선언을 가질 수 있습니다. 다음과 같이 작성됩니다-

<?xml version = "1.0" encoding = "UTF-8"?>

여기서 version 은 XML 버전이고 encoding 은 문서에 사용되는 문자 인코딩을 지정합니다.

XML 선언을위한 구문 규칙

  • XML 선언은 대소 문자를 구분하며 "<?xml>" 어디 "xml"는 소문자로 작성됩니다.

  • 문서에 XML 선언이 포함 된 경우 XML 문서의 첫 번째 문이어야합니다.

  • XML 선언은 XML 문서의 첫 번째 명령문이어야합니다.

  • HTTP 프로토콜은 XML 선언에 입력 한 인코딩 값을 재정의 할 수 있습니다 .

태그 및 요소

XML 파일은 XML 노드 또는 XML 태그라고도하는 여러 XML 요소로 구성됩니다. XML 요소의 이름은 아래와 같이 삼각형 괄호 <>로 묶여 있습니다.

<element>

태그 및 요소에 대한 구문 규칙

Element Syntax − 각 XML 요소는 아래와 같이 시작 또는 끝 요소로 닫아야합니다.

<element>....</element>

또는 간단한 경우에는이 방법으로-

<element/>

Nesting of Elements− XML 요소는 여러 XML 요소를 자식으로 포함 할 수 있지만 자식 요소는 겹치지 않아야합니다. 즉, 요소의 끝 태그는 가장 최근 일치하지 않는 시작 태그의 이름과 동일한 이름을 가져야합니다.

다음 예제는 잘못된 중첩 태그를 보여줍니다-

<?xml version = "1.0"?>
<contact-info>
<company>TutorialsPoint
</contact-info>
</company>

다음 예제는 올바른 중첩 태그를 보여줍니다-

<?xml version = "1.0"?>
<contact-info>
   <company>TutorialsPoint</company>
<contact-info>

Root Element− XML 문서는 하나의 루트 요소 만 가질 수 있습니다. 예를 들어 다음은 올바른 XML 문서가 아닙니다.xy 요소는 루트 요소없이 최상위 수준에서 발생합니다.

<x>...</x>
<y>...</y>

다음 예제는 올바르게 구성된 XML 문서를 보여줍니다-

<root>
   <x>...</x>
   <y>...</y>
</root>

Case Sensitivity− XML 요소의 이름은 대소 문자를 구분합니다. 즉, 시작 및 끝 요소의 이름이 정확히 동일한 대소 문자 여야합니다.

예를 들면 <contact-info> ~와 다르다 <Contact-Info>

XML 속성

attribute이름 / 값 쌍을 사용하여 요소에 대한 단일 속성을 지정합니다. XML 요소는 하나 이상의 속성을 가질 수 있습니다. 예를 들면-

<a href = "http://www.tutorialspoint.com/">Tutorialspoint!</a>

여기 href 속성 이름이고 http://www.tutorialspoint.com/ 속성 값입니다.

XML 속성에 대한 구문 규칙

  • HTML과 달리 XML의 속성 이름은 대소 문자를 구분합니다. 즉, HREFhref 는 두 개의 다른 XML 속성으로 간주됩니다.

  • 동일한 속성은 구문에 두 개의 값을 가질 수 없습니다. 다음 예제는 속성 b 가 두 번 지정되었으므로 잘못된 구문을 보여줍니다.

<a b = "x" c = "y" b = "z">....</a>
  • 속성 이름은 따옴표없이 정의되지만 속성 값은 항상 따옴표로 표시되어야합니다. 다음 예제는 잘못된 xml 구문을 보여줍니다.

<a b = x>....</a>

위 구문에서 속성 값은 따옴표로 정의되어 있지 않습니다.

XML 참조

일반적으로 참조를 사용하면 XML 문서에 추가 텍스트 또는 마크 업을 추가하거나 포함 할 수 있습니다. 참조는 항상 기호로 시작합니다."&" 예약 된 문자이고 기호로 끝납니다. ";". XML에는 두 가지 유형의 참조가 있습니다.

  • Entity References− 엔티티 참조에는 시작과 끝 구분 기호 사이에 이름이 포함됩니다. 예를 들면&amp;여기서 ampname 입니다. 이름은 텍스트 및 / 또는 마크 업의 미리 정의 된 문자열을 의미한다.

  • Character References − 여기에는 다음과 같은 참조가 포함됩니다. &#65;에는 해시 표시 ( "#")와 숫자가 포함됩니다. 숫자는 항상 문자의 유니 코드 코드를 나타냅니다. 이 경우 65는 알파벳 "A"를 나타냅니다.

XML 텍스트

XML 요소 및 XML 속성의 이름은 대소 문자를 구분합니다. 즉, 시작 및 종료 요소의 이름은 동일한 대소 문자로 작성되어야합니다. 문자 인코딩 문제를 방지하려면 모든 XML 파일을 유니 코드 UTF-8 또는 UTF-16 파일로 저장해야합니다.

XML 요소 사이 및 XML 속성 사이의 공백, 탭 및 줄 바꿈과 같은 공백 문자는 무시됩니다.

일부 문자는 XML 구문 자체에 예약되어 있습니다. 따라서 직접 사용할 수 없습니다. 이를 사용하기 위해 아래에 나열된 몇 가지 대체 엔티티가 사용됩니다.

허용되지 않는 문자 대체 법인 캐릭터 설명
< & lt; 이하
> & gt; ~보다 큰
& & amp; 앰퍼샌드
' & apos; 아포스트로피
" & quot; 인용 부호