I XML applications Why these applications are important

























































- Slides: 57
I. XML applications • Why these applications are important? II. eb. XML III. XFDL IV. Information and Content Exchange V. Web Modeling Language VI. Text Encoding Initiative Introduction to Informatics - Fall 01
I. XML applications Why these applications are important? They allow the creation of a scheme for “self-describing information” Powerful desktop computers and PDAs get a form, fill it out and then swap it back and forth between servers until the job is completed XML adds structural and semantic information that allows these devices to do a great deal of processing on the spot This takes a big load off Web servers It should reduce network traffic dramatically Introduction to Informatics - Fall 01
As more industry-specific XML tags are used, searching will become more precise The Newspaper Association of America is building an XML schema for classified ads that will improve searches It will also change the way we use the web XLink allows links to multiple destinations Other kinds of links insert text or images where you click, instead of forcing you to leave the page It allows indirect links that point to entries in a database rather than to the linked pages When an address changes, links that point to it can be updated by editing one database record This should eliminate the familiar “ 404 File Not Found” Introduction to Informatics - Fall 01
Within organizations, data are difficult to manage and use because they are found under multiple formats: Organizational documents; messages from customers or external partners; interfaces to transaction-based systems; databases (all varieties); web pages Without a universal interchange format, organizations can’t exploit automation for internal and external partner applications IT departments spend 40% of their time mining, extracting, manipulating, and updating data to serve specific needs XML applications provide this exchange format Introduction to Informatics - Fall 01
XML is a universal interchange format Using XML applications allows: Storage and manipulation of native XML data High-performance querying capability on large sets of XML-based components Integration of disparate data sources into unified XML databases Standard interfaces to Web development languages Single points of administration Scalable data distribution functions Introduction to Informatics - Fall 01
I. XML applications • Why these applications are important? II. eb. XML III. XFDL IV. Information and Content Exchange V. Web Modeling Language VI. Text Encoding Initiative Introduction to Informatics - Fall 01
II. eb. XML? It is an XML application used for b 2 b communication It is a common set of specifications for ebusiness It is a global standards setting effort by private and public sector organizations Representatives from businesses, software companies, industry organizations, and standards setting bodies worked from 11/99 -5/01 It has been volunteer and open source It seeks to develop an open technical framework using XML in a consistent and uniform manner to allow the exchange of all electronic business data http: //www. ebxml. org/ Introduction to Informatics - Fall 01
Coordinated by Organization for the Advancement of Structured Information Standards (OASIS) http: //www. oasis-open. org/cover/sgml-xml. html OASIS is a central clearinghouse for information about XML UN Center for Trade Facilitation and Electronic Business (UN/CEFACT) http: //www. ebtwg. org/ The involvement of the UN is important The goal of the standard is to make ebusiness ubiquitous It should work for any size business in any country reached by the net Introduction to Informatics - Fall 01
eb. XML is the latest step in the development of ebusiness technology It has its roots in EDI and XML The task Make ebusiness information exchange simple Use XML as an open standard Provide a migration path from EDI Encourage industry cooperation and buy-in Avoid proprietary hardware and software solutions Support a wide range of languages Accommodate common rules of national and international business and trade Introduction to Informatics - Fall 01
What does it do? Provides a globally developed open XML-based standard built on actual ebusiness experience Creates a single global electronic market Enables all parties irrespective of size to engage in netbased ebusiness Provides for plug and play shrink-wrapped solutions Enables parties to complement and extend current EC/EDI investment Expands ebusiness to new and existing trading partners Facilitates convergence of current and new XML efforts http: //www. ebxml. org/geninfo. htm Introduction to Informatics - Fall 01
eb. MXL components Uses a component set that cover common business requirements and processes Messaging Allows sending and receipt of business data in a standard “envelope and message” format Uses Simple Object Access Protocol (SOAP) SOAP defines a format using a header containing data about the sender, receiver, routing, security Allows attachment of digitized files (drawings, flow charts etc) http: //www. w 3. org/TR/SOAP/ Introduction to Informatics - Fall 01
SOAP is a protocol for exchanging information in a decentralized, distributed environment It is an XML based protocol with three parts: An envelope that defines a framework for describing what is in a message and how to process it A framework for expressing messag content, who should deal with it, and whether it is optional or mandatory A set of encoding rules for expressing instances of application-defined datatypes A convention for representing remote procedure calls and responses Introduction to Informatics - Fall 01
An example of SOAP POST /Stock. Quote HTTP/1. 1 Host: www. stockquoteserver. com Content-Type: text/xml; charset="utf-8” Content-Length: nnnn SOAPAction: "Some-URI" This is embedded in an HTTP request <SOAP-ENV: Envelope xmlns: SOAP ENV="http: //schemas. xmlsoap. org/soap/envelope/” SOAP ENV: encoding. Style="http: //schemas. xmlsoap. org/soap/encoding/"> <SOAP-ENV: Body> <m: Get. Last. Trade. Price xmlns: m="Some-URI"> <symbol>DIS</symbol> </m: Get. Last. Trade. Price> </SOAP-ENV: Body> </SOAP-ENV: Envelope> Introduction to Informatics - Fall 01
Modeling business processes: eb. XML Specification Schema Describes interoperable processes allowing business partners to collaborate Uses existing modeling languages to represent the flow of business data (Universal Modeling Language) Processes can be captured to fine grained levels of resolution This allows interoperability It is a bridge between ebusiness process modeling and specification of ebusiness software http: //www. ebxml. org/specs/eb. BPSS. pdf Introduction to Informatics - Fall 01
Modeling business processes A business collaboration is a set of transactions between business partners Each plays one or more roles in the collaboration eb. XML supports binary and multiparty collaborations A business transaction is conducted between two parties playing opposite roles in the exchange: a requesting role and a responding role A transaction always succeeds or fails If it succeeds it may be legally binding or otherwise govern partners’ collaborative activities If it fails, it is null and void and each must relinquish any mutual claim established by the transaction Introduction to Informatics - Fall 01
In a business transaction a business document is exchanged between requesting and responding roles There is a requesting document and an optional responding document This depends on transaction semantics (one-way notification vs. two-way conversation) Document definition uses eb. XML core component specifications It results in a DTD or schema that an eb. XML Business Process Specification points to Business transaction choreography is the ordering and transitions between business transactions or subcollaborations within a binary collaboration Introduction to Informatics - Fall 01
eb. XML business transaction semantics allows businesses to specify ecommerce transactions that provide Interaction Predictability Clear roles, transaction scope, time bounds, business information semantics, determination of success/failure Ability to create legally binding contracts Business transactions may be agreed to bind the parties Nonrepudiation Keeping artifacts to aid in legal enforceability Authorization Security Require authorization of parties performing roles Introduction to Informatics - Fall 01
Document Security Documents are to be authorized, authenticated, confidential, tamperproof Reliability Specifying reliable delivery of business documents and signals Run time business transaction semantics The rules and configuration parameters required for business service interface software will predictably and deterministically execute eb. XML business transactions Introduction to Informatics - Fall 01
These are some of the tags that have been created to capture the semantics of business transactions name Defines the name of the Business Transaction is. Guaranteed. Delivery. Required Both partners must agree to use a transport that guarantees delivery pre. Condition A description of a state external to this transaction that is required before this transaction can commence Introduction to Informatics - Fall 01
post. Condition A description of a state that does not exist before the execution of this transaction but will exist as a result of the execution of this transaction begins. When A description of an event external to the transaction that normally causes this transaction to commence ends. When A description of an event external to this transaction that normally causes this transaction to conclude pattern The optional reference to a pattern that this transaction is based on Introduction to Informatics - Fall 01
Collaboration Protocol Profiles (CCP) Trading partner profiles and agreements can be supported These contain industries, business processes, message types and data exchange formats that a company uses Collaboration Protocol Agreement (CPA) This specifies the elements of the CPP that will be used in an exchange between two companies It is an automated exchange of information Introduction to Informatics - Fall 01
Registries and Repositories contain modeled processes, message types, business vocabularies, and CPPs They are industry specific and match potential business partners Registries will be indexes to repositories They will allow: Storage and retrieval objects Querying the database Updating Tracking versions Classifying of CPPs and CPAs Introduction to Informatics - Fall 01
Here’s how it might work 1. Specify a business transaction 2. 2. Specify the business document flow for the transaction 3. 3. Specify a binary collaboration re-using the transaction 4. 4. Specify a choreography for the binary collaboration 5. 5. Specify a higher level binary collaboration re-using the lower level binary collaboration 6. 6. Specify a multiparty collaboration re-using binary collaborations Introduction to Informatics - Fall 01
This is an example of a notification transaction with a one-way document flow <Business. Transaction name="Notify of advanceshipment"> <Requesting. Business. Activity name=""> <Document. Envelope Business. Document name="ASN"/> </Requesting. Business. Activity> <Responding. Business. Activity name=""> </Responding. Business. Activity> </Business. Transaction> Introduction to Informatics - Fall 01
This is an example of a notification transaction with a two-way document flow <Business. Transaction name="Create Order"> <Requesting. Business. Activity name="” is. Non. Repudiation. Required="true” time. To. Acknowledge. Receipt=”P 2 D” time. To. Acknowledge. Acceptance=”P 3 D"> <Document. Envelope Business. Document="Purchase Order"/> </Requesting. Business. Activity> <Responding. Business. Activity name="” is. Non. Repudiation. Required="true time. To. Acknowledge. Receipt=”P 5 D"> <Document. Envelope is. Positive. Response="true” Business. Document="PO Acknowledgement"/> </Document. Envelope> </Responding. Business. Activity> </Business. Transaction> Introduction to Informatics - Fall 01
Context for eb. XML BP specification Built with eb. XML core components Business document specification Repository Business service interface CPP Implement roles CPA CPP Business service interface Implement roles Introduction to Informatics - Fall 01
A model of a document flow eb. XML Business Process Specification Schema, p 21 Introduction to Informatics - Fall 01
Examples of business signals in a document flow eb. XML Business Process Specification Schema, p 35 Introduction to Informatics - Fall 01
1 11 Reque st eb. X ML sp Send e ecifica 3 Bu b X tion M L ild Sys s p e c ificatio tem n 2 4 Regist er com pany p rofile 8 TPA Accepted DO BUSINESS! 7 Submit TPA Repository y. X e 6 n a mp Profil rio 10 o a n C t ’s ce u X S o y ’s rio ab pan a X y n r y ue Com an s Sce p 5 Q nd t Com y X’ e S s an e p u m eq Co 9 R d n Se eb. XML BO Library eb. XML BP Model Specifications Profiles Scenarios From: http: //www. metronet. com/~raw lins/eb. XML_Introduction. ppt Introduction to Informatics - Fall 01
I. XML applications • Why these applications are important? II. eb. XML III. XFDL IV. Information and Content Exchange V. Web Modeling Language VI. Text Encoding Initiative Introduction to Informatics - Fall 01
III. XFDL XML + Forms = Extensible Forms Description Language Forms are the primary user interface for business Businesses produce 90 billion pre-printed pages daily Paper forms allow specific sets of data to be easily organized, classified, and understood Forms are a structured way to represent data Efficient use of forms allows companies to carry out high-volume business processes They provide the templates for data collection, and the record or archive of the data collected Introduction to Informatics - Fall 01
Forms create transaction records They are contractual in nature (explicitly or implicitly) Users of a form participate in the contract by filling in the necessary information and signing it If there is disagreement, the form is proof of the transaction Forms capture a fixed record of the data at the time the form was signed They are a valid “source documents” Indelible ink prevents tampering, and the signature provides signer authentication and authorization How can this scenario be handled digitally? Introduction to Informatics - Fall 01
Three keys for the management of transaction records Security Authorization, document authentication, and signer authentication Non-repudiation Digital signature and contextual information Auditability Who was involved? When did the transaction occur? What is the nature of the transaction? What are the results of the transaction? Introduction to Informatics - Fall 01
XFDL provides intelligent, enforceable, secure business forms This represents an advance over standard forms, which separate content from context <form> Name Address Bozo T. Clowne 2 Rubber Nose Circle What is your pet’s name? Tricksie is sent as <form> Name=Bozo+T+Clowne&address=2+Rubber+Nose+Circle&pet=Tricksie Introduction to Informatics - Fall 01
When you click on “submit, ” the form input data is sent to the server The answers (input data) are transmitted, but not the questions (form template) This means that the forms are not enforceable and can be repudiated In a single file, XFDL stores: The form template The input data The form’s internal logic It uses Xpath to search the XML documents Introduction to Informatics - Fall 01
XFDL allows the secure transmission and storage of “trusted” XML documents It allows these data to be accessed and authorized with a digital signature This provided “non-repudiability” It is interoperable It doe not specify any “business semantics” This means it can work with existing business markup languages It can use the DTDs and schemas of Biz. Talk, CBL, c. XML Introduction to Informatics - Fall 01
XFDL supports a “forms repository” of XFDL documents that provide Legally-admissible transaction records for dispute reconciliation Business audits Chain-of-custody processes In technical terms, it follows the prescription of the W 3 C It is readable, extensible, open source Introduction to Informatics - Fall 01
<? xml version="1. 0"? > <XFDL version="4. 0. 0"> <page sid="p 1"> <label sid="Title"> <value>Pythagorean Theorem</value> <fontinfo content="array"> <facename>Times</facename> <ae>18</ae> <ae>bold</ae> </fontinfo> </label> <field sid="A"> <label>Enter side length A: </label> <value>3</value> </field> <field sid="B"> <label>Enter side length B: </label> <value>4</value> </field> <field sid="C"> <label>Hypotenuse length C is: </label> <editstate>readonly</editstate> <value content="compute"> <cval>5</cval> <compute> <![CDATA[ A. value <= "0" || B. value <= "0"? "" : sqrt(A. value*A. value +B. value*B. value)]]> </compute> </value> </field> </page> </XFDL> An example of XFDL Introduction to Informatics - Fall 01
I. XML applications • Why these applications are important? II. eb. XML III. XFDL IV. Information and Content Exchange V. Web Modeling Language VI. Text Encoding Initiative Introduction to Informatics - Fall 01
IV. Information and Content Exchange ICE addresses the problem of syndication Reuse and redistribution and content among web sites Syndication requires A common vocabulary among syndicators and subscribers A common protocol and content management model ICE manages and automates syndication relationships, data transfer, and results analysis With an industry specific vocabulary, ICE allows syndication of any type of information between providers and subscribers http: //www. w 3. org/TR/NOTE-ice Introduction to Informatics - Fall 01
ICE is an XML application and a protocol It uses Channel Definition format (CDF) to define a mechanism for scheduling delivery of encapsulated content ICE adds Subscription relationship management Asset management Reliable sequenced package delivery Asset repair operations Constraints on exchange of data (terms of the syndication) Introduction to Informatics - Fall 01
The ICE protocol covers four types of operations: Subscription establishment and management The subscriber obtains a catalog of subscriptions from the syndicator The subscriber subscribes to one, negotiating a mutually agreeable delivery method and schedule Data Delivery ICE uses a package concept as a container mechanism for generic data items This sequenced package model allows both incremental and full updates It supports push and pull data transfer models Introduction to Informatics - Fall 01
Event logs ICE allows event logs to be automatically exchanged between subscribers and syndicators This is important for syndication management Miscellaneous ICE provides support for miscellaneous operations The ability to renegotiate protocol parameters in an established relationship The ability to send unsolicited ad-hoc notifications (i. e. , textual messages) between systems The ability to query and ascertain the state of the relationship Introduction to Informatics - Fall 01
For example: Headlines. com is an online content provider selling subscriptions to a headline service. They update headlines three times a day A headline has four fields: headline text, thumbnail GIF, date, and a URL link to the story on Headlines. com Subscribers receive these headlines They display the headlines on their own site, with the URL link to Headlines. com For an extra fee, subscribers post the actual story text from Headlines. com Introduction to Informatics - Fall 01
An example of ICE Package Update Example (1) SUBSCRIBER ==> SYNDICATOR: HTTP POST: <ice-payload> <ice-request> Get Package </ice-request> </ice-payload> (2) SUBSCRIBER <== SYNDICATOR: HTTP Response to the POST: <ice-payload> <ice-response> Package: X Confirmation Required </ice-response> </ice-payload> Introduction to Informatics - Fall 01
I. XML applications • Why these applications are important? II. eb. XML III. XFDL IV. Information and Content Exchange V. Web Modeling Language VI. Text Encoding Initiative Introduction to Informatics - Fall 01
V. Web Modeling Language (Web. ML) is a modeling language for designing Web sites It is a notation for specifying complex Web sites at the conceptual level It enables the high-level description of a site: Data content (structural model), The pages that compose it (composition model), The topology of links between pages (navigation model), The layout and graphic requirements for page rendering (presentation model), The customization features for one-to-one content delivery (personalization model) Introduction to Informatics - Fall 01
Web. ML uses graphic notation and a textual XML syntax Structural Model: expresses the data content of the site, in terms of the relevant entities and relationships Hypertext Model: describes one or more hypertexts that can be published in the site Each different hypertext defines a so-called site view Composition Model: specifies which pages compose the hypertext, and which content units make up a page Six types of content units can be used to compose pages: data, multi-data, index, filter, scroller and direct units Introduction to Informatics - Fall 01
Navigation Model: expresses how pages and content units are linked to form the hypertext Non-contextual links connect semantically independent pages (the artist’s page to the site’s home page) Contextual links connect the content of the destination unit of the link to the content of the source unit Presentation Model expresses the layout and graphic appearance of pages with an XML syntax Presentation specifications are either page-specific or generic. This is independent of the output device the rendition language Introduction to Informatics - Fall 01
Personalization model: users and groups are modeled in the form of predefined entities called User and Group The features of these entities can be used for storing group-specific or individual content This includes shopping suggestions, lists of favorites, and resources for graphic customization High-level business rules can be written using a simple XML syntax They can be defined for reacting to site-related events, like user clicks and content updates Business rules produce new user-related information (shopping histories) or update the site content (inserting new offers matching users’ preferences) Introduction to Informatics - Fall 01
The high level Web. ML dtd <? xml encoding="UTF-8"? > <!-- ******************************* --> <!-- * Web Modeling Language (Web. ML) Document Type Definition <!-- * * --> <!-- * This DTD is a root for all other DTDs * --> <!-- * Version 2. 0. 2 (8 May 2000) * --> <!-- ************************************************************* --> <!-- * Web. ML. The root element. * --> <!-- ******************************* --> <!ELEMENT Web. ML (Structure, Navigation, Personalization, Mapping)> <!ATTLIST Web. ML version CDATA #REQUIRED site. Name CDATA #REQUIRED > Introduction to Informatics - Fall 01
The first part of the Web. ML Navigation dtd <!-- ******************************* --> <!-- * Navigation. * --> <!-- ******************************* --> <!ELEMENT Navigation (SITEVIEW*)> <!-- ******************************* --> -- * SITEVIEW. * --> ******************************* --> <!-- <! <!ELEMENT SITEVIEW (PAGE*, CONNECTUNIT*, CREATEUNIT*, DELETEUNIT*, DIRECTUNIT*, DISCONNECTUNIT*, MODIFYUNIT*, OPERATIONUNIT*, SITEPRESENTATION? )> <!ATTLIST SITEVIEW id ID #REQUIRED name CDATA #IMPLIED home. Page IDREF #REQUIRED > Introduction to Informatics - Fall 01
I. XML applications • Why these applications are important? II. eb. XML III. XFDL IV. Information and Content Exchange V. Web Modeling Language VI. Text Encoding Initiative Introduction to Informatics - Fall 01
VI. Text Encoding Initiative TEI is an international and interdisciplinary standard used to represent literary and linguistic texts for online research and teaching It was created in 1987 and modified in 2000 It is used by libraries, museums, publishers, and scholars It is managed by the TEI consortium University of Oxford Brown University of Bergen University of Virginia Introduction to Informatics - Fall 01
TEI is an encoding scheme that is “maximally expressive” and “minimally obsolescent” It is used to represent text, images, and sound TEI is concerned with the textual features that should be encoded (made explicit) in electronic text It contains ~400 textual feature definitions, expressed as SGML elements and attributes, with documentation and examples Elements are grouped into tag sets This creates a modular scheme which can be configured to provide hardware and software-, and applicationindependent support for encoding text in all languages Introduction to Informatics - Fall 01
The generic form of a marked up TEI text is: <TEI. 2> <tei. Header> [ TEI Header information ] </tei. Header> <text> <front> [ front matter. . . ] </front> <body> [ body of text. . . ] </body> <back> [ back matter. . . ] </back> </text> </TEI. 2> Examples of the TEI elements: 19. Front and Back Matter 19. 1. Front Matter 19. 1. 1. Title Page 19. 1. 2. Prefatory Matter 19. 2. Back Matter 19. 2. 1. Structural Divisions of Back Matter Electronic Title Page The File Description 20. 1. 1. The Title Statement 20. 1. 2. The Edition Statement 20. 1. 3. The Extent Statement 20. 1. 4. The Publication Statement 20. 1. 5. Series and Notes Statements 20. 1. 6. The Source Description 20. The 20. 1. Introduction to Informatics - Fall 01
TEI dtd for drama elements <!-- TEI P 4 DTD. Generated May 2001 by dtd. Gen --> <! -- [DDR] 10. : Base tag set for Performance texts --> <!-[DDRFAB] 10. 1: Specialized front and back matter for performance texts --> <!-- [DDRPRO] 10. 1. 2: Prologues and Epilogues --> <!ENTITY % prologue 'INCLUDE' > <![ %prologue; [ <!ELEMENT %n. prologue; %om. RR; ((%m. divtop; | %m. Incl; )*, ((%component; ), (%m. Incl; )*)+, ((%m. divbot; ), (%m. Incl; )*)*)> <!ATTLIST %n. prologue; %a. global; TEIform CDATA 'prologue' > ]]> <!ENTITY % epilogue 'INCLUDE' > <![ %epilogue; [ <!ELEMENT %n. epilogue; %om. RR; ((%m. divtop; | %m. Incl; )*, ((%component; ), (%m. Incl; )*)+, ((%m. divbot; ), (%m. Incl; )*)*)> <!ATTLIST %n. epilogue; %a. global; TEIform CDATA 'epilogue' > ]]> http: //www. tei-c. org/Guidelines/DTD/teifig 2. dtd Introduction to Informatics - Fall 01