On 10.03.2016 18:43, Daniel Kinzler wrote:
Am 10.03.2016 um 10:26 schrieb Markus Kroetzsch:
I am surprised by the amount of confusion in this
discussion. There is
absolutely no relationship between mapping of Wikidata values to URIs and the
external id datatype.
You are correct that such a relationship does not necessarily follow from first
principles. You are however incorrect in saying that there is no relationship in
Wikibase: The way the data model is currently defined and the way mappings are
implemented, we made a conscious decision to support such mappings only for
ExternalId values.
Maybe the community needs a bit more explanation as to why you
"consciously" decide to override their judgement. The use of property
P1921 clearly tells you what the community wants. If we want to have
URIs only for some subset of properties, then we will use P1921 only on
a subset. It is very easy and gives us complete control. The use of
ExternalId as an additional restricting mechanism is neither helpful nor
desired. We can decide for ourselves which properties should have URIs
exported for them, without needing conscious but unprincipled
development decisions to constrain us.
It would be helpful if you could share some pointers (1) to the original
announcement and documentation for this restricting behaviour for URI
exports (clearly, this information is vital for the ongoing discussion
on property conversion), and (2) to the discussions have lead to this
design (surely you must have consulted with some RDF/SPARQL users and
developers to conclude that some P1921 should be ignored). I am really
curious to learn what "we" refers to in "we made a conscious
decision".
Markus
I think it would help the discussion if we could keep apart:
- what follows from formal principles
- what you (or I) consider best
- what the software currently does
(3) The external id datatype does not provide any
mapping and the criteria used
for it by the community do not imply that such mappings should exist for these
cases, or that they should not exist for other cases.
That is incorrect from the way Wikibase defines and uses the ExternalId
datatype: the intent is indeed to say that something is an identifier that can
be mapped, and that such a (direct) mapping is not supported for other data
types. (That doesn't mean we will not offer different mappings for other data
types, perhaps URLs for looking up coordinates, etc).
Modeling this explicitly is indeed the reason to have this datatype.
I am most worried about Daniel's remark. He
says that we wants to use external
ids to identify properties with "values that identify a resource", but does
not
mention the existing, community-supported mechanism for doing just that (2), and
instead proposes another mechanism (3), which the community is clearly not using
for this purpose at all.
That's a misunderstanding. The plan is to support P1921 for URI mappings, and we
already do support P1630 for URL mappings. But we intentionally do this only for
ExternalId values, not for plain strings or other types.
So, the technical implementation does follow the community convention, with the
restriction that properties that should use this kind of mapping need to
explicitly be declared to be identifiers. We are also considering implementing
validation and normalization for ExternalId values, but it's not clear yet how
we can safely apply community supplied validation and normalization patterns.
--
Markus Kroetzsch
Faculty of Computer Science
Technische Universität Dresden
+49 351 463 38486
http://korrekt.org/