XML - Centennial College Faculty Web Hosting.

advertisement
XP
New Perspectives on XML
Binding XML Data with Internet Explorer
1
XP
Using XML as a Data Source
• Data binding is a technique where the Web page’s
content is drawn from a data source.
• Data binding allows you to attach data from an
XML document to a Web page.
• Data binding frees the data from the format in
which it is displayed so the same data source can
be combined with several different Web pages.
Creating Web Pages with XML
Tutorial 2
2
XP
Using XML as a Data Source
• In this tutorial, the data source is an XML
document containing information about the
employees at Freezing Point.
• The Web pages use placeholders which we will
later populate with data from two XML
documents.
Creating Web Pages with XML
Tutorial 2
3
XP
Opening the Web Page
Open the file FP1text and save as FP1.htm.
Open and view FR1.htm using Internet Explorer.
hyperlink to the
page’s author
page title text
subtitle text
descriptive text
information about an
employee
employee photograph
employee name
buttons to display
different employees
Creating Web Pages with XML
Tutorial 2
4
XP
Using Data Binding to Create a Final
Web Page
This figure shows how data binding will be used to create a final Web page
Creating Web Pages with XML
Tutorial 2
5
XP
Fields, Records, and Recordsets
•
Data in a data source is organized by fields,
records, and recordsets.
•
A field is an element that contains a single item
of information such as an employees last name.
•
A record is a collection of those fields.
•
A recordset is a collection of records.
Creating Web Pages with XML
Tutorial 2
6
XP
Fields, Records, and Recordsets
This figure shows fields, records, and a recordset of an XML document
Creating Web Pages with XML
Tutorial 2
7
XP
Data Islands
• The first step in data binding is to attach the Web page to a
recordset. The attached data is called a data island. They
can be either external files or code entered into the HTML
file.
• The syntax to create a data island from an external file is:
<xml id=“id” src=“URL”></xml>
• Here, id is the id name assigned to the data island
• URL is the filename and location of the external XML file
Creating Web Pages with XML
Tutorial 2
8
XP
Data Islands
• For example:
<xml id=“Company” src=“Company.xml”></xml>
• This creates a data island named Company
attached to Company.xml.
Creating Web Pages with XML
Tutorial 2
9
XP
Data Islands
• To insert a data island directly into the HTML file, use this
syntax:
<xml id=“id”>
xml code
</xml>
• While this technique can be used, it is not recommended.
After all, the philosophy of XML is to separate data
content from data formatting.
Creating Web Pages with XML
Tutorial 2
10
XP
Data Islands
• Data islands are stored by the XML parser as a Data
Source Object (DSO).
• The DSO takes care of the interaction between the Web
page and the data island.
• Also, program code can be written to control the actions of
the DSO such as specifying which records will be
displayed in the Web page at any one time.
Creating Web Pages with XML
Tutorial 2
11
XP
Data Islands
• If the XML document is not well formed or valid,
IE will not create a DSO.
• The DSO is created only once for each session.
• This means that if the contents of the data source
are modified after the DSO is created, the changes
will not be reflected in the Web page until it is
refreshed or until the next time the page is opened.
Creating Web Pages with XML
Tutorial 2
12
XP
Creating a Data Island
This figure shows how to create the data island
XML document containing data for
the Web page
name of data island
Creating Web Pages with XML
Tutorial 2
13
XP
Binding XML Elements to
HTML Tags
• After the data island has been created, the elements in the
XML document need to be bound to the HTML file.
• The syntax is:
<tag datasrc=“#id” datafld=“field”>
• Here, tag is the name of the HTML tag, id is the name of
the data island, and field is the name of the field in the data
source.
Creating Web Pages with XML
Tutorial 2
14
HTML Tags that Support DataXP
Binding in Internet Explorer
This figure shows
HTML tags that
support data
binding in
Internet
Explorer
Creating Web Pages with XML
Tutorial 2
15
XP
Binding XML Elements to HTML
Tags
This figure shows how to bind XML elements to HTML tags
data source of the bound element
bound element
Placeholder text is deleted
Creating Web Pages with XML
Tutorial 2
16
XP
Binding XML Elements to HTML
Tags Continued
This figure shows how to bind the rest of the FPINFO.XML elements
Creating Web Pages with XML
Tutorial 2
17
XP
Binding to an XML Attribute
• Attributes, like the Status attribute of the
Employee element, are treated by the DSO as
fields. If the attribute is part of a record element, it
is easy to bind attribute values to a Web page.
Creating Web Pages with XML
Tutorial 2
18
XP
Binding to an XML Attribute
• This code has the ID attribute as part of the
Employee element:
<Employee ID=“E304”>
<Name>Alice Ashman</Name>
<Department>Accounting</Department>
</Employee>
Creating Web Pages with XML
Tutorial 2
19
XP
Binding to an XML Attribute
• It is interpreted by the DSO as:
<Employee>
<ID>E304</ID>
<Name>Alice Ashman</Name>
<Department>Accounting</Department>
</Employee>
Creating Web Pages with XML
Tutorial 2
20
XP
Binding to an XML Attribute
• Attribute are more complicated when they are part
of a field element:
<Employee>
<Name ID="E304">Alice Ashman</Name>
<Department>Accounting</Department>
</Employee>
Creating Web Pages with XML
Tutorial 2
21
XP
Binding to an XML Attribute
In the above code, the attribute is still treated by the DSO as a
field element. A DSO treats the above code as:
<Employee>
<Name>
<ID>E304</ID>
Alice Ashman
</Name>
<Department>Accounting</Department>
</Employee>
Creating Web Pages with XML
Tutorial 2
22
XP
Binding to an XML Attribute
• However, this leaves the text "Alice Ashman" unassociated
with a field. Remember to reference all character data
within an element using the $Text field. The DSO
interprets this code as:
<Employee>
<Name>
<ID>E304</ID>
<$Text>Alice Ashman</$Text>
</Name>
<Department>Accounting</Department>
</Employee>
Creating Web Pages with XML
Tutorial 2
23
XP
Binding to an XML Attribute
• If the attribute is part of a field element, it is still
treated by the DSO as a field element.
• The field element containing the attribute becomes
a record element.
• It is a good idea not to use attributes in field
elements if you plan to do data binding.
Creating Web Pages with XML
Tutorial 2
24
XP
Binding to an XML Attribute
This figure shows STAFF_INFO data displayed in the Web page
}
bound
element
Creating Web Pages with XML
Tutorial 2
bound
element
25
XP
The Data Source Object
• ActiveX Data Objects (ADO) is a data-access
technology developed by Microsoft. ADO allows
you to work with the Data Source Object by
applying a method or by changing one of the
properties of the DSO.
• The syntax for applying a method is:
id.recordset.method
Creating Web Pages with XML
Tutorial 2
26
XP
The Data Source Object
• Here, id is the name of the data island in the Web
document and method is the name of the method
supported by ADO.
• There are several methods that can be applied to
DSOs.
Creating Web Pages with XML
Tutorial 2
27
XP
The Data Source Object
This figure shows a few available recordset methods
Creating Web Pages with XML
Tutorial 2
28
XP
The Data Source Object
• For example, if you want to display the last record
in a DSO whose id is “Staff_Info”, run the
following method:
Staff_Info.recordset.moveLast( )
• The simplest way to run a method is to assign the
method to the onClick event handler of a <button>
as shown below:
<button onClick=“Staff_Info.recordset.moveLast( )”>
Creating Web Pages with XML
Tutorial 2
29
XP
The Data Source Object
• When the user clicks the button, IE runs the
command indicated by the onClick event handler,
displaying the last record.
Creating Web Pages with XML
Tutorial 2
30
XP
Assigning a Recordset Method
This figure shows how to enter the movefirst( ) method
Move to the 1st record in
the recordset when this
button is clicked
Creating Web Pages with XML
Tutorial 2
31
Assigning a Recordset Method
Continued
XP
This figure shows how to enter the remaining recordset methods
move to the
previous record
move to the next
record
move to the last
record
Creating Web Pages with XML
Tutorial 2
32
XP
Table Binding
• Using table data binding, each record can be
displayed in a different row of a table. The
syntax is:
<table datasrc=“#id”>
<tr>
<td><span datafld=“field1”></span></td>
<td><span datafld=“field2”></span></td>
</tr>
</table>
Creating Web Pages with XML
Tutorial 2
33
XP
Table Binding
• In the example, id is the name of the data island,
field1, field2 are the fields from the recordset.
Creating Web Pages with XML
Tutorial 2
34
XP
Page Binding
• As you add more records to your XML document,
a table can become long and unwieldy. One way to
fix this is to give the user the option of limiting the
number of records displayed at any one time.
• The user can then move forward of backward that
number of records at a time. This is called paging.
Creating Web Pages with XML
Tutorial 2
35
XP
Page Binding
• To specify the page size, add the dataPageSize
attribute to the <table> tag:
dataPageSize=“number”
• number is the number of records you want
displayed in a single page.
Creating Web Pages with XML
Tutorial 2
36
XP
Navigating a Table Page
• A unique identifier must be assigned to a table using the ID
attribute before writing a command to navigate a table
page. The syntax to do this is:
<table id=“id”>
• Here, id is the name you assign to the table object.
• This is needed because the commands to navigate the table
pages act on the table itself not the recordset.
Creating Web Pages with XML
Tutorial 2
37
XP
Table Methods and Properties
These figures show some table methods and properties
Creating Web Pages with XML
Tutorial 2
38
XP
Table Methods and Properties
• To run these commands, add the command to the
onClick event handler of a <button> tag. For
example, to move to the last page in a data table
named “StaffTable”, you enter the attribute:
onClick=“StaffTable.lastPage( )”
Creating Web Pages with XML
Tutorial 2
39
XP
Hierarchical Records
This figure shows the layout of the EMP2.XML document
Creating Web Pages with XML
Tutorial 2
40
XP
Hierarchical Records
• To bind the Employee fields in the previous slide to a
table, you create a table as follows:
<table datasrc=“#Staff_Info” datafld=“Employee”>
<tr>
<td><span datafld=“Name”></span></td>
<td><span datafld=“Position”></span></td>
<td><span datafld=“Phone”></span></td>
…
</tr>
</table>
Creating Web Pages with XML
Tutorial 2
41
XP
Draft of the Final Web Page
This figure shows the draft of the final Web page
employee
information
grouped by
department
Creating Web Pages with XML
Tutorial 2
42
XP
The Final Web Page
This figure shows the final Web page
Creating Web Pages with XML
Tutorial 2
43
XP
Summary
• Data binding is a technique where the Web page’s content
is drawn from a data source.
• The first step in data binding is to attach the Web page to a
recordset. The attached data is called a data island. They
can be either external files or code entered into the HTML
file.
• ActiveX Data Objects (ADO) is a data-access technology
developed by Microsoft. ADO allows you to work with the
Data Source Object by applying a method or by changing
one of the properties of the DSO.
Creating Web Pages with XML
Tutorial 2
44
Download