{"action":"created","issue":{"url":"https://api.github.com/repos/winkjs/wink-pos-tagger/issues/24","repository_url":"https://api.github.com/repos/winkjs/wink-pos-tagger","labels_url":"https://api.github.com/repos/winkjs/wink-pos-tagger/issues/24/labels{/name}","comments_url":"https://api.github.com/repos/winkjs/wink-pos-tagger/issues/24/comments","events_url":"https://api.github.com/repos/winkjs/wink-pos-tagger/issues/24/events","html_url":"https://github.com/winkjs/wink-pos-tagger/issues/24","id":317825324,"number":24,"title":"incorrect tagging of contractions","user":{"login":"chris-divvito","id":30251516,"avatar_url":"https://avatars2.githubusercontent.com/u/30251516?v=4","gravatar_id":"","url":"https://api.github.com/users/chris-divvito","html_url":"https://github.com/chris-divvito","followers_url":"https://api.github.com/users/chris-divvito/followers","following_url":"https://api.github.com/users/chris-divvito/following{/other_user}","gists_url":"https://api.github.com/users/chris-divvito/gists{/gist_id}","starred_url":"https://api.github.com/users/chris-divvito/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/chris-divvito/subscriptions","organizations_url":"https://api.github.com/users/chris-divvito/orgs","repos_url":"https://api.github.com/users/chris-divvito/repos","events_url":"https://api.github.com/users/chris-divvito/events{/privacy}","received_events_url":"https://api.github.com/users/chris-divvito/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":3,"created_at":"2018-04-25T23:15:45Z","updated_at":"2018-05-03T10:13:11Z","closed_at":null,"author_association":"NONE","body":"Hello,\r\n\r\nWhen tagging a contraction, the first part of the contraction does not seem to be properly handled at the moment in some common cases. For example when tagging the sentence \"I can't believe you\", we get the result:\r\n\r\n`[{\"value\":\"I\",\"tag\":\"word\",\"normal\":\"i\",\"pos\":\"PRP\"},{\"value\":\"ca\",\"tag\":\"word\",\"normal\":\"ca\",\"pos\":\"NN\",\"lemma\":\"ca\"},{\"value\":\"not\",\"tag\":\"word\",\"normal\":\"not\",\"pos\":\"RB\"},{\"value\":\"believe\",\"tag\":\"word\",\"normal\":\"believe\",\"pos\":\"VB\",\"lemma\":\"believe\"},{\"value\":\"you\",\"tag\":\"word\",\"normal\":\"you\",\"pos\":\"PRP\"}]`\r\n\r\n\"n't\" is properly normalized to \"not\" and tagged as RB, however, the first part is not properly dealt with as \"can\" - which I believe should be tagged as a modal (MD).\r\n\r\nthe same seems to hold true for \"won't\", although \"shouldn't\" and \"don't\" seem to be properly tagged (assumedly because the naive transformation of removing the character before the apostrophe leaves them with the correct word)."},"comment":{"url":"https://api.github.com/repos/winkjs/wink-pos-tagger/issues/comments/386249054","html_url":"https://github.com/winkjs/wink-pos-tagger/issues/24#issuecomment-386249054","issue_url":"https://api.github.com/repos/winkjs/wink-pos-tagger/issues/24","id":386249054,"user":{"login":"rachnachakraborty","id":45709,"avatar_url":"https://avatars1.githubusercontent.com/u/45709?v=4","gravatar_id":"","url":"https://api.github.com/users/rachnachakraborty","html_url":"https://github.com/rachnachakraborty","followers_url":"https://api.github.com/users/rachnachakraborty/followers","following_url":"https://api.github.com/users/rachnachakraborty/following{/other_user}","gists_url":"https://api.github.com/users/rachnachakraborty/gists{/gist_id}","starred_url":"https://api.github.com/users/rachnachakraborty/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rachnachakraborty/subscriptions","organizations_url":"https://api.github.com/users/rachnachakraborty/orgs","repos_url":"https://api.github.com/users/rachnachakraborty/repos","events_url":"https://api.github.com/users/rachnachakraborty/events{/privacy}","received_events_url":"https://api.github.com/users/rachnachakraborty/received_events","type":"User","site_admin":false},"created_at":"2018-05-03T10:13:11Z","updated_at":"2018-05-03T10:13:11Z","author_association":"MEMBER","body":"Hello @chris-divvito \r\n\r\nWe are happy to share that, wink-pos-tagger ver 1.5.0 has been released to address the requirements highlighted.\r\n\r\nHere is how it works:\r\n```javascript\r\nvar posTagger = require(\"wink-pos-tagger\");\r\nvar tagger = posTagger();\r\n\r\nconsole.log( tagger.tagSentence( 'My name is Chris O\\'Kelly' ) );\r\nconsole.log( tagger.tagSentence( 'Then\\'s the time to time the time flies' ) );\r\nconsole.log( tagger.tagSentence( 'This is Michelle\\'s food.' ) );\r\nconsole.log( tagger.tagSentence( 'I won\\'t believe you.' ) );\r\n```\r\nand the output is \r\n\r\n```javascript\r\n[ { value: 'My', tag: 'word', normal: 'my', pos: 'PRP$' },\r\n { value: 'name', tag: 'word', normal: 'name', pos: 'NN', lemma: 'name' },\r\n { value: 'is', tag: 'word', normal: 'is', pos: 'VBZ', lemma: 'be' },\r\n { value: 'Chris', tag: 'word', normal: 'chris', pos: 'NNP' },\r\n { value: 'O\\'Kelly', tag: 'word', normal: 'o\\'kelly', pos: 'NNP' } ]\r\n\r\n[ { value: 'Then', tag: 'word', normal: 'then', pos: 'RB' },\r\n { value: '\\'s', tag: 'word', normal: '\\'s', pos: 'VBZ', lemma: 'be' },\r\n { value: 'the', tag: 'word', normal: 'the', pos: 'DT' },\r\n { value: 'time', tag: 'word', normal: 'time', pos: 'NN', lemma: 'time' },\r\n { value: 'to', tag: 'word', normal: 'to', pos: 'TO' },\r\n { value: 'time', tag: 'word', normal: 'time', pos: 'VB', lemma: 'time' },\r\n { value: 'the', tag: 'word', normal: 'the', pos: 'DT' },\r\n { value: 'time', tag: 'word', normal: 'time', pos: 'NN', lemma: 'time' },\r\n { value: 'flies', tag: 'word', normal: 'flies', pos: 'VBZ', lemma: 'fly' } ]\r\n\r\n[ { value: 'This', tag: 'word', normal: 'this', pos: 'DT' },\r\n { value: 'is', tag: 'word', normal: 'is', pos: 'VBZ', lemma: 'be' },\r\n { value: 'Michelle', tag: 'word', normal: 'michelle', pos: 'NNP' },\r\n { value: '\\'s', tag: 'word', normal: '\\'s', pos: 'POS' },\r\n { value: 'food', tag: 'word', normal: 'food', pos: 'NN', lemma: 'food' },\r\n { value: '.', tag: 'punctuation', normal: '.', pos: '.' } ]\r\n\r\n[ { value: 'I', tag: 'word', normal: 'i', pos: 'PRP' },\r\n { value: 'wo', tag: 'word', normal: 'wo', pos: 'MD', lemma: 'will' },\r\n { value: 'n\\'t', tag: 'word', normal: 'n\\'t', pos: 'RB', lemma: 'not' },\r\n { value: 'believe', tag: 'word', normal: 'believe', pos: 'VB', lemma: 'believe' },\r\n { value: 'you', tag: 'word', normal: 'you', pos: 'PRP' },\r\n { value: '.', tag: 'punctuation', normal: '.', pos: '.' } ]\r\n```\r\nYou will notice that  `updateLexicon()` api is not required in this case, as the tagger has now improved upon its NNP detection capabilities. However, exceptions will still need the `updateLexicon()` api.\r\n\r\nHope it works for you.\r\n\r\nBest,\r\n\r\n"}}
{"actor":{"display_login":"rachnachakraborty"}}