XML & UBL

Post on 30-Dec-2015

47 views 0 download

Tags:

description

ACG 4401 Chapter 2. XML & UBL. Extensible Markup Language - XML. 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 - PowerPoint PPT Presentation

Transcript of XML & UBL

1

XML & UBLACG 4401 Chapter 2

2

XML Specification 1.0

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

Extensible Markup Language - XML

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)

4

XML Documents

Preferred way of moving data between software applications.

So why not use it to move accounting data?

5

Well Formed vs. Valid

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)

6

XML Components

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 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.

XML Rules – A well formed document

1. The first line of an XML document must contain the prologue.

2. 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.

3. Every element must have an opening tag name <> and a closing tag name </> and they must match (case sensitive).

Documents can have empty elements.

▪ <tag/>

XML Rules – A well formed document

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

Prolog and Comment

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 -->

10

XML Element Types

Hierarchy Child/Simple

▪ Encloses Data▪ <Name>Dr. Hornik</Name>

Parent/Complex▪ Does not enclose data▪ Encloses/Contains other elements

▪ <Instructor> <Name>Dr. Hornik</Name>

▪ </Instructor>

Root Element (special parent element)▪ Encloses All other elements in Instance Document

ParentChild

Well-formed XML

<tourGuide><city>

<cityName>Belmopan</cityName><adminUnit>Cayo</adminUnit><country>Belize</country><population>11100</population><area>5</area><elevation>130</elevation><longitude>88.44</longitude><latitude>17.27</latitude><description>Belmopan is the capital of Belize</description>

<history>Belmopan was established following the devastation of the former capital ,Belize City, by Hurricane Hattie in 1965. High ground and

open space influenced the choice and ground-breaking began in 1966. By 1970 most government offices and operations had already moved to the new location.

</history></city>

</tourGuide>

Root element

Parent elementChild Elements

12

UBLUniversal Business Language

13

UBL

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

14

Order to Invoice Business Process

Reusable Elements

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>

UBL document Rules

Each has a unique Root Element Each has a required ID (child element)

Uniquely Identify document Each has a required IssueDate (child element)

Determine when document is created Optional IssueTime

Each has two Party elements (parent elements)

Provider/Supplier Customer/Buyer

Each has at least one line element (parent element)

CatalogueLine OrderLine

17

UBL Order Rules (Schema)

UBL Schema’s

18

Purchase Order

Compare the non-Vocabulary (homegrown) based PO to the UBL PO

Root Element

UBL defines what the root element name is

<Order> </Order>

Parent Elements 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?

Element Attributes

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>

UBL Models

Processes Covered

23

Creating XML Instance Document

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

Lets Build an XML Document Assume Customers place Pizza Order

over phone What data is captured with order?

Customer▪ Phone#▪ Name▪ Address

Order▪ Items▪ Delivery/Pickup▪ Total Amount

Despatch Advice (Shipping Notice)

Sample Despatch Advice

26

Desptach Advice Rules