ai4r 1.4 → 1.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/README.rdoc +24 -3
- data/examples/decision_trees/id3_example.rb +1 -1
- data/examples/genetic_algorithm/genetic_algorithm_example.rb +1 -1
- data/lib/ai4r.rb +11 -0
- data/lib/ai4r/classifiers/classifier.rb +2 -0
- data/lib/ai4r/classifiers/id3.rb +3 -2
- data/lib/ai4r/classifiers/multilayer_perceptron.rb +135 -0
- data/lib/ai4r/classifiers/one_r.rb +2 -1
- data/lib/ai4r/classifiers/prism.rb +2 -1
- data/lib/ai4r/classifiers/zero_r.rb +2 -1
- data/lib/ai4r/clusterers/average_linkage.rb +60 -0
- data/lib/ai4r/clusterers/bisecting_k_means.rb +17 -39
- data/lib/ai4r/clusterers/clusterer.rb +25 -0
- data/lib/ai4r/clusterers/complete_linkage.rb +62 -0
- data/lib/ai4r/clusterers/k_means.rb +18 -25
- data/lib/ai4r/clusterers/single_linkage.rb +179 -0
- data/lib/ai4r/data/data_set.rb +33 -41
- data/lib/ai4r/data/proximity.rb +82 -0
- data/lib/ai4r/data/statistics.rb +77 -0
- data/lib/ai4r/experiment/classifier_evaluator.rb +95 -0
- data/lib/ai4r/genetic_algorithm/genetic_algorithm.rb +2 -4
- data/site/build/site/en/build/tmp/build-info.xml +5 -0
- data/site/build/site/en/build/tmp/plugins-1.xml +212 -0
- data/site/build/site/en/build/tmp/plugins-2.xml +252 -0
- data/site/build/site/en/build/tmp/projfilters.properties +41 -0
- data/site/build/site/en/downloads.html +1 -1
- data/site/build/site/en/geneticAlgorithms.html +1 -1
- data/site/build/site/en/index.html +44 -7
- data/site/build/site/en/index.pdf +278 -155
- data/site/build/site/en/linkmap.html +2 -2
- data/site/build/site/en/linkmap.pdf +12 -12
- data/site/build/site/en/machineLearning.html +1 -1
- data/site/build/site/en/neuralNetworks.html +1 -1
- data/site/build/site/en/sourceCode.html +244 -0
- data/site/build/site/en/sourceCode.pdf +278 -0
- data/site/build/site/en/svn.html +34 -42
- data/site/build/site/en/svn.pdf +86 -114
- data/site/build/tmp/cocoon-work/cache-dir/cocoon-ehcache-1.data +0 -0
- data/site/build/tmp/cocoon-work/cache-dir/cocoon-ehcache-1.index +0 -0
- data/site/build/tmp/projfilters.properties +1 -1
- data/site/build/webapp/WEB-INF/logs/core.log +628 -629
- data/site/build/webapp/WEB-INF/logs/error.log +213 -213
- data/site/src/documentation/content/xdocs/index.xml +20 -1
- data/site/src/documentation/content/xdocs/site.xml +1 -1
- data/site/src/documentation/content/xdocs/sourceCode.xml +43 -0
- data/site/src/documentation/resources/images/sigmoid.png +0 -0
- data/test/classifiers/id3_test.rb +0 -1
- data/test/classifiers/multilayer_perceptron_test.rb +79 -0
- data/test/classifiers/one_r_test.rb +0 -2
- data/test/classifiers/prism_test.rb +0 -2
- data/test/classifiers/zero_r_test.rb +0 -2
- data/test/clusterers/average_linkage_test.rb +45 -0
- data/test/clusterers/bisecting_k_means_test.rb +0 -2
- data/test/clusterers/complete_linkage_test.rb +45 -0
- data/test/clusterers/k_means_test.rb +0 -2
- data/test/clusterers/single_linkage_test.rb +113 -0
- data/test/data/data_set_test.rb +3 -15
- data/test/data/proximity_test.rb +71 -0
- data/test/data/statistics_test.rb +65 -0
- data/test/experiment/classifier_evaluator_test.rb +76 -0
- metadata +27 -6
- data/site/src/documentation/content/xdocs/svn.xml +0 -41
@@ -0,0 +1,77 @@
|
|
1
|
+
# Author:: Sergio Fierens
|
2
|
+
# License:: MPL 1.1
|
3
|
+
# Project:: ai4r
|
4
|
+
# Url:: http://ai4r.rubyforge.org/
|
5
|
+
#
|
6
|
+
# You can redistribute it and/or modify it under the terms of
|
7
|
+
# the Mozilla Public License version 1.1 as published by the
|
8
|
+
# Mozilla Foundation at http://www.mozilla.org/MPL/MPL-1.1.txt
|
9
|
+
|
10
|
+
require File.dirname(__FILE__) + '/data_set'
|
11
|
+
|
12
|
+
module Ai4r
|
13
|
+
module Data
|
14
|
+
|
15
|
+
# This module provides some basic statistics functions to operate on
|
16
|
+
# data set attributes.
|
17
|
+
module Statistics
|
18
|
+
|
19
|
+
# Get the sample mean
|
20
|
+
def self.mean(data_set, attribute)
|
21
|
+
index = data_set.get_index(attribute)
|
22
|
+
sum = 0.0
|
23
|
+
data_set.data_items.each { |item| sum += item[index] }
|
24
|
+
return sum / data_set.data_items.length
|
25
|
+
end
|
26
|
+
|
27
|
+
# Get the variance.
|
28
|
+
# You can provide the mean if you have it already, to speed up things.
|
29
|
+
def self.variance(data_set, attribute, mean = nil)
|
30
|
+
index = data_set.get_index(attribute)
|
31
|
+
mean = mean(data_set, attribute)
|
32
|
+
sum = 0.0
|
33
|
+
data_set.data_items.each { |item| sum += (item[index]-mean)**2 }
|
34
|
+
return sum / (data_set.data_items.length-1)
|
35
|
+
end
|
36
|
+
|
37
|
+
# Get the standard deviation.
|
38
|
+
# You can provide the variance if you have it already, to speed up things.
|
39
|
+
def self.standard_deviation(data_set, attribute, variance = nil)
|
40
|
+
variance ||= variance(data_set, attribute)
|
41
|
+
Math.sqrt(variance)
|
42
|
+
end
|
43
|
+
|
44
|
+
# Get the sample mode.
|
45
|
+
def self.mode(data_set, attribute)
|
46
|
+
index = data_set.get_index(attribute)
|
47
|
+
count = Hash.new {0}
|
48
|
+
max_count = 0
|
49
|
+
mode = nil
|
50
|
+
data_set.data_items.each do |data_item|
|
51
|
+
attr_value = data_item[index]
|
52
|
+
attr_count = (count[attr_value] += 1)
|
53
|
+
if attr_count > max_count
|
54
|
+
mode = attr_value
|
55
|
+
max_count = attr_count
|
56
|
+
end
|
57
|
+
end
|
58
|
+
return mode
|
59
|
+
end
|
60
|
+
|
61
|
+
# Get the maximum value of an attribute in the data set
|
62
|
+
def self.max(data_set, attribute)
|
63
|
+
index = data_set.get_index(attribute)
|
64
|
+
item = data_set.data_items.max {|x,y| x[index] <=> y[index]}
|
65
|
+
return (item) ? item[index] : (-1.0/0)
|
66
|
+
end
|
67
|
+
|
68
|
+
# Get the minimum value of an attribute in the data set
|
69
|
+
def self.min(data_set, attribute)
|
70
|
+
index = data_set.get_index(attribute)
|
71
|
+
item = data_set.data_items.min {|x,y| x[index] <=> y[index]}
|
72
|
+
return (item) ? item[index] : (1.0/0)
|
73
|
+
end
|
74
|
+
|
75
|
+
end
|
76
|
+
end
|
77
|
+
end
|
@@ -0,0 +1,95 @@
|
|
1
|
+
require 'benchmark'
|
2
|
+
require File.dirname(__FILE__) + '/../data/data_set'
|
3
|
+
|
4
|
+
|
5
|
+
module Ai4r
|
6
|
+
|
7
|
+
module Experiment
|
8
|
+
|
9
|
+
# The ClassifierEvaluator is useful to compare different classifiers
|
10
|
+
# algorithms. The evaluator builds the Classifiers using the same data
|
11
|
+
# examples, and provides methods to evalute their performance in parallel.
|
12
|
+
# It is a nice tool to compare and evaluate the performance of different
|
13
|
+
# algorithms, the same algorithm with different parameters, or your own new
|
14
|
+
# algorithm against the classic classifiers.
|
15
|
+
class ClassifierEvaluator
|
16
|
+
|
17
|
+
attr_reader :build_times, :eval_times, :classifiers
|
18
|
+
|
19
|
+
def initialize
|
20
|
+
@classifiers = []
|
21
|
+
end
|
22
|
+
|
23
|
+
# Add a classifier instance to the test batch
|
24
|
+
def add_classifier(classifier)
|
25
|
+
@classifiers << classifier
|
26
|
+
return self
|
27
|
+
end
|
28
|
+
|
29
|
+
alias :<< :add_classifier
|
30
|
+
|
31
|
+
# Build all classifiers, using data examples found in data_set.
|
32
|
+
# The last attribute of each item is considered as the
|
33
|
+
# item class.
|
34
|
+
# Building times are measured by separate, and can be accessed
|
35
|
+
# through build_times attribute reader.
|
36
|
+
def build(data_set)
|
37
|
+
@build_times = []
|
38
|
+
@classifiers.each do |classifier|
|
39
|
+
@build_times << Benchmark.measure { classifier.build data_set }
|
40
|
+
end
|
41
|
+
return self
|
42
|
+
end
|
43
|
+
|
44
|
+
# You can evaluate new data, predicting its class.
|
45
|
+
# e.g.
|
46
|
+
# classifier.eval(['New York', '<30', 'F'])
|
47
|
+
# => ['Y', 'Y', 'Y', 'N', 'Y', 'Y', 'N']
|
48
|
+
# Evaluation times are measured by separate, and can be accessed
|
49
|
+
# through eval_times attribute reader.
|
50
|
+
def eval(data)
|
51
|
+
@eval_times = []
|
52
|
+
results = []
|
53
|
+
@classifiers.each do |classifier|
|
54
|
+
@eval_times << Benchmark.measure { results << classifier.eval(data) }
|
55
|
+
end
|
56
|
+
return results
|
57
|
+
end
|
58
|
+
|
59
|
+
# Test classifiers using a data set. The last attribute of each item
|
60
|
+
# is considered as the expected class. Data items are evaluated
|
61
|
+
# using all classifiers: evalution times, sucess rate, and quantity of
|
62
|
+
# classification errors are returned in a data set.
|
63
|
+
# The return data set has a row for every classifier tested, and the
|
64
|
+
# following attributes:
|
65
|
+
# ["Classifier", "Testing Time", "Errors", "Success rate"]
|
66
|
+
def test(data_set)
|
67
|
+
result_data_items = []
|
68
|
+
@classifiers.each do |classifier|
|
69
|
+
result_data_items << test_classifier(classifier, data_set)
|
70
|
+
end
|
71
|
+
return Ai4r::Data::DataSet.new(:data_items => result_data_items,
|
72
|
+
:data_labels => ["Classifier","Testing Time","Errors","Success rate"])
|
73
|
+
end
|
74
|
+
|
75
|
+
private
|
76
|
+
def test_classifier(classifier, data_set)
|
77
|
+
data_set_size = data_set.data_items.length
|
78
|
+
errors = 0
|
79
|
+
testing_times = Benchmark.measure do
|
80
|
+
data_set.data_items.each do |data_item|
|
81
|
+
data = data_item[0...-1]
|
82
|
+
expected_result = data_item.last
|
83
|
+
result = classifier.eval data
|
84
|
+
errors += 1 if result != expected_result
|
85
|
+
end
|
86
|
+
end
|
87
|
+
return [classifier, testing_times.real, errors,
|
88
|
+
((data_set_size-errors*1.0)/data_set_size)]
|
89
|
+
end
|
90
|
+
|
91
|
+
end
|
92
|
+
|
93
|
+
end
|
94
|
+
|
95
|
+
end
|
@@ -1,4 +1,3 @@
|
|
1
|
-
#
|
2
1
|
# Author:: Sergio Fierens
|
3
2
|
# License:: MPL 1.1
|
4
3
|
# Project:: ai4r
|
@@ -7,7 +6,6 @@
|
|
7
6
|
# You can redistribute it and/or modify it under the terms of
|
8
7
|
# the Mozilla Public License version 1.1 as published by the
|
9
8
|
# Mozilla Foundation at http://www.mozilla.org/MPL/MPL-1.1.txt
|
10
|
-
|
11
9
|
module Ai4r
|
12
10
|
|
13
11
|
# The GeneticAlgorithm module implements the GeneticSearch and Chromosome
|
@@ -15,10 +13,10 @@ module Ai4r
|
|
15
13
|
# any kind of problems. The GeneticSearch class performs a stochastic search
|
16
14
|
# of the solution of a given problem.
|
17
15
|
#
|
18
|
-
# The Chromosome is "problem specific". Ai4r built-in
|
16
|
+
# The Chromosome is "problem specific". Ai4r built-in Chromosome class was
|
19
17
|
# designed to model the Travelling salesman problem. If you want to solve other
|
20
18
|
# type of problem, you will have to modify the Chromosome class, by overwriting
|
21
|
-
# its fitness, reproduce, and mutate functions, to model
|
19
|
+
# its fitness, reproduce, and mutate functions, to model your specific problem.
|
22
20
|
module GeneticAlgorithm
|
23
21
|
|
24
22
|
# This class is used to automatically:
|
@@ -0,0 +1,212 @@
|
|
1
|
+
<?xml version="1.0"?>
|
2
|
+
<!--
|
3
|
+
Licensed to the Apache Software Foundation (ASF) under one or more
|
4
|
+
contributor license agreements. See the NOTICE file distributed with
|
5
|
+
this work for additional information regarding copyright ownership.
|
6
|
+
The ASF licenses this file to You under the Apache License, Version 2.0
|
7
|
+
(the "License"); you may not use this file except in compliance with
|
8
|
+
the License. You may obtain a copy of the License at
|
9
|
+
|
10
|
+
http://www.apache.org/licenses/LICENSE-2.0
|
11
|
+
|
12
|
+
Unless required by applicable law or agreed to in writing, software
|
13
|
+
distributed under the License is distributed on an "AS IS" BASIS,
|
14
|
+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
15
|
+
See the License for the specific language governing permissions and
|
16
|
+
limitations under the License.
|
17
|
+
-->
|
18
|
+
<!DOCTYPE plugins [
|
19
|
+
<!ENTITY % links.att 'name CDATA #REQUIRED'>
|
20
|
+
<!ENTITY % link.att 'name CDATA #REQUIRED href CDATA #REQUIRED'>
|
21
|
+
<!ELEMENT plugins (plugin*)>
|
22
|
+
<!ATTLIST plugins type CDATA #REQUIRED>
|
23
|
+
<!ELEMENT plugin (description, forrestVersion)>
|
24
|
+
<!ATTLIST plugin name CDATA #REQUIRED
|
25
|
+
type (input|output|internal) #REQUIRED
|
26
|
+
url CDATA #REQUIRED
|
27
|
+
author CDATA #REQUIRED
|
28
|
+
website CDATA #IMPLIED
|
29
|
+
version CDATA #IMPLIED>
|
30
|
+
<!ELEMENT description (#PCDATA)>
|
31
|
+
<!ELEMENT forrestVersion (#PCDATA)>
|
32
|
+
]>
|
33
|
+
<plugins type="released">
|
34
|
+
<!-- ================================================================== -->
|
35
|
+
<!-- Input Plugins -->
|
36
|
+
<!-- ================================================================== -->
|
37
|
+
<plugin name="org.apache.forrest.plugin.input.dtdx"
|
38
|
+
type="input"
|
39
|
+
author="Apache Forrest Project"
|
40
|
+
website="http://forrest.apache.org/pluginDocs/plugins_0_80/org.apache.forrest.plugin.input.dtdx"
|
41
|
+
url="http://forrest.apache.org/plugins/"
|
42
|
+
version="0.2">
|
43
|
+
<description>
|
44
|
+
Use the NekoDTD tool packaged as a Cocoon Generator to automatically
|
45
|
+
generate some hyperlinked DTD reference documentation.
|
46
|
+
</description>
|
47
|
+
<forrestVersion>0.8</forrestVersion>
|
48
|
+
</plugin>
|
49
|
+
<plugin name="org.apache.forrest.plugin.input.excel"
|
50
|
+
type="input"
|
51
|
+
author="Apache Forrest Project"
|
52
|
+
website="http://forrest.apache.org/pluginDocs/plugins_0_80/org.apache.forrest.plugin.input.excel/"
|
53
|
+
url="http://forrest.apache.org/plugins"
|
54
|
+
version="0.3">
|
55
|
+
<description>
|
56
|
+
Reads (simple) Excel sheets from the Excel "Save As" (Type=XML).
|
57
|
+
</description>
|
58
|
+
<forrestVersion>0.8</forrestVersion>
|
59
|
+
</plugin>
|
60
|
+
<plugin name="org.apache.forrest.plugin.input.feeder"
|
61
|
+
type="input"
|
62
|
+
author="Apache Forrest Project"
|
63
|
+
website="http://forrest.apache.org/pluginDocs/plugins_0_80/org.apache.forrest.plugin.input.feeder"
|
64
|
+
url="http://forrest.apache.org/plugins"
|
65
|
+
version="0.2">
|
66
|
+
<description>
|
67
|
+
Embed syndicated content in a Forrest site.
|
68
|
+
</description>
|
69
|
+
<forrestVersion>0.8</forrestVersion>
|
70
|
+
</plugin>
|
71
|
+
<plugin name="org.apache.forrest.plugin.input.listLocations"
|
72
|
+
type="input"
|
73
|
+
author="Apache Forrest Project"
|
74
|
+
website="http://forrest.apache.org/pluginDocs/plugins_0_80/org.apache.forrest.plugin.input.listLocations"
|
75
|
+
url="http://forrest.apache.org/plugins/"
|
76
|
+
version="0.2">
|
77
|
+
<description>
|
78
|
+
Use lists of locations maintained in a simple xml format and transform
|
79
|
+
them to documents.
|
80
|
+
</description>
|
81
|
+
<forrestVersion>0.8</forrestVersion>
|
82
|
+
</plugin>
|
83
|
+
<plugin name="org.apache.forrest.plugin.input.OpenOffice.org"
|
84
|
+
type="input"
|
85
|
+
author="Apache Forrest Project"
|
86
|
+
website="http://forrest.apache.org/pluginDocs/plugins_0_80/org.apache.forrest.plugin.input.OpenOffice.org"
|
87
|
+
url="http://forrest.apache.org/plugins"
|
88
|
+
version="0.2">
|
89
|
+
<description>
|
90
|
+
Use various OpenOffice.org document formats as input sources.
|
91
|
+
</description>
|
92
|
+
<forrestVersion>0.8</forrestVersion>
|
93
|
+
</plugin>
|
94
|
+
<plugin name="org.apache.forrest.plugin.input.PhotoGallery"
|
95
|
+
type="input"
|
96
|
+
author="Apache Forrest Project"
|
97
|
+
website="http://forrest.apache.org/pluginDocs/plugins_0_80/org.apache.forrest.plugin.input.PhotoGallery"
|
98
|
+
url="http://forrest.apache.org/plugins"
|
99
|
+
version="0.3">
|
100
|
+
<description>
|
101
|
+
Create a photo Gallery by simply dropping your photos into a directory.
|
102
|
+
</description>
|
103
|
+
<forrestVersion>0.8</forrestVersion>
|
104
|
+
</plugin>
|
105
|
+
<plugin name="org.rblasch.forrest.plugin.input.pod"
|
106
|
+
type="input"
|
107
|
+
author="Ronald Blaschke"
|
108
|
+
website="http://www.rblasch.org/projects/pod-input/"
|
109
|
+
url="http://www.rblasch.org/projects/pod-input"
|
110
|
+
version="0.1">
|
111
|
+
<description>
|
112
|
+
Embed Pod (Plain Old Documentation) documents in a Forrest site.
|
113
|
+
</description>
|
114
|
+
<forrestVersion>0.7</forrestVersion>
|
115
|
+
</plugin>
|
116
|
+
<plugin name="org.apache.forrest.plugin.input.projectInfo"
|
117
|
+
type="input"
|
118
|
+
author="Apache Forrest Project"
|
119
|
+
website="http://forrest.apache.org/pluginDocs/plugins_0_80/org.apache.forrest.plugin.input.projectInfo"
|
120
|
+
url="http://forrest.apache.org/plugins/"
|
121
|
+
version="0.2">
|
122
|
+
<description>
|
123
|
+
Generates project info such as changelog and todo list.
|
124
|
+
</description>
|
125
|
+
<forrestVersion>0.8</forrestVersion>
|
126
|
+
</plugin>
|
127
|
+
<plugin name="org.apache.forrest.plugin.input.simplifiedDocbook"
|
128
|
+
type="input"
|
129
|
+
author="Apache Forrest Project"
|
130
|
+
website="http://forrest.apache.org/pluginDocs/plugins_0_80/org.apache.forrest.plugin.input.simplifiedDocbook"
|
131
|
+
url="http://forrest.apache.org/plugins/"
|
132
|
+
version="0.2">
|
133
|
+
<description>
|
134
|
+
Enable Simplified Docbook to be used as input.
|
135
|
+
</description>
|
136
|
+
<forrestVersion>0.8</forrestVersion>
|
137
|
+
</plugin>
|
138
|
+
<plugin name="org.apache.forrest.plugin.input.wiki"
|
139
|
+
type="input"
|
140
|
+
author="Apache Forrest Project"
|
141
|
+
website="http://forrest.apache.org/pluginDocs/plugins_0_80/org.apache.forrest.plugin.input.wiki"
|
142
|
+
url="http://forrest.apache.org/plugins/"
|
143
|
+
version="0.2">
|
144
|
+
<description>
|
145
|
+
Embed various wiki documents in a Forrest site.
|
146
|
+
</description>
|
147
|
+
<forrestVersion>0.8</forrestVersion>
|
148
|
+
</plugin>
|
149
|
+
<!-- ================================================================== -->
|
150
|
+
<!-- Output Plugins -->
|
151
|
+
<!-- ================================================================== -->
|
152
|
+
<plugin name="org.apache.forrest.plugin.output.inputModule"
|
153
|
+
type="output"
|
154
|
+
author="Apache Forrest Project"
|
155
|
+
website="http://forrest.apache.org/pluginDocs/plugins_0_80/org.apache.forrest.plugin.output.inputModule"
|
156
|
+
url="http://forrest.apache.org/plugins/"
|
157
|
+
version="0.1">
|
158
|
+
<description>
|
159
|
+
Enable Forrest to produce properties from an input-module.
|
160
|
+
</description>
|
161
|
+
<forrestVersion>0.8</forrestVersion>
|
162
|
+
</plugin>
|
163
|
+
<plugin name="org.apache.forrest.plugin.output.pdf"
|
164
|
+
type="output"
|
165
|
+
author="Apache Forrest Project"
|
166
|
+
website="http://forrest.apache.org/pluginDocs/plugins_0_80/org.apache.forrest.plugin.output.pdf"
|
167
|
+
url="http://forrest.apache.org/plugins/"
|
168
|
+
version="0.2">
|
169
|
+
<description>
|
170
|
+
Enable Forrest documents to be output in PDF format.
|
171
|
+
</description>
|
172
|
+
<forrestVersion>0.8</forrestVersion>
|
173
|
+
</plugin>
|
174
|
+
<plugin name="org.apache.forrest.plugin.output.POD"
|
175
|
+
type="output"
|
176
|
+
author="Apache Forrest Project"
|
177
|
+
website="http://forrest.apache.org/pluginDocs/plugins_0_80/org.apache.forrest.plugin.output.POD"
|
178
|
+
url="http://forrest.apache.org/plugins/"
|
179
|
+
version="0.2">
|
180
|
+
<description>
|
181
|
+
Enable Forrest documents to be output in Plain Old Documentation (POD)
|
182
|
+
format.
|
183
|
+
</description>
|
184
|
+
<forrestVersion>0.8</forrestVersion>
|
185
|
+
</plugin>
|
186
|
+
<plugin name="org.apache.forrest.plugin.output.Text"
|
187
|
+
type="output"
|
188
|
+
author="Apache Forrest Project"
|
189
|
+
website="http://forrest.apache.org/pluginDocs/plugins_0_80/org.apache.forrest.plugin.output.Text"
|
190
|
+
url="http://forrest.apache.org/plugins/"
|
191
|
+
version="0.2">
|
192
|
+
<description>
|
193
|
+
Enable Forrest documents to be output in Text format.
|
194
|
+
</description>
|
195
|
+
<forrestVersion>0.8</forrestVersion>
|
196
|
+
</plugin>
|
197
|
+
<plugin name="s5"
|
198
|
+
type="output"
|
199
|
+
author="Ross Gardler"
|
200
|
+
website="http://forrest.apache.org/~rgardler/testingGround/forrestPlugins/s5"
|
201
|
+
url="http://www.apache.org/~rgardler/testingGround/forrestPlugins/"
|
202
|
+
version="0.1">
|
203
|
+
<description>
|
204
|
+
Create S5: A Simple Standards-Based Slide Show System presentations from
|
205
|
+
xdocs.
|
206
|
+
</description>
|
207
|
+
<forrestVersion>0.7</forrestVersion>
|
208
|
+
</plugin>
|
209
|
+
<!-- ================================================================== -->
|
210
|
+
<!-- Internal Plugins -->
|
211
|
+
<!-- ================================================================== -->
|
212
|
+
</plugins>
|
@@ -0,0 +1,252 @@
|
|
1
|
+
<?xml version="1.0"?>
|
2
|
+
<!--
|
3
|
+
Licensed to the Apache Software Foundation (ASF) under one or more
|
4
|
+
contributor license agreements. See the NOTICE file distributed with
|
5
|
+
this work for additional information regarding copyright ownership.
|
6
|
+
The ASF licenses this file to You under the Apache License, Version 2.0
|
7
|
+
(the "License"); you may not use this file except in compliance with
|
8
|
+
the License. You may obtain a copy of the License at
|
9
|
+
|
10
|
+
http://www.apache.org/licenses/LICENSE-2.0
|
11
|
+
|
12
|
+
Unless required by applicable law or agreed to in writing, software
|
13
|
+
distributed under the License is distributed on an "AS IS" BASIS,
|
14
|
+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
15
|
+
See the License for the specific language governing permissions and
|
16
|
+
limitations under the License.
|
17
|
+
-->
|
18
|
+
<!DOCTYPE plugins [
|
19
|
+
<!ENTITY % links.att 'name CDATA #REQUIRED'>
|
20
|
+
<!ENTITY % link.att 'name CDATA #REQUIRED href CDATA #REQUIRED'>
|
21
|
+
<!ELEMENT plugins (plugin*)>
|
22
|
+
<!ATTLIST plugins type CDATA #REQUIRED>
|
23
|
+
<!ELEMENT plugin (description, forrestVersion)>
|
24
|
+
<!ATTLIST plugin name CDATA #REQUIRED
|
25
|
+
type (input|output|internal) #REQUIRED
|
26
|
+
url CDATA #REQUIRED
|
27
|
+
author CDATA #REQUIRED
|
28
|
+
website CDATA #IMPLIED
|
29
|
+
version CDATA #IMPLIED>
|
30
|
+
<!ELEMENT description (#PCDATA)>
|
31
|
+
<!ELEMENT forrestVersion (#PCDATA)>
|
32
|
+
]>
|
33
|
+
<plugins type="whiteboard">
|
34
|
+
<!-- ================================================================== -->
|
35
|
+
<!-- Input Plugins -->
|
36
|
+
<!-- ================================================================== -->
|
37
|
+
<plugin name="org.apache.forrest.plugin.input.citations"
|
38
|
+
type="input"
|
39
|
+
author="Apache Forrest Project"
|
40
|
+
website="http://forrest.apache.org/pluginDocs/plugins_0_80/org.apache.forrest.plugin.input.citations/"
|
41
|
+
url="http://forrest.apache.org/plugins"
|
42
|
+
version="0.1">
|
43
|
+
<description>
|
44
|
+
List of citations.
|
45
|
+
</description>
|
46
|
+
<forrestVersion>0.8</forrestVersion>
|
47
|
+
</plugin>
|
48
|
+
<plugin name="org.apache.forrest.plugin.input.Daisy"
|
49
|
+
type="input"
|
50
|
+
author="Apache Forrest Project"
|
51
|
+
website="http://forrest.apache.org/pluginDocs/plugins_0_80/org.apache.forrest.plugin.input.Daisy/"
|
52
|
+
url="http://forrest.apache.org/plugins"
|
53
|
+
version="0.1">
|
54
|
+
<description>
|
55
|
+
Allow content to be included from a Daisy CMS repository.
|
56
|
+
</description>
|
57
|
+
<forrestVersion>0.8</forrestVersion>
|
58
|
+
</plugin>
|
59
|
+
<plugin name="org.apache.forrest.plugin.input.doap"
|
60
|
+
type="input"
|
61
|
+
author="Apache Forrest Project"
|
62
|
+
website="http://forrest.apache.org/pluginDocs/plugins_0_80/org.apache.forrest.plugin.input.doap/"
|
63
|
+
url="http://forrest.apache.org/plugins"
|
64
|
+
version="0.1">
|
65
|
+
<description>
|
66
|
+
Embed DOAP files in forrest content objects.
|
67
|
+
</description>
|
68
|
+
<forrestVersion>0.8</forrestVersion>
|
69
|
+
</plugin>
|
70
|
+
<plugin name="org.apache.forrest.plugin.input.glossary"
|
71
|
+
type="input"
|
72
|
+
author="Apache Forrest Project"
|
73
|
+
website="http://forrest.apache.org/pluginDocs/plugins_0_80/org.apache.forrest.plugin.input.glossary/"
|
74
|
+
url="http://forrest.apache.org/plugins"
|
75
|
+
version="0.1">
|
76
|
+
<description>
|
77
|
+
Enable glossary: a list of technical terms and definitions.
|
78
|
+
</description>
|
79
|
+
<forrestVersion>0.8</forrestVersion>
|
80
|
+
</plugin>
|
81
|
+
<plugin name="org.apache.forrest.plugin.input.logs"
|
82
|
+
type="input"
|
83
|
+
author="Apache Forrest Project"
|
84
|
+
website="http://forrest.apache.org/pluginDocs/plugins_0_70/org.apache.forrest.plugin.input.logs"
|
85
|
+
url="http://forrest.apache.org/plugins"
|
86
|
+
version="0.1">
|
87
|
+
<description>
|
88
|
+
Embed log file output in Forrest sites. If Forrest is running in a dynamic
|
89
|
+
environment, then pages can be updated to show recent changes in the log
|
90
|
+
whenever required.
|
91
|
+
</description>
|
92
|
+
<forrestVersion>0.7</forrestVersion>
|
93
|
+
</plugin>
|
94
|
+
<plugin name="org.apache.forrest.plugin.input.odt"
|
95
|
+
type="input"
|
96
|
+
author="Apache Forrest Project"
|
97
|
+
website="http://forrest.apache.org/pluginDocs/plugins_0_80/org.apache.forrest.plugin.input.odt"
|
98
|
+
url="http://forrest.apache.org/plugins"
|
99
|
+
version="0.1">
|
100
|
+
<description>
|
101
|
+
Use OpenDocument Writer files (*.odt) as input sources.
|
102
|
+
</description>
|
103
|
+
<forrestVersion>0.8</forrestVersion>
|
104
|
+
</plugin>
|
105
|
+
<plugin name="org.apache.forrest.plugin.input.Resume"
|
106
|
+
type="input"
|
107
|
+
author="Apache Forrest Project"
|
108
|
+
website="http://forrest.apache.org/pluginDocs/plugins_0_80/org.apache.forrest.plugin.input.Resume"
|
109
|
+
url="http://forrest.apache.org/plugins"
|
110
|
+
version="0.1">
|
111
|
+
<description>
|
112
|
+
Basic support for Resumes, renders a single resume, or alloes sorting of a
|
113
|
+
number of resumes on skill.
|
114
|
+
</description>
|
115
|
+
<forrestVersion>0.8</forrestVersion>
|
116
|
+
</plugin>
|
117
|
+
<plugin name="org.apache.forrest.plugin.input.serverStatus"
|
118
|
+
type="input"
|
119
|
+
author="Apache Forrest Project"
|
120
|
+
website="http://forrest.apache.org/pluginDocs/plugins_0_80/org.apache.forrest.plugin.input.serverStatus"
|
121
|
+
url="http://forrest.apache.org/plugins"
|
122
|
+
version="0.1">
|
123
|
+
<description>
|
124
|
+
Provides a list of the Cocoon cache and other server status information.
|
125
|
+
</description>
|
126
|
+
<forrestVersion>0.8</forrestVersion>
|
127
|
+
</plugin>
|
128
|
+
<!-- ================================================================== -->
|
129
|
+
<!-- Output Plugins -->
|
130
|
+
<!-- ================================================================== -->
|
131
|
+
<plugin name="org.apache.forrest.plugin.output.Anakia"
|
132
|
+
type="output"
|
133
|
+
author="Apache Forrest Project"
|
134
|
+
website="http://forrest.apache.org/pluginDocs/plugins_0_80/org.apache.forrest.plugin.output.Anakia/"
|
135
|
+
url="http://forrest.apache.org/plugins"
|
136
|
+
version="0.1">
|
137
|
+
<description>
|
138
|
+
Produce output in Anakia "xdoc" format.
|
139
|
+
</description>
|
140
|
+
<forrestVersion>0.8</forrestVersion>
|
141
|
+
</plugin>
|
142
|
+
<plugin name="org.apache.forrest.plugin.output.Chart"
|
143
|
+
type="output"
|
144
|
+
author="Apache Forrest Project"
|
145
|
+
website="http://forrest.apache.org/pluginDocs/plugins_0_70/org.apache.forrest.plugin.output.Chart"
|
146
|
+
url="http://forrest.apache.org/plugins/"
|
147
|
+
version="0.1">
|
148
|
+
<description>
|
149
|
+
Charting plugin that utilises JChart.
|
150
|
+
</description>
|
151
|
+
<forrestVersion>0.7</forrestVersion>
|
152
|
+
</plugin>
|
153
|
+
<plugin name="org.apache.forrest.plugin.input.ecs"
|
154
|
+
type="input"
|
155
|
+
author="Apache Forrest Project"
|
156
|
+
website="http://forrest.apache.org/pluginDocs/plugins_0_80/org.apache.forrest.plugin.input.ecs/"
|
157
|
+
url="http://forrest.apache.org/plugins"
|
158
|
+
version="0.1">
|
159
|
+
<description>
|
160
|
+
Process responses from Amaozons E-Commerce System web services.
|
161
|
+
</description>
|
162
|
+
<forrestVersion>0.8</forrestVersion>
|
163
|
+
</plugin>
|
164
|
+
<plugin name="org.apache.forrest.plugin.output.htmlArea"
|
165
|
+
type="output"
|
166
|
+
author="Apache Forrest Project"
|
167
|
+
website="http://forrest.apache.org/pluginDocs/plugins_0_70/org.apache.forrest.plugin.output.htmlArea"
|
168
|
+
url="http://forrest.apache.org/plugins/"
|
169
|
+
version="0.1">
|
170
|
+
<description>
|
171
|
+
WYSIWYG editing of HTML documents (requires Forrest to be running
|
172
|
+
dynamically).
|
173
|
+
</description>
|
174
|
+
<forrestVersion>0.7</forrestVersion>
|
175
|
+
</plugin>
|
176
|
+
<plugin name="org.apache.forrest.plugin.output.voice"
|
177
|
+
type="output"
|
178
|
+
author="Apache Forrest Project"
|
179
|
+
website="http://forrest.apache.org/pluginDocs/plugins_0_80/org.apache.forrest.plugin.output.voice"
|
180
|
+
url="http://forrest.apache.org/plugins/"
|
181
|
+
version="0.1">
|
182
|
+
<description>
|
183
|
+
Add voiceXML content to a Forrest page. This allows the page to be read by
|
184
|
+
a voice synthesiser and navigated with voice commands.
|
185
|
+
</description>
|
186
|
+
<forrestVersion>0.8</forrestVersion>
|
187
|
+
</plugin>
|
188
|
+
<plugin name="org.apache.forrest.plugin.output.solr"
|
189
|
+
type="output"
|
190
|
+
author="Apache Forrest Project"
|
191
|
+
website="http://forrest.apache.org/pluginDocs/plugins_0_80/org.apache.forrest.plugin.output.solr"
|
192
|
+
url="http://forrest.apache.org/plugins/"
|
193
|
+
version="0.1">
|
194
|
+
<description>
|
195
|
+
Generates solr documents from xdos. Further when run with the dispatcher
|
196
|
+
it provides a GUI to manage your project in solr and a search interface to
|
197
|
+
search your solr server.
|
198
|
+
</description>
|
199
|
+
<forrestVersion>0.8</forrestVersion>
|
200
|
+
</plugin>
|
201
|
+
<plugin name="org.apache.forrest.themes.core"
|
202
|
+
type="output"
|
203
|
+
author="Apache Forrest Project"
|
204
|
+
website="http://forrest.apache.org/pluginDocs/plugins_0_80/org.apache.forrest.themes.core"
|
205
|
+
url="http://forrest.apache.org/plugins/"
|
206
|
+
version="0.1">
|
207
|
+
<description>
|
208
|
+
The core theme package for the dispatcher.
|
209
|
+
</description>
|
210
|
+
<forrestVersion>0.8</forrestVersion>
|
211
|
+
</plugin>
|
212
|
+
<!-- ================================================================== -->
|
213
|
+
<!-- Internal Plugins -->
|
214
|
+
<!-- ================================================================== -->
|
215
|
+
<plugin name="org.apache.forrest.plugin.internal.IMSManifest"
|
216
|
+
type="internal"
|
217
|
+
author="Apache Forrest Project"
|
218
|
+
website="http://forrest.apache.org/pluginDocs/plugins_0_70/org.apache.forrest.plugin.internal.IMSManifest"
|
219
|
+
url="http://forrest.apache.org/plugins/"
|
220
|
+
version="0.1">
|
221
|
+
<description>
|
222
|
+
Use an IMS Manifest file to manage site structure. Generates site.xml and
|
223
|
+
tabs.xml from an imsmanifest.xml file when one is available. Also enables
|
224
|
+
content in one Content Package to be embedded in another.
|
225
|
+
</description>
|
226
|
+
<forrestVersion>0.7</forrestVersion>
|
227
|
+
</plugin>
|
228
|
+
<plugin name="org.apache.forrest.plugin.internal.NoteTaking"
|
229
|
+
type="internal"
|
230
|
+
author="Apache Forrest Project"
|
231
|
+
website="http://forrest.apache.org/pluginDocs/plugins_0_80/org.apache.forrest.plugin.NoteTaking"
|
232
|
+
url="http://forrest.apache.org/plugins/"
|
233
|
+
version="0.1">
|
234
|
+
<description>
|
235
|
+
Provides facilities for adding notes to pages when Forrest is run in
|
236
|
+
dynamic mode.
|
237
|
+
</description>
|
238
|
+
<forrestVersion>0.8</forrestVersion>
|
239
|
+
</plugin>
|
240
|
+
<plugin name="org.apache.forrest.plugin.internal.dispatcher"
|
241
|
+
type="internal"
|
242
|
+
author="Apache Forrest Project"
|
243
|
+
website="http://forrest.apache.org/pluginDocs/plugins_0_80/org.apache.forrest.plugin.internal.dispatcher"
|
244
|
+
url="http://forrest.apache.org/plugins/"
|
245
|
+
version="0.1">
|
246
|
+
<description>
|
247
|
+
Enable Forrest to use page-specific views and contracts. Next generation
|
248
|
+
skinning.
|
249
|
+
</description>
|
250
|
+
<forrestVersion>0.8</forrestVersion>
|
251
|
+
</plugin>
|
252
|
+
</plugins>
|