'$RCSfile: query.xsd,v $' Copyright: 2003 Partnership for Biodiversity Informatics Project: http://seek.ecoinformatics.org/ '$Author: tao $' '$Date: 2008-04-23 16:25:50 $' '$Revision: 1.10 $' This program 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 of the License, or (at your option) any later version. This program 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 this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA An XML-based query structure for combining XPath pattern matching expressions using logical operators. The namespace element identifies the scope for the query by giving one or more namespaces to which the query conditions should be applied. For example, to query EML documents, one would indicate a namespace of "eml://ecoinformatics.org/eml-2.0.0". When more than one namespace is given, then the query conditions should be applied to all of those document types within the EcoGrid repository node. An optional limited XPath expression that defines a field that should be returned in the resultset document. The result record constructed will contain a well-formed xml file that combines all of the returnfields into a single tree structure. If a returnfield is specified as a leaf node that is a SimpleType, the value and all parent elements leading to that value will be included in the result. If a specified returnfield is not a leaf node, then all element and value content below that node will be included in the result along with the parent elements leading to the matched node. An optional title that names and describes the query. A type of logical operator that requires all of its child conditions to evaluate to true in order for the whole clause to evaluate to true. A type of logical operator that evaluates to true if any one or more of its child conditions evaluate to true. The condition represents a portion of the query that restricts the set of documents that match the query. The content of the condition element is the value that should be matched. The symbol '%' should be interpreted as a wildcard that matches any character. The "operator" determines how the match is performed (e.g., whether numeric equality or string equality is used), and the "concept" determines the field to which the restriction is applied (e.g., for XML sources this will be a relative or absolute path expression). The OperatorType defines the set of allowable values for the match operator in a condition. The match operator determines the semantics of how matches occur for that condition. Matches string containing value exactly Matches string not containing value Matches if numerically equal to value Matches if numerically not equal to value Matches if less than value Matches if less than or equal to value Matches if greater than value Matches if greater than or equal to value A simple type that provides a restricted version of standard XPath expressions. These expressions are the valid path expressions that can be used to express condition concepts and returnfield paths, and represent a subset of the full XPath syntax.