forked from commoncriteria/transforms
-
Notifications
You must be signed in to change notification settings - Fork 0
/
esr2html.xsl
133 lines (120 loc) · 3.28 KB
/
esr2html.xsl
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:esr="http://common-criteria.rhcloud.com/ns/esr" xmlns="http://www.w3.org/1999/xhtml"
xmlns:fn="http://www.w3.org/2005/xpath-functions" version="1.0">
<!-- very important, for special characters and umlauts iso8859-1-->
<xsl:output method="html" encoding="UTF-8" indent="yes"/>
<xsl:template match="/esr:ESR">
<!-- Start with !doctype preamble for valid (X)HTML document. -->
<xsl:text disable-output-escaping='yes'><!DOCTYPE html>
</xsl:text>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<style type="text/css">
/* { background-color: #FFFFFF; } */
body{
margin-left:8%;
margin-right:8%;
foreground:black;
}
td{
vertical-align:top;
}
div.section{
text-align:center;
margin-left:0%;
margin-top:1em;
margin-bottom:1em;
border:2px solid #000000;
width:100%;
background-color:#FFFF99;
font-family:arial, helvetica, sans-serif;
font-weight:bold;
box-shadow:2px 2px 2px #888888;
}
div.note{
margin-left:10%;
margin-right:10%;
margin-top:1em;
}
table.intro{
table-layout:fixed;
width:100%;
margin-top:1em;
border:1px solid black;
box-shadow:2px 2px 2px #888888;
text-align:center;
vertical-align:middle;
font-family:arial, helvetica, sans-serif;
}
ul,
ol{
margin-bottom:0.5em;
margin-top:0.5em;
}
li{
margin-bottom:0.5em;
margin-top:0.25em;
}</style>
</head>
<body>
<xsl:apply-templates select="esr:intro"/>
<xsl:apply-templates select="//esr:section"/>
</body>
</html>
</xsl:template>
<xsl:template match="esr:intro">
<!-- table with CC logo-->
<table class="intro">
<tr>
<td style="width: 50%;">
<img style="max-width:100%;" src="images/cclogo.png"/>
</td>
<td style="vertical-align: middle;">
<b>Common Criteria Evaluation and Validation Scheme</b><p/>National Information
Assurance Partnership (NIAP) </td>
</tr>
</table>
<p/>
<b>Title: </b>
<xsl:apply-templates select="esr:esrtitle"/>
<p/>
<b>Maintained by: </b>
<xsl:apply-templates select="esr:maintainer"/>
<p/>
<b>Unique Identifier: </b>
<xsl:apply-templates select="esr:identifier"/>
<p/>
<b>Version: </b>
<xsl:apply-templates select="esr:version"/>
<p/>
<b>Status: </b>
<xsl:apply-templates select="esr:status"/>
<p/>
<b>Date of issue: </b>
<xsl:apply-templates select="esr:issuedate"/>
<p/>
<b>Approved by: </b>
<xsl:apply-templates select="esr:approver"/>
<p/>
<b>Supersedes: </b>
<xsl:apply-templates select="esr:superseded"/>
<p/>
</xsl:template>
<xsl:template match="esr:section">
<div class="section" id="{@id}">
<xsl:value-of select="@title"/>
</div>
<xsl:apply-templates/>
</xsl:template>
<xsl:template match="esr:note">
<div class="note">
<b>Note: </b>
<i><xsl:apply-templates/></i>
</div>
</xsl:template>
<xsl:template match="@*|node()">
<xsl:copy>
<xsl:apply-templates select="@*|node()"/>
</xsl:copy>
</xsl:template>
</xsl:stylesheet>