- 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