Hi Patanachai, Thanks for explaining the issue in detail. In simple terms, we need multiple client components register a description about an application and store it in a registry. GFac will need to pull the registered description document and execute and manage the compute job. Along with XBaya as the client which registers the document, there are other clients including a gadget interface.
I agree that the current scheme has to revisited (and fix minor issues like you mention about the gridftp tags). But moving from xmlschema to a light weight option is a bigger question. With a proper bean generation library and serializing/deserializing methods I personally favor xml schema but I do not want to be biased either. I am -1 for POJO simply because it will limit non-java bases clients like a simple php web form. JSON in general sounds like a good alternative, but I do not experience with it in a validation and schema sense. I will wait for others to chime in, if there are no better alternatives suggestion, I will import the missing GFac schema from code donation into a commons area - https://svn.apache.org/repos/asf/incubator/airavata/donations/ogce-donation/modules/utils/schemas/gfac-schema-utils/ Cheers, Suresh On Jul 29, 2011, at 2:09 PM, [email protected] wrote: > Hi devs, > > I want to discuss about the type system in GFAC-Core. > > Currently, GFAC module read and write a necessary information based on XML > schema (called GFAC-Schema) as a definition. GFAC-Schema library is > generated from XMLbeans (http://xmlbeans.apache.org/) and is referenced in > the project. > > Examples of GFAC-Schema are: > HostTypeDescription, which describes an environment for a host such as Java > version, Temp directory, GridFTP endpoint etc. > ServiceTypeDescription, which describes a service such as parameters, > service name, etc. > GFAC-SimpleType, which defines a simple parameter type to the service such > as Boolean, Double, Integer, etc. > > This is how system work roughly: > After deploying their software on a computing host, users will register > their host, application, service description via XBaya-GUI (Java Swing). > This registration information will be saved to XRegistry as XML string > according to XML schema. > When users invoke a (Web) service, GFAC will load the necessary information > (host, application directory, parameters, etc.) and execute the deployed > software . > Then, GFAC parses the output from the software, wraps it and send out as an > appropriate parameter type format. > > > So, the question is do we want to continue using XML-Schema. > If, we agree to use XML-Schema, we should import some initial schema from > OGCE GFAC as a new module in Airavata. Also, we need to redesign some > schema. > For Instance, current HostType schema requires GridFTP Endpoint element > which is not necessary if a computing host doesn't have GridFTP. > > Otherwise, what do you propose? POJO, JSON, etc. > > -- > Best Regards, > Patanachai Tangchaisin
