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
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
|
<!--#set var="revision" value="\$Id: index.html,v 1.19 2002-09-08 19:37:42 ville Exp $"
--><!--#set var="date" value="\$Date: 2002-09-08 19:37:42 $"
--><!--#set var="title" value="Source Code Availability for The W3C HTML Validation Service"
--><!--#set var="relroot" value="../"
--><!--#include virtual="../header.html" -->
<p id="skip">
The source code for the <a
href="../">W3C HTML Validation Service</a> is available under the terms
of the <a href="http://www.w3.org/Consortium/Legal/copyright-software">W3C
Software Copyright</a>.
</p>
<p>
The purpose of making the source code available is partly to allow
others to set up mirrors of the service (either publicly or within
an intranet behind a firewall), but also to allow us to collaborate
on making the service better -- there are <a
href="../todo.html">many ways the service could be improved</a>!
</p>
<h2><a name="getting">Retrieving the Code</a></h2>
<p>
You can retrieve the code a number of ways:
</p>
<ul>
<li>If you just want to glance at the code, or see its revision
history, you can <a
href="http://dev.w3.org/cgi-bin/cvsweb/validator/">browse it on the web</a>.
<p>
The most interesting files are currently <a
href="http://dev.w3.org/cgi-bin/cvsweb/validator/httpd/cgi-bin/check">a
CGI script called "check"</a> that does pretty much everything,
and possibly also <a
href="http://dev.w3.org/cgi-bin/cvsweb/validator/httpd/conf/httpd.conf">the
httpd.conf</a>. (select the topmost revision numbers on these pages to see
the most recent revision of each file.)
</p>
</li>
<li><p>If you want a copy of all the files that make up the
service, you can <a href="../validator.tar.gz">grab a tar
ball</a> (~2.0M, updated hourly.)
</p></li>
<li><p><a name="CVS">If you intend to actively mirror the code</a>
and/or contribute
patches to the code, you should install and become familiar with <a
href="http://www.cyclic.com/cvs/info.html">CVS</a>; this is the
tool we use for revision control (it is also used by the <a
href="http://dev.apache.org/">Apache</a> and <a
href="http://www.mozilla.org/cvs.html">Mozilla</a> developers,
and is generally a good thing to get to know.) <a
href="http://www.loria.fr/~molli/cvs-index.html">More information
on CVS</a> is available courtesy of <a
href="http://www.loria.fr/~molli/">Pascal Molli</a>.</p>
<p>
Our CVS base is available read-only, using CVS pserver authentication
a la:</p>
<blockquote><p><samp>
bash$ <kbd><b>export
CVSROOT=":pserver:anonymous@dev.w3.org:/sources/public"</b></kbd><br />
bash$ <kbd><b>cvs login</b></kbd><br />
(Logging in to anonymous@dev.w3.org)<br />
CVS password: <kbd><b>anonymous</b></kbd><br />
bash$ <kbd><b>cvs get validator</b></kbd><br />
cvs server: Updating validator<br />
cvs server: Updating validator/htdocs<br />
U validator/htdocs/about.html<br />
...
</samp></p></blockquote>
<!-- using <b> above is evil, but the default kbd style in Netscape is
goofy, and having that text boldfaced is ever so much clearer. - Gerald
-->
</li>
</ul>
<h2>Prerequisites</h2>
<p>
Before you will be able to get the code to run, you will need a few
things already installed on your system:
</p>
<ul>
<li>A Unix-like operating system. It may also work with Windows
NT, MacOS X or other systems. It has worked on Linux,
Solaris, FreeBSD, HP-UX, and Digital UNIX. If you try it on other
systems and get it to work, please <a href="../feedback.html">let
us know</a> (and <a href="../feedback.html">send us patches</a>, if
they are needed to get it to work elsewhere.)</li>
<li><a href="http://www.jclark.com/sp/">SP version 1.2.1 or higher</a>.
SP is the SGML parser used by the service. More recent versions than
1.2.1 will also work; we are currently using version 1.3.4.</li>
<li><a href="../sgml-lib.tar.gz">A collection of DTDs and other SGML
files</a> to validate against. You don't strictly <em>need</em> these
on your system since SP will retrieve them off the Web if you use URIs
in your DOCTYPEs, but you probably want them to be local for efficiency.
(You don't need to download this tar ball if you mirror everything
using <a href="#CVS">CVS</a>.)</li>
<li>The <a href="http://www.linpro.no/lwp/">LWP Perl module</a></li>
<li>A web server: we are currently running <a
href="httpd://www.apache.org/">Apache</a> version 1.3.12, but likely any
version will work, and other web servers may work as well.</li>
<li><a href="http://www.perl.com/">Perl</a>: the <a
href="http://dev.w3.org/cgi-bin/cvsweb/validator/httpd/cgi-bin/check">main
CGI script</a> that does everything is written in Perl.</li>
<li><a href="http://www.weblint.org/">weblint</a> (optional):
the service provides an option to run weblint on the page being
validated. Currently this services uses version 1.017.</li>
</ul>
<p>
If you try to use the code and succeed (or fail), please <a
href="../feedback.html">let us know</a>!
</p>
<h2><a name="dev">Development</a></h2>
<p>
For information on current development activity, see the <a
href="http://lists.w3.org/Archives/Public/www-validator/">www-validator
mailing list archives</a>. To join in discussions about the Validator,
please join us in the <code>#validator</code> IRC channel on
<code>irc.OpenProjects.net</code>.
</p>
<p>
Some of the developers use <a name="irc">IRC</a> (Internet
Relay Chat) to discuss development issues in real time; this
takes place on a server run by the <a
href="http://openprojects.nu/">Open Projects</a> IRC Network:
server irc.openprojects.net, port 6667, <a
href="irc://irc.openprojects.net/validator">channel #validator</a>.
If you are interested in contributing code, documentation or
ideas, feel free to drop by.
</p>
<p>
Any changes to the service will attempt to maintain
compatibility with a <a href="../dev/tests/">list of test
cases</a>.
Any changes to the code or
documentation related to the service cause a notification
message to be sent to the <a
href="http://lists.w3.org/Archives/Public/www-validator-cvs/">www-validator-cvs
mailing list</a>.
</p>
<!--#include virtual="../footer.html" -->
</body>
</html>
|