← Prev in month ← Prev in thread
Next in thread → Next in month →

sequenceExpr use in XQueryX statement ( ex: ("foo", "bar") )

From
Benjamin Shrom <>
To
Date
2005-05-17T18:20:50Z
ID
<>
Thread
sequenceExpr use in XQueryX statement ( ex: ("foo", "bar") )
Hello, 

What would be a correct XQueryX statement for the
following XQuery:
("FOO", "BAR")

According to the XQueryX schema this is valid
statement:

<xqx:module 
    xmlns:xqx="http://www.w3.org/2005/04/XQueryX" 
   
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
   
xsi:schemaLocation="http://www.w3.org/2005/04/XQueryX
../xsd/xqueryx.xsd">
	<xqx:mainModule>
		<xqx:queryBody>
		
            <xqx:expr xsi:type="xqx:pathExpr">
                <xqx:argExpr>
                
					<xqx:expr xsi:type="xqx:sequenceExpr">
					
						<xqx:expr xsi:type="xqx:stringConstantExpr">
							<xqx:value>FOO</xqx:value>
						</xqx:expr>
						<xqx:expr xsi:type="xqx:stringConstantExpr">
							<xqx:value>BAR</xqx:value>
						</xqx:expr>
						
					</xqx:expr>
					
                </xqx:argExpr>
            
            </xqx:expr>

		</xqx:queryBody>
	</xqx:mainModule>
</xqx:module>

However, if you run XQueryX->XQuery stylesheet
transformation it will produce: (FOO)(BAR).
In the recent release of the stylesheet new for-each
cycle have been added to the template for
sequenceExpr, that breakes the conversion. 

  <xsl:template
match="xqx:expr[@xsi:type='xqx:sequenceExpr']">
    <xsl:for-each select="*"> <!-- NEW -->
      <xsl:call-template name="paranthesizedList">
        <xsl:with-param name="delimiter"
select="$COMMA_NEWLINE"/>
      </xsl:call-template>
    </xsl:for-each>  <!-- NEW -->
  </xsl:template>

Is it a bug or I'm missing something here, below I
provided AST in the XML form:

<XPath2>
    <QueryList>
        <Module>
            <MainModule>
                <Prolog/>
                <QueryBody>
                    <Expr>
                        <PathExpr>
                            <ParenthesizedExpr>
                                <Expr>
                                    <PathExpr>
                                       
<StringLiteral>"FOO"</StringLiteral>
                                    </PathExpr>
                                    <PathExpr>
                                       
<StringLiteral>"BAR"</StringLiteral>
                                    </PathExpr>
                                </Expr>
                            </ParenthesizedExpr>
                        </PathExpr>
                    </Expr>
                </QueryBody>
            </MainModule>
        </Module>
    </QueryList>
</XPath2>


__________________________________________________
Do You Yahoo!?
Tired of spam?  Yahoo! Mail has the best spam protection around 
http://mail.yahoo.com
← Prev in month ← Prev in thread
Next in thread → Next in month →