forked from xmlark/msv
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathreadme.html
177 lines (147 loc) · 3.98 KB
/
readme.html
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
170
171
172
173
174
175
176
177
<html>
<head>
<title>Read me for MSV developers</title>
<meta http-equiv="Content-type" content="text/html; charset=iso-8859-1" />
</head>
<body>
<h1 style="text-align:center">ReadMe for MSV development</h1>
<div style="text-align:right; font-size:smaller">by Kohsuke KAWAGUCHI</div>
<h2>Directory structure</h2>
<p>
MSV consists of a number of sub projects.
Each sub projects has its own directory, its own build script, etc.
</p>
<table border=1>
<tr><td>
xsdlib
</td><td>
Sun XML Datatypes Library. An implementation of W3C XML Schema Part 2.
</td></tr>
<tr><td>
testharness
</td><td>
Test harness that is used to parse composite test suite files (.ssuite).
</td></tr>
<tr><td>
msv
</td><td>
Sun Multi-Schema XML Validator. A schema model and validator implementation. Dependent on XSDLib and test harness.
</td></tr>
<tr><td>
rngconverter
</td><td>
Sun RELAX NG Converter. reads a schema and produces an equivalent RELAX NG schema. Dependent on MSV.
</td></tr>
<tr><td>
generator
</td><td>
Sun XML Instance Generator. A tool that produces valid XML documents by reading a schema. Dependent on MSV.
</td></tr>
<tr><td>
relames
</td><td>
Sun Multi-Schema XML Validator Schematron add-on. An experimental implementation of RELAX NG + Schematron validation. Dependent on MSV.
</td></tr>
<tr><td>
sox2rng
</td><td>
SOX to RELAX NG converter. Dependent on MSV.
</td></tr>
<tr><td>
tahiti
</td><td>
Data-binding implementation
</td></tr>
<tr><td>
trexconverter
</td><td>
TREX Converter. Reads a schema and produces an equivalent TREX pattern.
This project is no longer maintained.
</td></tr>
</table>
<p>
There are several other directories which are used to store other materials.
</p>
<table border=1>
<tr><td>
shared
</td><td>
keeps shared information among multiple subprojects.
</td></tr>
<tr><td>
testCases
</td><td>
keeps test instances/schemas.
</td></tr>
</table>
<h3>Sub-project structure</h3>
<p>
Most of the sub projects have a similar directory structure.
</p>
<table border=1>
<tr><td>
src
</td><td>
keeps source files. Files in this directory will be included
in the release package.
</td></tr>
<tr><td>
test
</td><td>
keeps test files. Files in this directory will NOT be included
in the release package. JUnit is used throughout the project,
and every test code must have "Test.java" as suffix to be recognized
as a test.
</td></tr>
<tr><td>
bin
</td><td>
keeps the compiled .class files. both "test" and "src" are
compiled into this directory.
</td></tr>
<tr><td>
doc
</td><td>
release documentation. Files in this directory will be included
in the release package.
</td></tr>
</table>
<h2>Build instruction</h2>
<p>
To build the entire project, use Ant. The build script also contains the "release" target,
which builds the release packages for all sub projects in a proper order.
</p><p>
When preparing release packages, it is a good idea to use this target
so that dependencies are processed correctly. (But you should run a project-local "release" first to make sure that there is no error in the repository.)
</p>
<h3>Project-wise build</h3>
<p>
When you are working on a sub project, you can use the project-local build script. Most of the build scripts are similar, and usually they have
following targets.
</p>
<table border=1>
<tr><td>
binary (default)
</td><td>
compiles everything into bin
</td></tr>
<tr><td>
javadoc
</td><td>
generates javadoc from the working copy.
Useful to check the documentation.
</td></tr>
<tr><td>
dist
</td><td>
makes a distribution package in the dist/ directory.
</td></tr>
<tr><td>
release
</td><td>
Compresses the result of the dist target into a single zip file
and put it to the package/ directory.
</td></tr>
</table>
</body>
</html>