1.XML 문서는 HTML 문서와 마찬가지로 트리(tree) 형태의 계층 구조를 가집니다
2. root 요소는 파일당 하나만 존재한다. root는 모든 요소의 조상이다.
3.xml 선언시:
standalone 속성은 XML 문서가 외부 DTD(Document Type Definition)와 같은 외부 소스의 데이터에 의존하고 있는 문서인지 아닌지를 XML 파서(parser)에 알려주는 역할을 합니다.
이 속성의 기본값은 no이며, yes로 설정하면 이 문서를 파싱(parsing)할 때 참조해야 할 외부 소스가 없다는 것을 의미합니다.
4. xml문법:
1. 모든 XML 요소는 종료 태그를 가져야 합니다.
HTML에서는 종료 태그를 생략하거나, 빈 태그를 사용해도 대부분의 경우 문제없이 동작합니다.
하지만 XML에서는 XHTML과 마찬가지로 종료 태그가 생략되면 오류가 발생합니다.
또한, 빈 태그에도 반드시 슬래시(/)를 추가해야만 오류가 발생하지 않습니다.
2. XML에서 속성값은 반드시 따옴표로 감싸야 합니다.
// 오류가 발생함.
// 정상적으로 동작함.
3.XML에서는 예약되어 있는 다섯 개의 특별한 기호가 있습니다.
< > & " ' 등 ,파서는 이를 인식함
5. XML 주석(comment)
XML 주석에서 시작과 마지막의 하이픈(-)의 개수는 중요하지 않습니다.
다만, 주석의 내용 안에 두 개 이상의 연속된 하이픈은 허용하지 않습니다.
6. xml 요소 문법
xml요소란 시작 태그부터 종료까지 모든것
<요소이름 속성1="속성값" 속성2="속성값"... > 내용 </요소이름> 여기까지가 한개 요소
내용이 없는 빈 요소:
<요소이름 속성1="속성값" 속성2="속성값"... />
7. xml속성:
XML 속성은 XML 요소에 대한 추가적인 정보를 제공해주며, 해당 요소의 특징을 정의합니다.
속성은 속성명:속성값 의 형식으로 정의된다. 속성값은 ""로 포장
<요소이름 속성1="속성값" 속성2="속성값"... >
8. 속성은 여러 개의 값을 가질 수 없으며, 요소처럼 손쉽게 확장할 수 없다는 단점을 가집니다.
또한, 속성은 XML 트리에 포함되지 않기 때문에 다양한 용도로 활용할 수가 없습니다.
9. xml 네임스페이스: 충돌방지용
<요소이름 xmlns: prefix = "URI">
XML 네임스페이스의 선언은 xmlns나 xmlns:로 시작합니다.
여기서 URI가 네임스페이스 식별자이다.
<a:body xmlns:a="https://www.w3.org/TR/html5/"> a접두사를 사용하여 네임스페이스 대체
<a:body>
<a:h1>html에서의 제목</a:h1>
<a:p>html에서의 단락</a:p>
</a:body>
<b:body>
<b:arm>70</b:arm>
<b:leg>110</b:leg>
</b:body>
여러개의 네임스페이스 사용함 안에 있는 요소들은 서로 다른 네임스페이스 사용가능
10. 현재 많이 사용되고 있는 XML 파서의 종류는 다음과 같습니다.