标签: xslt

XSLT是否具有Split()函数?

我在节点中有一个字符串,我想将字符串拆分为'?' 并返回数组中的最后一项.

例如,在下面的块中:

<a>
    <xsl:attribute name="href">
        /newpage.aspx?<xsl:value-of select="someNode"/>
    </xsl:attribute>
    Link text
</a>
Run Code Online (Sandbox Code Playgroud)

我想分割someNode价值.

编辑:这是我用来为我的Asp.Net页面加载Xsl的VB.Net:

Dim xslDocPath As String = HttpContext.Current.Server.MapPath("~/App_Data/someXslt.xsl")
Dim myXsltSettings As New XsltSettings()
Dim myXMLResolver As New XmlUrlResolver()

myXsltSettings.EnableScript = True
myXsltSettings.EnableDocumentFunction = True

myXslDoc = New XslCompiledTransform(False)
myXslDoc.Load(xslDocPath, myXsltSettings, myXMLResolver)

Dim myStringBuilder As New StringBuilder()
Dim myXmlWriter As XmlWriter = Nothing

Dim myXmlWriterSettings As New XmlWriterSettings()
myXmlWriterSettings.ConformanceLevel = ConformanceLevel.Auto
myXmlWriterSettings.Indent = True
myXmlWriterSettings.OmitXmlDeclaration = True

myXmlWriter = XmlWriter.Create(myStringBuilder, myXmlWriterSettings)

myXslDoc.Transform(xmlDoc, argumentList, myXmlWriter)

Return myStringBuilder.ToString()
Run Code Online (Sandbox Code Playgroud)

更新: …

.net xml vb.net xslt split

43
推荐指数
4
解决办法
6万
查看次数

XSL:避免将命名空间定义导出到生成的XML文档

我想从一些XML文件中获取数据并将它们转换为新的XML文档.但是,我不希望在结果文档中发生XSLT中的命名空间定义.

换一种说法:

资源:

<Namespace:Root xmlns:Namespace="http://www.something.com">
Run Code Online (Sandbox Code Playgroud)

样式表:

<?xml version="1.0" encoding="ISO-8859-1"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:Namespace="http://www.something.com">
Run Code Online (Sandbox Code Playgroud)

结果:

<resultRoot xmlns:Namespace="http://www.something.com">
<!--I don't want the Namespace definition above-->
Run Code Online (Sandbox Code Playgroud)

我正在使用msxsl进行转换.

xml xslt namespaces export msxsl

43
推荐指数
2
解决办法
5万
查看次数

节点名称上的XPath通配符

我想从我的XML文件中获取一个节点,该节点有一个前缀,例如"latest_",但这可能会改变,我希望我的XSLT尽可能流畅.这是我想要使用的XPath:

/data/stats/*_cost
Run Code Online (Sandbox Code Playgroud)

这应该与latest_cost,newest_cost,anything_cost,有没有这样做的一种方式?

干杯:-)

xml xslt xpath

43
推荐指数
4
解决办法
8万
查看次数

XSLT和XSL-FO有什么区别?

XSLT和XSL-FO有什么区别?

我读过的每一个资源都像处理它们一样处理它们,或者至少非常紧密地绑定它们.

xml xslt xsl-fo

42
推荐指数
4
解决办法
2万
查看次数

如何使用Python创建Word文档?

我想使用Python创建一个Word文档,但是,我希望尽可能多地重用现有的文档创建代码.我目前正在使用XSLT生成HTML文件,我以编程方式将其转换为PDF文件.但是,我的客户现在要求以Word(.doc)格式提供相同的文档.

到目前为止,我没有太多运气找到解决这个问题的方法.是否有人知道可能有助于解决此问题的开源库(或*gulp*专有解决方案)?

注意:所有可能的解决方案必须在Linux上运行.我相信这消除了pywin32.

python xml xslt ms-word

41
推荐指数
2
解决办法
7万
查看次数

XSLT使用命名空间转换XML

我正在尝试使用XSLT将一些XML转换为HTML.

问题:

我无法让它发挥作用.有人能告诉我我做错了什么吗?

XML:

<ArrayOfBrokerage xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://www.test.com/">
    <Brokerage>
        <BrokerageID>91</BrokerageID>
        <LastYodleeUpdate>0001-01-01T00:00:00</LastYodleeUpdate>
        <Name>E*TRADE</Name>
        <Validation i:nil="true" />
        <Username>PersonalTradingTesting</Username>
    </Brokerage>
</ArrayOfBrokerage>
Run Code Online (Sandbox Code Playgroud)

XSLT:

<xsl:stylesheet version="1.0" xmlns="http://www.test.com/" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xslFormatting="urn:xslFormatting">

    <xsl:output method="html" indent="no"/>

    <xsl:template match="/ArrayOfBrokerage">
        <xsl:for-each select="Brokerage">
            Test
       </xsl:for-each>
    </xsl:template>

</xsl:stylesheet>
Run Code Online (Sandbox Code Playgroud)

xml xslt namespaces transform datacontractserializer

41
推荐指数
1
解决办法
7万
查看次数

如何在XSLT而不是HTML中发表评论

我写XSL,我想整个时,它的处理,如PHP将被剥离的代码进行评论,但是我不知道怎么样.

我知道评论对象,但它在处理时打印出HTML注释.:\

<xsl:comment>comment</xsl:comment>
Run Code Online (Sandbox Code Playgroud)

xslt comments

41
推荐指数
2
解决办法
6万
查看次数

如何更改XSLT调试器的输入文件?

我正在尝试调试XSLT文件,我已经运行Visual Studio调试器并提示输入文件.不幸的是,当我再次调试文件时,之前加载了相同的测试文件.

如何更改XSLT调试器的输入文件?我已经做了一些搜索,但是所有的帮助材料都假设这是你第一次运行调试器.

xslt debugging visual-studio-2010 visual-studio

41
推荐指数
1
解决办法
7685
查看次数

如何将XML文件与XSLT文件链接?

例子在

http://en.wikipedia.org/wiki/XSLT

要么

http://www.w3schools.com/xsl/tryxslt.asp?xmlfile=cdcatalog&xsltfile=cdcatalog

似乎是独立的XML和XSLT文件.他们不必联系吗?或者你以某种方式把它们放在同一个文件中?否则,一个文件如何知道如何从另一个文件中吸取数据?

xml xslt

40
推荐指数
3
解决办法
9万
查看次数

Amazon Product Advertising API:如何获取ItemLookup/Search的JSON响应

我正试图从其ASIN获取亚马逊产品的细节.产品API允许使用Itemlookup ASIN,但返回值为XML.

我想从客户端调用Itemlookup,所以想做一个JSONP我找不到的电话.

我在网上发现了一些文章,JSON使用XSLT样式表将XML转换为格式:

(a)https://bitbucket.org/basti/python-amazon-product-api/src/tip/examples/json-results.py

我尝试使用这个python-amazon-product-api和这个例子,但我无法得到JSON回报.

(b)http://www.kokogiak.com/gedankengang/2006/05/consuming-amazons-web-api-directly.html

我试图发送的请求是:

http://xml-us.amznxslt.com/onca/xml?AWSAccessKeyId=[ACCESS KEY]&AssociateTag=[ASSOCIATE TAG]&ContentType=text%2Fjavascript&IdType=ASIN&ItemId=B008IEGS9W&Operation=ItemLookup&ResponseGroup=Images%2CItemAttributes&Service=AWSECommerceService&Style=http%3A%2F%2Fforums.delphiforums.com%2Fdelphidocsz%2Famazon%2Fjson.xsl&Timestamp=2012-09-04T06%3A40%3A11Z&Signature=AGOqXvVSeMp3YyVkT4mGNXVx0cFGG%2Bh%2FdAebevbbF9o%3D
Run Code Online (Sandbox Code Playgroud)

请帮助获取JSON格式Amazon product API.欢迎任何建议.


OP可以运行此样式表(未使用输入文档)来确定其XSLT版本.

<xsl:stylesheet version="1.0"
  xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
  xmlns:msxsl="urn:schemas-microsoft-com:xslt"
  exclude-result-prefixes="xsl msxsl">
<xsl:output method="html" indent="yes"/>

<xsl:template match="/">
  <html>
    <head><title>About your XSLT Processor</title></head> 
   <body>
     <ul>
       <li>xsl:version=<xsl:value-of select="system-property('xsl:version')" /></li>
       <li>xsl:vendor=<xsl:value-of select="system-property('xsl:vendor')" /></li>
       <li>xsl:vendor-url=<xsl:value-of select="system-property('xsl:vendor-url')" /></li>
       <li>xsl:product-name=<xsl:value-of select="system-property('xsl:product-name')" /></li>
       <li>xsl:product-version=<xsl:value-of select="system-property('xsl:product-version')" /></li>
       <li>xsl:is-schema-aware=<xsl:value-of select="system-property('xsl:is-schema-aware')" /></li>
       <li>xsl:supports-serialization=<xsl:value-of select="system-property('xsl:supports-serialization')" /></li>
       <li>xsl:supports-backwards-compatibility=<xsl:value-of select="system-property('xsl:supports-backwards-compatibility')" /></li>
       <li>msxsl:version=<xsl:value-of select="system-property('msxsl:version')" /></li>
     </ul>  
   </body>  
 </html>  
</xsl:template>

</xsl:stylesheet>
Run Code Online (Sandbox Code Playgroud)

xml xslt amazon jsonp cors

37
推荐指数
1
解决办法
2万
查看次数