-
Notifications
You must be signed in to change notification settings - Fork 0
Wikidata reconcilation class for periodical.
License
michal-josef-spacek/Wikidata-Reconcilation-Periodical
Folders and files
| Name | Name | Last commit message | Last commit date | |
|---|---|---|---|---|
Repository files navigation
NAME
Wikidata::Reconcilation::Periodical - Wikidata reconcilation class for
periodical.
SYNOPSIS
use Wikidata::Reconcilation::Periodical;
my $obj = Wikidata::Reconcilation::Periodical->new;
my @qids = $obj->reconcile($reconcilation_rules_hr);
DESCRIPTION
Class for Wikidata periodical reconcilation.
METHODS
"new"
my $obj = Wikidata::Reconcilation::Periodical->new;
Constructor.
Returns instance of object.
"reconcile"
my @qids = $obj->reconcile($reconcilation_rules_hr);
Reconcile information defined in input structure and returns list of
QIDs.
TODO Structure
Returns list of strings.
ERRORS
new():
From Class::Utils::set_params():
Unknown parameter '%s'.
Parameter 'lwp_user_agent' must be a 'LWP::UserAgent' instance.
reconcile():
This is abstract class. You need to implement _reconcile() method.
EXAMPLE1
use strict;
use warnings;
use Unicode::UTF8 qw(decode_utf8);
use Wikidata::Reconcilation::Periodical;
# Object.
my $obj = Wikidata::Reconcilation::Periodical->new(
'language' => 'cs',
);
# Save cached value.
my @qids = $obj->reconcile({
'identifiers' => {
'name' => decode_utf8('Česká osvěta'),
'start_time' => 1904,
'end_time' => '1948',
},
});
# Print out.
print join "\n", @qids;
print "\n";
# Output like:
# Q118719850
EXAMPLE2
use strict;
use warnings;
use Unicode::UTF8 qw(decode_utf8);
use Wikidata::Reconcilation::Periodical;
# Object.
my $obj = Wikidata::Reconcilation::Periodical->new(
'language' => 'cs',
'verbose' => 1,
);
# Save cached value.
my @qids = $obj->reconcile({
'identifiers' => {
'name' => decode_utf8('Česká osvěta'),
'start_time' => 1904,
'end_time' => '1948',
},
});
# Output like:
# SPARQL queries:
# SELECT ?item WHERE {
# ?item wdt:P31/wdt:P279* wd:Q1002697.
# ?item wdt:P580 ?start_time.
# ?item wdt:P582 ?end_time.
# ?item wdt:P1476 'Česká osvěta'@cs.
# FILTER(?start_time = "1904-00-00T00:00:00"^^xsd:dateTime)
# FILTER(?end_time = "1948-00-00T00:00:00"^^xsd:dateTime)
# }
#
# SELECT ?item WHERE {
# ?item wdt:P31/wdt:P279 wd:Q1002697.
# ?item wdt:P1476 'Česká osvěta'@cs.
# }
#
# SELECT ?item WHERE {
# ?item wdt:P31/wdt:P279* wd:Q1002697.
# ?item wdt:P580 ?start_time.
# ?item wdt:P582 ?end_time.
# FILTER(YEAR(?start_time) = 1904)
# FILTER(YEAR(?end_time) = 1948)
# }
#
# Results:
# - Q118719850: 2
DEPENDENCIES
Wikidata::Reconcilation. WQS::SPARQL::Query::Select.
SEE ALSO
Wikidata::Reconcilation
Abstract class for Wikidata reconcilations.
REPOSITORY
<https://github.com/michal-josef-spacek/Wikibase-Reconcilation-Periodica
l>
AUTHOR
Michal Josef Špaček <mailto:skim@cpan.org>
<http://skim.cz>
LICENSE AND COPYRIGHT
© 2023 Michal Josef Špaček
BSD 2-Clause License
VERSION
0.01
About
Wikidata reconcilation class for periodical.
Topics
Resources
License
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published