关于 XML 个文件
regarding XML Files
我是 XML/XSLT
的新手。如果有人能给我一些提示或解释我的问题,我会很高兴。
我在XML
里面有一些XML <SquishReport>
个文件,想看看里面有没有错误,不然我对里面的内容不感兴趣。简而言之:检查报告文件是否有错误。我用 XSLT
格式编写了一个 来检查整个文件并给出一份仅关于一个文件的报告并对部分进行着色。
现在我想检查一些文件夹中存在的所有 XML
文件。这是描述:
- 每个文件夹中
XML
个文件的数量不同。然后在考虑所有XML
个文件之前,我必须找到每个文件夹中XML
个文件的数量。
- 上面链接的代码读取所有消息。但我正在寻找只查找文件中的错误并收集每个文件夹的所有错误描述。我正在考虑
test/message
部分的 if
条件 if XML file.
- 最后打印出一个文件夹中的整个文件有多少个文件有错误。例如六选三,详细说明哪部分有错误。
非常感谢您的想法和帮助!
I have written a script
我想你的意思是:Sean B. Durkin 已经写了,或者至少部分是因为你 link 的答案包含他写的代码。
您使用 XSLT 1.0 和 XSLT 2.0 标记了您的问题,因此我假设您可以使用 XSLT 2.0。
the number of XML files differs in each folder. Then I have to find the number of XML files in each folder before considering all XML files.
这没关系。使用 collection
函数让它遍历你的文件夹,大多数处理器支持递归地遍历它们。
The code that is linked above reads all messages. But I am looking for finding only errors in the files and gathering all error description for each folder. I am thinking of a if condition for test/message part if XML file.
"if XML file" 似乎表明您希望仅当它是 XML 文件并且您的文件夹还包含其他文件时才应用此条件。为此使用 doc-available
,该函数只有在文件实际上是 XML.
时才会成功
在 XSLT 3.0 中,您可以使用 xsl:try
,它会忽略在尝试加载不是 XML.
的文档时引发的任何错误
此外,某些处理器允许您使用 collection
函数并忽略任何无法解析为 XML 的文件。查看处理器的文档以了解如何执行此操作。
at the end prints out how many files have error out from the whole file in one folder separatly. e.g. three from six with the detailed description in which part there is error.
这是一个标准的 XSLT 任务。如果要区分文件夹,请使用 sum
并在匹配模板中根据 base-uri
进行区分。如果需要,您甚至可以按这种方式对结果进行排序。
我是 XML/XSLT
的新手。如果有人能给我一些提示或解释我的问题,我会很高兴。
我在XML
里面有一些XML <SquishReport>
个文件,想看看里面有没有错误,不然我对里面的内容不感兴趣。简而言之:检查报告文件是否有错误。我用 XSLT
格式编写了一个
现在我想检查一些文件夹中存在的所有 XML
文件。这是描述:
- 每个文件夹中
XML
个文件的数量不同。然后在考虑所有XML
个文件之前,我必须找到每个文件夹中XML
个文件的数量。 - 上面链接的代码读取所有消息。但我正在寻找只查找文件中的错误并收集每个文件夹的所有错误描述。我正在考虑
test/message
部分的if
条件 if XML file. - 最后打印出一个文件夹中的整个文件有多少个文件有错误。例如六选三,详细说明哪部分有错误。
非常感谢您的想法和帮助!
I have written a script
我想你的意思是:Sean B. Durkin 已经写了,或者至少部分是因为你 link 的答案包含他写的代码。
您使用 XSLT 1.0 和 XSLT 2.0 标记了您的问题,因此我假设您可以使用 XSLT 2.0。
the number of XML files differs in each folder. Then I have to find the number of XML files in each folder before considering all XML files.
这没关系。使用 collection
函数让它遍历你的文件夹,大多数处理器支持递归地遍历它们。
The code that is linked above reads all messages. But I am looking for finding only errors in the files and gathering all error description for each folder. I am thinking of a if condition for test/message part if XML file.
"if XML file" 似乎表明您希望仅当它是 XML 文件并且您的文件夹还包含其他文件时才应用此条件。为此使用 doc-available
,该函数只有在文件实际上是 XML.
在 XSLT 3.0 中,您可以使用 xsl:try
,它会忽略在尝试加载不是 XML.
此外,某些处理器允许您使用 collection
函数并忽略任何无法解析为 XML 的文件。查看处理器的文档以了解如何执行此操作。
at the end prints out how many files have error out from the whole file in one folder separatly. e.g. three from six with the detailed description in which part there is error.
这是一个标准的 XSLT 任务。如果要区分文件夹,请使用 sum
并在匹配模板中根据 base-uri
进行区分。如果需要,您甚至可以按这种方式对结果进行排序。