Chapter 22 xml technologies and applications
This presentation is the property of its rightful owner.
Sponsored Links
1 / 43

Chapter 22 — XML Technologies and Applications PowerPoint PPT Presentation


  • 37 Views
  • Uploaded on
  • Presentation posted in: General

Chapter 22 — XML Technologies and Applications.

Download Presentation

Chapter 22 — XML Technologies and Applications

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


Chapter 22 xml technologies and applications

Chapter 22 — XML Technologies and Applications

Outline22.1Introduction22.2XML Query Language (XML Query)22.3Directory Services Markup Language (DSML)22.4Resource Definition Framework (RDF)22.5XML Topic Maps (XTM)22.6Virtual HyperGlossary (VHG)22.7Channel Definition Format (CDF)22.8Information and Content Exchange (ICE) Protocol22.9Rich Site Summary (RSS)22.10Platform for Privacy Preferences (P3P)22.11Blocks Extensible Exchange Protocol (BXXP)22.12XML Digital Signatures22.13Extensible Rights Markup Language (XrML)22.14XML Metadata Interchange (XMI)22.15W3C’s XML Protocol22.16XAML


22 1 introduction

22.1 Introduction

  • XML-related technologies

    • XML Query Language

      • Searching and retrieving data from XML documents

    • Directory Services Markup Language (DSML)

      • Describes relational data and metadata so it can be managed by directory services

    • Resource Definition Framework (RDF)

      • Enables description of XML document data

    • XML Topic Maps

      • Information mapping

    • Channel Definition Format (CDF) and Rich Site Summary (RSS)

      • Provide dynamic content

    • Information and Content Exchange (ICE) Protocol

      • Manages content syndication over networks


22 1 introduction1

22.1 Introduction

  • XML-related technologies, cont.

    • Platform for Privacy Preferences (P3P)

      • Describes Web site’s privacy policy

    • Blocks Extensible Exchange Protocol (BXXP)

      • Transfers data over the Internet

    • XML Digital Signatures

      • W3C recommendation for XML implementation of security

    • Extensible Rights Markup Language (XrML)

      • Licensing proprietary digital content

    • XML Metadata Interchange (XMI)

      • Exchanging program-modeling data


22 2 xml query language xml query

22.2 XML Query Language (XML Query)

  • Uses XSL patterns to search XML documents for specific data.

  • Similar to using SQL to search in relational databases


22 2 xml query language xml query1

22.2 XML Query Language (XML Query)


22 3 directory services markup language dsml

22.3 Directory Services Markup Language (DSML)

  • DSML

    • Manage relational resources and metadata

    • Use with XML

      • dynamically match data across networks.

    • Standard vocabulary and schema

    • Directories

      • handle distributed Web-based applications

    • Platform independent


22 3 directory services markup language dsml1

22.3 Directory Services Markup Language (DSML)


22 4 resource definition framework rdf

22.4 Resource Definition Framework (RDF)

  • RDF

    • XML-based language

    • Describes information contained in a resource

      • Web page

      • Web site

      • Meta-data

    • List or catalog information on the Web

    • Evaluate Web sites for rating or digital signature

  • RDF model

    • W3C recommendation

  • RDF Schema Specification v1.0

    • W3C Candidate Recommendation


Simple rdf describes the deitel associates inc web site

Describes resource specified in attribute about

Title element marks up resource name

Define root element rdf:RDF. rdf namespace prefix is for RDF elements. dc namespace prefix is for metadata elements (Dublin Core Metadata Initiative).

1 <?xml version = "1.0"?>2 3 <!-- Fig 22.3 : simple.rdf -->4 <!-- Using RDF -->5 6 <rdf:RDF7 xmlns:rdf = "http://www.w3.org/1999/02/22-rdf-syntax-ns#"8 xmlns:dc = "http://purl.org/dc/elements/1.1/">9 10 <rdf:Description about = "http://www.deitel.com"> 11 <dc:Title>Deitel and Associates, Inc.</dc:Title>12 <dc:Description>13 This is the home page of 14 Deitel and Associates, Inc.15 </dc:Description>16 <dc:Date>2000-5-24</dc:Date>17 <dc:Format>text/html</dc:Format>18 <dc:Language>en</dc:Language>19 <dc:Creator>Deitel and Associates, Inc.</dc:Creator>20 </rdf:Description>21 22 </rdf:RDF>

simple.rdf

Describes the Deitel & Associates, Inc. Web site.


22 4 resource definition framework rdf1

22.4 Resource Definition Framework (RDF)

Fig. 22.4Visualization tool showing simple.rdf. [Courtesy of World Wide Web Consortium]


Links rdf

rdf:Bag element is a container element for an unordered list of resources

Seq element represents an ordered list of resources

Each li element represents an individual resource

1 <?xml version = "1.0"?>2 3 <!-- Fig. 22.5 : links.rdf -->4 <!-- Describing entire Web site -->5 6 <rdf:RDF xmlns:rdf = "http://www.w3.org/1999/02/22-rdf-syntax-ns#"7 xmlns:dc = "http://purl.org/dc/elements/1.1/">8 9 <rdf:Description about = "www.deitel.com">10 <dc:Title>Home page of Deitel products</dc:Title>11 <dc:Creator>Deitel and Associates, Inc.</dc:Creator>12 13 <dc:Subject>14 15 <rdf:Bag ID = "links_1">16 <rdf:li resource = “http://www.deitel.com/books/index.htm"/>17 <rdf:li resource =18 "http://www.deitel.com/services/training/index.htm"/>19 </rdf:Bag>20 21 <rdf:Bag ID = "links_2">22 <rdf:li resource =23 "http://www.deitel.com/announcements/contractors.htm"/>24 <rdf:li resource =25 "http://www.deitel.com/announcements/internships.htm"/>26 </rdf:Bag>27 28 <rdf:Seq ID = "links_3">29 <rdf:li resource = "http://www.deitel.com/intro.htm"/> 30 <rdf:li resource = "http://www.deitel.com/directions.htm"/>31 </rdf:Seq>

links.rdf


Links rdf1

aboutEach attribute provides a description of each resource

32 33 </dc:Subject>34 35 </rdf:Description>36 37 <!-- description of the common feature of the Bag links_1-->38 <rdf:Description aboutEach = "#links_1">39 <dc:Description>About our Products</dc:Description>40 </rdf:Description>41 42 <rdf:Description aboutEach = "#links_2">43 44 <dc:Description>45 Announcements, Opportunities 46 and Internships at Deitel and Associates, Inc.47 </dc:Description>48 49 </rdf:Description>50 51 <rdf:Description aboutEach = "#links_3">52 <dc:Description>All about us</dc:Description>53 </rdf:Description>54 55 <!-- further description of each link -->56 <rdf:Description about = "http://www.deitel.com/books/index.htm">57 58 59 <!-- description of page title -->60 <rdf:Title>61 Books, Multimedia Cyber Classrooms 62 and Complete Training Courses63 </rdf:Title>64 65 </rdf:Description>

links.rdf


Links rdf2

6667 <rdf:Description about =68 "http://www.deitel.com/services/training/index.htm">69 <rdf:Title>Corporate Training Courses</rdf:Title>70 </rdf:Description>71 72 <rdf:Description about =73 "http://www.deitel.com/announcements/contractors.htm">74 <rdf:Title>Looking for Training Contractors</rdf:Title>75 </rdf:Description>76 77 <rdf:Description about =78 "http://www.deitel.com/announcements/internships.htm">79 80 <rdf:Title>81 Internships at Deitel and Associates, Inc.82 </rdf:Title>83 84 </rdf:Description>85 86 <rdf:Description about = "http://www.deitel.com/intro.htm"> 87 88 <rdf:Title>89 Introduction to Deitel and Associates, Inc.90 </rdf:Title>91 92 </rdf:Description>93 94 <rdf:Description about = "http://www.deitel.com/directions.htm">95 <rdf:Title>Our location and how to get there</rdf:Title>96 </rdf:Description>97 98 </rdf:RDF>

links.rdf


22 3 directory services markup language dsml2

22.3 Directory Services MarkupLanguage (DSML)


22 5 xml topic maps xtm

22.5 XML Topic Maps (XTM)

  • Topic Maps

    • ISO Standard

    • Model for navigating and linking resources

    • Topic

      • Basic unit of topic map

      • Represents a subject and references subject data

      • Names

      • Occurrences

        • Topic information resources

        • Role

        • Type

      • Associations

      • Identity

      • Scope

      • Facets


Vehicles xml

Root element topicmap

id attribute identifies each topic (unique)

basename element gives topic a name which applications can use (mandatory)

dispname element displays the topic name to users

topname element describes characteristics of parent topic element

topic element describes each topic in a topic map

sortname element is a name applications use for sorting purposes

types attribute indicates that car is a type of light vehicle

1 <?xml version = "1.0"?>2 3 <!-- Fig. 22.7: vehicles.xml -->4 <!-- simple topic map -->5 6 <topicmap>7 8 <!-- topics -->9 <topic id = "light-vehicle">10 11 <topname>12 <basename>Light weight vehicles</basename>13 <dispname>Passenger vehicles</dispname>14 <sortname>Light weight vehicles</sortname>15 </topname>16 17 </topic>18 19 <topic id = "heavy-vehicle">20 21 <topname>22 <basename>Heavy weight vehicles</basename>23 <dispname>Construction vehicles</dispname>24 <sortname>Heavy weight vehicles</sortname>25 </topname>26 27 </topic>28 29 <topic id = "car" types = "light-vehicle">30 31 <topname>32 <basename>ABC&apos;s car</basename>33 <dispname>Sports car</dispname>34 <sortname>car</sortname>35 </topname>

vehicles.xml


Vehicles xml1

Attribute loctype specifies location type at which topic occurs

Attribute occurl describes occurrence role

occurs element describes topic occurrences

36 37 <!-- occurrences of topic car -->38 <occurs occrl = "webpage" loctype = "URL">39 http://www.abcsportscar.com/new40 </occurs> 41 42 <occurs occrl = "order-online" loctype = "URL">43 http://www.abcsportscar.com/outlet44 </occurs> 45 </topic>46 47 <topic id = "earth-mover" types = "heavy-vehicle">48 49 <topname>50 <basename>ABC&apos;s heavy duty mover</basename>51 <dispname>Earth movers</dispname>52 <sortname>Earth mover</sortname> 53 </topname>54 55 <!-- occurrences of topic earth-mover -->56 <occurs occrl = "webpage" loctype = "URL">57 http://www.abcsportscar.com/heavy-vehicles58 </occurs> 59 60 </topic> 61 62 <topic id = "make">63 <topname>64 <basename>ABC, Inc.</basename>65 </topname>66 </topic>67 68 <topic id = "product">69 <topname>70 <basename>Product</basename>

vehicles.xml


Vehicles xml program output

assoc element represents topic map associations

assocrl element declares association topics

71 </topname>72 </topic>73 74 <!-- associations -->75 <assoc type = "make">76 <assocrl type = "product">car</assocrl>77 <assocrl type = "product">earth-mover</assocrl>78 </assoc>79 80 </topicmap>

vehicles.xml

Program Output

C:\tmproc>c:\Python\python -i tmproc.py vehicles.xmlStarting topic map processing...Parsing vehicles.xml with xmlproc 0.62Finished topic map processing...>>> tm.get_topics()[<tm.Topic light-vehicle>, <tm.Topic make>, <tm.Topic earth-mover>, <tm.Topic car>, <tm.Topic product>, <tm.Topic heavy-vehicle>]>>> tm.get_types_list(tm["car"])[<tm.Topic light-vehicle>]>>> tm.is_type(tm["earth-mover"], tm["heavy-vehicle"])1>>> tm.get_topics_of_type(tm["heavy-vehicle"])[<tm.Topic earth-mover>]>>> topic = tm["car“]>>> topicname = topic.get_names()[0]>>> n = topicname.get_basenames()[0]


Vehicles xml program output1

>>> n.get_name()"ABC's car">>> dispname = topicname.get_dispnames()[0]>>> dispname.get_name()'Sports car'>>> firstOccur = topic.get_occurrences()[0]>>> firstOccur.get_rolename()'webpage'>>> secondOccur = topic.get_occurrences()[1]>>> secondOccur.get_rolename()'order-online'>>> association = tm.get_associations()[0]>>> association.get_type()<tm.Topic make>

vehicles.xml

Program Output


22 5 xml topic maps xtm1

22.5 XML Topic Maps (XTM)


22 5 xml topic maps xtm2

22.5 XML Topic Maps (XTM)


Chapter 22 xml technologies and applications

22.6 Virtual HyperGlossary (VHG)

  • VHG

    • Platform-independent specification for terminology

    • Attaches semantic information to structures data

      • Attach wordy definitions to tags

    • Framework of hyper-linked glossaries, dictionaries and thesaurus

    • Uses XML DOM

      • Create hierarchical structure for glossaries

        • Search and index

    • Additional software tools

      • Lexical markup of documents

      • Advanced indexing

      • Concept-map generation

      • translation


22 6 virtual hyperglossary vhg

22.6 Virtual HyperGlossary (VHG)


22 7 channel definition format cdf

22.7 Channel Definition Format (CDF)

  • CDF

    • Microsoft XML application

    • Push technology

      • Automatically sends content to users

    • Define channels to deliver content to subscribed users

    • Refer users between sites


Simple html internet explorer and cdf

Links to a CDF document

1 <!-- Fig. 22.11 : simple.html -->2 <!-- Simple example of CDF -->3 <!doctype html public"-//w3c//dtd html 4.0 transitional//en">4 <html>5 6 <body>7 <a href = "simple.cdf">Get a simple channel!!</a>8 </body>9 10 </html>

simple.html

Internet Explorer and CDF

Logo icon


Simple cdf

Root element channel describes channel for Web site

abstract element provides description for the channel

Defines a channel logo

style set to icon defines the logo as an icon for the channel

item elements provides a Web page

1 <?xml version = "1.0"?>2 3 <!-- Fig. 22.13 : simple.cdf -->4 <!-- Simple example of CDF -->5 6 <!DOCTYPE channel SYSTEM "cdf.dtd">7 8 <channel href = "http://www.deitel.com">9 10 <title>Deitel Products</title>11 <abstract>An example of CDF</abstract>12 13 <logo href = "http://www.deitel.com/images/logotiny.gif"14 style = "ICON"/>15 16 <item href = 17 "http://www.deitel.com/books/1999/jhtp3/jhtp3toc.htm">18 <title>Java How to Program 3rd Edition</title>19 <logo href =20 "http://www.deitel.com/images/0130125075_small.jpg"21 style = "ICON"/>22 </item>23 24 <item href = 25 "http://www.deitel.com/books/1999/iw3htp/iw3htp_toc.htm">26 <title>Internet and World Wide Web How to Program</title>27 <logo href = 28 "http://www.deitel.com/images/0130161438_small.jpg"29 style = "ICON"/>30 </item>31 32 </channel>

simple.cdf


22 7 channel definition format cdf1

22.7 Channel Definition Format (CDF)


22 8 information and content exchange ice protocol

22.8 Information and Content Exchange (ICE) Protocol

  • ICE

    • Facilitate redistribution and reuse of Web content

    • Automates data syndication, transfer and analysis

    • Request/response model

    • Manages subscriptions

    • Data contained in packages

    • Sequenced package model

    • Pull model

    • Querying between systems

    • Submitted to W3C for recommendation


22 8 information and content exchange ice protocol1

22.8 Information and Content Exchange (ICE) Protocol


22 9 rich site summary rss

22.9 Rich Site Summary (RSS)

  • RSS

    • Netscape technology

      • implements push technology

      • Use to create channels which automatically distribute information


22 9 rich site summary rss1

22.9 Rich Site Summary (RSS)


22 10 platform for privacy preferences p3p

22.10 Platform for Privacy Preferences (P3P)

  • P3P

    • W3C recommendation

    • Help Web users manage how their personal information is collected and used on the Internet

    • Web site uses P3P technology

      • Specifies what information site requests and how site uses info.

      • Browser interprets information and compares with user-defined privacy settings


22 10 platform for privacy preferences p3p1

22.10 Platform for Privacy Preferences (P3P)


22 11 blocks extensible exchange protocol bxxp

22.11 Blocks Extensible Exchange Protocol (BXXP)

  • BXXP

    • Alternative to HTTP for transferring data over the Internet

    • Used to develop more specific protocols

    • Sends “blocks” of XML data over TCP

      • Can be simultaneous

    • Still under development


22 11 blocks extensible exchange protocol bxxp1

22.11 Blocks Extensible Exchange Protocol (BXXP)


22 12 xml digital signatures

22.12 XML Digital Signatures

  • Security concerns with XML

    • Changing of externally referenced DTDs and stylesheets

      • alters information

      • Leaves security gaps

      • Deletes information

  • Digital signature

    • Provides a way to modify documents

    • W3C specification for digital signatures

    • Algorithms

      • DSS

      • SHA-1

      • Outside algorithms and security models


22 12 xml digital signatures1

22.12 XML Digital Signatures

  • Digital signature

    • Apply to any type of data

    • Placed within XML document

    • Signed data

      • Enveloped by signature

      • Envelops the signature

      • Detached from the signature

  • IBM XML Security Suite

    • Signature program for B2B transactions

    • Technologies

      • Digital signatures

      • Elementwise encryption

      • Access control

      • Public-key cryptography

      • Hash authentication


Chapter 22 xml technologies and applications

22.12 XML Digital Signatures


22 13 extensible rights markup language xrml

22.13 Extensible Rights MarkupLanguage (XrML)

  • XrML

    • ContentGuard Inc. proprietary XML application

    • Electronic content providers

      • Specify rights, fees and use conditions

        • Display to users

        • Implement by computers invisibly

      • Specify subscription, rental and even transter of e-content

        • Use DRM with XrML

      • Digital rights management

        • Ensure e-content protection (automatic enforcement by software)

    • Supports several server platforms


Chapter 22 xml technologies and applications

22.13 Extensible Rights MarkupLanguage (XrML)


22 14 xml metadata interchange xmi

22.14 XML Metadata Interchange (XMI)

  • Meta Object Facility (MOF)

    • Contains Unified Modeling Language (UML)

    • Describes all software modeling environments

  • XML

    • Integrated XML, UML and MOF

    • Developers working with different tools and development environments can collaborate to create compatible applications

    • Stream-based Model Interchange Format (SMIF)

      • Enables streaming object data from remote databases and file storage


22 14 xml metadata interchange xmi1

22.14 XML Metadata Interchange (XMI)


22 15 w3c s xml protocol

22.15 W3C’s XML Protocol

  • XML-based messaging

    • design envelope for interoperable XML encapsulation and transfer

    • convention for making remote procedure calls (RPC)

    • mechanism for serializing nonsyntactic data

    • method to bind HTTP to XML

    • Simple Object Access Protocol (SOAP)

      • Shapes envelope and serialization technologies

    • Extensibility, simplicity, modularity and interoperability


  • Login