Программирование Викиданных
Факультет: Информационные технологии
Кафедра: Программирование, Веб-технологии
Пререквизиты:
Постреквизиты:
Преподаватель: Крижановский Андрей (обсуждение)
Силлабус
Ссылка: w.wiki/62E
Программирование Викиданных (с листингами, рисунками и упражнениями) — это курс, обучающий работе с Викиданными. Курс предназначен для студентов и преподавателей технических вузов, а также для школьников старших классов, углублённо изучающих информатику. В этом курсе вы познакомитесь с языками Python, SPARQL, системой Pywikibot, средой Викиданные.
Автором курса является Крижановский Андрей. Каждая глава курса представляет собой серию задач на одну тему. Решением поставленных задач, оформлением и описанием путей решения занимаются студенты Петрозаводского государственного университета в ходе выполнения работ по предметам «Интернет-математика» и «Автоматическая обработка текста».
Перевод завершённых глав публикуется в Английском Викиверситете в проекте Research in programming Wikidata. Курсу соответствует объект Викиданных d:Q110042825.
В формате LaTeX мы пишем в проекте wd_book на сайте GitHub. Последнюю версию английского варианта книги в формате PDF можно скачать по ссылке. По материалам курса в 2024 году опубликован учебник «Программирование Викиданных».
Добро пожаловать!
правитьНа этой странице координируется работа студентов ПетрГУ, пишущих исследовательские статьи по программированию Викиданных.
Каждый студент, получивший задание, должен зарегистрироваться в Викиверситете или Википедии (см. правый верхний угол), это занимает несколько секунд и не требует получения подтверждения на e-mail. Для регистрации желательно выбрать реальное имя (латиницей или кириллицей), так чтобы ваши правки были легко идентифицируемы. Затем:
- нажмите кнопку «править» напротив заголовка «Викиверситет (первый этап)» (ниже);
- в конце той строки, где указана выбранная вами статья, напишите свой ник и имя так: 📖 [[User:Mary Ivanova|Иванова Мария Сергеевна]].
Приоритет у того, кто раньше указал своё имя в строке со спорной темой.
Некоторые полезные ссылки для работы в в вики-проектах:
Общий обзор смотрите также в стандартном приветствии Шаблон:Привет. Главное помните: синяя ссылка — статья есть, красная — статьи нет, но нажав на неё, Вы попадёте на страницу, где её можно создать. У существующих же статей вверху есть закладка «Править», нажав которую, статью также можно редактировать.
Если у Вас появятся вопросы, можно их задавать прямо на странице обсуждения этого проекта.
Алгоритм работы
правитьАлгоритм работы для новых статей
Алгоритм доработки существующих статей:
- ProWD
- SPARQL — оформление скриптов
- Иллюстрации в Викиверситете
- LaTeX и kaobook + доклад по главам классам LaTeX kaobook
- Три SPARQL-задачи — придумываем и решаем задачи, доклады SPARQL Wikibooks
- Иллюстрация в LaTeX
- Статья в LaTeX на русском + листинги программ, оформление ссылок, индексирование
- Статья в LaTeX на английском
См. также доклады студентов.
Лекции
править- /RAWGraph ‒ Инструмент RAWGraph.io для визуализации Викиданных
- /QuickStatements — Пакетная обработка Викиданных
- /Нормализация единиц измерений
- Todo — Wikidata Graph Builder (see example are the subclasses of museum) (добавить к визуализации темы), см. заглавную страницу с примерами, см. карту соседних штатов по скрипту Connectivity of the USA states
Принятые работы
правитьСписок принятых работ. В какой-то мере это образцы для подражания. Статьи могут дорабатываться любыми участниками Викиверситета.
📖 — символ книги ставится перед именем редактора, работающего с LaTeX.
LaTeX + Викиверситет (второй этап)
править- Предисловие (дописать), 📖 Крижановский Андрей Анатольевич
- Обзор Викиданных (nauchkor.ru) — Елизавета Трубина, 📖 Хомякова Ольга Владимировна
- Тестирование — знакомство с Викиданными
- /Buckets and Balls, СО (LaTeX only, оригинальная статья) — Ivo Velitchkov, 📖 Коробкова Елена Юрьевна
- Bots in Wikidata (LaTeX only) — Ангел Обрегон, 📖 Фролова Марина Игоревна
- компьютерные программы
- страны и города, территориальное деление России; поселения, в том числе деревни и станицы
- техника: корабли, воздушные суда, танки
- технология, информатика
Викиверситет + La (промежуточный этап)
править- кино, мультфильмы, телевидение
- Аниме, СО — Буллиева Дарья, 📖 Паренченков Евгений Олегович (Будущая работа: для упражнений на полях написать решения в главе "Ответы")
- заповедники и ООПТ
- космос
- страны и города, территориальное деление России; поселения, в том числе деревни и станицы
- Населённые пункты, СО ‒ Епарская Анна Сергеевна, 📖 Максименко Леонид Михайлович (англ. LaTeX и Викиверситет, проверить задачи, наиболее финальная версия в русском LaTeX'е)
Викиверситет (первый этап)
править- архивы
- банки и коммерческие организации
- войны и битвы
- заповедники и ООПТ
- катастрофы
- кино, мультфильмы, телевидение
- книги и литературные произведения, картины, музыка
- компьютерные программы
- образование (школы, вузы, институты)
- СМИ, радио, издательства
- страны и города, территориальное деление России; поселения, в том числе деревни и станицы
- разработанные программы, сайты
В процессе
правитьСтатьи над которыми работа ещё не завершена. Чтобы выяснить, что именно осталось сделать — посетите страницу обсуждения соответствующей статьи.
- география и лингвистика
- страны и города
- Качество жизни (в стране) — Гулякова Мария Дмитриевна
- компьютерные программы, компьютеры
- кино, мультфильмы, телевидение
- СМИ, радио, издательства
- история, персоны
- книги и литературные произведения, картины, музыка
Темы на выбор (нулевой этап)
правитьПредложите свою тему или выберите одну из перечисленных тем ниже, указав свои данные следующим образом:
- Название главы [[User:имя пользователя|Фамилия Имя Отчество]]
Можно продолжить работу, которая была начата студентами в предыдущем семестре (см. историю правок интересующей вас страницы).
- языки и названия
- Как связать язык и страну? Упорядочить страны по числу вымирающих языков, см. UNESCO Atlas of the World's Languages in Danger ID (P2355)
- Этнохоронимы. См. Программирование Викиданных/Страны#Этнохоронимы на русском языке. Сделать аналогичную вещь, но для названий городов и деревень России и Карелии.
- медицина
- COVID-19, Коронавирус — Экстраполяция взаимосвязанных кривых числа заражений COVID-19 на примере субъектов России
- Ядерные катастрофы
- Загрязнение ‒ мало данных (тему не выбирать, 2017)
- антропогенный фактор human impact on the environment (Q574376), экологическая проблема environmental issue (Q2144359)
- свалки и полигоны landfill (Q152810) ‒ мало данных (тему не выбирать, 2017)
- natural landscape ‒ мало данных (тему не выбирать, 2017)
- поселения, в том числе деревни и станицы
- школы
- вузы
- институты, академии
- научно-исследовательский институт (см. w:ru:Институты РАН, образец: КарНЦ РАН)
- academy of sciences
- религия
- church — храмы и церкви
- СМИ и издательства
- операции, функции, парадоксы и теоремы
- науки
- войны и битвы
- Война (war)
- military operation ‒ военная операция, см. w:en:Operation Overlord и w:Категория:Плацдармы Великой Отечественной войны
- корабли, воздушные суда и танки
- research vessel ‒ научно-исследовательское судно, см. w:en:List of research vessels by country
- medium tank и другие танки
- транспорт
- выступления и радиопередачи
- книги и литературные произведения, картины, музыка
- писатели (можно углубиться в писателей-фантастов или фэнтези, или любое другое направление)
- Литературные произведения - literary work
- Книги - book (см. статью Manuscripts on Wikidata: the state of the art?)
- Картины - pictures
- public library библиотеки (см. All UK Carnegie libraries)
- красная книга (животные, растения)
Языкознание и литература
править- корпус текстов
- электронная библиотека
- детский писатель
Математики
править- Гениальность и ученики математиков ‒ Елизавета Смыкова
- Возможно, для поиска вклада учёных, кроме свойства "notable work", нужно будет воспользоваться solved by (P1136) или аналогичными (какими?).
- География математиков ‒ Валерия Зайцева
- field of work (math) ‒ Эльвира Кузнецова
- Награды ‒ Дмитрий
- Сеть учреждений и учёных ‒ Виктория Мышева
- Академии и научные сообщества ‒ Елизавета Трубина
- Математики и время ‒ Пересвет Обруч
- Открытые задачи, связанные с математиками
+ связь возраста и наград в разных областях:
- Определить возраст (min, max, avg) получения первой награды. Меняется ли и как меняется этот возраст с каждым десятилетием?
- Работников каких областей математики награждают больше, чаше? Можно ли выделить разные эпохи в математике по превалирующим наградам в разных областях?
- Какие регионы чаще награждают?
- Выпускников каких вузов чаще награждают?
См. ещё задачи: Обсуждение:Программирование Викиданных/География математиков.
- Нарисовать динамическую (интерактивную) карту - число математиков (число наград?) по странам, см. mw:Extension:Graph/Demo/Sparql.
- - Network of brands of some big food/drink companies. Построить сеть - связь учёных через различные Академии.
- математики и время
- Суммарный индекс гениальности математиков по годам, векам. Распределение гениальности: равномерное или нет. Определить пики, периоды активности и эпохи застоя (+по странам).
- относительный уровень математиков
- Насколько сильно отличается Ньютон от своих современников в 17 веке, Арнольд ‒ от наших современников? (Вычислить по рейтингу).
- Разбить математиков на группы (по 10, 20, 30 ... 100 лет). Вычислить (1) расстояние в группе между всеми математиками, (2) между всеми и средним, (3) средний диаметр. Как эти расстояния меняются со временем, со странами?
Работы
править- Перевод на русский документации Викиданных
- d:Help:Содержание - по каждому разделу - краткий рассказ + доперевести раздел + 3 вопроса (в подраздел здесь)
- читать
- Hanika, T., Marx, M., & Stumme, G. (2019). Discovering Implicational Knowledge in Wikidata. arXiv preprint arXiv:1902.00916.
- Review
- (2019-01-23) «Wikipedia Cultural Diversity Dataset: A Complete Cartography for 300 Language Editions». arXiv:1901.07999 [cs].
This research deals with Cultural Context Content (CCC), that is articles of Wikipedia "related to the editors’ geographical and cultural context (i.e. their places, traditions, language, agriculture, biographies, etc.)". CCC is about 25% of articles in one Wikipedia edition. These articles are exclusive and have no equivalence across language editions. This research paper can be usefull for learning Wikidata, because it describes Wikidata properties grouped by country, location, language, author, affiliation and several taxonomic relations (part of, has part). The future research of this papercould be directed to the visualization of some results via Wikidata Query Service (see examples in the Wikiversity course "Research in programming Wikidata"). Very interesting results of this work are
- The mapping of language to territories (https://meta.wikimedia.org/wiki/Wikipedia_Cultural_Diversity_Observatory/Language_Territories_Mapping)
- Number of unique articles and intersections with other Wikipedias (https://meta.wikimedia.org/wiki/Wikipedia_Cultural_Diversity_Observatory/Culture_Gap_(spread))
- Nearest Wikipedia or which Wikipedias cover this Wikipedia (https://meta.wikimedia.org/wiki/Wikipedia_Cultural_Diversity_Observatory/Culture_Gap_(coverage))
Задачи по написанию скриптов (идеи)
правитьВузы
править- Есть список мостов мира, названных в честь женщин. Построить карту вузов, названных (1) в честь мужчин, (2) в честь женщин.
- Список: w:ru:Шаблон:Региональные научные центры РАН
Корпуса текстов
править- Анализ текстовых корпусов мира. См. text corpus.
Топонимия
править- Place names in Russia ending with "остров", "губа" — российские населённые пункты на карте, названия которых заканчиваются на «остров» или «губа»
Named after
правитьСвойство d:Property:P138 (named after, названо в честь).
Первая задача. Скрипты:
- Улицы в России, названные в честь людей. 154 записи.
- Какие профессии "названцев" лидируют?
- Сравнить распределение лидерства названий по профессиям для двух стран.
- Выбрать какую-либо из отстающих отраслей (по числу улиц, названных в честь людей этой отрасли). Внести информацию в Викиданные, чтобы исказить полученную ранее картину, добиться того, чтобы эта отрасль (профессия) стала лидером.
- Вторая задача. Различные объекты, названные в честь людей. 360 записей.
- Что это за "различные объекты", кроме улиц? Привести список типов объектов, например: (1) Улица, (2) Танк, (3) Университет... с числом (1) улиц, названных именами людей, (2) танков с именами, (3) именованных университетов и так далее.
- Сравнить список типов объектов для России и какой-либо другой страны.
Литература
править- ПетрГУ
- Голубев А.А. «Исследование периодов мира и войны стран с помощью SPARQL-запросов и анализа данных в Python», 2018. Курсовая работа, ПетрГУ.
- Кузнецова Э. Э. «Построение рейтинга математиков и анализ научных областей по Викиданным», 2017. Курсовая работа, ПетрГУ.
- Ярышкина Е. А. «Построение рейтинга вузов по данным Википедии», 2016. Магистерская диссертация, ПетрГУ.
- arxiv.org
- Chen, B., Lin, Z. and Evans, T.S. Analysis of the Wikipedia Network of Mathematicians. 2019.
- разное
- Лутай А.В. Сервис Викиданные для научных журналов РЦНИ. 24.10.2022.
Ссылки
править- идеи на следующий год
- OpenRefine — разобраться и описать его работу.
- Выбрать статью о Викиданных и включить лучшее в обзорную главу.
- RAWGraphs — каждый разбирает и объясняет работу на своих данных с одним из типов графиков.
- в работу
- Jean-Christophe Chouinard How to use the Wikidata API (with Python Examples), 2023
- b:en:SPARQL tutorial on Wikibooks — можно перевести и включить отдельные операторы.
- Will Kent. What can querying Wikidata do for me? (Результаты какого вида можно получить из Викиданных) // September 27, 2021 (CC-BY-SA)
- Knowledge Graphs, 2021, book kgbook.org
- d:Category:WikiProjects — выбирать темы, у которых есть свой проект?..
- done
- Ivo Velitchkov. Buckets and Balls // strategic structures, 2020 // Корзины и мячи (Как сформулировать вопрос Викиданным. Введение) (получено разрешение от автора на перевод на русский язык)
- прочее
- d:User:Einebillion/Teaching notes — пошаговое введение в Викиданные для новичков
- Wikidata Query Service tutorial
- SPARQL in a Jupyter Notebook
- Tomaz Bratanic. Lord of the Wiki Ring: Importing Wikidata into Neo4j and analyzing family trees (Визуализация ВД в Neo4j)
- https://w.wiki/swh list of countries sorted by date of mention
- https://w.wiki/swi
Научные статьи для обзора
править- "Knowledge Based Multilingual Language Model" Using the Wikidata to build the language models that not only memorize the factual knowledge but also learn useful logical patterns.
- Analyzing Race and Citizenship Bias in Wikidata
- Farda-Sarbas, M. and Mueller-Birn, C., 2019. Wikidata from a Research Perspective - A Systematic Mapping Study of Wikidata. arXiv preprint arXiv:1908.11153
SPARQL
править- John Samuel. Introduction to Querying Wikidata Knowledge Graph using SPARQL (original), 2020.
- Pérez, J., Arenas, M. and Gutierrez, C., 2006, November. Semantics and Complexity of SPARQL. In International semantic web conference (pp. 30-43). Springer, Berlin, Heidelberg
- SPARQL 1.1 Query Language
- Язык запросов SPARQL для RDF // Рекомендация W3C, 15 января 2008, пер. Алик Кириллович, 2009.
- d:Wikidata:SPARQL query service/queries/examples (SPARQL examples)
- d:Wikidata:SPARQL query service
- d:Wikidata:SPARQL tutorial
- RDF-star and SPARQL-star // W3C Draft Report, 2021
Видео
править- 03.8b - Querying Knowledge Graphs with SPARQL 3 — Learn about SPARQL federated queries, variable bindings and aggregations // ISE FIZ Karlsruhe
- SPARQL in 11 minutes Basic Introduction-Video
- Robert Fernandez. Tutorial: Wikidata: Intro to the Basics // LD 4 Conference on Linked Data, 2021
Визуализация
правитьVisualization tools and tutorials:
- Graph builder tool for the query service to create and export graphs (авторы: Jonas Kress (WMDE), Smalyshev (WMF)) — Учебное видео, как построить диаграмму с помощью Wikidata Graph Builder, как затем полученные данные включить в статью вики.
- Wikidata:SPARQL query service/Wikidata Query Help/Result Views — различные типы визуализации.
- Wikidata:Tools/Visualize data — инструменты и проекты визуализации Викиданных.
- RAWGraphs, a dataviz tool which allows SPARQL queries (source)
Pywikibot
править- Pywikibot - Python 3 Tutorial
- mw:Manual:Pywikibot/Installation (install Pywikibot)
- mw:Manual:Pywikibot/user-config.py (create file user-config.py)
- mw:Manual:Pywikibot/Wikidata (create a test script to access to Wikidata)
- d:Wikidata:Creating a bot
- mw:Extension:Wikibase Client/Lua
- earwig/mwparserfromhell — use wikicode parser mwparserfromhell, and some examples
Викиданные
правитьПриложения Викиданных
править- PNEL: Pointer Network based End-To-End Entity Linking over Knowledge Graphs (Вопросно-ответная система)
- (AlGhamdi et al, 2020) Learning to Recommend Items to Wikidata Editors — статья о редакторах ВД, их привычках - и как присоветовать им интересные объекты для редактирования в Викиданных.
Jupyter Notebook
править- Get started with Google Colaboratory (Coding TensorFlow) // YouTube, 2019
- Porter, Simon (2018). Joining Dimensions data to Wikidata.ipynb.] figshare. Software. https://doi.org/10.6084/m9.figshare.7195901.v1
- remerjohnson / wikidata-analysis
- opendatazurich / wikidata-training
Другие
править- Wikimedia Israel introduces Wikidata to Education // Wikimedia education, 2019
- К 20-летию Википедии группа влиятельных англоязычных википедистов подготовила книгу Wikipedia @ 20 со своими мыслями о прошлом и будущем проекта. По приведённой ссылке книгу можно читать бесплатно, а в печатном виде она выходит в авторитетном американском издательстве MIT Press.
- Toolhub is a community-authored catalog of Wikimedia tools — инструменты Викиданных