Session Number: 6 - PowerPoint PPT Presentation

1 / 33
About This Presentation
Title:

Session Number: 6

Description:

XPath stands for XML Path Language. It is a W3C standard. ... artist Paul McCartney /artist price 9.90 /price /cd cd country='USA' ... – PowerPoint PPT presentation

Number of Views:100
Avg rating:3.0/5.0
Slides: 34
Provided by: ellise
Category:

less

Transcript and Presenter's Notes

Title: Session Number: 6


1
Internet Supply Chain Management ECT 581
Winter 2003
Session Number 6
  • Session Date February 11, 2003
  • Session Outline
  • Administrative Items
  • Session Topics XML (continued), Middleware
  • XPath, XHTML
  • Demos/Application Examples
  • Emerging XML Trends
  • Middleware Overview
  • Message-oriented Middleware

2
Administrative Items
  • Midterm Exam Preview
  • Project Info

3
What is XPath?
  • XPath stands for XML Path Language. It is a W3C
    standard.
  • Provides syntax for locating specific parts of
    an XML document.
  • Not a structural language like XML, it is
    string-based instead.
  • Used by other XML technologies like XSLT
    XPointer.
  • Views XML document as tree structure consisting
    of 7 node types
  • This tree structure is similar to DOM.
  • Defines a library of standard functions for
    working with
  • strings,
  • numbers, and
  • Boolean expressions.

4
XPath Example
XPath Expressions
/catalog selects the root element /catalog/cd
selects all cd elements /catalog/cd/artist
selects all artist elements of all cds in the
catalog. Note / in XPath expression
respresents absolute path to element. If the path
starts with two slashes ( // ) then all elements
in the document that fulfill the criteria will be
selected (even if they are at different levels in
the XML tree).
5
What is XHTML?
  • XHTML stands for Extensible HyperText Markup
    Language
  • XHTML is aimed to replace HTML.
  • XHTML is almost identical to HTML 4.01.
  • XHTML is a stricter and cleaner version of HTML.
  • XHTML is HTML defined as an XML application.
  • An XHTML document consists of three main parts
  • the DOCTYPE
  • the Head
  • the Body
  • A brief example

lt!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0
Strict//EN" "http//www.w3.org/TR/xhtml1/DTD/xhtml
1-strict.dtd"gt lthtmlgt ltheadgt lttitlegtA brief
examplelt/titlegt lt/headgt ltbodygt ltpgtIt cant get
any simpler than this.lt/pgt lt/bodygt lt/htmlgt
6
XML Schema An Alternative to DTDs
  • XML Schema
  • Used to define building blocks of XML document.
  • Similar to successor to DTD.
  • Supports data types, uses XML syntax.
  • can be parsed and used with any XML-aware tool.
  • can be browsed with any XML-aware browser (DTDs
    cannot).
  • can be edited with any XML-aware editor (DTDs
    cannot).
  • can have machine-readable documentation (DTDs
    can't).
  • can be used to give a list of attributes and
    their types to support editing.
  • can be used to give a list of possible children
    for any element, to support authoring.

7
XMLs Major Processing Roles
  • Mechanism for standardized data interchange (re
    Internet-based EDI).
  • Medium for temporary or persistent storage of
    objects.
  • Method for exposing info context in data query
    search engines.
  • Means to separating structure, formatting, and
    raw data for browsing display purposes.
  • Method to invoke local or distributed processes
    (re passing network messages).

8
XMLs Major Processing Roles Interchange
Standard
  • Variety of vertically-oriented dialects w/
    specialized DTDs.
  • ebXML
  • RosettaNet
  • cXML
  • XDDI
  • XML Schema extends DTDs precision .
  • XSLT enables mapping, filtering of disparate
    XML documents.

9
XMLs Major Processing Roles Storing Objects
  • XML is emerging as a general programming
    utility.
  • Projected use as mechanism for creating
    distributed processing web services.
  • XML-based SOAP, WSDL, and UDDI vital cogs in MS
    distributed processing strategy.
  • SOAP (Simple Open Access Protocol) offers
    protocols for document interchange.
  • UDDI (Universal Description, Discovery,
    Integration) offers a phonebook for discovering
    Web Services.
  • WSDL (Web services Description Language)
    provides XML definition of Web Service objects
    schema.
  • BizTalk is MS enhanced implementation of SOAP.
  • SOAP mechanisms based on plain text open for
    ready perusal.
  • Critical security concerns remain with SOAP ,
    thus, with BizTalk.

10
XMLs Major Processing Roles Knowledge
Management
  • XML technology databases are at the core of
    knowledge management (search assemble) systems
    development.
  • XML has advanced state of the art metadata
    interchange knowledge discovery.
  • XMI (XML Metadata Interchange definition)
    enables vendors to interchange data between
    modeling systems through tagging.
  • (Theoretically) XSLT will not be required.

11
Evolving Trends RosettaNet
  • An independent, self-funded, non-profit
    consortium dedicated to the development and
    deployment of standard electronic business
    interfaces.
  • RosettaNet is developing a common language that
    would allow companies to more freely share
    product manufacturing, distribution, and sales
    information.
  • Rosetta Net's 12 PIPs (Partner Interface
    Processes), let users define in
    an XML document activities controlling every
    aspect of an e-commerce transaction between
    trading partners, primarily in the computer
    industry.
  • PIPs provide a way, through XML, to integrate
    business processes among companies, making it
    possible to automate more of a transaction.
  • More than 250 companies representing over 1
    trillion in annual information technology and
    electronic components revenues currently
    participate in RosettaNet's standards
    development, strategy and implementation
    activities.
  • Board members include Cisco, Dell, 3Com, FedEx,
    HP, IBM, Intel, Lucent, Netscape, SAP Toshiba,
    UPS, to name a few reputable companies.

12
XML-based EDI
  • EDI works by interconnecting systems using
    document-based coupling, which interchanges
    messages (files) that can be read by the
    retailers' and suppliers' legacy systems without
    actually interfacing their applications.
  • Using EDI, a purchase order, an advance shipping
    notice, or an invoice can be turned into an
    unique message and transmitted between companies.
  • Where EDI falls down is in the very
    document-based messages that allowed for quick
    response prior to the rise of the Internet.
  • These messages do not allow for interactive
    searches or collaboration, they are also less
    immediate than connecting online.

13
XML-based EDI (continued)
  • XML, which is heavily used in B2B, can be
    integrated with existing EDI systems by providing
    forms that can be completed to generate EDI
    messages.
  • XML can also reverse the process and take data
    received via EDI and translate it into a document
    that can be viewed on a standard Web browser.
  • XML/EDI provides a standard framework to
    exchange different types of data -- for example,
    an invoice, healthcare claim, project status.
    Information can be searched, decoded,
    manipulated, and displayed consistently and
    correctly be it information
  • in a transaction,
  • exchanged via an Application Program Interface
    (API),
  • transmitted via web automation,
  • stored in a database portal,
  • located catalog,
  • residing in a workflow document or.
  • a message.

14
XML-based EDI (continued)
  • Six Reasons to Consider XML-based EDI
  • It is based on industry standards
  • It allows for presentation, application logic,
    and data to be contained in one document as
    defined by the author(s)
  • It is an evolution rather than revolution
    approach... builds upon and interfaces with
    legacy EDI systems
  • It is a unified structure for batch,
    interactive, forms-based, and real-time
    exchanges
  • It provides for common tagging for accurate
    interpretation of business objects in documents
    objects can be multimedia EC components
  • It allows for the use of existing
    document-centric tools in addition to database
    facilities to manipulate, store, search
    transactions

15
XML-based EDI is the fusion of five technologies.
  • XML - XML tokens and frameworks are the syntax
    that transports the other components across the
    network. XML tokens replace or supplement
    existing EDI segment identifiers.
  • EDI The ability to express data in a simple
    format and send it to someone else so they can
    interpret the information they have just
    received. XML/EDI provides 100 backward
    compatibility to existing EDI transactions, while
    moving EDI forward to the next generation.
  • Templates - Templates are referenced or travel
    along inside the XML as a special section and set
    of tokens, and can be easily read and
    interpreted, they look rather like a spreadsheet
    in layout and content and they are supplemented
    by what XML calls Document Type Definitions
    (DTD's).
  • Agents - Interpret the Templates to perform the
    work needed, and also interact with the
    transaction and the user to create new templates
    for each new specific task, or look up and attach
    the right template for existing jobs.
  • Repository - This component provides the semantic
    foundation for business transactions and the
    underpinning that the software Agents need to
    correctly cross-reference entities. Referred to
    as Shared Internet Dictionaries.

16
XML-based EDI (continued)
  • An Example
  • Using XML, a vendor's catalog could be married
    into a retailer's merchandise database.
  • Flipping the XML around, the buyers can order by
    SKU, style/color/size, or whatever other method
    they prefer, and have their purchase orders
    translated into the part number information
    needed by the vendor.
  • The advantage and benefit allowing users to work
    in the method that makes the most sense for them.

17
Middleware Overview
  • Middleware Benefits
  • Isolates business logic from the communications
    logic.
  • Manages system risk by isolating complex
    communication services in fewer, proven modules.
  • Reduces development time and can reduce overall
    solution cost.
  • Provides additional flexibility and functionality
    then point-to-point solutions

18
Middleware Overview (continued)
  • Typical Middleware Services
  • Simplified Application Programming Interface
    (API)
  • Portability/Scalability
  • Location Transparency
  • Data Translation

19
Middleware Overview (continued) Typical
Middleware Services
  • Simplified Application Programming Interface
    (API)
  • Middleware insulates application developers from
    the low level APIs of the underlying transport
    protocols.
  • Communications protocol interactions, flows, and
    specifications are handled by the middleware
    logic and presented to the application developer
    via a simplified, high-level API.
  • Portability/Scalability
  • Middleware should isolate the business
    application from differences in the underlying
    system software and APIs.
  • Changes in architecture such as physical network
    (e.g. migrating from Token-Ring to Ethernet),
    protocol (e.g. migration from APPC to TCP/IP), or
    operating system (e.g., migration from OS/2 to
    NT) should not require application rewrites.

20
Middleware Overview (continued)
  • Location Transparency
  • The client process requesting a service requires
    no knowledge of the physical location of the
    machine on which the server processes are
    running.
  • Middleware can map the alias of the service
    called to a physical location for that service.
  • Changes can then be made in a central
    location(s) to avoid recompilation and
    distribution of software if resource locations
    change.
  • Data Translation
  • Data translation issues include data
    representation (ASCII vs. EBCDIC character data),
    data alignment (use of short word vs. long word
    boundaries) and language differences (C expects
    character strings to be null terminated, while
    other languages do not).
  • Some translations may be provided by the
    middleware vendors.

21
Middleware Overview (continued)
  • Messaging and queuing are concepts that have been
    around for a long time.
  • Queued messaging allows asynchronous
    interoperations between two applications.
  • The applications can be on the same or different
    computers, even with different operating systems.
  • Basic Message Oriented Middleware provides a
    common API across platforms without regard to
    communications protocol.

22
Middleware Alternatives
  • Message-Oriented Middleware (MOM)
  • Database Gateways
  • Object Request Brokers (ORBs)
  • Data Replication
  • Function-based (RPC-based) Middleware
  • (Distributed) Transaction Processing Monitors
  • Point-to-Point

23
Middleware Alternatives (continued)
  • Message-Oriented Middleware (MOM) - A set of
    software level services that allow processes on
    the same or different platforms to exchange
    information using discrete control and data
    messages.
  • Database Gateways - Gateway products provide the
    ability to access data on other platforms as if
    it were local, transparent to the source datas
    physical environment and structure.
  • Object Request Brokers (ORBs) - ORBs support the
    distribution of objects across an enterprise.
  • Data Replication - Technology that supports
    periodic synchronization of remote databases,
    bringing copies of the source data to the sites
    that need it, in a format that they can process.

24
Middleware Alternatives (continued)
  • Function-based (RPC-based) Middleware - A set of
    programming services that extend the familiar
    procedure call mechanism across the network.
  • (Distributed) Transaction Processing Monitors -
    Distributed TP monitors are similar to RPC tools,
    but allow RPCs to be grouped into transactions,
    providing increased support for commit and
    rollback processing.
  • Point-to-Point - Point-to-Point is the
    implementation of simple file transfer and custom
    application interfaces on a per interface basis.

25
Message-Oriented Middleware (MOM)
  • Message Passing
  • The direct exchange of information between a
    sending and a receiving process.
  • Requires the sending and the receiving product
    to be available and connectable at message
    transmission time.
  • Can be synchronous or asynchronous.
  • Message Queuing
  • Queues are used to support store-and-forward
    processing.
  • Inherently asynchronous.
  • Common uses
  • Triggering events at remote locations or in
    external applications.
  • Notifying users when something of interest to
    them occurs.
  • May be used in conjunction with remote data
    access to tell application data is ready for it
    to retrieve.
  • Primary Message Queuing MOM technology
    resource available to ECT 581 is Microsofts MSMQ.

26
Message-Oriented Middleware (MOM) Process Overview
  • Message passing is often two way.
  • Normally a response or reply message will be
    passed in a queue designated for the purpose.
  • Most queuing software allows for message
    association and prioritization as well as the
    ability to commit or roll back a unit of work.
  • Asynchronous message offers a way to work with
    up-to-date data without being locked into time
    dependent relationships that may be difficult to
    control.

27
MOM Message Passing
  • Can be synchronous or asynchronous.
  • Program-to-program communication between a single
    sender and a single recipient.
  • Distributed TP monitors use message passing to
    coordinate logical units of work.
  • Requires the sender and recipient to be available
    and connectable at message transmission time.
  • Many message passing products support
    transparency with respect to the location and
    platform of recipient (routing).
  • Usually an intermediary is required to provide
    transparency with respect to number of recipients
    (broadcasting).

28
MOM Message Passing (continued)
  • Product Examples
  • TIBCO SmartSockets
  • Provides real-time messaging using industry
    standard protocols. Also provides APIs and class
    libraries enabling applications to distribute and
    exchange info in a timely manner. Offers
    out-of-the-box publish-subscribe communications
    model.
  • Sybase Open Client/Open Server
  • A set of libraries that enables the creation of
    an RPC-based application server that behaves like
    a Sybase database server. OC/OS is very flexible,
    but comes without many of the features (such as
    management and monitoring) that are common in
    other implementations.
  • Native APPC
  • A number of gateway products exist that provide
    APPC support in client/server environments, such
    as IBMs Communications Manager, Microsofts SNA
    Server for NT, Open Connect, etc.

29
MOM Message Queuing
  • One process writes data to a queue, and is
    unaware who reads from the queue.
  • Inherently asynchronous.
  • Queues may be persistent, supporting guaranteed
    delivery of messages.
  • Common uses
  • Triggering events at remote locations or in
    external applications.
  • Notifying users when something of interest to
    them occurs.
  • May be used in conjunction with remote data
    access to tell application data is ready for it
    to retrieve
  • Example publish/subscribe metaphor often used to
    support decoupling of producers and consumers of
    data.

30
MOM Message Queuing (continued)
  • Product Examples
  • IBM MQ Series
  • Middleware products that provide asynchronous
    program to program communication. MQ Series
    allows data to be passed between mainframe
    applications, local server-based applications,
    and PC programs. Multiple programs can access a
    single queue, although only one application can
    read any given message (no broadcasting). MQ
    View, which will provide management capabilities
    to MQ Series, is currently under development.
  • Microsoft MS MSMQ
  • Similar to IBM MQ Series in functionality. Comes
    free with Windows 2000 and Windows XP.
  • Oracle Advanced Queuing
  • A database-integrated message queuing product.
    Is a component in the Oracle 9i Database product
    suite.

31
MOM Alternatives Vendors (not previously
mentioned)
BEAs MessageQ (www.beasys.com) Ionas OrbixTalk
and OrbixNotification (www.iona.com) Modulus
InterAgent Toolkit (www.modulus.com)
32
MOM Application Examples
Loan processing application - sends messages
through MOM to credit bureaus and other systems
as it gathers information to complete the
processing of the loan. Customer service
applications obtains customer information as it
gathers relevant product or service
info. Commercial transaction support credit
authorization check for a variety of commercial
retail and wholesale transactions.
33
Next Session Highlights
  • Midterm Exam
  • Middleware (continued)
  • Next Session Reading Assignment
  • Web sites (linked thru the class notes web site)
  • Message Oriented Middleware
  • Microsoft and IBM Duke It Out for
    Message-Oriented MiddlewareSupremacy
Write a Comment
User Comments (0)
About PowerShow.com