Danish numerals (E65)

From Wikidata
Jump to navigation Jump to search
language codelabeldescriptionaliasesedit
enDanish numeralsbase schema for Danish numeralsedit
dadansk talordskema for danske talordedit
frnuméro en danoisedit
nldeens telwoordbasis schema voor een Deens telwoordedit
ptnumeral (danês)edit
ruдатские числительныесхема для датских числительныхedit
IMPORT <https://www.wikidata.org/wiki/Special:EntitySchemaText/E68>
PREFIX E68: <https://www.wikidata.org/wiki/Special:EntitySchemaText/E68#>

PREFIX dct: <http://purl.org/dc/terms/>
PREFIX ontolex: <http://www.w3.org/ns/lemon/ontolex#>
PREFIX p: <http://www.wikidata.org/prop/>
PREFIX pq: <http://www.wikidata.org/prop/qualifier/>
PREFIX prov: <http://www.w3.org/ns/prov#>
PREFIX ps: <http://www.wikidata.org/prop/statement/>
PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
PREFIX skos: <http://www.w3.org/2004/02/skos/core#> 
PREFIX wd: <http://www.wikidata.org/entity/>
PREFIX wdno: <http://www.wikidata.org/prop/novalue/>
PREFIX wdt: <http://www.wikidata.org/prop/direct/>
PREFIX wikibase: <http://wikiba.se/ontology#>
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>


# SELECT ?lexeme { ?lexeme dct:language wd:Q9035 ; wikibase:lexicalCategory wd:Q63116 }


START = @<danish-numeral>


<danish-numeral> EXTRA wdt:P31 a {

  dct:language [ wd:Q9035 ]
    // rdf:label "language"
    // rdf:comment "The language of lexeme must be Danish." ;

  wikibase:lemma [ @da ]
    // rdf:label "lemma"
    // rdf:comment "Danish numeral must have one Danish lemma." ;

  wdt:P5187 [ @da ]
    // rdf:label "word stem"
    // rdf:comment "Danish numeral must have one word stem." ;

  wdt:P31 [ wd:Q1329258 wd:Q923933 ]
    // rdf:label "Subtype of numeral"
    // rdf:comment "Danish numeral must be either ordinal or cardinal word" ; 

  a [ wdno:P6140 ]
    // rdf:label "DanNet"
    // rdf:comment "Danish numeral must have no DanNet identifier" ;

  p:P5831 @<danish-numeral-usage-example> +
    // rdf:label "usage example statement"
    // rdf:comment "Danish numeral must have one or more usage examples" ;

  ontolex:sense @<danish-numeral-sense>
    // rdf:label "sense"
    // rdf:comment "Danish numeral must have one sense" ;

}
AND (
    # Almost all Danish numerals must have one form
    { ontolex:lexicalForm @<danish-numeral-form> }
  OR
    # Exceptions: en/et (L3073) and anden/andet (L48590)
    # have multiple forms
    /L3073$/ OR /L48590$/ { ontolex:lexicalForm @<danish-numeral-form>{2,} } 
  )


<danish-numeral-form> {

  # Hyphenation
  p:P5279 @E68:danish-hyphenation-statement + ; 

  # Must have one representation
  ontolex:representation [ @da ] ; 

  wdt:P2859 xsd:string
    // rdf:label "X-SAMPA"
    // rdf:comment "Form must have one X-SAMPA pronounciation code" ;
}


<danish-numeral-sense> EXTRA skos:definition {

  # Must have Danish and English gloss
  skos:definition [ @da ]
    // rdf:label "Danish gloss" ; 
  skos:definition [ @en ] 
    // rdf:label "English gloss" ;

  # item - betydning
  wdt:P5137 EXTRA wdt:P31 {
    wdt:P31 EXTRA wdt:P31 {
      wdt:P31 [ wd:Q47460393 ]
    } +
  }      
}


<danish-numeral-usage-example> EXTRA wdt:P31 {
  
  # The usage example must be in Danish
  ps:P5831 [ @da ] ; 

  # Must be stated what form the usage example demonstrates
  pq:P5830 @<danish-numeral-form> ;

  # There should be one reference to where the text came from
  prov:wasDerivedFrom IRI ; 
}
AND (
    # Must be stated what sense the usage example demonstrates
    { pq:P6072 @<danish-numeral-sense> ; }
OR
    # Currently allow exceptions for ordinal numbers
    { ^p:P5831 { wdt:P31 [ wd:Q923933 ] ; } }
)