Re: [xsl] join two files - plz help

Subject: Re: [xsl] join two files - plz help
From: "Sam D. Chuparkoff" <sdc@xxxxxxxxxx>
Date: Mon, 20 Jun 2005 05:08:51 -0700
On Mon, 2005-06-20 at 12:57 +0200, Michael Donabauer wrote: 
> Hi *,
> 
> i have two files which have to be joined trough xslt. I am using the
> msxsl.exe from the mircosoft page. I hope this is anyhow the adequate
> list.
> 
> Here is an excerpt of the first XML-File, there is an object called
> ".../Device/Front_End/Port/@pd_name" inside:
> 
> <?xml version="1.0" standalone="yes" ?>
> 
> <SymCLI_ML>
> <Symmetrix id="000287970171">
> <Device dev_name="0007" status="Ready" configuration="2-Way Mir">
> <Flags worm_protected="False" grouped="False" meta="None"/>
> <Capacity megabytes="3"/>
> <Front_End>
> <Port pd_name="/dev/rhdiskpower0" director="02C" port="0"/>
> </Front_End>
> <Back_End>
> <Disk director="16A" interface="C" tid="3"/>
> </Back_End>
> </Device>
> <Device dev_name="0008" status="Ready" configuration="2-Way Mir">
> <Flags worm_protected="False" grouped="False" meta="None"/>
> <Capacity megabytes="3"/>
> <Front_End>
> <Port pd_name="/dev/rhdiskpower1" director="02C" port="0"/>
> </Front_End>
> <Back_End>
> <Disk director="01B" interface="C" tid="3"/>
> </Back_End>
> </Device>
> ...
> 
> With Unix-Shell (on AIX 5.3) i have generated an XML-File with the
> Output of the AIX-Command lspv (list physical volumes). The content of
> this valid xml-file looks like this: 
> 
> <?xml version="1.0" standalone="yes" ?>
> <SymCLI_ML>
> <Symmetrix id="000287970171">
> <Device>
> <Front_End>
>    <Port pd_name="/dev/rhdiskpower49" aix_vg="oraclevg">
>    </Port>
>    <Port pd_name="/dev/rhdisk0" aix_vg="rootvg">
>    </Port>
>    <Port pd_name="/dev/rhdisk1" aix_vg="rootvg">
>    </Port>
>    <Port pd_name="/dev/rhdiskpower4" aix_vg="oraclevg">
>    </Port>
>    <Port pd_name="/dev/rhdiskpower5" aix_vg="tsmvg">
>    </Port>
>    <Port pd_name="/dev/rhdiskpower6" aix_vg="tsmvg">
> 
> ...
> 
> You see, in both files there are entries called "pd_name". Plz. could
> you tell me how to join these two files? I need a report that shows at
> least every "dev_name" and "*hdiskpower*" in the first mentioned sample
> with the correct "aix_vg" in the second snippet. I have already read
> many examples, but i can't make the grade. Any hint would be
> appreciated.

You need to use the document function. See:

http://www.w3.org/TR/xslt#function-document

What you'll want is something like this:

document("foo.xml")//Port[@pd_name=current()/@pd_name]/@aix_vg

sdc

> Thanks in advance
> ::mike

Current Thread