Уикипедия:БПЦ
БПЦ е уикипедиански проект, който има за цел създаването и подобряването на данните, свързани с организацията и обектите, свързани с Българската православна църква в България, в свободната интернет енциклопедия Уикипедия.
Административно деление
редактиранеЕпархия
редактиранеWikidata: Eastern Orthodox eparchy (Q60176300)
Епархията е най-високото ниво на административно делене. Всяка епархия се управлява от епископ, чието седалище се помещава в катедрала.
Българската православна църква понастоящем има 13 вътрешни епархии (в страната), 2 външни епархии – за българите в чужбина.
- В рамките на България: Софийска, Видинска, Варненска и Великопреславска, Врачанска, Плевенска, Русенска, Ловчанска, Неврокопска, Пловдивска, Сливенска, Старозагорска, Великотърновска, Доростолска.
- Извън страната: Българска източноправославна епархия в САЩ, Канада и Австралия, Българска източноправославна епархия в Западна и Средна Европа.
Заявка, показваща списък с всички епархии:
select ?x ?xLabel {
?x wdt:P31 wd:Q60176300 ;
wdt:P361 wd:Q242758 ;
.
SERVICE wikibase:label { bd:serviceParam wikibase:language "bg". }
filter not exists {?x wdt:P576 [] }
} order by ?xLabel
Заявка, изкарваща справка за пълнотата на понастоящем попълнените данни за епархиите:
SELECT (COUNT(?item) AS ?item_count)
(sum(?image_count) as ?image_count_sum)
(sum(?religion_count) as ?religion_sum)
(sum(?chairperson_count) as ?chairperson_sum)
(sum(?country_count) as ?country_sum)
(sum(?cathedral_count) as ?cathedral_sum)
(sum(?headquarters_loc_count) as ?headquarters_loc_sum)
(sum(?official_website_count) as ?official_website_sum) {
?item wdt:P31 wd:Q60176300 ;
wdt:P361 wd:Q242758 .
OPTIONAL { ?item wdt:P18 ?image. } bind(if(bound(?image),1,0) as ?image_count)
OPTIONAL { ?item wdt:P140 ?religion. } bind(if(bound(?religion),1,0) as ?religion_count)
OPTIONAL { ?item wdt:P488 ?chairperson. } bind(if(bound(?chairperson),1,0) as ?chairperson_count)
OPTIONAL { ?item wdt:P17 ?country. } bind(if(bound(?country),1,0) as ?country_count)
OPTIONAL { ?item wdt:P1885 ?cathedral. } bind(if(bound(?cathedral),1,0) as ?cathedral_count)
OPTIONAL { ?item wdt:P159 ?headquarters_loc. } bind(if(bound(?headquarters_loc),1,0) as ?headquarters_loc_count)
OPTIONAL { ?item wdt:P856 ?official_website. } bind(if(bound(?official_website),1,0) as ?official_website_count)
SERVICE wikibase:label { bd:serviceParam wikibase:language "bg". }
FILTER NOT EXISTS {?item wdt:P576 [] }
}
Духовна Околия
редактиранеWikidata: Духовна околия (Q125350820) WDQ
По-ниското ниво на административно делене е духовната околия (всяка духовна околия е част от дадена епархия). Духовните околии в България са 71 на брой. Детайлна информация за тях може да се прегледа в TAB таблицата.
Заявка, показваща списък с всички духовни околии:
SELECT ?x ?xLabel WHERE {
?x wdt:P31 wd:Q125350820;
wdt:P361 wd:Q242758.
SERVICE wikibase:label { bd:serviceParam wikibase:language "bg". }
FILTER(NOT EXISTS { ?x wdt:P576 _:b2. })
}
ORDER BY (?xLabel)
Заявка, изкарваща справка за пълнотата на понастоящем попълнените данни за духовните околии (към момента данните са пълни):
SELECT (COUNT(?item) AS ?item_count)
(sum(?religion_count) as ?religion_sum)
(sum(?country_count) as ?country_sum)
(sum(?diocese_count) as ?diocese_sum)
(sum(?headquarters_loc_count) as ?headquarters_loc_sum) WHERE {
?item wdt:P31 wd:Q125350820;
wdt:P361 wd:Q242758.
OPTIONAL { ?item wdt:P140 ?religion. } bind(if(bound(?religion),1,0) as ?religion_count)
OPTIONAL { ?item wdt:P17 ?country. } bind(if(bound(?country),1,0) as ?country_count)
OPTIONAL { ?item wdt:P708 ?diocese. } bind(if(bound(?diocese),1,0) as ?diocese_count)
OPTIONAL { ?item wdt:P159 ?headquarters_loc. } bind(if(bound(?headquarters_loc),1,0) as ?headquarters_loc_count)
SERVICE wikibase:label { bd:serviceParam wikibase:language "bg". }
FILTER(NOT EXISTS { ?item wdt:P576 _:b2. })
}
TAB таблица с духовните околии в Уикиданни
Edit groups:
Църковни Обекти
редактиранеВсеки църковен обект попада в границите на определена духовна околия и съответно - епархия.
Заявка, извеждаща всички църковни обекти в България
SELECT ?church
?churchLabel
?eparchyLabel
?type
?typeLabel
?ecclesiasticalEntityLabel
?religionLabel
?headquartersLabel
?namedAfterLabel
?locatedInATELabel
?websiteLabel
?locationLabel
?osm_rel
?osm_way
?osm_node
?osm_tag_key
WHERE {
values ?type {
wd:Q16970
wd:Q44613
wd:Q2977
}
?church wdt:P31 ?type;
wdt:P17 wd:Q219.
OPTIONAL { ?church wdt:P708 ?eparchy. }
OPTIONAL { ?church wdt:P5607 ?ecclesiasticalEntity. }
OPTIONAL { ?church wdt:P140 ?religion. }
OPTIONAL { ?church wdt:P159 ?headquarters. }
OPTIONAL { ?church wdt:P138 ?namedAfter. }
OPTIONAL { ?church wdt:P131 ?locatedInATE. }
OPTIONAL { ?church wdt:P856 ?website. }
OPTIONAL { ?church wdt:P625 ?location. }
OPTIONAL { ?church wdt:P402 ?osm_rel }
OPTIONAL { ?church wdt:P10689 ?osm_way }
OPTIONAL { ?church wdt:P11693 ?osm_node }
OPTIONAL { ?church wdt:P1282 ?osm_tag_key }
SERVICE wikibase:label { bd:serviceParam wikibase:language "bg,en". }
}
Църкви
редактиранеWikidata: църква (Q16970) WDQ COUNTS (TODO finish!) TAB
Брой попълнени данни относно църквите (COUNTS Finished):
SELECT (count(?church) as ?church_count) (sum(?eparchy_count) as ?eparchy_count_sum) (sum(?ecclesiasticalEntity_count) as ?ecclesiasticalEntity_sum)
(sum(?religion_count) as ?religion_sum) (sum(?headquarters_count) as ?headquarters_sum) (sum(?namedAfter_count) as ?namedAfter_sum)
(sum(?locatedInATE_count) as ?locatedInATE_count_sum) (sum(?website_count) as ?website_count_sum) (sum(?location_count) as ?location_count_sum)
WHERE {
?church wdt:P31 wd:Q16970;
wdt:P17 wd:Q219.
OPTIONAL { ?church wdt:P708 ?eparchy.} bind(if(bound(?eparchy),1,0) as ?eparchy_count)
OPTIONAL { ?church wdt:P5607 ?ecclesiasticalEntity. } bind(if(bound(?ecclesiasticalEntity),1,0) as ?ecclesiasticalEntity_count)
OPTIONAL { ?church wdt:P140 ?religion. } bind(if(bound(?religion),1,0) as ?religion_count)
OPTIONAL { ?church wdt:P159 ?headquarters. } bind(if(bound(?headquarters),1,0) as ?headquarters_count)
OPTIONAL { ?church wdt:P138 ?namedAfter. } bind(if(bound(?namedAfter),1,0) as ?namedAfter_count)
OPTIONAL { ?church wdt:P131 ?locatedInATE. } bind(if(bound(?locatedInATE),1,0) as ?locatedInATE_count)
OPTIONAL { ?church wdt:P856 ?website. } bind(if(bound(?website),1,0) as ?website_count)
OPTIONAL { ?church wdt:P625 ?location. } bind(if(bound(?location),1,0) as ?location_count)
SERVICE wikibase:label { bd:serviceParam wikibase:language "bg,en". }
Заявка за всички църкви - списък:
SELECT ?church ?churchLabel ?eparchyLabel ?ecclesiasticalEntityLabel ?religionLabel ?headquartersLabel ?namedAfterLabel ?locatedInATELabel ?websiteLabel ?locationLabel WHERE {
?church wdt:P31 wd:Q16970;
wdt:P17 wd:Q219.
OPTIONAL { ?church wdt:P708 ?eparchy. }
OPTIONAL { ?church wdt:P5607 ?ecclesiasticalEntity. }
OPTIONAL { ?church wdt:P140 ?religion. }
OPTIONAL { ?church wdt:P159 ?headquarters. }
OPTIONAL { ?church wdt:P138 ?namedAfter. }
OPTIONAL { ?church wdt:P131 ?locatedInATE. }
OPTIONAL { ?church wdt:P856 ?website. }
OPTIONAL { ?church wdt:P625 ?location. }
SERVICE wikibase:label { bd:serviceParam wikibase:language "bg,en". }
}
Манастири
редактиранеWikidata: манастир (Q44613) WDQ
Заявка за всички манастири:
SELECT ?item ?itemLabel ?eparchy ?ecclesiasticalEntity ?religion ?headquarters ?namedAfter ?locatedInATE ?website ?location ?image ?wiki
WHERE {
?item wdt:P31 wd:Q44613;
wdt:P17 wd:Q219;
OPTIONAL { ?item wdt:P708 ?eparchy. }
OPTIONAL { ?item wdt:P5607 ?ecclesiasticalEntity. }
OPTIONAL { ?item wdt:P140 ?religion. }
OPTIONAL { ?item wdt:P159 ?headquarters. }
OPTIONAL { ?item wdt:P138 ?namedAfter. }
OPTIONAL { ?item wdt:P131 ?locatedInATE. }
OPTIONAL { ?item wdt:P856 ?website. }
OPTIONAL { ?item wdt:P625 ?location. }
OPTIONAL { ?item wdt:P18 ?image. }
OPTIONAL {?wiki schema:about ?item ; schema:isPartOf <https://bg.wikipedia.org/> }
SERVICE wikibase:label { bd:serviceParam wikibase:language "bg". }
}
Заявка за всички попълнени данни относно манастирите - COUNTS
SELECT (count(?item) as ?item_count) (sum(?eparchy_count) as ?eparchy_count_sum) (sum(?ecclesiasticalEntity_count) as ?ecclesiasticalEntity_sum)
(sum(?religion_count) as ?religion_sum) (sum(?headquarters_count) as ?headquarters_sum) (sum(?namedAfter_count) as ?namedAfter_sum)
(sum(?locatedInATE_count) as ?locatedInATE_count_sum) (sum(?website_count) as ?website_count_sum) (sum(?location_count) as ?location_count_sum)
(sum(?image_count) as ?image_count_sum) (sum(?wiki_count) as ?wiki_count_sum)
WHERE {
?item wdt:P31 wd:Q44613;
wdt:P17 wd:Q219;
OPTIONAL { ?item wdt:P708 ?eparchy. } bind(if(bound(?eparchy),1,0) as ?eparchy_count)
OPTIONAL { ?item wdt:P5607 ?ecclesiasticalEntity. } bind(if(bound(?ecclesiasticalEntity),1,0) as ?ecclesiasticalEntity_count)
OPTIONAL { ?item wdt:P140 ?religion. } bind(if(bound(?religion),1,0) as ?religion_count)
OPTIONAL { ?item wdt:P159 ?headquarters. } bind(if(bound(?headquarters),1,0) as ?headquarters_count)
OPTIONAL { ?item wdt:P138 ?namedAfter. } bind(if(bound(?namedAfter),1,0) as ?namedAfter_count)
OPTIONAL { ?item wdt:P131 ?locatedInATE. } bind(if(bound(?locatedInATE),1,0) as ?locatedInATE_count)
OPTIONAL { ?item wdt:P856 ?website. } bind(if(bound(?website),1,0) as ?website_count)
OPTIONAL { ?item wdt:P625 ?location. } bind(if(bound(?location),1,0) as ?location_count)
OPTIONAL { ?item wdt:P18 ?image. } bind(if(bound(?image),1,0) as ?image_count)
OPTIONAL {?wiki schema:about ?item ; schema:isPartOf <https://bg.wikipedia.org/> } bind(if(bound(?wiki),1,0) as ?wiki_count)
SERVICE wikibase:label { bd:serviceParam wikibase:language "bg". }
}
Катедрали
редактиранеWikidata: Катедрала (Q2977) WDQ
Заявка за всички катедрали:
SELECT ?item ?itemLabel ?eparchy ?ecclesiasticalEntity ?religion ?headquarters ?namedAfter ?locatedInATE ?website ?location WHERE {
?item wdt:P31/wdt:P279* wd:Q2977;
wdt:P17 wd:Q219;
OPTIONAL { ?item wdt:P708 ?eparchy. }
OPTIONAL { ?item wdt:P5607 ?ecclesiasticalEntity. }
OPTIONAL { ?item wdt:P140 ?religion. }
OPTIONAL { ?item wdt:P159 ?headquarters. }
OPTIONAL { ?item wdt:P138 ?namedAfter. }
OPTIONAL { ?item wdt:P131 ?locatedInATE. }
OPTIONAL { ?item wdt:P856 ?website. }
OPTIONAL { ?item wdt:P625 ?location. }
SERVICE wikibase:label { bd:serviceParam wikibase:language "bg". }
}
Заявка за всички попълнени данни относно катедралите (COUNTS):
SELECT (count(?item) as ?item_count) (sum(?eparchy_count) as ?eparchy_count_sum) (sum(?ecclesiasticalEntity_count) as ?ecclesiasticalEntity_sum)
(sum(?religion_count) as ?religion_sum) (sum(?headquarters_count) as ?headquarters_sum) (sum(?namedAfter_count) as ?namedAfter_sum)
(sum(?locatedInATE_count) as ?locatedInATE_count_sum) (sum(?website_count) as ?website_count_sum) (sum(?location_count) as ?location_count_sum)
WHERE {
?item wdt:P31/wdt:P279* wd:Q2977;
wdt:P17 wd:Q219;
OPTIONAL { ?item wdt:P708 ?eparchy. } bind(if(bound(?eparchy),1,0) as ?eparchy_count)
OPTIONAL { ?item wdt:P5607 ?ecclesiasticalEntity. } bind(if(bound(?ecclesiasticalEntity),1,0) as ?ecclesiasticalEntity_count)
OPTIONAL { ?item wdt:P140 ?religion. } bind(if(bound(?religion),1,0) as ?religion_count)
OPTIONAL { ?item wdt:P159 ?headquarters. } bind(if(bound(?headquarters),1,0) as ?headquarters_count)
OPTIONAL { ?item wdt:P138 ?namedAfter. } bind(if(bound(?namedAfter),1,0) as ?namedAfter_count)
OPTIONAL { ?item wdt:P131 ?locatedInATE. } bind(if(bound(?locatedInATE),1,0) as ?locatedInATE_count)
OPTIONAL { ?item wdt:P856 ?website. } bind(if(bound(?website),1,0) as ?website_count)
OPTIONAL { ?item wdt:P625 ?location. } bind(if(bound(?location),1,0) as ?location_count)
SERVICE wikibase:label { bd:serviceParam wikibase:language "bg". }
}
- Обща Бройка [1]
Извличане на данни от Wikidata чрез Python
редактиранеСъществува библиотека (SPARQLWrapper), чрез която могат да бъдат изпълнявани SPARQL заявки в Python среда. По този начин лесно могат да бъдат заредени данни от Wikidata за последваща обработка.
Същата заявка, представена по-рано (тази, която извлича списък с всички църковни обекти), може да бъде изпълнена чрез SPARQLWrapper: SPARQLWrapper Demo
Индивиди
редактиранеРелации
редактиранеОт общ характер
редактиране- екземпляр на (P31)
- държава (P17)
- епархия (P708)
- located in the religious territorial entity (P5607)
- религия (P140)
- разположение на централното управление (P159)
- епархия (P708)
- наименуван на (P138)
- светец покровител (P417)
- в административно-териториалната единица (P131)
- официален уебсайт (P856)
- географски координати (P625)
- cathedral (P1885)
- председател (P488)
Свързани с OSM
редактиранеOpenStreetMap (OSM)
редактиранеOpenStreetMap (OSM) е безплатен и отворен проект за създаване на карта на света, която може да бъде редактирана от всеки. Той използва данни, събрани от доброволци с помощта на GPS устройства, въздушни снимки и други свободно достъпни източници. Основната цел на OSM е да предостави подробна, актуална и свободно достъпна географска информация, която може да бъде използвана от всеки за различни цели, включително навигация, анализи и изследвания.
Тагове
редактиранеВсеки обект в OSM е характеризиран чрез един или повече тагове. Таговете се състоят от ключ и стойност. Синтаксисът е key=value.
- amenity=place_of_worship
- amenity monastery
- building=church
- wikidata=
- boundary = religious_administration
Пълен списък с налични тагове в OSM може да бъде достъпен тук.
Уики страници
редактиране- https://overpass-turbo.eu/s/1Jyq
- https://wiki.openstreetmap.org/wiki/Tag:amenity%3Dplace_of_worship
- https://wiki.openstreetmap.org/wiki/Tag:boundary%3Dreligious_administration
Overpass
редактиранеOverpass Turbo е уеб-базиран инструмент за изпълнение на заявки към Overpass API, който позволява на потребителите да извличат и визуализират данни от OpenStreetMap (OSM). С помощта на Overpass Turbo, потребителите могат лесно да създават, изпълняват и редактират Overpass QL заявки, за да получат специфична географска информация от OSM. Инструментът предоставя интуитивен интерфейс с карта, където резултатите от заявките могат да бъдат прегледани и анализирани.
Примерни заявки
редактиранеTърсене на елемент по wiki-data таг (в примера търсим Храм-паметник „Свети Александър Невски“ (Q43282)):
nwr["wikidata"="Q43282"]; // Output out body; >; out skel qt;
https://overpass-turbo.eu/s/1Jyt
Заявка, предоставяща таблица със всички религиозни обекти в София или в България:
[out:csv(::id, ::lat, ::lon, ::type, name, "name:en","name:bg",wikidata,religion,building,website,denomination ; true; ",")][timeout:90]; // relation(4283101); //София relation(186382); //България map_to_area -> .a; nwr["amenity"="place_of_worship"](area.a); // Output out body; >; out skel qt;
https://overpass-turbo.eu/s/1Kbu
Автоматизирани заявки чрез Wizard
редактиранеНатиснете "Wizard" бутона над прозореца за писане на заявки. В прозорчето напишете key=value (например: amenity=hospital) и автоматично ще бъде генерирана заявка.
Python API
редактиранеЧрез библиотеката overpy да се използва API, чрез което да се пускат заявки в Python среда. Резултатите лесно могат да бъдат записани в pandas data frame. Пример със същата заявка, предоставяща таблица със всички религиозни обекти в София или в България: overpy Demo
Допълване на в административно-териториалната единица (P131) за църковни обекти
редактиранеЗадача: Да се измисли ГИС подход, с който да се напълнят релациите в административно-териториалната единица (P131) на църквите и манастирите.
187 обекта нямат в административно-териториалната единица (P131) но имат географски координати (P625) според тази заявка
Общините в България WDQ
Вадим полигони от OSM използвайки резултатите на горната заявка и следната услуга https://polygons.openstreetmap.fr/get_wkt.py?id=1934707¶ms=0
Малко е бавно защото трябва да се викне два пъти. Един път да генерира полигона и втори път да го даде. Веднъж генериран го име кеширан за следващи заявки
За тестване на WKT литерали може да се ползва openstreetmap-wkt-playground
Сравняване и допълване на данни - OSM и wikidata
редактиранеOSM и wikidata са много богати складове на информация. Съществуват обаче разминавания в пълнотата на връзките между обектите в двете платформи. Целта на тази задача е всеки църковен обект от едната платформа да съдържа идентификатор към своя образ в другата платформа. Съществуват няколко нива на пълнота, които могат да се обособят по следния начин:
- Ниво 0: Това е идеалният случай, в който обектът съшествува и в wikidata, и в OSM, и също така в във всяка от двете платформи е налично id-то на същия този обект от другата платфортма. Няма нужда от последващо действие.
- Ниво 1а: Обектът съществува в двете платформи. В wikidata не е налично OSM id, но в OSM е налично wikidata id. Нужно е да се добави OSM id в wikidata платформата.
- Ниво 1б: Обектът съществува в двете платформи. В wikidata е налично OSM id, но в OSM не е налично wikidata id. Нужно е да се добави wikidata id в OSM платформата.
- Ниво 2: Обектът съществува в двете платформи. В wikidata не е налично OSM id и в OSM не е налично wikidata id. Нужно е да се добави wikidata id в OSM платформата и OSM id в wikidata платформата.
- Ниво 3а: Обектът съществува единствено в OSM. В wikidata не е налично OSM id и в OSM не е налично wikidata id. Нужно е да се създаде обектът в wikidata. Трябва и да се добави wikidata id в OSM платформата и OSM id в wikidata платформата.
- Ниво 3б: Обектът съществува единствено в wikidata. В wikidata не е налично OSM id и в OSM не е налично wikidata id. Нужно е да се създаде обектът в OSM. Трябва и да се добави wikidata id в OSM платформата и OSM id в wikidata платформата.
- Ниво 4: Обектът не съществува в никоя платформа, но съществува в истинския свят. Обектът трябва да се добави в платформите ръчно и да се навържат id-тата.
- Ниво 5: Обектът не съществува в истинския свят и трябва да се построи. :)
ВАЖНО е дa се коментира методологията, по която обектите биват асоциирани със своите образи в другата платформа (важи за нива 1 и 2). Най-ефективно е да се използва алгоритъм, включващ асоциация по географвски координати (географска дължина и географска ширина) и съвпадение на имена. В идеалния случай координатите на даден обект в OSM и в wikidata биха съвпадали, но повечето пъти те имат известни отклонения и това трябва да се отчете в алгоритъма.
Задачи
редактиране- Да се напълнят обектите, отговарящи за духовните околии, в Уикиданни
- Да се създаде обект тип (клас) отговарящ на „Духовна околия“
- Да се създадат и напълнят обектите с OpenRefine
- На ръка да се оправят описанията където са сгрешени от TAB таблицата
- На ръка да се закачат съществуващите Уики страници към новите обекти и да се слеят тези за които вече има уикидата обект
- Да се извадят и разгледат съществуващите обекти от тип Църква, катедрала или манастир
- Всяка Епархия тряба да си има катедрала вързана с cathedral (P1885)
- Да се напишат заявки които да броят за всеки тип колко са популирани релациите
- Да се измисли ГИС подход, с който да се напълнят релациите в административно-териториалната единица (P131) на църквите и манастирите.
- Да се измисли подход с който да се свържат сградите от в ОСМ и тези от WD с правилните релации и двупосочно.
- Да се ссъздадат overpass заявки за релевантинте тагове