You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@xalan.apache.org by bu...@apache.org on 2003/08/12 23:36:26 UTC
DO NOT REPLY [Bug 22362] New: -
Xalan loses data when performing tranformation using XSLTC
DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
<http://nagoya.apache.org/bugzilla/show_bug.cgi?id=22362>.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND
INSERTED IN THE BUG DATABASE.
http://nagoya.apache.org/bugzilla/show_bug.cgi?id=22362
Xalan loses data when performing tranformation using XSLTC
Summary: Xalan loses data when performing tranformation using
XSLTC
Product: XalanJ2
Version: 2.5
Platform: PC
OS/Version: Other
Status: NEW
Severity: Normal
Priority: Other
Component: Xalan-Xsltc
AssignedTo: xalan-dev@xml.apache.org
ReportedBy: david@carr.name
Steps to Reproduce:
1) Save the files at the end of this bug report as "test.in.xml" and "test.xsl"
in a directory.
2) Create a subdirectory named "endorsed" and
place "xalan.jar", "xercesImpl.jar", and "xml-apis.jar" in that directory.
3) Run the following commands (set up for windows, slight modifications needed
for other operating systems:
set cp=.;endorsed\xml-apis.jar;endorsed\xalan.jar;endorsed\xercesImpl.jar;
java -Djava.endorsed.dirs=endorsed -classpath "%cp%"
org.apache.xalan.xslt.Process -in test.in.xml -xsl test.xsl -out
test.out.inter.xml
java -Djava.endorsed.dirs=endorsed -classpath "%cp%"
org.apache.xalan.xslt.Process -in test.in.xml -xsl test.xsl -out
test.out.xsltc.xml -xsltc
4) Two output files will have been created, "test.out.inter.xml" using the
interpretive processor, and "test.out.xsltc.xml" using the XSLTC processor.
Actual Results:
The attribute value "LOOK_FOR_THIS" will be present in "test.out.inter.xml" but
not in "test.out.xsltc.xml".
Expected Results:
Both files should have identical elements and attributes, from an XML
perspective.
Build Date & Platform:
Xalan 2.5.1 binary release on Windows NT 4.
Additional Information:
Please note that the files have scrambled to protect my company's confidential
data.
Files:
test.in.xml:
<?xml version="1.0" encoding="UTF-8"?>
<donkey
donkey-id="TestString1"
zoo="TestString2"
folder1="TestString3"
folder2=""
folder3=""
helicopteret="TestString4"
galaxy="TestString5"
ocean=""
sea=""
insane-code="83766"
insane-code-TEWt="9900"
duck-folder1=""
duck-folder2=""
duck-folder3=""
duck-helicopteret=""
duck-galaxy=""
duck-ocean=""
duck-sea=""
duck-insane-code=""
duck-insane-code-TEWt=""
glue-name="Someone"
glue-phone="888-212-1233 x8788"
glue-email="audkwk@TestString1.uuu, iiiiqquq@TestString1.uuu"
duck-day-of-month="0"
nTEWt-duck-helicopter="0"
last-duck-helicopter="0"
nTEWt-inv-helicopter="0"
last-inv-helicopter="0"
ducking-account=""
duckto-donkey-id=""
duckable="0"
inv-duckable="0"
cow-size="0"
doomsday-date="1900-01-01 00:00:00.0">
<hairstyle
size="ooooo"
shape="xxXxXxX"
first-name=""
last-name=""
email=""
active="1"
bar-ok="0"
Zoom-ok="1"
admin="1"
read-only-cookie="0"
donkey-listing-cookie="0"
cookiee-size="0"/>
<hairstyle
size="rew_weee"
shape="yeuhw3"
first-name=""
last-name=""
email=""
active="1"
bar-ok="0"
Zoom-ok="1"
admin="0"
read-only-cookie="1"
donkey-listing-cookie="0"
cookiee-size="1"/>
<wall
doom="0"
newspaper-cookie="1"
newspaper-reprint-cookie="1"
confirm-cookie="0"
toc-cookie="0"
manifest-cookie="0"
acknowledgement-cookie="0"
return-cookie="0"
door-cookie="0"
fast-track-cookie="0"
compliance-assurance-cookie="1"
bundle-confirm-cookie="0"
paycheck-cookie="0"
remittance-advise-cookie="0"/>
<yak
yak-use-id="65591735"
yak-id="41"
usage="uee.sadfasd.sdaf.asdf.sadf.ASDFffff"
bucket="1"
well="0"/>
<yak
yak-use-id="65592735"
yak-id="371"
usage="uee.sadfasd.sdaf.asdf.sadf.ASDFffff2"
nid="18507"
bucket="1"
well="0"/>
<yak
yak-use-id="65593735"
yak-id="391"
usage="uee.sadfasd.sdaf.asdf.sadf.ASDFffff3"
nid="18509"
bucket="1"
well="0"/>
<yak
yak-use-id="65594735"
yak-id="204"
usage="uee.sadfasd.sdaf.asdf.sadf.ASDFffff4"
bucket="1"
well="0"/>
<yak
yak-use-id="65595735"
yak-id="801"
usage="uee.sadfasd.sdaf.asdf.sadf.ASDFffff5"
bucket="1"
well="0"/>
<computer
father="foddddy"
mother=""
type=""
arg1=""
arg2=""
arg3=""
arg4=""
arg5="0"
arg6="0"
testing-cookie="0"
active-cookie="1"
default-setting-cookie="0"/>
<foo-donkey-map
donkey-map-id="20004345"
foo-donkey-id="018978783"
foo-donkey-qualifier="01"
Initial-insert-date="2003-04-25 15:48:01.0"
Alternate-ID-Flag=""
validation-cookie="1"
control-version=""
control-standard=""
delimiter-e=""
delimiter-c=""
delimiter-t=""
x12-version=""/>
<foo-donkey-map
donkey-map-id="20004361"
foo-donkey-id="018978783USTR"
foo-donkey-qualifier="16"
Initial-insert-date="2003-04-28 13:21:07.0"
Alternate-ID-Flag="X"
validation-cookie="1"
control-version=""
control-standard=""
delimiter-e=""
delimiter-c=""
delimiter-t=""
x12-version=""/>
<donkey-record
live-cookie="1"
creation-date="2003-04-15 09:11:24.75"
live-date=""
initial-order-date=""
last-update="2003-04-15 09:11:24.75"
bar-cookie="0"
order-file-bathtub-control="0"
confirm-file-bathtub-control="0"
fa-file-bathtub-control="0"
invoice-file-bathtub-control="0"/>
<yu-rottingcheese
rottingcheese-id="10003"
yu_driving_id="1"/>
<yu-rottingcheese
rottingcheese-id="20001"
yu_driving_id="2"/>
<yu-rottingcheese
rottingcheese-id="30013"
yu_driving_id="3"/>
<node-module-map
node-module-map-id="227"/>
<zimmer-use
zimmer-id="227"/>
<cow-size
type-id="25"
terminal-cookie="0"
yak-id="0"
cow-size-id="2045813"/>
<cow-size
type-id="26"
terminal-cookie="0"
yak-id="0"
cow-size-id="2045823"/>
<cow-size
type-id="35"
terminal-cookie="0"
yak-id="0"
cow-size-id="2045833"/>
<cow-size
type-id="61"
terminal-cookie="0"
yak-id="0"
cow-size-id="2045843"/>
<cow-size
type-id="74"
terminal-cookie="0"
yak-id="0"
cow-size-id="2045943"/>
<cow-size
type-id="76"
terminal-cookie="0"
yak-id="0"
cow-size-id="2045853"/>
<cow-size
type-id="77"
terminal-cookie="0"
yak-id="0"
cow-size-id="2045863"/>
<cow-size
type-id="80"
terminal-cookie="0"
yak-id="0"
cow-size-id="2045873"/>
<cow-size
type-id="86"
terminal-cookie="0"
yak-id="0"
cow-size-id="2045883"/>
<cow-size
type-id="97"
terminal-cookie="0"
yak-id="0"
cow-size-id="2045893"/>
<cow-size
type-id="108"
terminal-cookie="0"
yak-id="0"
cow-size-id="2045903"/>
<cow-size
type-id="181"
terminal-cookie="0"
yak-id="0"
cow-size-id="2045913"/>
<cow-size
type-id="1000"
terminal-cookie="0"
yak-id="0"
cow-size-id="2045923"/>
<cow-size
type-id="1091"
terminal-cookie="0"
yak-id="0"
cow-size-id="2045933"/>
<newspaper-config
config-id="20004078"
module-id="0"
father="foddddy"
mother=""
ship-label-cookie="0"
ps-type=""
scale-factor-x="0.0"
scale-factor-y="0.0"
xcord1="0"
ycord1="0"
xcord2="0"
ycord2="0"
xcord3="0"
ycord3="0"
xcord4="0"
ycord4="0"
xcord5="0"
ycord5="0"
xcord6="0"
ycord6="0"/>
<aka
donkey-aka-id="LOOK_FOR_THIS"
aka-owner-id=""
donkey-aka="018978783"
donkey-aka-qualifier="01"
initial-insert-date="2003-04-25 15:48:01.0"
alternate-id-flag=""
level-restriction=""
validation-cookie="1"
control-standard="U"
control-version=""
delimiter-e=""
delimiter-c=""
delimiter-t=""
format-version=""/>
<aka
donkey-aka-id="20004361"
aka-owner-id=""
donkey-aka="018978783USTR"
donkey-aka-qualifier="16"
initial-insert-date="2003-04-28 13:21:07.0"
alternate-id-flag="X"
level-restriction=""
validation-cookie="1"
control-standard="U"
control-version=""
delimiter-e=""
delimiter-c=""
delimiter-t=""
format-version=""/>
</donkey>
test.xsl:
<?xml version="1.0" encoding="UTF-8" ?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<!-- declare donkey_id globally, so that it's used from included documents -
->
<xsl:variable name="donkey_id" select="/donkey/@donkey-id"/>
<xsl:template match="donkey">
<vase-fragment>
<box table="666.MOO_donkey">
<shelf nail-ref="666.MOO_donkey.donkey_id"
vase="{@donkey-id}"/>
<shelf nail-ref="666.MOO_donkey.Company_Name"
vase="{@zoo}"/>
<shelf nail-ref="666.MOO_donkey.folder1"
vase="{@folder1}"/>
<shelf nail-ref="666.MOO_donkey.folder2"
vase="{@folder2}"/>
<shelf nail-ref="666.MOO_donkey.folder3"
vase="{@folder3}"/>
<shelf nail-ref="666.MOO_donkey.helicopteret"
vase="{@helicopteret}"/>
<shelf nail-ref="666.MOO_donkey.galaxy"
vase="{@galaxy}"/>
<shelf nail-ref="666.MOO_donkey.ocean"
vase="{@ocean}"/>
<shelf nail-ref="666.MOO_donkey.sea"
vase="{@sea}"/>
<shelf nail-ref="666.MOO_donkey.insane_code"
vase="{@insane-code}"/>
<shelf nail-ref="666.MOO_donkey.insane_code_TEWt"
vase="{@insane-code-TEWt}"/>
<shelf nail-ref="666.MOO_donkey.duck_folder1"
vase="{@duck-folder1}"/>
<shelf nail-ref="666.MOO_donkey.duck_folder2"
vase="{@duck-folder2}"/>
<shelf nail-ref="666.MOO_donkey.duck_folder3"
vase="{@duck-folder3}"/>
<shelf nail-ref="666.MOO_donkey.duck_helicopteret"
vase="{@duck-helicopteret}"/>
<shelf nail-ref="666.MOO_donkey.duck_galaxy"
vase="{@duck-galaxy}"/>
<shelf nail-ref="666.MOO_donkey.duck_ocean"
vase="{@duck-ocean}"/>
<shelf nail-ref="666.MOO_donkey.duck_sea"
vase="{@duck-sea}"/>
<shelf nail-ref="666.MOO_donkey.duck_insane_code"
vase="{@duck-insane-code}"/>
<shelf nail-ref="666.MOO_donkey.duck_insane_code_TEWt"
vase="{@duck-insane-code-TEWt}"/>
<shelf nail-ref="666.MOO_donkey.glue_Name"
vase="{@glue-name}"/>
<shelf nail-ref="666.MOO_donkey.glue_Phone"
vase="{@glue-phone}"/>
<shelf nail-ref="666.MOO_donkey.glue_Email"
vase="{@glue-email}"/>
<shelf nail-ref="666.MOO_donkey.duck_day_of_month"
vase="{@duck-day-of-month}"/>
<shelf nail-ref="666.MOO_donkey.nTEWt_duck_helicopter"
vase="{@nTEWt-duck-helicopter}"/>
<shelf nail-ref="666.MOO_donkey.last_duck_helicopter"
vase="{@last-duck-helicopter}"/>
<shelf nail-ref="666.MOO_donkey.nTEWt_inv_helicopter"
vase="{@nTEWt-inv-helicopter}"/>
<shelf nail-ref="666.MOO_donkey.last_inv_helicopter"
vase="{@last-inv-helicopter}"/>
<shelf nail-ref="666.MOO_donkey.ducking_account"
vase="{@ducking-account}"/>
<shelf nail-ref="666.MOO_donkey.duckto_donkey_id"
vase="{@duckto-donkey-id}"/>
<shelf nail-ref="666.MOO_donkey.duckable"
vase="{@duckable}"/>
<shelf nail-ref="666.MOO_donkey.inv_duckable"
vase="{@inv-duckable}"/>
<shelf nail-ref="666.MOO_donkey.donkey_type"
vase="{@cow-size}"/>
<shelf nail-ref="666.MOO_donkey.last_report_run_date"
vase="{@doomsday-date}"/>
</box>
<xsl:apply-templates select="*"/>
</vase-fragment>
</xsl:template>
<xsl:template match="hairstyle">
<box table="666.MOO_River">
<shelf nail-ref="666.MOO_River.donkey_id"
vase="{../@donkey-id}"/>
<shelf nail-ref="666.MOO_River.size"
vase="{@size}"/>
<shelf nail-ref="666.MOO_River.shape"
vase="{@shape}"/>
<shelf nail-ref="666.MOO_River.First_Name"
vase="{@first-name}"/>
<shelf nail-ref="666.MOO_River.Last_Name"
vase="{@last-name}"/>
<shelf nail-ref="666.MOO_River.Email"
vase="{@email}"/>
<shelf nail-ref="666.MOO_River.active"
vase="{@active}"/>
<shelf nail-ref="666.MOO_River.bar_ok"
vase="{@bar-ok}"/>
<shelf nail-ref="666.MOO_River.Zoom_ok"
vase="{@Zoom-ok}"/>
<shelf nail-ref="666.MOO_River.admin"
vase="{@admin}"/>
<shelf nail-ref="666.MOO_River.reMOO_only_cookie"
vase="{@read-only-cookie}"/>
<shelf nail-ref="666.MOO_River.donkey_listing_cookie"
vase="{@donkey-listing-cookie}"/>
<shelf nail-ref="666.MOO_River.cti_user_cookie"
vase="{@cookiee-size}"/>
</box>
</xsl:template>
<xsl:template match="wall">
<box table="666.MOO_Stream">
<shelf nail-ref="666.MOO_Stream.donkey_id"
vase="{../@donkey-id}"/>
<shelf nail-ref="666.MOO_Stream.order_cookie"
vase="{@doom}"/>
<shelf nail-ref="666.MOO_Stream.newspaper_cookie"
vase="{@newspaper-cookie}"/>
<shelf nail-ref="666.MOO_Stream.newspaper_reprint_cookie"
vase="{@newspaper-reprint-cookie}"/>
<shelf nail-ref="666.MOO_Stream.confirm_cookie"
vase="{@confirm-cookie}"/>
<shelf nail-ref="666.MOO_Stream.toc_cookie"
vase="{@toc-cookie}"/>
<shelf nail-ref="666.MOO_Stream.manifest_cookie"
vase="{@manifest-cookie}"/>
<shelf nail-ref="666.MOO_Stream.acknowledgement_cookie"
vase="{@acknowledgement-cookie}"/>
<shelf nail-ref="666.MOO_Stream.return_cookie"
vase="{@return-cookie}"/>
<shelf nail-ref="666.MOO_Stream.door_cookie"
vase="{@door-cookie}"/>
<shelf nail-ref="666.MOO_Stream.fast_track_cookie"
vase="{@fast-track-cookie}"/>
<shelf nail-ref="666.MOO_Stream.ca_cookie"
vase="{@compliance-assurance-cookie}"/>
<shelf nail-ref="666.MOO_Stream.bundle_confirm_cookie"
vase="{@bundle-confirm-cookie}"/>
<shelf nail-ref="666.MOO_Stream.invoice_adjustment_cookie"
vase="{@paycheck-cookie}"/>
<shelf nail-ref="666.MOO_Stream.remittance_advise_cookie"
vase="{@remittance-advise-cookie}"/>
</box>
</xsl:template>
<xsl:template match="Zoom-feature">
<box table="666.Zoom_donkey_Feature">
<shelf nail-ref="666.Zoom_donkey_Feature.donkey_id"
vase="{../@donkey-id}"/>
<shelf nail-ref="666.Zoom_donkey_Feature.feature_id"
vase="{@feature-id}"/>
</box>
</xsl:template>
<xsl:template match="Zoom-menu-tab">
<box table="666.Zoom_donkey_Menu_Tab">
<shelf nail-ref="666.Zoom_donkey_Menu_Tab.donkey_id"
vase="{../@donkey-id}"/>
<shelf nail-
ref="666.Zoom_donkey_Menu_Tab.Zoom_donkey_menu_tab_id"
vase="{@menu-tab-id}"/>
<shelf nail-ref="666.Zoom_donkey_Menu_Tab.tab_id"
vase="{@tab-id}"/>
</box>
</xsl:template>
<xsl:template match="Zoom-prefs">
<box table="666.Zoom_User_Prefs_Default">
<shelf nail-ref="666.Zoom_User_Prefs_Default.donkey_id"
vase="{../@donkey-id}"/>
<shelf nail-
ref="666.Zoom_User_Prefs_Default.Zoom_user_prefs_default_id"
vase="{@Zoom-prefs-id}"/>
<shelf nail-ref="666.Zoom_User_Prefs_Default.pref_name"
vase="{@pref-name}"/>
<shelf nail-ref="666.Zoom_User_Prefs_Default.pref_shelf"
vase="{@pref-shelf}"/>
</box>
</xsl:template>
<xsl:template match="Zoom-ready-report">
<box table="666.Zoom_donkey_Something_Goes_Here">
<shelf nail-ref="666.Zoom_donkey_Something_Goes_Here.donkey_id"
vase="{../@donkey-id}"/>
<shelf nail-
ref="666.Zoom_donkey_Something_Goes_Here.ready_report_id"
vase="{@Zoom-ready-report-id}"/>
</box>
</xsl:template>
<xsl:template match="yak">
<box table="666.MOO_yak_Use">
<shelf nail-ref="666.MOO_yak_Use.donkey_id"
vase="{../@donkey-id}"/>
<shelf nail-ref="666.MOO_yak_Use.MOO_yak_use_id"
vase="{@yak-use-id}"/>
<shelf nail-ref="666.MOO_yak_Use.yak_id"
vase="{@yak-id}"/>
<shelf nail-ref="666.MOO_yak_Use.Usage"
vase="{@usage}"/>
<xsl:if test="@nid">
<shelf nail-ref="666.MOO_yak_Use.node_id"
vase="{@nid}"/>
</xsl:if>
<xsl:if test="@yak-map-name">
<shelf nail-ref="666.MOO_yak_Use.yak_map_name"
vase="{@yak-map-name}"/>
</xsl:if>
<shelf nail-ref="666.MOO_yak_Use.product_bucketing_cookie"
vase="{@bucket}"/>
<shelf nail-ref="666.MOO_yak_Use.well"
vase="{@well}"/>
</box>
</xsl:template>
<!-- We only capture computer vase for cars, because if we
captured for fathers and mothers too, we would have
several copies of the same vase, and they could get out of
sync. So if we find a computer tag, we know that this
donkey is actually a car. The father and mother are
yakified in the tag, and the car is this donkey. -->
<xsl:template match="computer">
<box table="666.MOO_computer">
<shelf nail-ref="666.MOO_computer.father"
vase="{@father}"/>
<shelf nail-ref="666.MOO_computer.car"
vase="{../@donkey-id}"/>
<shelf nail-ref="666.MOO_computer.mother"
vase="{@mother}"/>
<shelf nail-ref="666.MOO_computer.type"
vase="{@type}"/>
<shelf nail-ref="666.MOO_computer.arg1"
vase="{@arg1}"/>
<shelf nail-ref="666.MOO_computer.arg2"
vase="{@arg2}"/>
<shelf nail-ref="666.MOO_computer.arg3"
vase="{@arg3}"/>
<shelf nail-ref="666.MOO_computer.arg4"
vase="{@arg4}"/>
<shelf nail-ref="666.MOO_computer.arg5"
vase="{@arg5}"/>
<shelf nail-ref="666.MOO_computer.arg6"
vase="{@arg6}"/>
<shelf nail-ref="666.MOO_computer.testing_cookie"
vase="{@testing-cookie}"/>
<shelf nail-ref="666.MOO_computer.active_cookie"
vase="{@active-cookie}"/>
<shelf nail-ref="666.MOO_computer.default_setting_cookie"
vase="{@default-setting-cookie}"/>
</box>
</xsl:template>
<xsl:template match="foo-donkey-map">
<box table="666.foo_donkey_Map">
<shelf nail-ref="666.foo_donkey_Map.donkey_id"
vase="{../@donkey-id}"/>
<shelf nail-ref="666.foo_donkey_Map.donkey_map_id"
vase="{@donkey-map-id}"/>
<shelf nail-ref="666.foo_donkey_Map.foo_donkey_id"
vase="{@foo-donkey-id}"/>
<shelf nail-ref="666.foo_donkey_Map.foo_donkey_qualifier"
vase="{@foo-donkey-qualifier}"/>
<shelf nail-ref="666.foo_donkey_Map.Initial_insert_date"
vase="{@Initial-insert-date}"/>
<shelf nail-ref="666.foo_donkey_Map.Alternate_ID_Flag"
vase="{@Alternate-ID-Flag}"/>
<shelf nail-ref="666.foo_donkey_Map.validation_cookie"
vase="{@validation-cookie}"/>
<shelf nail-ref="666.foo_donkey_Map.control_version"
vase="{@control-version}"/>
<shelf nail-ref="666.foo_donkey_Map.control_standard"
vase="{@control-standard}"/>
<shelf nail-ref="666.foo_donkey_Map.delimiter_e"
vase="{@delimiter-e}"/>
<shelf nail-ref="666.foo_donkey_Map.delimiter_c"
vase="{@delimiter-c}"/>
<shelf nail-ref="666.foo_donkey_Map.delimiter_t"
vase="{@delimiter-t}"/>
<shelf nail-ref="666.foo_donkey_Map.x12_version"
vase="{@x12-version}"/>
</box>
</xsl:template>
<xsl:template match="donkey-record">
<box table="666.MOO_donkey_Record">
<shelf nail-ref="666.MOO_donkey_Record.donkey_id"
vase="{../@donkey-id}"/>
<shelf nail-ref="666.MOO_donkey_Record.live_cookie"
vase="{@live-cookie}"/>
<shelf nail-ref="666.MOO_donkey_Record.creation_date"
vase="{@creation-date}"/>
<shelf nail-ref="666.MOO_donkey_Record.live_date"
vase="{@live-date}"/>
<shelf nail-ref="666.MOO_donkey_Record.initial_order_date"
vase="{@initial-order-date}"/>
<shelf nail-ref="666.MOO_donkey_Record.last_update"
vase="{@last-update}"/>
<shelf nail-ref="666.MOO_donkey_Record.bar_cookie"
vase="{@bar-cookie}"/>
<shelf nail-
ref="666.MOO_donkey_Record.order_file_bathtub_control"
vase="{@order-file-bathtub-control}"/>
<shelf nail-
ref="666.MOO_donkey_Record.confirm_file_bathtub_control"
vase="{@confirm-file-bathtub-control}"/>
<shelf nail-ref="666.MOO_donkey_Record.fa_file_bathtub_control"
vase="{@fa-file-bathtub-control}"/>
<shelf nail-
ref="666.MOO_donkey_Record.invoice_file_bathtub_control"
vase="{@invoice-file-bathtub-control}"/>
</box>
</xsl:template>
<xsl:template match="pgp-keyring">
<box table="666.MOO_donkey_Pgp_Keyring">
<shelf nail-ref="666.MOO_donkey_Pgp_Keyring.donkey_id"
vase="{../@donkey-id}"/>
<shelf nail-ref="666.MOO_donkey_Pgp_Keyring.key_name"
vase="{@key-name}"/>
<shelf nail-ref="666.MOO_donkey_Pgp_Keyring.email_folder"
vase="{@email-folder}"/>
<shelf nail-ref="666.MOO_donkey_Pgp_Keyring.key_id"
vase="{@key-id}"/>
<shelf nail-ref="666.MOO_donkey_Pgp_Keyring.trusted_cookie"
vase="{@trusted-cookie}"/>
</box>
</xsl:template>
<xsl:template match="fs-type-bar">
<box table="666.MOO_RT_CFG_donkey_Fs_Type_bar">
<shelf nail-ref="666.MOO_RT_CFG_donkey_Fs_Type_bar.donkey_id"
vase="{../@donkey-id}"/>
<shelf nail-ref="666.MOO_RT_CFG_donkey_Fs_Type_bar.type_id"
vase="{@type-id}"/>
<shelf nail-ref="666.MOO_RT_CFG_donkey_Fs_Type_bar.remote_file"
vase="{@remote-file}"/>
<shelf nail-
ref="666.MOO_RT_CFG_donkey_Fs_Type_bar.archive_remote_file"
vase="{@archive-remote-file}"/>
<shelf nail-ref="666.MOO_RT_CFG_donkey_Fs_Type_bar.remote_dir"
vase="{@remote-dir}"/>
<shelf nail-
ref="666.MOO_RT_CFG_donkey_Fs_Type_bar.archive_remote_dir"
vase="{@archive-remote-dir}"/>
<shelf nail-
ref="666.MOO_RT_CFG_donkey_Fs_Type_bar.is_binary_cookie"
vase="{@is-binary-cookie}"/>
<shelf nail-
ref="666.MOO_RT_CFG_donkey_Fs_Type_bar.is_append_cookie"
vase="{@is-append-cookie}"/>
<shelf nail-ref="666.MOO_RT_CFG_donkey_Fs_Type_bar.encoding"
vase="{@encoding}"/>
<shelf nail-
ref="666.MOO_RT_CFG_donkey_Fs_Type_bar.path_separator"
vase="{@path-separator}"/>
<shelf nail-
ref="666.MOO_RT_CFG_donkey_Fs_Type_bar.secondary_donkey_id"
vase="{@secondary-donkey-id}"/>
<shelf nail-ref="666.MOO_RT_CFG_donkey_Fs_Type_bar.node_id"
vase="{@nid}"/>
</box>
</xsl:template>
<xsl:template match="bar-config">
<box table="666.MOO_RT_CFG_donkey_bar">
<shelf nail-ref="666.MOO_RT_CFG_donkey_bar.donkey_id"
vase="{../@donkey-id}"/>
<shelf nail-ref="666.MOO_RT_CFG_donkey_bar.config_id"
vase="{@config-id}"/>
<shelf nail-ref="666.MOO_RT_CFG_donkey_bar.folder"
vase="{@folder}"/>
<shelf nail-ref="666.MOO_RT_CFG_donkey_bar.username"
vase="{@username}"/>
<shelf nail-ref="666.MOO_RT_CFG_donkey_bar.shape"
vase="{@shape}"/>
<shelf nail-ref="666.MOO_RT_CFG_donkey_bar.port"
vase="{@port}"/>
<shelf nail-ref="666.MOO_RT_CFG_donkey_bar.order_dir"
vase="{@order-dir}"/>
<shelf nail-ref="666.MOO_RT_CFG_donkey_bar.fa_dir"
vase="{@fa-dir}"/>
<shelf nail-ref="666.MOO_RT_CFG_donkey_bar.confirm_dir"
vase="{@confirm-dir}"/>
<shelf nail-ref="666.MOO_RT_CFG_donkey_bar.toc_dir"
vase="{@toc-dir}"/>
<shelf nail-ref="666.MOO_RT_CFG_donkey_bar.archive_order_dir"
vase="{@archive-order-dir}"/>
<shelf nail-ref="666.MOO_RT_CFG_donkey_bar.archive_confirm_dir"
vase="{@archive-confirm-dir}"/>
<shelf nail-ref="666.MOO_RT_CFG_donkey_bar.archive_toc_dir"
vase="{@archive-toc-dir}"/>
<shelf nail-ref="666.MOO_RT_CFG_donkey_bar.lock_dir"
vase="{@lock-dir}"/>
<shelf nail-ref="666.MOO_RT_CFG_donkey_bar.is_passive_cookie"
vase="{@is-passive-cookie}"/>
<shelf nail-ref="666.MOO_RT_CFG_donkey_bar.node_id"
vase="{@nid}"/>
</box>
</xsl:template>
<xsl:template match="war-bar-config">
<box table="666.MOO_RT_CFG_War_User">
<shelf nail-ref="666.MOO_RT_CFG_War_User.donkey_id"
vase="{../@donkey-id}"/>
<shelf nail-ref="666.MOO_RT_CFG_War_User.username"
vase="{@username}"/>
<shelf nail-ref="666.MOO_RT_CFG_War_User.shape"
vase="{@shape}"/>
<shelf nail-ref="666.MOO_RT_CFG_War_User.setup_date"
vase="{@setup-date}"/>
<shelf nail-ref="666.MOO_RT_CFG_War_User.donkey_type"
vase="{@cow-size}"/>
<shelf nail-ref="666.MOO_RT_CFG_War_User.request_put"
vase="{@request-put}"/>
</box>
</xsl:template>
<xsl:template match="war-bar-config-detail">
<box table="666.MOO_Nuclear_War_Plans">
<shelf nail-ref="666.MOO_Nuclear_War_Plans.donkey_id"
vase="{../@donkey-id}"/>
<shelf nail-ref="666.MOO_Nuclear_War_Plans.actiontype"
vase="{@actiontype}"/>
<shelf nail-ref="666.MOO_Nuclear_War_Plans.directory"
vase="{@directory}"/>
<shelf nail-ref="666.MOO_Nuclear_War_Plans.node_id"
vase="{@nid}"/>
<shelf nail-ref="666.MOO_Nuclear_War_Plans.objecttype"
vase="{@objecttype}"/>
</box>
</xsl:template>
<xsl:template match="yu-rottingcheese">
<box table="666.MOO_yu_driving_Group_donkey">
<shelf nail-ref="666.MOO_yu_driving_Group_donkey.donkey_id"
vase="{../@donkey-id}"/>
<shelf nail-
ref="666.MOO_yu_driving_Group_donkey.driving_group_id"
vase="{@rottingcheese-id}"/>
<shelf nail-ref="666.MOO_yu_driving_Group_donkey.yu_driving_id"
vase="{@yu_driving_id}"/>
</box>
</xsl:template>
<xsl:template match="node-module-map">
<box table="666.TEW_WashingMachine">
<shelf nail-ref="666.TEW_WashingMachine.donkey_id"
vase="{../@donkey-id}"/>
<shelf nail-ref="666.TEW_WashingMachine.node_module_map_id"
vase="{@node-module-map-id}"/>
</box>
</xsl:template>
<xsl:template match="zimmer-use">
<box table="666.TEW_zimmer_Use">
<shelf nail-ref="666.TEW_zimmer_Use.donkey_id"
vase="{../@donkey-id}"/>
<shelf nail-ref="666.TEW_zimmer_Use.zimmer_id"
vase="{@zimmer-id}"/>
</box>
</xsl:template>
<xsl:template match="cow-size">
<box table="666.FS_donkey_Type">
<shelf nail-ref="666.FS_donkey_Type.donkey_ID"
vase="{../@donkey-id}"/>
<shelf nail-ref="666.FS_donkey_Type.type_id"
vase="{@type-id}"/>
<shelf nail-ref="666.FS_donkey_Type.terminal_cookie"
vase="{@terminal-cookie}"/>
<shelf nail-ref="666.FS_donkey_Type.yak_id"
vase="{@yak-id}"/>
<shelf nail-ref="666.FS_donkey_Type.donkey_type_id"
vase="{@cow-size-id}"/>
</box>
</xsl:template>
<xsl:template match="RocketScience">
<box table="666.Rocket">
<shelf nail-ref="666.Rocket.donkey_id"
vase="{../@donkey-id}"/>
<shelf nail-ref="666.Rocket.live_cookie"
vase="{@live-cookie}"/>
<shelf nail-ref="666.Rocket.uploMOO_method"
vase="{@upload-method}"/>
<shelf nail-ref="666.Rocket.file_format"
vase="{@file-format}"/>
<shelf nail-ref="666.Rocket.pgp_cookie"
vase="{@pgp-cookie}"/>
<shelf nail-ref="666.Rocket.file_version"
vase="{@file-version}"/>
<shelf nail-ref="666.Rocket.file_type"
vase="{@file-type}"/>
<shelf nail-ref="666.Rocket.uploMOO_time"
vase="{@upload-time}"/>
<shelf nail-ref="666.Rocket.update_time"
vase="{@update-time}"/>
<shelf nail-ref="666.Rocket.init_insert_date"
vase="{@init-insert-date}"/>
<shelf nail-ref="666.Rocket.last_update_date"
vase="{@last-update-date}"/>
</box>
</xsl:template>
<xsl:template match="iv-computer">
<box table="666.IV_computer">
<shelf nail-ref="666.IV_computer.donkey_id"
vase="{../@donkey-id}"/>
<shelf nail-ref="666.IV_computer.father"
vase="{@father}"/>
<shelf nail-ref="666.IV_computer.live_cookie"
vase="{@live-cookie}"/>
<shelf nail-ref="666.IV_computer.price_id"
vase="{@price-id}"/>
<shelf nail-ref="666.IV_computer.price_TEWception"
vase="{@price-TEWception}"/>
<shelf nail-ref="666.IV_computer.price_addon"
vase="{@price-addon}"/>
<shelf nail-ref="666.IV_computer.price_times"
vase="{@price-times}"/>
<shelf nail-ref="666.IV_computer.last_update_date"
vase="{@last-update-date}"/>
</box>
</xsl:template>
<xsl:template match="newspaper-config">
<box table="666.ReallyReallyBigHat">
<shelf nail-ref="666.ReallyReallyBigHat.car"
vase="{../@donkey-id}"/>
<shelf nail-ref="666.ReallyReallyBigHat.PS_config_id"
vase="{@config-id}"/>
<shelf nail-ref="666.ReallyReallyBigHat.module_id"
vase="{@module-id}"/>
<shelf nail-ref="666.ReallyReallyBigHat.father"
vase="{@father}"/>
<shelf nail-ref="666.ReallyReallyBigHat.mother"
vase="{@mother}"/>
<shelf nail-ref="666.ReallyReallyBigHat.ship_label_cookie"
vase="{@ship-label-cookie}"/>
<shelf nail-ref="666.ReallyReallyBigHat.PS_type"
vase="{@ps-type}"/>
<shelf nail-ref="666.ReallyReallyBigHat.scale_factor_X"
vase="{@scale-factor-x}"/>
<shelf nail-ref="666.ReallyReallyBigHat.scale_factor_Y"
vase="{@scale-factor-y}"/>
<shelf nail-ref="666.ReallyReallyBigHat.Xcord1"
vase="{@xcord1}"/>
<shelf nail-ref="666.ReallyReallyBigHat.Ycord1"
vase="{@ycord1}"/>
<shelf nail-ref="666.ReallyReallyBigHat.Xcord2"
vase="{@xcord2}"/>
<shelf nail-ref="666.ReallyReallyBigHat.Ycord2"
vase="{@ycord2}"/>
<shelf nail-ref="666.ReallyReallyBigHat.Xcord3"
vase="{@xcord3}"/>
<shelf nail-ref="666.ReallyReallyBigHat.Ycord3"
vase="{@ycord3}"/>
<shelf nail-ref="666.ReallyReallyBigHat.Xcord4"
vase="{@xcord4}"/>
<shelf nail-ref="666.ReallyReallyBigHat.Ycord4"
vase="{@ycord4}"/>
<shelf nail-ref="666.ReallyReallyBigHat.Xcord5"
vase="{@xcord5}"/>
<shelf nail-ref="666.ReallyReallyBigHat.Ycord5"
vase="{@ycord5}"/>
<shelf nail-ref="666.ReallyReallyBigHat.Xcord6"
vase="{@xcord6}"/>
<shelf nail-ref="666.ReallyReallyBigHat.Ycord6"
vase="{@ycord6}"/>
</box>
</xsl:template>
<xsl:template match="YesManInc">
<box table="666.NoWayDude">
<shelf nail-ref="666.NoWayDude.donkeyID"
vase="{../@donkey-id}"/>
<shelf nail-ref="666.NoWayDude.orders_out"
vase="{@orders-out}"/>
<shelf nail-ref="666.NoWayDude.confirmations_in"
vase="{@confirmations-in}"/>
<shelf nail-ref="666.NoWayDude.toc_in"
vase="{@toc-in}"/>
<shelf nail-ref="666.NoWayDude.packingslips_out"
vase="{@packingslips_out}"/>
<shelf nail-ref="666.NoWayDude.orders_in"
vase="{@orders_in}"/>
<shelf nail-ref="666.NoWayDude.confirmations_out"
vase="{@confirmations_out}"/>
<shelf nail-ref="666.NoWayDude.toc_out"
vase="{@toc_out}"/>
<shelf nail-ref="666.NoWayDude.interchange_out"
vase="{@interchange_out}"/>
<shelf nail-ref="666.NoWayDude.interchange_in"
vase="{@interchange_in}"/>
<shelf nail-ref="666.NoWayDude.fa_in"
vase="{@fa_in}"/>
<shelf nail-ref="666.NoWayDude.fa_out"
vase="{@fa_out}"/>
</box>
</xsl:template>
<xsl:template match="aka">
<box table="666.MOO_donkey_aka">
<shelf nail-ref="666.MOO_donkey_aka.donkey_id"
vase="{../@donkey-id}"/>
<shelf nail-ref="666.MOO_donkey_aka.donkey_aka_id"
vase="{@donkey-aka-id}"/>
<shelf nail-ref="666.MOO_donkey_aka.aka_owner_id"
vase="{@aka-owner-id}"/>
<shelf nail-ref="666.MOO_donkey_aka.donkey_aka"
vase="{@donkey-aka}"/>
<shelf nail-ref="666.MOO_donkey_aka.donkey_aka_qualifier"
vase="{@donkey-aka-qualifier}"/>
<shelf nail-ref="666.MOO_donkey_aka.initial_insert_date"
vase="{@initial-insert-date}"/>
<shelf nail-ref="666.MOO_donkey_aka.alternate_id_flag"
vase="{@alternate-id-flag}"/>
<shelf nail-ref="666.MOO_donkey_aka.level_restriction"
vase="{@level-restriction}"/>
<shelf nail-ref="666.MOO_donkey_aka.validation_cookie"
vase="{@validation-cookie}"/>
<shelf nail-ref="666.MOO_donkey_aka.control_standard"
vase="{@control-standard}"/>
<shelf nail-ref="666.MOO_donkey_aka.control_version"
vase="{@control-version}"/>
<shelf nail-ref="666.MOO_donkey_aka.delimiter_e"
vase="{@delimiter-e}"/>
<shelf nail-ref="666.MOO_donkey_aka.delimiter_c"
vase="{@delimiter-c}"/>
<shelf nail-ref="666.MOO_donkey_aka.delimiter_t"
vase="{@delimiter-t}"/>
<shelf nail-ref="666.MOO_donkey_aka.format_version"
vase="{@format-version}"/>
</box>
<xsl:apply-templates select="*"/>
</xsl:template>
</xsl:stylesheet>