You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@uima.apache.org by mb...@apache.org on 2007/01/04 16:28:22 UTC

svn commit: r492607 [1/2] - in /incubator/uima/sandbox/trunk/SnowballAnnotator: desc/ src/test/ src/test/java/ src/test/java/org/ src/test/java/org/apache/ src/test/java/org/apache/uima/ src/test/java/org/apache/uima/annotator/ src/test/resources/

Author: mbaessler
Date: Thu Jan  4 07:28:21 2007
New Revision: 492607

URL: http://svn.apache.org/viewvc?view=rev&rev=492607
Log:
JIRA ticket UIMA-154 (https://issues.apache.org/jira/browse/UIMA-154)

add testcases for SnowballAnnotator

Added:
    incubator/uima/sandbox/trunk/SnowballAnnotator/src/test/
    incubator/uima/sandbox/trunk/SnowballAnnotator/src/test/java/
    incubator/uima/sandbox/trunk/SnowballAnnotator/src/test/java/org/
    incubator/uima/sandbox/trunk/SnowballAnnotator/src/test/java/org/apache/
    incubator/uima/sandbox/trunk/SnowballAnnotator/src/test/java/org/apache/uima/
    incubator/uima/sandbox/trunk/SnowballAnnotator/src/test/java/org/apache/uima/annotator/
    incubator/uima/sandbox/trunk/SnowballAnnotator/src/test/java/org/apache/uima/annotator/SnowballAnnotatorTest.java
    incubator/uima/sandbox/trunk/SnowballAnnotator/src/test/resources/
    incubator/uima/sandbox/trunk/SnowballAnnotator/src/test/resources/englishRef.txt
    incubator/uima/sandbox/trunk/SnowballAnnotator/src/test/resources/englishXCAS.xml
    incubator/uima/sandbox/trunk/SnowballAnnotator/src/test/resources/typesystem.xml
Modified:
    incubator/uima/sandbox/trunk/SnowballAnnotator/desc/SnowballAnnotator.xml

Modified: incubator/uima/sandbox/trunk/SnowballAnnotator/desc/SnowballAnnotator.xml
URL: http://svn.apache.org/viewvc/incubator/uima/sandbox/trunk/SnowballAnnotator/desc/SnowballAnnotator.xml?view=diff&rev=492607&r1=492606&r2=492607
==============================================================================
--- incubator/uima/sandbox/trunk/SnowballAnnotator/desc/SnowballAnnotator.xml (original)
+++ incubator/uima/sandbox/trunk/SnowballAnnotator/desc/SnowballAnnotator.xml Thu Jan  4 07:28:21 2007
@@ -27,7 +27,7 @@
    <annotatorImplementationName>org.apache.uima.annotator.SnowballAnnotator</annotatorImplementationName>
 
    <analysisEngineMetaData>
-      <name>WhitespaceTokenizer</name>
+      <name>SnowballAnnotator</name>
       <description></description>
       <version>1.0</version>
       <vendor></vendor>

Added: incubator/uima/sandbox/trunk/SnowballAnnotator/src/test/java/org/apache/uima/annotator/SnowballAnnotatorTest.java
URL: http://svn.apache.org/viewvc/incubator/uima/sandbox/trunk/SnowballAnnotator/src/test/java/org/apache/uima/annotator/SnowballAnnotatorTest.java?view=auto&rev=492607
==============================================================================
--- incubator/uima/sandbox/trunk/SnowballAnnotator/src/test/java/org/apache/uima/annotator/SnowballAnnotatorTest.java (added)
+++ incubator/uima/sandbox/trunk/SnowballAnnotator/src/test/java/org/apache/uima/annotator/SnowballAnnotatorTest.java Thu Jan  4 07:28:21 2007
@@ -0,0 +1,72 @@
+/*
+ * 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.
+ */
+
+package org.apache.uima.annotator;
+
+import java.io.File;
+
+import junit.framework.TestCase;
+
+import org.apache.uima.cas.CAS;
+import org.apache.uima.test.junit_extension.AnnotatorTester;
+import org.apache.uima.test.junit_extension.JUnitExtension;
+
+
+/**
+ * Testclass for the SnowballAnnotator.
+ */
+public class SnowballAnnotatorTest extends TestCase
+{
+	private AnnotatorTester annotTester;
+	
+	/**
+	 * @see junit.framework.TestCase#setUp()
+	 */
+	protected void setUp() throws Exception
+	{
+		this.annotTester = new AnnotatorTester(JUnitExtension.getFile("SnowballAnnotator.xml"));
+	}
+
+    /* (non-Javadoc)
+     * @see junit.framework.TestCase#tearDown()
+     */
+    protected void tearDown() throws Exception
+    {
+      super.tearDown();
+      this.annotTester = null;
+    }
+    
+
+  public void testAnnotatorEnglish() throws Exception
+  {
+    //get cas from xcas file
+    CAS cas = AnnotatorTester.getCASfromXCAS(JUnitExtension.getFile("typesystem.xml"), JUnitExtension.getFile("englishXCAS.xml"));
+    
+    //execute sample text
+    this.annotTester.performTest(cas);
+    
+    //define result interested in
+    String[] tofs = {"org.apache.uima.TokenAnnotation", "org.apache.uima.TokenAnnotation:stemm"};
+    
+    //compare results
+    File outputFile = new File(JUnitExtension.getFile("englishRef.txt").getParent(), "englishRef_testoutput.txt") ;
+    AnnotatorTester.checkResult(cas, tofs, JUnitExtension.getFile("englishRef.txt"), outputFile);   
+  }
+
+}

Added: incubator/uima/sandbox/trunk/SnowballAnnotator/src/test/resources/englishRef.txt
URL: http://svn.apache.org/viewvc/incubator/uima/sandbox/trunk/SnowballAnnotator/src/test/resources/englishRef.txt?view=auto&rev=492607
==============================================================================
--- incubator/uima/sandbox/trunk/SnowballAnnotator/src/test/resources/englishRef.txt (added)
+++ incubator/uima/sandbox/trunk/SnowballAnnotator/src/test/resources/englishRef.txt Thu Jan  4 07:28:21 2007
@@ -0,0 +1,601 @@
+TokenAnnotation(0,6): Apache  { stemm=Apach }
+TokenAnnotation(7,14): License  { stemm=Licens }
+TokenAnnotation(42,49): Version  { stemm=Version }
+TokenAnnotation(50,51): 2  { stemm=2 }
+TokenAnnotation(51,52): .  { stemm=. }
+TokenAnnotation(52,53): 0  { stemm=0 }
+TokenAnnotation(53,54): ,  { stemm=, }
+TokenAnnotation(55,62): January  { stemm=Januari }
+TokenAnnotation(63,67): 2004  { stemm=2004 }
+TokenAnnotation(92,96): http  { stemm=http }
+TokenAnnotation(96,97): :  { stemm=: }
+TokenAnnotation(97,98): /  { stemm=/ }
+TokenAnnotation(98,99): /  { stemm=/ }
+TokenAnnotation(99,102): www  { stemm=www }
+TokenAnnotation(102,103): .  { stemm=. }
+TokenAnnotation(103,109): apache  { stemm=apach }
+TokenAnnotation(109,110): .  { stemm=. }
+TokenAnnotation(110,113): org  { stemm=org }
+TokenAnnotation(113,114): /  { stemm=/ }
+TokenAnnotation(114,122): licenses  { stemm=licens }
+TokenAnnotation(122,123): /  { stemm=/ }
+TokenAnnotation(128,133): TERMS  { stemm=TERMS }
+TokenAnnotation(134,137): AND  { stemm=AND }
+TokenAnnotation(138,148): CONDITIONS  { stemm=CONDITIONS }
+TokenAnnotation(149,152): FOR  { stemm=FOR }
+TokenAnnotation(153,156): USE  { stemm=USE }
+TokenAnnotation(156,157): ,  { stemm=, }
+TokenAnnotation(158,170): REPRODUCTION  { stemm=REPRODUCTION }
+TokenAnnotation(170,171): ,  { stemm=, }
+TokenAnnotation(172,175): AND  { stemm=AND }
+TokenAnnotation(176,188): DISTRIBUTION  { stemm=DISTRIBUTION }
+TokenAnnotation(193,194): 1  { stemm=1 }
+TokenAnnotation(194,195): .  { stemm=. }
+TokenAnnotation(196,207): Definitions  { stemm=Definit }
+TokenAnnotation(207,208): .  { stemm=. }
+TokenAnnotation(216,217): "  { stemm=" }
+TokenAnnotation(217,224): License  { stemm=Licens }
+TokenAnnotation(224,225): "  { stemm=" }
+TokenAnnotation(226,231): shall  { stemm=shall }
+TokenAnnotation(232,236): mean  { stemm=mean }
+TokenAnnotation(237,240): the  { stemm=the }
+TokenAnnotation(241,246): terms  { stemm=term }
+TokenAnnotation(247,250): and  { stemm=and }
+TokenAnnotation(251,261): conditions  { stemm=condit }
+TokenAnnotation(262,265): for  { stemm=for }
+TokenAnnotation(266,269): use  { stemm=use }
+TokenAnnotation(269,270): ,  { stemm=, }
+TokenAnnotation(271,283): reproduction  { stemm=reproduct }
+TokenAnnotation(283,284): ,  { stemm=, }
+TokenAnnotation(291,294): and  { stemm=and }
+TokenAnnotation(295,307): distribution  { stemm=distribut }
+TokenAnnotation(308,310): as  { stemm=as }
+TokenAnnotation(311,318): defined  { stemm=defin }
+TokenAnnotation(319,321): by  { stemm=by }
+TokenAnnotation(322,330): Sections  { stemm=Section }
+TokenAnnotation(331,332): 1  { stemm=1 }
+TokenAnnotation(333,340): through  { stemm=through }
+TokenAnnotation(341,342): 9  { stemm=9 }
+TokenAnnotation(343,345): of  { stemm=of }
+TokenAnnotation(346,350): this  { stemm=this }
+TokenAnnotation(351,359): document  { stemm=document }
+TokenAnnotation(359,360): .  { stemm=. }
+TokenAnnotation(368,369): "  { stemm=" }
+TokenAnnotation(369,377): Licensor  { stemm=Licensor }
+TokenAnnotation(377,378): "  { stemm=" }
+TokenAnnotation(379,384): shall  { stemm=shall }
+TokenAnnotation(385,389): mean  { stemm=mean }
+TokenAnnotation(390,393): the  { stemm=the }
+TokenAnnotation(394,403): copyright  { stemm=copyright }
+TokenAnnotation(404,409): owner  { stemm=owner }
+TokenAnnotation(410,412): or  { stemm=or }
+TokenAnnotation(413,419): entity  { stemm=entiti }
+TokenAnnotation(420,430): authorized  { stemm=author }
+TokenAnnotation(431,433): by  { stemm=by }
+TokenAnnotation(440,443): the  { stemm=the }
+TokenAnnotation(444,453): copyright  { stemm=copyright }
+TokenAnnotation(454,459): owner  { stemm=owner }
+TokenAnnotation(460,464): that  { stemm=that }
+TokenAnnotation(465,467): is  { stemm=is }
+TokenAnnotation(468,476): granting  { stemm=grant }
+TokenAnnotation(477,480): the  { stemm=the }
+TokenAnnotation(481,488): License  { stemm=Licens }
+TokenAnnotation(488,489): .  { stemm=. }
+TokenAnnotation(497,498): "  { stemm=" }
+TokenAnnotation(498,503): Legal  { stemm=Legal }
+TokenAnnotation(504,510): Entity  { stemm=Entiti }
+TokenAnnotation(510,511): "  { stemm=" }
+TokenAnnotation(512,517): shall  { stemm=shall }
+TokenAnnotation(518,522): mean  { stemm=mean }
+TokenAnnotation(523,526): the  { stemm=the }
+TokenAnnotation(527,532): union  { stemm=union }
+TokenAnnotation(533,535): of  { stemm=of }
+TokenAnnotation(536,539): the  { stemm=the }
+TokenAnnotation(540,546): acting  { stemm=act }
+TokenAnnotation(547,553): entity  { stemm=entiti }
+TokenAnnotation(554,557): and  { stemm=and }
+TokenAnnotation(558,561): all  { stemm=all }
+TokenAnnotation(568,573): other  { stemm=other }
+TokenAnnotation(574,582): entities  { stemm=entiti }
+TokenAnnotation(583,587): that  { stemm=that }
+TokenAnnotation(588,595): control  { stemm=control }
+TokenAnnotation(595,596): ,  { stemm=, }
+TokenAnnotation(597,600): are  { stemm=are }
+TokenAnnotation(601,611): controlled  { stemm=control }
+TokenAnnotation(612,614): by  { stemm=by }
+TokenAnnotation(614,615): ,  { stemm=, }
+TokenAnnotation(616,618): or  { stemm=or }
+TokenAnnotation(619,622): are  { stemm=are }
+TokenAnnotation(623,628): under  { stemm=under }
+TokenAnnotation(629,635): common  { stemm=common }
+TokenAnnotation(642,649): control  { stemm=control }
+TokenAnnotation(650,654): with  { stemm=with }
+TokenAnnotation(655,659): that  { stemm=that }
+TokenAnnotation(660,666): entity  { stemm=entiti }
+TokenAnnotation(666,667): .  { stemm=. }
+TokenAnnotation(668,671): For  { stemm=For }
+TokenAnnotation(672,675): the  { stemm=the }
+TokenAnnotation(676,684): purposes  { stemm=purpos }
+TokenAnnotation(685,687): of  { stemm=of }
+TokenAnnotation(688,692): this  { stemm=this }
+TokenAnnotation(693,703): definition  { stemm=definit }
+TokenAnnotation(703,704): ,  { stemm=, }
+TokenAnnotation(711,712): "  { stemm=" }
+TokenAnnotation(712,719): control  { stemm=control }
+TokenAnnotation(719,720): "  { stemm=" }
+TokenAnnotation(721,726): means  { stemm=mean }
+TokenAnnotation(727,728): (  { stemm=( }
+TokenAnnotation(728,729): i  { stemm=i }
+TokenAnnotation(729,730): )  { stemm=) }
+TokenAnnotation(731,734): the  { stemm=the }
+TokenAnnotation(735,740): power  { stemm=power }
+TokenAnnotation(740,741): ,  { stemm=, }
+TokenAnnotation(742,748): direct  { stemm=direct }
+TokenAnnotation(749,751): or  { stemm=or }
+TokenAnnotation(752,760): indirect  { stemm=indirect }
+TokenAnnotation(760,761): ,  { stemm=, }
+TokenAnnotation(762,764): to  { stemm=to }
+TokenAnnotation(765,770): cause  { stemm=caus }
+TokenAnnotation(771,774): the  { stemm=the }
+TokenAnnotation(781,790): direction  { stemm=direct }
+TokenAnnotation(791,793): or  { stemm=or }
+TokenAnnotation(794,804): management  { stemm=manag }
+TokenAnnotation(805,807): of  { stemm=of }
+TokenAnnotation(808,812): such  { stemm=such }
+TokenAnnotation(813,819): entity  { stemm=entiti }
+TokenAnnotation(819,820): ,  { stemm=, }
+TokenAnnotation(821,828): whether  { stemm=whether }
+TokenAnnotation(829,831): by  { stemm=by }
+TokenAnnotation(832,840): contract  { stemm=contract }
+TokenAnnotation(841,843): or  { stemm=or }
+TokenAnnotation(850,859): otherwise  { stemm=otherwis }
+TokenAnnotation(859,860): ,  { stemm=, }
+TokenAnnotation(861,863): or  { stemm=or }
+TokenAnnotation(864,865): (  { stemm=( }
+TokenAnnotation(865,867): ii  { stemm=ii }
+TokenAnnotation(867,868): )  { stemm=) }
+TokenAnnotation(869,878): ownership  { stemm=ownership }
+TokenAnnotation(879,881): of  { stemm=of }
+TokenAnnotation(882,887): fifty  { stemm=fifti }
+TokenAnnotation(888,895): percent  { stemm=percent }
+TokenAnnotation(896,897): (  { stemm=( }
+TokenAnnotation(897,899): 50  { stemm=50 }
+TokenAnnotation(899,900): %  { stemm=% }
+TokenAnnotation(900,901): )  { stemm=) }
+TokenAnnotation(902,904): or  { stemm=or }
+TokenAnnotation(905,909): more  { stemm=more }
+TokenAnnotation(910,912): of  { stemm=of }
+TokenAnnotation(913,916): the  { stemm=the }
+TokenAnnotation(923,934): outstanding  { stemm=outstand }
+TokenAnnotation(935,941): shares  { stemm=share }
+TokenAnnotation(941,942): ,  { stemm=, }
+TokenAnnotation(943,945): or  { stemm=or }
+TokenAnnotation(946,947): (  { stemm=( }
+TokenAnnotation(947,950): iii  { stemm=iii }
+TokenAnnotation(950,951): )  { stemm=) }
+TokenAnnotation(952,962): beneficial  { stemm=benefici }
+TokenAnnotation(963,972): ownership  { stemm=ownership }
+TokenAnnotation(973,975): of  { stemm=of }
+TokenAnnotation(976,980): such  { stemm=such }
+TokenAnnotation(981,987): entity  { stemm=entiti }
+TokenAnnotation(987,988): .  { stemm=. }
+TokenAnnotation(996,997): "  { stemm=" }
+TokenAnnotation(997,1000): You  { stemm=You }
+TokenAnnotation(1000,1001): "  { stemm=" }
+TokenAnnotation(1002,1003): (  { stemm=( }
+TokenAnnotation(1003,1005): or  { stemm=or }
+TokenAnnotation(1006,1007): "  { stemm=" }
+TokenAnnotation(1007,1011): Your  { stemm=Your }
+TokenAnnotation(1011,1012): "  { stemm=" }
+TokenAnnotation(1012,1013): )  { stemm=) }
+TokenAnnotation(1014,1019): shall  { stemm=shall }
+TokenAnnotation(1020,1024): mean  { stemm=mean }
+TokenAnnotation(1025,1027): an  { stemm=an }
+TokenAnnotation(1028,1038): individual  { stemm=individu }
+TokenAnnotation(1039,1041): or  { stemm=or }
+TokenAnnotation(1042,1047): Legal  { stemm=Legal }
+TokenAnnotation(1048,1054): Entity  { stemm=Entiti }
+TokenAnnotation(1061,1071): exercising  { stemm=exercis }
+TokenAnnotation(1072,1083): permissions  { stemm=permiss }
+TokenAnnotation(1084,1091): granted  { stemm=grant }
+TokenAnnotation(1092,1094): by  { stemm=by }
+TokenAnnotation(1095,1099): this  { stemm=this }
+TokenAnnotation(1100,1107): License  { stemm=Licens }
+TokenAnnotation(1107,1108): .  { stemm=. }
+TokenAnnotation(1116,1117): "  { stemm=" }
+TokenAnnotation(1117,1123): Source  { stemm=Sourc }
+TokenAnnotation(1123,1124): "  { stemm=" }
+TokenAnnotation(1125,1129): form  { stemm=form }
+TokenAnnotation(1130,1135): shall  { stemm=shall }
+TokenAnnotation(1136,1140): mean  { stemm=mean }
+TokenAnnotation(1141,1144): the  { stemm=the }
+TokenAnnotation(1145,1154): preferred  { stemm=prefer }
+TokenAnnotation(1155,1159): form  { stemm=form }
+TokenAnnotation(1160,1163): for  { stemm=for }
+TokenAnnotation(1164,1170): making  { stemm=make }
+TokenAnnotation(1171,1184): modifications  { stemm=modif }
+TokenAnnotation(1184,1185): ,  { stemm=, }
+TokenAnnotation(1192,1201): including  { stemm=includ }
+TokenAnnotation(1202,1205): but  { stemm=but }
+TokenAnnotation(1206,1209): not  { stemm=not }
+TokenAnnotation(1210,1217): limited  { stemm=limit }
+TokenAnnotation(1218,1220): to  { stemm=to }
+TokenAnnotation(1221,1229): software  { stemm=softwar }
+TokenAnnotation(1230,1236): source  { stemm=sourc }
+TokenAnnotation(1237,1241): code  { stemm=code }
+TokenAnnotation(1241,1242): ,  { stemm=, }
+TokenAnnotation(1243,1256): documentation  { stemm=document }
+TokenAnnotation(1263,1269): source  { stemm=sourc }
+TokenAnnotation(1269,1270): ,  { stemm=, }
+TokenAnnotation(1271,1274): and  { stemm=and }
+TokenAnnotation(1275,1288): configuration  { stemm=configur }
+TokenAnnotation(1289,1294): files  { stemm=file }
+TokenAnnotation(1294,1295): .  { stemm=. }
+TokenAnnotation(1303,1304): "  { stemm=" }
+TokenAnnotation(1304,1310): Object  { stemm=Object }
+TokenAnnotation(1310,1311): "  { stemm=" }
+TokenAnnotation(1312,1316): form  { stemm=form }
+TokenAnnotation(1317,1322): shall  { stemm=shall }
+TokenAnnotation(1323,1327): mean  { stemm=mean }
+TokenAnnotation(1328,1331): any  { stemm=ani }
+TokenAnnotation(1332,1336): form  { stemm=form }
+TokenAnnotation(1337,1346): resulting  { stemm=result }
+TokenAnnotation(1347,1351): from  { stemm=from }
+TokenAnnotation(1352,1362): mechanical  { stemm=mechan }
+TokenAnnotation(1369,1383): transformation  { stemm=transform }
+TokenAnnotation(1384,1386): or  { stemm=or }
+TokenAnnotation(1387,1398): translation  { stemm=translat }
+TokenAnnotation(1399,1401): of  { stemm=of }
+TokenAnnotation(1402,1403): a  { stemm=a }
+TokenAnnotation(1404,1410): Source  { stemm=Sourc }
+TokenAnnotation(1411,1415): form  { stemm=form }
+TokenAnnotation(1415,1416): ,  { stemm=, }
+TokenAnnotation(1417,1426): including  { stemm=includ }
+TokenAnnotation(1427,1430): but  { stemm=but }
+TokenAnnotation(1437,1440): not  { stemm=not }
+TokenAnnotation(1441,1448): limited  { stemm=limit }
+TokenAnnotation(1449,1451): to  { stemm=to }
+TokenAnnotation(1452,1460): compiled  { stemm=compil }
+TokenAnnotation(1461,1467): object  { stemm=object }
+TokenAnnotation(1468,1472): code  { stemm=code }
+TokenAnnotation(1472,1473): ,  { stemm=, }
+TokenAnnotation(1474,1483): generated  { stemm=generat }
+TokenAnnotation(1484,1497): documentation  { stemm=document }
+TokenAnnotation(1497,1498): ,  { stemm=, }
+TokenAnnotation(1505,1508): and  { stemm=and }
+TokenAnnotation(1509,1520): conversions  { stemm=convers }
+TokenAnnotation(1521,1523): to  { stemm=to }
+TokenAnnotation(1524,1529): other  { stemm=other }
+TokenAnnotation(1530,1535): media  { stemm=media }
+TokenAnnotation(1536,1541): types  { stemm=type }
+TokenAnnotation(1541,1542): .  { stemm=. }
+TokenAnnotation(1550,1551): "  { stemm=" }
+TokenAnnotation(1551,1555): Work  { stemm=Work }
+TokenAnnotation(1555,1556): "  { stemm=" }
+TokenAnnotation(1557,1562): shall  { stemm=shall }
+TokenAnnotation(1563,1567): mean  { stemm=mean }
+TokenAnnotation(1568,1571): the  { stemm=the }
+TokenAnnotation(1572,1576): work  { stemm=work }
+TokenAnnotation(1577,1579): of  { stemm=of }
+TokenAnnotation(1580,1590): authorship  { stemm=authorship }
+TokenAnnotation(1590,1591): ,  { stemm=, }
+TokenAnnotation(1592,1599): whether  { stemm=whether }
+TokenAnnotation(1600,1602): in  { stemm=in }
+TokenAnnotation(1603,1609): Source  { stemm=Sourc }
+TokenAnnotation(1610,1612): or  { stemm=or }
+TokenAnnotation(1619,1625): Object  { stemm=Object }
+TokenAnnotation(1626,1630): form  { stemm=form }
+TokenAnnotation(1630,1631): ,  { stemm=, }
+TokenAnnotation(1632,1636): made  { stemm=made }
+TokenAnnotation(1637,1646): available  { stemm=avail }
+TokenAnnotation(1647,1652): under  { stemm=under }
+TokenAnnotation(1653,1656): the  { stemm=the }
+TokenAnnotation(1657,1664): License  { stemm=Licens }
+TokenAnnotation(1664,1665): ,  { stemm=, }
+TokenAnnotation(1666,1668): as  { stemm=as }
+TokenAnnotation(1669,1678): indicated  { stemm=indic }
+TokenAnnotation(1679,1681): by  { stemm=by }
+TokenAnnotation(1682,1683): a  { stemm=a }
+TokenAnnotation(1690,1699): copyright  { stemm=copyright }
+TokenAnnotation(1700,1706): notice  { stemm=notic }
+TokenAnnotation(1707,1711): that  { stemm=that }
+TokenAnnotation(1712,1714): is  { stemm=is }
+TokenAnnotation(1715,1723): included  { stemm=includ }
+TokenAnnotation(1724,1726): in  { stemm=in }
+TokenAnnotation(1727,1729): or  { stemm=or }
+TokenAnnotation(1730,1738): attached  { stemm=attach }
+TokenAnnotation(1739,1741): to  { stemm=to }
+TokenAnnotation(1742,1745): the  { stemm=the }
+TokenAnnotation(1746,1750): work  { stemm=work }
+TokenAnnotation(1757,1758): (  { stemm=( }
+TokenAnnotation(1758,1760): an  { stemm=an }
+TokenAnnotation(1761,1768): example  { stemm=exampl }
+TokenAnnotation(1769,1771): is  { stemm=is }
+TokenAnnotation(1772,1780): provided  { stemm=provid }
+TokenAnnotation(1781,1783): in  { stemm=in }
+TokenAnnotation(1784,1787): the  { stemm=the }
+TokenAnnotation(1788,1796): Appendix  { stemm=Appendix }
+TokenAnnotation(1797,1802): below  { stemm=below }
+TokenAnnotation(1802,1803): )  { stemm=) }
+TokenAnnotation(1803,1804): .  { stemm=. }
+TokenAnnotation(1812,1813): "  { stemm=" }
+TokenAnnotation(1813,1823): Derivative  { stemm=Deriv }
+TokenAnnotation(1824,1829): Works  { stemm=Work }
+TokenAnnotation(1829,1830): "  { stemm=" }
+TokenAnnotation(1831,1836): shall  { stemm=shall }
+TokenAnnotation(1837,1841): mean  { stemm=mean }
+TokenAnnotation(1842,1845): any  { stemm=ani }
+TokenAnnotation(1846,1850): work  { stemm=work }
+TokenAnnotation(1850,1851): ,  { stemm=, }
+TokenAnnotation(1852,1859): whether  { stemm=whether }
+TokenAnnotation(1860,1862): in  { stemm=in }
+TokenAnnotation(1863,1869): Source  { stemm=Sourc }
+TokenAnnotation(1870,1872): or  { stemm=or }
+TokenAnnotation(1873,1879): Object  { stemm=Object }
+TokenAnnotation(1886,1890): form  { stemm=form }
+TokenAnnotation(1890,1891): ,  { stemm=, }
+TokenAnnotation(1892,1896): that  { stemm=that }
+TokenAnnotation(1897,1899): is  { stemm=is }
+TokenAnnotation(1900,1905): based  { stemm=base }
+TokenAnnotation(1906,1908): on  { stemm=on }
+TokenAnnotation(1909,1910): (  { stemm=( }
+TokenAnnotation(1910,1912): or  { stemm=or }
+TokenAnnotation(1913,1920): derived  { stemm=deriv }
+TokenAnnotation(1921,1925): from  { stemm=from }
+TokenAnnotation(1925,1926): )  { stemm=) }
+TokenAnnotation(1927,1930): the  { stemm=the }
+TokenAnnotation(1931,1935): Work  { stemm=Work }
+TokenAnnotation(1936,1939): and  { stemm=and }
+TokenAnnotation(1940,1943): for  { stemm=for }
+TokenAnnotation(1944,1949): which  { stemm=which }
+TokenAnnotation(1950,1953): the  { stemm=the }
+TokenAnnotation(1960,1969): editorial  { stemm=editori }
+TokenAnnotation(1970,1979): revisions  { stemm=revis }
+TokenAnnotation(1979,1980): ,  { stemm=, }
+TokenAnnotation(1981,1992): annotations  { stemm=annot }
+TokenAnnotation(1992,1993): ,  { stemm=, }
+TokenAnnotation(1994,2006): elaborations  { stemm=elabor }
+TokenAnnotation(2006,2007): ,  { stemm=, }
+TokenAnnotation(2008,2010): or  { stemm=or }
+TokenAnnotation(2011,2016): other  { stemm=other }
+TokenAnnotation(2017,2030): modifications  { stemm=modif }
+TokenAnnotation(2037,2046): represent  { stemm=repres }
+TokenAnnotation(2046,2047): ,  { stemm=, }
+TokenAnnotation(2048,2050): as  { stemm=as }
+TokenAnnotation(2051,2052): a  { stemm=a }
+TokenAnnotation(2053,2058): whole  { stemm=whole }
+TokenAnnotation(2058,2059): ,  { stemm=, }
+TokenAnnotation(2060,2062): an  { stemm=an }
+TokenAnnotation(2063,2071): original  { stemm=origin }
+TokenAnnotation(2072,2076): work  { stemm=work }
+TokenAnnotation(2077,2079): of  { stemm=of }
+TokenAnnotation(2080,2090): authorship  { stemm=authorship }
+TokenAnnotation(2090,2091): .  { stemm=. }
+TokenAnnotation(2092,2095): For  { stemm=For }
+TokenAnnotation(2096,2099): the  { stemm=the }
+TokenAnnotation(2100,2108): purposes  { stemm=purpos }
+TokenAnnotation(2115,2117): of  { stemm=of }
+TokenAnnotation(2118,2122): this  { stemm=this }
+TokenAnnotation(2123,2130): License  { stemm=Licens }
+TokenAnnotation(2130,2131): ,  { stemm=, }
+TokenAnnotation(2132,2142): Derivative  { stemm=Deriv }
+TokenAnnotation(2143,2148): Works  { stemm=Work }
+TokenAnnotation(2149,2154): shall  { stemm=shall }
+TokenAnnotation(2155,2158): not  { stemm=not }
+TokenAnnotation(2159,2166): include  { stemm=includ }
+TokenAnnotation(2167,2172): works  { stemm=work }
+TokenAnnotation(2173,2177): that  { stemm=that }
+TokenAnnotation(2178,2184): remain  { stemm=remain }
+TokenAnnotation(2191,2200): separable  { stemm=separ }
+TokenAnnotation(2201,2205): from  { stemm=from }
+TokenAnnotation(2205,2206): ,  { stemm=, }
+TokenAnnotation(2207,2209): or  { stemm=or }
+TokenAnnotation(2210,2216): merely  { stemm=mere }
+TokenAnnotation(2217,2221): link  { stemm=link }
+TokenAnnotation(2222,2223): (  { stemm=( }
+TokenAnnotation(2223,2225): or  { stemm=or }
+TokenAnnotation(2226,2230): bind  { stemm=bind }
+TokenAnnotation(2231,2233): by  { stemm=by }
+TokenAnnotation(2234,2238): name  { stemm=name }
+TokenAnnotation(2238,2239): )  { stemm=) }
+TokenAnnotation(2240,2242): to  { stemm=to }
+TokenAnnotation(2243,2246): the  { stemm=the }
+TokenAnnotation(2247,2257): interfaces  { stemm=interfac }
+TokenAnnotation(2258,2260): of  { stemm=of }
+TokenAnnotation(2260,2261): ,  { stemm=, }
+TokenAnnotation(2268,2271): the  { stemm=the }
+TokenAnnotation(2272,2276): Work  { stemm=Work }
+TokenAnnotation(2277,2280): and  { stemm=and }
+TokenAnnotation(2281,2291): Derivative  { stemm=Deriv }
+TokenAnnotation(2292,2297): Works  { stemm=Work }
+TokenAnnotation(2298,2305): thereof  { stemm=thereof }
+TokenAnnotation(2305,2306): .  { stemm=. }
+TokenAnnotation(2314,2315): "  { stemm=" }
+TokenAnnotation(2315,2327): Contribution  { stemm=Contribut }
+TokenAnnotation(2327,2328): "  { stemm=" }
+TokenAnnotation(2329,2334): shall  { stemm=shall }
+TokenAnnotation(2335,2339): mean  { stemm=mean }
+TokenAnnotation(2340,2343): any  { stemm=ani }
+TokenAnnotation(2344,2348): work  { stemm=work }
+TokenAnnotation(2349,2351): of  { stemm=of }
+TokenAnnotation(2352,2362): authorship  { stemm=authorship }
+TokenAnnotation(2362,2363): ,  { stemm=, }
+TokenAnnotation(2364,2373): including  { stemm=includ }
+TokenAnnotation(2380,2383): the  { stemm=the }
+TokenAnnotation(2384,2392): original  { stemm=origin }
+TokenAnnotation(2393,2400): version  { stemm=version }
+TokenAnnotation(2401,2403): of  { stemm=of }
+TokenAnnotation(2404,2407): the  { stemm=the }
+TokenAnnotation(2408,2412): Work  { stemm=Work }
+TokenAnnotation(2413,2416): and  { stemm=and }
+TokenAnnotation(2417,2420): any  { stemm=ani }
+TokenAnnotation(2421,2434): modifications  { stemm=modif }
+TokenAnnotation(2435,2437): or  { stemm=or }
+TokenAnnotation(2438,2447): additions  { stemm=addit }
+TokenAnnotation(2454,2456): to  { stemm=to }
+TokenAnnotation(2457,2461): that  { stemm=that }
+TokenAnnotation(2462,2466): Work  { stemm=Work }
+TokenAnnotation(2467,2469): or  { stemm=or }
+TokenAnnotation(2470,2480): Derivative  { stemm=Deriv }
+TokenAnnotation(2481,2486): Works  { stemm=Work }
+TokenAnnotation(2487,2494): thereof  { stemm=thereof }
+TokenAnnotation(2494,2495): ,  { stemm=, }
+TokenAnnotation(2496,2500): that  { stemm=that }
+TokenAnnotation(2501,2503): is  { stemm=is }
+TokenAnnotation(2504,2517): intentionally  { stemm=intent }
+TokenAnnotation(2524,2533): submitted  { stemm=submit }
+TokenAnnotation(2534,2536): to  { stemm=to }
+TokenAnnotation(2537,2545): Licensor  { stemm=Licensor }
+TokenAnnotation(2546,2549): for  { stemm=for }
+TokenAnnotation(2550,2559): inclusion  { stemm=inclus }
+TokenAnnotation(2560,2562): in  { stemm=in }
+TokenAnnotation(2563,2566): the  { stemm=the }
+TokenAnnotation(2567,2571): Work  { stemm=Work }
+TokenAnnotation(2572,2574): by  { stemm=by }
+TokenAnnotation(2575,2578): the  { stemm=the }
+TokenAnnotation(2579,2588): copyright  { stemm=copyright }
+TokenAnnotation(2589,2594): owner  { stemm=owner }
+TokenAnnotation(2601,2603): or  { stemm=or }
+TokenAnnotation(2604,2606): by  { stemm=by }
+TokenAnnotation(2607,2609): an  { stemm=an }
+TokenAnnotation(2610,2620): individual  { stemm=individu }
+TokenAnnotation(2621,2623): or  { stemm=or }
+TokenAnnotation(2624,2629): Legal  { stemm=Legal }
+TokenAnnotation(2630,2636): Entity  { stemm=Entiti }
+TokenAnnotation(2637,2647): authorized  { stemm=author }
+TokenAnnotation(2648,2650): to  { stemm=to }
+TokenAnnotation(2651,2657): submit  { stemm=submit }
+TokenAnnotation(2658,2660): on  { stemm=on }
+TokenAnnotation(2661,2667): behalf  { stemm=behalf }
+TokenAnnotation(2668,2670): of  { stemm=of }
+TokenAnnotation(2677,2680): the  { stemm=the }
+TokenAnnotation(2681,2690): copyright  { stemm=copyright }
+TokenAnnotation(2691,2696): owner  { stemm=owner }
+TokenAnnotation(2696,2697): .  { stemm=. }
+TokenAnnotation(2698,2701): For  { stemm=For }
+TokenAnnotation(2702,2705): the  { stemm=the }
+TokenAnnotation(2706,2714): purposes  { stemm=purpos }
+TokenAnnotation(2715,2717): of  { stemm=of }
+TokenAnnotation(2718,2722): this  { stemm=this }
+TokenAnnotation(2723,2733): definition  { stemm=definit }
+TokenAnnotation(2733,2734): ,  { stemm=, }
+TokenAnnotation(2735,2736): "  { stemm=" }
+TokenAnnotation(2736,2745): submitted  { stemm=submit }
+TokenAnnotation(2745,2746): "  { stemm=" }
+TokenAnnotation(2753,2758): means  { stemm=mean }
+TokenAnnotation(2759,2762): any  { stemm=ani }
+TokenAnnotation(2763,2767): form  { stemm=form }
+TokenAnnotation(2768,2770): of  { stemm=of }
+TokenAnnotation(2771,2781): electronic  { stemm=electron }
+TokenAnnotation(2781,2782): ,  { stemm=, }
+TokenAnnotation(2783,2789): verbal  { stemm=verbal }
+TokenAnnotation(2789,2790): ,  { stemm=, }
+TokenAnnotation(2791,2793): or  { stemm=or }
+TokenAnnotation(2794,2801): written  { stemm=written }
+TokenAnnotation(2802,2815): communication  { stemm=communic }
+TokenAnnotation(2816,2820): sent  { stemm=sent }
+TokenAnnotation(2827,2829): to  { stemm=to }
+TokenAnnotation(2830,2833): the  { stemm=the }
+TokenAnnotation(2834,2842): Licensor  { stemm=Licensor }
+TokenAnnotation(2843,2845): or  { stemm=or }
+TokenAnnotation(2846,2849): its  { stemm=it }
+TokenAnnotation(2850,2865): representatives  { stemm=repres }
+TokenAnnotation(2865,2866): ,  { stemm=, }
+TokenAnnotation(2867,2876): including  { stemm=includ }
+TokenAnnotation(2877,2880): but  { stemm=but }
+TokenAnnotation(2881,2884): not  { stemm=not }
+TokenAnnotation(2885,2892): limited  { stemm=limit }
+TokenAnnotation(2893,2895): to  { stemm=to }
+TokenAnnotation(2902,2915): communication  { stemm=communic }
+TokenAnnotation(2916,2918): on  { stemm=on }
+TokenAnnotation(2919,2929): electronic  { stemm=electron }
+TokenAnnotation(2930,2937): mailing  { stemm=mail }
+TokenAnnotation(2938,2943): lists  { stemm=list }
+TokenAnnotation(2943,2944): ,  { stemm=, }
+TokenAnnotation(2945,2951): source  { stemm=sourc }
+TokenAnnotation(2952,2956): code  { stemm=code }
+TokenAnnotation(2957,2964): control  { stemm=control }
+TokenAnnotation(2965,2972): systems  { stemm=system }
+TokenAnnotation(2972,2973): ,  { stemm=, }
+TokenAnnotation(2980,2983): and  { stemm=and }
+TokenAnnotation(2984,2989): issue  { stemm=issu }
+TokenAnnotation(2990,2998): tracking  { stemm=track }
+TokenAnnotation(2999,3006): systems  { stemm=system }
+TokenAnnotation(3007,3011): that  { stemm=that }
+TokenAnnotation(3012,3015): are  { stemm=are }
+TokenAnnotation(3016,3023): managed  { stemm=manag }
+TokenAnnotation(3024,3026): by  { stemm=by }
+TokenAnnotation(3026,3027): ,  { stemm=, }
+TokenAnnotation(3028,3030): or  { stemm=or }
+TokenAnnotation(3031,3033): on  { stemm=on }
+TokenAnnotation(3034,3040): behalf  { stemm=behalf }
+TokenAnnotation(3041,3043): of  { stemm=of }
+TokenAnnotation(3043,3044): ,  { stemm=, }
+TokenAnnotation(3045,3048): the  { stemm=the }
+TokenAnnotation(3055,3063): Licensor  { stemm=Licensor }
+TokenAnnotation(3064,3067): for  { stemm=for }
+TokenAnnotation(3068,3071): the  { stemm=the }
+TokenAnnotation(3072,3079): purpose  { stemm=purpos }
+TokenAnnotation(3080,3082): of  { stemm=of }
+TokenAnnotation(3083,3093): discussing  { stemm=discuss }
+TokenAnnotation(3094,3097): and  { stemm=and }
+TokenAnnotation(3098,3107): improving  { stemm=improv }
+TokenAnnotation(3108,3111): the  { stemm=the }
+TokenAnnotation(3112,3116): Work  { stemm=Work }
+TokenAnnotation(3116,3117): ,  { stemm=, }
+TokenAnnotation(3118,3121): but  { stemm=but }
+TokenAnnotation(3128,3137): excluding  { stemm=exclud }
+TokenAnnotation(3138,3151): communication  { stemm=communic }
+TokenAnnotation(3152,3156): that  { stemm=that }
+TokenAnnotation(3157,3159): is  { stemm=is }
+TokenAnnotation(3160,3173): conspicuously  { stemm=conspicu }
+TokenAnnotation(3174,3180): marked  { stemm=mark }
+TokenAnnotation(3181,3183): or  { stemm=or }
+TokenAnnotation(3184,3193): otherwise  { stemm=otherwis }
+TokenAnnotation(3200,3210): designated  { stemm=design }
+TokenAnnotation(3211,3213): in  { stemm=in }
+TokenAnnotation(3214,3221): writing  { stemm=write }
+TokenAnnotation(3222,3224): by  { stemm=by }
+TokenAnnotation(3225,3228): the  { stemm=the }
+TokenAnnotation(3229,3238): copyright  { stemm=copyright }
+TokenAnnotation(3239,3244): owner  { stemm=owner }
+TokenAnnotation(3245,3247): as  { stemm=as }
+TokenAnnotation(3248,3249): "  { stemm=" }
+TokenAnnotation(3249,3252): Not  { stemm=Not }
+TokenAnnotation(3253,3254): a  { stemm=a }
+TokenAnnotation(3255,3267): Contribution  { stemm=Contribut }
+TokenAnnotation(3267,3268): .  { stemm=. }
+TokenAnnotation(3268,3269): "  { stemm=" }
+TokenAnnotation(3277,3278): "  { stemm=" }
+TokenAnnotation(3278,3289): Contributor  { stemm=Contributor }
+TokenAnnotation(3289,3290): "  { stemm=" }
+TokenAnnotation(3291,3296): shall  { stemm=shall }
+TokenAnnotation(3297,3301): mean  { stemm=mean }
+TokenAnnotation(3302,3310): Licensor  { stemm=Licensor }
+TokenAnnotation(3311,3314): and  { stemm=and }
+TokenAnnotation(3315,3318): any  { stemm=ani }
+TokenAnnotation(3319,3329): individual  { stemm=individu }
+TokenAnnotation(3330,3332): or  { stemm=or }
+TokenAnnotation(3333,3338): Legal  { stemm=Legal }
+TokenAnnotation(3339,3345): Entity  { stemm=Entiti }
+TokenAnnotation(3352,3354): on  { stemm=on }
+TokenAnnotation(3355,3361): behalf  { stemm=behalf }
+TokenAnnotation(3362,3364): of  { stemm=of }
+TokenAnnotation(3365,3369): whom  { stemm=whom }
+TokenAnnotation(3370,3371): a  { stemm=a }
+TokenAnnotation(3372,3384): Contribution  { stemm=Contribut }
+TokenAnnotation(3385,3388): has  { stemm=has }
+TokenAnnotation(3389,3393): been  { stemm=been }
+TokenAnnotation(3394,3402): received  { stemm=receiv }
+TokenAnnotation(3403,3405): by  { stemm=by }
+TokenAnnotation(3406,3414): Licensor  { stemm=Licensor }
+TokenAnnotation(3415,3418): and  { stemm=and }
+TokenAnnotation(3425,3437): subsequently  { stemm=subsequ }
+TokenAnnotation(3438,3450): incorporated  { stemm=incorpor }
+TokenAnnotation(3451,3457): within  { stemm=within }
+TokenAnnotation(3458,3461): the  { stemm=the }
+TokenAnnotation(3462,3466): Work  { stemm=Work }
+TokenAnnotation(3466,3467): .  { stemm=. }
+TokenAnnotation(3469,3470): .  { stemm=. }
+TokenAnnotation(3470,3471): .  { stemm=. }
+TokenAnnotation(3471,3472): .  { stemm=. }