lecture4. DTD를 이용한 스키마 설계

호수·2021년 4월 22일
0

XML
-DTD나 XML Schema를 이용해서 마크업 언어 개발
-새로운 마크업 언어가 정의되면 응용프로그램도 그 언어를 이해할 수 있도록 개발되어야 함

DTD
xml문서의 구조를 명시적으로 정의
xml문서
1.사용 가능한 markup들의 집합과 사용 규칙을 정의:엘리먼트, 속성, 개체, 노테이션
2.유효한 문서인지 확인

DTD 사용 방법
문서 유형 선언
XML 문서가 어떤 DTD에 의해(정의된 언어로) 작성된 것인지
DTD = 내부 DTD Subset + 외부 DTD Subset
DTD문서: 외부 DTD subset을 정의한 문서

내부 DTD Subset – 임시 ,외부 DTDsubset의 일부 내용을 XML문서에서 재정의해서 사용할 목적
-DTD가 XML 문서 내부에서 정의

외부 DTD Subset
-DTD가 별도의 문서(파일)로 정의됨
XML 문서에서 공통적으로 이용 가능
-확장자 .dtd
-새로운 마크업 언어를 정의->새로운 외부 DTD subset을 작성

외부 DTD 문서 유형 선언
선언: SYSTEM 식별자
예)

1.특정 웹서버 상->URL
2.파일시스템 ->파일이름 ~ .dtd

PUBLIC 식별자 – 공개적
형식: +-//개발한단체명//이름 및 버전//사용된 언어
‘-’공인된 단체가 아닐 경우
‘+’ 국제 공인 단체

DTD 구성요소
엘리먼트 선언
– 예:
속성 선언
– 예:
개체 선언
– 예:
노테이션 선언
– 예:
조건부섹션
– 예: <![INCLUDE []]>
주석
– 예:

엘리먼트 선언
Contents 유형
– Contents model
 #PCDATA : 문자 데이터(text)
 children : 자식 엘리먼트(child element)

mixed : 문자 데이터와 자식 엘리먼트들

– Contents category
 empty : 내용을 갖지 않는 빈 엘리먼트 선언
 any : 임의의 구조(타입)의 데이터를 포함할 수 있음

속성선언
엘리먼트에 부가적인 정보
형식:

속성명:xml이름 작성 규칙 
속성 유형: 문자열 타입(CDATA), 열거형 타입, 토큰 타입
-토큰 타입

•ID
식별
•IDREF(S) 타입
ID속성 값들 중 일치(참조)
#IMPLED 또는 REQULTED만 사용 가능

-문자열 타입
특수문자를 제외하고 어떤 문자열도 가능
특수문자 사용시 개체 참조 이용
-열거형타입
나열된 값 이외의 값 사용 불가

속성기본값: 속성의 초기 값, #FIXED, #IMPLIED, #REQUIRED

개체선언

profile
Back-End개발자 입문 과정 블로그🚀

0개의 댓글