forked from apache/nutch
-
Notifications
You must be signed in to change notification settings - Fork 3
Expand file tree
/
Copy pathplugin.dtd
More file actions
206 lines (166 loc) · 6.83 KB
/
Copy pathplugin.dtd
File metadata and controls
206 lines (166 loc) · 6.83 KB
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
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
<?xml version="1.0" encoding="UTF-8"?>
<!--
! Licensed to the Apache Software Foundation (ASF) under one or more
! contributor license agreements. See the NOTICE file distributed with
! this work for additional information regarding copyright ownership.
! The ASF licenses this file to You under the Apache License, Version 2.0
! (the "License"); you may not use this file except in compliance with
! the License. You may obtain a copy of the License at
!
! http://www.apache.org/licenses/LICENSE-2.0
!
! Unless required by applicable law or agreed to in writing, software
! distributed under the License is distributed on an "AS IS" BASIS,
! WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
! See the License for the specific language governing permissions and
! limitations under the License.
!
!
! Document : plugin.dtd
! Created on : 14 avril 2006, 22:14
! Author : Chris Mattmann, Jerome Charron
! Description: Nutch plug-in manifest DTD
!
! PUBLIC ID : -//Apache Software Fundation//DTD Nutch Plugin Manifest 1.0//EN
! SYSTEM ID : http://lucene.apache.org/nutch/plugin.dtd
-->
<!--
! The <plugin> element defines the body of the manifest.
! It optionally contains definitions for the plug-in runtime,
! definitions of other plug-ins required by this one,
! declarations of any new extension points being introduced by the plug-in,
! as well as configuration of functional extensions
! (configured into extension points defined by other plug-ins,
! or introduced by this plug-in).
!-->
<!ELEMENT plugin (runtime?, requires?, extension-point*, extension*)>
<!-- A user displayable name for the plug-in -->
<!ATTLIST plugin name CDATA #REQUIRED>
<!--
! A unique identifier for the plug-in.
! To minimize potential for naming collisions,
! the identifier should be derived from the internet domain id
! of the supplying provider (reversing the domain name tokens and
! appending additional name tokens separated by dot [.]).
! For example, provider nutch.org could define plug-in identifier
! org.nutch.myplugin
!-->
<!ATTLIST plugin id CDATA #REQUIRED>
<!--
! The plug-in version number.
! NOTE : Version numbers compatibility are not yet implemented.
!-->
<!ATTLIST plugin version CDATA #REQUIRED>
<!-- The user-displayable name of the provider supplying the plug-in. -->
<!ATTLIST plugin provider-name CDATA #IMPLIED>
<!--
! The name of the plug-in class for this plug-in.
! The class must be a subclass of org.apache.nutch.plugin.Plugin
!-->
<!ATTLIST plugin class CDATA #IMPLIED>
<!--
! The <requires> section of the manifest declares
! any dependencies on other plug-ins.
!-->
<!ELEMENT requires (import+)>
<!-- Each dependency is specified using an <import> element. -->
<!ELEMENT import EMPTY>
<!-- The identifier of the required plug-in. -->
<!ATTLIST import plugin CDATA #REQUIRED>
<!--
! The <runtime> section of the manifest contains a definition of one or more
! libraries that make up the plug-in runtime.
! The referenced libraries are used by the plugin execution mechanisms
! (the plug-in class loader) to load and execute the correct code required by
! the plug-in.
!-->
<!ELEMENT runtime (library+)>
<!--
!The <library> elements collectively define the plug-in runtime.
! At least one <library> must be specified.
!-->
<!ELEMENT library (export*)>
<!--
! A string reference to a library file or directory containing classes
! (relative to the plug-in install directory).
! Directory references must contain trailing file separator.
!-->
<!ATTLIST library name CDATA #REQUIRED>
<!--
! Each <library> element can specify which portion
! of the library should be exported.
! The export rules are specified as a set of export masks.
! By default (no export rules specified),
! the library is considered to be private.
! Each export mask is specified using the name attribute.
!-->
<!ELEMENT export EMPTY>
<!--
! The export mask can have the following values:
! * - indicates all contents of library are exported (public)
! package.name.* - indicates all classes in the specified package
! are exported. The matching rules are the same as in the
! Java import statement.
! package.name.ClassName - fully qualified java class name
!
! NOTE : export mask is not yet implemented in Nutch.
!-->
<!ATTLIST export name CDATA #REQUIRED>
<!--
! Nutch's architecture is based on the notion of configurable extension points.
! Nutch itself predefines a set of extension points that cover the task of
! extending it (for example, adding parser, indexing filter, ...).
! In addition to the predefined extension points, each supplied plug-in can
! declare additional extension points. By declaring an extension point the
! plug-in is essentially advertising the ability to configure the plug-in
! function with externally supplied extensions.
!-->
<!ELEMENT extension-point EMPTY>
<!-- A user-displayable name for the extension point. -->
<!ATTLIST extension-point name CDATA #REQUIRED>
<!-- A simple id, unique within this plug-in -->
<!ATTLIST extension-point id CDATA #REQUIRED>
<!--
! Actual extensions are configured into extension points
! (predefined, or newly declared in this plug-in) in the <extension> section.
!
! The configuration information is specified by at least one implementation
! with some parameters.
!-->
<!ELEMENT extension (implementation+)>
<!--
! A reference to an extension point being configured.
! The extension point can be one defined in this plug-in or another plug-in.
!-->
<!ATTLIST extension point CDATA #REQUIRED>
<!--
! Optional identifier for this extension point configuration instance.
! This is used by extension points that need to uniquely identify
! (rather than just enumerate) the specific configured extensions.
! The identifier is specified as a simple token unique within the definition
! of the declaring plug-in. When used globally, the extension identifier
! is qualified by the plug-in identifier.
! FIXME : Seems it is never read in the code.
!-->
<!ATTLIST extension id CDATA #IMPLIED>
<!--
! A user-displayable name for the extension.
! FIXME : Seems it is never read in the code.
!-->
<!ATTLIST extension name CDATA #IMPLIED>
<!--
! Defines a specific implementation for the extension.
! This implementation can define some special name/value parameters
! used at runtime.
!-->
<!ELEMENT implementation (parameter*)>
<!-- A unique identifier for this implementation -->
<!ATTLIST implementation id CDATA #REQUIRED>
<!-- The fully-qualified Java Class that implements this extension-point -->
<!ATTLIST implementation class CDATA #REQUIRED>
<!-- Defines a name/value parameter -->
<!ELEMENT parameter EMPTY>
<!-- The parameter's name (should be unique for an extension) -->
<!ATTLIST parameter name CDATA #REQUIRED>
<!-- The parameter's value -->
<!ATTLIST parameter value CDATA #REQUIRED>