Index: src/nongnu/cashews/owls/process/Binding.java =================================================================== RCS file: src/nongnu/cashews/owls/process/Binding.java diff -N src/nongnu/cashews/owls/process/Binding.java --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ src/nongnu/cashews/owls/process/Binding.java 31 Mar 2005 17:04:42 -0000 @@ -0,0 +1,72 @@ +/* Binding.java -- Representation of an OWL-S binding. + Copyright (C) 2005 The University of Sheffield. + + This file is part of the CASheW-s editor. + + The CASheW-s editor is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2, or (at your option) + any later version. + + The CASheW-s editor is distributed in the hope that it will be useful, but + WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + General Public License for more details. + + You should have received a copy of the GNU General Public License + along with The CASheW-s editor; see the file COPYING. If not, write to the + Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA + 02111-1307 USA. +*/ + +package nongnu.cashews.owls.process; + +/** + *
+ * Bindings are used to define output parameters and describe how + * input parameters acquire their values. In either case, the binding + * contains a reference to the parameter and a description of its value, + * using one of several different mechanisms + *
+ *+ * These mechanisms are as follows: + *
+ *+ * Value specifiers take one of the following two forms: + *
+ *+ * and also contains the type of the parameter reference. + *
+ * + * @author Andrew John Hughes (address@hidden) + * @see ValueData + * @see ValueSource + * @see ValueSpecifier + * @see ValueForm + * @see ValueFunction + */ +public abstract class Binding +{ + + /** + * The value descriptor which specifies how to obtain the value + * for the bound parameter. + * + * @serial the value descriptor, which specifies how to obtain the value + * of the parameter. + */ + private ValueDescriptor descriptor; + +} Index: src/nongnu/cashews/owls/process/InputBinding.java =================================================================== RCS file: src/nongnu/cashews/owls/process/InputBinding.java diff -N src/nongnu/cashews/owls/process/InputBinding.java --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ src/nongnu/cashews/owls/process/InputBinding.java 31 Mar 2005 17:04:42 -0000 @@ -0,0 +1,40 @@ +/* InputBinding.java -- Representation of an OWL-S input binding. + Copyright (C) 2005 The University of Sheffield. + + This file is part of the CASheW-s editor. + + The CASheW-s editor is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2, or (at your option) + any later version. + + The CASheW-s editor is distributed in the hope that it will be useful, but + WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + General Public License for more details. + + You should have received a copy of the GNU General Public License + along with The CASheW-s editor; see the file COPYING. If not, write to the + Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA + 02111-1307 USA. +*/ + +package nongnu.cashews.owls.process; + +/** + * A binding where the parameter being bound is used for input. + * + * @author Andrew John Hughes (address@hidden) + */ +public class InputBinding + extends Binding +{ + + /** + * The reference to the input parameter being set by the binding. + * + * @serial the parameter reference. + */ + private Input toParam; + +} Index: src/nongnu/cashews/owls/process/OutputBinding.java =================================================================== RCS file: src/nongnu/cashews/owls/process/OutputBinding.java diff -N src/nongnu/cashews/owls/process/OutputBinding.java --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ src/nongnu/cashews/owls/process/OutputBinding.java 31 Mar 2005 17:04:42 -0000 @@ -0,0 +1,40 @@ +/* OutputBinding.java -- Representation of an OWL-S output binding. + Copyright (C) 2005 The University of Sheffield. + + This file is part of the CASheW-s editor. + + The CASheW-s editor is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2, or (at your option) + any later version. + + The CASheW-s editor is distributed in the hope that it will be useful, but + WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + General Public License for more details. + + You should have received a copy of the GNU General Public License + along with The CASheW-s editor; see the file COPYING. If not, write to the + Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA + 02111-1307 USA. +*/ + +package nongnu.cashews.owls.process; + +/** + * A binding where the parameter being bound is used for output. + * + * @author Andrew John Hughes (address@hidden) + */ +public class OutputBinding + extends Binding +{ + + /** + * The reference to the output parameter being set by the binding. + * + * @serial the parameter reference. + */ + private Output toParam; + +} Index: src/nongnu/cashews/owls/process/Result.java =================================================================== RCS file: /cvsroot/cashew-s-editor/cashews/src/nongnu/cashews/owls/process/Result.java,v retrieving revision 1.2 diff -u -3 -p -u -r1.2 Result.java --- src/nongnu/cashews/owls/process/Result.java 31 Mar 2005 16:50:14 -0000 1.2 +++ src/nongnu/cashews/owls/process/Result.java 31 Mar 2005 17:04:42 -0000 @@ -54,14 +54,22 @@ public class Result private ListExpression
s used within the scope
- * of this Result
instance to define the effects
- * of this operation.
+ * A list of Expression
s used within the scope of this
+ * Result
instance to define the effects of this operation.
*
* @serial the effects scoped over this instance.
*/
private ListOutputBinding
s used within the scope of this
+ * Result
instance to define the relationship between
+ * particular output parameters and value patterns. Different result
+ * conditions can set the same output parameters with different values,
+ * and the consumers can refer to different values of the process.
+ *
+ * @serial the output bindings scoped over this instance.
+ */
+ private List
+ * A value form specifies the value of a binding using a pseudo-OWL
+ * description. This varies from the normal legal form of OWL, in
+ * that variables (including process parameters) and ValueOf
+ * forms can appear as the object of properties, where these things
+ * violate the range of the property.
+ *
+ * The intended interpretation of this is as a pattern for the actual + * value of the binding, following substitution of the variables. + *
+ * + * @see ValueOf + * @author Andrew John Hughes (address@hidden) + */ +public class ValueForm + extends ValueSpecifier +{ + +} Index: src/nongnu/cashews/owls/process/ValueFunction.java =================================================================== RCS file: src/nongnu/cashews/owls/process/ValueFunction.java diff -N src/nongnu/cashews/owls/process/ValueFunction.java --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ src/nongnu/cashews/owls/process/ValueFunction.java 31 Mar 2005 17:04:42 -0000 @@ -0,0 +1,37 @@ +/* ValueFunction.java -- Representation of a binding with an function. + Copyright (C) 2005 The University of Sheffield. + + This file is part of the CASheW-s editor. + + The CASheW-s editor is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2, or (at your option) + any later version. + + The CASheW-s editor is distributed in the hope that it will be useful, but + WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + General Public License for more details. + + You should have received a copy of the GNU General Public License + along with The CASheW-s editor; see the file COPYING. If not, write to the + Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA + 02111-1307 USA. +*/ + +package nongnu.cashews.owls.process; + +/** + * A value function specifies the value of a binding using a local client + * function. This may contain data specified by variables or + *ValueOf
s. The intended interpretation of this is as the
+ * result of calling the function, following substitution of the variables.
+ *
+ * @author Andrew John Hughes (address@hidden)
+ * @see ValueOf
+ */
+public class ValueFunction
+ extends ValueSpecifier
+{
+
+}
Index: src/nongnu/cashews/owls/process/ValueOf.java
===================================================================
RCS file: src/nongnu/cashews/owls/process/ValueOf.java
diff -N src/nongnu/cashews/owls/process/ValueOf.java
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ src/nongnu/cashews/owls/process/ValueOf.java 31 Mar 2005 17:04:42 -0000
@@ -0,0 +1,49 @@
+/* ValueOf.java -- Representation of a parameter reference pair.
+ Copyright (C) 2005 The University of Sheffield.
+
+ This file is part of the CASheW-s editor.
+
+ The CASheW-s editor is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2, or (at your option)
+ any later version.
+
+ The CASheW-s editor is distributed in the hope that it will be useful, but
+ WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with The CASheW-s editor; see the file COPYING. If not, write to the
+ Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+ 02111-1307 USA.
+*/
+
+package nongnu.cashews.owls.process;
+
+/**
+ * A ValueOf
is a pair of values which specify a parameter
+ * reference. This pair consists of the name of the parameter, and the
+ * process in which it is contained.
+ *
+ * @author Andrew John Hughes (address@hidden)
+ */
+public class ValueOf
+{
+
+ /**
+ * The name of the parameter being referenced.
+ *
+ * @serial the parameter name.
+ */
+ private Parameter theVar;
+
+ /**
+ * The process containing the parameter.
+ *
+ * @serial the containing process.
+ * FIXME: Uncomment when processes are implemented.
+ */
+ //private Perform fromProcess;
+
+}
Index: src/nongnu/cashews/owls/process/ValueSource.java
===================================================================
RCS file: src/nongnu/cashews/owls/process/ValueSource.java
diff -N src/nongnu/cashews/owls/process/ValueSource.java
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ src/nongnu/cashews/owls/process/ValueSource.java 31 Mar 2005 17:04:42 -0000
@@ -0,0 +1,47 @@
+/* ValueSource.java -- Representation of a binding with a parameter ref.
+ Copyright (C) 2005 The University of Sheffield.
+
+ This file is part of the CASheW-s editor.
+
+ The CASheW-s editor is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2, or (at your option)
+ any later version.
+
+ The CASheW-s editor is distributed in the hope that it will be useful, but
+ WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with The CASheW-s editor; see the file COPYING. If not, write to the
+ Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+ 02111-1307 USA.
+*/
+
+package nongnu.cashews.owls.process;
+
+/**
+ * A value source specifies the value of a binding using a reference
+ * to a parameter in another process. The other process is a
+ * Perform
within the same CompositeProcess
.
+ * The usual use of this value descriptor is to link the output
+ * of one process to the input of another.
+ *
+ * @author Andrew John Hughes (address@hidden)
+ * @see ValueOf
+ * @see Perform
+ * @see CompositeProcess
+ */
+public class ValueSource
+ extends ValueDescriptor
+{
+
+ /**
+ * A reference to a parameter in another process.
+ *
+ * @serial the reference to the parameter in the other process.
+ */
+ private ValueOf paramRef;
+
+}
Index: src/nongnu/cashews/owls/process/ValueSpecifier.java
===================================================================
RCS file: src/nongnu/cashews/owls/process/ValueSpecifier.java
diff -N src/nongnu/cashews/owls/process/ValueSpecifier.java
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ src/nongnu/cashews/owls/process/ValueSpecifier.java 31 Mar 2005 17:04:42 -0000
@@ -0,0 +1,59 @@
+/* ValueSpecifier.java -- Representation of a binding with an XML value.
+ Copyright (C) 2005 The University of Sheffield.
+
+ This file is part of the CASheW-s editor.
+
+ The CASheW-s editor is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2, or (at your option)
+ any later version.
+
+ The CASheW-s editor is distributed in the hope that it will be useful, but
+ WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with The CASheW-s editor; see the file COPYING. If not, write to the
+ Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+ 02111-1307 USA.
+*/
+
+package nongnu.cashews.owls.process;
+
+import nongnu.cashews.rdf.XMLLiteral;
+
+import java.net.URI;
+
+/**
+ * A value specifier is a binding where the value is given via the
+ * interpretation of an XML literal. The type of the resulting value
+ * is also specified. The XML literal may contain reference to variables
+ * and/or ValueOf
constructs.
+ *
+ * @author Andrew John Hughes (address@hidden)
+ * @see ValueForm
+ * @see ValueFunction
+ * @see ValueOf
+ */
+public abstract class ValueSpecifier
+ extends ValueDescriptor
+{
+
+ /**
+ * The XML literal which, when interpreted, specifies the value
+ * of the bound parameter.
+ *
+ * @serial the XML literal.
+ */
+ private XMLLiteral value;
+
+ /**
+ * The type of the value resulting from the interpretation of
+ * the XML literal.
+ *
+ * @serial the type of the resulting value.
+ */
+ private URI type;
+
+}