Xml 通过XSLT1.0转换许多E2ETraceEvent

Xml 通过XSLT1.0转换许多E2ETraceEvent,xml,xslt,Xml,Xslt,我有一个生成Microsoft节点的第三方应用程序,因此基本上有许多根节点,我不知道是否有办法告诉您忽略XSLT的多个根问题,而不创建另一个进程来围绕条目包装根元素?如果是,怎么做 基本上,XML文件包含许多条目,如下所示 <E2ETraceEvent xmlns="http://schemas.microsoft.com/2004/06/E2ETraceEvent"> <System xmlns="http://schemas.microsoft.com/2004/0

我有一个生成Microsoft
节点的第三方应用程序,因此基本上有许多根节点,我不知道是否有办法告诉您忽略XSLT的多个根问题,而不创建另一个进程来围绕条目包装根元素?如果是,怎么做

基本上,XML文件包含许多条目,如下所示

<E2ETraceEvent xmlns="http://schemas.microsoft.com/2004/06/E2ETraceEvent">
    <System xmlns="http://schemas.microsoft.com/2004/06/windows/eventlog/system">
        <EventID>1</EventID>
        <Type>3</Type>
        <SubType Name="Error">0</SubType>
        <Level>2</Level>
        <TimeCreated SystemTime="2012-10-21T16:38:10.0421996Z" />
        <Source Name="Framework" />
        <Correlation ActivityID="{00000000-0000-0000-0000-000000000000}" />
        <Execution ProcessName="Framework" ProcessID="2448" ThreadID="15" />
        <Channel />
        <Computer>WIN</Computer>
    </System>
    <ApplicationData>
        <TraceData>
            <DataItem>
                <TraceRecord Severity="Error" xmlns="http://schemas.microsoft.com/2004/10/E2ETraceEvent/TraceRecord">
                    <TraceIdentifier>Framework</TraceIdentifier>
                    <Description>Killing unresponsive jobs.</Description>
                    <AppDomain>JobHost</AppDomain>
                </TraceRecord>
            </DataItem>
        </TraceData>
    </ApplicationData>
</E2ETraceEvent>

1.
3.
0
2.
赢
框架
杀死没有反应的工作。
工作主持

什么XSLT引擎?从命令行或程序调用?如果来自程序,则可以过滤输入并将每个元素作为单独的文档传递。如果没有更多关于如何调用转换的详细信息,就很难提供解决方案。引擎是.net,但我无法对其进行编程控制,我只能选择XSLT和XML。在这种情况下,我严重怀疑您能否做到这一点,除非.net引擎专门为此提供了非标准选项。XML或XSLT规范中没有允许这样做的内容。你应该把这个问题发布在.NETXSLT支持论坛上,这就是我的想法。感谢您花时间回复。我在这里提出的问题是,我无法控制用于将XSLT应用于XML的.net代码,因此这将浪费他们的响应时间。我希望我可以在XSLT中以本机方式复制到根节点中。这个引擎是如何调用的?您是否在命令行上指定XML和XSLT文件,并将其输出到文件?如果是这样,那么您可以预处理多根XML,用根节点包装它,然后将包装好的文件发送到XSLT工具。