1 XML Overview XML XML Markup Language SGML

  • Slides: 54
Download presentation

1. XML Overview • • XML 정의 XML 출현배경 Markup Language SGML, HTML, XML

1. XML Overview • • XML 정의 XML 출현배경 Markup Language SGML, HTML, XML ISSUES XML 응용분야 XML Processor XML Parser 2/18

XML 이란? • • • e. Xtensible Markup Language Meta Language World Wide Web

XML 이란? • • • e. Xtensible Markup Language Meta Language World Wide Web Consortium (W 3 C) 1996 XML Spec 1. 0 Recommended Structure, Semantic of Document (Not a Style. Sheet) SGML 의 확장, 구조, 검증 의 특성 계승 3/18

SGML • Standard Generalized Markup Language – – 1960년대 등장, ISO 8879 표준으로 채택

SGML • Standard Generalized Markup Language – – 1960년대 등장, ISO 8879 표준으로 채택 메타언어 다양한 기능 제공 SGML의 한계 8/18

XML & HTML XML DTD <!ELEMENT 책 (장)+> <!ELEMENT 장 (제목, 표기)> <!ELEMENT 제목

XML & HTML XML DTD <!ELEMENT 책 (장)+> <!ELEMENT 장 (제목, 표기)> <!ELEMENT 제목 (#PCDATA)> <!ELEMENT 표기 (#PCDATA)> <!ATTLIST 표기 언어 (K|E|O) “K”> XML File <책> <장> <제목>홍길동</제목> <표기 언어 =“E”> aaa</표기> </장> </책> HTML File <Table> <tr> <td>홍길동</td> <td>aaa</td> </tr> </table> XSL File Browser 10/18

XML is Structured & Intergrated Data 구조화 데이터 SGML HTML XML 간단한 데이터 복잡한

XML is Structured & Intergrated Data 구조화 데이터 SGML HTML XML 간단한 데이터 복잡한 데이터 비구조화 데이터 12/18

XML 응용 • • • Math. ML CDF WML Voice. XML SMIL 14/18

XML 응용 • • • Math. ML CDF WML Voice. XML SMIL 14/18

XML 도구 • XML Editor – XML Spy • XML Browser – IE 6.

XML 도구 • XML Editor – XML Spy • XML Browser – IE 6. 0 • XML Parser – Apache Xerces • XSL Processor – Apache Xalan • XML Storage/Server 15/18

XML Parser • Validating Parser • Non-Validating Parser 16/18

XML Parser • Validating Parser • Non-Validating Parser 16/18

Standard API • XML문서를 application에 전달하는 표준화 된 방법 – DOM(Document Object Model) –

Standard API • XML문서를 application에 전달하는 표준화 된 방법 – DOM(Document Object Model) – SAX (Simple API for XML) 17/18

XML 과 Java • 3 -tier 웹 Application – Data Format – XML –

XML 과 Java • 3 -tier 웹 Application – Data Format – XML – Web Application – Java Technology – 자바 환경의 Data Parsing 18/18

2. XML Document

2. XML Document

2. XML Document • • • 문서의 종류 XML 구성 요소 및 개념 Well-formed

2. XML Document • • • 문서의 종류 XML 구성 요소 및 개념 Well-formed XML 문서 작성 Namespace URI 20/46

XML 문서의 종류 • Well-Formed Document – 최소한의 규칙 만족 • Case Sensitive •

XML 문서의 종류 • Well-Formed Document – 최소한의 규칙 만족 • Case Sensitive • Closing Tags • No Overlapping Tags • Valid Document – Well-formed Document – 구조를 정의한 문서(DTD, Schema)와 일치 21/46

Element 의 구성 • 시작 태그 – <name>, <first>, <middle>, <last> • 끝 태그

Element 의 구성 • 시작 태그 – <name>, <first>, <middle>, <last> • 끝 태그 – </name>, </first>, </middle>, </last> • Element content – 시작 태그와 끝 태그 사이의 내용 – PCDATA (Parsed Character DATA) – 다른 Element 28/46

 • <? Order 1 “SELECT * FROM board ORDER BY write_date” ? >

• <? Order 1 “SELECT * FROM board ORDER BY write_date” ? > • <? Order 2 Orderby=“write_date” Select_column=“X” ? > 39/46

PCDATA : Escape 문자 • Entity Reference – – – PCDATA & 문자 -

PCDATA : Escape 문자 • Entity Reference – – – PCDATA & 문자 - & < 문자 - < > 문자 - > ’ 문자 - &apos; ” 문자 - " 41/46

PCDATA : CDATA 섹션 • 파서나 브라우저에서 유효성 검사를 하지 는 문자열(error check 하

PCDATA : CDATA 섹션 • 파서나 브라우저에서 유효성 검사를 하지 는 문자열(error check 하 지 않고 skip) • CDATA(Character DATA) 섹션 – “<![CDATA[”로 시작, “]]>”로 끝 – <comparison> – <less><![CDATA[2<3]]></less> – <greater><![CDATA[4>3]]></greater> – <comparison> PCDATA 43/46

DTD 선언 • Document Type Definition – XML 문서의 구조를 명시적으로 정의한 것 PCDATA

DTD 선언 • Document Type Definition – XML 문서의 구조를 명시적으로 정의한 것 PCDATA 44/46

<? xml version="1. 0" encoding="euc-kr"? > <xsl: stylesheet xmlns: xsl="http: //www. w 3. org/1999/XSL/Transform"

<? xml version="1. 0" encoding="euc-kr"? > <xsl: stylesheet xmlns: xsl="http: //www. w 3. org/1999/XSL/Transform" version="1. 0"> <xsl: output method="html" encoding="euc-kr"/> <xsl: template match="/"> <html> <body bgcolor="navy"> <b> <font size="4" color="white" face="서울들국화"> <xsl: for-each select="학생정보/학생"> <hr color="yellow"/> <p>학번 : <xsl: value-of select="학번"/></p> <p>이름 : <xsl: value-of select="이름"/></p> <p>나이 : <xsl: value-of select="나이"/></p> <p>점수 : <xsl: value-of select="점수"/></p> </xsl: for-each> <p>점수 합 : <xsl: value-of select="sum(학생정보/학생/점수)"/></p> </font></b> </body> </html> </xsl: template> </xsl: stylesheet> 48/46