Documentation ¶
Index ¶
- Constants
- Variables
- func EuroPMC2Pub(pmc *EuroPMC) (*models.Publication, error)
- func FetchDOI(ctx context.Context, doi string) (*models.Publication, error)
- func FetchPublication(ctx context.Context, endpoint, id string) (*models.Publication, error)
- func FetchPublicationFromEuroPMC(ctx context.Context, repo repository.Repository, endpoint, id string) (*models.Publication, error)
- func GetResp(ctx context.Context, url string) (*http.Response, error)
- type Author
- type EuroPMC
- type Links
- type PubData
- type PubJSONAPI
- type Publication
Constants ¶
View Source
const (
RedisKey = "PUBLICATION_KEY"
)
Variables ¶
View Source
var Status string = "published"
Functions ¶
func EuroPMC2Pub ¶
func EuroPMC2Pub(pmc *EuroPMC) (*models.Publication, error)
func FetchPublication ¶
func FetchPublicationFromEuroPMC ¶
func FetchPublicationFromEuroPMC( ctx context.Context, repo repository.Repository, endpoint, id string, ) (*models.Publication, error)
Types ¶
type EuroPMC ¶
type EuroPMC struct { HitCount int64 `json:"hitCount"` NextCursorMark string `json:"nextCursorMark"` Request struct { CursorMark string `json:"cursorMark"` PageSize int64 `json:"pageSize"` Query string `json:"query"` ResultType string `json:"resultType"` Sort string `json:"sort"` Synonym bool `json:"synonym"` } `json:"request"` ResultList struct { Result []struct { AbstractText string `json:"abstractText"` Affiliation string `json:"affiliation"` AuthMan string `json:"authMan"` AuthorList struct { Author []struct { Affiliation string `json:"affiliation"` FirstName string `json:"firstName"` FullName string `json:"fullName"` Initials string `json:"initials"` LastName string `json:"lastName"` } `json:"author"` } `json:"authorList"` AuthorString string `json:"authorString"` CitedByCount int64 `json:"citedByCount"` DateOfCreation string `json:"dateOfCreation"` DateOfRevision string `json:"dateOfRevision"` Doi string `json:"doi"` ElectronicPublicationDate string `json:"electronicPublicationDate"` EpmcAuthMan string `json:"epmcAuthMan"` FirstPublicationDate string `json:"firstPublicationDate"` FullTextURLList struct { FullTextURL []struct { Availability string `json:"availability"` AvailabilityCode string `json:"availabilityCode"` DocumentStyle string `json:"documentStyle"` Site string `json:"site"` URL string `json:"url"` } `json:"fullTextUrl"` } `json:"fullTextUrlList"` HasBook string `json:"hasBook"` HasDBCrossReferences string `json:"hasDbCrossReferences"` HasLabsLinks string `json:"hasLabsLinks"` HasPDF string `json:"hasPDF"` HasReferences string `json:"hasReferences"` HasTMAccessionNumbers string `json:"hasTMAccessionNumbers"` HasTextMinedTerms string `json:"hasTextMinedTerms"` ID string `json:"id"` InEPMC string `json:"inEPMC"` InPMC string `json:"inPMC"` IsOpenAccess string `json:"isOpenAccess"` JournalInfo struct { DateOfPublication string `json:"dateOfPublication"` Journal struct { Essn string `json:"essn"` Isoabbreviation string `json:"isoabbreviation"` Issn string `json:"issn"` MedlineAbbreviation string `json:"medlineAbbreviation"` Nlmid string `json:"nlmid"` Title string `json:"title"` } `json:"journal"` JournalIssueID int64 `json:"journalIssueId"` MonthOfPublication int64 `json:"monthOfPublication"` PrintPublicationDate string `json:"printPublicationDate"` YearOfPublication int64 `json:"yearOfPublication"` Issue string `json:"issue"` Volume string `json:"volume"` } `json:"journalInfo"` KeywordList struct { Keyword []string `json:"keyword"` } `json:"keywordList"` Language string `json:"language"` NihAuthMan string `json:"nihAuthMan"` PageInfo string `json:"pageInfo"` Pmid string `json:"pmid"` PubModel string `json:"pubModel"` PubTypeList struct { PubType []string `json:"pubType"` } `json:"pubTypeList"` PubYear string `json:"pubYear"` Source string `json:"source"` Title string `json:"title"` } `json:"result"` } `json:"resultList"` Version string `json:"version"` }
type PubData ¶
type PubData struct { Type string `json:"type"` ID string `json:"id"` Attributes *Publication `json:"attributes"` }
type PubJSONAPI ¶
type Publication ¶
type Publication struct { Abstract string `json:"abstract"` Doi string `json:"doi,omitempty"` FullTextURL string `json:"full_text_url,omitempty"` PubmedURL string `json:"pubmed_url"` Journal string `json:"journal"` Issn string `json:"issn,omitempty"` Page string `json:"page,omitempty"` Pubmed string `json:"pubmed"` Title string `json:"title"` Source string `json:"source"` Status string `json:"status"` PubType string `json:"pub_type"` Issue string `json:"issue"` Volume string `json:"volume"` PublishedDate string `json:"publication_date"` Authors []*Author `json:"authors"` }
Click to show internal directories.
Click to hide internal directories.