nlptoolkit-annotatedtree 1.0.0

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.
Files changed (258) hide show
  1. package/README.md +153 -0
  2. package/dist/ChunkType.d.ts +5 -0
  3. package/dist/ChunkType.js +20 -0
  4. package/dist/ChunkType.js.map +1 -0
  5. package/dist/Layer/DependencyLayer.d.ts +4 -0
  6. package/dist/Layer/DependencyLayer.js +23 -0
  7. package/dist/Layer/DependencyLayer.js.map +1 -0
  8. package/dist/Layer/EnglishPropbankLayer.d.ts +6 -0
  9. package/dist/Layer/EnglishPropbankLayer.js +34 -0
  10. package/dist/Layer/EnglishPropbankLayer.js.map +1 -0
  11. package/dist/Layer/EnglishSemanticLayer.d.ts +4 -0
  12. package/dist/Layer/EnglishSemanticLayer.js +23 -0
  13. package/dist/Layer/EnglishSemanticLayer.js.map +1 -0
  14. package/dist/Layer/EnglishWordLayer.d.ts +4 -0
  15. package/dist/Layer/EnglishWordLayer.js +22 -0
  16. package/dist/Layer/EnglishWordLayer.js.map +1 -0
  17. package/dist/Layer/MetaMorphemeLayer.d.ts +8 -0
  18. package/dist/Layer/MetaMorphemeLayer.js +63 -0
  19. package/dist/Layer/MetaMorphemeLayer.js.map +1 -0
  20. package/dist/Layer/MetaMorphemesMovedLayer.d.ts +9 -0
  21. package/dist/Layer/MetaMorphemesMovedLayer.js +51 -0
  22. package/dist/Layer/MetaMorphemesMovedLayer.js.map +1 -0
  23. package/dist/Layer/MorphologicalAnalysisLayer.d.ts +11 -0
  24. package/dist/Layer/MorphologicalAnalysisLayer.js +110 -0
  25. package/dist/Layer/MorphologicalAnalysisLayer.js.map +1 -0
  26. package/dist/Layer/MultiWordLayer.d.ts +7 -0
  27. package/dist/Layer/MultiWordLayer.js +33 -0
  28. package/dist/Layer/MultiWordLayer.js.map +1 -0
  29. package/dist/Layer/MultiWordMultiItemLayer.d.ts +6 -0
  30. package/dist/Layer/MultiWordMultiItemLayer.js +18 -0
  31. package/dist/Layer/MultiWordMultiItemLayer.js.map +1 -0
  32. package/dist/Layer/NERLayer.d.ts +8 -0
  33. package/dist/Layer/NERLayer.js +32 -0
  34. package/dist/Layer/NERLayer.js.map +1 -0
  35. package/dist/Layer/PersianWordLayer.d.ts +4 -0
  36. package/dist/Layer/PersianWordLayer.js +22 -0
  37. package/dist/Layer/PersianWordLayer.js.map +1 -0
  38. package/dist/Layer/ShallowParseLayer.d.ts +5 -0
  39. package/dist/Layer/ShallowParseLayer.js +33 -0
  40. package/dist/Layer/ShallowParseLayer.js.map +1 -0
  41. package/dist/Layer/SingleWordLayer.d.ts +4 -0
  42. package/dist/Layer/SingleWordLayer.js +21 -0
  43. package/dist/Layer/SingleWordLayer.js.map +1 -0
  44. package/dist/Layer/SingleWordMultiItemLayer.d.ts +7 -0
  45. package/dist/Layer/SingleWordMultiItemLayer.js +33 -0
  46. package/dist/Layer/SingleWordMultiItemLayer.js.map +1 -0
  47. package/dist/Layer/SourceLanguageWordLayer.d.ts +4 -0
  48. package/dist/Layer/SourceLanguageWordLayer.js +22 -0
  49. package/dist/Layer/SourceLanguageWordLayer.js.map +1 -0
  50. package/dist/Layer/TargetLanguageWordLayer.d.ts +8 -0
  51. package/dist/Layer/TargetLanguageWordLayer.js +38 -0
  52. package/dist/Layer/TargetLanguageWordLayer.js.map +1 -0
  53. package/dist/Layer/TurkishPropbankLayer.d.ts +9 -0
  54. package/dist/Layer/TurkishPropbankLayer.js +35 -0
  55. package/dist/Layer/TurkishPropbankLayer.js.map +1 -0
  56. package/dist/Layer/TurkishSemanticLayer.d.ts +5 -0
  57. package/dist/Layer/TurkishSemanticLayer.js +33 -0
  58. package/dist/Layer/TurkishSemanticLayer.js.map +1 -0
  59. package/dist/Layer/TurkishWordLayer.d.ts +4 -0
  60. package/dist/Layer/TurkishWordLayer.js +22 -0
  61. package/dist/Layer/TurkishWordLayer.js.map +1 -0
  62. package/dist/Layer/WordLayer.d.ts +7 -0
  63. package/dist/Layer/WordLayer.js +26 -0
  64. package/dist/Layer/WordLayer.js.map +1 -0
  65. package/dist/LayerInfo.d.ts +45 -0
  66. package/dist/LayerInfo.js +474 -0
  67. package/dist/LayerInfo.js.map +1 -0
  68. package/dist/ParseNodeDrawable.d.ts +30 -0
  69. package/dist/ParseNodeDrawable.js +263 -0
  70. package/dist/ParseNodeDrawable.js.map +1 -0
  71. package/dist/ParseTreeDrawable.d.ts +31 -0
  72. package/dist/ParseTreeDrawable.js +200 -0
  73. package/dist/ParseTreeDrawable.js.map +1 -0
  74. package/dist/Processor/Condition/IsDoubleNode.d.ts +5 -0
  75. package/dist/Processor/Condition/IsDoubleNode.js +23 -0
  76. package/dist/Processor/Condition/IsDoubleNode.js.map +1 -0
  77. package/dist/Processor/Condition/IsDoubleNodeWithDifferentTags.d.ts +5 -0
  78. package/dist/Processor/Condition/IsDoubleNodeWithDifferentTags.js +23 -0
  79. package/dist/Processor/Condition/IsDoubleNodeWithDifferentTags.js.map +1 -0
  80. package/dist/Processor/Condition/IsEnglishLeafNode.d.ts +5 -0
  81. package/dist/Processor/Condition/IsEnglishLeafNode.js +25 -0
  82. package/dist/Processor/Condition/IsEnglishLeafNode.js.map +1 -0
  83. package/dist/Processor/Condition/IsLeafNode.d.ts +5 -0
  84. package/dist/Processor/Condition/IsLeafNode.js +20 -0
  85. package/dist/Processor/Condition/IsLeafNode.js.map +1 -0
  86. package/dist/Processor/Condition/IsNodeWithPredicate.d.ts +6 -0
  87. package/dist/Processor/Condition/IsNodeWithPredicate.js +29 -0
  88. package/dist/Processor/Condition/IsNodeWithPredicate.js.map +1 -0
  89. package/dist/Processor/Condition/IsNodeWithSymbol.d.ts +7 -0
  90. package/dist/Processor/Condition/IsNodeWithSymbol.js +28 -0
  91. package/dist/Processor/Condition/IsNodeWithSymbol.js.map +1 -0
  92. package/dist/Processor/Condition/IsNodeWithSynSetId.d.ts +7 -0
  93. package/dist/Processor/Condition/IsNodeWithSynSetId.js +34 -0
  94. package/dist/Processor/Condition/IsNodeWithSynSetId.js.map +1 -0
  95. package/dist/Processor/Condition/IsNoneNode.d.ts +8 -0
  96. package/dist/Processor/Condition/IsNoneNode.js +29 -0
  97. package/dist/Processor/Condition/IsNoneNode.js.map +1 -0
  98. package/dist/Processor/Condition/IsNullElement.d.ts +5 -0
  99. package/dist/Processor/Condition/IsNullElement.js +27 -0
  100. package/dist/Processor/Condition/IsNullElement.js.map +1 -0
  101. package/dist/Processor/Condition/IsNumber.d.ts +5 -0
  102. package/dist/Processor/Condition/IsNumber.js +27 -0
  103. package/dist/Processor/Condition/IsNumber.js.map +1 -0
  104. package/dist/Processor/Condition/IsPredicateVerbNode.d.ts +7 -0
  105. package/dist/Processor/Condition/IsPredicateVerbNode.js +28 -0
  106. package/dist/Processor/Condition/IsPredicateVerbNode.js.map +1 -0
  107. package/dist/Processor/Condition/IsProperNoun.d.ts +5 -0
  108. package/dist/Processor/Condition/IsProperNoun.js +25 -0
  109. package/dist/Processor/Condition/IsProperNoun.js.map +1 -0
  110. package/dist/Processor/Condition/IsPunctuationNode.d.ts +5 -0
  111. package/dist/Processor/Condition/IsPunctuationNode.js +27 -0
  112. package/dist/Processor/Condition/IsPunctuationNode.js.map +1 -0
  113. package/dist/Processor/Condition/IsTransferable.d.ts +8 -0
  114. package/dist/Processor/Condition/IsTransferable.js +33 -0
  115. package/dist/Processor/Condition/IsTransferable.js.map +1 -0
  116. package/dist/Processor/Condition/IsTurkishLeafNode.d.ts +5 -0
  117. package/dist/Processor/Condition/IsTurkishLeafNode.js +27 -0
  118. package/dist/Processor/Condition/IsTurkishLeafNode.js.map +1 -0
  119. package/dist/Processor/Condition/IsVPNode.d.ts +5 -0
  120. package/dist/Processor/Condition/IsVPNode.js +20 -0
  121. package/dist/Processor/Condition/IsVPNode.js.map +1 -0
  122. package/dist/Processor/Condition/IsVerbNode.d.ts +8 -0
  123. package/dist/Processor/Condition/IsVerbNode.js +36 -0
  124. package/dist/Processor/Condition/IsVerbNode.js.map +1 -0
  125. package/dist/Processor/Condition/NodeDrawableCondition.d.ts +4 -0
  126. package/dist/Processor/Condition/NodeDrawableCondition.js +13 -0
  127. package/dist/Processor/Condition/NodeDrawableCondition.js.map +1 -0
  128. package/dist/Processor/LayerExist/ContainsLayerInformation.d.ts +8 -0
  129. package/dist/Processor/LayerExist/ContainsLayerInformation.js +45 -0
  130. package/dist/Processor/LayerExist/ContainsLayerInformation.js.map +1 -0
  131. package/dist/Processor/LayerExist/LeafListCondition.d.ts +4 -0
  132. package/dist/Processor/LayerExist/LeafListCondition.js +13 -0
  133. package/dist/Processor/LayerExist/LeafListCondition.js.map +1 -0
  134. package/dist/Processor/LayerExist/NotContainsLayerInformation.d.ts +8 -0
  135. package/dist/Processor/LayerExist/NotContainsLayerInformation.js +44 -0
  136. package/dist/Processor/LayerExist/NotContainsLayerInformation.js.map +1 -0
  137. package/dist/Processor/LayerExist/SemiContainsLayerInformation.d.ts +8 -0
  138. package/dist/Processor/LayerExist/SemiContainsLayerInformation.js +53 -0
  139. package/dist/Processor/LayerExist/SemiContainsLayerInformation.js.map +1 -0
  140. package/dist/Processor/LeafConverter/LeafToEnglish.d.ts +4 -0
  141. package/dist/Processor/LeafConverter/LeafToEnglish.js +23 -0
  142. package/dist/Processor/LeafConverter/LeafToEnglish.js.map +1 -0
  143. package/dist/Processor/LeafConverter/LeafToLanguageConverter.d.ts +7 -0
  144. package/dist/Processor/LeafConverter/LeafToLanguageConverter.js +44 -0
  145. package/dist/Processor/LeafConverter/LeafToLanguageConverter.js.map +1 -0
  146. package/dist/Processor/LeafConverter/LeafToPersian.d.ts +4 -0
  147. package/dist/Processor/LeafConverter/LeafToPersian.js +23 -0
  148. package/dist/Processor/LeafConverter/LeafToPersian.js.map +1 -0
  149. package/dist/Processor/LeafConverter/LeafToRootFormConverter.d.ts +5 -0
  150. package/dist/Processor/LeafConverter/LeafToRootFormConverter.js +28 -0
  151. package/dist/Processor/LeafConverter/LeafToRootFormConverter.js.map +1 -0
  152. package/dist/Processor/LeafConverter/LeafToStringConverter.d.ts +4 -0
  153. package/dist/Processor/LeafConverter/LeafToStringConverter.js +13 -0
  154. package/dist/Processor/LeafConverter/LeafToStringConverter.js.map +1 -0
  155. package/dist/Processor/LeafConverter/LeafToTurkish.d.ts +4 -0
  156. package/dist/Processor/LeafConverter/LeafToTurkish.js +23 -0
  157. package/dist/Processor/LeafConverter/LeafToTurkish.js.map +1 -0
  158. package/dist/Processor/NodeDrawableCollector.d.ts +9 -0
  159. package/dist/Processor/NodeDrawableCollector.js +34 -0
  160. package/dist/Processor/NodeDrawableCollector.js.map +1 -0
  161. package/dist/Processor/NodeModification/ConvertToLayeredFormat.d.ts +5 -0
  162. package/dist/Processor/NodeModification/ConvertToLayeredFormat.js +26 -0
  163. package/dist/Processor/NodeModification/ConvertToLayeredFormat.js.map +1 -0
  164. package/dist/Processor/NodeModification/NodeModifier.d.ts +4 -0
  165. package/dist/Processor/NodeModification/NodeModifier.js +13 -0
  166. package/dist/Processor/NodeModification/NodeModifier.js.map +1 -0
  167. package/dist/Processor/TreeModifier.d.ts +6 -0
  168. package/dist/Processor/TreeModifier.js +26 -0
  169. package/dist/Processor/TreeModifier.js.map +1 -0
  170. package/dist/Processor/TreeToStringConverter.d.ts +9 -0
  171. package/dist/Processor/TreeToStringConverter.js +36 -0
  172. package/dist/Processor/TreeToStringConverter.js.map +1 -0
  173. package/dist/TreeBankDrawable.d.ts +11 -0
  174. package/dist/TreeBankDrawable.js +52 -0
  175. package/dist/TreeBankDrawable.js.map +1 -0
  176. package/index.js +58 -0
  177. package/package.json +37 -0
  178. package/source/ChunkType.ts +3 -0
  179. package/source/Layer/DependencyLayer.ts +10 -0
  180. package/source/Layer/EnglishPropbankLayer.ts +22 -0
  181. package/source/Layer/EnglishSemanticLayer.ts +10 -0
  182. package/source/Layer/EnglishWordLayer.ts +9 -0
  183. package/source/Layer/MetaMorphemeLayer.ts +53 -0
  184. package/source/Layer/MetaMorphemesMovedLayer.ts +43 -0
  185. package/source/Layer/MorphologicalAnalysisLayer.ts +100 -0
  186. package/source/Layer/MultiWordLayer.ts +20 -0
  187. package/source/Layer/MultiWordMultiItemLayer.ts +9 -0
  188. package/source/Layer/NERLayer.ts +23 -0
  189. package/source/Layer/PersianWordLayer.ts +9 -0
  190. package/source/Layer/ShallowParseLayer.ts +22 -0
  191. package/source/Layer/SingleWordLayer.ts +9 -0
  192. package/source/Layer/SingleWordMultiItemLayer.ts +19 -0
  193. package/source/Layer/SourceLanguageWordLayer.ts +9 -0
  194. package/source/Layer/TargetLanguageWordLayer.ts +29 -0
  195. package/source/Layer/TurkishPropbankLayer.ts +26 -0
  196. package/source/Layer/TurkishSemanticLayer.ts +22 -0
  197. package/source/Layer/TurkishWordLayer.ts +9 -0
  198. package/source/Layer/WordLayer.ts +17 -0
  199. package/source/LayerInfo.ts +481 -0
  200. package/source/ParseNodeDrawable.ts +257 -0
  201. package/source/ParseTreeDrawable.ts +205 -0
  202. package/source/Processor/Condition/IsDoubleNode.ts +13 -0
  203. package/source/Processor/Condition/IsDoubleNodeWithDifferentTags.ts +13 -0
  204. package/source/Processor/Condition/IsEnglishLeafNode.ts +14 -0
  205. package/source/Processor/Condition/IsLeafNode.ts +10 -0
  206. package/source/Processor/Condition/IsNodeWithPredicate.ts +19 -0
  207. package/source/Processor/Condition/IsNodeWithSymbol.ts +20 -0
  208. package/source/Processor/Condition/IsNodeWithSynSetId.ts +26 -0
  209. package/source/Processor/Condition/IsNoneNode.ts +22 -0
  210. package/source/Processor/Condition/IsNullElement.ts +16 -0
  211. package/source/Processor/Condition/IsNumber.ts +16 -0
  212. package/source/Processor/Condition/IsPredicateVerbNode.ts +19 -0
  213. package/source/Processor/Condition/IsProperNoun.ts +14 -0
  214. package/source/Processor/Condition/IsPunctuationNode.ts +16 -0
  215. package/source/Processor/Condition/IsTransferable.ts +26 -0
  216. package/source/Processor/Condition/IsTurkishLeafNode.ts +16 -0
  217. package/source/Processor/Condition/IsVPNode.ts +10 -0
  218. package/source/Processor/Condition/IsVerbNode.ts +29 -0
  219. package/source/Processor/Condition/NodeDrawableCondition.ts +6 -0
  220. package/source/Processor/LayerExist/ContainsLayerInformation.ts +38 -0
  221. package/source/Processor/LayerExist/LeafListCondition.ts +6 -0
  222. package/source/Processor/LayerExist/NotContainsLayerInformation.ts +37 -0
  223. package/source/Processor/LayerExist/SemiContainsLayerInformation.ts +44 -0
  224. package/source/Processor/LeafConverter/LeafToEnglish.ts +11 -0
  225. package/source/Processor/LeafConverter/LeafToLanguageConverter.ts +35 -0
  226. package/source/Processor/LeafConverter/LeafToPersian.ts +10 -0
  227. package/source/Processor/LeafConverter/LeafToRootFormConverter.ts +18 -0
  228. package/source/Processor/LeafConverter/LeafToStringConverter.ts +6 -0
  229. package/source/Processor/LeafConverter/LeafToTurkish.ts +10 -0
  230. package/source/Processor/NodeDrawableCollector.ts +28 -0
  231. package/source/Processor/NodeModification/ConvertToLayeredFormat.ts +16 -0
  232. package/source/Processor/NodeModification/NodeModifier.ts +6 -0
  233. package/source/Processor/TreeModifier.ts +20 -0
  234. package/source/Processor/TreeToStringConverter.ts +31 -0
  235. package/source/TreeBankDrawable.ts +47 -0
  236. package/source/tsconfig.json +13 -0
  237. package/tests/ParseTreeDrawableTest.ts +161 -0
  238. package/trees/0000.dev +1 -0
  239. package/trees/0001.dev +1 -0
  240. package/trees/0002.dev +1 -0
  241. package/trees/0003.dev +1 -0
  242. package/trees/0004.dev +1 -0
  243. package/trees/0005.dev +1 -0
  244. package/trees/0006.dev +1 -0
  245. package/trees/0007.dev +1 -0
  246. package/trees/0008.dev +1 -0
  247. package/trees/0009.dev +1 -0
  248. package/trees2/0000.dev +1 -0
  249. package/trees2/0001.dev +1 -0
  250. package/trees2/0002.dev +1 -0
  251. package/trees2/0003.dev +1 -0
  252. package/trees2/0004.dev +1 -0
  253. package/trees2/0005.dev +1 -0
  254. package/trees2/0006.dev +1 -0
  255. package/trees2/0007.dev +1 -0
  256. package/trees2/0008.dev +1 -0
  257. package/trees2/0009.dev +1 -0
  258. package/tsconfig.json +15 -0
package/README.md ADDED
@@ -0,0 +1,153 @@
1
+ # Constituency TreeBank
2
+
3
+ A treebank is a corpus where the sentences in each language are syntactically (if necessary morphologically) annotated. In the treebanks, the syntactic annotation usually follows constituent and/or dependency structure.
4
+
5
+ Treebanks annotated for the syntactic or semantic structures of the sentences are essential for developing state-of-the-art statistical natural language processing (NLP) systems including part-of-speech-taggers, syntactic parsers, and machine translation systems. There are two main groups of syntactic treebanks, namely treebanks annotated for constituency (phrase structure) and the ones that are annotated for dependency structure.
6
+
7
+ ## Data Format
8
+
9
+ We extend the original format with the relevant information, given between curly braces. For example, the word 'problem' in a sentence in the standard Penn Treebank notation, may be represented in the data format provided below:
10
+
11
+ (NN problem)
12
+
13
+ After all levels of processing are finished, the data structure stored for the same word has the following form in the system.
14
+
15
+ (NN {turkish=sorunu} {english=problem}
16
+ {morphologicalAnalysis=sorun+NOUN+A3SG+PNON+ACC}
17
+ {metaMorphemes=sorun+yH}
18
+ {semantics=TUR10-0703650})
19
+
20
+ As is self-explanatory, 'turkish' tag shows the original Turkish word; 'morphologicalanalysis' tag shows the correct morphological parse of that word; 'semantics' tag shows the ID of the correct sense of that word; 'namedEntity' tag shows the named entity tag of that word; 'propbank' tag shows the semantic role of that word for the verb synset id (frame id in the frame file) which is also given in that tag.
21
+
22
+ For Developers
23
+ ============
24
+
25
+ You can also see [Java](https://github.com/starlangsoftware/AnnotatedTree), [Python](https://github.com/starlangsoftware/AnnotatedTree-Py),
26
+ [Cython](https://github.com/starlangsoftware/AnnotatedTree-Cy), [C++](https://github.com/starlangsoftware/AnnotatedTree-CPP), or [C#](https://github.com/starlangsoftware/AnnotatedTree-CS) repository.
27
+
28
+ ## Requirements
29
+
30
+ * [Node.js 14 or higher](#Node.js)
31
+ * [Git](#git)
32
+
33
+ ### Node.js
34
+
35
+ To check if you have a compatible version of Node.js installed, use the following command:
36
+
37
+ node -v
38
+
39
+ You can find the latest version of Node.js [here](https://nodejs.org/en/download/).
40
+
41
+ ### Git
42
+
43
+ Install the [latest version of Git](https://git-scm.com/book/en/v2/Getting-Started-Installing-Git).
44
+
45
+ ## Npm Install
46
+
47
+ npm install nlptoolkit-annotatedtree
48
+
49
+ ## Download Code
50
+
51
+ In order to work on code, create a fork from GitHub page.
52
+ Use Git for cloning the code to your local or below line for Ubuntu:
53
+
54
+ git clone <your-fork-git-link>
55
+
56
+ A directory called util will be created. Or you can use below link for exploring the code:
57
+
58
+ git clone https://github.com/starlangsoftware/annotatedtree-js.git
59
+
60
+ ## Open project with Webstorm IDE
61
+
62
+ Steps for opening the cloned project:
63
+
64
+ * Start IDE
65
+ * Select **File | Open** from main menu
66
+ * Choose `AnnotatedTree-Js` file
67
+ * Select open as project option
68
+ * Couple of seconds, dependencies will be downloaded.
69
+
70
+ Detailed Description
71
+ ============
72
+
73
+ + [TreeBankDrawable](#treebankdrawable)
74
+ + [ParseTreeDrawable](#parsetreedrawable)
75
+ + [LayerInfo](#layerinfo)
76
+
77
+ ## TreeBankDrawable
78
+
79
+ To load an annotated TreeBank:
80
+
81
+ TreeBankDrawable(folder: string, pattern: string)
82
+ a = new TreeBankDrawable("/Turkish-Phrase", ".train")
83
+
84
+ To access all the trees in a TreeBankDrawable:
85
+
86
+ for (let i = 0; i < a.sentenceCount(); i++){
87
+ let parseTree = <ParseTreeDrawable> a.get(i);
88
+ ....
89
+ }
90
+
91
+ ## ParseTreeDrawable
92
+
93
+ To load a saved ParseTreeDrawable:
94
+
95
+ ParseTreeDrawable(file: string)
96
+
97
+ is used. Usually it is more useful to load TreeBankDrawable as explained above than to load ParseTree one by one.
98
+
99
+ To find the node number of a ParseTreeDrawable:
100
+
101
+ nodeCount(): number
102
+
103
+ the leaf number of a ParseTreeDrawable:
104
+
105
+ leafCount(): number
106
+
107
+ the word count in a ParseTreeDrawable:
108
+
109
+ wordCount(excludeStopWords: boolean): number
110
+
111
+ above methods can be used.
112
+
113
+ ## LayerInfo
114
+
115
+ Information of an annotated word is kept in LayerInfo class. To access the morphological analysis
116
+ of the annotated word:
117
+
118
+ getMorphologicalParseAt(index: number): MorphologicalParse
119
+
120
+ meaning of an annotated word:
121
+
122
+ getSemanticAt(index: number): string
123
+
124
+ the shallow parse tag (e.g., subject, indirect object etc.) of annotated word:
125
+
126
+ getShallowParseAt(index: number): string
127
+
128
+ the argument tag of the annotated word:
129
+
130
+ getArgumentAt(index: number): Argument
131
+
132
+ the word count in a node:
133
+
134
+ getNumberOfWords(): number
135
+
136
+ # Cite
137
+
138
+ @inproceedings{yildiz-etal-2014-constructing,
139
+ title = "Constructing a {T}urkish-{E}nglish Parallel {T}ree{B}ank",
140
+ author = {Y{\i}ld{\i}z, Olcay Taner and
141
+ Solak, Ercan and
142
+ G{\"o}rg{\"u}n, Onur and
143
+ Ehsani, Razieh},
144
+ booktitle = "Proceedings of the 52nd Annual Meeting of the Association for Computational Linguistics (Volume 2: Short Papers)",
145
+ month = jun,
146
+ year = "2014",
147
+ address = "Baltimore, Maryland",
148
+ publisher = "Association for Computational Linguistics",
149
+ url = "https://www.aclweb.org/anthology/P14-2019",
150
+ doi = "10.3115/v1/P14-2019",
151
+ pages = "112--117",
152
+ }
153
+
@@ -0,0 +1,5 @@
1
+ export declare enum ChunkType {
2
+ EXISTS = 0,
3
+ NORMAL = 1,
4
+ DETAILED = 2
5
+ }
@@ -0,0 +1,20 @@
1
+ (function (factory) {
2
+ if (typeof module === "object" && typeof module.exports === "object") {
3
+ var v = factory(require, exports);
4
+ if (v !== undefined) module.exports = v;
5
+ }
6
+ else if (typeof define === "function" && define.amd) {
7
+ define(["require", "exports"], factory);
8
+ }
9
+ })(function (require, exports) {
10
+ "use strict";
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.ChunkType = void 0;
13
+ var ChunkType;
14
+ (function (ChunkType) {
15
+ ChunkType[ChunkType["EXISTS"] = 0] = "EXISTS";
16
+ ChunkType[ChunkType["NORMAL"] = 1] = "NORMAL";
17
+ ChunkType[ChunkType["DETAILED"] = 2] = "DETAILED";
18
+ })(ChunkType = exports.ChunkType || (exports.ChunkType = {}));
19
+ });
20
+ //# sourceMappingURL=ChunkType.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ChunkType.js","sourceRoot":"","sources":["../source/ChunkType.ts"],"names":[],"mappings":";;;;;;;;;;;;IAAA,IAAY,SAEX;IAFD,WAAY,SAAS;QACjB,6CAAM,CAAA;QAAE,6CAAM,CAAA;QAAE,iDAAQ,CAAA;IAC5B,CAAC,EAFW,SAAS,GAAT,iBAAS,KAAT,iBAAS,QAEpB"}
@@ -0,0 +1,4 @@
1
+ import { SingleWordLayer } from "./SingleWordLayer";
2
+ export declare class DependencyLayer extends SingleWordLayer<string> {
3
+ constructor(layerValue: string);
4
+ }
@@ -0,0 +1,23 @@
1
+ (function (factory) {
2
+ if (typeof module === "object" && typeof module.exports === "object") {
3
+ var v = factory(require, exports);
4
+ if (v !== undefined) module.exports = v;
5
+ }
6
+ else if (typeof define === "function" && define.amd) {
7
+ define(["require", "exports", "./SingleWordLayer"], factory);
8
+ }
9
+ })(function (require, exports) {
10
+ "use strict";
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.DependencyLayer = void 0;
13
+ const SingleWordLayer_1 = require("./SingleWordLayer");
14
+ class DependencyLayer extends SingleWordLayer_1.SingleWordLayer {
15
+ constructor(layerValue) {
16
+ super();
17
+ this.layerName = "dependency";
18
+ this.setLayerValue(layerValue);
19
+ }
20
+ }
21
+ exports.DependencyLayer = DependencyLayer;
22
+ });
23
+ //# sourceMappingURL=DependencyLayer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DependencyLayer.js","sourceRoot":"","sources":["../../source/Layer/DependencyLayer.ts"],"names":[],"mappings":";;;;;;;;;;;;IAAA,uDAAkD;IAElD,MAAa,eAAgB,SAAQ,iCAAuB;QAExD,YAAY,UAAkB;YAC1B,KAAK,EAAE,CAAC;YACR,IAAI,CAAC,SAAS,GAAG,YAAY,CAAA;YAC7B,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,CAAA;QAClC,CAAC;KACJ;IAPD,0CAOC"}
@@ -0,0 +1,6 @@
1
+ import { SingleWordMultiItemLayer } from "./SingleWordMultiItemLayer";
2
+ import { Argument } from "nlptoolkit-propbank/dist/Argument";
3
+ export declare class EnglishPropbankLayer extends SingleWordMultiItemLayer<Argument> {
4
+ constructor(layerValue: string);
5
+ setLayerValue(layerValue: string): void;
6
+ }
@@ -0,0 +1,34 @@
1
+ (function (factory) {
2
+ if (typeof module === "object" && typeof module.exports === "object") {
3
+ var v = factory(require, exports);
4
+ if (v !== undefined) module.exports = v;
5
+ }
6
+ else if (typeof define === "function" && define.amd) {
7
+ define(["require", "exports", "./SingleWordMultiItemLayer", "nlptoolkit-propbank/dist/Argument"], factory);
8
+ }
9
+ })(function (require, exports) {
10
+ "use strict";
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.EnglishPropbankLayer = void 0;
13
+ const SingleWordMultiItemLayer_1 = require("./SingleWordMultiItemLayer");
14
+ const Argument_1 = require("nlptoolkit-propbank/dist/Argument");
15
+ class EnglishPropbankLayer extends SingleWordMultiItemLayer_1.SingleWordMultiItemLayer {
16
+ constructor(layerValue) {
17
+ super();
18
+ this.layerName = "englishPropbank";
19
+ this.setLayerValue(layerValue);
20
+ }
21
+ setLayerValue(layerValue) {
22
+ this.items = new Array();
23
+ this.layerValue = layerValue;
24
+ if (layerValue != null) {
25
+ let splitWords = layerValue.split("#");
26
+ for (let word of splitWords) {
27
+ this.items.push(new Argument_1.Argument(word));
28
+ }
29
+ }
30
+ }
31
+ }
32
+ exports.EnglishPropbankLayer = EnglishPropbankLayer;
33
+ });
34
+ //# sourceMappingURL=EnglishPropbankLayer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EnglishPropbankLayer.js","sourceRoot":"","sources":["../../source/Layer/EnglishPropbankLayer.ts"],"names":[],"mappings":";;;;;;;;;;;;IAAA,yEAAoE;IACpE,gEAA2D;IAE3D,MAAa,oBAAqB,SAAQ,mDAAkC;QAExE,YAAY,UAAkB;YAC1B,KAAK,EAAE,CAAC;YACR,IAAI,CAAC,SAAS,GAAG,iBAAiB,CAAA;YAClC,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,CAAA;QAClC,CAAC;QAED,aAAa,CAAC,UAAkB;YAC5B,IAAI,CAAC,KAAK,GAAG,IAAI,KAAK,EAAY,CAAC;YACnC,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;YAC7B,IAAI,UAAU,IAAI,IAAI,EAAC;gBACnB,IAAI,UAAU,GAAG,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;gBACvC,KAAK,IAAI,IAAI,IAAI,UAAU,EAAC;oBACxB,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,mBAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;iBACvC;aACJ;QACL,CAAC;KACJ;IAlBD,oDAkBC"}
@@ -0,0 +1,4 @@
1
+ import { SingleWordLayer } from "./SingleWordLayer";
2
+ export declare class EnglishSemanticLayer extends SingleWordLayer<string> {
3
+ constructor(layerValue: string);
4
+ }
@@ -0,0 +1,23 @@
1
+ (function (factory) {
2
+ if (typeof module === "object" && typeof module.exports === "object") {
3
+ var v = factory(require, exports);
4
+ if (v !== undefined) module.exports = v;
5
+ }
6
+ else if (typeof define === "function" && define.amd) {
7
+ define(["require", "exports", "./SingleWordLayer"], factory);
8
+ }
9
+ })(function (require, exports) {
10
+ "use strict";
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.EnglishSemanticLayer = void 0;
13
+ const SingleWordLayer_1 = require("./SingleWordLayer");
14
+ class EnglishSemanticLayer extends SingleWordLayer_1.SingleWordLayer {
15
+ constructor(layerValue) {
16
+ super();
17
+ this.layerName = "englishSemantics";
18
+ this.setLayerValue(layerValue);
19
+ }
20
+ }
21
+ exports.EnglishSemanticLayer = EnglishSemanticLayer;
22
+ });
23
+ //# sourceMappingURL=EnglishSemanticLayer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EnglishSemanticLayer.js","sourceRoot":"","sources":["../../source/Layer/EnglishSemanticLayer.ts"],"names":[],"mappings":";;;;;;;;;;;;IAAA,uDAAkD;IAElD,MAAa,oBAAqB,SAAQ,iCAAuB;QAE7D,YAAY,UAAkB;YAC1B,KAAK,EAAE,CAAC;YACR,IAAI,CAAC,SAAS,GAAG,kBAAkB,CAAA;YACnC,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,CAAA;QAClC,CAAC;KACJ;IAPD,oDAOC"}
@@ -0,0 +1,4 @@
1
+ import { SourceLanguageWordLayer } from "./SourceLanguageWordLayer";
2
+ export declare class EnglishWordLayer extends SourceLanguageWordLayer {
3
+ constructor(layerValue: string);
4
+ }
@@ -0,0 +1,22 @@
1
+ (function (factory) {
2
+ if (typeof module === "object" && typeof module.exports === "object") {
3
+ var v = factory(require, exports);
4
+ if (v !== undefined) module.exports = v;
5
+ }
6
+ else if (typeof define === "function" && define.amd) {
7
+ define(["require", "exports", "./SourceLanguageWordLayer"], factory);
8
+ }
9
+ })(function (require, exports) {
10
+ "use strict";
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.EnglishWordLayer = void 0;
13
+ const SourceLanguageWordLayer_1 = require("./SourceLanguageWordLayer");
14
+ class EnglishWordLayer extends SourceLanguageWordLayer_1.SourceLanguageWordLayer {
15
+ constructor(layerValue) {
16
+ super(layerValue);
17
+ this.layerName = "english";
18
+ }
19
+ }
20
+ exports.EnglishWordLayer = EnglishWordLayer;
21
+ });
22
+ //# sourceMappingURL=EnglishWordLayer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EnglishWordLayer.js","sourceRoot":"","sources":["../../source/Layer/EnglishWordLayer.ts"],"names":[],"mappings":";;;;;;;;;;;;IAAA,uEAAkE;IAElE,MAAa,gBAAiB,SAAQ,iDAAuB;QAEzD,YAAY,UAAkB;YAC1B,KAAK,CAAC,UAAU,CAAC,CAAC;YAClB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAA;QAC9B,CAAC;KACJ;IAND,4CAMC"}
@@ -0,0 +1,8 @@
1
+ import { MetaMorphemesMovedLayer } from "./MetaMorphemesMovedLayer";
2
+ import { MetamorphicParse } from "nlptoolkit-morphologicalanalysis/dist/MorphologicalAnalysis/MetamorphicParse";
3
+ export declare class MetaMorphemeLayer extends MetaMorphemesMovedLayer {
4
+ constructor(layerValue: string);
5
+ setLayerValue(parse: any): void;
6
+ getLayerInfoFrom(index: number): string;
7
+ metaMorphemeRemoveFromIndex(index: number): MetamorphicParse;
8
+ }
@@ -0,0 +1,63 @@
1
+ (function (factory) {
2
+ if (typeof module === "object" && typeof module.exports === "object") {
3
+ var v = factory(require, exports);
4
+ if (v !== undefined) module.exports = v;
5
+ }
6
+ else if (typeof define === "function" && define.amd) {
7
+ define(["require", "exports", "./MetaMorphemesMovedLayer", "nlptoolkit-morphologicalanalysis/dist/MorphologicalAnalysis/MetamorphicParse", "nlptoolkit-annotatedsentence/dist/ViewLayerType"], factory);
8
+ }
9
+ })(function (require, exports) {
10
+ "use strict";
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.MetaMorphemeLayer = void 0;
13
+ const MetaMorphemesMovedLayer_1 = require("./MetaMorphemesMovedLayer");
14
+ const MetamorphicParse_1 = require("nlptoolkit-morphologicalanalysis/dist/MorphologicalAnalysis/MetamorphicParse");
15
+ const ViewLayerType_1 = require("nlptoolkit-annotatedsentence/dist/ViewLayerType");
16
+ class MetaMorphemeLayer extends MetaMorphemesMovedLayer_1.MetaMorphemesMovedLayer {
17
+ constructor(layerValue) {
18
+ super(layerValue);
19
+ this.layerName = "metaMorphemes";
20
+ }
21
+ setLayerValue(parse) {
22
+ this.layerValue = parse.toString();
23
+ this.items = new Array();
24
+ if (this.layerValue != null) {
25
+ let splitWords = this.layerValue.split("\\s");
26
+ for (let word of splitWords) {
27
+ this.items.push(new MetamorphicParse_1.MetamorphicParse(word));
28
+ }
29
+ }
30
+ }
31
+ getLayerInfoFrom(index) {
32
+ let size = 0;
33
+ for (let parse of this.items) {
34
+ if (index < size + parse.size()) {
35
+ let result = parse.getMetaMorpheme(index - size);
36
+ index++;
37
+ while (index < size + parse.size()) {
38
+ result = result + "+" + parse.getMetaMorpheme(index - size);
39
+ index++;
40
+ }
41
+ return result;
42
+ }
43
+ size += parse.size();
44
+ }
45
+ return null;
46
+ }
47
+ metaMorphemeRemoveFromIndex(index) {
48
+ if (index >= 0 && index < this.getLayerSize(ViewLayerType_1.ViewLayerType.META_MORPHEME)) {
49
+ let size = 0;
50
+ for (let parse of this.items) {
51
+ if (index < size + parse.size()) {
52
+ parse.removeMetaMorphemeFromIndex(index - size);
53
+ return parse;
54
+ }
55
+ size += parse.size();
56
+ }
57
+ }
58
+ return null;
59
+ }
60
+ }
61
+ exports.MetaMorphemeLayer = MetaMorphemeLayer;
62
+ });
63
+ //# sourceMappingURL=MetaMorphemeLayer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MetaMorphemeLayer.js","sourceRoot":"","sources":["../../source/Layer/MetaMorphemeLayer.ts"],"names":[],"mappings":";;;;;;;;;;;;IAAA,uEAAkE;IAClE,mHAA8G;IAC9G,mFAA8E;IAE9E,MAAa,iBAAkB,SAAQ,iDAAuB;QAE1D,YAAY,UAAkB;YAC1B,KAAK,CAAC,UAAU,CAAC,CAAC;YAClB,IAAI,CAAC,SAAS,GAAG,eAAe,CAAA;QACpC,CAAC;QAED,aAAa,CAAC,KAAU;YACpB,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAC;YACnC,IAAI,CAAC,KAAK,GAAG,IAAI,KAAK,EAAoB,CAAC;YAC3C,IAAI,IAAI,CAAC,UAAU,IAAI,IAAI,EAAC;gBACxB,IAAI,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;gBAC9C,KAAK,IAAI,IAAI,IAAI,UAAU,EAAC;oBACxB,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,mCAAgB,CAAC,IAAI,CAAC,CAAC,CAAC;iBAC/C;aACJ;QACL,CAAC;QAED,gBAAgB,CAAC,KAAa;YAC1B,IAAI,IAAI,GAAG,CAAC,CAAC;YACb,KAAK,IAAI,KAAK,IAAI,IAAI,CAAC,KAAK,EAAC;gBACzB,IAAI,KAAK,GAAG,IAAI,GAAG,KAAK,CAAC,IAAI,EAAE,EAAC;oBAC5B,IAAI,MAAM,GAAG,KAAK,CAAC,eAAe,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC;oBACjD,KAAK,EAAE,CAAC;oBACR,OAAO,KAAK,GAAG,IAAI,GAAG,KAAK,CAAC,IAAI,EAAE,EAAC;wBAC/B,MAAM,GAAG,MAAM,GAAG,GAAG,GAAG,KAAK,CAAC,eAAe,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC;wBAC5D,KAAK,EAAE,CAAC;qBACX;oBACD,OAAO,MAAM,CAAC;iBACjB;gBACD,IAAI,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC;aACxB;YACD,OAAO,IAAI,CAAC;QAChB,CAAC;QAED,2BAA2B,CAAC,KAAa;YACrC,IAAI,KAAK,IAAI,CAAC,IAAI,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC,6BAAa,CAAC,aAAa,CAAC,EAAC;gBACrE,IAAI,IAAI,GAAG,CAAC,CAAC;gBACb,KAAK,IAAI,KAAK,IAAI,IAAI,CAAC,KAAK,EAAC;oBACzB,IAAI,KAAK,GAAG,IAAI,GAAG,KAAK,CAAC,IAAI,EAAE,EAAC;wBAC5B,KAAK,CAAC,2BAA2B,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC;wBAChD,OAAO,KAAK,CAAC;qBAChB;oBACD,IAAI,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC;iBACxB;aACJ;YACD,OAAO,IAAI,CAAC;QAChB,CAAC;KACJ;IAhDD,8CAgDC"}
@@ -0,0 +1,9 @@
1
+ import { MultiWordMultiItemLayer } from "./MultiWordMultiItemLayer";
2
+ import { MetamorphicParse } from "nlptoolkit-morphologicalanalysis/dist/MorphologicalAnalysis/MetamorphicParse";
3
+ import { ViewLayerType } from "nlptoolkit-annotatedsentence/dist/ViewLayerType";
4
+ export declare class MetaMorphemesMovedLayer extends MultiWordMultiItemLayer<MetamorphicParse> {
5
+ constructor(layerValue: string);
6
+ getLayerInfoAt(viewLayer: ViewLayerType, index: number): string;
7
+ getLayerSize(viewLayer: ViewLayerType): number;
8
+ setLayerValue(layerValue: string): void;
9
+ }
@@ -0,0 +1,51 @@
1
+ (function (factory) {
2
+ if (typeof module === "object" && typeof module.exports === "object") {
3
+ var v = factory(require, exports);
4
+ if (v !== undefined) module.exports = v;
5
+ }
6
+ else if (typeof define === "function" && define.amd) {
7
+ define(["require", "exports", "./MultiWordMultiItemLayer", "nlptoolkit-morphologicalanalysis/dist/MorphologicalAnalysis/MetamorphicParse"], factory);
8
+ }
9
+ })(function (require, exports) {
10
+ "use strict";
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.MetaMorphemesMovedLayer = void 0;
13
+ const MultiWordMultiItemLayer_1 = require("./MultiWordMultiItemLayer");
14
+ const MetamorphicParse_1 = require("nlptoolkit-morphologicalanalysis/dist/MorphologicalAnalysis/MetamorphicParse");
15
+ class MetaMorphemesMovedLayer extends MultiWordMultiItemLayer_1.MultiWordMultiItemLayer {
16
+ constructor(layerValue) {
17
+ super();
18
+ this.layerName = "metaMorphemesMoved";
19
+ this.setLayerValue(layerValue);
20
+ }
21
+ getLayerInfoAt(viewLayer, index) {
22
+ let size = 0;
23
+ for (let parse of this.items) {
24
+ if (index < size + parse.size()) {
25
+ return parse.getMetaMorpheme(index - size);
26
+ }
27
+ size += parse.size();
28
+ }
29
+ return null;
30
+ }
31
+ getLayerSize(viewLayer) {
32
+ let size = 0;
33
+ for (let parse of this.items) {
34
+ size += parse.size();
35
+ }
36
+ return size;
37
+ }
38
+ setLayerValue(layerValue) {
39
+ this.items = new Array();
40
+ this.layerValue = layerValue;
41
+ if (layerValue != null) {
42
+ let splitWords = layerValue.split("\\s");
43
+ for (let word of splitWords) {
44
+ this.items.push(new MetamorphicParse_1.MetamorphicParse(word));
45
+ }
46
+ }
47
+ }
48
+ }
49
+ exports.MetaMorphemesMovedLayer = MetaMorphemesMovedLayer;
50
+ });
51
+ //# sourceMappingURL=MetaMorphemesMovedLayer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MetaMorphemesMovedLayer.js","sourceRoot":"","sources":["../../source/Layer/MetaMorphemesMovedLayer.ts"],"names":[],"mappings":";;;;;;;;;;;;IAAA,uEAAkE;IAClE,mHAA8G;IAG9G,MAAa,uBAAwB,SAAQ,iDAAyC;QAElF,YAAY,UAAkB;YAC1B,KAAK,EAAE,CAAC;YACR,IAAI,CAAC,SAAS,GAAG,oBAAoB,CAAA;YACrC,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,CAAA;QAClC,CAAC;QAED,cAAc,CAAC,SAAwB,EAAE,KAAa;YAClD,IAAI,IAAI,GAAG,CAAC,CAAC;YACb,KAAK,IAAI,KAAK,IAAI,IAAI,CAAC,KAAK,EAAC;gBACzB,IAAI,KAAK,GAAG,IAAI,GAAG,KAAK,CAAC,IAAI,EAAE,EAAC;oBAC5B,OAAO,KAAK,CAAC,eAAe,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC;iBAC9C;gBACD,IAAI,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC;aACxB;YACD,OAAO,IAAI,CAAC;QAChB,CAAC;QAED,YAAY,CAAC,SAAwB;YACjC,IAAI,IAAI,GAAG,CAAC,CAAC;YACb,KAAK,IAAI,KAAK,IAAI,IAAI,CAAC,KAAK,EAAC;gBACzB,IAAI,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC;aACxB;YACD,OAAO,IAAI,CAAC;QAChB,CAAC;QAED,aAAa,CAAC,UAAkB;YAC5B,IAAI,CAAC,KAAK,GAAG,IAAI,KAAK,EAAoB,CAAC;YAC3C,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;YAC7B,IAAI,UAAU,IAAI,IAAI,EAAC;gBACnB,IAAI,UAAU,GAAG,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;gBACzC,KAAK,IAAI,IAAI,IAAI,UAAU,EAAC;oBACxB,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,mCAAgB,CAAC,IAAI,CAAC,CAAC,CAAC;iBAC/C;aACJ;QACL,CAAC;KAEJ;IAtCD,0DAsCC"}
@@ -0,0 +1,11 @@
1
+ import { MultiWordMultiItemLayer } from "./MultiWordMultiItemLayer";
2
+ import { MorphologicalParse } from "nlptoolkit-morphologicalanalysis/dist/MorphologicalAnalysis/MorphologicalParse";
3
+ import { ViewLayerType } from "nlptoolkit-annotatedsentence/dist/ViewLayerType";
4
+ export declare class MorphologicalAnalysisLayer extends MultiWordMultiItemLayer<MorphologicalParse> {
5
+ constructor(layerValue: string);
6
+ getLayerInfoAt(viewLayer: ViewLayerType, index: number): string;
7
+ getLayerSize(viewLayer: ViewLayerType): number;
8
+ setLayerValue(layerValue: any): void;
9
+ isVerbal(): boolean;
10
+ isNominal(): boolean;
11
+ }
@@ -0,0 +1,110 @@
1
+ (function (factory) {
2
+ if (typeof module === "object" && typeof module.exports === "object") {
3
+ var v = factory(require, exports);
4
+ if (v !== undefined) module.exports = v;
5
+ }
6
+ else if (typeof define === "function" && define.amd) {
7
+ define(["require", "exports", "./MultiWordMultiItemLayer", "nlptoolkit-morphologicalanalysis/dist/MorphologicalAnalysis/MorphologicalParse", "nlptoolkit-annotatedsentence/dist/ViewLayerType"], factory);
8
+ }
9
+ })(function (require, exports) {
10
+ "use strict";
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.MorphologicalAnalysisLayer = void 0;
13
+ const MultiWordMultiItemLayer_1 = require("./MultiWordMultiItemLayer");
14
+ const MorphologicalParse_1 = require("nlptoolkit-morphologicalanalysis/dist/MorphologicalAnalysis/MorphologicalParse");
15
+ const ViewLayerType_1 = require("nlptoolkit-annotatedsentence/dist/ViewLayerType");
16
+ class MorphologicalAnalysisLayer extends MultiWordMultiItemLayer_1.MultiWordMultiItemLayer {
17
+ constructor(layerValue) {
18
+ super();
19
+ this.layerName = "morphologicalAnalysis";
20
+ this.setLayerValue(layerValue);
21
+ }
22
+ getLayerInfoAt(viewLayer, index) {
23
+ let size;
24
+ switch (viewLayer) {
25
+ case ViewLayerType_1.ViewLayerType.PART_OF_SPEECH:
26
+ size = 0;
27
+ for (let parse of this.items) {
28
+ if (index < size + parse.tagSize()) {
29
+ return parse.getTag(index - size);
30
+ }
31
+ size += parse.tagSize();
32
+ }
33
+ return null;
34
+ case ViewLayerType_1.ViewLayerType.INFLECTIONAL_GROUP:
35
+ size = 0;
36
+ for (let parse of this.items) {
37
+ if (index < size + parse.size()) {
38
+ return parse.getInflectionalGroupString(index - size);
39
+ }
40
+ size += parse.size();
41
+ }
42
+ return null;
43
+ }
44
+ return null;
45
+ }
46
+ getLayerSize(viewLayer) {
47
+ let size;
48
+ switch (viewLayer) {
49
+ case ViewLayerType_1.ViewLayerType.PART_OF_SPEECH:
50
+ size = 0;
51
+ for (let parse of this.items) {
52
+ size += parse.tagSize();
53
+ }
54
+ return size;
55
+ case ViewLayerType_1.ViewLayerType.INFLECTIONAL_GROUP:
56
+ size = 0;
57
+ for (let parse of this.items) {
58
+ size += parse.size();
59
+ }
60
+ return size;
61
+ default:
62
+ return 0;
63
+ }
64
+ }
65
+ setLayerValue(layerValue) {
66
+ if (layerValue instanceof MorphologicalParse_1.MorphologicalParse) {
67
+ let parse = layerValue;
68
+ this.layerValue = parse.getMorphologicalParseTransitionList();
69
+ this.items = new Array();
70
+ this.items.push(parse);
71
+ }
72
+ else {
73
+ this.items = new Array();
74
+ this.layerValue = layerValue;
75
+ if (layerValue != null) {
76
+ let splitWords = layerValue.split("\\s");
77
+ for (let word of splitWords) {
78
+ this.items.push(new MorphologicalParse_1.MorphologicalParse(word));
79
+ }
80
+ }
81
+ }
82
+ }
83
+ isVerbal() {
84
+ let dbLabel = "^DB+";
85
+ let needle = "VERB+";
86
+ let haystack;
87
+ if (this.layerValue.includes(dbLabel)) {
88
+ haystack = this.layerValue.substring(this.layerValue.lastIndexOf(dbLabel) + 4);
89
+ }
90
+ else {
91
+ haystack = this.layerValue;
92
+ }
93
+ return haystack.includes(needle);
94
+ }
95
+ isNominal() {
96
+ let dbLabel = "^DB+VERB+";
97
+ let needle = "ZERO+";
98
+ let haystack;
99
+ if (this.layerValue.includes(dbLabel)) {
100
+ haystack = this.layerValue.substring(this.layerValue.lastIndexOf(dbLabel) + 9);
101
+ }
102
+ else {
103
+ haystack = this.layerValue;
104
+ }
105
+ return haystack.includes(needle);
106
+ }
107
+ }
108
+ exports.MorphologicalAnalysisLayer = MorphologicalAnalysisLayer;
109
+ });
110
+ //# sourceMappingURL=MorphologicalAnalysisLayer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MorphologicalAnalysisLayer.js","sourceRoot":"","sources":["../../source/Layer/MorphologicalAnalysisLayer.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ import { WordLayer } from "./WordLayer";
2
+ export declare abstract class MultiWordLayer<T> extends WordLayer {
3
+ protected items: Array<T>;
4
+ getItemAt(index: number): T;
5
+ size(): number;
6
+ abstract setLayerValue(layerValue: string): void;
7
+ }
@@ -0,0 +1,33 @@
1
+ (function (factory) {
2
+ if (typeof module === "object" && typeof module.exports === "object") {
3
+ var v = factory(require, exports);
4
+ if (v !== undefined) module.exports = v;
5
+ }
6
+ else if (typeof define === "function" && define.amd) {
7
+ define(["require", "exports", "./WordLayer"], factory);
8
+ }
9
+ })(function (require, exports) {
10
+ "use strict";
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.MultiWordLayer = void 0;
13
+ const WordLayer_1 = require("./WordLayer");
14
+ class MultiWordLayer extends WordLayer_1.WordLayer {
15
+ constructor() {
16
+ super(...arguments);
17
+ this.items = new Array();
18
+ }
19
+ getItemAt(index) {
20
+ if (index < this.items.length) {
21
+ return this.items[index];
22
+ }
23
+ else {
24
+ return undefined;
25
+ }
26
+ }
27
+ size() {
28
+ return this.items.length;
29
+ }
30
+ }
31
+ exports.MultiWordLayer = MultiWordLayer;
32
+ });
33
+ //# sourceMappingURL=MultiWordLayer.js.map