Skip Navigation LinksHome > Products > Web Service Catalog > XigniteMetals

Web Service Operations GetMetalSpotChartDesign

Sign up for a free-trial now to test this operation!

Web Service Description

Returns the default Design specification for the metal chart.

Use it to find out how to customize the Design class for the other metal chart operations.


Web Service Hits Calculation

Requests against this operation do not count as hits.

Inputs and Outputs Parameters for GetMetalSpotChartDesign

Inputs

This operation does not have any input parameters.

Outputs

NameDescriptionAlways Present
Instance of ChartDesignReturns one instance of the chart design class. 
 SecureWhether the URL of the chart should be HTTPS or HTTP 
 TextTitle The title of the chart. Leave blank to use the Ticker symbol as a title. You can use the following placeholders in the title when applicable:
  • $symbol$ for the security symbol.
  • $name$ for the security name.
  • $startdate$ for the chart start date.
  • $enddate$ for the chart end date.
  • $today$ for today's date.
  • $cr$ for a carriage return.
Yes
 TextHeaderThe text of the header displayed under the title. You can use the same placeholders as TextTitle.Yes
 TextFooterThe text of the footer displayed on the bottom right corner.Yes
 TextPriceLine The text for the price data series. You can use the following placeholders:
  • $symbol$ for the security symbol.
Yes
 TextVolumeBar The text for the volume data series. You can use the following placeholders:
  • $symbol$ for the security symbol.
Yes
 TextHighestThe text for the high price line, if ShowHigh is set to true.Yes
 TextLowestThe text for the low price line, if ShowLow is set to true.Yes
 TextOpenThe text for the open price line, if ShowOpen is set to true.Yes
 TextCloseThe text for the closed price line, if ShowClose is set to true.Yes
 TextUp The text for the up variations if ShowVariations is set to true.
  • $year$ the number of years for the variation.
Yes
 TextDown The text for the down variations if ShowVariations is set to true.
  • $year$ the number of years for the variation.
Yes
 ColorBackgroundThe background color. This color is used to build background gradients for the wall and background.Yes
 ColorBackWallThe backwall color. This color is used to build background gradients for the wall and background.Yes
 ColorVolumeBackWallThe background color. This color is used to build background gradients for the wall and background.Yes
 ShowVolumeBackWallEnable or disable the backwall of the volume chart.Yes
 ColorHighlightThe hightlight color used for the footer.Yes
 ColorPriceLineThe color of the price line.Yes
 ColorVolumeBarThe color of the volume bar.Yes
 ColorVolumeBarFillThe fill color of the volume bar.Yes
 ColorHighThe color of the high price line and label. Use the #RRGGBB format where RR, GG, and BB are the red, blue, and green values in HEX format.Yes
 ColorStickUpThe color of the up sticks in Candlestick charts. Use the #RRGGBB format where RR, GG, and BB are the red, blue, and green values in HEX format.Yes
 ColorStickLowThe color of the down sticks in Candlestick charts. Use the #RRGGBB format where RR, GG, and BB are the red, blue, and green values in HEX format.Yes
 ColorConstantThe color of constant lines. Use the #RRGGBB format where RR, GG, and BB are the red, blue, and green values in HEX format.Yes
 ColorLowThe color of the low price line and label. Use the #RRGGBB format where RR, GG, and BB are the red, blue, and green values in HEX format.Yes
 ColorPointThe color for displayed points, such as .Yes
 ColorTitleThe title color.Yes
 ColorFooterThe footer color.Yes
 ColorHeaderThe header color.Yes
 ColorAxisThe axis color.Yes
 ColorGridThe outer grid color.Yes
 ColorFontsThe right axis, bottom axis, and legend font colors.Yes
 ColorStripeThe color of the back wall strip indicating the market opening period, when applicable.Yes
 ColorOpenThe color of the open price line and label. Use the #RRGGBB format where RR, GG, and BB are the red, blue, and green values in HEX format.Yes
 ColorCloseThe color of the close price line and label. Use the #RRGGBB format where RR, GG, and BB are the red, blue, and green values in HEX format.Yes
 ColorVerticalGridThe vertical grid color.Yes
 ColorHorizontalGridThe horizontal grid color.Yes
 ColorUpThe color up color for candlesticks charts.Yes
 ColorDownThe color down color for candlesticks charts.Yes
 ColorHighLowLineThe high-low line color for candlesticks charts.Yes
 ColorCollectionThe list of colors to apply when more than one symbol is displayed.Yes
 GridHorizontalStyleThe pattern for the horizontal grid.Yes
 GridVerticalStyleThe pattern for the vertical grid.Yes
 GridHorizontalWidthThe width for the horizontal grid lines.Yes
 GridVerticalWidthThe width for the vertical grid lines.Yes
 ColorFrameThe outer frame color.Yes
 FormatPriceLineThe format for prices. Example: #,##0.000 for 3 decimals.Yes
 FormatVolumeThe format for volumes. Example: use #,###0.0 to show one decimal.Yes
 FormatDateThe format for dates.Yes
 GradeBackgroundIf set to true, the color of chart background is set as a diagonal right-to-left gradient from ColorDarkTone to ColorLightTone. Use the #RRGGBB format where RR, GG, and BB are the red, blue, and green values in HEX format.Yes
 GradeBackwallIf set to true, the color of wall background is set as a diagonal left-to-right gradient from ColorDarkTone to ColorLightTone. Use the #RRGGBB format where RR, GG, and BB are the red, blue, and green values in HEX format.Yes
 WaterMarkThe address of the watermark file. Please contact us to set this parameter.Yes
 WaterMarkTopMarginThe top position of the watermark, in percentage (0=Top, 100=Bottom)Yes
 WaterMarkLeftMarginThe left position of the watermark, in percentage (0=Left, 100=Right).Yes
 WaterMarkTransparencyThe watermark transparency (in percentage).Yes
 PointSizeThe point size for point charts (i.e. SEC filings on market capitalization charts).Yes
 LineWidthThe width of the line series (in pixels).Yes
 SplitPercentThe percentage of the chart aera allocated to displaying trade volumes.Yes
 ShowHighShow the high price line.Yes
 ShowLowShow the low price line.Yes
 ShowOpenShow the open price line.Yes
 ShowCloseShow the close price line.Yes
 ShowVolumeShow the volume data at the bottom of the chart.Yes
 ShowUpVariationShow the down variations (largest declines) for the stock.Yes
 ShowDownVariationShow the up variations for the stock. Not Supported.Yes
 ShowLegendShow the legend of the chart.Yes
 VariationYearThe variation year for the chart.Yes
 VolumeDividerA divider to apply to volume numbers.Yes
 VolumeTextOffThe text off for the volume numbers.Yes
 PriceTextOffThe text off for the price numbers.Yes
 FrameTypeThe type of frame to display around the chart.Yes
 LightSchemeThe lighting scheme to apply to the chart 3D projection.Yes
 ProjectionThe 3D projection for the chart.Yes
 MarginTopThe top margin expressed as a percentage of the chart area.Yes
 MarginBottomThe bottom margin expressed as a percentage of the chart area.Yes
 MarginLeftThe left margin expressed as a percentage of the chart area.Yes
 MarginRightThe right margin expressed as a percentage of the chart area.Yes
 FontFamilyThe font family to apply to all texts.Yes
 FontSizeLegendThe size of the legend fonts.Yes
 FontSizeAxesThe size of the axes fonts.Yes
 FontSizeTitleThe size of the title fonts.Yes
 FontSizeHeaderThe size of the header fonts.Yes
 FontSizeFooterThe size of the footer fonts.Yes
 HeightThe height of the chart within the frame.Yes
 WidthThe width of the chart within the frame.Yes
 ZoomPercentThe percent to zoom for the chart.Yes
 ReloadIf the chart will reload.Yes
 ShowPriceChartLabelsShow the price chart labels for the legend.Yes
 LegendBoxShow the background for the legend.Yes
 ColorLegendBackgroundThe color of the background of the legend.Yes
 ColorLegendBorderThe color of the border of the legend.Yes
 LegendVerticalPositionThe top position of the legend (0=Top, 100=Bottom).Yes
 LegendHorizontalPositionThe left position of the legend (0=Left, 100=Right).Yes
 TickPrecision

The precision unit to apply to the ticks of the chart. Choose:

  • Tick to draw one point per trade (could be thousands for highly traded securities). TickPeriods does not apply in this case.
  • Milliseconds to summarize trades by the number of milliseconds specified by TickPeriods.
  • Second to summarize trades by the number of seconds specified by TickPeriods.
  • Minute to summarize trades by the number of minutes specified by TickPeriods.

For instance TickPeriod=2 and TickPrecision=Minute will plot one value of the chart for trades executed every two minutes.

Yes
 TickPeriodsUsed in combination with TickPrecision to define the number of points displayed on the chart. For instance TickPeriods=5 with TickPrecision=Minute will display one data point every 5 minutes with the point being the average price for that period.Yes

SOAP Request for GetMetalSpotChartDesign

Inputs

POST http://www.xignite.com/xMetals.asmx HTTP/1.1
Host: www.xignite.com
Content-Type: text/xml; charset=utf-8
Content-Length: length
SOAPAction: "http://www.xignite.com/services/GetMetalSpotChartDesign"

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> <soap:Header> <Header xmlns="http://www.xignite.com/services/"> <Username>string</Username> <Password>string</Password> <Tracer>string</Tracer> </Header> </soap:Header> <soap:Body> <GetMetalSpotChartDesign xmlns="http://www.xignite.com/services/" /> </soap:Body> </soap:Envelope>

Outputs

HTTP/1.1 200 OK
Content-Type: text/xml; charset=utf-8
Content-Length: length

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> <soap:Body> <GetMetalSpotChartDesignResponse xmlns="http://www.xignite.com/services/"> <GetMetalSpotChartDesignResult> <Secure>boolean</Secure> <TextTitle>string</TextTitle> <TextHeader>string</TextHeader> <TextFooter>string</TextFooter> <TextPriceLine>string</TextPriceLine> <TextVolumeBar>string</TextVolumeBar> <TextHighest>string</TextHighest> <TextLowest>string</TextLowest> <TextOpen>string</TextOpen> <TextClose>string</TextClose> <TextUp>string</TextUp> <TextDown>string</TextDown> <ColorBackground>string</ColorBackground> <ColorBackWall>string</ColorBackWall> <ColorVolumeBackWall>string</ColorVolumeBackWall> <ShowVolumeBackWall>boolean</ShowVolumeBackWall> <ColorHighlight>string</ColorHighlight> <ColorPriceLine>string</ColorPriceLine> <ColorVolumeBar>string</ColorVolumeBar> <ColorVolumeBarFill>string</ColorVolumeBarFill> <ColorHigh>string</ColorHigh> <ColorStickUp>string</ColorStickUp> <ColorStickLow>string</ColorStickLow> <ColorConstant>string</ColorConstant> <ColorLow>string</ColorLow> <ColorPoint>string</ColorPoint> <ColorTitle>string</ColorTitle> <ColorFooter>string</ColorFooter> <ColorHeader>string</ColorHeader> <ColorAxis>string</ColorAxis> <ColorGrid>string</ColorGrid> <ColorFonts>string</ColorFonts> <ColorStripe>string</ColorStripe> <ColorOpen>string</ColorOpen> <ColorClose>string</ColorClose> <ColorVerticalGrid>string</ColorVerticalGrid> <ColorHorizontalGrid>string</ColorHorizontalGrid> <ColorUp>string</ColorUp> <ColorDown>string</ColorDown> <ColorHighLowLine>string</ColorHighLowLine> <ColorCollection>string</ColorCollection> <GridHorizontalStyle>Solid or Dot or Dash or DashDot or DashDotDot</GridHorizontalStyle> <GridVerticalStyle>Solid or Dot or Dash or DashDot or DashDotDot</GridVerticalStyle> <GridHorizontalWidth>int</GridHorizontalWidth> <GridVerticalWidth>int</GridVerticalWidth> <ColorFrame>string</ColorFrame> <FrameBorder>string</FrameBorder> <FormatPriceLine>string</FormatPriceLine> <FormatVolume>string</FormatVolume> <FormatDate>string</FormatDate> <GradeBackground>boolean</GradeBackground> <GradeBackwall>boolean</GradeBackwall> <WaterMark>string</WaterMark> <WaterMarkTopMargin>int</WaterMarkTopMargin> <WaterMarkLeftMargin>int</WaterMarkLeftMargin> <WaterMarkTransparency>int</WaterMarkTransparency> <PointSize>float</PointSize> <StackVariationLabels>boolean</StackVariationLabels> <ShowAxisLabelInLegend>boolean</ShowAxisLabelInLegend> <LineWidth>int</LineWidth> <SplitPercent>int</SplitPercent> <ShowHigh>boolean</ShowHigh> <ShowLow>boolean</ShowLow> <ShowOpen>boolean</ShowOpen> <ShowClose>boolean</ShowClose> <ShowVolume>boolean</ShowVolume> <ShowUpVariation>boolean</ShowUpVariation> <ShowDownVariation>boolean</ShowDownVariation> <ShowLegend>boolean</ShowLegend> <VariationYear>int</VariationYear> <VolumeDivider>int</VolumeDivider> <VolumeTextOffset>int</VolumeTextOffset> <PriceTextOffset>int</PriceTextOffset> <FrameType>None or Colonial or Common or Embed or Emboss or FrameOpenRight
or FrameOpenRL or OneBarGradient or RoundedUp or SlimRoundedShadowed
</FrameType> <Projection>Orthogonal or OrthogonalElevated or OrthogonalHorizontalLeft
or OrthogonalHorizontalRight or OrthogonalHalf or OrthogonalHalfHorizontalLeft
or OrthogonalHalfHorizontalRight or OrthogonalHalfRotated
or OrthogonalHalfElevated or Perspective or PerspectiveHorizontalLeft
or PerspectiveHorizontalRight or PerspectiveRotated
or PerspectiveElevated or PerspectiveTilted</Projection> <MarginTop>int</MarginTop> <MarginBottom>int</MarginBottom> <MarginLeft>int</MarginLeft> <MarginRight>int</MarginRight> <FontFamily>string</FontFamily> <FontSizeHeader>int</FontSizeHeader> <FontSizeFooter>int</FontSizeFooter> <Height>double</Height> <Width>double</Width> <ZoomPercent>int</ZoomPercent> <LegendBox>boolean</LegendBox> <ColorLegendBackground>string</ColorLegendBackground> <ColorLegendBorder>string</ColorLegendBorder> <LegendVerticalPosition>int</LegendVerticalPosition> <LegendHorizontalPosition>int</LegendHorizontalPosition> <Reload>boolean</Reload> <ShowPriceChartLabels>boolean</ShowPriceChartLabels> <TickPrecision>Tick or Millisecond or Second or Minute or Hour or Day
or Week or Month</TickPrecision> <TickPeriods>int</TickPeriods> <WaterMarkHorizontalAlign>Center or Left or Right</WaterMarkHorizontalAlign> <LightScheme>None or SoftTopLeft or SoftFrontal or SoftTopRight or ShinyTopLeft
or ShinyFrontal or ShinyTopRight or MetallicLustre
or NorthernLights</LightScheme> <FontSizeLegend>int</FontSizeLegend> <FontSizeAxes>int</FontSizeAxes> <FontSizeTitle>int</FontSizeTitle> <DaysForHourDisplay>int</DaysForHourDisplay> <DaysForDayDisplay>int</DaysForDayDisplay> <DaysForWeekDisplay>int</DaysForWeekDisplay> <DaysForBiWeeklyDisplay>int</DaysForBiWeeklyDisplay> <DaysForMonthDisplay>int</DaysForMonthDisplay> <DaysForQuarterDisplay>int</DaysForQuarterDisplay> <DaysForSemiAnnualDisplay>int</DaysForSemiAnnualDisplay> <DaysForAnnualDisplay>int</DaysForAnnualDisplay> <DaysForBiAnnualDisplay>int</DaysForBiAnnualDisplay> <DaysForPentaAnnualDisplay>int</DaysForPentaAnnualDisplay> </GetMetalSpotChartDesignResult> </GetMetalSpotChartDesignResponse> </soap:Body> </soap:Envelope>

HttpGet Request for GetMetalSpotChartDesign

Inputs

GET http://www.xignite.com/xMetals.asmx/GetMetalSpotChartDesign?
HTTP/1.1 Host: www.xignite.com

Outputs

HTTP/1.1 200 OK
Content-Type: text/xml; charset=utf-8
Content-Length: length

<?xml version="1.0" encoding="utf-8"?>
<ChartDesign xmlns="http://www.xignite.com/services/">
  <Secure>boolean</Secure>
  <TextTitle>string</TextTitle>
  <TextHeader>string</TextHeader>
  <TextFooter>string</TextFooter>
  <TextPriceLine>string</TextPriceLine>
  <TextVolumeBar>string</TextVolumeBar>
  <TextHighest>string</TextHighest>
  <TextLowest>string</TextLowest>
  <TextOpen>string</TextOpen>
  <TextClose>string</TextClose>
  <TextUp>string</TextUp>
  <TextDown>string</TextDown>
  <ColorBackground>string</ColorBackground>
  <ColorBackWall>string</ColorBackWall>
  <ColorVolumeBackWall>string</ColorVolumeBackWall>
  <ShowVolumeBackWall>boolean</ShowVolumeBackWall>
  <ColorHighlight>string</ColorHighlight>
  <ColorPriceLine>string</ColorPriceLine>
  <ColorVolumeBar>string</ColorVolumeBar>
  <ColorVolumeBarFill>string</ColorVolumeBarFill>
  <ColorHigh>string</ColorHigh>
  <ColorStickUp>string</ColorStickUp>
  <ColorStickLow>string</ColorStickLow>
  <ColorConstant>string</ColorConstant>
  <ColorLow>string</ColorLow>
  <ColorPoint>string</ColorPoint>
  <ColorTitle>string</ColorTitle>
  <ColorFooter>string</ColorFooter>
  <ColorHeader>string</ColorHeader>
  <ColorAxis>string</ColorAxis>
  <ColorGrid>string</ColorGrid>
  <ColorFonts>string</ColorFonts>
  <ColorStripe>string</ColorStripe>
  <ColorOpen>string</ColorOpen>
  <ColorClose>string</ColorClose>
  <ColorVerticalGrid>string</ColorVerticalGrid>
  <ColorHorizontalGrid>string</ColorHorizontalGrid>
  <ColorUp>string</ColorUp>
  <ColorDown>string</ColorDown>
  <ColorHighLowLine>string</ColorHighLowLine>
  <ColorCollection>string</ColorCollection>
  <GridHorizontalStyle>Solid or Dot or Dash or DashDot or DashDotDot</GridHorizontalStyle>
  <GridVerticalStyle>Solid or Dot or Dash or DashDot or DashDotDot</GridVerticalStyle>
  <GridHorizontalWidth>int</GridHorizontalWidth>
  <GridVerticalWidth>int</GridVerticalWidth>
  <ColorFrame>string</ColorFrame>
  <FrameBorder>string</FrameBorder>
  <FormatPriceLine>string</FormatPriceLine>
  <FormatVolume>string</FormatVolume>
  <FormatDate>string</FormatDate>
  <GradeBackground>boolean</GradeBackground>
  <GradeBackwall>boolean</GradeBackwall>
  <WaterMark>string</WaterMark>
  <WaterMarkTopMargin>int</WaterMarkTopMargin>
  <WaterMarkLeftMargin>int</WaterMarkLeftMargin>
  <WaterMarkTransparency>int</WaterMarkTransparency>
  <PointSize>float</PointSize>
  <StackVariationLabels>boolean</StackVariationLabels>
  <ShowAxisLabelInLegend>boolean</ShowAxisLabelInLegend>
  <LineWidth>int</LineWidth>
  <SplitPercent>int</SplitPercent>
  <ShowHigh>boolean</ShowHigh>
  <ShowLow>boolean</ShowLow>
  <ShowOpen>boolean</ShowOpen>
  <ShowClose>boolean</ShowClose>
  <ShowVolume>boolean</ShowVolume>
  <ShowUpVariation>boolean</ShowUpVariation>
  <ShowDownVariation>boolean</ShowDownVariation>
  <ShowLegend>boolean</ShowLegend>
  <VariationYear>int</VariationYear>
  <VolumeDivider>int</VolumeDivider>
  <VolumeTextOffset>int</VolumeTextOffset>
  <PriceTextOffset>int</PriceTextOffset>
  <FrameType>None or Colonial or Common or Embed or Emboss or FrameOpenRight
or FrameOpenRL or OneBarGradient or RoundedUp or SlimRoundedShadowed
</FrameType> <Projection>Orthogonal or OrthogonalElevated or OrthogonalHorizontalLeft
or OrthogonalHorizontalRight or OrthogonalHalf or OrthogonalHalfHorizontalLeft
or OrthogonalHalfHorizontalRight or OrthogonalHalfRotated
or OrthogonalHalfElevated or Perspective or PerspectiveHorizontalLeft
or PerspectiveHorizontalRight or PerspectiveRotated
or PerspectiveElevated or PerspectiveTilted</Projection> <MarginTop>int</MarginTop> <MarginBottom>int</MarginBottom> <MarginLeft>int</MarginLeft> <MarginRight>int</MarginRight> <FontFamily>string</FontFamily> <FontSizeHeader>int</FontSizeHeader> <FontSizeFooter>int</FontSizeFooter> <Height>double</Height> <Width>double</Width> <ZoomPercent>int</ZoomPercent> <LegendBox>boolean</LegendBox> <ColorLegendBackground>string</ColorLegendBackground> <ColorLegendBorder>string</ColorLegendBorder> <LegendVerticalPosition>int</LegendVerticalPosition> <LegendHorizontalPosition>int</LegendHorizontalPosition> <Reload>boolean</Reload> <ShowPriceChartLabels>boolean</ShowPriceChartLabels> <TickPrecision>Tick or Millisecond or Second or Minute or Hour or Day
or Week or Month</TickPrecision> <TickPeriods>int</TickPeriods> <WaterMarkHorizontalAlign>Center or Left or Right</WaterMarkHorizontalAlign> <LightScheme>None or SoftTopLeft or SoftFrontal or SoftTopRight or ShinyTopLeft
or ShinyFrontal or ShinyTopRight or MetallicLustre
or NorthernLights</LightScheme> <FontSizeLegend>int</FontSizeLegend> <FontSizeAxes>int</FontSizeAxes> <FontSizeTitle>int</FontSizeTitle> <DaysForHourDisplay>int</DaysForHourDisplay> <DaysForDayDisplay>int</DaysForDayDisplay> <DaysForWeekDisplay>int</DaysForWeekDisplay> <DaysForBiWeeklyDisplay>int</DaysForBiWeeklyDisplay> <DaysForMonthDisplay>int</DaysForMonthDisplay> <DaysForQuarterDisplay>int</DaysForQuarterDisplay> <DaysForSemiAnnualDisplay>int</DaysForSemiAnnualDisplay> <DaysForAnnualDisplay>int</DaysForAnnualDisplay> <DaysForBiAnnualDisplay>int</DaysForBiAnnualDisplay> <DaysForPentaAnnualDisplay>int</DaysForPentaAnnualDisplay> </ChartDesign>

HttpPost Request for GetMetalSpotChartDesign

Inputs

POST http://www.xignite.com/xMetals.asmx/GetMetalSpotChartDesign HTTP/1.1
Host: www.xignite.com
Content-Type: application/x-www-form-urlencoded
Content-Length: length

Outputs

HTTP/1.1 200 OK
Content-Type: text/xml; charset=utf-8
Content-Length: length

<?xml version="1.0" encoding="utf-8"?>
<ChartDesign xmlns="http://www.xignite.com/services/">
  <Secure>boolean</Secure>
  <TextTitle>string</TextTitle>
  <TextHeader>string</TextHeader>
  <TextFooter>string</TextFooter>
  <TextPriceLine>string</TextPriceLine>
  <TextVolumeBar>string</TextVolumeBar>
  <TextHighest>string</TextHighest>
  <TextLowest>string</TextLowest>
  <TextOpen>string</TextOpen>
  <TextClose>string</TextClose>
  <TextUp>string</TextUp>
  <TextDown>string</TextDown>
  <ColorBackground>string</ColorBackground>
  <ColorBackWall>string</ColorBackWall>
  <ColorVolumeBackWall>string</ColorVolumeBackWall>
  <ShowVolumeBackWall>boolean</ShowVolumeBackWall>
  <ColorHighlight>string</ColorHighlight>
  <ColorPriceLine>string</ColorPriceLine>
  <ColorVolumeBar>string</ColorVolumeBar>
  <ColorVolumeBarFill>string</ColorVolumeBarFill>
  <ColorHigh>string</ColorHigh>
  <ColorStickUp>string</ColorStickUp>
  <ColorStickLow>string</ColorStickLow>
  <ColorConstant>string</ColorConstant>
  <ColorLow>string</ColorLow>
  <ColorPoint>string</ColorPoint>
  <ColorTitle>string</ColorTitle>
  <ColorFooter>string</ColorFooter>
  <ColorHeader>string</ColorHeader>
  <ColorAxis>string</ColorAxis>
  <ColorGrid>string</ColorGrid>
  <ColorFonts>string</ColorFonts>
  <ColorStripe>string</ColorStripe>
  <ColorOpen>string</ColorOpen>
  <ColorClose>string</ColorClose>
  <ColorVerticalGrid>string</ColorVerticalGrid>
  <ColorHorizontalGrid>string</ColorHorizontalGrid>
  <ColorUp>string</ColorUp>
  <ColorDown>string</ColorDown>
  <ColorHighLowLine>string</ColorHighLowLine>
  <ColorCollection>string</ColorCollection>
  <GridHorizontalStyle>Solid or Dot or Dash or DashDot or DashDotDot</GridHorizontalStyle>
  <GridVerticalStyle>Solid or Dot or Dash or DashDot or DashDotDot</GridVerticalStyle>
  <GridHorizontalWidth>int</GridHorizontalWidth>
  <GridVerticalWidth>int</GridVerticalWidth>
  <ColorFrame>string</ColorFrame>
  <FrameBorder>string</FrameBorder>
  <FormatPriceLine>string</FormatPriceLine>
  <FormatVolume>string</FormatVolume>
  <FormatDate>string</FormatDate>
  <GradeBackground>boolean</GradeBackground>
  <GradeBackwall>boolean</GradeBackwall>
  <WaterMark>string</WaterMark>
  <WaterMarkTopMargin>int</WaterMarkTopMargin>
  <WaterMarkLeftMargin>int</WaterMarkLeftMargin>
  <WaterMarkTransparency>int</WaterMarkTransparency>
  <PointSize>float</PointSize>
  <StackVariationLabels>boolean</StackVariationLabels>
  <ShowAxisLabelInLegend>boolean</ShowAxisLabelInLegend>
  <LineWidth>int</LineWidth>
  <SplitPercent>int</SplitPercent>
  <ShowHigh>boolean</ShowHigh>
  <ShowLow>boolean</ShowLow>
  <ShowOpen>boolean</ShowOpen>
  <ShowClose>boolean</ShowClose>
  <ShowVolume>boolean</ShowVolume>
  <ShowUpVariation>boolean</ShowUpVariation>
  <ShowDownVariation>boolean</ShowDownVariation>
  <ShowLegend>boolean</ShowLegend>
  <VariationYear>int</VariationYear>
  <VolumeDivider>int</VolumeDivider>
  <VolumeTextOffset>int</VolumeTextOffset>
  <PriceTextOffset>int</PriceTextOffset>
  <FrameType>None or Colonial or Common or Embed or Emboss or FrameOpenRight
or FrameOpenRL or OneBarGradient or RoundedUp or SlimRoundedShadowed
</FrameType> <Projection>Orthogonal or OrthogonalElevated or OrthogonalHorizontalLeft
or OrthogonalHorizontalRight or OrthogonalHalf or OrthogonalHalfHorizontalLeft
or OrthogonalHalfHorizontalRight or OrthogonalHalfRotated
or OrthogonalHalfElevated or Perspective or PerspectiveHorizontalLeft
or PerspectiveHorizontalRight or PerspectiveRotated
or PerspectiveElevated or PerspectiveTilted</Projection> <MarginTop>int</MarginTop> <MarginBottom>int</MarginBottom> <MarginLeft>int</MarginLeft> <MarginRight>int</MarginRight> <FontFamily>string</FontFamily> <FontSizeHeader>int</FontSizeHeader> <FontSizeFooter>int</FontSizeFooter> <Height>double</Height> <Width>double</Width> <ZoomPercent>int</ZoomPercent> <LegendBox>boolean</LegendBox> <ColorLegendBackground>string</ColorLegendBackground> <ColorLegendBorder>string</ColorLegendBorder> <LegendVerticalPosition>int</LegendVerticalPosition> <LegendHorizontalPosition>int</LegendHorizontalPosition> <Reload>boolean</Reload> <ShowPriceChartLabels>boolean</ShowPriceChartLabels> <TickPrecision>Tick or Millisecond or Second or Minute or Hour or Day
or Week or Month</TickPrecision> <TickPeriods>int</TickPeriods> <WaterMarkHorizontalAlign>Center or Left or Right</WaterMarkHorizontalAlign> <LightScheme>None or SoftTopLeft or SoftFrontal or SoftTopRight or ShinyTopLeft
or ShinyFrontal or ShinyTopRight or MetallicLustre
or NorthernLights</LightScheme> <FontSizeLegend>int</FontSizeLegend> <FontSizeAxes>int</FontSizeAxes> <FontSizeTitle>int</FontSizeTitle> <DaysForHourDisplay>int</DaysForHourDisplay> <DaysForDayDisplay>int</DaysForDayDisplay> <DaysForWeekDisplay>int</DaysForWeekDisplay> <DaysForBiWeeklyDisplay>int</DaysForBiWeeklyDisplay> <DaysForMonthDisplay>int</DaysForMonthDisplay> <DaysForQuarterDisplay>int</DaysForQuarterDisplay> <DaysForSemiAnnualDisplay>int</DaysForSemiAnnualDisplay> <DaysForAnnualDisplay>int</DaysForAnnualDisplay> <DaysForBiAnnualDisplay>int</DaysForBiAnnualDisplay> <DaysForPentaAnnualDisplay>int</DaysForPentaAnnualDisplay> </ChartDesign>

Sample Code for GetMetalSpotChartDesign

ASPX

<%@ Page Language="vb" %>
<%@ Import Namespace="System.Net" %>
<!-- here, XigniteMetals is the name of this assembly-->
<%@ Import Namespace="XigniteMetals" %>
<HTML>
<HEAD>
<script language="vb" runat="server">
' declare the return object globally so that you can reuse it around the page
Dim objChartDesign As ChartDesign
' call the service inside the Page_Load routine
Sub Page_Load(obj as object, e as eventargs)
' create an instance of the web service
Dim objMetalsService As New XigniteMetals()
' call the operation and load the return object
objChartDesign =
objMetalsService.
GetMetalSpotChartDesign()
If Not objChartDesign Is Nothing Then
Select Case objChartDesign.Outcome
Case OutcomeTypes.RegistrationError
' add processing for handling subscription problems, e.g.
Response.Write("Our subscription to this service has expired.")
Case OutcomeTypes.RequestError
' add processing for handling request problems, e.g.
' you could pass back the info message received from the service
Response.Write(objChartDesign.Message)
Case OutcomeTypes.SystemError
' add processing for handling system problems, e.g.
Response.Write("Service is unavailable at this time.")
End Select
Else
' add error processing here
' this condition could be caused by an HTTP error (404,500...)
Response.Write("Service is unavailable at this time.")
End If
End Sub
</script>
</HEAD>
<BODY>
<TABLE>
<TR>
<TD>
<!-- add processing for displaying the results, e.g. -->
<!-- display the value for TextTitle-->
<!-- other values could be consumed in the same manner-->
<%Response.Write(objChartDesign.TextTitle) %>
</TD>
</TR>
</TABLE>
</BODY>
</HTML>

C# (CSharp)

RemoteMetals.XigniteMetals objMetalsService;
objMetalsService = new RemoteMetals.XigniteMetals();
RemoteMetals.ChartDesign objChartDesign;
objChartDesign =
objMetalsService.
GetMetalSpotChartDesign();
if (objChartDesign == null)
{
/// add error processing here
/// this condition could be caused by an HTTP error (404,500...)
Console.Write("Service is unavailable at this time.");
}
else
{
switch(objChartDesign.Outcome)
{
case RemoteMetals.OutcomeTypes.Success:
/// add processing for displaying the results, e.g.
/// display the value for TextTitle
/// other values could be consumed in the same manner
Console.Write(objChartDesign.TextTitle);
break;
default:
/// add processing for handling request problems, e.g.
/// you could pass back the info message received from the service
Console.Write(objChartDesign.Message);
break;
}
}

Classic ASP

This code requires the Microsoft SOAP Toolkit 3.0 and MSXML 4.0. You can download these from the Microsoft site.

Dim objSOAPClient
Set objSOAPClient = Server.CreateObject("MSSOAP.SoapClient30")
' the node list is of type MSXML2.IXMLDOMNodeList
Dim objXMLNodeList
' the node is of type MSXML2.IXMLDOMNode
Dim objXMLNode

' initialize the soap engine
objSOAPClient.ClientProperty("ServerHTTPRequest") = True
objSOAPClient.MSSoapInit("http://www.xignite.com/xMetals.asmx?WSDL")

' load the node list with the records received from the service
Set objXMLNodeList = objSOAPClient.GetMetalSpotChartDesign()

' loop through the index records and load in the document
For Each objXMLNode In objXMLNodeList
' your can print out the content of each node
Response.Write objXMLNode.xml
Next

Java/Axis

This section assumes that you have Axis installed on your machine and that you are fairly familiar with it.

Because all our web services return complex types, the best way to use Axis is to first generate a proxy class using the 'WSDL2Java' tool'. By default, the tool will put all generated classes into the package "com.xignite.www.services".

You should then compile the classes:


C:\axis>java org.apache.axis.wsdl.WSDL2Java http://www.xignite.com/xMetals.asmx?WSDL
C:\axis>javac com\xignite\*.java
C:\axis>

You can then create your source file.


// By default, all of the classes auto-generated by the Axis 
// "WSDL2Java" tool are placed into the package "com.xignite.www.services" 
// for our Xignite WSDL, so we need an import.
import com.xignite.www.services.*;
public class XigniteMetalsDemo  {
     public static void main(String[] args) throws Exception {
     // Instantiate the XigniteMetals proxy 
     // proxy object using the Helper class.
     // This class was autogenerated by the WSDL2Java tool
try { XigniteMetals objMetalsService = new XigniteMetalsLocator(); XigniteMetalsSoap objMetalsPort = objMetalsService.getXigniteMetalsSoap();
// Instantiate the return class from the operation // This class was autogenerated by the WSDL2Java tool ChartDesign objChartDesign = objMetalsPort.getMetalSpotChartDesign(); // objChartDesign is pointing to the result of the operation if (objChartDesign.getOutcome() == OutcomeTypes.RegistrationError) { // code to handle registration errors System.out.println(OutcomeTypes.RegistrationError.toString() + ": " + objChartDesign.getMessage()); } else if (objChartDesign.getOutcome() == OutcomeTypes.RequestError) { // code to handle request errors System.out.println(OutcomeTypes.RequestError.toString() + ": " + objChartDesign.getMessage()); } else if (objChartDesign.getOutcome() == OutcomeTypes.SystemError) { // code to handle system errors System.out.println(OutcomeTypes.SystemError.toString() + ": " + objChartDesign.getMessage()); } else // Success { System.out.println(objChartDesign.getTextTitle()); } } catch (Exception ex) { // add exception handling code here
} } }

Apache Axis2 1.4+
C:\axis>wsdl2java.bat -ap -uri http://www.xignite.com/xMetals.asmx?WSDL
C:\axis>javac com\xignite\*.java
C:\axis>

You can then create your source file.

// By default, all of the classes auto-generated by the Axis2 
// "WSDL2Java" tool are placed into the package "com.xignite.www.services" 
// for our Xignite WSDL, so we need an import.
import com.xignite.www.services.XigniteMetalsXigniteMetalsSoapStub;
import com.xignite.www.services.XigniteMetalsXigniteMetalsSoapStub.*;
public class XigniteMetalsDemo {
public static void main(String[] args) throws Exception { // Instantiate the XigniteMetals proxy // proxy object using the Helper class. // This class was autogenerated by the WSDL2Java tool
try { XigniteMetalsXigniteMetalsSoapStub stub = new XigniteMetalsXigniteMetalsSoapStub(); // Instantiate the return class from the operation // This class was autogenerated by the WSDL2Java tool GetMetalSpotChartDesign getMetalSpotChartDesignArguments = new GetMetalSpotChartDesign(); GetMetalSpotChartDesignResponse response = stub.GetMetalSpotChartDesign(getMetalSpotChartDesignArguments, null); ChartDesign objChartDesign = response.getGetMetalSpotChartDesignResult(); // objChartDesign is pointing to the result of the operation if (objChartDesign.getOutcome() == OutcomeTypes.RegistrationError) { // code to handle registration errors System.out.println(OutcomeTypes.RegistrationError.toString() + ": " + objChartDesign.getMessage()); } else if (objChartDesign.getOutcome() == OutcomeTypes.RequestError) { // code to handle request errors System.out.println(OutcomeTypes.RequestError.toString() + ": " + objChartDesign.getMessage()); } else if (objChartDesign.getOutcome() == OutcomeTypes.SystemError) { // code to handle system errors System.out.println(OutcomeTypes.SystemError.toString() + ": " + objChartDesign.getMessage()); } else // Success { System.out.println(objChartDesign.getTextTitle()); } } catch (Exception ex) { // add exception handling code here
} } }

PHP/NuSoap

NuSoap is one of the three major SOAP implementations for PHP: PEAR::SOAP, NuSOAP, and PHP-SOAP.

If you use PHP, we recommend you use NuSoap to access our web services. NuSoap uses our web services for demonstration in their own documentation and it works well.

This section assumes that you have PHP installed on your machine and that you are fairly familiar with it. We have tested this implementation for PHP 4.2.1 on Windows 2000. It should also work with more recent versions on more recent platforms. Note that PHP 5.0 supports SOAP natively (without extension), please follow their documentation for upgrade or code changes required.

To install NuSoap, download the latest package from this location. You can unzip the package in your PHP application directory. The package includes libraries (/lib) and samples (/samples). The sample code below is based on the wsdlclient1.php sample.

If you use one of the older version or PHP (i.e. 4.2.1) , you will need to comment out one line in the /lib/nusoap.php file. That section is not supported in earlier version. The line to comment out is line 1877 as shown below.


1876 // set response timeout
1877 //socket_set_timeout( $this->fp, $response_timeout);

You can then create your source file.


<?php
// need to use the NuSoap extension require_once('../lib/nusoap.php');

// if you access the internet through a proxy server $proxyhost = isset($_POST['proxyhost']) ? $_POST['proxyhost'] : '';
$proxyport = isset($_POST['proxyport']) ? $_POST['proxyport'] : '';
$proxyusername = isset($_POST['proxyusername']) ? $_POST['proxyusername'] : '';
$proxypassword = isset($_POST['proxypassword']) ? $_POST['proxypassword'] : '';

// define the SOAP client using the url for the service $client = new soapclient('http://www.xignite.com/xMetals.asmx?WSDL',
true, $proxyhost, $proxyport, $proxyusername, $proxypassword);

// assess the results $err = $client->getError();
if ($err) {
echo '<h2>Constructor error</h2><pre>' . $err . '</pre>';
}

// create an array of parameters $param = array(
);


// call the service, passing the parameters and the name of the operation $result = $client->call('GetMetalSpotChartDesign', array('parameters' => $param), '', '', false, true);
// assess the results if ($client->fault) {
echo '<h2>Fault</h2><pre>';
print_r($result);
echo '</pre>';
} else {
$err = $client->getError();
if ($err) {
echo '<h2>Error</h2><pre>' . $err . '</pre>';
} else {
// display the results echo '<h2>Result</h2><pre>';
// this function exposes the complete structure of the return class print_r($result);
echo '</pre>';
}
}
// print the SOAP request echo '<h2>Request</h2><pre>' . htmlspecialchars($client->request, ENT_QUOTES) . '</pre>';
// print the SOAP response echo '<h2>Response</h2><pre>' . htmlspecialchars($client->response, ENT_QUOTES) . '</pre>';
// print the PHP debugging trace echo '<h2>Debug</h2><pre>' . htmlspecialchars($client->debug_str, ENT_QUOTES) . '</pre>';
?>

PHP5

PHP-SOAP is one of the three major SOAP implementations for PHP: PEAR::SOAP, NuSOAP, and PHP-SOAP.

This section assumes that you have PHP5.0 installed on your machine and that you are fairly familiar with it.

Note that PHP 5.0 supports SOAP, please follow their documentation for code changes required.

Here is a sample source for this operation.

<?php
// define the SOAP client using the url for the service
$client = new soapclient('http://www.xignite.com/xMetals.asmx?WSDL', array('trace' => 1));
// create an array of parameters $param = array( );

// call the service, passing the parameters and the name of the operation $result = $client->GetMetalSpotChartDesign($param); // assess the results if (is_soap_fault($result)) { echo '<h2>Fault</h2><pre>'; print_r($result); echo '</pre>'; } else { echo '<h2>Result</h2><pre>'; print_r($result); echo '</pre>'; } // print the SOAP request echo '<h2>Request</h2><pre>' . htmlspecialchars($client->__getLastRequest(), ENT_QUOTES) . '</pre>'; // print the SOAP request Headers echo '<h2>Request Headers</h2><pre>' . htmlspecialchars($client->__getLastRequestHeaders(), ENT_QUOTES) . '</pre>'; // print the SOAP response echo '<h2>Response</h2><pre>' . htmlspecialchars($client->__getLastResponse(), ENT_QUOTES) . '</pre>'; ?>

Perl/SoapLite

This section assumes that you have SOAP::Lite for Perl installed on your machine and that you are fairly familiar with it. But just in case your are not:

You can then use a text editor to create the source code below. You can execute it by running:


C:\perl\perl demo.pl

Note that there are some unique steps to follow to use SOAP::Lite with .Net web Services. For detailed info, check this article on MSDN.

Here is a sample source for this operation.
# the maptype instruction is critical for compatibility 
use SOAP::Lite maptype => {};

# this is our namespace
my $namespace = 'http://www.xignite.com/services/';

# declare the service using the namespace, the SOAP action and the uri
my $service = SOAP::Lite
-> uri($namespace)
-> on_action( sub { join '/', 'http://www.xignite.com/services', $_[1] } )
-> proxy('http://www.xignite.com/xMetals.asmx');

# .Net requires the method, header, and attributes to be fully qualified
my $method = SOAP::Data->name('GetMetalSpotChartDesign')
->attr({xmlns => $namespace});

# this section is required for authentication
# you can skip it if you use IP-based authentication
my $header = SOAP::Header->name(Header => {
Username => '<your username here>'})->uri($namespace)->prefix('');

# same here, you can omit $header if you use IP-based authentication

my @params = ( $header,
);

# you can now call the service
my $result = $service->call($method => @params);
if ($result->fault)
{
print $result->faultstring;
}
else
{
# here we parse the output using the main return class
# and one of its attributes
# check here for the output structure
print $result->valueof('//GetMetalSpotChartDesignResult/TextTitle'), "\n";
}

VB.NET

Dim objMetalsService As New RemoteMetals.XigniteMetals()
Dim objChartDesign As RemoteMetals.ChartDesign _
= objMetalsService.GetMetalSpotChartDesign()
If Not objChartDesign Is Nothing Then
Select Case objChartDesign.Outcome
Case RemoteMetals.OutcomeTypes.RegistrationError
' display the error to facilitate diagnostics, e.g.
Console.WriteLine(objChartDesign.Message)
Case RemoteMetals.OutcomeTypes.RequestError
' add processing for handling request problems, e.g.
' you could pass back the info message received from the service
Console.WriteLine(objChartDesign.Message)
Case RemoteMetals.OutcomeTypes.SystemError
' add processing for handling system problems, e.g.
Console.WriteLine("Service is unavailable at this time.")
Case Else
' add processing for displaying the results, e.g.
' display the value for TextTitle
' other values could be consumed in the same manner
Console.WriteLine(objChartDesign.TextTitle)

End Select
Else
' add error processing here
' this condition could be caused by an HTTP error (404,500...)
Console.WriteLine("Service is unavailable at this time.")
End If

VB6

' this DOM object will contain the result of the call
Dim objResult As IXMLDOMSelection
' create an instance of the soap toolkit
Dim objService As New MSSOAPLib30.SoapClient30
' if your network uses a proxy server, add this line
objService.ConnectorProperty("ProxyServer") = "ip of your proxy server"
' SOAP headers are not supported in the toolkit, so we will fake it with this handler
Dim objHeader As ClientHeaderHandler
Set objHeader = New ClientHeaderHandler
' set the username and passwords to your values
objHeader.Username = "myusername"
objHeader.Password = "mypassword"
Set objService.HeaderHandler = objHeader

' point the the toolkit to the WSDL
objService.mssoapinit "http://www.xignite.com/xMetals.asmx?WSDL"

' load the result into the DOM object
Set objResult = objService.GetMetalSpotChartDesign()


' you can access the properties this way:
' where objResult(5).nodeName is the name of the 5th field of the instance returned
' and objResult(5).Text is the value
MsgBox objResult(5).nodeName & " = " & objResult(5).Text


' you must also add this class to your code.
' it will create the SOAP header to pass with your request
Class Module "ClientHeaderHandler"
Option Explicit
Implements IHeaderHandler

Private m_uid As String
Private m_pwd As String
Private m_tracer As String

Property Let Username(ByVal value As String)
m_uid = value
End Property

Property Let Password(ByVal value As String)
m_pwd = value
End Property

Property Let Tracer(ByVal value As String)
m_tracer = value
End Property

Private Function iHeaderHandler_ReadHeader( _
ByVal par_reader As MSSOAPLib30.ISoapReader, _
ByVal par_HeaderNode As MSXML2.IXMLDOMNode, _
ByVal par_object As Object) As Boolean
iHeaderHandler_ReadHeader = False
End Function

Private Function iHeaderhandler_willWriteHeaders() As Boolean
iHeaderhandler_willWriteHeaders = True
End Function

Private Sub iHeaderHandler_WriteHeaders( _
ByVal par_serializer As MSSOAPLib30.ISoapSerializer, _
ByVal par_object As Object)

Dim XigniteHeaderString As String

XigniteHeaderString = "<Header xmlns="http://www.xignite.com/services/"> " & _
"<Username>" & m_uid & "</Username>" & _
"<Password>" & m_pwd & "</Password>" & _
"<Tracer>" & m_tracer & "</Tracer>" & _
"</Header>"

par_serializer.WriteXml XigniteHeaderString
End Sub

XSLT

When working with XSL, you only need to worry about properly dealing with namespaces.

The general principle in working with XSL is to apply the stylesheet (the XSL document) to the output of the web service (XML document). The code required to accomplish this varies based on your envirobment. For instance, using VB.Net it would be:

Dim objSOAPClient
Dim objTemplate As New System.Xml.Xsl.XslTransform()
objTemplate.Load(<url_of_XSL_template>)
objTemplate.Transform(<url_of_input_document>,<url_of_output_document>)

In the code above, you want to replace the <url_of_input_document> with the following URL.

http://www.xignite.com/xMetals.asmx/GetMetalSpotChartDesign?


And this is how you could write the XSL stylesheet. Note that all node names are prefixed.

<?xml version="1.0"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:xi="http://www.xignite.com/services/"
version="1.0" exclude-result-prefixes="xi">
<xsl:template match="xi:ChartDesign>
<p>
<xsl:value-of select="xi:TextTitle/>
</p>
</xsl:template>
</xsl:stylesheet>

 
Copyright © 2009 Xignite, Inc. All Rights Reserved.




Hostname: Xignite21