Help:Egenskapsbegränsnings-portal
Egenskapsbegränsningar är regler som anger hur egenskaper ska användas. Wikidata-modellen är i sig själv väldigt flexibel: ingenting hindrar dig från att lägga till Universe (Q1) som head of government (P6). En begränsning av egenskapen kan dock säga att en head of government (P6) vanligtvis är en människa.
Begränsningar är rådgivande, inte orubbliga restriktioner, och är avsedda som hjälp eller vägledning. De kan ha undantag: till exempel valde staden Talkeetna (Q668224) katten Stubbs (Q7627362) som borgmästare.
Vissa begränsningstyper, för närvarande one-of constraint och allowed qualifiers constraint, används även för att ge bättre förslag när uttalanden redigeras.
Obs: En egenskaps'begränsning är tekniskt sett ett uttalande (för en egenskap) för en viss begränsningstyp , som anges via property constraint (P2302). Så begränsning och begränsningstyp refererar i strikt mening på två olika saker, men för enkelhetens skull kommer den här sidan ibland kalla begränsningstyper för begränsningar.
Viktiga begränsningstyper
Datatypsberoende begränsningar
Begränsningar för att begränsa var en begränsning kan läggas till
- property scope constraint
- Den här egenskapen bör endast användas för viss omfattning (huvudvärdet av ett uttalande, i en referens som bestämning).
- allowed-entity-types constraint
- Den här egenskapen bör endast användas på vissa entitetstyper. Exempel: Wikidata property example (P1855) (egenskaper).
- subject type constraint
- Objekt med den här egenskapen bör vara av en viss typ. Exempel: Objekt med date of birth (P569) borde vara instance of (P31) human (Q5) eller animal (Q729).
- conflicts-with constraint
- Objekt med den här egenskapen bör inte ha vissa andra egenskaper eller uttalanden. Exempel: sex or gender (P21) står i konflikt med author (P50), som i sin tur strider mot instance of (P31)human (Q5).
- item-requires-statement constraint
- Objekt som använder den här egenskapen bör också ha vissa andra uttalanden. Exempelvis bör objekt med killed by (P157) ha place of death (P20), date of death (P570) och manner of death (P1196)homicide (Q149086).
- contemporary constraint
- Objekt med denna egenskap och värden för denna egenskap bör samexistera vid någon tidpunkt. Exempel: mother (P25), country of citizenship (P27).
- label in language constraint
- Objekt som använder denna egenskap bör också ha en etikett på ett visst språk. Till exempel så borde objekt med Vietnamese middle name (P8500) ha en vietnamesisk etikett.
- description in language constraint
- Objekt som använder denna egenskap bör också ha en beskrivning på ett visst språk.
- lexeme requires language constraint
- Denna egenskap borde användas på lexem på ett visst språk. Till exempel borde Gran Enciclopèdia Catalana ID (former scheme) (P1296) användas på Catalan (Q7026)-lexem.
- lexeme requires lexical category constraint
- …
- lexeme-value-requires-lexical-category constraint
- …
Begränsningar gällande antalet värden
- single-value constraint
- Objekt ska inte ha mer än ett uttalande med den här egenskapen. Används ofta för identifierare, men också många andra egenskaper: till exempel har människor i allmänhet bara en enda place of birth (P19) och place of death (P20).
- single-best-value constraint
- Objekt ska ha ett "bästa" uttalande med den här egenskapen. Ofta används för egenskaper som kan förändras över tid: till exempel städer och länder brukar ha en enda nuvarande head of government (P6).
- multi-value constraint
- Objekt ska ha mer än ett uttalande med den här egenskapen (eller inget). Används sällan, men exempel är cast member (P161), has tense (P3103) och has grammatical mood (P3161).
- distinct-values constraint
- även känd som unikt värde och distinkt värde. Inga två objekt ska dela ett värde för den här egenskapen. Varje objekts värde borde vara unikt i alla uttalanden för den här egenskapen i hela Wikidata. Nästan alla identifieringsegenskaper har denna begränsning, eftersom en identifierare (ISBN, freebase ID, ...) borde identifiera en enhet unikt. Andra exempel inkluderar flag (P163) och anthem (P85).
Begränsningar gällande bestämningar
- allowed qualifiers constraint
- Uttalanden för denna egendom borde inte ha några andra bestämningar än de listade. Exempel: continent (P30) med bestämningarna start time (P580) och end time (P582), och Freebase ID (P646) utan någon bestämning alls.
- required qualifier constraint
- Uttalanden för den här egenskapen måste ha alla listade bestämningar. Exempel: stock exchange (P414) med ticker symbol (P249) och start time (P580).
Begränsningar gällande referenser
- citation-needed constraint
- Uttalanden för denna egenskap bör ha minst en referens. Exempel: egenskaper som antagligen kommer bestridas.
Datatypsspecifika begränsningar
Begränsningar för datatypsobjekt/-entitet
- value-type constraint
- Värden för den här egenskapen bör var av en viss typ. Exempel: mother (P25) borde vara instance of (P31) human (Q5) eller animal (Q729).
- one-of constraint
- Värden för den här egenskapen bör vara en av en given uppsättning objekt. Exempel: driving side (P1622) borde vara left (Q13196750) eller right (Q14565199).
- none-of constraint
- Värden för den här egenskapen bör inte vara en av en given uppsättning objekt. Exempel: instance of (P31) ska inte vara woman (Q467).
- value-requires-statement constraint
- även känd som målsättningsuttalande. Värden för denna egenskap bör också ha vissa andra uttalanden. Exempelvis bör värdena screenwriter (P58) ha sex or gender (P21) och occupation (P106)screenwriter (Q28389). Uttalanden som använder den här egenskapen bör alltid finnas i båda riktningarna. Exempel: sibling (P3373), twinned administrative body (P190).
- symmetric constraint
- Uttalanden som använder den här egenskapen bör alltid finnas i båda riktningarna. Exempel: sibling (P3373), twinned administrative body (P190).
- inverse constraint
- Uttalanden som använder den här egenskapen bör alltid ha ett motsatt uttalande. Exempel: father (P22)/mother (P25) med child (P40).
- complex constraint value label
- Värden för denna egenskap måste ha en etikett på ett visst språk som följer ett visst format.
Begränsningar för Quantity
- integer constraint
- Värden för den här egenskapen ska vara heltal utan decimaler.
- allowed units constraint
- Värden för detta uttalande bör endast använda vissa enheter (eller inga). Exempel: term length of office (P2097) (enhet: year (Q577)), population (P1082) (ingen enhet).
- no-bounds constraint
- Värden för den här egenskapen bör inte använda övre och nedre gränser. Detta gäller för de flesta icke-fysiska egenskaper med datatypen kvantitet, för vilken begreppet osäkerhet inte är definierat.
- range constraint
- Värden för den här egenskapen bör ligga inom ett visst register eller intervall. Exempel: flattening (P1102) är alltid mellan 0 och 1, och UTC date of spacecraft launch (P619) bör ej vara före .
- difference-within-range constraint
- även känd som skillnad inom intervallet. Skillnaden mellan värden för den här egenskapen och för en annan egenskap bör ligga inom ett visst intervall eller intervall. Exempelvis bör skillnaden mellan date of birth (P569) och date of death (P570) ligga mellan 0 och 150 år.
Begränsningar för Time
- range constraint
- Värden för denna egenskap bör skrivas inom ett visst register eller intervall. Exempel: flattening (P1102) får bara vara mellan 0 och 1 och UTC date of spacecraft launch (P619) får inte vara tidigare än .
- difference-within-range constraint
- aka. skillnad inom registret. Skillnaden mellan värden för denna egenskap och för en annan egenskap måste befinna sig inom ett visst register eller intervall. Till exempel så måste skillnaden mellan date of birth (P569) och date of death (P570) vara mellan 0 och 150 år.
Begränsningar för strängbaserade datatyper
Begränsningstypen som listas i avsnittet kan användas för egenskaper som har en strängbaserad datatyp.
- format constraint
- Värden för den här egenskapen bör ha ett visst format. Används ofta för identifierare (n siffror långt, börjar med en viss bokstav, består av siffror, ...).
Begränsningar för Commons-länkar
- Commons link constraint
- Värden för detta uttalande bör vara giltiga länkar till Wikimedia Commons. Exempel: image (P18) ("Fil"-namnrymd), Commons category (P373) ("Kategori" namnrymd).
Begränsningar i alfabetisk ordning
Flera begränsningar har egna fördefinierade mallar och listas på Help:Property constraints/list of constraints.
Instruktion för användning
Begränsningsrapporter visas för alla inloggade användare när de besöker en entitetssida.
Du kan också kontrollera alla begränsningar för ett objekt på Special:ConstraintReport. Denna sida tillhandahålls av WikibaseQualityConstraints (också känd som "begränsningstillägget"). En robot underhåller också rapporter om överträdelser av begränsningar; läs en sammanfattning av överträdelser på Wikidata på Wikidata:Database reports/Constraint violations.
Objekt för begränsningstyper
Det finns ett objekt för varje begränsningstyp, till exempel subject type constraint (Q21503250).
Restriktionsuttalanden hos egenskaper
Begränsningar för en egenskap anges som uttalanden för egenskapen, med property constraint (P2302) och objektets begränsningstyp. Till exempel: sibling (P3373)property constraint (P2302)symmetric constraint (Q21510862). Orekommenderade uttalanden ignoreras, så att ändra ett begränsningsuttalandes rang till "orekommenderad" är ett bekvämt sätt att tillfälligt inaktivera en restriktion utan att helt ta bort den.
Restriktionsparametrar
Många begränsningar kan konfigureras: en av har en lista över tillåtna värden, typ innehåller typen etc. Dessa inställningar som konfigurerar begränsningen kallas parametrar.
Begränsningsparametrar anges som bestämningar på uttalandet. Till exempel:
relation (P2309)
class (P2308)
Det finns flera allmänna parametrar som kan läggas till i alla begränsningar:
- constraint status (P2316)
- Med värdet mandatory constraint (Q21502408) kan denna parameter användas för att markera en begränsning som "obligatorisk". Överträdelser av obligatoriska begränsningar är allvarligare än för icke-obligatoriska. Icke-obligatoriska begränsningar bör ha ett värde med suggestion constraint (Q62026391).
- exception to constraint (P2303)
- Listar kända undantag till begränsningen. Objekten som anges under denna parameter kontrolleras inte för begränsningen.
- group by (P2304)
- Innehåller en egenskap med de värden av vilka begränsningsöverträdelser ska grupperas. Det vill säga när databasrapporterna listar överträdelser för en begränsning (för alla objekt) grupperas objekten med överträdelser av det värde de har för egenskapen som anges i group by (P2304)-parametern. (Begränsningstillägget använder inte denna parameter.)
- constraint scope (P4680)
- Anger i vilken del av ett uttalande begränsningarna gäller, med de tre specialvärdena constraint checked on main value (Q46466787), constraint checked on qualifiers (Q46466783) och constraint checked on references (Q46466805). Använd någon kombination av dessa värden för att ange var en begränsning ska kontrolleras. Om parametern inte anges, beror standardvärdet på begränsningstypen. (Observera att databasrapporter listar endast kränkningar på huvudvärdet för ett uttalande.)
- constraint clarification (P6607)
- Erbjuder en enkel förklaring av syftet med begränsningen (varför den finns) och rekommenderar åtgärder för att lösa den.
När kontrolleras inte begränsningar
Varje individuell begränsning kan lista undantag i sina begränsningsparametrar (se ovan); begränsning kommer inte kontrolleras alls på alla det objektets uttalanden. (Det finns för nuvarande ingen mekanism för att ange andra entitetstyper som undantag, eller för att lista uttalande på ett annat sätt.)
På egenskaper som Wikidata property example (P1855), Wikidata property example for properties (P2271), osv., som definierats på wgWBQualityConstraintsPropertiesWithViolatingQualifiers
, hoppas alla begränsningskontroller över. På dessa egenskaper har bestämningar en annan betydelse än annars: de liknar mer huvuduttalanden bestämningar i ett uttalande, så det verkar inte vettigt att kontrollera begränsningar på de bestämningarna.
WikibaseQualityConstraints använder bara begränsningsuttalanden med normal och föredragen rank och ignorerar de med nedvärderad rank, så att sätta en begränsnings rank som nedvärderad fungerar för att "gömma" det från WikibaseQualityConstraints. (KrBot använder alla begränsningsuttalanden oavsett rank)
Anpassade begränsningar
Med lite SPARQL-kunskaper kan man göra väldigt komplexa begränsningar för vissa egenskaper, utöver de ovan angivna begränsningarna. Mer information finns på Template:Complex constraint. Se även listan över egenskaper med komplexa begränsningar.
Se även
- Wikidata:Curious Facts - ett verktyg som slumpvis visar begränsningsöverträdelser