xsl-list
[Top] [All Lists]

RE: badly need xsl help

2003-10-13 10:04:01
hang in there ~Mur,

  I have gotten snooty, unhelpful replies too, some people think they were
born knowing this s**t!! Hey- to all you GURU's out there, some of us have a
lot else going on besides this little corner of your XML universe, and maybe
they don't have the luxury of time and slavish devotion to this particular
temple of learning. If you help someone else, they can perhaps help you
someday in an area in which you are under pressure to produce something
fast, but haven't YET leaned everything there is to know. So come down off
your high-horse people, forums are for people like this bloke here, .. and
me. All you people that are too good to suit yourselves should start a new
forum where you can belittle each other and leave this forum to us who are
trying to learn and help everyone at all levels.

- flashlight

-----Original Message-----
From: owner-xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com
[mailto:owner-xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com]On Behalf Of 
Michael Kay
Sent: Monday, October 13, 2003 10:47 AM
To: xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com
Subject: RE: [xsl] badly need xsl help


  I posted this question here before.
But I didn't get any
luck. So trying again with some more details.

You clearly aren't listening to advice. Didn't you see the post a few
days ago about choosing good subject lines that will make people look at
your questions?



In this example, I can't access individual  nodes inside
RegOptions in the script.

I assume you mean RegionalOptions.

xml:

<data xmlns="urn:schemas.abcd-com:layers">
      <Rpt_Inven xmlns="urn:schemas.abcd-com:RepInven" />
      <RegionalOptions xmlns="urn:schemas.abcd-com:Static">
              <Currency>
                      <DecimalSymbol>.</DecimalSymbol>
                      <GroupingSymbol>,</GroupingSymbol>
                      <DigitGrouping>2</DigitGrouping>
              </Currency>
              <Locale>1033</Locale>
              <Date>
                      <Calendar>
                      <TwoDigitYear>79</TwoDigitYear>
                      </Calendar>
                      <Separator>-</Separator>
                      <ShortFormat>3</ShortFormat>
              </Date>
      </RegionalOptions>
</data>


xsl :

<xsl:stylesheet version="1.0" xmlns=""
xmlns:lay="urn:schemas.abcd-com:layers"
xmlns:rep="urn:schemas.abcd-com:RepInven"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform";
xmlns:msxsl="urn:schemas-microsoft-com:xslt"
xmlns:scrdt="urn:schemas.abcd-com:datatypes"
xmlns:stat="urn:schemas.abcd-com:Static">
      <xsl:output method="xml" encoding="UTF-8"/>
      <xsl:template match="lay:data">
              <_Ctrl>
                      <xsl:call-template name="callInit">
                              <xsl:with-param
name="regOptNode" select="stat:RegionalOptions"/>
                      </xsl:call-template>
              </_Ctrl>
      </xsl:template>
       <xsl:template name="callInit">
              <xsl:param name="regOptNode"/>
              <_Item>
                      <xsl:value-of select="scrdt:init($regOptNode)"/>
              </_Item>
      </xsl:template>
      <msxsl:script language="JScript"
implements-prefix="scrdt"><![CDATA[

function init(RegOpts)
{
      if( !RegOpts.length) return "length 0";
      for( i = 0; i < RegOpts.length; i++ ) {
              xDate.init(RegOpts(i));
              xNumber.init(RegOpts(i));
              var val = RegOpts(i).selectSingleNode("Currency");

You need to do something to tell MSXML what namespace the Currency
element is in (it is in urn:schemas.abcd-com:Static). I don't remember
enough the Microsoft APIs to tell you how to do this, though.

Michael Kay




//            var val = RegOpts(i).firstChild;

              if(val!=null)
                      return val.xml;
      }
      return "End";
}
      ]]></msxsl:script>

</xsl:stylesheet>

    With this xml and xsl, I am expecting my out some thing like

<_Ctrl xmlns="" xmlns:lay="urn:schemas.abcd-com:layers"
xmlns:rep="urn:schemas.abcd-com:RepInven"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform";
xmlns:msxsl="urn:schemas-microsoft-com:xslt"
xmlns:scrdt="urn:schemas.abcd-com:datatypes"
xmlns:stat="urn:schemas.abcd-com:Static">
      <_Item>
              &lt;DecimalSymbol&gt;.&lt;/DecimalSymbol&gt;
              &lt;GroupingSymbol&gt;,&lt;/GroupingSymbol&gt;
              &lt;DigitGrouping&gt;2&lt;/DigitGrouping&gt;
      </_Item>
</_Ctrl>

   But it is always producing something like

   <_Ctrl xmlns="" xmlns:lay="urn:schemas.abcd-com:layers"
xmlns:rep="urn:schemas.abcd-com:RepInven"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform";
xmlns:msxsl="urn:schemas-microsoft-com:xslt"
xmlns:scrdt="urn:schemas.abcd-com:datatypes"
xmlns:stat="urn:schemas.abcd-com:Static">
      <_Item>
              End
      </_Item>
</_Ctrl>


      I think this b'cos I am not able to get access to the
<Currency/> node in the script function. And whenever I say
RegOpts(i).firstChild , I am getting the result I want.

Any ideas about. I am very desperate for this.

thanks,

~Mur




 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list



 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list


 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list



<Prev in Thread] Current Thread [Next in Thread>