XML with JAVA
chapter 07 : chapter 07 : XML 스키마 Ⅰ XML 스키마 Ⅰ
스키마의 필요성 스키마의 필요성 스키마 문서 작성 스키마 문서 작성 요소선언 속성선언 학습목표 학습목표
스키마의 필요성 스키마의 필요성 DTD 의 단점 DTD 의 단점 dtd 는 xml 문법을 따르지 않기 때문에 문법을 따로 익혀야 하는 어려움이 있고, 다양한 데이터 타입을 표현하지 못한다. 새로운 유효성 검사 형식으로 스키마가 필요하게 되었다. 스키마 문서 작성 스키마 문서 작성 스키마문서 > ~.xsd 스키마문서 > ~.xsd
xml 문서 >~.xml xml 문서 >~.xml 회원에 대한 내용이 온다. 회원에 대한 내용이 온다.</memberlist> 요소 선언 1. 단순 데이터를 갖는 요소 스키마 문서 작성 스키마 문서 작성
xsd> xsd> xml> xml> 오정원 오정원 이나라 이나라 숫자형 데이터 타입 : type=“xsd:int” 숫자형 데이터 타입 : type=“xsd:int” 요소를 무한대로 나열 : maxOccurs=“unbounded” 요소를 무한대로 나열 : maxOccurs=“unbounded” 스키마 문서 작성 스키마 문서 작성
복합 데이터형 자식 엘리먼트를 갖는 엘리먼트 자식 엘리먼트를 갖는 엘리먼트 자식 엘리먼트 자식 엘리먼트 </element> 스키마 문서 작성 스키마 문서 작성
xsd> xsd> <xsd:element name=“hobby” minOccurs=“0” <xsd:element name=“hobby” minOccurs=“0” maxOccurs=“unbounded” type=“xsd:string”/> maxOccurs=“unbounded” type=“xsd:string”/> 스키마 문서 작성 스키마 문서 작성
xml> xml> 바둑 축구 예제참조 (ch07_1.xsd,ch07_1.xml) 스키마 문서 작성 스키마 문서 작성
자식 엘리먼트 와 속성을 갖는 엘리먼트 자식 엘리먼트 와 속성을 갖는 엘리먼트 자식 엘리먼트 자식 엘리먼트 속성 속성 </element> 예제참조 (ch07_2.xsd,ch07_2.xml) 스키마 문서 작성 스키마 문서 작성
속성만 갖는 엘리먼트 속성만 갖는 엘리먼트 속성 속성 </element> 예제참조 (ch07_3.xsd,ch07_3.xml)
스키마 문서 작성 스키마 문서 작성 데이터와 속성을 갖는 엘리먼트 데이터와 속성을 갖는 엘리먼트 속성 속성 </element> 예제참조 (ch07_4.xsd,ch07_4.xml)
스키마 문서 작성 스키마 문서 작성 엘리먼트 참조 엘리먼트 참조 문서에서 자주 사용하는 엘리먼트 선언을 schema 엘리먼트의 자 식 엘리먼트로 선언하고 필요할 때 다른 엘리먼트 선언시 참조할 수 있다. 문서에서 자주 사용하는 엘리먼트 선언을 schema 엘리먼트의 자 식 엘리먼트로 선언하고 필요할 때 다른 엘리먼트 선언시 참조할 수 있다. 예제참조 (ch07_5.xsd,ch07_5.xml) 속성선언 속성선언 <attribute name=“ 속성명 ” use=“required|optional” type=“ 데 <attribute name=“ 속성명 ” use=“required|optional” type=“ 데 이터 형 ” ref=“ 참조할 속성명 ” default=“ 기본값 ”> 이터 형 ” ref=“ 참조할 속성명 ” default=“ 기본값 ”> default 속성은 use 속성값이 optional 일 경우만 사용가능. default 속성은 use 속성값이 optional 일 경우만 사용가능.
스키마 문서 작성 스키마 문서 작성 속성참조 속성참조 자주 사용되는 속성 선언을 특정한 이름으로 생성하고 필요할 때 참 자주 사용되는 속성 선언을 특정한 이름으로 생성하고 필요할 때 참 조 하여 속성을 선언할 수 있다. 조 하여 속성을 선언할 수 있다. 예제참조 (ch07_6.xsd,ch07_6.xml) 예제참조 (ch07_6.xsd,ch07_6.xml)