我想将XML转换为可读的HTML。下面我将我的XML的示例部分放在一边,我无法改变自己,需要一些帮助。 XML可能具有可变数量的列,这些列将由名称col1,col2 --- colxxx生成。这里如果ITEM =标签我在他们的名字前加 我想把所有的<nonLog>
记录放在一张表中,而所有的<log>
记录都是明智的。 这意味着 我们将有 非日志的形式1个 日志表单1 非日志形式2 然后日志从2 ..等等等等第四使用XSLT将动态XML转换为多个HTML表格
<Post>
<FormData>
<SUBJECT>94</SUBJECT>
<FORM_OID>TOX</FORM_OID>
<NonLog>
<ID>1</ID>
<SUBJECT_ID>94</SUBJECT_ID>
<FORM_OID>TOX</FORM_OID>
<ITEM>Label</ITEM>
<col1>Visit</col1>
<col2> AV</col2>
<col3>AC</col3>
</NonLog>
<NonLog>
<ID>2</ID>
<SUBJECT_ID>94</SUBJECT_ID>
<FORM_OID>TOX</FORM_OID>
<ITEM>Data</ITEM>
<col1>1t</col1>
<col2>No</col2>
<col3></col3>
</NonLog>
<Log>
<ID>5</ID>
<SUBJECT_ID>94</SUBJECT_ID>
<FORM_OID>TOX</FORM_OID>
<ITEM>Label</ITEM>
<LOG_REC_POSITION>1</LOG_REC_POSITION>
<col1>Pat Name</col1>
<col2>Doc Name</col2>
</Log>
<Log>
<ID>5</ID>
<SUBJECT_ID>94</SUBJECT_ID>
<FORM_OID>TOX</FORM_OID>
<ITEM>Label</ITEM>
<LOG_REC_POSITION>1</LOG_REC_POSITION>
<col1>Sam</col1>
<col2>Dr Mike</col2>
</Log>
</Form Data>
<FormData>
<SUBJECT>94</SUBJECT>
<FORM_OID>TOX2</FORM_OID>
<NonLog>
<ID>1</ID>
<SUBJECT_ID>94</SUBJECT_ID>
<FORM_OID>TOX2</FORM_OID>
<ITEM>Label</ITEM>
<col1>Visit</col1>
<col2> AV</col2>
<col3>AC</col3>
</NonLog>
<NonLog>
<ID>2</ID>
<SUBJECT_ID>94</SUBJECT_ID>
<FORM_OID>TOX2</FORM_OID>
<ITEM>Data</ITEM>
<col1>1t</col1>
<col2>No</col2>
<col3></col3>
</NonLog>
<Log>
<ID>5</ID>
<SUBJECT_ID>94</SUBJECT_ID>
<FORM_OID>TOX2</FORM_OID>
<ITEM>Label</ITEM>
<LOG_REC_POSITION>1</LOG_REC_POSITION>
<col1>Pat Name</col1>
<col2>Doc Name</col2>
</Log>
<Log>
<ID>5</ID>
<SUBJECT_ID>94</SUBJECT_ID>
<FORM_OID>TOX2</FORM_OID>
<ITEM>Label</ITEM>
<LOG_REC_POSITION>1</LOG_REC_POSITION>
<col1>Sam</col1>
<col2>Dr Mike</col2>
</Log>
</Form Data>
</Post>
预期的HTML输出是
<Table>
<tr><td>
<table>
<tr><td><b>visit no</b></td></tr>
<tr><td>1</td></tr>
<tr><td><b>Date</b></td></tr>
<tr><td>8/11/2018</td></tr>
</table>
</td></tr>
<table>
<tr><td><b>Pat Name</b></td><td><b>Doc Name</b></td></tr>
<tr><td>Sam Hul</td><td>Dr Mike</td></tr>
</table><table>
<tr><td><b>visit no</b></td></tr>
<tr><td>1</td></tr>
<tr><td><b>Date</b></td></tr>
<tr><td>8/11/2018</td></tr>
</table>
</td></tr>
<table>
<tr><td><b>Pat Name</b></td><td><b>Doc Name</b></td></tr>
<tr><td>Sam Hul</td><td>Dr Mike</td></tr>
</table>
</table>
您可以使用XSLT 2.0吗? –
可能是的..会有更多的帮助。 –
是的。这基本上是一个分组问题,而XSLT 2.0具有分组功能。 –