[08:21:45] Reedy: if an exact match is enough, you can use a query: https://w.wiki/9i6c [08:22:07] :) [08:22:31] (*why* for the love of god several properties have .* or .+ as a “format” “constraint”, I don’t know) [08:22:44] MUST BE ANYTHING [08:36:41] and that is exactly the point. [08:36:49] .+ means that it may not be empty. [08:37:23] also .* means that it can be anything (in contrast to no constraint is given). [08:37:43] but surely you'll find poor examples in the dataset. as for every property. [08:38:59] Wikibase already forces strings to be nonempty, so .+ is just as pointless as .* [08:39:35] both of them are just a waste of server resources [08:40:04] and what exactly has whatever wikibase forces on values to do with their format? [08:40:30] ??? [08:40:42] the point of the *format constraint* is to validate the data in Wikidata [08:40:48] you seem to come from the point that the constrain is a propery for the implementation. so the implementation can check it's data. [08:41:07] (I’m not talking about https://www.wikidata.org/wiki/Property:P1793 as a main statement, I don’t care what people put in there) [08:41:16] however you can also consider it as a form of validaten of the actual data, whatever the software. [08:42:11] that doesn’t make sense to me [08:42:25] yes. ;) [08:42:28] I don’t see what the meaning of constraint types like “allowed qualifiers” or “allowed entity types” could be outside of Wikibase [08:43:03] and they're all given as regex, yes? [08:44:43] I don’t understand the question [08:44:48] what’s given as regex? [08:45:00] '“allowed qualifiers” or “allowed entity types”' [08:45:22] no, they aren’t [08:45:23] you talked about people setting it to '.* or .+'. [08:45:35] if they're not than what do they have to do with this? [08:45:35] no [08:45:53] I meant them as counterexamples to your claim that constraints are “a form of validation on the actual data, whatever the software” [08:46:12] (or s/are/can be seen as/) [08:46:31] sure, a random different propery has different aspects. yes. [08:46:42] but that doesn't touch my point. [08:46:42] no, the same property! [08:46:44] it’s all in P2302 [08:47:29] you’re welcome to consider https://www.wikidata.org/wiki/Property:P1793 *main statements* as general validation on the data, as far as I’m concerned [08:47:38] but I’m objecting to .* / .+ regexes *in the constraints* [08:48:20] could a regex be used for '“allowed qualifiers” or “allowed entity types”'? if not do you also object on the use of regex in other cases? [08:49:05] I really don't see how they relate to regex. [08:50:09] they don’t, as I already said [08:50:46] but they’re all property constraint types [08:51:16] and you seemed to suggest that all property constraint types could be interpreted as constraints on the underlying data, regardless of its Wikidata representation [08:51:24] so I mentioned them as counterexamples to that [08:51:28] yes, but how do they relate to regex? you started to talk about regex and then you talked about types that aren't regex. [08:51:47] where did I suggest that *all* property constrains could be interpreted in some way? [08:52:06] “you seem to come from the point that the constrain is a propery for the implementation. so the implementation can check it's data.” [08:52:07] “however you can also consider it as a form of validaten of the actual data, whatever the software.” [08:52:23] 'it' not 'all'. [08:52:44] but why would you only interpret some constraints as validation of the actual data? [08:52:47] it makes no sense to me [08:53:08] again, if you want to represent general regex formats of the underlying data, that’s what https://www.wikidata.org/wiki/Property:P1793 as a main statement is for [08:53:12] why would you interpret some data in wikidata to be about actual data? [08:53:47] it me it seems like the data is very mixed, with no clear definition on who the consumer of statements is. [08:54:16] so I consider everything that is useful to the outside world as part of what is meant to be at least also for the outside world. [08:54:24] it’s not mixed as far as I’m concerned, if all P2302 pertain only to constraint validation on Wikidata [08:54:42] we even put these statements in a separate section on property pages [08:55:00] and how do I know that P2302 is for internal use only and P1234 or P4321 is not? [08:56:33] e.g. how do I tell P1793 and P2302 apart? [09:02:48] P2302 is an instance of https://www.wikidata.org/wiki/Q21504947, where I’ve just added “subclass of Wikidata internal entity” [09:02:56] but beyond that my answer would be that you just have to know it, or learn it from the documentation [09:03:09] the same way you have to just know that P1793 represents a regex and P1234 doesn’t [09:03:31] so it's not given in the dataset what is for the outside world and what is not? [09:04:01] which is what I call 'mixed', as in you need external knowledge. [09:05:21] my point here is just: it's hard to write a software that knows what to ignore as it's internal (e.g. not exporting it).