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.
Files changed (45) hide show
  1. {snapquery-0.0.4 → snapquery-0.0.6}/.gitignore +2 -0
  2. {snapquery-0.0.4 → snapquery-0.0.6}/PKG-INFO +110 -18
  3. snapquery-0.0.6/README.md +166 -0
  4. {snapquery-0.0.4 → snapquery-0.0.6}/pyproject.toml +12 -2
  5. snapquery-0.0.6/samples/ceur-ws.json +198 -0
  6. snapquery-0.0.6/samples/scholia.json +3350 -0
  7. snapquery-0.0.6/samples/wikidata-examples.json +2386 -0
  8. snapquery-0.0.6/scripts/restore_db +10 -0
  9. snapquery-0.0.6/snapquery/__init__.py +1 -0
  10. snapquery-0.0.6/snapquery/error_filter.py +49 -0
  11. snapquery-0.0.6/snapquery/mwlogin.py +56 -0
  12. snapquery-0.0.6/snapquery/params.py +65 -0
  13. snapquery-0.0.6/snapquery/qimport.py +93 -0
  14. snapquery-0.0.6/snapquery/qimport_view.py +86 -0
  15. snapquery-0.0.6/snapquery/scholia.py +50 -0
  16. {snapquery-0.0.4 → snapquery-0.0.6}/snapquery/snapquery_cmd.py +28 -4
  17. {snapquery-0.0.4 → snapquery-0.0.6}/snapquery/snapquery_core.py +245 -91
  18. {snapquery-0.0.4 → snapquery-0.0.6}/snapquery/snapquery_view.py +70 -18
  19. {snapquery-0.0.4 → snapquery-0.0.6}/snapquery/snapquery_webserver.py +62 -6
  20. {snapquery-0.0.4 → snapquery-0.0.6}/snapquery/version.py +1 -1
  21. snapquery-0.0.6/snapquery.puml +49 -0
  22. {snapquery-0.0.4 → snapquery-0.0.6}/tests/test_cmdline.py +5 -7
  23. snapquery-0.0.6/tests/test_error_filter.py +34 -0
  24. snapquery-0.0.6/tests/test_import.py +66 -0
  25. snapquery-0.0.6/tests/test_namedqueries.py +70 -0
  26. snapquery-0.0.6/tests/test_oauth.py +41 -0
  27. snapquery-0.0.6/tests/test_params.py +35 -0
  28. {snapquery-0.0.4 → snapquery-0.0.6}/tests/test_restful_api.py +10 -1
  29. snapquery-0.0.6/tests/test_scholia.py +43 -0
  30. {snapquery-0.0.4 → snapquery-0.0.6}/tests/test_wd_query_parsing.py +29 -4
  31. snapquery-0.0.4/README.md +0 -76
  32. snapquery-0.0.4/snapquery/__init__.py +0 -1
  33. snapquery-0.0.4/snapquery/scholia.py +0 -49
  34. snapquery-0.0.4/tests/test_namedqueries.py +0 -39
  35. snapquery-0.0.4/tests/test_scholia.py +0 -26
  36. {snapquery-0.0.4 → snapquery-0.0.6}/.github/workflows/build.yml +0 -0
  37. {snapquery-0.0.4 → snapquery-0.0.6}/.github/workflows/upload-to-pypi.yml +0 -0
  38. {snapquery-0.0.4 → snapquery-0.0.6}/.project +0 -0
  39. {snapquery-0.0.4 → snapquery-0.0.6}/.pydevproject +0 -0
  40. {snapquery-0.0.4 → snapquery-0.0.6}/LICENSE +0 -0
  41. {snapquery-0.0.4 → snapquery-0.0.6}/scripts/blackisort +0 -0
  42. {snapquery-0.0.4 → snapquery-0.0.6}/scripts/install +0 -0
  43. {snapquery-0.0.4 → snapquery-0.0.6}/scripts/test +0 -0
  44. {snapquery-0.0.4 → snapquery-0.0.6}/tests/__init__.py +0 -0
  45. {snapquery-0.0.4 → snapquery-0.0.6}/tests/test_endpoints.py +0 -0
@@ -158,3 +158,5 @@ cython_debug/
158
158
  # and can be added to the global gitignore or merged into this file. For a more nuclear
159
159
  # option (not recommended) you can uncomment the following to ignore the entire idea folder.
160
160
  #.idea/
161
+ # Nicegui
162
+ .nicegui
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: snapquery
3
- Version: 0.0.4
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: ngwidgets>=0.14.2
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
- Tool that helps users preview, annotate, rate, comment, run and explore Wikidata queries on different sparql backends seamlessly.
37
- It enhances the user experience by storing the results and comparing the results from different backends and comparing over time.
38
+ Just query wikidata by name of query ...
39
+ <pre>snapquery cats</pre> is all you need
38
40
 
39
- The purpose of the tool is to help users curate and collaborate on queries together and make sure they work as expected over time.
40
- Developers and data consumers can get access to the data via APIs.
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
  [![Join the discussion at https://github.com/WolfgangFahl/snapquery/discussions](https://img.shields.io/github/discussions/WolfgangFahl/snapquery)](https://github.com/WolfgangFahl/snapquery/discussions)
43
52
  [![pypi](https://img.shields.io/pypi/pyversions/snapquery)](https://pypi.org/project/snapquery/)
@@ -48,44 +57,94 @@ Developers and data consumers can get access to the data via APIs.
48
57
  [![GitHub](https://img.shields.io/github/license/WolfgangFahl/snapquery)](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
+ * [![Wikimedia Hackathon 2024 video](https://github.com/WolfgangFahl/snapquery/assets/1336221/460756cb-5379-4a93-b465-a5cb26f363bb)](https://youtu.be/-fHTdldf5Xo?t=3176)
96
+
97
+
98
+ ### Model
99
+
100
+ ![Class Diagram](http://www.plantuml.com/plantuml/proxy?src=https://raw.githubusercontent.com/WolfgangFahl/snapquery/main/snapquery.puml?fmt=svg&version=3)
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 Wikidata) -> needs investigation
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
- * add main subject (QID) to query
75
- * author -> id of author in the system
76
- * forked from x
77
- * has REST API for data consumers e.g. LLM developers who want to present user-verified queries and data to users to increase reliability
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 get the expected results
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 succeeded.
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 query suddenly start returning no results or fewer results
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 account
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 to users
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
+ [![Join the discussion at https://github.com/WolfgangFahl/snapquery/discussions](https://img.shields.io/github/discussions/WolfgangFahl/snapquery)](https://github.com/WolfgangFahl/snapquery/discussions)
16
+ [![pypi](https://img.shields.io/pypi/pyversions/snapquery)](https://pypi.org/project/snapquery/)
17
+ [![Github Actions Build](https://github.com/WolfgangFahl/snapquery/actions/workflows/build.yml/badge.svg)](https://github.com/WolfgangFahl/snapquery/actions/workflows/build.yml)
18
+ [![PyPI Status](https://img.shields.io/pypi/v/snapquery.svg)](https://pypi.python.org/pypi/snapquery/)
19
+ [![GitHub issues](https://img.shields.io/github/issues/WolfgangFahl/snapquery.svg)](https://github.com/WolfgangFahl/snapquery/issues)
20
+ [![GitHub issues](https://img.shields.io/github/issues-closed/WolfgangFahl/snapquery.svg)](https://github.com/WolfgangFahl/snapquery/issues/?q=is%3Aissue+is%3Aclosed)
21
+ [![GitHub](https://img.shields.io/github/license/WolfgangFahl/snapquery)](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
+ * [![Wikimedia Hackathon 2024 video](https://github.com/WolfgangFahl/snapquery/assets/1336221/460756cb-5379-4a93-b465-a5cb26f363bb)](https://youtu.be/-fHTdldf5Xo?t=3176)
60
+
61
+
62
+ ### Model
63
+
64
+ ![Class Diagram](http://www.plantuml.com/plantuml/proxy?src=https://raw.githubusercontent.com/WolfgangFahl/snapquery/main/snapquery.puml?fmt=svg&version=3)
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.14.2",
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
+ ]