You are on page 1of 44

01 Intro 11i

Extensible Markup Language


Extensible Markup Language (XML) describes data objects called XML documents that are composed of markup and data

Extensible Markup Language XML describes data objects called XML documents that: Are composed of markup language for structuring the document data Support custom tags for data definition, transmission, validation, and interpretation ave become a standard !a" to describe data on the #eb Are processed b" XML processors

XML !as developed b" an XML !orking group headed b" the #orld #ide #eb $onsortium %#&$' !ith the follo!ing design goals: XML is usable over the (nternet)

(t supports a !ide variet" of applications) (t is compatible !ith Standard *enerali+ed Markup Language %S*ML') XML can be processed using eas",to,!rite programs) (t has a minimum number of optional features) XML is human,legible and reasonabl" clear) XML enables -uick design preparation) (t enables formal and concise design) .he XML documents are eas" to create)

.he XML documents can be verbose)

!d"antages of #sing XML


XML enables$ ! simple and extensible %a& to describe data 'he abilit& to interchange data (implified business)to)business communication *riting of smart agents 'he abilit& to perform smart searches

! sample XML document$

!d"antages of #sing XML XML/s strongest point is its abilit" to perform data interchange) 0ecause different groups of people rarel" standardi+e on a single set of tools, it takes a significant amount of !ork for t!o groups to communicate) XML makes it eas" to send structured data across the #eb so that nothing gets lost in translation) #hen using XML, "ou can receive XML,tagged data from "our s"stem, and "ou can receive XML,tagged data from another s"stem) 1either of the users has to kno! ho! the other user/s s"stem is organi+ed) (f another partner or supplier teams up !ith "our organi+ation, "ou do not have to !rite code to exchange data !ith their s"stem) 2ou simpl" re-uire them to follo! the document rules defined in the 3.3) 2ou can also transform those documents using XSL.) #hen !riting an agent, one of the challenges is to make sense of incoming data) A good agent interprets information intelligentl", and then responds to it accordingl") (f the data sent to an agent is structured !ith XML, it is much easier for the agent to

understand exactl" !hat the data means and ho! it relates to other pieces of data it ma" alread" kno!)

XML (tandards

XML (tandards .he follo!ing XML standards are covered in this course: 4) .he XML language specification defines the rules that govern XML document structure, and ho! XML processors must read them) 5) A document t&pe definition (+'+) provides the definition and relationships of elements contained in an XML document) A 3.3 validates an XML document) &) XML ,amespaces provide a mechanism to distinguish elements !ith the same name but different definitions used in the same XML document) 6) .he XML -ath Language (X-ath) provides s"ntax for searching an XML 3ocument) X7ath expressions are used in an XSL st"lesheet to match specific nodes)

8) An XML (chema provides a !a" to describe the XML document structure using data t"pe definitions and uses namespace support) XML Schema is the preferred !a" to validate XML documents) 9) .he Extensible (t&le (heet Language (X(L) is implemented b" XSL .ransformations %XSL.' to specif" ho! to transform an XML document into another document) XSL. uses an XML vocabular" for transforming or formatting XML documents)

.racle XML (upport

.racle XML (upport +e"elopment 'ools and /rame%orks$ :racle XML 3atabase %X30', :racle ;3eveloper 4<g, :racle (nternet =ile S"stem %i=S', :racle Application 3evelopment =rame!ork %A3=' in ;3eveloper, :racle 7ortal, :racle Application Server >eports Services, and :racle 3"namic Services can be used to build XML applications) +atabase and Middle)'ier /rame%orks$ :racle Application Server 4<g provides the environment for the XS?L 7ages frame!ork, ;5EE services !hich support XML applications, and #eb Services) +atabase (torage$ (n :racle 3atabase 4<g, the :racle X30 enables XML documents to be stored in and retrieved from relational tables, XML."pe columns, and character large object %$L:0' t"pes) :racle .ext %interMedia .ext' can be used to efficientl" search XML documents stored in XML."pe or $L:0 columns)

.racle XML +e"eloper0s 1it (X+1) 10g$ :racle X3@ 4<g is available in :racle ;3eveloper 4<g, :racle Application Server 4<g, and :racle 3atabase 4<g) :racle X3@ provides the follo!ing components, tools and utilities: XML 7arsers, XSL. 7rocessors, XSL. AM, XML Schema processors XML ;ava 0eans, XML $lass *enerator, XS?L Servlet, XML S?L Btilit" %XSB' XML 7ipeline 7rocessor, .ransX Btilit"

2uilding XML !pplications %ith .racle 'echnolog&


!n XML application is an application process that operates on XML data3 either stored in or generated from some data source .racle XML applications can be built in one of the follo%ing %a&s$ ,onprogrammaticall& -rogrammaticall&

2uilding an XML !pplication %ith .racle 'echnolog& .he diagram illustrates !here an XML application processing XML data %solid lines' can run %dotted lines' on the client, middle tier, or the database) .he data ma" also reside in the :racle database in XML or relational form) XML !pplications *ithout -rogramming :racle XML 3eveloper/s @it %X3@' provides components, such as the XS?L servlet, !hich process XS?L pages containing S?L statements and generate a result containing database data in an XML format) .he XS?L servlet can be installed on an" ;ava,enabled #eb server, such as :racle Application Server 4< g) .he :racle 30Bri servlet provides a bro!ser,based interface for eas" retrieval and transformation of data stored in an :racle 3atabase 4< g) XML !pplications b& #sing -rogramming

Applications can be developed !ith the A7(s provided b" the :racle X3@) #eb applications, developed !ith ;3eveloper, can use ;30$ to connect !ith an :racle database to create po!erful "et relativel" simple data,driven XML applications) :racle 3atabase 4<g has inbuilt features for storing, manipulating, transforming and validating XML data) .hese features are accessible through the :racle X3@ and XML functionalit" available to S?L and 7LCS?L services in the database)

4ourse En"ironment and +ata

4ourse En"ironment and +ata 4lient (oft%are :racle ;3eveloper 4<g for creating, editing, and validating XML documents iS?LD7lus or S?LD7lus to execute S?L or 7LCS?L operations on the database data :racle XML 3eveloperEs @it and Btilities for command,line processing operations ;ava classes that use the :racle XML 7arser: .he .estX7ath class to test X7ath expressions on XML documents .he Sho!Xml1S class to displa" the effects of using XML 1amespaces

:racle 0( 7ublisher 3esktop

Middle)tier (oft%are 7roduction environments !ill run the XS?L servlet in :racle Application Server 4<g. 3evelopment environments, as in this course, use ;3eveloper/s embedded ;5EE $ontainer to run the middle,tier soft!are in the client) Anal"tic integration provided b" :racle 0( Server)

+atabase (oft%are :racle 3atabase 4<g !ith the :racle XMLC30 features installed and enabled :>Ax schemas that hold copies of the data from the Sample Schema) > :racle

An :racle E,0usiness Suite 44)8)4< $B5 or later instance)

*hat 4an .racle 2I -ublisher +o5


2usiness reports In"oices -urchase orders (ales orders 4ontracts 6o"ernment forms 'ax forms Marketing materials XML E+I7E/' (e'ext documents)

Example$ /inancial 8eports

Example$ 2usiness 8eports

Example$ In"oices

Example$ -urchase .rders

Example$ (ales .rders

Example$ 4ontracts

Example$ 6o"ernment /orms

Example$ 'ax /orms

Example$ Marketing Materials

Example$ XML

Example$ E+I7E/'

*h& .racle 2I -ublisher5


8emo"es complexit& 8educes time to de"elop3 test3 and deplo& 8educes total cost3 including maintenance Increases de"eloper producti"it& Enables flexible customi9ations /ollo%s .racle0s de"elopment standards Enables ease of use

+ocument Management 8e:uirements


8ich formatted reports -artner reports /inancial statements 6o"ernment forms Marketing materials 4ontracts 4hecks Labels XML E/'7E+I Multiple destinations

.racle 2I -ublisher
.racle 2I -ublisher has the capabilit& to perform the follo%ing tasks in all the formats of &our business re:uirements$ !uthor reports Manage reports +eli"er reports

4lassic 8eporting 'ool Issues


Mimic report re:uirements$ Must be the same geometr&3 font3 margin si9e3 and so on

4lassic 8eporting 'ool Issues


More re:uirements

4lassic 8eporting 'ool Issues

4lassic 8eporting 'ool Issues


1 data set $ 10 la&outs $ ;0 languages << ;00 reports 8e:uires highl&)skilled engineers for customi9ation

#ithin the e0usiness Suite, reporting, prior to :racle 0( 7ublisher, !as accomplished using :racle >eports) .he definitions used b" :racle >eports are kept in >eport 3efinition =iles %>3=')

4lassic 8eporting 'ool Issues


=igh de"elopment cost =igh customi9ation cost +ifficult upgrade

.racle2I -ublisher$ !d"antages


(eparate data7la&out7#I translation /lexibilit& 8educed maintenance

.racle2I -ublisher$ !d"antages


2usiness consultants use familiar desktop tools for la&out customi9ation (upport for multiple data sources

.racle2I -ublisher$ !d"antages

.racle2I -ublisher$ !d"antages


.ne 'emplate3 Multiple (ources

8'/ templates are con"erted to X(L)/.3 and then formatted to multiple outputs

.racle2I -ublisher$ !d"antages


6o"ernment (ources

+o%nload -+/ forms from the go"ernment *eb site (end back the exact form filled %ith data

.racle2I -ublisher$ !d"antages


Extract .nce3 -ublish Man& 'imes

.racle2I -ublisher$ !d"antages


2atch -rocessing3 XML !-Is

.racle2I -ublisher$ !d"antages


Inbound +ocument 4apture

Inbound documents con"erted to XML and fed back to database

E)2usiness (uite #ses .racle 2I -ublisher

.racle 2I -ublisher 'echnolog&


.pen standard technologies *;4 X(L$/. implementation -ure >a"a -luggable data in XML .utput formats in -+/3 8'/3 ='ML3 and others

(upport for Internet -rinting -rotocol3 *eb+!?3 Internet /ax -rotocol3 and (M'-

.racle 2I -ublisher 'echnolog&

Bsers can design la"out templates using familiar desktop applications such as Adobe Acrobat and MS #ord, there are no! man" XSL editors available on the market for the user to take advantage of)

-erformance and (calabilit&


(tream)based implementation 8educed memor& footprint !bilit& to handle large XML input files 'he fastest X(L)/. implementation

(ecurit&
-rinting from M( Excel is not accepted b& financial auditors -+/ securit& le"els for$ 8ead)onl&7editable text 4op&able text -rintable text -ass%ord protecting text

Language (upport
Expensi"e language)specific printers are not needed 'he full set of #nicode fonts is included (calable fonts can be embedded %ith 4I+ mapping tables .racle 2I -ublisher supports$ 4>1 2i+i #nicode ML(

Language (upport

'ranslation
4ommunicate %ith partners around the %orld ,o dependenc& on installed languages ,o dependenc& on database character set

4reate a template for an& language7territor& 'ranslate template or send to third part& (upport for XLI// (XML Locali9ation Interchange /ile /ormat)

8ecogni9es an& combination of$ 1@A language codes BCC territor& codes

You might also like