snapquery 0.0.4__tar.gz → 0.0.6__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {snapquery-0.0.4 → snapquery-0.0.6}/.gitignore +2 -0
- {snapquery-0.0.4 → snapquery-0.0.6}/PKG-INFO +110 -18
- snapquery-0.0.6/README.md +166 -0
- {snapquery-0.0.4 → snapquery-0.0.6}/pyproject.toml +12 -2
- snapquery-0.0.6/samples/ceur-ws.json +198 -0
- snapquery-0.0.6/samples/scholia.json +3350 -0
- snapquery-0.0.6/samples/wikidata-examples.json +2386 -0
- snapquery-0.0.6/scripts/restore_db +10 -0
- snapquery-0.0.6/snapquery/__init__.py +1 -0
- snapquery-0.0.6/snapquery/error_filter.py +49 -0
- snapquery-0.0.6/snapquery/mwlogin.py +56 -0
- snapquery-0.0.6/snapquery/params.py +65 -0
- snapquery-0.0.6/snapquery/qimport.py +93 -0
- snapquery-0.0.6/snapquery/qimport_view.py +86 -0
- snapquery-0.0.6/snapquery/scholia.py +50 -0
- {snapquery-0.0.4 → snapquery-0.0.6}/snapquery/snapquery_cmd.py +28 -4
- {snapquery-0.0.4 → snapquery-0.0.6}/snapquery/snapquery_core.py +245 -91
- {snapquery-0.0.4 → snapquery-0.0.6}/snapquery/snapquery_view.py +70 -18
- {snapquery-0.0.4 → snapquery-0.0.6}/snapquery/snapquery_webserver.py +62 -6
- {snapquery-0.0.4 → snapquery-0.0.6}/snapquery/version.py +1 -1
- snapquery-0.0.6/snapquery.puml +49 -0
- {snapquery-0.0.4 → snapquery-0.0.6}/tests/test_cmdline.py +5 -7
- snapquery-0.0.6/tests/test_error_filter.py +34 -0
- snapquery-0.0.6/tests/test_import.py +66 -0
- snapquery-0.0.6/tests/test_namedqueries.py +70 -0
- snapquery-0.0.6/tests/test_oauth.py +41 -0
- snapquery-0.0.6/tests/test_params.py +35 -0
- {snapquery-0.0.4 → snapquery-0.0.6}/tests/test_restful_api.py +10 -1
- snapquery-0.0.6/tests/test_scholia.py +43 -0
- {snapquery-0.0.4 → snapquery-0.0.6}/tests/test_wd_query_parsing.py +29 -4
- snapquery-0.0.4/README.md +0 -76
- snapquery-0.0.4/snapquery/__init__.py +0 -1
- snapquery-0.0.4/snapquery/scholia.py +0 -49
- snapquery-0.0.4/tests/test_namedqueries.py +0 -39
- snapquery-0.0.4/tests/test_scholia.py +0 -26
- {snapquery-0.0.4 → snapquery-0.0.6}/.github/workflows/build.yml +0 -0
- {snapquery-0.0.4 → snapquery-0.0.6}/.github/workflows/upload-to-pypi.yml +0 -0
- {snapquery-0.0.4 → snapquery-0.0.6}/.project +0 -0
- {snapquery-0.0.4 → snapquery-0.0.6}/.pydevproject +0 -0
- {snapquery-0.0.4 → snapquery-0.0.6}/LICENSE +0 -0
- {snapquery-0.0.4 → snapquery-0.0.6}/scripts/blackisort +0 -0
- {snapquery-0.0.4 → snapquery-0.0.6}/scripts/install +0 -0
- {snapquery-0.0.4 → snapquery-0.0.6}/scripts/test +0 -0
- {snapquery-0.0.4 → snapquery-0.0.6}/tests/__init__.py +0 -0
- {snapquery-0.0.4 → snapquery-0.0.6}/tests/test_endpoints.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.3
|
|
2
2
|
Name: snapquery
|
|
3
|
-
Version: 0.0.
|
|
3
|
+
Version: 0.0.6
|
|
4
4
|
Summary: snapquery: Introduce Named Queries and Named Query Middleware to wikidata
|
|
5
5
|
Project-URL: Home, https://github.com/WolfgangFahl/snapquery
|
|
6
6
|
Project-URL: Documentation, https://wiki.bitplan.com/index.php/snapquery
|
|
@@ -24,20 +24,29 @@ Classifier: Programming Language :: Python :: 3.11
|
|
|
24
24
|
Classifier: Programming Language :: Python :: 3.12
|
|
25
25
|
Classifier: Topic :: Software Development :: User Interfaces
|
|
26
26
|
Requires-Python: >=3.9
|
|
27
|
-
Requires-Dist:
|
|
27
|
+
Requires-Dist: mwoauth>=0.4.0
|
|
28
|
+
Requires-Dist: ngwidgets>=0.15.0
|
|
28
29
|
Requires-Dist: pylodstorage>=0.10.5
|
|
29
30
|
Requires-Dist: requests
|
|
31
|
+
Requires-Dist: tqdm>=4.66.4
|
|
30
32
|
Requires-Dist: wikitextparser
|
|
31
33
|
Provides-Extra: test
|
|
32
34
|
Requires-Dist: green; extra == 'test'
|
|
33
35
|
Description-Content-Type: text/markdown
|
|
34
36
|
|
|
35
37
|
# snapQuery
|
|
36
|
-
|
|
37
|
-
|
|
38
|
+
Just query wikidata by name of query ...
|
|
39
|
+
<pre>snapquery cats</pre> is all you need
|
|
38
40
|
|
|
39
|
-
|
|
40
|
-
|
|
41
|
+
This endpoint and query detail independent style of querying wikidata and ther SPARQL services
|
|
42
|
+
makes your queries future proof. No worries about blazegraph being replaced, the graph being split or timeouts haunting you. snapquery introduces named queries and named query middleware to wikidata and other SPARQL endpoints
|
|
43
|
+
|
|
44
|
+
snapquery is a tool that simplifies the process of previewing, annotating, rating, commenting, running, and exploring Wikidata
|
|
45
|
+
queries across different SPARQL backends. It enhances user experience by storing query results and allowing easy
|
|
46
|
+
comparison across various backends and over time.
|
|
47
|
+
|
|
48
|
+
This tool is designed to assist users in curating and collaborating on queries, ensuring their continued functionality
|
|
49
|
+
over time. Developers and data consumers can access data conveniently through APIs, streamlining their workflow.
|
|
41
50
|
|
|
42
51
|
[](https://github.com/WolfgangFahl/snapquery/discussions)
|
|
43
52
|
[](https://pypi.org/project/snapquery/)
|
|
@@ -48,44 +57,94 @@ Developers and data consumers can get access to the data via APIs.
|
|
|
48
57
|
[](https://www.apache.org/licenses/LICENSE-2.0)
|
|
49
58
|
|
|
50
59
|
## Demos
|
|
60
|
+
|
|
61
|
+
* [wikimedia toolhub](https://toolhub.wikimedia.org/tools/snapquery)
|
|
51
62
|
* [BITPlan](https://snapquery.bitplan.com)
|
|
52
63
|
* [RWTH Aachen i5](https://snapquery.wikidata.dbis.rwth-aachen.de/)
|
|
53
64
|
|
|
65
|
+
## Background
|
|
66
|
+
|
|
67
|
+
In the Wikimedia ecosystem, we now boast several SPARQL engines and backends housing the complete Wikidata graph for
|
|
68
|
+
querying purposes.
|
|
69
|
+
|
|
70
|
+
Over recent years, WDQS has encountered escalating timeouts as the graph expands. Users desire alternative endpoints
|
|
71
|
+
without grappling with disparities among SPARQL engines and their impact on query construction.
|
|
72
|
+
|
|
73
|
+
Recognizing the needs of Wikidata data consumers, we aim to establish a system that simplifies:
|
|
74
|
+
|
|
75
|
+
- Discovering pre-existing queries
|
|
76
|
+
- Facilitating easy forking, sharing, rating, and monitoring of queries
|
|
77
|
+
- Executing queries (or their variations) on diverse endpoints
|
|
78
|
+
- Comparing query results over time and/or across multiple endpoints
|
|
79
|
+
- Cultivating a collaborative community for query construction
|
|
80
|
+
- Ensuring the reliability of query results
|
|
81
|
+
- Providing alerts if a query no longer yields the expected results
|
|
82
|
+
- Developing tools that access data from dependable, middleware-cached
|
|
83
|
+
queries via an accessible API, eliminating delays for downstream users.
|
|
84
|
+
|
|
85
|
+
# Links
|
|
86
|
+
|
|
87
|
+
* [Phabricator Task: Introduce Named Queries and Named Query Middleware to wikidata](https://phabricator.wikimedia.org/T363894)
|
|
88
|
+
* [Named Queries prototype by Tim Holzheim](https://github.com/tholzheim/named-queries/tree/master)
|
|
89
|
+
|
|
90
|
+
## Docs
|
|
91
|
+
|
|
92
|
+
* [Wiki](https://wiki.bitplan.com/index.php/Snapquery)
|
|
93
|
+
* [API documentation](https://snapquery.bitplan.com/docs)
|
|
94
|
+
* [Wikimedia Hackathon 2024 closing presentation](https://docs.google.com/presentation/d/1hVoIwRHjmA8x2scl7SUpsx4p9CEhdSCN/preview)
|
|
95
|
+
* [](https://youtu.be/-fHTdldf5Xo?t=3176)
|
|
96
|
+
|
|
97
|
+
|
|
98
|
+
### Model
|
|
99
|
+
|
|
100
|
+

|
|
54
101
|
|
|
102
|
+
## Authors
|
|
103
|
+
|
|
104
|
+
* [Wolfgang Fahl](http://www.bitplan.com/Wolfgang_Fahl)
|
|
105
|
+
* [Tim Holzheim](https://rwthcontacts.rwth-aachen.de/person/PER-46LT8TU)
|
|
55
106
|
|
|
56
107
|
# Features
|
|
108
|
+
|
|
57
109
|
## Planned
|
|
110
|
+
|
|
58
111
|
These are the planned features
|
|
112
|
+
|
|
113
|
+
* support for naming queries ([#9][i9]) ✅
|
|
114
|
+
* support for sharing queries (unique identifier) ([#2][i2]) ✅
|
|
59
115
|
* query multiple backends simultaneously and repeatedly
|
|
60
116
|
* stores queries and adaptations needed for different backends
|
|
61
117
|
* support user login
|
|
62
118
|
* support for spam protection
|
|
63
|
-
* support for naming queries
|
|
64
119
|
* support for rating queries
|
|
65
|
-
* support for sharing queries (unique identifier)
|
|
66
120
|
* support for commenting on queries
|
|
67
121
|
* support for detecting when a query returns different results between different backends
|
|
68
122
|
* support for query states: reliable, needs investigation, need verification
|
|
69
|
-
* support for autodetecting when a query returns fewer results than before (change in underlying data/model in
|
|
123
|
+
* support for autodetecting when a query returns fewer results than before (change in underlying data/model in
|
|
124
|
+
Wikidata) -> needs investigation
|
|
70
125
|
* support for marking queries as reliable query by users
|
|
71
126
|
* support for seeing a state history per query
|
|
72
127
|
* support for storing query results so you don’t have to wait
|
|
73
128
|
* support for adding metadata to queries
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
* has REST API for data consumers e.g. LLM developers who want to present user-verified queries and data to users to
|
|
129
|
+
* add main subject (QID) to query
|
|
130
|
+
* author -> id of author in the system
|
|
131
|
+
* forked from x
|
|
132
|
+
* has REST API for data consumers e.g. LLM developers who want to present user-verified queries and data to users to
|
|
133
|
+
increase reliability
|
|
78
134
|
|
|
79
135
|
## User stories
|
|
136
|
+
|
|
80
137
|
* as a user I want to know in advance if the query is returning what I expect
|
|
81
138
|
* as a user I want to find all the bands in Wikidata without having to know how it is modeled
|
|
82
139
|
* as a user I want pay someone to help me get the information from Wikidata that I need
|
|
83
|
-
* as a user I want to know how a query performed in the past so I can trust that the underlying model is stable and I
|
|
140
|
+
* as a user I want to know how a query performed in the past so I can trust that the underlying model is stable and I
|
|
141
|
+
get the expected results
|
|
84
142
|
* as a user I want to comment on a query
|
|
85
143
|
* as a user I want to read comments from others on a query so I get and idea how reliable it is
|
|
86
144
|
* as a user I want to rate a query with 1-5 stars
|
|
87
145
|
* as a user I want to get information from multiple sparql engines at the same time
|
|
88
|
-
* as a user I don’t want to wait for a fresh query to finish and just get the information from the latest time a query
|
|
146
|
+
* as a user I don’t want to wait for a fresh query to finish and just get the information from the latest time a query
|
|
147
|
+
succeeded.
|
|
89
148
|
* as a user I want a list of queries in the middleware
|
|
90
149
|
* as a user I want to sort the list based on the rate of queries
|
|
91
150
|
* as a user I want to annotate a query with a name
|
|
@@ -93,7 +152,8 @@ These are the planned features
|
|
|
93
152
|
* as a user I want to see a list of queries that is tagged with a certain topic (wikidata item)
|
|
94
153
|
* as a user I want an API to get information from the middleware about queries
|
|
95
154
|
* as a user I want an api endpoint /list that gives me all queries with the main subject=Qxxxx
|
|
96
|
-
* as a user I want the system to warn me and annotate a query that no longer returns the data the user expects, ie. if a
|
|
155
|
+
* as a user I want the system to warn me and annotate a query that no longer returns the data the user expects, ie. if a
|
|
156
|
+
query suddenly start returning no results or fewer results
|
|
97
157
|
* as a user I want to see a state on a query
|
|
98
158
|
* as a user I want to log in using github to avoid the hassle of creating another account
|
|
99
159
|
* as a user I want to log in using gitlab to avoid the hassle of creating another account
|
|
@@ -103,8 +163,40 @@ These are the planned features
|
|
|
103
163
|
* as a user I want to import a query by copy pasting a url from WDQS
|
|
104
164
|
* as a user I want to run a query on multiple backends with one click
|
|
105
165
|
* as a user I want to fork a query and build on it
|
|
166
|
+
* as a user I want an email if a query I'm watching needs investigation
|
|
167
|
+
* as a user I want settings to control whether I get email notifications or not for all queries I'm watching
|
|
168
|
+
* as a user I want to watch a query
|
|
169
|
+
* as a user I want to see the history of actions of other users
|
|
170
|
+
* as a user I want to know who created a query
|
|
171
|
+
* as a user I want a setting to get email about new comments on queries I'm watching
|
|
172
|
+
* as a user I want a setting to get emails about new queries every day, week, month
|
|
173
|
+
* as a user I want to star a query
|
|
174
|
+
* as a user I want to browse queries and sort by number of stars
|
|
175
|
+
* as a user I want to see who starred a query
|
|
176
|
+
* as a user I want to see a list of my notifications
|
|
106
177
|
* as a wikidata contributor I want to be able to override the “bad query” state
|
|
107
|
-
* as a wikidata user I want to be able to log in using my wmf credentials to avoid the hassle of creating another
|
|
178
|
+
* as a wikidata user I want to be able to log in using my wmf credentials to avoid the hassle of creating another
|
|
179
|
+
account
|
|
108
180
|
* as a wikidata user I want to link my current account to my wmf account so others can find me by username
|
|
109
181
|
* as a developer I want to expose the data in API endpoints
|
|
110
|
-
* as a LLM developer I want to consume the queries and use them to improve my LLM so it can suggest KNOWN GOOD queries
|
|
182
|
+
* as a LLM developer I want to consume the queries and use them to improve my LLM so it can suggest KNOWN GOOD queries
|
|
183
|
+
to users
|
|
184
|
+
|
|
185
|
+
[i10]: https://github.com/WolfgangFahl/snapquery/issues/10
|
|
186
|
+
[i9]: https://github.com/WolfgangFahl/snapquery/issues/9
|
|
187
|
+
|
|
188
|
+
[i8]: https://github.com/WolfgangFahl/snapquery/issues/8
|
|
189
|
+
|
|
190
|
+
[i7]: https://github.com/WolfgangFahl/snapquery/issues/7
|
|
191
|
+
|
|
192
|
+
[i6]: https://github.com/WolfgangFahl/snapquery/issues/6
|
|
193
|
+
|
|
194
|
+
[i5]: https://github.com/WolfgangFahl/snapquery/issues/5
|
|
195
|
+
|
|
196
|
+
[i4]: https://github.com/WolfgangFahl/snapquery/issues/4
|
|
197
|
+
|
|
198
|
+
[i3]: https://github.com/WolfgangFahl/snapquery/issues/3
|
|
199
|
+
|
|
200
|
+
[i2]: https://github.com/WolfgangFahl/snapquery/issues/2
|
|
201
|
+
|
|
202
|
+
[i1]: https://github.com/WolfgangFahl/snapquery/issues/1
|
|
@@ -0,0 +1,166 @@
|
|
|
1
|
+
# snapQuery
|
|
2
|
+
Just query wikidata by name of query ...
|
|
3
|
+
<pre>snapquery cats</pre> is all you need
|
|
4
|
+
|
|
5
|
+
This endpoint and query detail independent style of querying wikidata and ther SPARQL services
|
|
6
|
+
makes your queries future proof. No worries about blazegraph being replaced, the graph being split or timeouts haunting you. snapquery introduces named queries and named query middleware to wikidata and other SPARQL endpoints
|
|
7
|
+
|
|
8
|
+
snapquery is a tool that simplifies the process of previewing, annotating, rating, commenting, running, and exploring Wikidata
|
|
9
|
+
queries across different SPARQL backends. It enhances user experience by storing query results and allowing easy
|
|
10
|
+
comparison across various backends and over time.
|
|
11
|
+
|
|
12
|
+
This tool is designed to assist users in curating and collaborating on queries, ensuring their continued functionality
|
|
13
|
+
over time. Developers and data consumers can access data conveniently through APIs, streamlining their workflow.
|
|
14
|
+
|
|
15
|
+
[](https://github.com/WolfgangFahl/snapquery/discussions)
|
|
16
|
+
[](https://pypi.org/project/snapquery/)
|
|
17
|
+
[](https://github.com/WolfgangFahl/snapquery/actions/workflows/build.yml)
|
|
18
|
+
[](https://pypi.python.org/pypi/snapquery/)
|
|
19
|
+
[](https://github.com/WolfgangFahl/snapquery/issues)
|
|
20
|
+
[](https://github.com/WolfgangFahl/snapquery/issues/?q=is%3Aissue+is%3Aclosed)
|
|
21
|
+
[](https://www.apache.org/licenses/LICENSE-2.0)
|
|
22
|
+
|
|
23
|
+
## Demos
|
|
24
|
+
|
|
25
|
+
* [wikimedia toolhub](https://toolhub.wikimedia.org/tools/snapquery)
|
|
26
|
+
* [BITPlan](https://snapquery.bitplan.com)
|
|
27
|
+
* [RWTH Aachen i5](https://snapquery.wikidata.dbis.rwth-aachen.de/)
|
|
28
|
+
|
|
29
|
+
## Background
|
|
30
|
+
|
|
31
|
+
In the Wikimedia ecosystem, we now boast several SPARQL engines and backends housing the complete Wikidata graph for
|
|
32
|
+
querying purposes.
|
|
33
|
+
|
|
34
|
+
Over recent years, WDQS has encountered escalating timeouts as the graph expands. Users desire alternative endpoints
|
|
35
|
+
without grappling with disparities among SPARQL engines and their impact on query construction.
|
|
36
|
+
|
|
37
|
+
Recognizing the needs of Wikidata data consumers, we aim to establish a system that simplifies:
|
|
38
|
+
|
|
39
|
+
- Discovering pre-existing queries
|
|
40
|
+
- Facilitating easy forking, sharing, rating, and monitoring of queries
|
|
41
|
+
- Executing queries (or their variations) on diverse endpoints
|
|
42
|
+
- Comparing query results over time and/or across multiple endpoints
|
|
43
|
+
- Cultivating a collaborative community for query construction
|
|
44
|
+
- Ensuring the reliability of query results
|
|
45
|
+
- Providing alerts if a query no longer yields the expected results
|
|
46
|
+
- Developing tools that access data from dependable, middleware-cached
|
|
47
|
+
queries via an accessible API, eliminating delays for downstream users.
|
|
48
|
+
|
|
49
|
+
# Links
|
|
50
|
+
|
|
51
|
+
* [Phabricator Task: Introduce Named Queries and Named Query Middleware to wikidata](https://phabricator.wikimedia.org/T363894)
|
|
52
|
+
* [Named Queries prototype by Tim Holzheim](https://github.com/tholzheim/named-queries/tree/master)
|
|
53
|
+
|
|
54
|
+
## Docs
|
|
55
|
+
|
|
56
|
+
* [Wiki](https://wiki.bitplan.com/index.php/Snapquery)
|
|
57
|
+
* [API documentation](https://snapquery.bitplan.com/docs)
|
|
58
|
+
* [Wikimedia Hackathon 2024 closing presentation](https://docs.google.com/presentation/d/1hVoIwRHjmA8x2scl7SUpsx4p9CEhdSCN/preview)
|
|
59
|
+
* [](https://youtu.be/-fHTdldf5Xo?t=3176)
|
|
60
|
+
|
|
61
|
+
|
|
62
|
+
### Model
|
|
63
|
+
|
|
64
|
+

|
|
65
|
+
|
|
66
|
+
## Authors
|
|
67
|
+
|
|
68
|
+
* [Wolfgang Fahl](http://www.bitplan.com/Wolfgang_Fahl)
|
|
69
|
+
* [Tim Holzheim](https://rwthcontacts.rwth-aachen.de/person/PER-46LT8TU)
|
|
70
|
+
|
|
71
|
+
# Features
|
|
72
|
+
|
|
73
|
+
## Planned
|
|
74
|
+
|
|
75
|
+
These are the planned features
|
|
76
|
+
|
|
77
|
+
* support for naming queries ([#9][i9]) ✅
|
|
78
|
+
* support for sharing queries (unique identifier) ([#2][i2]) ✅
|
|
79
|
+
* query multiple backends simultaneously and repeatedly
|
|
80
|
+
* stores queries and adaptations needed for different backends
|
|
81
|
+
* support user login
|
|
82
|
+
* support for spam protection
|
|
83
|
+
* support for rating queries
|
|
84
|
+
* support for commenting on queries
|
|
85
|
+
* support for detecting when a query returns different results between different backends
|
|
86
|
+
* support for query states: reliable, needs investigation, need verification
|
|
87
|
+
* support for autodetecting when a query returns fewer results than before (change in underlying data/model in
|
|
88
|
+
Wikidata) -> needs investigation
|
|
89
|
+
* support for marking queries as reliable query by users
|
|
90
|
+
* support for seeing a state history per query
|
|
91
|
+
* support for storing query results so you don’t have to wait
|
|
92
|
+
* support for adding metadata to queries
|
|
93
|
+
* add main subject (QID) to query
|
|
94
|
+
* author -> id of author in the system
|
|
95
|
+
* forked from x
|
|
96
|
+
* has REST API for data consumers e.g. LLM developers who want to present user-verified queries and data to users to
|
|
97
|
+
increase reliability
|
|
98
|
+
|
|
99
|
+
## User stories
|
|
100
|
+
|
|
101
|
+
* as a user I want to know in advance if the query is returning what I expect
|
|
102
|
+
* as a user I want to find all the bands in Wikidata without having to know how it is modeled
|
|
103
|
+
* as a user I want pay someone to help me get the information from Wikidata that I need
|
|
104
|
+
* as a user I want to know how a query performed in the past so I can trust that the underlying model is stable and I
|
|
105
|
+
get the expected results
|
|
106
|
+
* as a user I want to comment on a query
|
|
107
|
+
* as a user I want to read comments from others on a query so I get and idea how reliable it is
|
|
108
|
+
* as a user I want to rate a query with 1-5 stars
|
|
109
|
+
* as a user I want to get information from multiple sparql engines at the same time
|
|
110
|
+
* as a user I don’t want to wait for a fresh query to finish and just get the information from the latest time a query
|
|
111
|
+
succeeded.
|
|
112
|
+
* as a user I want a list of queries in the middleware
|
|
113
|
+
* as a user I want to sort the list based on the rate of queries
|
|
114
|
+
* as a user I want to annotate a query with a name
|
|
115
|
+
* as a user I want to annotate a query with a wikidata item as main subject
|
|
116
|
+
* as a user I want to see a list of queries that is tagged with a certain topic (wikidata item)
|
|
117
|
+
* as a user I want an API to get information from the middleware about queries
|
|
118
|
+
* as a user I want an api endpoint /list that gives me all queries with the main subject=Qxxxx
|
|
119
|
+
* as a user I want the system to warn me and annotate a query that no longer returns the data the user expects, ie. if a
|
|
120
|
+
query suddenly start returning no results or fewer results
|
|
121
|
+
* as a user I want to see a state on a query
|
|
122
|
+
* as a user I want to log in using github to avoid the hassle of creating another account
|
|
123
|
+
* as a user I want to log in using gitlab to avoid the hassle of creating another account
|
|
124
|
+
* as a user I want to log in using facebook to avoid the hassle of creating another account
|
|
125
|
+
* as a user I want to know how many backends a query is working on, so I get an overview
|
|
126
|
+
* as a user I want to get query results immediately if possible so I don’t have to wait
|
|
127
|
+
* as a user I want to import a query by copy pasting a url from WDQS
|
|
128
|
+
* as a user I want to run a query on multiple backends with one click
|
|
129
|
+
* as a user I want to fork a query and build on it
|
|
130
|
+
* as a user I want an email if a query I'm watching needs investigation
|
|
131
|
+
* as a user I want settings to control whether I get email notifications or not for all queries I'm watching
|
|
132
|
+
* as a user I want to watch a query
|
|
133
|
+
* as a user I want to see the history of actions of other users
|
|
134
|
+
* as a user I want to know who created a query
|
|
135
|
+
* as a user I want a setting to get email about new comments on queries I'm watching
|
|
136
|
+
* as a user I want a setting to get emails about new queries every day, week, month
|
|
137
|
+
* as a user I want to star a query
|
|
138
|
+
* as a user I want to browse queries and sort by number of stars
|
|
139
|
+
* as a user I want to see who starred a query
|
|
140
|
+
* as a user I want to see a list of my notifications
|
|
141
|
+
* as a wikidata contributor I want to be able to override the “bad query” state
|
|
142
|
+
* as a wikidata user I want to be able to log in using my wmf credentials to avoid the hassle of creating another
|
|
143
|
+
account
|
|
144
|
+
* as a wikidata user I want to link my current account to my wmf account so others can find me by username
|
|
145
|
+
* as a developer I want to expose the data in API endpoints
|
|
146
|
+
* as a LLM developer I want to consume the queries and use them to improve my LLM so it can suggest KNOWN GOOD queries
|
|
147
|
+
to users
|
|
148
|
+
|
|
149
|
+
[i10]: https://github.com/WolfgangFahl/snapquery/issues/10
|
|
150
|
+
[i9]: https://github.com/WolfgangFahl/snapquery/issues/9
|
|
151
|
+
|
|
152
|
+
[i8]: https://github.com/WolfgangFahl/snapquery/issues/8
|
|
153
|
+
|
|
154
|
+
[i7]: https://github.com/WolfgangFahl/snapquery/issues/7
|
|
155
|
+
|
|
156
|
+
[i6]: https://github.com/WolfgangFahl/snapquery/issues/6
|
|
157
|
+
|
|
158
|
+
[i5]: https://github.com/WolfgangFahl/snapquery/issues/5
|
|
159
|
+
|
|
160
|
+
[i4]: https://github.com/WolfgangFahl/snapquery/issues/4
|
|
161
|
+
|
|
162
|
+
[i3]: https://github.com/WolfgangFahl/snapquery/issues/3
|
|
163
|
+
|
|
164
|
+
[i2]: https://github.com/WolfgangFahl/snapquery/issues/2
|
|
165
|
+
|
|
166
|
+
[i1]: https://github.com/WolfgangFahl/snapquery/issues/1
|
|
@@ -16,13 +16,20 @@ maintainers = [
|
|
|
16
16
|
]
|
|
17
17
|
readme = "README.md"
|
|
18
18
|
license = {text = "Apache-2.0"}
|
|
19
|
+
|
|
20
|
+
|
|
19
21
|
dependencies = [
|
|
20
22
|
# https://github.com/WolfgangFahl/nicegui_widgets
|
|
21
|
-
"ngwidgets>=0.
|
|
23
|
+
"ngwidgets>=0.15.0",
|
|
22
24
|
# https://pypi.org/project/pyLodStorage/
|
|
23
25
|
"pyLodStorage>=0.10.5",
|
|
24
26
|
"wikitextparser",
|
|
25
|
-
"requests"
|
|
27
|
+
"requests",
|
|
28
|
+
# https://pypi.org/project/mwoauth/
|
|
29
|
+
"mwoauth>=0.4.0",
|
|
30
|
+
#"mwoauth@git+https://github.com/mediawiki-utilities/python-mwoauth"
|
|
31
|
+
#https://pypi.org/project/tqdm/
|
|
32
|
+
"tqdm>=4.66.4"
|
|
26
33
|
]
|
|
27
34
|
|
|
28
35
|
requires-python = ">=3.9"
|
|
@@ -45,6 +52,9 @@ dynamic = ["version"]
|
|
|
45
52
|
[tool.hatch.version]
|
|
46
53
|
path = "snapquery/__init__.py"
|
|
47
54
|
|
|
55
|
+
[tool.hatch.metadata]
|
|
56
|
+
allow-direct-references = true
|
|
57
|
+
|
|
48
58
|
[project.urls]
|
|
49
59
|
Home = "https://github.com/WolfgangFahl/snapquery"
|
|
50
60
|
Documentation = "https://wiki.bitplan.com/index.php/snapquery"
|
|
@@ -0,0 +1,198 @@
|
|
|
1
|
+
[
|
|
2
|
+
{
|
|
3
|
+
"namespace": "ceur-ws",
|
|
4
|
+
"name": "AllVolumes",
|
|
5
|
+
"title": "All [[Concept:Proceedings|proceedings]]",
|
|
6
|
+
"description": "List all proceedings",
|
|
7
|
+
"url": "https://w.wiki/6UCU"
|
|
8
|
+
},
|
|
9
|
+
{
|
|
10
|
+
"namespace": "ceur-ws",
|
|
11
|
+
"name": "LocationOfEvents",
|
|
12
|
+
"title": "Locations of all CEUR-WS proceedings [[Concept:Proceedings|proceedings]] [[Concept:Event|events]]",
|
|
13
|
+
"description": "Map of all CEUR-WS event locations",
|
|
14
|
+
"url": "https://w.wiki/8gRw"
|
|
15
|
+
},
|
|
16
|
+
{
|
|
17
|
+
"namespace": "ceur-ws",
|
|
18
|
+
"name": "AllPapers",
|
|
19
|
+
"title": "All [[Concept:Paper|papers]]",
|
|
20
|
+
"description": "List all papers published via CEUR-WS",
|
|
21
|
+
"url": "https://w.wiki/6UJb"
|
|
22
|
+
},
|
|
23
|
+
{
|
|
24
|
+
"namespace": "ceur-ws",
|
|
25
|
+
"name": "AllEvents",
|
|
26
|
+
"title": "All [[Concept:Event|events]]",
|
|
27
|
+
"description": "List all proceeding events for proceedings published via CEUR-WS",
|
|
28
|
+
"url": "https://w.wiki/6UKq"
|
|
29
|
+
},
|
|
30
|
+
{
|
|
31
|
+
"namespace": "ceur-ws",
|
|
32
|
+
"name": "AllEventSeries",
|
|
33
|
+
"title": "All [[Concept:EventSeries|event series]]",
|
|
34
|
+
"description": "List all event series that have at least one event whose proceedings have been published through CEUR-WS.",
|
|
35
|
+
"url": "https://w.wiki/6UE4"
|
|
36
|
+
},
|
|
37
|
+
{
|
|
38
|
+
"namespace": "ceur-ws",
|
|
39
|
+
"name": "AllScholars",
|
|
40
|
+
"title": "All [[Concept:Scholar|scholars]]",
|
|
41
|
+
"description": "List all scholars that have at least once (co-)authored a paper or proceeding that has been published through CEUR-WS.",
|
|
42
|
+
"url": "https://w.wiki/6UT6"
|
|
43
|
+
},
|
|
44
|
+
{
|
|
45
|
+
"namespace": "ceur-ws",
|
|
46
|
+
"name": "AllInstitutions",
|
|
47
|
+
"title": "All [[Concept:Institution|institutions]]",
|
|
48
|
+
"description": "List all institutions from which at least one scholar has once (co-)authored a paper or proceeding that has been published through CEUR-WS.",
|
|
49
|
+
"url": "https://w.wiki/6UKK"
|
|
50
|
+
},
|
|
51
|
+
{
|
|
52
|
+
"namespace": "ceur-ws",
|
|
53
|
+
"name": "AllAuthorsOfPapersOfProceedings",
|
|
54
|
+
"title": "Authors of [[Concept:Paper|papers]] of [[Concept:Proceedings|proceedings]]",
|
|
55
|
+
"description": "List all authors of all papers of all proceedings",
|
|
56
|
+
"url": "https://w.wiki/6UTH"
|
|
57
|
+
},
|
|
58
|
+
{
|
|
59
|
+
"namespace": "ceur-ws",
|
|
60
|
+
"name": "DuplicateAndEmptyURNs",
|
|
61
|
+
"title": "Duplicate and Empty URNs of [[Concept:Proceedings|proceedings]]",
|
|
62
|
+
"description": "List all proceedings with duplicate URN ids",
|
|
63
|
+
"url": "https://w.wiki/8eaz"
|
|
64
|
+
},
|
|
65
|
+
{
|
|
66
|
+
"namespace": "ceur-ws",
|
|
67
|
+
"name": "DuplicateVolumeNumbers",
|
|
68
|
+
"title": "Duplicate CEUR-WS Volume numbers of [[Concept:Proceedings|proceedings]]",
|
|
69
|
+
"description": "List all wikidata proceedings with duplicate Volume numbers",
|
|
70
|
+
"url": "https://w.wiki/8ea4"
|
|
71
|
+
},
|
|
72
|
+
{
|
|
73
|
+
"namespace": "ceur-ws",
|
|
74
|
+
"name": "AllEditorsOfWorkshop",
|
|
75
|
+
"title": "All Editors of Workshop(Volume W)",
|
|
76
|
+
"description": "List the full names of all editors of the proceedings of workshop W.",
|
|
77
|
+
"url": "https://w.wiki/6UAa"
|
|
78
|
+
},
|
|
79
|
+
{
|
|
80
|
+
"namespace": "ceur-ws",
|
|
81
|
+
"name": "NumberOfEditionsOfWorkshopSeries",
|
|
82
|
+
"title": "Number of Editions of workshop series",
|
|
83
|
+
"description": "Determine the number of editions that the workshop series titled T has had, regardless of whether published with CEUR-WS.org.",
|
|
84
|
+
"url": "https://w.wiki/6UB4"
|
|
85
|
+
},
|
|
86
|
+
{
|
|
87
|
+
"namespace": "ceur-ws",
|
|
88
|
+
"name": "ChangeOfWorkshopTitle",
|
|
89
|
+
"title": "Change of Workshop title",
|
|
90
|
+
"description": "(Change of workshop title) Determine the title (without year) that workshop W had in its first edition.",
|
|
91
|
+
"url": "https://w.wiki/6UB5"
|
|
92
|
+
},
|
|
93
|
+
{
|
|
94
|
+
"namespace": "ceur-ws",
|
|
95
|
+
"name": "JointlyPublishedPapers",
|
|
96
|
+
"title": "Jointly published papers",
|
|
97
|
+
"description": "(Papers of a workshop published jointly with others) Identify the papers of the workshop titled T (which was published in a joint volume V with other workshops).",
|
|
98
|
+
"url": "https://w.wiki/6UBA"
|
|
99
|
+
},
|
|
100
|
+
{
|
|
101
|
+
"namespace": "ceur-ws",
|
|
102
|
+
"name": "EditorsOfJointlyPublishedPapers",
|
|
103
|
+
"title": "Editors of jointly published papers",
|
|
104
|
+
"description": "(Editors of one workshop published jointly with others) List the full names of all editors of the proceedings of the workshop titled T (which was published in a joint volume V with other workshops).",
|
|
105
|
+
"url": "https://w.wiki/6UBB"
|
|
106
|
+
},
|
|
107
|
+
{
|
|
108
|
+
"namespace": "ceur-ws",
|
|
109
|
+
"name": "NumberOfPapersInWorkshop",
|
|
110
|
+
"title": "Number of Papers in Workshop(Volume W)",
|
|
111
|
+
"description": "Count the number of papers in workshop W.",
|
|
112
|
+
"url": "https://w.wiki/6UAd"
|
|
113
|
+
},
|
|
114
|
+
{
|
|
115
|
+
"namespace": "ceur-ws",
|
|
116
|
+
"name": "AllAuthorsOfWorkshop",
|
|
117
|
+
"title": "All Authors of Workshop",
|
|
118
|
+
"description": "List the full names of all authors who have (co-)authored a paper in workshop W.",
|
|
119
|
+
"url": "https://w.wiki/6UAf"
|
|
120
|
+
},
|
|
121
|
+
{
|
|
122
|
+
"namespace": "ceur-ws",
|
|
123
|
+
"name": "AverageNoOfPagesInWorkshop",
|
|
124
|
+
"title": "Average # of pages in workshop",
|
|
125
|
+
"description": "Compute the average length of a paper (in pages) in workshop W.",
|
|
126
|
+
"url": "https://w.wiki/6UAX"
|
|
127
|
+
},
|
|
128
|
+
{
|
|
129
|
+
"namespace": "ceur-ws",
|
|
130
|
+
"name": "PublicationTurnaround",
|
|
131
|
+
"title": "Publication turnaround",
|
|
132
|
+
"description": "Find out whether the proceedings of workshop W were published on CEUR-WS.org before the workshop took place.\n\nThis query lists all proceedings that were published before the event took place.",
|
|
133
|
+
"url": "https://w.wiki/6UAk"
|
|
134
|
+
},
|
|
135
|
+
{
|
|
136
|
+
"namespace": "ceur-ws",
|
|
137
|
+
"name": "PreviousEditionsOfAWorkshop",
|
|
138
|
+
"title": "Previous editions of a workshop",
|
|
139
|
+
"description": "(Previous editions of a workshop) Identify all editions that the workshop series titled T has published with CEUR-WS.org.",
|
|
140
|
+
"url": "https://w.wiki/6UAo"
|
|
141
|
+
},
|
|
142
|
+
{
|
|
143
|
+
"namespace": "ceur-ws",
|
|
144
|
+
"name": "ChairsOverTheHistoryOfAWorkshop",
|
|
145
|
+
"title": "Chairs over the history of a workshop",
|
|
146
|
+
"description": "Identify the full names of those chairs of the workshop series titled T that have so far been a chair in every edition of the workshop published with CEUR-WS.org.",
|
|
147
|
+
"url": "https://w.wiki/6UAu"
|
|
148
|
+
},
|
|
149
|
+
{
|
|
150
|
+
"namespace": "ceur-ws",
|
|
151
|
+
"name": "WorkshopsOfConferenceInYear",
|
|
152
|
+
"title": "Workshops of Conference in Year",
|
|
153
|
+
"description": "Identify all CEUR-WS.org proceedings volumes in which workshops of conference C in year Y were published.",
|
|
154
|
+
"url": "https://w.wiki/6UAw"
|
|
155
|
+
},
|
|
156
|
+
{
|
|
157
|
+
"namespace": "ceur-ws",
|
|
158
|
+
"name": "ChairOfWorkshopAsCoauthor",
|
|
159
|
+
"title": "Chair of Workshop as Coauthor",
|
|
160
|
+
"description": "Identify those papers of workshop W that were (co-)authored by at least one chair of the workshop.",
|
|
161
|
+
"url": "https://w.wiki/6UA$"
|
|
162
|
+
},
|
|
163
|
+
{
|
|
164
|
+
"namespace": "ceur-ws",
|
|
165
|
+
"name": "WorksCitedByPaper",
|
|
166
|
+
"title": "Works cited by paper",
|
|
167
|
+
"description": "Identify all works cited by paper X.",
|
|
168
|
+
"url": "https://w.wiki/6UBC"
|
|
169
|
+
},
|
|
170
|
+
{
|
|
171
|
+
"namespace": "ceur-ws",
|
|
172
|
+
"name": "WorksCitedByPaperAfterYear",
|
|
173
|
+
"title": "Works cited by paper after year",
|
|
174
|
+
"description": "Identify all works cited by paper X and published after year Y.",
|
|
175
|
+
"url": "https://w.wiki/6UBF"
|
|
176
|
+
},
|
|
177
|
+
{
|
|
178
|
+
"namespace": "ceur-ws",
|
|
179
|
+
"name": "WikiCfpLinksForWorkshops",
|
|
180
|
+
"title": "Workshop call for papers",
|
|
181
|
+
"description": "Link a CEUR-WS.org workshop W to its call for papers announced on EventSeer and/or WikiCfP.",
|
|
182
|
+
"url": "https://w.wiki/6UKs"
|
|
183
|
+
},
|
|
184
|
+
{
|
|
185
|
+
"namespace": "ceur-ws",
|
|
186
|
+
"name": "WorkshopWebsites",
|
|
187
|
+
"title": "Workshop website",
|
|
188
|
+
"description": "Link a workshop or conference X that appears in the CEUR-WS.org dataset to the workshop's or conference's website URL.",
|
|
189
|
+
"url": "https://w.wiki/6ULB"
|
|
190
|
+
},
|
|
191
|
+
{
|
|
192
|
+
"namespace": "ceur-ws",
|
|
193
|
+
"name": "AuthorActivityInYear",
|
|
194
|
+
"title": "Overall activity in a year",
|
|
195
|
+
"description": "Identify for an author A of a CEUR-WS.org paper P all his/her activity in year Y.",
|
|
196
|
+
"url": "https://w.wiki/6UTP"
|
|
197
|
+
}
|
|
198
|
+
]
|