User:Apsdehal

About Me:
Hi, I'm Amanpreet Singh. I am a second year student currently enrolled in Electrical Engineering (IV Year Course) at IIT Roorkee.

I developed a passion for programming and web development in my freshman year. I am regularly contributing to Mediawiki since November 2013.

I am an active member of SDSLabs at IIT Roorkee.

I am currently proficient in Javascript, PHP, Python and Node.js.

Works done till now:

 * 1) Build web app for a local startup at IIT Roorkee, Roorkee Delivers.
 * 2) Created a code sharing website OpenCode
 * 3) A web app that makes matches on the basis of common interest between two people [1 ].
 * 4) jQuery plugin for shopping cart ( jCart ) and cookies ( jCookie ).
 * 5) Github Profile.
 * 6) I am currently trying to fix bugs in Mediawiki (Gerrit Repo).
 * 7) I have mostly worked on improve the extension Multimedia Viewer.
 * 1) Fixed:
 * 2) Bug 56445
 * 3) Bug 56446
 * 4) Bug 56742
 * 5) Bug 56121
 * 6) Bug 48435
 * 7) Bug 53438
 * 8) Working on:
 * 9) Bug 58848
 * 10) Bug 59936
 * 11) Bug 56471

Project
Annotation Tool that extracts information from the books and feed them on wikidata

Name
Amanpreet Singh

Email
amanpreet.iitr2013@gmail.com

IRC Nick
apsdehal

Web Page / Blog / Microblog:
Spookout

Location
Roorkee, Uttarakhand, India

Typical Working Hours:
10:00- 13:00, 15:30-19:00, 22:00-03:00 ( IST ) 4:30- 7:30, 9:30-1:30, 16:30- 21:30 ( UTC )

Possible Mentors
1. Cristian Consonni 2. Andrea Zanni 3. The Pundit team

Synopsis
Project is strongly based on belief to improve the user interactivity with Wikidata and create a whole new world of data sharing

and saving by creating a tool that on highlighting a statement would provide a GUI to fix its structure then feed it to Wikidata.

Wikidata is a free information base that is same for humans and machines. It centralizes access to and structurally manage

data so that every piece of data is easily available and accessible. By the means of the extension people can save their important

notes and quotes directly on Wikidata hence making it more accessible.

Need
1. You are at home, reading a book. You often note important points all around the book by annotating it. Often you want

to share this info with world or save them for future use. So think of a solution such that you annotate and directly feed

and share important quotes to the knowledge base of Wikidata.

2. You are at presentation or some sort of seminar. Say you see a very important point during presentation and you want

to take a note of it, then this tool again comes to your rescue. Just annotate it. Specify your structure, click! Its on Wikidata.

3. This can directly unveil a new dimension of sharing and saving data so that its never lost on the same time making Wikidata

more approachable and accessible.

How it will work?
I am going to create a Mediawiki extension for this project that will offer a GUI on highlighting a sentence. This GUI will

analyze the statement using Pundit software, as a triple (subject, object, predicate), offer a change screen and then feed

the same to Wikidata by linking to its items and property. The tool will offer suggestions based on the existing properties and

items on Wikidata. For the whole process, we are going to use Wikidata's regularly improving API to achieve our goal.

Through this whole data I saved or searched will be shared with the global world.

Following schema shows how the extension will work in details:

1. Firstly we are going to track the user using api to check if he/she is login and if not redirect to login page.

2. Pundit integrated with Mediawiki will be packaged as an extension that can be enable or as a browser plugin.

3. We will provide a GUI to the user so that he/she can annotate text and then warn them if the wikidata already contains such

annotation, this task is to be done using wikidata api.

4. Pundit will analyze the annotation as subject, object and predicate and then save it at Pundit server.

5. If its a valid wikidata item then it will saved at wikidata too, also providing extra information about the annotation. (like if the

annotation is done on wikisource then the book representing the annotation should be represented as source of information)

6. The flow will be unidirectional, that the user create annotations, save it on Pundit server then it is synchronized with wikidata.

7. Further extensions to this project can be Bidirectionality, extension should be made independent of Pundit server.