XML (eXtensible Markup Language)elearning.kocw.net/KOCW/document/2015/chungnam/leekyuchul1/1.pdf ·...
Transcript of XML (eXtensible Markup Language)elearning.kocw.net/KOCW/document/2015/chungnam/leekyuchul1/1.pdf ·...
-
XML(eXtensible Markup Language)
이 규 철
충남대학교컴퓨터공학과
-
Contents
SGML & HTML & XML
XML DTD & Schema
XLL
XSL
2 / 100
-
Slides’ title here
SGML & HTML & XML
-
마크업(Markup)의 기원
출판업계에서원고교정및식자작업을위해주석을첨가함
Markup Languages: RTF, LaTex, SGML, XML, ….
원고작성 서식작성 출판
서식지정을위해마크업사용
원고교정을위해마크업사용
4 / 100
-
절차적(Procedural) 마크업
워드프로세서에서텍스트의외형과위치를지정하기위해사용(예: MS Word의 RTF)
텍스트와같이특정코드로저장
문제점 문서의구조정보를기록하지않음(문서외형을위해 사용)
유연성이 부족(이식성결여)
처리가 늦고, 오류 발생이잦다.
절차적마크업
공통코딩일반화마크업
5 / 100
-
공통코딩
외부포맷팅프로시듀어호출로제어하는매크로기능추가
장점 문서의 이식성, 유연성
(외형 변화를 위해매크로만 수정)
마크업은 구조를기술하는데 친숙
LaTex의예
\documentclass[12pt]{article}
\title{\LaTeX}
\date{}
\begin{document} \maketitle \LaTeX{} is a document preparation system for the \TeX{} typesetting program. It offers programmable desktop publishing features and extensive facilities for automating most aspects of
6 / 100
-
일반화(Generalized) 마크업
문서의외형이아닌구조를기술
마크업은데이터베이스스키마와유사한모델
예: SGML, XML
John Doe
Jack Smith
XML at WhizBang
Have you heard of this new technology, XML? It looks promising.It is similar to HTML but it is extensible. All the big names (Microsoft, IBM,Oracle) are
7 / 100
-
SGML 정의
정의
Standard Generalized Markup Language, ISO 8879, 1989
문서에서 논리구조와내용 구조를 기술하기위한 메타언어(meta language)
SGML은다음을제공
기술적 문서마크업생성 기법
문서의 내용모델이나구조를 정의하기위한 언어
다양한 응용들사이 구조화된 데이터교환을 위한 도구
8 / 100
-
SGML 특징
SGML 단점 S/W를개발하기 어렵다(SGML의복잡성)
Web에서 S/W 제한과 Instance의 이식성 결여
산업계의지원
논리구조 작성의어려움(DTD 작성 어려움)
SGML 장점 유연성
개방 표준
시스템이나 플랫폼에독립적
재사용성
9 / 100
-
HTML 개요
HyperText Markup Language
W3C의명세
웹상에서 Hypertext 문서를생성할수있는간단한마크업언어
SGML의한응용
ASCII Text 양식의문서
HTML = SGML + a DTD
HTML
HEAD BODY
10 / 100
-
HTML 특징
HTML 단점 고정된 태그집합
다양한 페이지포맷
임의구조화능력부족
효과적인 검색및 재사용 어렵다
HTML 장점 이식성과 사용이편리
HTML Instance를 Web에서 손쉽게 다운로드 가능
11 / 100
-
XML 역사
1960년대,IBM의 GML(Generalized Markup Language)
1986년, ISO 8879, SGML(Standard Generalized Markup Language)
1990년대초, HTML(HyperText Markup Language)
1996년, W3C WG에서 XML 공개
1998년 2월, W3C, Rec. XML 1.0 발표
2006년 8월, W3C, Rec. XML 1.1 발표
12 / 100
-
XML 표준
eXtensible Markup Language Meta Language
W3C working group에서 1996년도에작성
Web상에서구조화된전자문서를전송가능토록설계된표준화된텍스트형식
SGML/HTML과 Interoperability
일반 Web 응용 S/W에의해처리되고사용자정의문서를다양하게배치가능
새로운웹혁명을예고
새로운웹응용창출
13 / 100
-
XML의 특징
간단성(SGML보다선택특성이적다)
지금까지경험에기본(SGML, HTML)
확장성(태그에제한없음)
링크의자동생성이가능
차세대하이퍼텍스트기능을제공
문서의재사용용이
웹사이트들의간단한시스템관리제공
표준화된스타일시트제어
Primary character set으로 8-bit ASCII와 Unicode 사용
플랫폼, 프로그래밍언어, Vendor에독립적: 모두 Text 이니까
14 / 100
-
XML vs. SGML
생략태그, SGML 선언
논리적결합(&)
inclusion(+), exclusion(-)
NAME, NAMES
NUMBER, NUMBERS
NUTOKEN, NUTOKENS
CURRENT, etc
문서형선언
element 선언
문자 entity
외부 entity
SGML로부터제거된기능
- Style sheet
- XLINK, XPointer
- Query Language
- DOM, RDF
- Namespace, etc
XML에추가된기능
SGML에서계승된기능
확장성, 구조, 검증
Internet 지향XML SGML
15 / 100
-
다른 표준들 간의 관계
ISO/IEC W3C
HyTime
DSSSL
SGML
SDIF
XML논리구조
XSL물리구조
XLL링크구조
MIME교환구조
16 / 100
-
XML & HTML 차이점
다중하이퍼링크의사용
인터넷이나인트라넷에서임의정보유형을 정의가능
문서의외형을정의하는것이아니라문서의구조를정의: 검색도가능
HTML XML
XML 문서 관리 시스템
(XML 시리즈)
이 규 철 / 1998
가격 : 10, 000원/ISBN=#0-07-9137098-5
XML 문서 관리 시스템
XML 시리즈
이 규 철
1998
10,000
ISBN=#0-07-9134098-5
17 / 100
-
18
Possible Advantages of Using XML
Truly Portable Data
Easily readable by human users
Very expressive (semantics near data)
Very flexible and customizable (no finite tag set)
Easy to use from programs (libs available)
Easy to convert into other representations
(XML transformation languages)
Many additional standards and tools
Widely used and supported
18 / 100
-
19
App. Scenario 1: Data Exchange
Legacy System
(e.g., SAP R/2)
Legacy System (e.g.,
Cobol)
XML Adapter
XML Adapter
XML
(ebXML, RosettaNet, BizTalk, …)
SupplierBuyer
Order
-
20
App. Scenario 2: Content Mgt.
Database with XML documents
Clients
ConvertersXML2HTML XML2WML XML2PDF
http://images.google.de/imgres?imgurl=www.hs-niederrhein.de/service/wap/handy.jpg&imgrefurl=http://www.hs-niederrhein.de/service/wap/&h=502&w=305&prev=/images%3Fq%3Dhandy%26svnum%3D10%26hl%3Dde%26lr%3D%26ie%3DUTF-8http://images.google.de/imgres?imgurl=www.hs-niederrhein.de/service/wap/handy.jpg&imgrefurl=http://www.hs-niederrhein.de/service/wap/&h=502&w=305&prev=/images%3Fq%3Dhandy%26svnum%3D10%26hl%3Dde%26lr%3D%26ie%3DUTF-8http://images.google.de/imgres?imgurl=media.michigandaily.com/vimages/pda/pda.jpg&imgrefurl=http://www.michigandaily.com/vnews/display.v%3Fpage%3Dpdasubscribe&h=192&w=151&prev=/images%3Fq%3Dpda%26svnum%3D10%26hl%3Dde%26lr%3D%26ie%3DUTF-8http://images.google.de/imgres?imgurl=media.michigandaily.com/vimages/pda/pda.jpg&imgrefurl=http://www.michigandaily.com/vnews/display.v%3Fpage%3Dpdasubscribe&h=192&w=151&prev=/images%3Fq%3Dpda%26svnum%3D10%26hl%3Dde%26lr%3D%26ie%3DUTF-8
-
21
App. Scenario 3: XML for Metadata
-
22
App. Scenario 4: Document Markup
This article is about XML.
Weikum shows the
following theorem (see Section )
For any XML document x, ...
Weikum
-
23
App. Scenario 4: Document Markup Document Markup adds structural and semantic
information to documents, e.g.
Sections, Subsections, Theorems, …
Cross References
Literature Citations
Index Entries
Named Entities
This allows queries like
Which articles cite Weikum‘s XML paper from 2001?
Which articles talk about (the named entity) “Weikum“?
-
Slides’ title here
XML DTD & Schema
-
XML 문서
Well-formed Documents
- 문서가 XML 구문규칙에의해작성
- 논리구조는 validate 되지않음
- 하나의가장바깥엘리먼트
(root, document element) 요구
Valid Documents
DTD를가지며, DTD에따라작성된문서
25 / 100
-
Well Formed
문서실례는 XML 문서에대한문법을따름
하나의최상위엘리먼트(루트, 문서엘리먼트)를가진다
엘리먼트가중첩되지않음
모든태그는 EMPTY 엘리먼트를제외하고시작태그와종료태그가균형을
이루어야함
EMPTY 엘리먼트는 형식으로 표현
모든속성은 quotes으로표현
모든엔티티들은선언되어야함
문자데이터내에마크업문자를포함하지않음
26 / 100
-
Well_Formed 문서 예
공과대학정보통신공학부컴퓨터공학전공
홍길동11111042-555-6666042-666-5555대전광역시 서구 도마2동 439-6번지011-222-3333
XML 처리 명령(PI)
브라우징
사용자가 정의한엘리먼트
한글 2바이트 완성형
27 / 100
../../../DATA/수업/XML%20책/test1.xml../../../DATA/수업/XML%20책/test1.xml
-
스타일 적용 예
공과대학 정보통신공학부
컴퓨터공학전공
홍길동11111042-555-6666042-666-5555대전광역시서구도마2동 439-6번지
011-222-3333
test1.xml
univ, div, depart {display: block;font-size: 20pt; font-weight: bold;
}student name {
dispaly: block;font-size: 18;font-weight: bold;color: blue;
}student no, tel, fax, address, hp {
display: block;font-size: 10pt; font-style: italic;color: red;
} test1.css
브라우징
28 / 100
../../../../../WINDOWS/Temporary Internet Files/Content.IE5/C16JOPIR/test1c.css../../../DATA/수업/XML%20책/test1ccss.xml../../../DATA/수업/XML%20책/test1ccss.xml
-
Valid XML 문서
XML valid 문서는 DTD를포함
XML DTD는다음구성요소들을포함하는태그에대한문법규칙들의집합제공 Processing Instructions
Elements
Attribute
Entities
Notations
Comments
CDATA Section
29 / 100
-
Processing Instructions
응용프로그램들에정보를제공하기위해사용
형식 : name : PI target(응용에 PI를 정의)
pidata : 선택사항
XML 표준에서 PI name은 XML로 시작
XML PI 선택사항 version
standalone
yes - 내부 선언으로 처리
no – 외부 선언으로 처리
encoding
UTF-8, UTF-16, ISO-10646, EUC-*
예 :
30 / 100
-
엘리먼트
Element content
엘리먼트 이름과내용 특성을 정의
시작태그()로 시작, 종료태그()로 종료
Parsed Character data(#PCDATA)
character data(text)로 첫번째 선언
다른 엘리먼트를 포함하지 않는다
Other elements : subelement, children
Specific Keyword
EMPTY : 내용을포함하지 않는 엘리먼트
()
ANY : 임의 유형의 자식엘리먼트를 갖는다
인터넷에서의마크업기술
31 / 100
-
문자데이터와 엘리먼트 내용의 혼합
발생지시자 의 미
+ 한번이상발생
? 발생할수도안할수도있음
* 0번이상발생
연결자 의미 예
, A 다음에 B (A,B)
| A 또는 B (A|B)
32 / 100
-
엘리먼트
사진 ?이력
생년월일
이름
대학
전공
연락처
관심분야
애인이름*
EMPTY
#PCDATA
#PCDATA
집전화
사무실전화
EMAIL
#PCDATA|
,
33 / 100
-
엘리먼트
111111-1009313홍길동공과대학컴퓨터공학전공
042-111-2222042-1111-3333
XML여자1여자2
test.dtd test2.xml
34 / 100
../../../../../WINDOWS/Temporary Internet Files/Content.IE5/C16JOPIR/testex.dtd../../../DATA/수업/XML%20책/test2ex.xml
-
속성
엘리먼트에대한추가적인정보를제공
DTD나시작태그내에지정
모든속성값들은 quote(‘ ’, “ ”)
3 부분으로구성 : 이름, 유형, 디폴트값
속성선언
35 / 100
-
속성유형
String attribute : CDATA, 임의텍스트
ATTRIBUTENAME CDATA #IMPLIED/#REQUIRED/#FIXED>
데이터베이스시스템연구실
Tokenized attributes
ID, IDREF, IDREFS, ENTITY, ENEITIES, NMTOKEN, NMTOKENS
#IMPLIED/#REQUIRED /#FIXED>
….
36 / 100
-
속성 유형
Enumerated attributes
#REQUIRED/#FIXED>
…..
37 / 100
-
속성유형
ID
ID의 값은 name
문서내에서 각엘리먼트 ID 값은고유
IDREF / IDREFS
IDREF : 지정된 ID로 엘리먼트를 가리킨다
IDREFS : white space로 구분되는 IDREF 값들
ENTITY / ENTITIES
ENTITY : external entity
ENTITIES : white space로 구분되는 ENTITY 값들
NMTOKEN / NMTOKENS
NMTOKEN : 단일워드로 구성
38 / 100
-
Attribute Default Value
#REQUIRED
엘리먼트선언시 반드시 값이지정
#IMPLIED
속성값이요구되지 않고 디폴트값을 제공하지 않는다
값이지정되지 않으면 XML 처리기는값 없이 처리
“value” 디폴트로임의 적절한 값이지정
#FIXED “value”
고정된값을갖는다
속성이요구되지 않지만, 발생시 지정된 값을갖는다
39 / 100
-
Attribute 사용 예
id ID #REQUIRED >
]>
40 / 100
-
Attribute 사용 예
01-20-99
홍길동공과대학컴퓨터공학전공
XML애인1애인2
41 / 100
../../../DATA/수업/XML%20책/test(dtd).txt../../../DATA/수업/XML%20책/atttest.xml../../../DATA/수업/XML%20책/atttest.xml
-
엔티티
반복, 교체되는텍스트나문서구조를참조하는데사용
특수문자들(XML 예약문자들)을표현하는데사용
유일한이름을가진다
EntitiesMostly in DTDs
Entity 사용시장점 : consistency, changeability, efficiency
general
42 / 100
-
엔티티
Character reference
특수기호, 예약기호 등을 표현
& (&), < (
43 / 100
-
엔티티
]>
홍길동&univ;컴퓨터공학본 &univ;는 정보화를 선도하는
대학으로서…. &, <, <, >, &, ', "
General Entity
Character Entity
44 / 100
../../../DATA/수업/XML%20책/entity1.xml../../../DATA/수업/XML%20책/entity1.xml
-
엔티티
…..
%a.sizes;ho.align %h.align; #IMPLIEDve.align %v.align; #IMPLIED
NAME ENTITY #IMPLIEDSCALE CDATA #IMPLIED >
]> ….
Parameter Entity
45 / 100
-
주석
의미를가지지않으며 ‘’로종료
선언이나태그내에올수없다.
문자열 “--”를제외한임의데이터를포함
XML 처리기는이를처리하지않는다.
예
홍길동공과대학컴퓨터공학전공042-111-2222놀기애인
46 / 100
../../../../../WINDOWS/Temporary Internet Files/Content.IE5/C16JOPIR/testc.xml
-
표기법
멀티미디어, 워드프로세서정보등의비XML 데이터(NDATA)의데이터내용표기를정의
(적절한 S/W가데이터를처리)
응용처리기에정보를전달
External entities를이용
예
%test.hwp;
47 / 100
-
CDATA 섹션
파서에마크업문자를무시하도록지시
문자데이터의모든곳에위치가능
모든문자데이터는응용에직접전달
중첩되지않는다
CDATA 부분내주석은인식되지않음
주로프로그램소스등을표현시에사용
예
*p=&q;
b=(i
48 / 100
-
CDATA 섹션
]]>
49 / 100
../../../DATA/수업/XML%20책/cdata.xml../../../DATA/수업/XML%20책/cdata.xml
-
XML 스키마
XML 문서의구조와컨텐츠를정의
데이터타입이나 Namespace 등을표현하기어려운 DTD 문제점을보안
DTD 보다유연한구조정의를갖는다
다양한데이터타입
integer, float, date, time, boolean, …
사용자정의타입
확장정의가능한데이터타입
Grouping
Namespace 지원
50 / 100
-
XML 스키마 vs. DTD
구분 DTD XML Schema
문법 EBNF + 의사(pseudo) XML XML 1.0을 만족
툴(Tool)풍부함 (기존의 SGML툴을사용할 수 있음)
XML툴을 거의 모두 사용할 수있음
DOM 지원 못함DOM을통해 조작되거나디스플레이 될 수 있음
컨텐츠모델
약함 – 간단한 순차 리스트 및선택 리스트만 제공. 요소들이나타날 수 있는회수를 정확히 말할 수 없음
강함 – 좀더 상세한 컨텐츠모델은 ‘혼합된 컨텐츠’에서도상호 배타적이지 않음. 나타나는 횟수를 정확히 지정할수 있음
51 / 100
-
데이터타입정의
약함 – 문자열,이름토큰,ID와그 밖의 몇몇 데이터 타입
강함 – 문자열,숫자,날짜/시간및 널리 쓰이는 데이터 타입포함
상속 불가능 가능
확장성제한됨 – 확장을 위해서는XML 1.0 권고안을 바꿔야 함
제한 없음 – XML의 확장성을기반으로 함
기존의제약조건들
있음 – SGML과의호환성을유지하려 하기 위함
없음 – DTD의 것을 유지, 대부분은 최신의 프로그래밍언어와 기술에 근거하고 있음
복수어휘집지원
불가능 – 다큐먼트마다하나의 DTD
가능 – 필요한 만큼 사용할 수있고, XML 네임스페이스를기반으로 함
52 / 100
-
XML 스키마 – End of DTD?
DTD
광범위하게 사용되고지원됨.
많은 기존응용프로그램과 문서가 있다.
많은 시간과비용이투자됨.
경험이 풍부한프로그래머와 전문가가 있다.
NO!
53 / 100
-
XML 스키마 – 구성요소(1)
Declarations
엘리먼트와 속성
인스턴스에서 사용됨
Types
엘리먼트와 속성에서사용
각각의 선언은고유한 타입을 갖음
Type Definitions
내용모델 정의
54 / 100
-
XML 스키마 – 구성요소(2)
Declarations Types Type Definitions
a
b
c
aType
integer
string
aType=‘(b,c)’
55 / 100
-
XML 스키마 – Complex Types
Complex Types
자식 엘리먼트허용
속성을 가질수 있다.
56 / 100
-
XML 스키마 – Simple Types
Simple Types
자식 엘리먼트를가질 수 없다
속성을 가질수 없다
XML Schema의 Simple Types 구성
string
normalizedString
token
byte
unsignedByte
hexBinary
integer
positiveinteger
Negativeinteger
int
unsignedInt
long
unsignedLong
short
decimal
float
double
Boolean
time
dateTime
duraion
date
Name
QName
anyURI
……
57 / 100
-
XML 스키마 – Datatypes 생성
기존의데이터타입에서새로운데이터타입을생성할수있다.
“base” 사용
새로운데이터타입에대해하나이상의값을지정할수있다.
58 / 100
-
Datatypes 생성 형식
minInclusive maxInclusive minExclusive maxExclusive length minlength maxlength pattern enumeration
string boolean float double decimal timeDuration recurringDuration uriReference
59 / 100
-
Datatypes 생성 예
“전화번호”라는새로운데이터타입생성
엘리먼트는 문자열 값을 갖는다.
문자열의 길이는 8개
문자열의 형태 : ddd-dddd
‘d’ 는 10진수를 의미
문자열길이는여유있게표현한다.
60 / 100
-
XML 스키마 예제
61 / 100
-
Multi namespace declarations
Can declare compound namespace in element
Child element applies necessary namespace selectively
XML and Webservice
156739495
62 / 100
-
Slides’ title here
XLL & XSL
-
XLL(XML Linking Language)
TEI(Text Encoding Initiative)와 HyTime(Hypermedia/Time-based Structuring Language) 표준에기본
양방향, 다중방향링크기능제공
XLL은두부분(XLink, XPointer)으로표현
XML-LINK Type(선언가능한값) SIMPLE, EXTENDED, LOCATOR, GROUP, DOCUMENT
64 / 100
-
XLL의 특징
어떤엘리먼트로도링크표현가능
링크를어떻게처리하는가에대한정보를지정가능
XML 문서에포함되지않은리소스를포함가능
한개의링크가 3개이상의리소스를갖는것이가능
리소스와링크를분리가능
쌍방향링크를기술가능
65 / 100
-
HTML vs. XML Link
HTML
URL은 하나의 문서만을 가르킬수 있다.
문서간의연관성, 기록을보관하는 개념 없음
XML
다방향링크 가능
모든 element를 linking element화 가능
링크하는문서와 동일한파일에저장불필요
HTML의 태그수용
66 / 100
-
Simple Links
두리소스사이연결(HTML link와유사)
예
Link Text
- Locator : other resource - a URL, a query, an XPointer
DTD
XML-LINK CDATA #FIXED “SIMPLE”ROLE CDATA #IMPLIEDHREF CDATA #REQUIREDTITLE CDATA #IMPLIEDCONTENT-ROLL CDATA #IMPLIEDCONTENT-TITLE CDATA #IMPLIEDSHOW (EMBED | REPLACE | NEW) “REPLACE”ACTUATE (AUTO | USER) “USER”BEHAVIOR CDATA #IMPLIED
>
67 / 100
-
Simple Link 예
engine)+>
XML-LINK CDATA #FIXED "SIMPLE"
ROLE CDATA #IMPLIED
HREF CDATA #REQUIRED
TITLE CDATA #IMPLIED
INLINE (TRUE|FALSE) "TRUE"
CONTENT-ROLE CDATA #IMPLIED
CONTENT-TITLE CDATA #IMPLIED
SHOW
EMBED|REPLACE|NEW) "REPLACE“
ACTUATE (AUTO|USER) "USER"
BEHAVIOR CDATA #IMPLIED
>
심마니
야후! 코리아
slink.dtd
slink.xml
68 / 100
../../../DATA/수업/XML%20책/slinkxsl.xml../../../DATA/수업/XML%20책/slinkxsl.xml
-
Extended links
Extended links DTD 예
XML-LINK CDATA #FIXED “EXTENDED“
ROLE CDATA #IMPLIED
TITLE CDATA #IMPLIED
INLINE (TRUE | FALSE) "TRUE"
CONTENT-ROLE CDATA #IMPLIED
CONTENT-TITLE CDATA #IMPLIED
SHOW (EMBED | REPLACE | NEW) "REPLACE"
ACTUATE (AUTO | USER) "USER"
BEHAVIOR CDATA #IMPLIED
>
69 / 100
-
Extended links
Extended Links : 두개이상의 리소스사이관계표현
내가 즐겨 찾는 곳은
여기
-
XLL(Extended links 예)
71 / 100
-
XPointer
문서의계층적인엘리먼트트리구조에서위치와관계를정의하는문법을제공
XPointer 구조 번지지정의기본 단위
인수 : (Instance, NodeType, (Attr, Val)* )
child(2,CHAP).(4,SEC).(3, Par)
child(1,CHAP,LANG,EN)
72 / 100
-
XPointer(Location Terms)
Absolute Location Terms
ROOT()
문서의 최상위 엘리먼트를 지정, 즉 문서 전체를 지정
HERE()
링크하는 엘리먼트 자체를 지정
ID(NAME)
문서 내에서 ID 값을 갖는 엘리먼트
DITTO()
한 쌍의 XPointer 중 두 번째 XPointer의시작에만 사용가능하고, 단순히 첫번째 항의 표기를 복제한다
HTML(NAMEVALUE)
HTML A 요소의 NAME 속성과 일치하는 값을 취하여, HTML의 구역 식별자와 같은서비스를 제공
73 / 100
-
XPointer(Location Terms)
Relative Location Terms
child()
위치 소스의 자식(직접 아래) 엘리먼트들을 선택
descendant()
위치 소스에 포함된 모든 엘리먼트(1단계이상)
ancestor ()
위치 소스의 부모 엘리먼트들을 선택
preceding ()
위치 소스 이전에 나오는 엘리먼트들을 선택
following()
위치 소스 다음에 나오는 엘리먼트들을 선택
psibling()
위치 소스 이전에 나오는 형제 엘리먼트들을 선택
fsibling()
위치 소스 다음에 나오는 형제 엘리먼트들을 선택
74 / 100
-
XPointer(Location Terms 예)
Spanning Location Term
id(a23).span(child(1), child(3))
String Location Term
id(a27).string(1, worms, 4) --- ‘s’
id(a27).string(5, ’!’, 1, 1)
75 / 100
-
XLL(XPointer 사용 예)
Polonius (LF)
crossing downstageFare you well,
my lord. To Ros.
You go to seek Lord Hamlet? There he is.
• ID(a27).CHILD(2,DIRECTION) : "To Ros."
• ID(a27).CHILD(2,.) : "crossing downstage".
– . : candidate elements of any type are matched
• ID(a27).CHILD(2,*CDATA) : "Fare you well, my lord."
– *CDATA : selects only untagged(pseudo-element) sub-portions of an element
• ID(a27).CHILD(2,*)
– * : selects among child elements and pseudo-elements
– selects the second element or pseudo-element among the children, the line-break between the "SPEAKER" and "DIRECTION" elements.
76 / 100
-
XPath
Define
As XML Path Language (XPath), with XML separate language spec.
Question notation that do XML documents' elements and text to do filtering
with addressing .
Declarative expression to be not procedural notation
77 / 100
-
XPath's action principle
XPath
HK Jubg
MIE
Document Root
booklist
book
title
writer
publish
XPath
HK Jung
MIE
78 / 100
-
Location Expression
/ : Child Operator of present node return.
// : In Document to Recursive Descent Operator all relevant node returns.
. :current context
* :Regardless of element name by Wildcard all node conversions
@ : Attribute's attribute node return.
@* : Wildcard that replace all attribute nodes of node.
: : As Namespace Operator, Namespace's Prefix return.
() : Group Operator
[] : filters
79 / 100
-
Finding Node
General method to get node that want at node
expression : “/”
Appoint position using relative pass from present node using "/"
that is child operator mainly.
Form :
Finding writer node
80 / 100
-
Finding Attribute
Expression that find Attribute at node
Expression : “@”
Form :
Finding books attribute
81 / 100
-
Recursive Descent Operator
In element name regardless of Context Node's position path
appointment
expression : “//”
"//" Operator replaces node that escape relative route and have
name of appropriate element been in what position of present
document.
82 / 100
-
스타일시트
CSS(Cascading Style Sheet)
XSL(eXtensible Style sheet Language)
XML 데이터 및문서와 함께 사용하도록설계된 스타일시트언어
XSLT, XSL-FO
CSS/XSL 처리
HTML,
RTF,
raw text,
etcCSS/
XSL
HTML/
XMLformatting
Processor
83 / 100
-
Using CSS with XML
Why use CSS with XML?
Easy to learn and implement
Already at work in the Web community
Works with HTML
CSS does have a downside
Can’t generate text
Can’t grab an item from one place and use it again in another place
Isn’t programming language
Use a simple box-oriented formatting model
84 / 100
-
Example
TITLE URL {
font-family: verdana;
font-size: 70%;
font-weight: bold;
list-style-type: square;
cursor: default;
}
TITLE {
margin: 10% 10% 10% 10%
}
TITLE {
margin: 10% 10%
}
85 / 100
-
What is XSL?
eXtensible Style sheet Language
XML provide information about the structure of a document
XSL create style sheets for XML document
Formatting information
How to format the element, contents for viewing by user (ex, web browser)
The following design
Over the internet, XML syntax, subset of DSSSL
Mapping of CSS into XSL, ease to create
DSSSL의서브셋으로구성 XML 문서를 다른 XML 또는 비 XML 문서로변환
(Transformation) : XSLT
XML 문서의 구조를변경 (Formatting Object)
86 / 100
-
Why Stylesheet?
Reuse
the same content can look different in different contexts
Multiple output formats
different media (paper, online), different sizes (manuals, reports), different
classes of output devices (workstations, hand-held devices)
Styles tailored to the reader's preference
print size, color, simplified layout for audio readers
Standardized styles
corporate stylesheets can be applied to the content at any time
Freedom from style issues for content authors
technical writers needn't be concerned with layout issues because the
correct style can be applied later
87 / 100
-
XSL
특정엘리먼트가어떻게디스플레이가능한출력으로변환되는지기술
서식규칙구성 패턴(Pattern) : XML 문서의 엘리먼트 위치, 유형을 정의
표현정보(Action) : 서식규칙내의 패턴과 정합되는엘리먼트가 어떻게 표현되는지 기술
rule
pattern
action
XML XSL HTML/XML/RTF/…
88 / 100
-
A construction rule
Patterns
Choose which elements to apply which style rules to
Have a target-element (matched in document)
Supply a type attribute (matched in element)
Actions
Objects to create in the output tree
Directly create flow objects, add literal text
89 / 100
-
XSLT example
Hydrogen
H
1
1.00794
20.28
13.81
0.0899
Helium
He
2
4.0026
4.216
0.95
-
XSL templates
Template rule is important part of XSL style sheet
xsl:template element
Have the “match” attribute : node identification
xsl:apply-templates element : Use to handle child node
Template ruleattribute
91 / 100
-
XSL Example
report.xslreport.xml
92 / 100
-
XSL Example
93 / 100
-
XSL Example
XSL Example
94 / 100
-
XML 문서 예
오늘의 차세대 인터넷 언어(XML)에 대한 수업은 아마도흥미있고, 보람된 수업이 될 것입니다. 많은 학생들의 참여를바랍니다.
수업시간은 월요일 7,8 교시이고요, 장소는 매체원원격강의실입니다. 감사합니다 !
95 / 100
-
XSL 문서예
메모
XML + XSL
96 / 100
../../../DATA/수업/XML%20책/ex1xsl.xml
-
XSLT 문서예
메모
메모
memo 엘리먼트의하위 엘리먼트
97 / 100
-
XSLT 문서예
는엘리먼트를만나면 태그를실행하는데, 이는
태그내의문자열을가져와서 태그사이에
삽입한다.
Body 엘리먼트를만나면 태그를출력하고하위엘리먼트처리
실행
98 / 100
-
XSLT 문서예
메모
오늘의 차세대 인터넷 언어(XML)에대한 수업은 아마도 흥미있고, 보람된 수업이 될 것입니다. 많은 학생들의참여를 바랍니다.
수업시간은 월요일 7,8 교시이고요, 장소는 매체원원격강의실입니다. 감사합니다 !
변환된문서
99 / 100
-
XSL:formatting object
XML 내용을사용자에게어떻게표현할지를나타내기위해사용하는어플리케이션
HTML+CSS 보다더복잡한레이아웃모델제시
더일반적인이용을위해설계
100 / 100
-
XSL:formatting object
XSL 포맷팅모델은사각형영역에기본
4개의다른종류의사각형영역으로구분 Area container
(머리글, 본문, 바닥글, 왼쪽/오른쪽여백)
Block area(단락, 리스트)
Line area(블록 내텍스트의 한 행)
Inline area(문자, 각주, 수학식과같은행의일부)
101 / 100
-
XSL:FO 처리
result tree Flow Object Tree
XSL
Processor
Display
Processor
Parser
XSLT
Processor
XML
DocumentXSL
StyleSheet
XSL Formatting Object
Flow Object Semantics
Engine
Output
XSLT, XPath
Specification
Formatted
result
Transform
102 / 100
-
XML 도구
XML 문서
Editor
Convert
DTDEditor
DataBase
Formatter
Viewer
Browser
Server
Parser+응용
(Java, JavaScript)
103 / 100
-
XML 문서처리 모델
포맷팅처리 표시처리
스타일 설계처리 폰트
리소스
XSL
포맷지정
물리적구조정보
CSS 테이프
CD-ROM
책Style Editor
Browser/
Viewer
XML문서
편집처리
DTD 설계처리
DTD
DTD Editor
논리적구조정보
XML Editor
기존문서Converter/
Filter
문서정보검색
검색엔진
문서가공
EDI, CALS, 전자출판, Workflow S/W
XML 문서
문서저장및 관리
104 / 100
-
W3C’s long term goals
Web for Everyone
regardless of language, user capabilities, geographical location, device used for access,…
Web on Everything
not only PC, but Phones, PDA, Television,…
Knowledge Base, Advanced data searching and sharing
information for both human and machine processing
Trust and Confidence
technologies for collaborative environment
a Web with accountability, security, confidence, and confidentiality
105 / 100
-
Slides’ title here
Thank you for your attention!!