Request for applications defined within CeaCapability

Paul Harrison Paul.Harrison at manchester.ac.uk
Wed Oct 10 07:12:30 PDT 2007


On 2007-10 -08, at 14:36, Guy Rixon wrote:

> Hi,
>
> recent work with CEA and AstroGrid DSA (proto-TAP) reveals a need  
> to define
> a CEA application inside the CeaCapability of the service providing  
> it. E.g.,
> instead of registering
>
>   ivo://whatever/MyCoolApp
>   ivo://whatever/MyAppServer
>
> as separate registry entries, one would register
>
>   ivo://whatever/MyAppServer
>   ivo://whatever/MyAppServer#MyCoolApp
>
> The latter form says, specifically, that MyCoolApp is only  
> available via
> ivo://whatever/MyAppServer and nowhere else; the app does not have  
> a formal
> identity. The old way of registering apps separately would be used  
> instead to
> define a standard, mirrored app.
>
> Why would we do this? Because it's _easier_ to inline the local,  
> unique apps.
> It's easier for the service provider, for the registry and for the  
> client
> consuming the registrations. It makes the service definition self- 
> contained
> and it fits well with VOSI and pull-registration. We trade a little  
> more
> complexity in the schema for a lot less complexity in installation and
> operation.
>
> This proposal applies only to schemata based on VOResource 1.0. I  
> don't want
> to change the old oners based on VOResource 0.10.
>
This is not so easy to implement as it might at first appear with the  
proposed 1.0 schema ( see http://www.ivoa.net/twiki/bin/view/IVOA/ 
CommonExecutionArchitecture) - I have been experimenting a little -  
whilst it would be possible to define the CEACapability as

	<xs:complexType name="CeaCapability">
	   <xs:annotation>
	      <xs:documentation>
	         The definition of a capability conforming to the CEA
	         specification, capable of running one or more
	         CeaApplications
	      </xs:documentation>
	   </xs:annotation>
	   <xs:complexContent>
	      <xs:extension base="vr:Capability">
	         <xs:choice>
	            <xs:element name="managedApplications"
	               type="cea:ManagedApplications" maxOccurs="1"
	               minOccurs="1">
	            </xs:element>
	            <xs:element name="applicationDefinition"  
type="ceab:ApplicationBase" maxOccurs="1" minOccurs="1"></xs:element>
	         </xs:choice>
	      </xs:extension>
	   </xs:complexContent>
	</xs:complexType>

i.e. the Capability either points to a list or managed applications  
or a single ceab:ApplicationBase (which is the meat of the  
Application definition excluding all of the Dubin Core metadata)  
there are some issues I think with the naming of the application and  
extra complexity of how a client might be able to discover the  
applications that are available.

Dealing with naming first - There is no difference between the formal  
identifier for the service and the application in this scheme - this  
means that there can be only one application per server  (presumably  
not a problem) as the application normally takes its name from the  
identifier of the whole resource - i.e. there is no place for naming  
the fragment - though that could be added to the suggested capability  
above. However, even then, there would only be one set of dublin core  
metadata for both service and application, so the implementor needs  
to be careful that the dublin core describes the application rather  
than the service (even though the registry entry would be formally of  
a Service type), as any registry browser would be displaying metadata  
such as Title as feedback to the user.

While I agree that it is true that registering one application for  
the server there is less work with this scheme, this is at the  
expense of making life harder for a client that is looking for  
available applications  - only possible for a registry that allows  
xquery and has "fine -grained" metadata.

I have to say that I am not sure that the benefit to the relatively  
small number of service implementors outweighs the extra costs for  
the client of having to deal with two ways of finding applications  
and application servers.


Dr. Paul Harrison
JBCA, Manchester University
http://www.manchester.ac.uk/jodrellbank





More information about the grid mailing list