OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

ebxml-architecture message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [Elist Home]


Subject: RE: 2.4.1 requirements document


Duane,

I believe that you are mixing a number of different issues. Let's be clear on the 
distinction between the api to the system and the application that interacts with 
the api.

Just because there is one api doesn't mean that you need to spend mucho $$ on some 
automated system to access it.

Let's take a particular example. Suppose the api has a call ServiceGetBusiness. 
This call returns all business that provide a particular service. Why should there 
be two versions of this call in the api depending on whether or not it is being 
called by another machine or by a person using some gui into the reg-rep?

In the case of a machine calling it, the automated system might then take the 
returned information and do further processing with it such as search eash business 
to also find out which ones support ofx for processing payment for the service.

In the case of the human, they might use the GUI to browse the list of returned 
businesses and decide to do something further.

The point being that it is the responsibility of the GUI to handle the interaction 
with the system so that a human, whether they are at mondo corp or mom&pop llc can 
do something with it, but the calls to the system (the api) is the same and there 
is only one of them.

If mondo corp wants to spend big bucks on a system which totally automates 
interaction with the api and integration into their back end systems, then they are 
more them welcome to do it.

If mom&pop llc wants to download some aplet that helps them to formulate queries 
and has some built in style sheets to format the output into whatever html, then 
that is there business.

The case of error handling is the same. The logic you refer to is all on the client 
side and is not part of the api. The system will report whatever errors it is going 
to report. The automated system will have the logic to do whatever it needs to do. 
In the case of the gui, it will report the error and its up to the human user to 
decide what to do next and the client application, depending on its sophistication, 
might have varying degrees of logic built into it to assist the user with error 
handling. In the most simplistic gui, the user might just get back a cryptic error 
message (not unlike a 404 page that you see in your prowser). If the user shells 
out for a more sophisticated client, it will have more capability to interpret the 
error and direct the user as to what they might want to do next.

Regardless, this is all independent of the api into the system.

There are all kinds of other reasons for the single api approach, also. Suppose, 
for example, you try to take a whack to doing the human api as part of the system 
itself, then people are stuck with that output even if it doesn't meet there needs 
so you are stifling the creativity of all of those people out there who would like 
to do all kinds of different things with it. Nobody will be happy with it and 
you'll be stuck with endless modifications trying to glom on different things to 
try and satisfy folks.

Much better to provide the data back in a consistent way and they let anybody who 
wants to do anything they want with it.

Perhaps I'm missing something fundamental here; I don't know. But the argument you 
present does not convince me. 

regards

pk

>From: "Duane Nickull" <duane@xmlglobal.com>
>To: "Peter Kacandes" <Peter.Kacandes@EBay.Sun.COM>, 
<ebXML-Requirements@lists.oasis-open.org>, 
<ebxml-architecture@lists.oasis-open.org>
>Subject: RE: 2.4.1 requirements document
>Date: Tue, 7 Mar 2000 13:30:42 -0800
>MIME-Version: 1.0
>Content-Transfer-Encoding: 7bit
>X-Priority: 3 (Normal)
>X-MSMail-Priority: Normal
>Importance: Normal
>X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2314.1300
>
><peterk>
>I have a question with regard to section 2.4.1 of the document that makes
>reference
>to maintaining two apis, one for machines and another for people. This seems
>to me
>to be extroardinarily inefficient. It seems to me that there should be only
>one API
>to the system. If somebody wants to write a gui to the system, then they are
>welcome to do it. I think it will be highly impractical to try and develop
>and
>maintain two apis. I have made these thoughts known within the architecture
>group,
>but am not aware that we came to any kind of conclusion on the topic.
></peterk>
>
>
>Peter:
>
>The two API's are absolutely necessary.  In an ideal world where everyone
>has $250,000 to invest in a fully automated system and there are no errors,
>ever, the machnine API may be able to be justified (I am not sure that
>anyone could convince me).
>
>Think of SME's.  They need a human window to the repository.  A lightweight
>(read *simple*) human interface, maybe CGI based, will give them the
>flexability to find the business objects they need without complex
>infrastructure.
>
>The human and Machnie API's are just that - API's.  They do not require any
>extra overhead.  It is the application that provide the functionality.
>
>There is also the concept of logic processing.  If the logic used is in any
>way flawed,  you will not find the obejcts you need.  Imagine a case where
>A->C is not available yet A->B and B->C exist.  This allows a mechanism with
>Logic to now do A->C.  IF the logic is flawed,  the system will not work.
>
>The API's are simplistic, lightweight and necessary.  We cannot exclude
>SME's (or corporate Sweden <g>)from the ebXML infrastructure.
>
>Duane Nickull
>

Peter Kacandes

Application Planning, Architecture & Strategy	phone number: 	X36529
WWOPS IT/Supply Chain Management		email:	peter.kacandes@ebay




[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [Elist Home]

Search: Match: Sort by:
Words: | Help


Powered by eList eXpress LLC