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 &
Syntax
For Structuring Documents!
Does NOT describe tag names
3
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)
4
Tags
Meta-data
▪ description of data enclosed within brackets
▪ <>, 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 Campus=“Main”>Dr. Hornik</Instructor>
5
Hierarchy
Parent/Complex
▪ Does not enclose data
▪ Encloses/Contains other elements
Parent
▪ <Instructor>
<Name>Dr. Hornik</Name>
▪ </Instructor>
Child
▪ Root Element
▪ Encloses All other elements in Instance Document
Child/Simple
▪ Encloses Data
▪ <Name>Dr. Hornik</Name>
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.
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 -->
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
11
Organization for the Advancement of
Structured Information Standards (OASIS)
Complete XML based library of business
documents
12
13
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
Each has a required IssueDate
Determine when document is created
Optional IssueTime
Each has two Party elements
Uniquely Identify document
Provider/Supplier
Customer/Buyer
Each has at least one line element
CatalogueLine
OrderLine
UBL Schema’s
16
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
Sample Despatch Advice
22
Assume Customers place Pizza Order over
phone
What data is captured with order?
Customer
▪ Phone#
▪ Name
▪ Address
Order
▪ Items
▪ Delivery/Pickup
▪ Total Amount
23
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
24