Hi,

I've pasted in the cf script and xsl and xml and wddx data files that I was
able to successfully translate thanks to help from forum.

<HTML>
<!--

    File:                       ftp.cfm
        Arguments:                              MerchantName
        Called by:                              cold fusion scheduler
    Author:                     Ed Dunn
    Version:                    0.1
    Last modified:              May 18, 2000

   Generic FTP and Processing of Merchant Product Pricing Datafiles

-->

<HEAD>
<title>xsl</title>
</HEAD>
</BODY>

!--- create unique output file name  --->

<!-- Initialize File that will store data as a wddx packet -->

<CFOBJECT TYPE=JAVA
        ACTION=CREATE
        CLASS="java.io.FileWriter"
        NAME=Writer>
<cfset Writer.init("c:\Inetpub\wwwroot\SportsRev\fogdog.out")>
<cfoutput>file initialized </cfoutput>
<CFOBJECT TYPE=JAVA
        ACTION=CREATE
        CLASS="java.io.PrintWriter"
        NAME=PrintWriter>
<cfset PrintWriter.init(Writer)>

<!--- Create the XSLT parser  --->
<CFOBJECT
    TYPE=JAVA
    ACTION=CREATE
    CLASS="com.lotus.xsl.XSLProcessor"
      NAME=xslProcessor>

<cftry>
<CFSET xslProcessor.process
    ("c:\Inetpub\wwwroot\SportsRev\fogdog.xml",
     "c:\Inetpub\wwwroot\SportsRev\datafeed.xsl", PrintWriter)>
<cfcatch type="ANY">
    <br>
    <cfoutput>  Ed Exception : #CFCATCH.Detail# </cfoutput>
</cfcatch>
</cftry>

<cfset PrintWriter.close()>
<cfoutput>xml transformed </cfoutput>


<!--- Read the file that contains the WDDX packet --->
<CFFILE
    ACTION="Read"
    FILE="c:\Inetpub\wwwroot\SportsRev\fogdog.out"
    VARIABLE="wddxpacket">
<cfoutput>wddx file read</cfoutput>

<!--- deserialize the packet --->
<CFWDDX ACTION="WDDX2CFML" INPUT="#wddxpacket#" OUTPUT="appdata">
<cfoutput>deserialized</cfoutput>

<!--- set variables --->
<CFSET merchant=#appdata["merchant"]#>

<!--- get the first and last name from the array --->
<!--- and then set a variable for the whole name --->
<CFSET url=#appdata["url"]#>
<CFSET otherInfo=#appdata["otherinfo"]#>

<!-- update merchant table -->
<cfquery name="UpdateMerchant" datasource="SportsRev" dbtype="ODBC">
Update merchant
        set otherinfo = '#otherInfo#',
        merchant_url = '#url#'
        where merchant_name = '#merchant#'
</cfquery>
<cfoutput>merchant updated </cfoutput>

<!--- create and fill a local array with product item info --->
<CFSET itemArray=#appdata["itemArray"]#>

<!--- update merchant product item information --->


    <CFLOOP FROM="1" TO="#ArrayLen(itemArray)#" INDEX="Counter">
                <cfquery name="UpdateProductMerchant" datasource="SportsRev"
dbtype="ODBC">
                        Update product_merchant, product, merchant
                                set product_merchant.price = 
'#itemArray[Counter]["price"]#',
                                product_merchant.shipping = 
'#itemArray[Counter]["shipping"]#',
                                product_merchant.availability = 
'#itemArray[Counter]["avail"]#',
                                product_merchant.purchase_url = 
'#itemArray[Counter]["link"]#'
                                where product.sku = '#itemArray[Counter]["sku"]#'
                                and   merchant.merchant_name = '#merchant#'
                                and       product.product_id = 
product_merchant.product_id
                                and   merchant.merchant_id = 
product_merchant.merchant_id
                </cfquery>
                <cfoutput>item updated</cfoutput>
    </CFLOOP>
<cfoutput>array updated</cfoutput>

</BODY>
</HTML>

xml:
<datafeed merchant="FogDog" url="http://www.fogdog.com/" otherinfo="sports">
<item   category="GolfDriver"   manufacturer="Callaway"         name="Callaway
Hawkeye"
                price="385.00"
link="http://www.fogdog.com/cedroID/ssd1110101518073/wld/fogdog_sports/calla
way_golf/golf/equipment/great_big_bertha_hawk_eye_driver.html"
                sku="hawkeyesku"                skuType="skutypegolf"           
merchProdId="hawekeyeid"
                avail="Y"                               description="Latest technology 
from Callaway"
                shipping="0.00"></item>
<item   category="GolfDriver"   manufacturer="Callaway"         name="Callaway
SteelHead Plus"
                price="247.00"
link="http://www.fogdog.com/cedroID/ssd1110101518073/wld/fogdog_sports/calla
way_golf/golf/equipment/steelhead_plus_driver.html"
                sku="steelheadsku"              skuType="skutypegolf"           
merchProdId="steelheadid"
                avail="Y"                               description="Best Steel Driver 
from Callaway"
                shipping="0.00"></item>
<item   category="GolfDriver"   manufacturer="Taylor Made"      name="Taylor Made
Firesole"
                price="349.00"
link="http://www.fogdog.com/cedroID/ssd1110101518073/wld/fogdog_sports/taylo
rmade_golf/golf/equipment/firesole_driver.html"
                sku="firesolesku"               skuType="skutypegolf"           
merchProdId="firesoleid"
                avail="Y"                               description="Titanium with 
Bubble Shaft"
                shipping="0.00"></item>

</datafeed>


xsl:
<!--

    File:                       datafeed.xsl
        Called by:                              datafeed.cfm
    Author:                     Ed Dunn
    Version:                    0.1
    Last modified:              May 16, 2000

    This stylesheet translates typical datafeed XML format
        into a WDDX packet.  The WDDX packet is a standard XML
        format that is more easily de-serialized by many languages.

-->


<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

<!-- Match datafeed root & create WDDX packet and merchant header -->
<xsl:template match="/datafeed">
    <wddxPacket version="1.0">
        <header/>
        <data>
            <struct>
                                <var name="merchant"><string><xsl:value-of
select="@merchant"/></string></var>
                                <var name="url"><string><xsl:value-of 
select="@url"/></string></var>
                                <var name="otherinfo"><string><xsl:value-of
select="@otherinfo"/></string></var>
                                <var name="itemArray">
                                <array length="{count(//item)}">
                        <xsl:apply-templates/>
                        </array>
                        </var>
            </struct>
        </data>
    </wddxPacket>
</xsl:template>


<!-- Process a product item attributes -->
<xsl:template match="item">
            <struct>
                                <var name="category"><string><xsl:value-of
select="@category"/></string></var>
                                <var name="manufacturer"><string><xsl:value-of
select="@manufacturer"/></string></var>
                                <var name="name"><string><xsl:value-of 
select="@name"/></string></var>
                                <var name="price"><number><xsl:value-of 
select="@price"/></number></var>
                                <var name="link"><string><xsl:value-of 
select="@link"/></string></var>
                                <var name="sku"><string><xsl:value-of 
select="@sku"/></string></var>
                                <var name="skuType"><string><xsl:value-of
select="@skutype"/></string></var>
                                <var name="merchProdId"><string><xsl:value-of
select="@merchProdId"/></string></var>
                                <var name="avail"><string><xsl:value-of 
select="@avail"/></string></var>
                                <var name="description"><string><xsl:value-of
select="@description"/></string></var>
                                <var name="shipping"><number><xsl:value-of
select="@shipping"/></number></var>
                        </struct>
</xsl:template>

</xsl:stylesheet>

resultant wddx:
<?xml version="1.0" encoding="UTF-8"?>
<wddxPacket version="1.0"><header/><data><struct><var
name="merchant"><string>FogDog</string></var><var
name="url"><string>http://www.fogdog.com/</string></var><var
name="otherinfo"><string>sports</string></var><var name="itemArray"><array
length="3">
<struct><var name="category"><string>GolfDriver</string></var><var
name="manufacturer"><string>Callaway</string></var><var
name="name"><string>Callaway Hawkeye</string></var><var
name="price"><number>385.00</number></var><var
name="link"><string>http://www.fogdog.com/cedroID/ssd1110101518073/wld/fogdo
g_sports/callaway_golf/golf/equipment/great_big_bertha_hawk_eye_driver.html<
/string></var><var name="sku"><string>hawkeyesku</string></var><var
name="skuType"><string/></var><var
name="merchProdId"><string>hawekeyeid</string></var><var
name="avail"><string>Y</string></var><var name="description"><string>Latest
technology from Callaway</string></var><var
name="shipping"><number>0.00</number></var></struct>
<struct><var name="category"><string>GolfDriver</string></var><var
name="manufacturer"><string>Callaway</string></var><var
name="name"><string>Callaway SteelHead Plus</string></var><var
name="price"><number>247.00</number></var><var
name="link"><string>http://www.fogdog.com/cedroID/ssd1110101518073/wld/fogdo
g_sports/callaway_golf/golf/equipment/steelhead_plus_driver.html</string></v
ar><var name="sku"><string>steelheadsku</string></var><var
name="skuType"><string/></var><var
name="merchProdId"><string>steelheadid</string></var><var
name="avail"><string>Y</string></var><var name="description"><string>Best
Steel Driver from Callaway</string></var><var
name="shipping"><number>0.00</number></var></struct>
<struct><var name="category"><string>GolfDriver</string></var><var
name="manufacturer"><string>Taylor Made</string></var><var
name="name"><string>Taylor Made Firesole</string></var><var
name="price"><number>349.00</number></var><var
name="link"><string>http://www.fogdog.com/cedroID/ssd1110101518073/wld/fogdo
g_sports/taylormade_golf/golf/equipment/firesole_driver.html</string></var><
var name="sku"><string>firesolesku</string></var><var
name="skuType"><string/></var><var
name="merchProdId"><string>firesoleid</string></var><var
name="avail"><string>Y</string></var><var
name="description"><string>Titanium with Bubble Shaft</string></var><var
name="shipping"><number>0.00</number></var></struct>

</array></var></struct></data></wddxPacket>


------------------------------------------------------------------------------
Archives: http://www.eGroups.com/list/cf-talk
To Unsubscribe visit 
http://www.houseoffusion.com/index.cfm?sidebar=lists&body=lists/cf_talk or send a 
message to [EMAIL PROTECTED] with 'unsubscribe' in the body.

Reply via email to