2016-02-14 2 views
0

Может ли кто-нибудь помочь в решении этой проблемы? :XSLT вопрос простой

это мой XML-файл с именем ce.xml

<?xml version="1.0" encoding="windows-1252" ?> 
<?xml-stylesheet type="text/xsl" href="ce.xslt"?> 
<TABLE> 
    <CE> 
     <Variable> STUDYID </Variable> 
     <Label> Study Identifier </Label> 
     <length> 200 </length> 
     <Type> Char </Type> 
    </CE> 
    <CE> 
     <Variable> DOMAIN </Variable> 
     <Label> Domain Abbreviation </Label> 
     <length> 200 </length> 
     <Type> Char </Type> 
    </CE> 
<TABLE> 

Я хотел бы, чтобы сделать в HTML только значения переменной "Variable", которые домен и studyid. Таким образом, я использовал следующее преобразование XSLT:

<?xml version="1.0"?> 

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


<xsl:template match="/"> 
<html> 
<head> 
    <title>Get all Variables</title> 
</head> 
<body> 
    <xsl:for-each select="/TABLE/CE"/> 
    <xsl:value-of select="Variable"/> 
    </xsl:for-each> 
</body> 
</html> 
</xsl:template> 

</xsl:stylesheet> 

Я не понимаю, он должен работать, как это довольно основной запрос. Обратите внимание, что он не удался во всех браузерах.

Заранее спасибо

saskap

+0

@CAFEBABE Пожалуйста, не изменяйте код OP. –

+0

Не ожидал, что это будет ошибка. Я больше походил на лень. Сожалею. – CAFEBABE

ответ

2
  1. Ваш вклад не хорошо сформированный XML: окончательные <TABLE> потребности быть </TABLE>.
  2. Вместо:

    <xsl:for-each select="/TABLE/CE"/> 
    

    вам нужно:

    <xsl:for-each select="/TABLE/CE"> 
    
+0

Спасибо, Майкл! –