草庐IT

xsl-variable

全部标签

sql-server - MSSQL 2012 : delete XML attribute by using a variable

下午好我想使用TSQL变量删除XML属性。这是一个最低限度的工作示例(TSQL代码):DECLARE@xmlXML;SET@xml=CONVERT(XML,N'ValueAValueBValueC');SET@xml.[modify]('delete(/recipe/parameters/parameter/@desc)');SELECT@xml;这给出了所需的输出:所有属性“desc”已被删除:ValueAValueBValueC但是,我想定义一个TSQL变量DECLARE@attrNVARCHAR(MAX)=N'desc';如何将其传递给XQuery修改操作?我可以在XMLDML中

xml - 如何只匹配xsl模板规则中的当前节点?

我有以下xsl转换输入:Table我正在尝试应用一个模板,并且只匹配当前的Section节点,但是xsl:template上的匹配表达式也将匹配任何子部分。有没有办法限制匹配到当前节点?我正在应用这个xsl样式表:输出是:Table模板匹配Section[Type]匹配小节,但我要查找的结果是被调用时,不应匹配任何内容,因为当前部分没有Type元素。或者,我是否必须为这种情况使用调用模板?另一个选项是匹配onSection/Type,但我想避免使用..返回父节点,只是为了代码清晰。 最佳答案 您的困惑是因为XSLT的built-in

xml - XSLT 流与 xsl :iterate correct way

我想处理一个161mo的数据库,但是javasaxon9he在300mb内存和.NET在1700mb内存时内存不足,所以我需要使用流,所以我使用XMLSpy演示,但我仍然不明白xpath表达式子父逻辑。我在windowsxpsp332位4gb内存上。使用xsl:iterate或xsl:for-each进行流式传输的正确方法是什么?该数据库中有近60000个条目。我的意思是如何正确编写它,因为db_entry中的db_entry不起作用。编辑:|| 我将db_entryxsl:template替换为xsl:iterate,但随后XMLspy无法加载大文件,因此流式传输似乎不起作用

xml - Saxon 过早评估 xsl :attribute-set

这与使用最新的SaxonEE9.8对输入到XSLT转换的模式感知验证有关。我的XSLT文件包含以下内容。这样定义的命名空间和关联模式:符合上述模式的结果文档:GENERATESOMEMOREXMLTOBEVALIDATEDBYTHEXSD你会注意到结果文档中的父标签使用属性集xsl:use-attribute-sets="ir".属性集定义如下:4-2这是一个玩具示例,上面的样板文件不合理!当我将它用于:javanet.sf.saxon.Transform-sa-ext:on-it-o:output.xml-xsl:example.xslt这是预料之中的,因为据我所知,“-sa”只会检

html - XML/XSL 到 HTML 表

谁能帮我从我的行循环中获取columndefinition/column/cssclass的值?因此,在我的xsl中,我想在我的“行”forloop期间为同一列位置拉入cssclass,并将其放入我的希望这是有道理的。谁能帮我解决这个问题?谢谢。我的XML看起来像这样:TestColumn1test1TestColumn2test2311/04/20022204/15/200313404/15/20036311/03/20046511/03/20046611/03/2004这是我目前的xsl:ReportSample 最佳答案 ..

xml - XSL 转换,选择前缀命名空间?

我正在尝试从以下具有命名空间前缀的xml中选择一个节点:.............................我使用的xsl是(已更新):原始xml位于:http://www.ecb.europa.eu/stats/eurofxref/eurofxref-hist-90d.xml这不起作用,选择是空的。如果我将gesmes:Envelope更改为xml和xsl中的简单信封,一切正常吗?如何使用前缀选择它? 最佳答案 确保您已经在转换的根元素中声明了命名空间:查看您的逻辑和输入XML,看起来内部for-each永远不会选择节点,因

xml - 如何嵌套xsl :for-each selec

嗨!我的XML:RAZSTAVNIPROSTORDVORANAC1105DVORANAA1102UPORABNINAPROSTORA,TEHNIČNEOPREMEINOSEBJADVORANAC2100我的XSLT:MyCDCollection结果:RAZSTAVNIPROSTORDVORANAC110511022100DVORANAA110511022100DVORANAC110511022100UPORABNINAPROSTORA,TEHNIČNEOPREMEINOSEBJADVORANAC110511022100DVORANAA110511022100DVORANAC110511

xml - 验证元素是否存在并在 xsl 中具有某些特定值

如何检查标签是否存在且值为'On'在xsl中做一些事情请指正,//dosomething我们可以跳过检查标签是否存在并直接检查值吗?//dosomething这是正确的做法吗。, 最佳答案 以上是多余的,因为如果$status='On'然后是$status的bool值是真的。因此,上述xslt指令的@test属性中包含的表达式等价于:$status='On',更短。这完全回答了这个问题。在我看来,你想测试是否$status已定义,然后测试其值。这是不正确的——如果引用未定义的xsl:variable,根据W3XSLT规范,这会导致错

xml - 仅在 XSL 中存在标签时才输出标签的最佳方法是什么?

我正在开发一个与第3方应用程序的接口(interface),该接口(interface)基本上需要获取应用程序吐出的XML并将其转换为我们的系统可以处理的XML。它基本上只是将样式表应用于原始XML以使其看起来像“我们的”XML。我注意到在我们拥有的其他样式表中,有这样的结构:基本上,“in”XML有一个State标记,我需要将其输出为我们识别的StateAbbreviation标记。但是,如果“in”XML包含State标记,我只想输出StateAbbreviation标记。上面的block很好地完成了这一点,但不是很直观(至少对我来说不是),因为每次我看到for-each我都假设有

xml - 在 XSL 中,如何根据多个属性选择一个值?

这一定是一个非常基本的问题,但我真的很难找到解决方案。当我在tag="099"和code="a"属性上匹配时,我试图从以下XML中提取第一个实例分别在marc:datafield节点和marc:subfield节点...79927839940002940002*940002**...所以,我正在尝试检索第一个“940002”。使用以下代码:...但是,我得到的是:true...而不是想要的:940002...我猜这一定是Xpath问题,但是...任何线索都将不胜感激。谢谢 最佳答案 使用:/marc:collection/marc: