NAME
Wikibase::Datatype::Query - Query class on Wikibase item.
SYNOPSIS
use Wikibase::Datatype::Query;
my $obj = Wikibase::Datatype::Query->new;
my $res = $obj->query($obj, $query_string);
my @res = $obj->query($obj, $query_string);
my $res = $obj->query_item($item_obj, $query_string);
my @res = $obj->query_item($item_obj, $query_string);
my $res = $obj->query_lexeme($lexeme_obj, $query_string);
my @res = $obj->query_lexeme($lexeme_obj, $query_string);
METHODS
new
my $obj = Wikibase::Datatype::Query->new;
Constructor.
deprecated
Flag which controls query of deprecated values. Zero (0) means no deprecated values in result.
Default value is 0.
Returns instance of object.
query
my $res = $obj->query($obj, $query_string);
my @res = $obj->query($obj, $query_string);
Query Wikibase::Datatype object for value. Supported $obj
objects are Wikibase::Datatype::Item, Wikibase::Datatype::Lexeme and Wikibase::Datatype::Mediainfo.
Returns value or undef in scalar context. Returns list of values in array context.
query_item
my $res = $obj->query($item_obj, $query_string);
my @res = $obj->query_item($item_obj, $query_string);
Query Wikibase::Datatype::Item item for value.
Possible $query_string
values are:
- P\d+
-
For property value.
- alias:.*
-
For alias value.
- description:.*
-
For description value.
- label:.*
-
For label value.
- statement:P\d+
-
For full property statements.
Returns value or undef in scalar context. Returns list of values in array context.
query_lexeme
my $res = $obj->query_lexeme($lexeme_obj, $query_string);
my @res = $obj->query_lexeme($lexeme_obj, $query_string);
Query Wikibase::Datatype::Lexeme item for value.
Possible $query_string
values are:
Returns value or undef in scalar context. Returns list of values in array context.
ERRORS
new():
From Class::Utils::set_params():
Unknown parameter '%s'.
query():
Parameter 'item' is required.
Parameter 'item' must be a 'Wikibase::Datatype::Item' object.
query_item():
Item is required.
Item must be a 'Wikibase::Datatype::Item' or 'Wikibase::Datatype::Mediainfo' object.
Unsupported query string '%s'.
query_lexeme():
Item must be a 'Wikibase::Datatype::Lexeme' object.
Lexeme is required.
Unsupported query string '%s'.
EXAMPLE1
use strict;
use warnings;
use Test::Shared::Fixture::Wikibase::Datatype::Item::Wikidata::Dog;
use Wikibase::Datatype::Query;
my $obj = Wikibase::Datatype::Query->new;
my $item = Test::Shared::Fixture::Wikibase::Datatype::Item::Wikidata::Dog->new;
my $ret = $obj->query_item($item, 'P31');
print "Query for P31 property on Test::Shared::Fixture::Wikibase::Datatype::Item::Wikidata::Dog:\n";
print $ret."\n";
# Output like:
# Query for P31 property on Test::Shared::Fixture::Wikibase::Datatype::Item::Wikidata::Dog:
# Q55983715
EXAMPLE2
use strict;
use warnings;
use Test::Shared::Fixture::Wikibase::Datatype::Lexeme::Wikidata::DogCzechNoun;
use Wikibase::Datatype::Query;
my $obj = Wikibase::Datatype::Query->new;
my $item = Test::Shared::Fixture::Wikibase::Datatype::Lexeme::Wikidata::DogCzechNoun->new;
my $ret = $obj->query_lexeme($item, 'P5185');
print "Query for P5185 property on Test::Shared::Fixture::Wikibase::Datatype::Lexeme::Wikidata::DogCzechNoun:\n";
print $ret."\n";
# Output like:
# Query for P5185 property on Test::Shared::Fixture::Wikibase::Datatype::Lexeme::Wikidata::DogCzechNoun:
# Q499327
DEPENDENCIES
Class::Utils, Error::Pure, Scalar::Util.
SEE ALSO
- Wikibase::Datatype
-
Wikibase datatypes.
REPOSITORY
https://github.com/michal-josef-spacek/Wikibase-Datatype-Query
AUTHOR
Michal Josef Špaček mailto:skim@cpan.org
LICENSE AND COPYRIGHT
© 2022-2025 Michal Josef Špaček
BSD 2-Clause License
VERSION
0.05