- From: Danny Ayers <danny666@virgilio.it>
- Date: Wed, 31 Mar 2004 14:40:08 +0200
- To: David Martin <martin@AI.SRI.COM>
- Cc: public-sws-ig <public-sws-ig@w3.org>
*Not* another new serialization of RDF, but apologies, it is a little off-topic. I couldn't help being struck by the verbosity and syntax complexity of David's example. Ok, I'm sure this has been raised before, and in this spec definition phase with RDF/XML as the interchange language I suppose that's to some extent understandable. But might it still not make sense to express things like this in a more concise language that was originally designed for specifying processes, i.e. a programming language. e.g. <process:AtomicProcess rdf:id="Add"> <xxx:interpreter rdf:resource="http://java.sun.com"/> <xxx:source rdf:parseType="Literal"><![CDATA[ float process(float x, float y); ]]></xxx:source> <xxx:terminals> <xxx:input rdf:id="Add_In2"> <xxx:input rdf:id="Add_In2"> <xxx:output rdf:id="Output"> </xxx:terminals> </process:AtomicProcess> A microparser could derive the same triples from this as the more verbose version. Cheers, Danny. David Martin wrote: > > Here's a simple example with an effect expression, which is consistent > with our recent discussions. But there are several issues listed > below. I'd appreciate comments on those. (Drew, Mark, Bijan, your > attention is particularly solicited.) > > Note: the effect assumes the existence of an "arithmetic" ontology > defining "Pair" (a class) and "sum" (a property), 2 basic concepts of > arithmetic. The idea here is to define the effect of AtomicProcess > "Add", in terms of these basic concepts. (That is, the effect simply > says that the output is the sum of the 2 input values.) > > Note: As mentioned in Bijan's recent message, each input and output is > a SWRL variable (because Input and Output are subclasses of > swrl:Variable). > > <process:AtomicProcess rdf:id="Add"> > <process:hasInput> > <Input rdf:id="Add_In1"> > <parameterType rdf:datatype= > "&xsd;anyURI">xsd:float</parameterType> > </Input> > <process:hasInput rdf:id="Add_In2"> > <Input> > <parameterType rdf:datatype= > "&xsd;anyURI">xsd:float</parameterType> > </Input> > </process:hasInput> > <process:hasOutput> > <Output rdf:id="Add_Out"> > <parameterType rdf:datatype= > "&xsd;anyURI">xsd:float</parameterType> > </Output> > </process:hasOutput> > <process:hasEffect> > <???:Formula> > <???:inLanguage rdf:datatype= > "&xsd;anyURI">...swrl...</???:inLanguage> > <???:conjuncts rdf:parseType="Collection"> > <swrl:datavaluedPropertyAtom> > <swrl:propertyPredicate rdf:resource="&arithmetic;sum"/> > <swrl:argument1> > <arithmetic:Pair> > <first rdf:resource="#Add_In1"> > <second rdf:resource="#Add_In2"> > </arithmetic:Pair> > </swrl:argument1> > <swrl:argument2 rdf:resource="#Add_Out"/> > </swrl:datavaluedPropertyAtom> > </???:conjuncts> > </???:Formula> > </process:hasEffect> > </process:AtomicProcess> > > (1) Are we happy with having a Formula class, with properties > "inLanguage" and "conjuncts"? If so, is it defined in DRS' namespace, > or where? Should a value of inLanguage be a URI? > > (2) Does the formula content need to be a literal, as we have > discussed? If so, how is that done? With parsetype=Literal? But > then I'm not clear about where (on what property) to put that. > > (3) hasEffect is a simplification, with respect to OWL-S 1.0. That > is, in 1.0, the value of hasEffect should be an instance of > ConditionalEffect, whereas here it's value is an instance of > ???:Formula. Do we want to allow for a simplification like this? > > Thanks, > David > > -- ---- Raw http://dannyayers.com
Received on Wednesday, 31 March 2004 07:42:28 UTC