Introduction to Informatics - Fall 01 I.XML applications Why these applications are important? II....
-
Upload
eric-ramsey -
Category
Documents
-
view
216 -
download
0
description
Transcript of Introduction to Informatics - Fall 01 I.XML applications Why these applications are important? II....
Introduction to Informatics - Fall 01
I.XML applications• Why these applications are important?II. ebXML III. XFDL
IV. Information and Content Exchange V. Web Modeling Language VI. Text Encoding Initiative
Introduction to Informatics - Fall 01
I.XML applicationsWhy 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 spotThis takes a big load off Web serversIt 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 webXLink allows links to multiple destinationsOther kinds of links insert text or images where you click, instead of forcing you to leave the pageIt 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 formatUsing XML applications allows:
Storage and manipulation of native XML dataHigh-performance querying capability on large sets of XML-based componentsIntegration 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. ebXML III. XFDL
IV. Information and Content Exchange V. Web Modeling Language VI. Text Encoding Initiative
Introduction to Informatics - Fall 01
II. ebXML?It is an XML application used for b2b communication
It is a common set of specifications for ebusinessIt 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 sourceIt seeks to develop an open technical framework using
XML in a consistent and uniform manner to allow the exchange of all electronic business datahttp://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 importantThe goal of the standard is to make ebusiness ubiquitousIt should work for any size business in any country reached by the net
Introduction to Informatics - Fall 01
ebXML is the latest step in the development of ebusiness technology
It has its roots in EDI and XMLThe task
Make ebusiness information exchange simpleUse XML as an open standardProvide a migration path from EDIEncourage industry cooperation and buy-inAvoid proprietary hardware and software solutionsSupport a wide range of languagesAccommodate 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 experienceCreates a single global electronic market Enables all parties irrespective of size to engage in net-based ebusinessProvides for plug and play shrink-wrapped solutions Enables parties to complement and extend current EC/EDI investmentExpands ebusiness to new and existing trading partners Facilitates convergence of current and new XML effortshttp://www.ebxml.org/geninfo.htm
Introduction to Informatics - Fall 01
ebMXL componentsUses a component set that cover common business requirements and processes
MessagingAllows sending and receipt of business data in a standard “envelope and message” formatUses 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.w3.org/TR/SOAP/
Introduction to Informatics - Fall 01
SOAP is a protocol for exchanging information in a decentralized, distributed environmentIt 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 datatypesA convention for representing remote procedure calls and responses
Introduction to Informatics - Fall 01
POST /StockQuote HTTP/1.1 Host: www.stockquoteserver.com Content-Type: text/xml; charset="utf-8” Content-Length: nnnn SOAPAction: "Some-URI"<SOAP-ENV:Envelope xmlns:SOAP ENV="http://schemas.xmlsoap.org/soap/envelope/” SOAP ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
<SOAP-ENV:Body> <m:GetLastTradePrice xmlns:m="Some-URI">
<symbol>DIS</symbol> </m:GetLastTradePrice></SOAP-ENV:Body>
</SOAP-ENV:Envelope>
An example of SOAP
This is embedded in an HTTP request
Introduction to Informatics - Fall 01
Modeling business processes: ebXML 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 resolutionThis allows interoperability
It is a bridge between ebusiness process modeling and specification of ebusiness softwarehttp://www.ebxml.org/specs/ebBPSS.pdf
Introduction to Informatics - Fall 01
Modeling business processesA business collaboration is a set of transactions between business partners
Each plays one or more roles in the collaborationebXML 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 failsIf it succeeds it may be legally binding or otherwise govern partners’ collaborative activitiesIf 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 documentThis depends on transaction semantics (one-way notification vs. two-way conversation)
Document definition uses ebXML core component specifications
It results in a DTD or schema that an ebXML Business Process Specification points to
Business transaction choreography is the ordering and transitions between business transactions or sub- collaborations within a binary collaboration
Introduction to Informatics - Fall 01
ebXML 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 contractsBusiness transactions may be agreed to bind the parties
NonrepudiationKeeping artifacts to aid in legal enforceability
Authorization SecurityRequire authorization of parties performing roles
Introduction to Informatics - Fall 01
Document SecurityDocuments are to be authorized, authenticated, confidential, tamperproof
ReliabilitySpecifying reliable delivery of business documents and signals
Run time business transaction semanticsThe rules and configuration parameters required for business service interface software will predictably and deterministically execute ebXML business transactions
Introduction to Informatics - Fall 01
These are some of the tags that have been created to capture the semantics of business transactionsname
Defines the name of the Business TransactionisGuaranteedDeliveryRequired
Both partners must agree to use a transport that guarantees delivery
preCondition A description of a state external to this transaction that is required before this transaction can commence
Introduction to Informatics - Fall 01
postCondition 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
beginsWhen A description of an event external to the transaction that normally causes this transaction to commence
endsWhen 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 supportedThese 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 companiesIt is an automated exchange of information
Introduction to Informatics - Fall 01
Registries and RepositoriesRepositories contain modeled processes, message types, business vocabularies, and CPPs They are industry specific and match potential business partnersRegistries will be indexes to repositoriesThey 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 work1. Specify a business transaction 2. Specify the business document flow for the transaction3. Specify a binary collaboration re-using the transaction4. Specify a choreography for the binary collaboration5. Specify a higher level binary collaboration re-using the lower level binary collaboration6. Specify a multiparty collaboration re-using binary collaborations
Introduction to Informatics - Fall 01
<BusinessTransaction name="Notify of advanceshipment"> <RequestingBusinessActivity name=""> <DocumentEnvelope BusinessDocument name="ASN"/></RequestingBusinessActivity>
<RespondingBusinessActivity name=""></RespondingBusinessActivity>
</BusinessTransaction>
This is an example of a notification transaction with a one-way document flow
Introduction to Informatics - Fall 01
<BusinessTransaction name="Create Order"><RequestingBusinessActivity name="”
isNonRepudiationRequired="true”timeToAcknowledgeReceipt=”P2D”timeToAcknowledgeAcceptance=”P3D"><DocumentEnvelope
BusinessDocument="Purchase Order"/></RequestingBusinessActivity><RespondingBusinessActivity name="”
isNonRepudiationRequired="true timeToAcknowledgeReceipt=”P5D">
<DocumentEnvelope isPositiveResponse="true”BusinessDocument="PO Acknowledgement"/>
</DocumentEnvelope></RespondingBusinessActivity> </
BusinessTransaction>
This is an example of a notification transaction with a two-way document flow
Introduction to Informatics - Fall 01
ebXML BP specification
Business document
specification
ebXML core components
Repository
CPACPP CPPBusiness service
interface
Business service
interface
Context for Built with
Implement roles Implement roles
Introduction to Informatics - Fall 01
A model of a document flow
ebXML Business Process Specification Schema, p21
Introduction to Informatics - Fall 01
Examples of business signals in a document flow
ebXML Business Process Specification Schema, p35
Introduction to Informatics - Fall 01
33 Build SystemBuild System
SpecificationsSpecifications
ProfilesProfiles
ScenariosScenarios
Request ebXML specification
Request ebXML specification
11
44 Register company profile
Register company profile
Query about Company X
Query about Company X
55
Request Company X’s Scenario
Request Company X’s Scenario
99
DODO BUSINESS!BUSINESS!
1111
Send Company X’s Scenario
Send Company X’s Scenario1010
ebXML BP ModelebXML BP Model
ebXML BO LibraryebXML BO Library
Send Company X’s Profile
Send Company X’s Profile66
SubmitSubmit TPATPA77
TPA AcceptedTPA Accepted88
Send ebXML specification
Send ebXML specification 22
Repository
From: http://www.metronet.com/~rawlins/ebXML_Introduction.ppt
Introduction to Informatics - Fall 01
I.XML applications• Why these applications are important?II. ebXML III. XFDL
IV. Information and Content Exchange V. Web Modeling Language VI. Text Encoding Initiative
Introduction to Informatics - Fall 01
III. XFDLXML + Forms = Extensible Forms Description LanguageForms are the primary user interface for business
Businesses produce 90 billion pre-printed pages dailyPaper 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 processesThey provide the templates for data collection, and the
record or archive of the data collected
Introduction to Informatics - Fall 01
Forms create transaction recordsThey 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 recordsSecurity
Authorization, document authentication, and signer authentication
Non-repudiation Digital signature and contextual information
AuditabilityWho 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>NameAddressWhat is your pet’s name?<form>
Bozo T. Clowne 2 Rubber Nose Circle Tricksie
Name=Bozo+T+Clowne&address=2+Rubber+Nose+Circle&pet=Tricksie
is sent as
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 repudiatedIn a single file, XFDL stores:
The form templateThe input dataThe 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 signatureThis provided “non-repudiability”
It is interoperableIt doe not specify any “business semantics”This means it can work with existing business markup languages It can use the DTDs and schemas of BizTalk, CBL, cXML
Introduction to Informatics - Fall 01
XFDL supports a “forms repository” of XFDL documents that provide
Legally-admissible transaction records for dispute reconciliationBusiness auditsChain-of-custody processes
In technical terms, it follows the prescription of the W3CIt is readable, extensible, open source
Introduction to Informatics - Fall 01
<?xml version="1.0"?><XFDL version="4.0.0">
<page sid="p1"><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. ebXML III. XFDL
IV. Information and Content Exchange V. Web Modeling Language VI. Text Encoding Initiative
Introduction to Informatics - Fall 01
IV. Information and Content ExchangeICE 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.w3.org/TR/NOTE-ice
Introduction to Informatics - Fall 01
ICE is an XML application and a protocolIt uses Channel Definition format (CDF) to define a mechanism for scheduling delivery of encapsulated content
ICE adds Subscription relationship managementAsset managementReliable sequenced package deliveryAsset 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 syndicatorThe 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 itemsThis sequenced package model allows both incremental and full updatesIt supports push and pull data transfer models
Introduction to Informatics - Fall 01
Event logsICE allows event logs to be automatically exchanged between subscribers and syndicatorsThis is important for syndication management
MiscellaneousICE 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 dayA 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.comFor an extra fee, subscribers post the actual story text from Headlines.com
Introduction to Informatics - Fall 01
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>
An example of ICE
Introduction to Informatics - Fall 01
I.XML applications• Why these applications are important?II. ebXML III. XFDL
IV. Information and Content Exchange V. Web Modeling Language VI. Text Encoding Initiative
Introduction to Informatics - Fall 01
V. Web Modeling Language (WebML) is a modeling language for designing Web sitesIt is a notation for specifying complex Web sites at the conceptual levelIt 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
WebML uses graphic notation and a textual XML syntax Structural Model: expresses the data content of the site, in terms of the relevant entities and relationshipsHypertext Model: describes one or more hypertexts that can be published in the site
Each different hypertext defines a so-called site viewComposition 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 contentThis includes shopping suggestions, lists of favorites, and resources for graphic customizationHigh-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
<?xml encoding="UTF-8"?><!-- ************************************************************* --> <!-- * Web Modeling Language (WebML) Document Type Definition * --> <!-- * * --> <!-- * This DTD is a root for all other DTDs * -->
<!-- * * --> <!-- * Version 2.0.2 (8 May 2000) * --
> <!-- ************************************************************* --><!-- ************************************************************* --> <!-- * WebML. The root element. * -->
<!-- ************************************************************* --><!ELEMENT WebML (Structure, Navigation, Personalization, Mapping)> <!ATTLIST WebML
version CDATA #REQUIREDsiteName CDATA #REQUIRED
>
The high level WebML dtd
Introduction to Informatics - Fall 01
<!-- ************************************************************* --> <!-- * Navigation. * --> <!-- ************************************************************* --><!ELEMENT Navigation (SITEVIEW*)><!-- ************************************************************* --> <!-- * SITEVIEW. * --> <!-- ************************************************************* --><!ELEMENT SITEVIEW (PAGE*, CONNECTUNIT*, CREATEUNIT*, DELETEUNIT*,
DIRECTUNIT*, DISCONNECTUNIT*, MODIFYUNIT*, OPERATIONUNIT*, SITEPRESENTATION?)> <!
ATTLIST SITEVIEWid ID #REQUIREDname CDATA #IMPLIED
homePage IDREF #REQUIRED >
The first part of the WebML Navigation dtd
Introduction to Informatics - Fall 01
I.XML applications• Why these applications are important?II. ebXML III. XFDL
IV. Information and Content Exchange V. Web Modeling Language VI. Text Encoding Initiative
Introduction to Informatics - Fall 01
VI. Text Encoding InitiativeTEI 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 2000It is used by libraries, museums, publishers, and scholars
It is managed by the TEI consortiumUniversity of OxfordBrown UniversityUniversity of BergenUniversity 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 soundTEI 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 examplesElements are grouped into tag sets
This creates a modular scheme which can be configured to provide hardware and software-, and application- independent support for encoding text in all languages
Introduction to Informatics - Fall 01
The generic form of a marked up TEI text is:<TEI.2>
<teiHeader> [ TEI Header information ] </teiHeader><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 Matter19.1.1. Title Page 19.1.2. Prefatory Matter
19.2. Back Matter 19.2.1. Structural Divisions of Back Matter 20. The
Electronic Title Page 20.1. 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
Introduction to Informatics - Fall 01
<!-- TEI P4 DTD. Generated May 2001 by dtdGen --> <!-- [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/teifig2.dtd
TEI dtd for drama elements