Core Platform Team/Initiatives/References API

Initiative Vision

< Initiatives

Vision:
  • Reliability and verifiability in our content is improved by giving more focus to references.
  • Software developers provide tools to explore references in new and unexpected ways.
Target Group(s):
  • iOS (building reference features for next release)
  • external developers
  • librarians
  • readers
  • archivists
Needs:
  • Deeper information on references
  • Reverse lookup on references
  • Context on authors
  • Context on publishers
  • Context on publications
Product:
  • REST API for the Cite extension (/cite/v1/...)
  • Endpoint to retrieve all references on a page
  • Endpoint for deeper context information on a reference
  • Endpoint to determine which pages use a reference, author, or publisher
Aligned Goals:
  • Increase equity and power of curation tools.
  • Increase feature parity among clients by structuring content and providing a full featured API.

Epics, User Stories, and Requirements

< Initiatives

Epic 1

User Stories
ID Title User story Priority Notes
1 Get page references As a Reader, I want to have a list of all references on a page, so that I can review and compare them in different ways. Must have Probably a paginated list. Contents of the reference TBD, but probably fair to say it would be a "short" version, with longer version. Should include the anchor(s) in the page.
2 Get reference details As a Reader, I want to get detailed information about a reference, so that I can make better decisions about it. Must have Schema TBD; information about the author, publisher, and publication are probably needed here. There are probably very different properties for journal or periodical articles, books, Web pages, and others (?). Also, reference identity is probably worth discussing. Two citations of to different pages in the same book or periodical article are probably (?) "the same reference" in this scope.
3 Get pages that use a reference As a Reader, I want to get a list of all pages that use a reference, so that I can understand the context of that reference. Must have Reverse lookup for references, probably paginated. Again, reference identity isn't fully developed here, but probably "different pages of the same book or article" and "different fragments ('page#section') of the same web page" count as "the same reference".
4 Get author details As a Reader, I want to get further details about an author, so that I can understand the point of view of a reference. Optional Schema TBD; probably name, institutional affiliation (?), link to Wikipedia page if available, Wikidata item, description if available, thumbnail image if available? Born/died, maybe. A lot of conditional features here.
5 Get publication details As a Reader, I want to get further details about a publication, so that I can understand the point of view of a reference. Optional Schema TBD; name, Wikipedia page, Wikidata item, description, thumbnail image, founded/closed, others?
6 Get categories that use a reference As a Reader, I want to get a list of all categories that contain pages that use a reference, so that I can understand the context of a reference. Must have Distills the information in 3 with some higher-level data.
7 Get section references As a Reader, I want to have a list of all references in a section of a page, so that I can review and compare them in different ways. Must have Similar to 1, but restricted to a section of a page.
8 Get reference quality rating As a Reader, I want to get a quality rating from 1-10 for a reference, in order to evaluate whether the reference is reliable. Optional This is a huge project in itself; I think it's not doable by CPT. Only here because it's in the iOS mockups. I'd suggest we loop in Scoring Platform to consider ways to do it in the future.


Documentation Links

< Initiatives

Phabricator

None given

Plans/RFCs

None given

Other Documents

Schema

Subpages