slide1
Download
Skip this Video
Download Presentation
자바 개발자를 위한 XML

Loading in 2 Seconds...

play fullscreen
1 / 39

자바 개발자를 위한 XML - PowerPoint PPT Presentation


  • 185 Views
  • Uploaded on

자바 개발자를 위한 XML. Chap2. DTD 와 XML 문서 김만수. CHAPTHER 2. DTD 와 XML 문서 DTD 소개 원소 선언 속성 선언 엔티티 선언 노테이션 선언과 바이너리 데이터 처리명령어 주석 조건부 섹션 CDATA 섹션 DTD 설계 DTD 파서. 2.2 XML 문서 구조. <?xml version= “ 1.0 ” encoding= “ euc-kr ” ?. XML 선언. 서론 ( 생략가능 ). <!DOCUMENT memo [

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about '자바 개발자를 위한 XML' - mariko-burke


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
slide1

자바 개발자를 위한 XML

Chap2. DTD와 XML 문서

김만수

chapther 2
CHAPTHER 2
  • DTD와 XML 문서
    • DTD 소개
    • 원소 선언
    • 속성 선언
    • 엔티티 선언
    • 노테이션 선언과 바이너리 데이터
    • 처리명령어
    • 주석
    • 조건부 섹션
    • CDATA 섹션
    • DTD 설계
    • DTD 파서
2 2 xml
2.2 XML 문서 구조

encoding=“euc-kr”?

XML 선언

서론(생략가능)

?]>

DTD 선언(생략가능)

홍길동

2002/04/05

여자 친구로부터 전화 요망

허준

문서 내용

XML 문서 내용

2 2 xml1
2.2 XML 문서 구조

greeting.xml

안녕하세요.

2 2 1 xml
2.2.1 XML 선언 부분
  • version
    • 사용되는 XML 버전을 반드시 명시
  • encoding
    • 데이터 인코딩에 사용되는 문자 세트 기술
  • standalong
    • 외부 엔티티나 외부 데이터 타입을 사용하는지 여부 기술
    • 외부 엔티티를 사용하지 않으면 “yes”

2 2 1 xml1
2.2.1 XML 선언 부분
  • 용어 정리
    • 잘 정의된(well-formed) : XML 문법 사항을 지킨 문서
    • 유효한(valid) : XML 문서가 잘 정의되어 있으면서, 문서 내용이 DTD 규칙에 맞게 작성된 문서
    • 엔티티(entity) : XML에서 정보의 단위
    • 원소/태그/속성

속성

홍길동

원소

시작태그

내용

끝 태그

2 2 2 dtd
2.2.2 DTD 선언 부분
  • DTD (Document Type Definition)
    • XML 문서의 구조
    • XML 문서에서 사용할 수 있는 원소, 속성, 엔티티 등을 정의
    • XML 문서는 DTD를 사용할 수 있거나, 무시 할 수 있음
  • DTD의 필요성
    • 문서의 형태를 정형화된 방법으로 선언 –표준화
    • 문서 내용이 올바른 구조로 되어 있는지 검사 가능
    • XML 문서에서 꼭 필요한 원소와 속성을 반드시 기술하도록 만들 수 있음
    • 속성에 디폴트 값을 부여
2 2 2 dtd1
2.2.2 DTD 선언 부분
  • DTD 사용 방법 (p. 2-6 참조)
    • XML 문서 내에서 DTD 선언
    • 외부 파일로 DTD를 선언
    • 외부 DTD와 내부 DTD를 같이 사용하는 방법

]>

[

maker CDATA #REQUIRED

>

]>

2 2 2 dtd2
2.2.2 DTD 선언 부분
  • DTD 선언
    • 원소 선언, 속성 선언 등 다양한 내용
    • 원소 선언(element declaration)
      • XML 문서에서 사용될 태그들과 태그들 사이의 포함 관계 및 순서를 기술
    • 속성 선언(attribute declaration)
      • 원소에서 사용될 수 있는 속성의 이름과 디폴트 값에 관한 사항들을 기술
    • 엔티티 선언
2 2 2 dtd3
2.2.2 DTD 선언 부분
  • DTD 선언
    • 처리 명령어(processing instruction)
      • 특수한 응용프로그램의 명령어(Processing Instruction)을 기술
    • 노테이션 선언(notation declaration)
      • 데이터의 포맷이나 처리 명령어에서 기술된 응용프로그램의 이름을 식별하기 위해서 사용
2 2 3 xml
2.2.3 XML 문서 내용
  • XML 문서 내용에는 실제 문서의 내용이 기술
    • 원소(element) : 태그와 문서 내용을 기술
    • 속성(attribute) : 원소에 포함되어서 원소에 대한 메타 정보를 기술
    • 주석(comment) : 문서의 주석을 기술
    • 처리 명령어(processing instruction)
    • 엔티티 참조(entity reference) : 엔티티를 참조해서 사용
    • CDATA 섹션(CDATA Section) : <, &, ? 등의 문자를 포함하는 데이터를 편리하게 기술하기 위해서 사용
2 2 3 xml1
2.2.3 XML 문서 내용
  • XML 문서 요소들
    • XML 문서에는 오직 하나의 루트 원소가 존재
2 2 4 memo xml
2.2.4 memo.xml

memo

to

date

contents

from

2 3 dtd
2.3 DTD 소개
  • DTD 선언의 요소들
    • 내부 DTD + 외부 DTD 파일 참조 사용 가능
      • 외부 DTD 선언의 내용을 재정의 하거나 추가 가능
2 3 1 dtd
2.3.1 내부 DTD
  • DTD 선언
  • 마크업선언
    • 원소선언|속성선언|엔티티선언|노테이션선언|PI|주석
  • Parsed Character Data
  • XML의 특수 문자를 제외한 임의의 문자가 올 수 있음
2 3 1 dtd1
2.3.1 내부 DTD
  • ‘to’ Element의 속성 중 ‘what’은 반드시 기술 해야 함
  • IE는 XML 문서가 DTD에 유효한가를 체크하지 않음
2 3 2 dtd
2.3.2 외부 DTD
  • 외부 DTD 사용의 필요성
    • 공통된 DTD를 여러 XML에서 공유할 수 있음
  • DTD 선언
  • 외부 ID
    • SYSTEM URL | PUBLIC PubidLiteral SystemLiteral
  • 예제 p. 2-11
slide18
2.4 원소 선언
  • 원소선언
  • contents
    • EMPTY | ANY | mixed | children
2 4 3 children
2.4.3 자식 노드만을 가질 때 - children
  • children은 별도의 키워드를 가지지 않음
  • 선언 예
slide20
2.5 속성 선언
  • 속성 리스트(ATTLIST) 선언
    • 원소의 속성을 정의하기 위해서 사용
    • 원소의 이름과 속성 이름, 속성의 타입 및 디폴트 값 기술
  • attr-type
    • CDATA : 임의의 문자열을 가짐
    • 토큰 : ID, IDREF, IDREFS, ENTITY, ENTITYES, NMTOKEN, NMTOKENS의 키워드 중에서 하나를 사용
    • 열거형 : DTD 개발자가 정해놓은 여러 개의 속성 값들 중에 하나를 사용
slide21
2.5 속성 선언
  • CDATA
    • 속성의 값이 문자열 타입
    • XML의 특수 문자들은 사용 불가능
slide22
2.5 속성 선언
  • 토큰 타입
    • ID, IDREF, IDREFS
      • ID
        • XML 문서에서 원소를 유일하게 식별할 수 있게 속성 값을 지정
      • IDREF, IDREFS
        • XML 문서에서 문서의 다른 부분을 지칭이 필요 때 사용
        • IDREFS는 여러 개의 ID를 지칭 가능
      • 예제 p. 2-30
slide23
2.5 속성 선언
  • 열거형 타입
    • 종류
      • 주어진 값들 중에서 하나를 선택하는 타입
      • NOTATION 타입
  • 속성의 디폴트 값 선언
    • #REQUIRED : 속성 값을 반드시 명시
    • #IMPLIED : 속성의 디폴트 값이 없음
    • ((#FIDEX) ? AttValue : 속성의 디폴트 값을 명시
slide24
2.5 속성 선언
  • 속성의 디폴트 값 선언
    • #REQUIRED
    • #IMPLIED
    • #FIXED
slide25
2.6 엔티티 선언
  • Entity
    • XML 문서에서 정보의 단위
    • 참조될 수 있도록 이름을 가짐
    • 문자, 문장, 혹은 파일이 하나의 단위가 됨
    • Entity 선언을 통해서 정의
  • 문자 단위의 Entity

& ;

#숫자: 10진수 문자 코드#x숫자: 16진수 문자 코드#문자: 정의된 Entity 참조

slide26
2.6 엔티티 선언

엔티티 분류

엔티티

일반 엔티티

파라메터 엔티티

내부 엔티티

외부 엔티티

내부 엔티티

외부 엔티티

파싱된 엔티티

파싱된 엔티티

파싱안된 엔티티

slide27
2.6 엔티티 선언
  • 일반 엔티티
    • 프로그래밍 언어에서 매크로와 유사
    • DTD에서 일반 엔티티를 선언
    • XML 문서 내용중에서 엔티티 참조를 이용해서 엔티티 사용
slide29
2.6 엔티티 선언
  • 파라메터 엔티티
    • DTD 내부에서만 사용할 수 있는 엔티티
    • 일반 엔티티 선언 방법이 다름
    • 파라메터 엔티티 참조 방법
      • %name;
slide30
2.6 엔티티 선언
  • 외부 엔티티
    • 외부 파일에 저장된 정보
    • XML 문서, 바이너리 내용(.jpg, .mpg 등) 등
    • 외부 엔티티의 위치는 시스템 식별자를 통해서 제공 – SYSTEM
    • 예. 2-40
slide31
2.7 노테이션 선언과 바이너리 데이터
  • XML문서에 사진, 동영상, 음악 파일들(Binary Data)을 모두 기술 가능
  • XML 문서는 텍스트 문서  Binary Data는 외부 파일로 저장하고 연결
  • Notation
    • Binary Data를 어떻게 처리 할 것인지를 지정
    • 외부 ID
      • SYSTEM 키워드를 사용해서 Binary Data를 처리 할 수 있는 응용 프로그램을 명시
    • 공용ID
      • 표준화된 Binary Data일 경우 PUBLIC 키워드를 사용
slide32
2.7 노테이션 선언과 바이너리 데이터
  • Binary Data XML 문서에서 직접 사용 못함
    • Entity를 선언해서 속성의 값으로만 사용 가능
      • NDATA gif는 를 의미
    • 선언된 Binary Entity와 파싱되는 Entity는 차이점
      • 파싱되는 Entity : 문서에서 직접 참조 가능
      • 선언된 Binary Entity : 속성의 값으로만 사용, & ;를 붙이지 않음
slide33
2.7 노테이션 선언과 바이너리 데이터

Notation과 Binary Data Entity를 정의

Binary Data Entity는 속성 값으로만 사용

XML 문서에서 Binary Data 사용

2 8 pi processing instruction
2.8 처리 명령어(PI : Processing Instruction)
  • DTD 부분과 XML 문서 내용 부분에서 모두 사용
  • XML 자신의 문서를 어떻게 처리 하라는 정보를 문서 처리 응용프로그램에게 전달
  • 처리명령어
  • 응용프로그램이름
slide36
2.9 주석
  • DTD와 XML 문서 내용 모두 사용 가능
  • Tag안에서는 사용될 수 없음
  • 일반 엔티티 선언
    • 안녕하세요 >
slide37
2.10 조건부 섹션
  • DTD의 일부분을 포함시키거나, 제외시킬 수 있는 기능
  • 조건부 섹션
2 11 cdata
2.11 CDATA 섹션
  • XML 문서 내용에서만 사용
  • XML의 특수 문자를 사용할 수 있음