Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 |
Tags
- Spring
- mybatis
- swift
- bootstrap
- 일본
- angularjs
- Eclipse
- SQL
- Python
- build tool
- Apache
- Ajax
- 개발자 이야기
- JavaFX
- WebClient
- jquery
- SQLite
- RSocket
- 외국인 노동자
- Linux
- maven
- Java
- pdo
- gradle
- node.js
- php
- xml
- javadoc
- webflux
- spring boot
- Today
- 123
- Total
- 3,697,220
슬기로운 개발자 생활
[XML] DTD를 사용하여 XML 구조의 정의 - DTD에서 요소와 문자 데이터의 조합 본문
반응형
HTML에서는 아래와 같이 작성을 할 수 있다.
<p>
아버지는 <strong>자산가</strong>이다.
</p>
<p>
요소의 문자 데이터에 인라인 요소인 <strong>
태그를 사용하여 작성하고 있다.
맞찬가지로 XML에도 문자 데이터에 요소를 (몇 번이라도) 작성 할 수 있다. 이러한 경우의 DTD 작성 방법이지만, 바로 이전에 설명했던 여러 요소 중에서 하나를 선택하는 방법을 사용하여 작성 할 수 있다.
먼저 아래와 같이 작성한다.
<!ELEMENT 요소명 (#PCDATA | 요소명)>
|
을 사용하여 작성 방법은 요소뿐만 아니라, #PCDATA
와 요소
를 같이 작성할 수도 있다. 이대로라면 문자 데이터가 다른 요소가 어느 쪽이든 하나만 작성 할 수 밖에 없게 되지 겠지만, 아래와 같이 작성하면 이 문제는 해결할 수 있다.
<!ELEMENT 요소명 (#PCDATA | 요소명)*>
위와 같이 작성 가능 횟수로 0번 이상 지정하는 *
를 마지막으로 작성한다. 이렇게 작성을 하게 되면 문자 데이터나 요소 중 하나가 각각 0회 이상 여러 번 작성 할 수 있게 된다. 예를 들어 방금 전의 HTML의 예제는 아래와 같은 의미이다.
아버지는 <strong>자선자</strong> 입니다.
------ --------------------- -----
#PCDATA 'strong'요소 #PCDATA
이것은 #PCDATA
와 <strong>
요소가 반복하여 작성되고 있는 것이다.
그럼 이전 XML 문서 샘플에 추가하는 형태로 작성해 보자.
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE 고객정보[
<!ELEMENT 고객정보 (고객+)>
<!ELEMENT 고객 (이름, 성별, 취미*, (집 | 회사 | 핸드폰), 비고?)>
<!ELEMENT 이름 (#PCDATA)>
<!ELEMENT 성별 (#PCDATA)>
<!ELEMENT 취미 (#PCDATA)>
<!ELEMENT 집 (#PCDATA)>
<!ELEMENT 회사 (#PCDATA)>
<!ELEMENT 핸드폰 (#PCDATA)>
<!ELEMENT 비고 (#PCDATA | 중요)*>
<!ELEMENT 중요 (#PCDATA)>
]>
<고객정보>
<고객>
<이름>김혜진</이름>
<성별>女</성별>
<집>02-xxx-xxxx</집>
</고객>
<고객>
<이름>박정혁</이름>
<성별>남</성별>
<취미>피아노</취미>
<취미>수영</취미>
<핸드폰>010-xxxx-xxxx</핸드폰>
<비고>
아버지는 <중요>자산가</중요>이며, 대기업 <중요>회장</중요>이다.
</비고>
</고객>
</고객정보>
반응형
'IT 개발 > XML' 카테고리의 다른 글
[XML] DTD를 사용하여 XML 구조의 정의 - DTD에서 여러 요소 중에 하나를 선택하여 작성 (0) | 2019.12.06 |
---|---|
[XML] DTD를 사용하여 XML 구조의 정의 - DTD에서 요소의 작성 횟수 지정 (0) | 2019.12.06 |
[XML] DTD를 사용하여 XML 구조의 정의 - DOCTYPE 선언 (XML 문서와 DTD를 연결) (0) | 2019.12.06 |
[XML] DTD를 사용하여 XML 구조의 정의 - DTD란? (0) | 2019.12.06 |
[XML] 기본 - XML 주석 (comment) (0) | 2019.12.06 |
- Tag
- xml
0 Comments