Introduction to XML and Web Service - PowerPoint PPT Presentation

1 / 37
About This Presentation
Title:

Introduction to XML and Web Service

Description:

Drag tables from Server Explorer. One table. Two tables with relation. View Code. XML File: ... Style Sheets. XSL: Extensible Stylesheet Language ... – PowerPoint PPT presentation

Number of Views:17
Avg rating:3.0/5.0
Slides: 38
Provided by: cob3
Learn more at: http://userwww.sfsu.edu
Category:

less

Transcript and Presenter's Notes

Title: Introduction to XML and Web Service


1
Introduction to XML and Web Service
  • ISYS 512/812

2
HTML vs XML
  • HTML is a language specifically designed for
    displaying information in browser. It doesnt
    carry information about the structure of the
    content held within its page.
  • XML (Extensible MarkUp Language) is a language
    used to represent data in a form that does not
    rely on any particular proprietary technology.
    It uses user-defined tags to give meaningful
    names to data elements. With XML, we separate the
    data content from the data presentation.

3
HTML
ltbodygt lth1gtMy Favorite Booklt/h1gt lth1gtISBN -
1-34567-04-01lt/h1gt ltH1gtAuthorslt/H1gt lth3gtJohn
Smithlt/h1gt lth3gtPeter Chenlt/h1gt lth1gtPrice
45.00lt/h1gt lth1gtDescription This is a grerat
booklt/h1gt lt/bodygt
4
XML
lt?xml version"1.0" ?gt ltBooksgt ltBookgt ltISBNgt1-3456
7-04-01lt/ISBNgt ltAuthorsgt ltAuthorNamegtJohn
Smithlt/AuthorNamegt ltAuthorNamegtPeter
Chenlt/AuthorNamegt ltAuthorNamegtDavid
Chaolt/AuthorNamegt lt/Authorsgt ltPricegt
45.00lt/Pricegt ltDescriptiongtThis is a grerat
booklt/Descriptiongt lt/Bookgt ltBookgt ltISBNgt1-34567-04
-02lt/ISBNgt ltAuthorsgt ltAuthorNamegtAdam
Smithlt/AuthorNamegt lt/Authorsgt ltPricegt
25.00lt/Pricegt ltDescriptiongtThis is a second
great booklt/Descriptiongt lt/Bookgt lt/Booksgt
5
XML Document
  • Well-formed documents
  • Documents comply with the rules of XML syntax.
  • Valid documents
  • Documents that are well-formed and comply with a
    XML schema or Document Type Definition (DTD is a
    file containing the rules used to define the
    document).

6
Well-Formed Documents
  • There is only one root node.
  • All elements must have a start tag and an end tag
    (except for an empty element, see example below)
    Elements must be nested correctly.
  • If an element has an attribute, the attribute
    value must be quoted.
  • An empty element with an attribute
  • ltprice US49 /gt
  • Note XML is case sensitive.

7
XML Documents
  • The XML declaration
  • lt?xml version1.0 ?gt
  • Note xml should be in lower case.
  • Namespaces
  • Define a namespace xmlnsuri where the Uniform
    Resource Identifier is a unique identifier and is
    often a URL.
  • Use a namespace to make a tag unique
  • ltnamespace TagNamegt
  • Elements
  • Each start-tag/end-tag pair, with the data that
    lies between them, is an element.
  • Ex. ltAuthorNamegtJohn Smithlt/AuthorNamegt
  • The start and end tag must be in the same case.

8
  • Attributes Elements can have attributes. These
    are values that are passed to the application,
    but not constitute part of the content of the
    element. Attributes are included as part of the
    elements start tag, and values must be enclosed
    in quote marks.
  • ltFood healthyyesgtSpinachlt/Foodgt
  • ltFood healthyyes tastynogtCarrotlt/Foodgt

9
  • Comments
  • lt!--This is a comment --gt
  • Processing instructions These allow documents to
    contain instructions for applications using XML
    data.
  • lt?NameOfTargetApplication Instructions for
    application?gt

10
Tree View of XML
Books
Book
Book
ISBN
Authors
Price
Description
ISBN
Authors
Price
Description
Author
Author
Author
11
Valid Documents
  • Well-formed documents that conform to an XML
    schema.
  • XML parsers are programs that are able to
    validate an XML document against schema.

12
XML SchemaDefinition of an XML Document
  • Namespaces Allow element names to be qualified
    to avoid name collisions.
  • Complex and simple types
  • Elements that contains other elements are complex
    type.
  • Cardinality
  • minOccurs 0 for optional element.
  • maxOccurs specified number or unbounded
  • Compositor
  • Sequence defines an ordered sequence of
    subelements.
  • Choice defines a choice between several possible
    elements.
  • Constraints
  • Uniqueness contraint

13
VS.Net Tools for XML Document and Schema
  • XML Schema
  • Project/Add New Item/XML Schema
  • Drag tables from Server Explorer
  • One table
  • Two tables with relation
  • View Code
  • XML File
  • Project/Add New Item/XML File
  • Add tags

14
Creating XML File
lt?xml version"1.0" encoding"utf-8"?gt ltbooksgt
ltbookgt ltauthorgtChao lt/authorgt
ltisbngt12345lt/isbngt ltpricegt45lt/pricegt
lt/bookgt ltbookgt ltauthorgtSmithlt/authorgt
ltisbngt3456lt/isbngt ltpricegt50lt/pricegt
lt/bookgt ltbookgt ltauthorgtChenlt/authorgt
ltisbngt3445lt/isbngt ltpricegt56lt/pricegt
lt/bookgt lt/booksgt
15
Read XML File
  • DataSet objects ReadXML method.
  • Add a new dataset object
  • Project/Add New Item/DataSet
  • Use the ReadXML method to read XML file into the
    dataset.

Dim MyDs As New DataSet2 MyDs.ReadXml("C\VBExampl
esVS05\TestXML\TestXML\XMLFile1.xml",
XmlReadMode.InferSchema) Dim objDataView As New
DataView(MyDs.Tables("Book")) DataGridView1.DataSo
urce objDataView
16
Write XML Schema
  • Dim MyDs As New DataSet2
  • MyDs.ReadXml("C\VBExamplesVS05\TestXML\TestXML\XM
    LFile1.xml", XmlReadMode.InferSchema)
  • MyDs.WriteXmlSchema("c\MyDsSchema.txt")
  • MyDs.WriteXml("c\MyDsXML.txt")

17
Style Sheets
  • XSL Extensible Stylesheet Language
  • Tell the browser how to display the XML document.
  • With a style sheet, all of the style rules are
    kept in one file and the source document simply
    links to this file.
  • File extension .CSS

18
  • Browser screen structure
  • Page
  • Area
  • Block Flow Object Taking up the whole line.
  • In-Line Flow Object Several in-line objects may
    be on the same line.

19
lt?xml version"1.0" ?gt lt?xmlstylesheet
href"books.css" type"text/css"
?gt ltBooksgt ltBookgt ltbtitlegtMy Favorite
Booklt/btitlegt ltISBNgt1-34567-04-01lt/ISBNgt ltAuthors
gt ltAuthorNamegtJohn Smithlt/AuthorNamegt ltAuthorN
amegtPeter Chenlt/AuthorNamegt lt/Authorsgt ltPricegt
45.00lt/Pricegt ltDescriptiongtThis is a grerat
booklt/Descriptiongt lt/Bookgt ltBookgt ltbtitlegtMy
Second Favorite Booklt/btitlegt ltISBNgt1-34567-04-02lt
/ISBNgt ltAuthorsgtAdam Smithlt/Authorsgt ltPricegt
25.00lt/Pricegt ltDescriptiongtThis is a second
great booklt/Descriptiongt lt/Bookgt lt/Booksgt
20
btitle displayblock font-family Aerial,
Helvetica font-weight bold font-size
20pt color 9370db text-align
center ISBN displayblock font-family
Aerial, Helvetica font-weight
bold font-size 12pt color
c71585 text-align left Authors display
inline font-family Aerial, Helvetica font-sty
le italic font-size 10pt color
9370db text-align left
21
Price displayblock font-family Aerial,
Helvetica font-size 12pt color
ff1010 text-align left Description
displayblock font-family Aerial,
Helvetica font-size 12pt color
ff1010 text-align left
22
Demo
  • ASPNet/FavoriteBook.htm

23
Web Service
  • XML Web Service
  • Web services are classes that are stored on the
    web which can instantiate and use in both Windows
    and Web applications.

24
To Add a New Web Service
  • Website/Add New Item/Web Service
  • Web Service has an extension ASMX
  • The CodeBehind File is stored in the App_Code
    folder.
  • Web Services are defined as Web Method
  • ltWebMethod()gt _

25
A Web Service Example
Public Class MyWebService Inherits
System.Web.Services.WebService ltWebMethod()gt
Public Function GetCname(ByVal CID As String) As
String Dim strConn As String
"ProviderMicrosoft.Jet.OLEDB.4.0Data Source
c\salesDB.mdb" Dim objConn As New
OleDbConnection(strConn) Dim strSQL As
String "select from customer where CID '"
CID "'" Dim objComm As New
OleDbCommand(strSQL, objConn)
objConn.Open() Dim objDataReader As
OleDbDataReader objDataReader
objComm.ExecuteReader() If
objDataReader.Read() Then Return
objDataReader("Cname") Else
Return ("Not exist") End If End
Function End Class
26
Web Service Description Language (WSDL)
  • A WSDL file is an XML document containing a
    complete description of the web service. It
    shows a web services name, methods, and
    parameter types.
  • Help page After entering web services URL, a
    help page is displayed. You can click the
    Service Description link to see the WSDL file.

27
Returning a Complex Data Type
  • Examples
  • ArrayList
  • DataSet
  • User-defined object
  • Customer Class

28
Returning an ArrayList
ltWebMethod()gt Public Function GetCnameRating(ByVa
l CID As String) As ArrayList Dim strConn
As String "ProviderMicrosoft.Jet.OLEDB.4.0Data
Source c\salesDB.mdb" Dim objConn As
New OleDbConnection(strConn) Dim strSQL
As String "select from customer where CID
'" CID "'" Dim objComm As New
OleDbCommand(strSQL, objConn)
objConn.Open() Dim objDataReader As
OleDbDataReader objDataReader
objComm.ExecuteReader() Dim temp As New
ArrayList If objDataReader.Read() Then
temp.Add(objDataReader("Cname"))
temp.Add(objDataReader("Rating"))
Else temp.Add("Not exist")
End If Return temp End Function
29
Returning a DataSet
ltWebMethod()gt Public Function GetCustomerDataSet()
As DataSet Dim strConn As String
"ProviderMicrosoft.Jet.OLEDB.4.0Data Source
c\salesDB.mdb" Dim objConn As New
OleDbConnection(strConn) Dim strSQLSelect
As String "select from customer" Dim
objDataSet As New DataSet() Dim
objAdapter As New OleDbDataAdapter(strSQLSelect,
objConn) objAdapter.Fill(objDataSet,
"Customer") Return objDataSet End
Function
30
Consuming Web Services from a Windows Application
  • Add a web reference to the web service
  • Project/Add Web Reference
  • Local computer
  • Imports the web service
  • Declare a web service class variable.
  • Dim UseWs As New DBWebService
  • Note Web Service CodeBehind file location.

31
Code Example (Windows Project)
Imports TestXML.MyWService Public Class Form3
Private Sub Button1_Click(ByVal sender As
System.Object, ByVal e As System.EventArgs)
Handles Button1.Click Dim MyWs As New
MyWebService Try
MessageBox.Show(MyWs.GetCname(InputBox("enter
cid "))) Catch except As
SystemException MessageBox.Show(except
.Message) End Try End Sub End Class
32
Using a DataSet Returning by Web Service(Web
Project)
Imports DBWS Imports System.Data Partial Class
_Default Inherits System.Web.UI.Page
Protected Sub Page_Load(ByVal sender As Object,
ByVal e As System.EventArgs) Handles Me.Load
Dim UseWs As New DBWebService Dim MyDs
As New dataset MyDs UseWs.GetCustomerDat
aSet() GridView1.DataSource
MyDs.Tables("customer")
GridView1.DataBind() End Sub End Class
33
Reference a Web Service on Internet
  • Mortgage calculator
  • http//www.webservicex.net/mortgage.asmx

34
Universal Description, Discovery, and Integration
(UDDI)
  • A directory service for web services.
  • http//uddi.org
  • UDDI is an open industry initiative enabling
    businesses to publish service listings and
    discover each other and define how the services
    or software applications interact over the
    Internet. A UDDI business registration consists
    of three components
  • White Pages address, contact, and known
    identifiers
  • Yellow Pages industrial categorizations based
    on standard taxonomies and
  • Green Pages technical information about
    services exposed by the business.

35
Loosely Coupled Software
  • Refers to software routines (modules, programs)
    that can be called by an application and executed
    as needed. For example, Web services are loosely
    coupled software modules that are invoked on
    demand when required.
  • An approach to designing interfaces across
    modules to reduce the interdependencies across
    modules or components in particular, reducing
    the risk that changes within one module will
    create unanticipated changes within other modules.

36
Benefits of Loosely Coupled Software
  • This approach specifically seeks to increase
    flexibility in adding modules, replacing modules
    and changing operations within individual
    modules.
  • It assumes a modular approach to design. 
  • It values flexibility.
  • It seeks to increase flexibility by focusing on
    design of interfaces.

37
Service Oriented Architecture
  • SOA expresses a perspective of software
    architecture that defines the use of loosely
    coupled software services to support the
    requirements of the business processes and
    software users. In an SOA environment, resources
    on a network are made available as independent
    services that can be accessed without knowledge
    of their underlying platform implementation.
  • A service-oriented architecture is not tied to a
    specific technology. It may be implemented using
    a wide range of technologies.
Write a Comment
User Comments (0)
About PowerShow.com