分享
 
 
 

XML in Databases (我们学校以前2004亚洲gis年会的论文,一个韩国教授的报告)(地理信息,地图,坐标)

王朝other·作者佚名  2006-01-31
窄屏简体版  字體: |||超大  

XML in Databases

YoonJoon Lee (李 潤 俊)韓國科學技術院

Contents

• What is XML?

• XML Data vs Documents

• Store and retrieve XML in RDB

• GML

What is XML?

– A markup language that you can use to create your own tags

– Created by W3C to overcome the limitations of HTML

– Based on SGML(Standard Generalized Markup Language – “Sounds great, maybe later), used in publishing industry

– Designed with the Web in mind

Origins of XML

– In 1996, Jon Bosak convinced that W3C to let him form a committee on using SGML on the Web.

– November, the committee has created the beginning of a simplified form of SGML, this was XML.

– In March 1997, Bosak released a paper “XML, Java and the Future of the Web.”

– SGML was created for general document structuring, HTML as an application SGML for Web document, XML is a simplification of SGML for general Web use.

A Sample XML document

<address>

<name>

<title>Mrs.</title>

<first-name>Mary</first-name>

<last-name>McGoon</last-name>

</name>

<street>1401 Main Street</street>

<city state=“NC”>Anytown</city>

<postal-code>34829</postal-code>

</address>

Tags, elements and attributes

DTD (1/2)

– Document type definition

– Extensible in XML, a dialect of XML

• RDF, HL7 SGML/XML, MathML, XML/EDI, FDX

– Describes what tags the markup language has, what tags’ attribute may be, and how they may be combined.

– Specifies very clearly what information may or may not be included in markup language.

– DTD syntax is different from ordinary XML syntax.

DTD (2/2)

<!-- address.dtd -->

<!ELEMENT address (name, street, city, state, postal-code)>

<!ELEMENT name (title? first-name, last-name)>

<!ELEMENT title (#PCDATA)>

<!ELEMENT first-name (#PCDATA)>

<!ELEMENT last-name (#PCDATA)>

<!ELEMENT street (#PCDATA)>

<!ELEMENT city (#PCDATA)>

<!ELEMENT state (#PCDATA)>

<!ELEMENT postal-code (#PCDATA)>

Is XML a DB?

• “collection of data”

• Advantages: self-describing, portable, data in tree or graph structure

• Disadvantages: verbose, slow access

+ storage, schemas, query languages, programming interfaces, …

- efficient storage, indexes, security, transactions and data integrity, multi-user access. Trigger queries across multiple documents, …

Why DB?

• Want to expose legacy data

• Looking for a place to store web pages

• Database used by an e-commerce application in which XML is used as a data transfer

• Interested in Data or Documents

Data vs. Documents

• Used simply as a data transport between the database and a application?

• Integral use as in the case of XHTML and DocBook documents?

Data-Centric Documents (1/2)

• For machine consumption

Ex) sales orders, flight schedules, …

• Fairly regular structure, fine-grained data and little or no mixed content, no significant order in sibling

Data-Centric Documents (2/2)

<FlightInfo>

<Airline>ABC Airways</Airline> provides <Count>three</Count> non-stop flights daily from <Origin>Dallas</Origin> to <Destination>Fort Worth</Destination>. Departure times are <Departure>09:15</Departure>, <Departure>11:15</Departure>, and <Departure>13:15</Departure>. Arrival times are minutes later.

</FlightInfo>

<Flights>

<Airline>ABC Airways</Airline>

<Origin>Dallas</Origin>

<Destination>Fort Worth</Destination>

<Flight>

<Departure>09:15</Departure>

<Arrival>09:16</Arrival>

</Flight>

<Flight>

<Departure>11:15</Departure>

<Arrival>11:16</Arrival>

</Flight>

<Flight>

<Departure>13:15</Departure>

<Arrival>13:16</Arrival>

</Flight>

</Flights>

Document-Centric Documents (1/2)

• For human consumption

Ex) books, email, advertisement, …

• Less regular or irregular structure, larger grained data, lots of mixed contents, almost significant order in sibling

Document-Centric Documents (2/2)

<Product>

<Intro>

The <ProductName>Turkey Wrench</ProductName> from <Developer>Full Fabrication Labs, Inc.</Developer> is <Summary>like a monkey wrench, but not as big.</Summary>

</Intro>

<Description>

<Para>The turkey wrench, which comes in <i>both right- and left- handed versions (skyhook optional)</i>, is made of the <b>finest stainless steel</b>. The Readi-grip rubberized handle quickly adapts to your hands, even in the greasiest situations. Adjustment is possible through a variety of custom dials.</Para>

<Para>You can:</Para>

<List>

<Item><Link URL="Order.html">Order your own turkey wrench</Link></Item>

<Item><Link URL="Wrenches.htm">Read more about wrenches</Link></Item>

<Item><Link URL="Catalog.zip">Download the catalog</Link></Item>

</List>

<Para>The turkey wrench costs <b>just $19.99</b> and, if you order now, comes with a <b>hand-crafted shrimp hammer</b> as a bonus gift.</Para>

</Description>

</Product>

Store & Retrieve XML

• File

• RDBMS

• OODBMS

• Special purpose systems for semi-structure data

Storing XML Data in RDBMSs

+ RDBMS: a matured technology

+ RDBMS widely available

+ Less investment to adopt the new technology

+ Easy to be integrated with other existing applications

- Impedance mismatch

– Two level nature of relational schema (tuples and attributes) vs. arbitrary nesting of XML DTD

– Flat structure vs. recursion

– Structure-based and content-based query

Storing XML Data in RDBMSs: Architecture

Storing XML Data in RDBMSs: Issues

• Schema/Data mapping:

– Automate storage of XML in RDBMS

• Query mapping:

– Provide XML views of relational sources

• Result construction:

– Export existing data as XML

XML-Relational Mapping

• Model mapping

– Database schemas represent constructs of the XML document model.

• DTD Independent

[Florescu & Kossmann 99, Yoshikawa, et. al. TOIT01]

• Structure mapping

– Database schemas represent the logical structure of target XML documents

• DTD Dependent

[Shanmugasundaram et. al. VDLB 99]

Model Mapping: Edge, XRel, and XParent

• Edge: a single large table for handing any structures.

• XRel and XParent: four tables

– The structure handling:

• XRel: The structure is coded in the data using region codes (start, end).

• XParent: The structure in a separated “Parent” table (parent-Id, child-Id). (Can be extended to support ancestors in an additional table)

– Partitioning:

• XRel: Partition Edge by content (Element, Data, Attribute)

• XParent: Partition Edge by content and “structure vs non-structure)

– Label-path handling: explicitly as data

Edge (1/3)

• Mapping edges – Edge approach

Edge (2/3)

Edge (3/3)

XRel (1/6)

XRel (2/6)

XRel (3/6)

XRel (4/6)

XRel (5/6)

XRel (6/6)

XParent (1/4)

XParent (2/4)

XParent (3/4)

XParent (4/4)

GML (1/2)

• GML (Geographic Markup Language) = GIS + XML

• GML is an XML-based language for encoding geographic information in order to be stored and transported over the Internet, developed by the OpenGIS Consortium

• GML defines both the geometry and properties of objects that comprise geographic information

GML (2/2)

• GML is a practical application for transferring cartographic information over the Web

• GML allows the data to be controlled on the browser end by the user who receives geometries and geographic features and customizes how the data is to be displayed, instead of transmitting a GIF or JPG map

• Geographic data in GML can be sent to any device with an XML interface

References

• D. Florescu, D. Kossman, Storing and Querying XML Data using an RDBMS. IEEE Data Engineering Bulletin 22(3), 1999

• M. Yoshikawa et al., XRel: A Path-Based Approach to Storage and Retrieval of XML Documents Using Relational Databases, ACM Trans. on Internet Technology, Vol. 1, No. 1, pp 110-141, 2001

• H. Jiang et al., XParent: An Efficient RDBMS-Based XML Database System, In Proc. of ICDE, 2002

• H. Jiang et al., Path Materialization Revisited: An Efficient Storage Model for XML Data, In Proc. of AICE, 2000

• about GML

– http://www.opengis.org

– http://www.isotc211.org

– http://www.w3c.org

– http://gml4j.sourceforge.net

– http://www.expway.net

– http://www.galdosinc.com

Thanks for your attention!

Any Questions?

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有