Click here to Skip to main content
15,885,546 members
Home / Discussions / XML / XSL
   

XML / XSL

 
Questiongenerate a result based on a XML file [modified] Pin
alexyxj31-Mar-09 6:36
alexyxj31-Mar-09 6:36 
AnswerRe: generate a result based on a XML file Pin
alexyxj31-Mar-09 6:37
alexyxj31-Mar-09 6:37 
GeneralRe: generate a result based on a XML file Pin
alexyxj3-Apr-09 11:00
alexyxj3-Apr-09 11:00 
QuestionRelaxNG Attribute Override Pin
Lea Hayes31-Mar-09 2:39
Lea Hayes31-Mar-09 2:39 
QuestionUpdate InfoPath option button using XML Pin
hoonzis26-Mar-09 5:54
hoonzis26-Mar-09 5:54 
QuestionInclude superscript and subscript in a XML. Pin
Vishnu Nath26-Mar-09 3:05
Vishnu Nath26-Mar-09 3:05 
AnswerRe: Include superscript and subscript in a XML. Pin
scottgp26-Mar-09 3:32
professionalscottgp26-Mar-09 3:32 
QuestionHow to include Word Place Holders into my xslt? Pin
Tejabhiram25-Mar-09 3:58
Tejabhiram25-Mar-09 3:58 
I am trying to convert a xml file into a word document. For this i am using an xslt.

It looks like this:

*****XML FILE*****
<?xml version='1.0' encoding='utf-8'?><?mso-application progid='Word.Document'?>
<?xml-stylesheet type='text/xsl' href='C:\Documents and Settings\tejabhiramy.IDEAENTITY\Desktop\VCMData1\Projects/Teja\Ravi Shankar.yadavalli.xsl'?><contentInstance vcmId="d62dde7a94e8f110VgnVCM100000e601a8c0RCRD" vcmStatus="" vcmLogicalPath="/Teja" vcmName="Ravi Shankar.yadavalli" publishDate="" unpublishDate=""><contentTypeId>b1aade7a94e8f110VgnVCM100000e601a8c0____</contentTypeId><attribute name="name"><valueString>Ravi Shankar.yadavalli</valueString></attribute><attribute name="age"><valueString></valueString></attribute><attribute name="rank"><valueInt>9849</valueInt></attribute><classification><path><![CDATA[/Technical]]></path></classification><acl><entry name="vgnadmin" type="user"><grants><capability application="VCM" name="MODIFY_TAX_ASSOCS"/><capability application="VCM" name="RANKS_DELETE"/><capability application="VCM" name="MODIFY"/><capability application="VCM" name="MODIFY_ACL"/><capability application="VCM" name="DELETE"/><capability application="VCM" name="PROMOTE_AND_DEMOTE"/><capability application="VCM" name="SECURITY_READ"/><capability application="VCM" name="DEPLOY_AND_UNDEPLOY"/><capability application="VCM" name="RANKS_READ"/><capability application="VCM" name="SECURITY_WRITE"/><capability application="VCM" name="WORKFLOW_DEF_READ"/><capability application="VCM" name="RANKS_WRITE"/></grants></entry></acl></contentInstance>

*****XSLT File*****

&lt;xsl:stylesheet version='1.0'
xmlns:xsl='http://www.w3.org/1999/XSL/Transform'
xmlns:w='http://schemas.microsoft.com/office/word/2003/wordml'
xmlns:wx='http://schemas.microsoft.com/office/word/2003/auxHint'&gt;
&lt;xsl:template match='/'&gt;
&lt;xsl:processing-instruction name='mso-application'&gt;
&lt;xsl:text&gt;progid='Word.Document'&lt;/xsl:text&gt;
&lt;/xsl:processing-instruction&gt;
&lt;w:wordDocument&gt;
&lt;xsl:attribute name='xml:space'&gt;preserve&lt;/xsl:attribute&gt;
&lt;xsl:copy-of select='$styles-element'/&gt;
&lt;w:docPr&gt;&lt;w:useXSLTWhenSaving/&gt;
&lt;w:saveThroughXSLT w:xslt='C:\Documents and Settings\tejabhiramy.IDEAENTITY\Desktop\VCMData1\Projects/Teja\ReverseRavi Shankar.yadavalli.xsl'/&gt;&lt;w:documentProtection w:formatting='on' w:enforcement='on'/&gt;&lt;/w:docPr&gt;&lt;w:body&gt;&lt;xsl:apply-templates/&gt;&lt;/w:body&gt;&lt;/w:wordDocument&gt;&lt;/xsl:template&gt;
&lt;xsl:template match='contentInstance/contentTypeId/attribute'&gt;
&lt;w:p&gt;&lt;w:pPr&gt;&lt;w:pStyle w:val='Heading1'/&gt;&lt;/w:pPr&gt;
&lt;w:Sdt ShowingPlcHdr="t" DocPart="DefaultPlaceholder_22675703" ID="2075628"&gt;&lt;p&gt;&lt;span&gt;&lt;span&gt;&lt;xsl:apply-templates/&gt;&lt;/span&gt;&lt;/span&gt;&lt;w:sdtPr&gt;&lt;/w:sdtPr&gt;&lt;/p&gt;&lt;/w:Sdt&gt;
&lt;/w:p&gt;
&lt;/xsl:template&gt;
&lt;xsl:template match='attribute/valueString'&gt;
&lt;w:p&gt;
&lt;w:Sdt ShowingPlcHdr="t" DocPart="DefaultPlaceholder_22675703" ID="2075628"&gt;&lt;p&gt;&lt;span&gt;&lt;span&gt;&lt;xsl:apply-templates/&gt;&lt;/span&gt;&lt;/span&gt;&lt;w:sdtPr&gt;&lt;/w:sdtPr&gt;&lt;/p&gt;&lt;/w:Sdt&gt;
&lt;/w:p&gt;&lt;/xsl:template&gt;
&lt;xsl:template match='attribute/valueString'&gt;
&lt;w:p&gt;&lt;xsl:apply-templates/&gt;&lt;/w:p&gt;
&lt;/xsl:template&gt;
&lt;xsl:template match='attribute/valueInt'&gt;
&lt;w:p&gt;
&lt;w:Sdt ShowingPlcHdr="t" DocPart="DefaultPlaceholder_22675703" ID="2075628"&gt;&lt;p&gt;&lt;span&gt;&lt;span&gt;&lt;xsl:apply-templates/&gt;&lt;/span&gt;&lt;/span&gt;&lt;w:sdtPr&gt;&lt;/w:sdtPr&gt;&lt;/p&gt;&lt;/w:Sdt&gt;
&lt;/w:p&gt;
&lt;/xsl:template&gt;
&lt;xsl:template match='attribute/valueString/text()'&gt;
&lt;w:r&gt;&lt;w:rPr&gt;&lt;w:rStyle w:val='attribute/valueString'/&gt;&lt;/w:rPr&gt;
&lt;w:t&gt;
&lt;w:Sdt ShowingPlcHdr="t" DocPart="DefaultPlaceholder_22675703" ID="2075628"&gt;&lt;p&gt;&lt;span&gt;&lt;span&gt;&lt;xsl:value-of select='.'/&gt;&lt;/span&gt;&lt;/span&gt;&lt;w:sdtPr&gt;&lt;/w:sdtPr&gt;&lt;/p&gt;&lt;/w:Sdt&gt;
&lt;/w:t&gt;&lt;/w:r&gt;
&lt;/xsl:template&gt;
&lt;xsl:template match='attribute/valueString/text()'&gt;
&lt;w:r&gt;&lt;w:rPr&gt;
&lt;w:rStyle w:val='attribute/valueString'/&gt;
&lt;/w:rPr&gt;&lt;w:t&gt;
&lt;w:Sdt ShowingPlcHdr="t" DocPart="DefaultPlaceholder_22675703" ID="2075628"&gt;&lt;p&gt;&lt;span&gt;&lt;span&gt;&lt;xsl:value-of select='.'/&gt;&lt;/span&gt;&lt;/span&gt;&lt;w:sdtPr&gt;&lt;/w:sdtPr&gt;&lt;/p&gt;&lt;/w:Sdt&gt;&lt;/w:t&gt;&lt;/w:r&gt;
&lt;/xsl:template&gt;
&lt;xsl:template match='attribute/valueInt/text()'&gt;
&lt;w:r&gt;&lt;w:rPr&gt;&lt;w:rStyle w:val='attribute/valueInt'/&gt;&lt;/w:rPr&gt;
&lt;w:t&gt;
&lt;w:Sdt ShowingPlcHdr="t" DocPart="DefaultPlaceholder_22675703" ID="2075628"&gt;&lt;p&gt;&lt;span&gt;&lt;span&gt;&lt;xsl:value-of select='.'/&gt;&lt;/span&gt;&lt;/span&gt;&lt;w:sdtPr&gt;&lt;/w:sdtPr&gt;&lt;/p&gt;&lt;/w:Sdt&gt;
&lt;/w:t&gt;&lt;/w:r&gt;
&lt;/xsl:template&gt;
&lt;xsl:variable name='styles-element'&gt;&lt;w:styles&gt;&lt;w:style w:type='paragraph' w:default='on' w:styleId='Normal'&gt;&lt;w:name w:val='Normal'/&gt;&lt;w:rsid w:val='00664EF3'/&gt;&lt;w:pPr&gt;&lt;w:spacing w:after='360'/&gt;&lt;/w:pPr&gt;&lt;w:rPr&gt;&lt;wx:font wx:val='Times New Roman'/&gt;&lt;w:sz w:val='24'/&gt;&lt;w:sz-cs w:val='24'/&gt;&lt;w:lang w:val='EN-US' w:fareast='EN-US' w:bidi='AR-SA'/&gt;&lt;/w:rPr&gt;&lt;/w:style&gt;&lt;w:style w:type='paragraph' w:styleId='Heading1'&gt;&lt;w:name w:val='heading 1'/&gt;&lt;wx:uiName wx:val='Heading 1'/&gt;&lt;w:basedOn w:val='Normal'/&gt;&lt;w:next w:val='Normal'/&gt;&lt;w:rsid w:val='00664EF3'/&gt;&lt;w:pPr&gt;&lt;w:pStyle w:val='Heading1'/&gt;&lt;w:keepNext/&gt;&lt;w:spacing w:before='240' w:after='60'/&gt;&lt;w:outlineLvl w:val='0'/&gt;&lt;/w:pPr&gt;&lt;w:rPr&gt;&lt;w:rFonts w:ascii='Arial' w:h-ansi='Arial' w:cs='Arial'/&gt;&lt;wx:font wx:val='Arial'/&gt;&lt;w:b/&gt;&lt;w:b-cs/&gt;&lt;w:kern w:val='32'/&gt;&lt;w:sz w:val='32'/&gt;&lt;w:sz-cs w:val='32'/&gt;&lt;/w:rPr&gt;&lt;/w:style&gt;&lt;w:style w:type='paragraph' w:styleId='Heading2'&gt;&lt;w:name w:val='heading 2'/&gt;&lt;wx:uiName wx:val='Heading 2'/&gt;&lt;w:basedOn w:val='Normal'/&gt;&lt;w:next w:val='Normal'/&gt;&lt;w:rsid w:val='00664EF3'/&gt;&lt;w:pPr&gt;&lt;w:pStyle w:val='Heading2'/&gt;&lt;w:keepNext/&gt;&lt;w:spacing w:before='240' w:after='60'/&gt;&lt;w:outlineLvl w:val='1'/&gt;&lt;/w:pPr&gt;&lt;w:rPr&gt;&lt;w:rFonts w:ascii='Arial' w:h-ansi='Arial' w:cs='Arial'/&gt;&lt;wx:font wx:val='Arial'/&gt;&lt;w:b/&gt;&lt;w:b-cs/&gt;&lt;w:i/&gt;&lt;w:i-cs/&gt;&lt;w:sz w:val='28'/&gt;&lt;w:sz-cs w:val='28'/&gt;&lt;/w:rPr&gt;&lt;/w:style&gt;&lt;w:style w:type='paragraph' w:styleId='Heading3'&gt;&lt;w:name w:val='heading 3'/&gt;&lt;wx:uiName wx:val='Heading 3'/&gt;&lt;w:basedOn w:val='Normal'/&gt;&lt;w:next w:val='Normal'/&gt;&lt;w:rsid w:val='00664EF3'/&gt;&lt;w:pPr&gt;&lt;w:pStyle w:val='Heading3'/&gt;&lt;w:keepNext/&gt;&lt;w:spacing w:before='240' w:after='60'/&gt;&lt;w:outlineLvl w:val='2'/&gt;&lt;/w:pPr&gt;&lt;w:rPr&gt;&lt;w:rFonts w:ascii='Arial' w:h-ansi='Arial' w:cs='Arial'/&gt;&lt;wx:font wx:val='Arial'/&gt;&lt;w:b/&gt;&lt;w:b-cs/&gt;&lt;w:sz w:val='26'/&gt;&lt;w:sz-cs w:val='26'/&gt;&lt;/w:rPr&gt;&lt;/w:style&gt;&lt;w:style w:type='character' w:default='on' w:styleId='DefaultParagraphFont'&gt;&lt;w:name w:val='Default Paragraph Font'/&gt;&lt;w:semiHidden/&gt;&lt;/w:style&gt;&lt;w:style w:type='table' w:default='on' w:styleId='TableNormal'&gt;&lt;w:name w:val='Normal Table'/&gt;&lt;wx:uiName wx:val='Table Normal'/&gt;&lt;w:semiHidden/&gt;&lt;w:rPr&gt;&lt;wx:font wx:val='Times New Roman'/&gt;&lt;/w:rPr&gt;&lt;w:tblPr&gt;&lt;w:tblInd w:w='0' w:type='dxa'/&gt;&lt;w:tblCellMar&gt;&lt;w:top w:w='0' w:type='dxa'/&gt;&lt;w:left w:w='108' w:type='dxa'/&gt;&lt;w:bottom w:w='0' w:type='dxa'/&gt;&lt;w:right w:w='108' w:type='dxa'/&gt;&lt;/w:tblCellMar&gt;&lt;/w:tblPr&gt;&lt;/w:style&gt;&lt;w:style w:type='list' w:default='on' w:styleId='NoList'&gt;&lt;w:name w:val='No List'/&gt;&lt;w:semiHidden/&gt;&lt;/w:style&gt;&lt;w:style w:type='character' w:styleId='Strong'&gt;&lt;w:name w:val='Strong'/&gt;&lt;w:basedOn w:val='DefaultParagraphFont'/&gt;&lt;w:rsid w:val='00664EF3'/&gt;&lt;w:rPr&gt;&lt;w:b/&gt;&lt;w:b-cs/&gt;&lt;/w:rPr&gt;&lt;/w:style&gt;&lt;/w:styles&gt;&lt;/xsl:variable&gt;&lt;/xsl:stylesheet&gt;


*****XSLT File*****
<xsl:stylesheet version='1.0'
xmlns:xsl='http://www.w3.org/1999/XSL/Transform'
xmlns:w='http://schemas.microsoft.com/office/word/2003/wordml'
xmlns:wx='http://schemas.microsoft.com/office/word/2003/auxHint'>
<xsl:template match='/'>
<xsl:processing-instruction name='mso-application'>
<xsl:text>progid='Word.Document'</xsl:text>
</xsl:processing-instruction>
<w:wordDocument>
<xsl:attribute name='xml:space'>preserve</xsl:attribute>
<xsl:copy-of select='$styles-element'/>
<w:docPr><w:useXSLTWhenSaving/>
<w:saveThroughXSLT w:xslt='C:\Documents and Settings\tejabhiramy.IDEAENTITY\Desktop\VCMData1\Projects/Teja\ReverseRavi Shankar.yadavalli.xsl'/><w:documentProtection w:formatting='on' w:enforcement='on'/></w:docPr><w:body><xsl:apply-templates/></w:body></w:wordDocument></xsl:template>
<xsl:template match='contentInstance/contentTypeId/attribute'>
<w:p><w:pPr><w:pStyle w:val='Heading1'/></w:pPr>
<w:Sdt ShowingPlcHdr="t" DocPart="DefaultPlaceholder_22675703" ID="2075628"><p><span><span><xsl:apply-templates/></span></span><w:sdtPr></w:sdtPr></p></w:Sdt>
</w:p>
</xsl:template>
<xsl:template match='attribute/valueString'>
<w:p>
<w:Sdt ShowingPlcHdr="t" DocPart="DefaultPlaceholder_22675703" ID="2075628"><p><span><span><xsl:apply-templates/></span></span><w:sdtPr></w:sdtPr></p></w:Sdt>
</w:p></xsl:template>
<xsl:template match='attribute/valueString'>
<w:p><xsl:apply-templates/></w:p>
</xsl:template>
<xsl:template match='attribute/valueInt'>
<w:p>
<w:Sdt ShowingPlcHdr="t" DocPart="DefaultPlaceholder_22675703" ID="2075628"><p><span><span><xsl:apply-templates/></span></span><w:sdtPr></w:sdtPr></p></w:Sdt>
</w:p>
</xsl:template>
<xsl:template match='attribute/valueString/text()'>
<w:r><w:rPr><w:rStyle w:val='attribute/valueString'/></w:rPr>
<w:t>
<w:Sdt ShowingPlcHdr="t" DocPart="DefaultPlaceholder_22675703" ID="2075628"><p><span><span><xsl:value-of select='.'/></span></span><w:sdtPr></w:sdtPr></p></w:Sdt>
</w:t></w:r>
</xsl:template>
<xsl:template match='attribute/valueString/text()'>
<w:r><w:rPr>
<w:rStyle w:val='attribute/valueString'/>
</w:rPr><w:t>
<w:Sdt ShowingPlcHdr="t" DocPart="DefaultPlaceholder_22675703" ID="2075628"><p><span><span><xsl:value-of select='.'/></span></span><w:sdtPr></w:sdtPr></p></w:Sdt></w:t></w:r>
</xsl:template>
<xsl:template match='attribute/valueInt/text()'>
<w:r><w:rPr><w:rStyle w:val='attribute/valueInt'/></w:rPr>
<w:t>
<w:Sdt ShowingPlcHdr="t" DocPart="DefaultPlaceholder_22675703" ID="2075628"><p><span><span><xsl:value-of select='.'/></span></span><w:sdtPr></w:sdtPr></p></w:Sdt>
</w:t></w:r>
</xsl:template>
<xsl:variable name='styles-element'><w:styles><w:style w:type='paragraph' w:default='on' w:styleId='Normal'><w:name w:val='Normal'/><w:rsid w:val='00664EF3'/><w:pPr><w:spacing w:after='360'/></w:pPr><w:rPr><wx:font wx:val='Times New Roman'/><w:sz w:val='24'/><w:sz-cs w:val='24'/><w:lang w:val='EN-US' w:fareast='EN-US' w:bidi='AR-SA'/></w:rPr></w:style><w:style w:type='paragraph' w:styleId='Heading1'><w:name w:val='heading 1'/><wx:uiName wx:val='Heading 1'/><w:basedOn w:val='Normal'/><w:next w:val='Normal'/><w:rsid w:val='00664EF3'/><w:pPr><w:pStyle w:val='Heading1'/><w:keepNext/><w:spacing w:before='240' w:after='60'/><w:outlineLvl w:val='0'/></w:pPr><w:rPr><w:rFonts w:ascii='Arial' w:h-ansi='Arial' w:cs='Arial'/><wx:font wx:val='Arial'/><w:b/><w:b-cs/><w:kern w:val='32'/><w:sz w:val='32'/><w:sz-cs w:val='32'/></w:rPr></w:style><w:style w:type='paragraph' w:styleId='Heading2'><w:name w:val='heading 2'/><wx:uiName wx:val='Heading 2'/><w:basedOn w:val='Normal'/><w:next w:val='Normal'/><w:rsid w:val='00664EF3'/><w:pPr><w:pStyle w:val='Heading2'/><w:keepNext/><w:spacing w:before='240' w:after='60'/><w:outlineLvl w:val='1'/></w:pPr><w:rPr><w:rFonts w:ascii='Arial' w:h-ansi='Arial' w:cs='Arial'/><wx:font wx:val='Arial'/><w:b/><w:b-cs/><w:i/><w:i-cs/><w:sz w:val='28'/><w:sz-cs w:val='28'/></w:rPr></w:style><w:style w:type='paragraph' w:styleId='Heading3'><w:name w:val='heading 3'/><wx:uiName wx:val='Heading 3'/><w:basedOn w:val='Normal'/><w:next w:val='Normal'/><w:rsid w:val='00664EF3'/><w:pPr><w:pStyle w:val='Heading3'/><w:keepNext/><w:spacing w:before='240' w:after='60'/><w:outlineLvl w:val='2'/></w:pPr><w:rPr><w:rFonts w:ascii='Arial' w:h-ansi='Arial' w:cs='Arial'/><wx:font wx:val='Arial'/><w:b/><w:b-cs/><w:sz w:val='26'/><w:sz-cs w:val='26'/></w:rPr></w:style><w:style w:type='character' w:default='on' w:styleId='DefaultParagraphFont'><w:name w:val='Default Paragraph Font'/><w:semiHidden/></w:style><w:style w:type='table' w:default='on' w:styleId='TableNormal'><w:name w:val='Normal Table'/><wx:uiName wx:val='Table Normal'/><w:semiHidden/><w:rPr><wx:font wx:val='Times New Roman'/></w:rPr><w:tblPr><w:tblInd w:w='0' w:type='dxa'/><w:tblCellMar><w:top w:w='0' w:type='dxa'/><w:left w:w='108' w:type='dxa'/><w:bottom w:w='0' w:type='dxa'/><w:right w:w='108' w:type='dxa'/></w:tblCellMar></w:tblPr></w:style><w:style w:type='list' w:default='on' w:styleId='NoList'><w:name w:val='No List'/><w:semiHidden/></w:style><w:style w:type='character' w:styleId='Strong'><w:name w:val='Strong'/><w:basedOn w:val='DefaultParagraphFont'/><w:rsid w:val='00664EF3'/><w:rPr><w:b/><w:b-cs/></w:rPr></w:style></w:styles></xsl:variable></xsl:stylesheet>


Using these two files , i am converting the xml file to word. Now what should i do if i want some of my paragraphs in the XML File to appear inside a Word specific Placeholder? When i say placeholder, i mean the "RICH TEXT", "TEXT", Active X controls which appear on the Developer tab of the Word Ribbon.

Please help me out..


Thanks
Teja
AnswerRe: How to include Word Place Holders into my xslt? Pin
led mike25-Mar-09 11:38
led mike25-Mar-09 11:38 
GeneralRe: How to include Word Place Holders into my xslt? Pin
Tejabhiram25-Mar-09 18:58
Tejabhiram25-Mar-09 18:58 
GeneralRe: How to include Word Place Holders into my xslt? Pin
led mike26-Mar-09 4:50
led mike26-Mar-09 4:50 
QuestionLinq to Xml Programming Pin
JimBob SquarePants24-Mar-09 6:58
JimBob SquarePants24-Mar-09 6:58 
AnswerCross Posted Pin
led mike24-Mar-09 8:44
led mike24-Mar-09 8:44 
GeneralRe: Cross Posted Pin
JimBob SquarePants24-Mar-09 13:54
JimBob SquarePants24-Mar-09 13:54 
AnswerRe: Cross Posted [modified] Pin
George L. Jackson28-Mar-09 11:05
George L. Jackson28-Mar-09 11:05 
QuestionTransform XML document Pin
sonukadole23-Mar-09 20:39
sonukadole23-Mar-09 20:39 
AnswerRe: Transform XML document [modified] Pin
George L. Jackson24-Mar-09 3:47
George L. Jackson24-Mar-09 3:47 
AnswerRe: Transform XML document Pin
logiclabz27-Mar-09 8:09
logiclabz27-Mar-09 8:09 
GeneralRe: Transform XML document Pin
George L. Jackson28-Mar-09 11:03
George L. Jackson28-Mar-09 11:03 
QuestionSerialize object with XSLT ref Pin
Ido22-Mar-09 22:20
Ido22-Mar-09 22:20 
AnswerThe Answer is: Pin
Ido22-Mar-09 23:06
Ido22-Mar-09 23:06 
QuestionAttribute centric XML file from SQL Server Pin
CrimeanTurtle200822-Mar-09 0:06
CrimeanTurtle200822-Mar-09 0:06 
AnswerRe: Attribute centric XML file from SQL Server Pin
led mike23-Mar-09 5:36
led mike23-Mar-09 5:36 
QuestionSQL 2 XML DB Pin
ahmedsamir21-Mar-09 6:47
ahmedsamir21-Mar-09 6:47 
AnswerRe: SQL 2 XML DB Pin
led mike23-Mar-09 5:38
led mike23-Mar-09 5:38 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.