онлайн XML для HTML-парсер

0

Я ищу онлайн-программу, которая анализирует любой xml-html. Например, если у меня есть следующий XML-макет

<users>
    <user>
         </name>john</name>
         <pictures>
              <pic1>URL of picture1.png</pic1>
              <pic2>URL of picture2.png</pic2>
         </pictures>
    </user>
    <user>
         </name>mary</name>
         <pictures>
              <pic1>URL of picture1.png</pic1>
              <pic2>URL of picture2.png</pic2>
         </pictures>
    </user>
</users>

он может создать html-страницу, отображающую содержимое узлов, и дать некоторое минимальное форматирование для удобства чтения. Любой такой инструмент?

Изменение: я просто привел пример, я хочу, чтобы общий инструмент, который мог анализировать любой xml, не зная его структуры заранее.

Теги:
parsing

2 ответа

0

Вы можете попробовать это.

http://www.w3schools.com/xsl/tryxslt.asp?xmlfile=cdcatalog&xsltfile=cdcatalog_choose

<?xml version="1.0" encoding="ISO-8859-1"?>
<!-- Edited by XMLSpy -->
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
<html>
<body>
<h2>My CD Collection</h2>
<table border="1">
<tr bgcolor="#9acd32">
  <th>Title</th>
  <th>Artist</th>
</tr>
<xsl:for-each select="catalog/cd">
<tr>
  <td><xsl:value-of select="title"/></td>
  <xsl:choose>
  <xsl:when test="price > 10">
     <td bgcolor="#ff00ff">
     <xsl:value-of select="artist"/>
     </td>
  </xsl:when>
  <xsl:otherwise>
     <td><xsl:value-of select="artist"/></td>
  </xsl:otherwise>
  </xsl:choose>
  </tr>
</xsl:for-each>
 </table>
</body>
</html>
</xsl:template>
</xsl:stylesheet>
  • 0
    Это ни в коем случае не является общим, и в случае примера, приведенного OP, результат не имеет ничего общего с исходными данными.
0

Один из способов решения этой проблемы - применить преобразование XSLT.

Вам нужно будет создать таблицу стилей XSL, что-то вроде...

<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
<html>
<head>
    <title>Contacts</title>
</head>
<body>
    <xsl:for-each select="//user">
        <h2><xsl:value-of select="name" /></h2>
        <p><xsl:value-of select="pictures/pic1" /></p>
        <p><xsl:value-of select="pictures/pic2" /></p>
    </xsl:for-each>
</body>
</html>
</xsl:template>
</xsl:stylesheet> 

Затем перейдите к нему в верхней части вашего xml файла. В приведенном ниже примере вторая строка ссылается на таблицу стилей "myStyleSheet.xsl".

<?xml version="1.0" encoding="utf-8"?>
<?xml-stylesheet type="text/xsl" href="myStyleSheet.xsl"?>
<users>
    <user>
         <name>john</name>
         <pictures>
              <pic1>URL of picture1.png</pic1>
              <pic2>URL of picture2.png</pic2>
         </pictures>
    </user>
    <user>
         <name>mary</name>
         <pictures>
              <pic1>URL of picture1.png</pic1>
              <pic2>URL of picture2.png</pic2>
         </pictures>
    </user>
</users>
  • 0
    Это решение предполагает, что я знаю структуру XML-файла.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню