Как создать таблицу стилей с XML и XSL для преобразования в контент HTML? - PullRequest
0 голосов
/ 25 сентября 2019

Мне нужно связать XML-файл и XSL, чтобы красиво отобразить информацию в формате HTML.Я связал два файла, однако, когда я открываю файл XML в браузере, ничего не отображается.Страница просто пуста.Я также убедился, что имена файлов правильные

Как мне получить информацию для отображения?

XML code: 

<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<?xml-stylesheet href="Question2.xsl" type="text/xsl" ?>

<!DOCTYPE patronRecord [
<!ELEMENT patronRecord (Item*)>
<!ATTLIST patronRecord firstName CDATA #REQUIRED>
<!ATTLIST patronRecord lastName CDATA #REQUIRED>
<!ELEMENT Item (title,Authors,callNumber,due, overdue)>
<!ELEMENT title (#PCDATA)>
<!ELEMENT Authors (#PCDATA)>
<!ELEMENT callNumber (#PCDATA)>
<!ELEMENT due (#PCDATA)>
<!ELEMENT overdue (#PCDATA)>

]>
<patronRecord firstName = "John" lastName = "Smith">
<Item>
 <title>Wireless network security</title>
 <Authors>T.Wrightson</Authors>
 <callNumber>212.12/56</callNumber>
 <due>26-12-2016</due>
 <overdue>NO</overdue>
</Item>
<Item>
 <title>T. Tao</title>
 <Authors>Analysis</Authors>
 <callNumber>515/305</callNumber>
 <due>23-12-2016</due>
 <overdue>NO</overdue>
</Item>
<Item>
 <title>The art of computer programming</title>
 <Authors>D.E. Knuth</Authors>
 <callNumber>005.1/300 </callNumber>
 <due>25-11-2016</due>
 <overdue>YES</overdue>
</Item>
<Item>
 <title>Python for dummies</title>
 <Authors>S. Maruch and A. Ranum</Authors>
 <callNumber>145.3/57</callNumber>
 <due>01-10-2016</due>
 <overdue>YES</overdue>
</Item>
</patronRecord>

XSL Code: 
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<xsl:stylesheet version="1.0" 
xmlns:xsl="https://www.w3.org/1999/XSL/Transform">
<xsl:template match ="/patronRecord">
<html>
<body>
  <xsl:for-each select="Item">
    <xsl:value-of select="title" /><br/>
    <xsl:value-of select="Authors" /><br/>
    <xsl:value-of select="callNumber" /><br/>
    <xsl:value-of select="due" /><br/>
    <xsl:value-of select="overdue" /><br/>
  </xsl:for-each>
</body>
</html>
</xsl:template>
</xsl:stylesheet>

1 Ответ

0 голосов
/ 25 сентября 2019

После изменения и получения результата: -

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

                                     **to**

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