{"action":"created","issue":{"url":"https://api.github.com/repos/ropensci/rgbif/issues/326","repository_url":"https://api.github.com/repos/ropensci/rgbif","labels_url":"https://api.github.com/repos/ropensci/rgbif/issues/326/labels{/name}","comments_url":"https://api.github.com/repos/ropensci/rgbif/issues/326/comments","events_url":"https://api.github.com/repos/ropensci/rgbif/issues/326/events","html_url":"https://github.com/ropensci/rgbif/issues/326","id":368531405,"node_id":"MDU6SXNzdWUzNjg1MzE0MDU=","number":326,"title":"introduce parsing errors functionality for checklist data","user":{"login":"damianooldoni","id":33662631,"node_id":"MDQ6VXNlcjMzNjYyNjMx","avatar_url":"https://avatars1.githubusercontent.com/u/33662631?v=4","gravatar_id":"","url":"https://api.github.com/users/damianooldoni","html_url":"https://github.com/damianooldoni","followers_url":"https://api.github.com/users/damianooldoni/followers","following_url":"https://api.github.com/users/damianooldoni/following{/other_user}","gists_url":"https://api.github.com/users/damianooldoni/gists{/gist_id}","starred_url":"https://api.github.com/users/damianooldoni/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/damianooldoni/subscriptions","organizations_url":"https://api.github.com/users/damianooldoni/orgs","repos_url":"https://api.github.com/users/damianooldoni/repos","events_url":"https://api.github.com/users/damianooldoni/events{/privacy}","received_events_url":"https://api.github.com/users/damianooldoni/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":15,"created_at":"2018-10-10T07:38:00Z","updated_at":"2019-01-04T21:23:15Z","closed_at":null,"author_association":"CONTRIBUTOR","body":"# Goal \r\n\r\nAs discussed with @sckott in #324, in this issue we will discuss the introduction of a functionality similar to `occ_issues()` which would work on checklist related issues instead of occurrence's ones. I will implement the functionality on my fork and I will submit a PR at the end.\r\n\r\n# Implementation\r\n\r\nInspired by `occ_issues()` and gbif_issues()´ I would proceed as follows:\r\n1. merge the table defined in `rgbif::name_issues()` in `gbif_issues()`\r\n2. use `name_issues()` as the function for implementing the parsing, thus being the exact counterpart of `occ_issues()`\r\n\r\n# Example \r\n\r\nInspired by https://github.com/ropensci/rgbif/issues/324#issuecomment-427909944, I would say it would be useful to implement something like this:\r\n\r\n```r\r\nname_data <- name_usage(\r\n    datasetKey = \"9ff7d317-609b-4c08-bd86-3bc404b77c42\",\r\n    limit = 99999, # Should be more than total taxa\r\n  )\r\n### remove checklist data rows with certain issue classes\r\nlibrary('magrittr')\r\nname_data %>% name_issues(npm)\r\n### split issues into separate columns\r\nname_data %>% name_issues(mutate = \"split\")\r\n### expand issues to more descriptive names\r\nname_data %>% name_issues(mutate = \"expand\")\r\n### split and expand\r\nname_data %>% name_issues(mutate = \"split_expand\")\r\n### split, expand, and remove an issue class\r\nname_data %>% name_issues(-npm, mutate = \"split_expand\")\r\n```\r\n\r\nDoes it sound reasonable for you, @sckott ? \r\nThanks!"},"comment":{"url":"https://api.github.com/repos/ropensci/rgbif/issues/comments/451572481","html_url":"https://github.com/ropensci/rgbif/issues/326#issuecomment-451572481","issue_url":"https://api.github.com/repos/ropensci/rgbif/issues/326","id":451572481,"node_id":"MDEyOklzc3VlQ29tbWVudDQ1MTU3MjQ4MQ==","user":{"login":"sckott","id":577668,"node_id":"MDQ6VXNlcjU3NzY2OA==","avatar_url":"https://avatars1.githubusercontent.com/u/577668?v=4","gravatar_id":"","url":"https://api.github.com/users/sckott","html_url":"https://github.com/sckott","followers_url":"https://api.github.com/users/sckott/followers","following_url":"https://api.github.com/users/sckott/following{/other_user}","gists_url":"https://api.github.com/users/sckott/gists{/gist_id}","starred_url":"https://api.github.com/users/sckott/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sckott/subscriptions","organizations_url":"https://api.github.com/users/sckott/orgs","repos_url":"https://api.github.com/users/sckott/repos","events_url":"https://api.github.com/users/sckott/events{/privacy}","received_events_url":"https://api.github.com/users/sckott/received_events","type":"User","site_admin":false},"created_at":"2019-01-04T21:23:15Z","updated_at":"2019-01-04T21:23:15Z","author_association":"MEMBER","body":"The `gbif` S3 class on the output of `occ_search()` is primarily used for linking it's print method defined here https://github.com/ropensci/rgbif/blob/master/R/print_gbif.R - Same goes for `occ_data()`. The `gbif` class is not really special, it could be named anything, e.g., `bear`, `cheese`, etc. - it just has to match the `whatever` in  `print.whatever` \r\n\r\nI didn't assign S3 classes to name functions because I didn't think they were needed, but we can do that if it makes things easier\r\n\r\nI like the `name_issues()` function you have in https://github.com/ropensci/rgbif/issues/326#issuecomment-451401789  \r\n\r\nwhich name* functions will be able to go through `name_issues()`?"}}
{"actor":{"display_login":"sckott"}}