[xquery-talk] Xquery+ reduce two docs into one

Sebastian sebi-hinterwaelder at gmx.de
Fri Jan 12 14:18:11 PST 2007


I am quite new to xquery and I have a FLWOR question

I have 2 different files with the same "filename" elements. I want to reduce these files into one where the same filename
elements are closed together surrounded by one meta element. Furthermore the "Value" element that belong to each filename
should also be inside the meta element. For better understanding here is the first file:

<FNumber>
<meta>
<Value2>2.9</Value2>
<FileName>file4</FileName>
<FileName>file5</FileName>
</meta>
<meta>
<Value2>2.8</Value2>
<FileName>file7</FileName>
<FileName>file8</FileName>
<FileName>file9</FileName>
<FileName>file14</FileName>
<FileName>file15</FileName>
<FileName>file16</FileName>
<FileName>file17</FileName>
<FileName>file18</FileName>
<FileName>file19</FileName>
</meta>
<meta>
<Value2>16.0</Value2>
<FileName>file13</FileName>
</meta>
</FNumber>


and here the second:

<FocalLength>
<meta>
<Value1>70.0mm</Value1>
<FileName>file11</FileName>
</meta>
<meta>
<Value1>7.90mm</Value1>
<FileName>file1</FileName>
<FileName>file7</FileName>
<FileName>file8</FileName>
<FileName>file9</FileName>
<FileName>file14</FileName>
<FileName>file15</FileName>
<FileName>file16</FileName>
<FileName>file17</FileName>
<FileName>file18</FileName>
<FileName>file19</FileName>
</meta>
<meta>
<Value1>6.13mm</Value1>
<FileName>file6</FileName>
</meta>
<meta>
<Value1>6.0mm</Value1>
<FileName>file3</FileName>
</meta>
</FocalLength>


There are still some meta elements missing. Now I want to put these files together to something like this


<FF>
<meta>
<Value2>2.8</Value2>
<Value1>7.90mm</Value1>
<FileName>file7</FileName>
<FileName>file8</FileName>
<FileName>file9</FileName>
<FileName>file14</FileName>
<FileName>file15</FileName>
<FileName>file16</FileName>
<FileName>file17</FileName>
<FileName>file18</FileName>
<FileName>file19</FileName>
</meta>
</FF>

So "file1" is missing, because it belongs only to Value1 but not to
Value2. I tried to achieve this already over a long time, but always
something is wrong. I am using the EXIST database with xquery.
Hopefully someone knows how to do it.

Thanks

Sebastian

  

-- 
Best regards,
 Sebastian                          mailto:sebi-hinterwaelder at gmx.de




More information about the talk mailing list