2017-02-15 23 views
0

Webページ上のファイアウォールからのXMLレポートからいくつかのデータを公開しようとしています。 XMLのデータは時間から時間に更新されるため、静的なデータだけを公開することはできません。XMLからXSL私は何が間違っていますか

私はXMLとウェブを調べるのに時間を費やしましたが、私が間違っていることを理解できません。

XMLコードの一部:

<?xml version="1.0"?> 
<?xml-stylesheet href="test.xsl" 
    type="text/css"?> 
<report reportname="top-application-categories"> 
    <result name="Top application categories" logtype="appstat" start="2017/02/08 00:00:00" start-epoch="1486508400" delta="86400" slabbed-  start="2017/02/08 00:00:00" end="2017/02/08 23:59:59" end-epoch="1486594799" slabbed-end="2017/02/08 23:59:59" generated-at="2017/02/09 00:00:16" generated-at-epoch="1486594816" range="Wednesday, February 08, 2017"> 
<entry> 
    <category-of-name>general-internet</category-of-name> 
    <nsess>14765605</nsess> 
    <nbytes>81973979657</nbytes> 
</entry> 
<entry> 
    <category-of-name>business-systems</category-of-name> 
    <nsess>8449911</nsess> 
    <nbytes>2747818255111</nbytes> 
</entry> 
<entry> 
    <category-of-name>networking</category-of-name> 
    <nsess>7673706</nsess> 
    <nbytes>172508825988</nbytes> 
</entry> 

は今、私は確かのみカテゴリー-の名、NsessとNBYTESがページに表示されますXSLを作成しようとしました。

<?xml version="1.0"?> 
<xsl:stylesheet 
version="1.0" 
xmlns:xsl="http://www.w3.org/1999/XSL/Transform" 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xmlns:xsd="http://www.w3.org/2001/XMLSchema" 
xmlns:msxsl="urn:schemas-microsoft-com:xslt" 
> 
<xsl:strip-space elements="*"/> 
<xsl:output method="xml" 
    omit-xml-declaration="yes" 
    indent="yes" 
    standalone="yes" /> 

<xsl:template match="/"> 
    <xsl:for-each select="report"> 
    <xsl:element name="report"> 
    <xsl:for-each select="result"> 
    <xsl:element name="result"> 
     <xsl:for-each select="entry"> 
      <xsl:element name="entry"> 
       <xsl:attribute name="category-of-name"> 
       <xsl:value-of select="category-of-name"/> 
       </xsl:attribute> 
       <xsl:attribute name="nsess"> 
       <xsl:value-of select="nsess"/> 
       </xsl:attribute> 
       <xsl:attribute name="nbytes"> 
       <xsl:value-of select="nbytes"/> 
       </xsl:attribute> 
      </xsl:element> 
      </xsl:for-each> 
     </xsl:for-each> 
    </xsl:element> 
    </xsl:for-each> 

私は、MSDNで、WWW上でこの例を見つけました。 Visual Web Developerで作成されたWebページでXMLを使用してデータを表示する方法について説明しました。 それでも同じ結果が出ているか、エラーが発生しているか、まったく表示されません。

うまくいけば、誰かが正しい方向に私を操縦することができます:)ライン5で

+1

まず、デバッガを使用してOxygen XML EditorなどのXMLエディタを試してみてください。その後、結果が得られたら、それをウェブページに添付してください。この方法で、xslが動作していることを確認できます。 – user726720

答えて

0

ルックはあなたの結果の名前=「トップアプリケーションカテゴリ」タグでunsetted slabbed-属性があります。

これは整形式ではないXMLエラーにつながります。 http://codebeautify.org/xmlvalidatorを使って、それが整形式で有効でオンラインであるかどうかを確認することができます。

+0

<結果??によって閉鎖されていないことを確認します。レポートの先頭に貼り付けただけなので) – Erik

+0

いいえ、開いている結果タグの中には、次のようなものがあります:start-epoch = "1486508400" delta = "86400" slabbed- start = "2017/02/08 00:00 :00 "end =" 2017/02/08 23:59:59 "。開始エポックと開始属性の間にはスラブが設定されていますが、これは設定されていません。とにかく、オンラインバリデーターをチェックインしようとすると、行とすべてのフォームエラーが表示されます。 – Antonio682

関連する問題