OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

regrep message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]


Subject: Proposed changes to AdhocQuery and QueryExpressionType


Farrukh Najmi wrote:
> Breininger, Kathryn R wrote:
>> I have our next meeting on for this Thursday (Jan. 10th) at 9:00 Pacific
>> Time. Please let me know if you have any action items for the agenda.   
>
> Happy new year Kathryn and colleagues,
>
> I would like to request the following RegRep4 agenda items...
>
>    * Changes to QueryExpressionType
>          o Remove mixed content mode
>          o Add StringQueryExpressionType and XMLQueryExpressionType as
>            sub-types
>    * Add Parameter declaration as sub-element to AdhocQuery
>          o To allow a stored query to declare the parameters that it
>            supports
>          o To allow dynamic user interfaces to be displayed for
>            selected stored query
>
> I will add related info to wiki prior to the meeting. Thanks.
>

Attached are two files with changes proposed above. The .xsd file 
contains latest proposed schema definitions while the .diff file has the 
patch diff showing what is proposed to be changed.

-- 
Regards,
Farrukh Najmi

Web: http://www.wellfleetsoftware.com


@@ -574,13 +574,33 @@
     <complexContent>
       <extension base="tns:RegistryObjectType">
         <sequence>
-          <element ref="tns:QueryExpression" minOccurs="0" maxOccurs="1"/>
+          <element name="Parameter" type="tns:QueryParameterType" minOccurs="0" maxOccurs="unbounded"/>
+          <element name="QueryExpression" type="tns:QueryExpressionType" minOccurs="0" maxOccurs="1"/>
         </sequence>
       </extension>
     </complexContent>
   </complexType>  
   <element name="AdhocQuery" type="tns:AdhocQueryType"/>
+  
+  <complexType name="QueryParameterType">
+    <annotation>
+      <documentation>
+        <p>Defines a parameter for an parameterized query.</p>
+      </documentation>
+    </annotation>
+    <sequence minOccurs="0" maxOccurs="1">
+      <element ref="tns:Name" minOccurs="1" maxOccurs="1"/>
+      <element ref="tns:Description" minOccurs="0" maxOccurs="1"/>
+      <element ref="tns:SlotList" minOccurs="0" maxOccurs="1"/>
+    </sequence>
     
+    <!--The parameterName must match the name in the stored parameterized query-->
+    <attribute name="parameterName" type="string" use="required"/>
+    <attribute name="datatype" type="string" use="required" />
+    <attribute name="defaultValue" use="optional"/>
+    <attribute name="required" type="boolean" use="optional"/>
+  </complexType>
+      
   <complexType name="QueryInvocationType">
     <annotation>
       <documentation xml:lang="en">
@@ -599,17 +619,39 @@
   </complexType>
   <element name="QueryInvocation" type="tns:QueryInvocationType"/>
   
-  <complexType name="QueryExpressionType" mixed="true">
-    <sequence>
-      <!--
-      MAY be any query language syntax supported. 
-      MUST support FilterQuery. SHOULD support SQLQuery
-      -->
-      <any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="1"/>
-    </sequence>
+  <complexType abstract="true" name="QueryExpressionType">
     <attribute name="queryLanguage" type="tns:referenceURI" use="required"/>
   </complexType>
-  <element name="QueryExpression" type="tns:QueryExpressionType"/>
   
-      
+  <complexType name="StringQueryExpressionType">
+    <annotation>
+      <documentation xml:lang="en">
+      A QueryExpression whose value subelemnt is of type string and contains plain text.
+      Use this for SQL and EJBQL Queries.
+      </documentation>
+    </annotation>
+    <complexContent>
+      <extension base="tns:QueryExpressionType">
+        <sequence>
+          <element name="value" type="string" minOccurs="1" maxOccurs="1"/>
+        </sequence>
+      </extension>
+    </complexContent>
+  </complexType>
+  
+  <complexType name="XMLQueryExpressionType">
+    <annotation>
+      <documentation xml:lang="en">
+      A QueryExpression whose value subelemnt is an XML element.
+      Use this for XQuery.
+      </documentation>
+    </annotation>
+    <complexContent>
+      <extension base="tns:QueryExpressionType">
+        <sequence>
+          <any namespace="##other" processContents="lax" minOccurs="1" maxOccurs="1"/>
+        </sequence>
+      </extension>
+    </complexContent>
+  </complexType>
 </schema>


  <complexType name="AdhocQueryType">
    <annotation>
      <documentation xml:lang="en">
      A registry query.
      A QueryExpression child element is not required when invoking a stored query.
      </documentation>
    </annotation>
    <complexContent>
      <extension base="tns:RegistryObjectType">
        <sequence>
          <element name="Parameter" type="tns:QueryParameterType" minOccurs="0" maxOccurs="unbounded"/>
          <element name="QueryExpression" type="tns:QueryExpressionType" minOccurs="0" maxOccurs="1"/>
        </sequence>
      </extension>
    </complexContent>
  </complexType>  
  <element name="AdhocQuery" type="tns:AdhocQueryType"/>
  
  <complexType name="QueryParameterType">
    <annotation>
      <documentation>
        <p>Defines a parameter for an parameterized query.</p>
      </documentation>
    </annotation>
    <sequence minOccurs="0" maxOccurs="1">
      <element ref="tns:Name" minOccurs="1" maxOccurs="1"/>
      <element ref="tns:Description" minOccurs="0" maxOccurs="1"/>
      <element ref="tns:SlotList" minOccurs="0" maxOccurs="1"/>
    </sequence>
    
    <!--The parameterName must match the name in the stored parameterized query-->
    <attribute name="parameterName" type="string" use="required"/>
    <attribute name="datatype" type="string" use="required" />
    <attribute name="defaultValue" use="optional"/>
    <attribute name="required" type="boolean" use="optional"/>
  </complexType>

  <complexType abstract="true" name="QueryExpressionType">
    <attribute name="queryLanguage" type="tns:referenceURI" use="required"/>
  </complexType>
  
  <complexType name="StringQueryExpressionType">
    <annotation>
      <documentation xml:lang="en">
      A QueryExpression whose value subelemnt is of type string and contains plain text.
      Use this for SQL and EJBQL Queries.
      </documentation>
    </annotation>
    <complexContent>
      <extension base="tns:QueryExpressionType">
        <sequence>
          <element name="value" type="string" minOccurs="1" maxOccurs="1"/>
        </sequence>
      </extension>
    </complexContent>
  </complexType>
  
  <complexType name="XMLQueryExpressionType">
    <annotation>
      <documentation xml:lang="en">
      A QueryExpression whose value subelemnt is an XML element.
      Use this for XQuery.
      </documentation>
    </annotation>
    <complexContent>
      <extension base="tns:QueryExpressionType">
        <sequence>
          <any namespace="##other" processContents="lax" minOccurs="1" maxOccurs="1"/>
        </sequence>
      </extension>
    </complexContent>
  </complexType>



[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]