Search Results

Search found 933 results on 38 pages for 'xslt 2 0'.

Page 4/38 | < Previous Page | 1 2 3 4 5 6 7 8 9 10 11 12  | Next Page >

  • XSLT workflow with variable number of source files

    - by chiborg
    I have a bunch of XML files with a fixed, country-based naming schema: report_en.xml, report_de.xml, report_fr.xml, etc. Now I want to write an XSLT style sheet that reads each of these files via the document() XPath function, extracts some values and generates one XML files with a summary. My question is: How can I iterate over the source files without knowing the exact names of the files I will process? At the moment I'm planning to generate an auxiliary XML file that holds all the file names and use the auxiliary XML file in my stylesheet to iterate. The the file list will be generated with a small PHP or bash script. Are there better alternatives? I am aware of XProc, but investing much time into it is not an option for me at the moment. Maybe someone can post an XProc solution. Preferably the solution includes workflow steps where the reports are downloaded as HTML and tidied up :) I will be using Saxon as my XSLT processor, so if there are Saxon-specific extensions I can use, these would also be OK.

    Read the article

  • HttpContext XML values in XSLT

    - by Siva
    Hi all. Please Help me out. In C# i set a context value as HttpContext.Current.Items["xmlcontentholder"] = xDoc.DocumentElement.FirstChild.OuterXml; and by processing XsltArgumentList i send it to an XSLT file: XsltArgumentList XsltArgs = new XsltArgumentList(); XsltArgs.AddParam("xmlcontentholder", "", "xmlcontent"); and i m transforming it xsltCompiledTrans.Transform(xPathNav, XsltArgs, stringWriter); In XSLT file i gave as <xsl:value-of select="$xmlcontentholder" /><br/>12<xsl:value-of select="msxsl:node-set($xmlcontentholder)/ROW[1]/value" />34 My output is <ROW><value>1</value><value>2</value></ROW> 1234 Please explain me on this problem..

    Read the article

  • How do I run an XSLT file?

    - by Eric
    Alright this seems like a stupid question but I can't figure it out. I'm writing an XSLT file to translate an XML document into an XHTML document. I've used both Visual Studio and XML Notepad 2007 to preview the results of my XSLT file, but now I want to actually write out a real XHTML file so I can see how it looks in other browsers. Neither Visual Studio or XML NotePad have an obvious way to save the preview. Am I missing something. Obviously the file is getting created because something is being previewed, but I need to know where that file is being created or better yet choose its location.

    Read the article

  • How to call an xslt transform into an xsl stylesheet

    - by Mycol
    I have written an xslt that reads some xml file names and does some operations on them. I use a for-each to work them one-by-one. I have each path inside a parameter $path. But now I would like to output the result of applying an external stylesheet to those files. I would write something like <div> <something like xsl-transform($extern-xslt,$path)> </div> to have the result tree of the transformation inside the main html output. It is possible?

    Read the article

  • How to use an expression in xsl:include elment in an XSLT processing

    - by addinquy
    I need to include an XSLT that exists in 2 variants, depending on a param value. However, it's seems to be not possible to write an expression in the href attribute of the xsl:include element. My last trial looks like that: < xsl:param name="ml-fmt" select="mono"/ ... < xsl:include href="{$ml-fmt}/format.xsl"/ The XSLT engine used is Saxon 9.2.0.6 Have anybody an idea about how I could do something close to that ?

    Read the article

  • XSLT: add node inner text.

    - by nabo
    This is a slightly version of other question posted here: http://stackoverflow.com/questions/2888880/xslt-change-node-inner-text Imagine i use XSLT to transform the document: <a> <b/> <c/> </a> into this: <a> <b/> <c/> Hello world </a> In this case i can't use neither the <xsl:strip-space elements="*"/> element or the [normalize-space() != ''] predicate since there is no text in the place where i need to put new text. Any ideas? Thanks.

    Read the article

  • XSLT big integer (int64) handling msxml

    - by Farid Z
    When trying to do math on an big integer (int64) large number in xslt template I get the wrong result since there is no native 64-bit integer support in xslt (xslt number is 64-bit double). I am using msxml 6.0 on Windows XP SP3. Are there any work around for this on Windows? <tables> <table> <table_schem>REPADMIN</table_schem> <table_name>TEST_DESCEND_IDENTITY_BIGINT</table_name> <column> <col_name>COL1</col_name> <identity> <col_min_val>9223372036854775805</col_min_val> <col_max_val>9223372036854775805</col_max_val> <autoincrementvalue>9223372036854775807</autoincrementvalue> <autoincrementstart>9223372036854775807</autoincrementstart> <autoincrementinc>-1</autoincrementinc> </identity> </column> </table> </tables> This test returns true due to overflow (I am assuming) but actually is false if I could tell the xslt processor somehow to use int64 rather than the default 64-bit double for the data since big integer is the actual data type for the numbers in the xml input. <xsl:when test="autoincrementvalue = (col_min_val + autoincrementinc)"> <xsl:value-of select="''"/> </xsl:when> here is the complete template <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" > <!--Reseed Derby identity column--> <xsl:output omit-xml-declaration='yes' method='text' /> <xsl:param name="stmtsep">;</xsl:param> <xsl:param name="schemprefix"></xsl:param> <xsl:template match="tables"> <xsl:variable name="identitycount" select="count(table/column/identity)"></xsl:variable> <xsl:for-each select="table/column/identity"> <xsl:variable name="table_schem" select="../../table_schem"></xsl:variable> <xsl:variable name="table_name" select="../../table_name"></xsl:variable> <xsl:variable name="tablespec"> <xsl:if test="$schemprefix"> <xsl:value-of select="$table_schem"/>.</xsl:if><xsl:value-of select="$table_name"/></xsl:variable> <xsl:variable name="col_name" select="../col_name"></xsl:variable> <xsl:variable name="newstart"> <xsl:choose> <xsl:when test="autoincrementinc > 0"> <xsl:choose> <xsl:when test="col_max_val = '' and autoincrementvalue = autoincrementstart"> <xsl:value-of select="''"/> </xsl:when> <xsl:when test="col_max_val = ''"> <xsl:value-of select="autoincrementstart"/> </xsl:when> <xsl:when test="autoincrementvalue = (col_max_val + autoincrementinc)"> <xsl:value-of select="''"/> </xsl:when> <xsl:when test="(col_max_val + autoincrementinc) &lt; autoincrementstart"> <xsl:value-of select="autoincrementstart"/> </xsl:when> <xsl:otherwise> <xsl:value-of select="col_max_val + autoincrementinc"/> </xsl:otherwise> </xsl:choose> </xsl:when> <xsl:when test="autoincrementinc &lt; 0"> <xsl:choose> <xsl:when test="col_min_val = '' and autoincrementvalue = autoincrementstart"> <xsl:value-of select="''"/> </xsl:when> <xsl:when test="col_min_val = ''"> <xsl:value-of select="autoincrementstart"/> </xsl:when> <xsl:when test="autoincrementvalue = (col_min_val + autoincrementinc)"> <xsl:value-of select="''"/> </xsl:when> <xsl:when test="(col_min_val + autoincrementinc) > autoincrementstart"> <xsl:value-of select="autoincrementstart"/> </xsl:when> <xsl:otherwise> <xsl:value-of select="col_min_val + autoincrementinc"/> </xsl:otherwise> </xsl:choose> </xsl:when> </xsl:choose> </xsl:variable> <xsl:if test="not(position()=1)"><xsl:text> </xsl:text></xsl:if> <xsl:choose> <!--restart with ddl changes both the next identity value AUTOINCREMENTVALUE and the identity start number AUTOINCREMENTSTART eventhough in this casewe only want to change only the next identity number--> <xsl:when test="$newstart != '' and $newstart != autoincrementvalue">alter table <xsl:value-of select="$tablespec"/> alter column <xsl:value-of select="$col_name"/> restart with <xsl:value-of select="$newstart"/><xsl:if test="$identitycount>1">;</xsl:if></xsl:when> <xsl:otherwise>-- reseed <xsl:value-of select="$tablespec"/> is not necessary</xsl:otherwise> </xsl:choose> </xsl:for-each> </xsl:template> </xsl:stylesheet>

    Read the article

  • Merge 2 XML files with xslt

    - by MADAL
    Hello, I try to merge 2 XML-Files. I use XSLT: [http://www2.informatik.hu-berlin.de/...erge.xslt.html] I need to change this XSLT-File in order to have another result. My first file, which needs to be merged: <A1> <A2> <A3> <b>a</b> <c>b</c> </A3> </A2> </A1> <A1> <A2> <A3> <b>1</b> <c>2</c> </A3> </A2> </A1> ... My 2. file, which needs to be merged whithe the first one: <A1> <A2> <A3> <b>x</b> <c>y</c> </A3> </A2> </A1> <A1> <A2> <A3> <b>8</b> <c>9</c> </A3> </A2> </A1> The result should be: <A1> <A2> <A3> <b>a</b><bx><b>a</b></bx><bx><b>x</b></bx> <c>by</c> </A3> </A2> </A1> <A1> <A2> <A3> <b>1</b><bx><b>1</b></bx><bx><b>18</b></bx> <c>29</c> </A3> </A2> </A1> Could anybody help me with that?!!!! Regards

    Read the article

  • Umbraco XSLT issue

    - by Brad
    I'm trying to use the Umbraco GetMedia function to write an image URL to the screen, I receive an error parsing the XSLT file. <xsl:for-each select="$currentPage/descendant::node [string(data [@alias='tickerItemActive']) = '1']"> <xsl:value-of select="data [@alias='tickerText']"/><br /> <xsl:value-of select="umbraco.library:GetMedia(data [@alias='tickerImage'], 0)/data [@alias = 'umbracoFile']"/> </xsl:for-each> The tickerImage field contains the MediaID for which I'd like to display the URL. I can return the field outside the GetMedia function and it works fine. I can also replace the data [@alias='tickerImage] with '1117' (or any valid media ID) the XSLT passes verification and the script runs. THIS WORKS: <xsl:value-of select="umbraco.library:GetMedia('1117', 0)/data [@alias = 'umbracoFile']"/> THIS DOES NOT: <xsl:value-of select="umbraco.library:GetMedia(data [@alias='tickerImage'], 0)/data [@alias = 'umbracoFile']"/> Any help that can be offered would is appreciated. Thanks!

    Read the article

  • Render a Form from an XSLT file

    - by Russ Clark
    I've generated the following XSLT file, and have created a Form that will post to an ASP.Net MVC action called Home/ProcessRequest: <?xml version="1.0" encoding="utf-8"?> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:msxsl="urn:schemas-microsoft-com:xslt" exclude-result-prefixes="msxsl" > <xsl:output method="html" indent="yes"/> <xsl:template match="/"> <html> <body> <xsl:value-of select="Employee/Name"/> <br /> <xsl:value-of select="Employee/ID"/> <form method="post" action="/Home/ProcessRequest?id=42"> <input id="Action" name="Action" type="radio" value="Approved"></input> Approved <br /> <input id="Action" name="Action" type="radio" value="Rejected"></input> Rejected <br /> <input type="submit" value="Submit"></input> </form> </body> </html> Here is my XML File: <Employee xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> <Name>Russ</Name> <ID>42</ID> </Employee> This works fine the way it is, but I need to change the id parameter in my from from a hard coded integer, to use the ID element from my XML file. Does anyone know how to do this?

    Read the article

  • Display XML diferent in JSF (using XSLT or some another suggestion)

    - by Milan
    Hello everybody! At runtime I receive xml document and I want to display it somehow different in JSF. For example: This: <invoker.ArrayOfDictionary> <dictionary> <invoker.Dictionary> <id>gcide</id> <name>The Collaborative International Dictionary of English v.0.48</name> </invoker.Dictionary> <invoker.Dictionary> <id>wn</id> <name>WordNet (r) 2.0</name> </invoker.Dictionary> <invoker.Dictionary> <id>moby-thes</id> <name>Moby Thesaurus II by Grady Ward, 1.0</name> </invoker.Dictionary> in this: invoker.ArrayOfDictionary: dictionary: invoker.Dictionary: id:gcide name:The Collaborative International Dictionary of English v.0.48 invoker.Dictionary: id:wn name:WordNet (r) 2.0 invoker.Dictionary: id:moby-thes name:Moby Thesaurus II by Grady Ward, 1.0 I was thinking to do this with XSLT transformation. Some guidelines how to start with xslt? Or maybe you have another idea for this?

    Read the article

  • XSLT Pagination

    - by dbomb101
    I have created a xslt document which formats an xml document, but I would like the results from the xslt sheet to be paginated. here is the orginal xlst document <?xml version="1.0" encoding="UTF-8"?> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:output method="xml" version="1.0" encoding="UTF-8" indent="yes"/> <xsl:template match="/"> <xsl:for-each select="musicInformation/musicdetails"> <label for="artistname{position()}" id="artistnameLabel{position()}">Artist Name:</label> <span id ="artistname{position()}"><xsl:value-of select="artistname" /></span> <br/> <label for="recordname{position()}" id="recordnameLabel{position()}">Record Name:</label> <span id ="recordname{position()}"><xsl:value-of select="recordname" /></span> <br/> <label for="recordtype{position()}" id="recordtypeLabel{position()}">Record Type:</label> <span id ="recordtype{position()}"><xsl:value-of select="recordtype" /></span> <br/> <label for="format{position()}" id="formatLabel{position()}">Format:</label> <span id ="format{position()}"><xsl:value-of select="format" /></span> <br/> <a href="xmlDetail.php?mid={@m_id}" >See Details</a> <br/><br/> </xsl:for-each> </xsl:template> </xsl:stylesheet>

    Read the article

  • How do I Emit Escaped XML representation of a Node in my XSLT's HTML Output

    - by Emmanuel
    I'm transforming XML to an HTML document. In this document I want to embed XML markup for a node that was just transformed (the HTML document is a technical spec). For example, if my XML was this: <transform-me> <node id="1"> <stuff type="floatsam"> <details>Various bits</details> </stuff> </node> </transform-me> I'd want my XSLT output to look something like this: <h1>Node 1</h1> <h2>Stuff (floatsam)</h2> Various bits <h2>The XML</h2> &lt;stuff type=&quot;floatsam&quot;&gt; &lt;details&gt;Various bits&lt;/details&gt; &lt;/stuff&gt; I'm hoping there is an XSLT function that I can call in my <stuff> template to which I can pass the current node (.) and get back escaped XML markup for <stuff> and all its descendants. I have a feeling unparsed-text() might be the way to go but can't get it to work.

    Read the article

  • XSLT Built-in Template Rules for attributes

    - by Martin Smith
    I'm sure that this is an extremely basic question but here goes anyway! I have read that the built in template rule for text and attribute nodes in XSLT is <xsl:template match="text()|@*"> <xsl:value-of select="."/> </xsl:template> However for the source document <?xml version="1.0"?> <booker> <award> <author blah="test">Aravind Adiga</author> <title>The White Tiger</title> <year>2008</year> </award> </booker> And XSLT <?xml version="1.0" encoding="utf-8"?> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:output method="text"/> </xsl:stylesheet> I get the following output applying the transform in Visual Studio. Can someone please explain why I don't see "test" in the output? Aravind Adiga The White Tiger 2008

    Read the article

  • XSLT inserting once off custom text

    - by BeraCim
    Hi all: The folloiwng is a pre-existing xml file. I was wondering how can I insert a element before the first element using xslt? <XmlFile> <!-- insert another <tag> element here --> <tag> <innerTag> </innerTag> </tag> <tag> <innerTag> </innerTag> </tag> <tag> <innerTag> </innerTag> </tag> </XmlFile> I was thinking of using a for-each loop and test the position = 0, but upon the first occurence of the for-each its already too late. This is a once-off text so I can't combine it with other xslt templates that are already inside the xsl file. Thanks.

    Read the article

  • XSLT: need to replace document('')

    - by Daziplqa
    I've the following xslt file: <?xml version="1.0" encoding="UTF-8"?> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <!-- USDomesticCountryList - USE UPPERCASE LETTERS ONLY --> <xsl:variable name="USDomesticCountryList"> <entry name="US"/> <entry name="UK"/> <entry name="EG"/> </xsl:variable> <!--// USDomesticCountryList --> <xsl:template name="IsUSDomesticCountry"> <xsl:param name="countryParam"/> <xsl:variable name="country" select="normalize-space($countryParam)"/> <xsl:value-of select="normalize-space(document('')//xsl:variable[@name='USDomesticCountryList']/entry[@name=$country]/@name)"/> </xsl:template> </xsl:stylesheet> I need to replace the "document('')" xpath function, what should I use instead? I've tried to remove it completely but the xsl document doesn't work for me! I need to to so because the problem is : I am using some XSLT document that uses the above file, say document a. So I have document a that includes the above file (document b). I am using doc a from java code, I am do Caching for doc a as a javax.xml.transform.Templates object to prevent multiple reads to the xsl file on every transformation request. I found that, the doc b is re-calling itself from the harddisk, I believe this is because of the document('') function above, so I wanna replace/remove it. Thanks.

    Read the article

  • Linking to an item in another node (XSLT)

    - by Andrew Parisi
    I have an XML document with companies listed in it. I want to create a link with XSLT that contains the <link> child of the next node. Sorry if this is confusing..here is some sample XML of what i'm trying to obtain: <portfolio> <company> <name>Dano Industries</name> <link>dano.xml</link> </company> <company> <name>Mike and Co.</name> <link>mike.xml</link> </company> <company> <name>Steve Inc.</name> <link>steve.xml</link> </company> </portfolio> I want two links, "BACK" and "NEXT". While currently on mike.xml, I want BACK to link to "dano.xml" and NEXT linked to "steve.xml"...etc..and have it dynamically change when on a different page based on the nodes around it. I want to do this because I may add and change the list as I go along, so I don't want to have to manually re-link everything. How can I obtain this? Sorry I am new to XSLT, so please explain with solution if possible! Thanks in advance!

    Read the article

  • Stack Overflow problem transforming with a custom xslt

    - by Flynn1179
    I've got a system that allows the user the option of providing their own XSLT to apply to some data that's been retrieved, as a means of specifying how that data should be presented. However, if the user includes code in the XSLT equivalent to: <xsl:template match="/"> <xsl:element name="data"> <xsl:apply-templates select="." /> </xsl:element> </xsl:template> this causes .NET to infinitely recurse trying to process it, and produces a stack overflow error. I need to be able to trap this before it crashes the app, as the data that's been retrieved is occasionally quite time-consuming to obtain, and the data is lost when this happens. Is there any way of doing this? I know it's theoretically possible to identify any occurrences of xsl:apply-templates with "." in the select attribute, but this isn't the only way an infinite recursion could happen, I need a way of generically trapping it.

    Read the article

  • XSLT 1.0: restrict entries in a nodeset

    - by Mike
    Hi, Being relatively new to XSLT I have what I hope is a simple question. I have some flat XML files, which can be pretty big (eg. 7MB) that I need to make 'more hierarchical'. For example, the flat XML might look like this: <D0011> .... .... and it should end up looking like this: <D0011> .... .... I have a working XSLT for this, and it essentially gets a nodeset of all the b elements and then uses the 'following-sibling' axis to get a nodeset of the nodes following the current b node (ie. following-sibling::*[position() =$nodePos]). Then recursion is used to add the siblings into the result tree until another b element is found (I have parameterised it of course, to make it more generic). I also have a solution that just sends the position in the XML of the next b node and selects the nodes after that one after the other (using recursion) via a *[position() = $nodePos] selection. The problem is that the time to execute the transformation increases unacceptably with the size of the XML file. Looking into it with XML Spy it seems that it is the 'following-sibling' and 'position()=' that take the time in the two respective methods. What I really need is a way of restricting the number of nodes in the above selections, so fewer comparisons are performed: every time the position is tested, every node in the nodeset is tested to see if its position is the right one. Is there a way to do that ? Any other suggestions ? Thanks, Mike

    Read the article

  • Accessing the value of an input element with XPath in an XSLT

    - by asymmetric
    Hi! I'm developing a web app that has a button that triggers an XSLT transformation of the document DOM, with a stylesheet fetched via AJAX. Here's a portion of the HTML: <html> <head> <title>Static Javascript-based XMR Form Creator</title> </head> <body> <h1 id="title">Static Javascript-based XMR Form Creator</h1> <div class="opt_block" id="main_opts"> Form name <input type="text" id="form_name" /> Form cols <input type="text" id="form_cols" size="3" maxlength="3" /> </div> <button id="generate">Generate source</button> <textarea rows="20" cols="50" id="xmr_source" ></textarea> </body> Inside the stylesheet, I want to access the value attribute of the first input field, the one with id form_name. The XSLT looks like this: <xsl:template match="/html/body/div[@id = 'main_opts']" > <form> <xsl:attribute name="fname"> <xsl:value-of select="input[@id = 'form_name']/@value" /> </xsl:attribute> </form> </xsl:template> The problem is that the XPath that should do the work: <xsl:value-of select="input[@id = 'form_name']/@value" /> returns nothing. Can anyone help?

    Read the article

  • Grouping XSLT nodes via transformation dynamically

    - by scott
    I'm trying to create a page like this via XSLT transformation. Pages page1 page2 Links link1 link2 Here is the xml <siteMenu> <Pages> <title>page1</title> </Pages> <Pages> <title>page2</title> </Pages> <Links> <title>link1</title> </Links> <Links> <title>link2</title> </Links> </siteMenu> I tried using <xsl:for-each select="*"> and <xsl:for-each-group select="*" group-by="@v"> but that gives me every element, but how can i separate them out based on the parent node? I also want to make it dynamic so that if I add another item in siteMenu, it would update the xslt appropriately.

    Read the article

< Previous Page | 1 2 3 4 5 6 7 8 9 10 11 12  | Next Page >