XML Documents

advertisement
ACG 4401 Chapter 2
1

Meta-Language
 A language that can be used to create others (vocabularies)
▪ Universal Business Language (UBL)
▪ Extensible Business Reporting Language (XBRL)

Application has sets of xml documents
 Instance Document .xml
▪ contains the data (chapter 2 & Chapter 4)
 Schema Document .xsd
▪ Describes allowed structure (data types, element names) of instance
document (chapter 3)
 Stylesheet .xsl
▪ Formatting instructions for data in the instance document (chapter 5)

A language used to create other languages
 Vocabularies

Describes:
 Rules and
 Syntax for
 Well-Formed and Valid XML Documents
▪ Structuring Documents!

Does NOT describe tag names
3


Preferred way of moving data between
software applications.
So why not use it to move accounting data?
4

Well Formed documents
 meet basic rules for XML (chapter 2)

Valid documents
 Meets rules regarding structure, order and data-
types as described in Schema (chapter 3)

Normally you start with a schema then create
an instance document
 We are learning it backwards
5

Tags
 Meta-data
▪ description of data enclosed within brackets
▪ adds meaning to the data

▪
<> opening
▪
</> closing
Element
 Opening tag, data, and Closing tag
▪ <instructor>Dr. Hornik</instructor>
 Attribute
▪ Data that adds meaning to the data adding meaning to the data 
▪ Data describing the tag
▪ <Instructor Department=“Accounting”>Dr. Hornik</Instructor>

XML does not prescribe Tags to be used
 Anyone can make up tags <tag> for any purpose as long as XML document is well-
formed.
6
The first line of an XML document must contain the
prologue.
The main theme of the XML document – the root element
- must enclose all the other elements in the document.
There can be only one root element.
Every element must have an opening tag name <> and a
closing tag name </> and they must match (case
sensitive).
1.
2.
3.

Documents can have empty elements.
▪
<tag/>
4.
Elements must be properly nested, that is you close the
tag that was opened last – think of tags as using a LIFO
convention or more properly a LOFC Last Opened First
Closed convention (though it doesn’t have quite the same
ring to it).
5.
Elements can have attributes.

Attributes follow the opening tag name
▪
attributeName=“attributeValue”
▪
attributeName is not included in the closing tag


Every XML document starts with a prolog
It lets the XML enabled processor know that this is
an XML document to be processed
<?xml version="1.0" encoding="UTF-8"?>
 UCS Transformation Format—8-bit is a variable-width
encoding that can represent every character in the
Unicode character set.

Comment
<!-- Hello World -->

Hierarchy
 Child/Simple
▪ Encloses Data
▪ <Name>Dr. Hornik</Name>
 Parent/Complex
▪ Does not enclose data
▪ Encloses/Contains other elements
Parent
▪ <Instructor>
 <Name>Dr. Hornik</Name>
▪ </Instructor>
Child
 Root Element (special parent element)
▪ Encloses All other elements in Instance Document
10
C
h
i
l
d
<tourGuide>
<city>
<cityName>Belmopan</cityName>
E
<adminUnit>Cayo</adminUnit>
<country>Belize</country>
l
<population>11100</population>
<area>5</area>
e
<elevation>130</elevation>
<longitude>88.44</longitude>
m
<latitude>17.27</latitude>
<description>Belmopan is the capital of Belize</description>
e
<history>Belmopan was established following the devastation of the former capital
,Belize City, by Hurricane Hattie in 1965. High ground and open space
n
influenced the choice and ground-breaking began in 1966. By 1970 most
government
offices and operations had already moved to the new location.
t
</history>
</city>
s
</tourGuide>
Universal Business Language
12




Organization for the Advancement of
Structured Information Standards (OASIS)
Complete XML based library of business
document
A Dictionary of standard, predefined element
names and
A Library of standard, predefined documents
 Where the elements can appear
13
14


When possible UBL uses the same structure for elements in different
documents
PostalAddress can be used in:
 Catalogue
 Purchase Order
 Invoice
 …
▪
▪
▪
▪
▪
▪
▪
▪
▪
So it has the same structure
<StreetName>Main St.</StreetName>
<BuildingNumber>56A</BuildingNumber>
<CityName>Newark</CityName>
<PostalZone>19716</PostalZone>
<CountrySubentityCode>DE</CountrySubentityCode>
<Country>
<IdentificationCode>USA</IdentificationCode>
</Country>


Each has a unique Root Element
Each has a required ID (child element)


Each has a required IssueDate (child element)



Determine when document is created
Optional IssueTime
Each has two Party elements (parent elements)



Uniquely Identify document
Provider/Supplier
Customer/Buyer
Each has at least one line element (parent element)


CatalogueLine
OrderLine

UBL Schema’s
17

Compare the non-Vocabulary (homegrown)
based PO to the UBL PO
18



UBL defines what the root element name is
<Order>
</Order>


Parent elements contain or enclose other elements
Root (<Order> ) Parent of:








<ID>
<SalesOrderID>
<IssueDate>
<IssueTime>
<Note>
<AccountingCostCode>
<AccuntingCost>
<BuyerCustomerParty>
▪ <Party>
▪ <PartyName>
▪ <PostalAddress>
 <SellerSupplierParty>
▪ <Party>
▪ <PartyName>
▪ <PostalAddress>
 <OrderLine>
▪ What are the Parent elements within this element?


Attributes are contained within an opening
element tag <>
attributeName=“attribute value”
 Name-pair value


<PriceAmount currencyID="USD">575.55</PriceAmount>
<BaseQuantity unitCode="UNIT">1</BaseQuantity>
Processes Covered





In-class/Windows use NotePad
Mac use TextWrangler
You must use a Text Editor (not a word
processor)
XML editor – Exchanger XML Lite (PC and
Mac)
Testing XML
 Open in Browser (IE, Firefox, Safari??)
 If it opens it’s well formed
 If you receive an error message it’s not
23


Assume Customers place Pizza Order over
phone
What data is captured with order?
 Customer
▪ Phone#
▪ Name
▪ Address
 Order
▪ Items
▪ Delivery/Pickup
▪ Total Amount
24
25
Download