SPARQL examples: Difference between revisions

From Dariah-Lab
Jump to navigation Jump to search
Line 293: Line 293:
[https://wikihum.lab.dariah.pl/wdqs/#%23title%3APersons%20with%20the%20surname%20Sobieski%20born%20in%20the%2016th%20and%2017th%20centuries%0A%23defaultView%3ATimeline%0ASELECT%20DISTINCT%20%3Fperson%20%28MAX%28%3FdeathDate%29%20as%20%3Fddate%29%20%28MAX%28%3FbirthDate%29%20as%20%3Fbdate%29%20%28MAX%28%3FpersonLabel%29%20as%20%3Flabel%29%20WHERE%20%7B%0A%20%20%23%20Condition%20for%20persons%0A%20%20%3Fperson%20wdt%3AP27%20wd%3AQ5.%0A%20%20%3Fperson%20rdfs%3Alabel%20%3FpersonLabel.%0A%0A%20%20%23%20Collection%20of%20date%20of%20birth%20%0A%20%20%3Fperson%20p%3AP11%20%3FbirthStatement.%0A%20%20%3FbirthStatement%20ps%3AP11%20%3FbirthDate.%0A%20%20%0A%20%20%23%20Collection%20of%20date%20of%20death%0A%20%20%3Fperson%20p%3AP12%20%3FdeathStatement.%0A%20%20%3FdeathStatement%20ps%3AP12%20%3FdeathDate.%0A%20%20%0A%20%20%23%20date%20of%20birth%20filtering%20-%20range%201501-1700%20and%20surname%20%E2%80%98Sobieski%E2%80%99%20in%20the%20label%0A%20%20FILTER%28CONTAINS%28LCASE%28%3FpersonLabel%29%2C%20%22sobieski%22%29%20%26%26%20%3FbirthDate%20%3E%3D%20%221501-01-01T00%3A00%3A00Z%22%5E%5Exsd%3AdateTime%20%26%26%20%3FbirthDate%20%3C%3D%20%221700-12-31T23%3A59%3A59Z%22%5E%5Exsd%3AdateTime%29%0A%0A%7D%20GROUP%20BY%20%3Fperson%0AORDER%20BY%20%3FpersonLabel Try It!]
[https://wikihum.lab.dariah.pl/wdqs/#%23title%3APersons%20with%20the%20surname%20Sobieski%20born%20in%20the%2016th%20and%2017th%20centuries%0A%23defaultView%3ATimeline%0ASELECT%20DISTINCT%20%3Fperson%20%28MAX%28%3FdeathDate%29%20as%20%3Fddate%29%20%28MAX%28%3FbirthDate%29%20as%20%3Fbdate%29%20%28MAX%28%3FpersonLabel%29%20as%20%3Flabel%29%20WHERE%20%7B%0A%20%20%23%20Condition%20for%20persons%0A%20%20%3Fperson%20wdt%3AP27%20wd%3AQ5.%0A%20%20%3Fperson%20rdfs%3Alabel%20%3FpersonLabel.%0A%0A%20%20%23%20Collection%20of%20date%20of%20birth%20%0A%20%20%3Fperson%20p%3AP11%20%3FbirthStatement.%0A%20%20%3FbirthStatement%20ps%3AP11%20%3FbirthDate.%0A%20%20%0A%20%20%23%20Collection%20of%20date%20of%20death%0A%20%20%3Fperson%20p%3AP12%20%3FdeathStatement.%0A%20%20%3FdeathStatement%20ps%3AP12%20%3FdeathDate.%0A%20%20%0A%20%20%23%20date%20of%20birth%20filtering%20-%20range%201501-1700%20and%20surname%20%E2%80%98Sobieski%E2%80%99%20in%20the%20label%0A%20%20FILTER%28CONTAINS%28LCASE%28%3FpersonLabel%29%2C%20%22sobieski%22%29%20%26%26%20%3FbirthDate%20%3E%3D%20%221501-01-01T00%3A00%3A00Z%22%5E%5Exsd%3AdateTime%20%26%26%20%3FbirthDate%20%3C%3D%20%221700-12-31T23%3A59%3A59Z%22%5E%5Exsd%3AdateTime%29%0A%0A%7D%20GROUP%20BY%20%3Fperson%0AORDER%20BY%20%3FpersonLabel Try It!]


=== Zmiana nazwy miejscowości między XVI wiekiem a współczesnością (tylko własność monarsza) ===
=== Renaming of human settlements between the 16th century and the present (monarchical ownership only) ===
<syntaxhighlight lang="SPARQL" class="mw-highlight-lang-sparql">
<syntaxhighlight lang="SPARQL" class="mw-highlight-lang-sparql">
#title:Zmiana nazwy miejscowości między XVI wiekiem a współczesnością (tylko dla własności monarszej)
#title:Renaming of human settlements between the 16th century and the present (monarchical ownership only)
#defaultView:Map
#defaultView:Map
SELECT ?place ?currentName ?historicNames ?coordinate ?layer
SELECT ?place ?currentName ?historicNames ?coordinate ?layer
Line 301: Line 301:
    
    
   BIND(
   BIND(
     IF ( CONTAINS(LCASE(CONCAT(?historicNames,",")), LCASE(CONCAT(?currentName, ","))), "kontynuacja", "zmiana") AS ?layer ).
     IF ( CONTAINS(LCASE(CONCAT(?historicNames,",")), LCASE(CONCAT(?currentName, ","))), "continuation of", "change") AS ?layer ).
    
    
   {
   {
     SELECT ?place ?currentName ?coordinate (GROUP_CONCAT(?historicName; separator=",") AS ?historicNames)  
     SELECT ?place ?currentName ?coordinate (GROUP_CONCAT(?historicName; separator=",") AS ?historicNames)  
     WHERE {
     WHERE {
       ?place wdt:P27 wd:Q175698;  # miejscowość jest instancją "Q175698" (miejscowość)
       ?place wdt:P27 wd:Q175698;   
             rdfs:label ?currentName.
             rdfs:label ?currentName.
       ?place wdt:P134 wd:Q64.
       ?place wdt:P134 wd:Q64.
Line 317: Line 317:
                             pq:P40 ?pointInTime16thCentury.
                             pq:P40 ?pointInTime16thCentury.
        
        
       # Filtr na opis zawierający tekst "osada historyczna"
       # Filter for a description containing the text ‘historic settlement’
       ?place schema:description ?settlementDescription.
       ?place schema:description ?settlementDescription.
       FILTER(LANG(?settlementDescription) = "pl")  # Opis w języku polskim
       FILTER(LANG(?settlementDescription) = "pl")  # Description in Polish
       FILTER(!STRSTARTS(?settlementDescription, "osada historyczna"))  
       FILTER(!STRSTARTS(?settlementDescription, "osada historyczna"))  
    
    
Line 328: Line 328:
}
}
</syntaxhighlight>
</syntaxhighlight>
[https://wikihum.lab.dariah.pl/wdqs/#%23title%3AZmiana%20nazwy%20miejscowo%C5%9Bci%20mi%C4%99dzy%20XVI%20wiekiem%20a%20wsp%C3%B3%C5%82czesno%C5%9Bci%C4%85%20%28tylko%20dla%20w%C5%82asno%C5%9Bci%20monarszej%29%0A%23defaultView%3AMap%0ASELECT%20%3Fplace%20%3FcurrentName%20%3FhistoricNames%20%3Fcoordinate%20%3Flayer%0AWHERE%20%7B%0A%20%20%0A%20%20BIND%28%0A%20%20%20%20IF%20%28%20CONTAINS%28LCASE%28CONCAT%28%3FhistoricNames%2C%22%2C%22%29%29%2C%20LCASE%28CONCAT%28%3FcurrentName%2C%20%22%2C%22%29%29%29%2C%20%22kontynuacja%22%2C%20%22zmiana%22%29%20AS%20%3Flayer%20%29.%0A%20%20%0A%20%20%7B%0A%20%20%20%20SELECT%20%3Fplace%20%3FcurrentName%20%3Fcoordinate%20%28GROUP_CONCAT%28%3FhistoricName%3B%20separator%3D%22%2C%22%29%20AS%20%3FhistoricNames%29%20%0A%20%20%20%20WHERE%20%7B%0A%20%20%20%20%20%20%3Fplace%20wdt%3AP27%20wd%3AQ175698%3B%20%20%23%20miejscowo%C5%9B%C4%87%20jest%20instancj%C4%85%20%22Q175698%22%20%28miejscowo%C5%9B%C4%87%29%0A%20%20%20%20%20%20%20%20%20%20%20%20%20rdfs%3Alabel%20%3FcurrentName.%0A%20%20%20%20%20%20%3Fplace%20wdt%3AP134%20wd%3AQ64.%0A%20%20%20%20%20%20%3Fplace%20p%3AP63%20%3Fstatement%20.%0A%20%20%20%20%20%20%3Fstatement%20pq%3AP40%20%3Fpointintime_coord%20.%0A%20%20%20%20%20%20%3Fstatement%20ps%3AP63%20%3Fcoordinate%20.%0A%20%20%0A%20%20%20%20%20%20%3Fplace%20p%3AP54%20%3FhistoricNameStatement%20.%0A%20%20%20%20%20%20%3FhistoricNameStatement%20ps%3AP54%20%3FhistoricName%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20pq%3AP40%20%3FpointInTime16thCentury.%0A%20%20%20%20%20%20%0A%20%20%20%20%20%20%23%20Filtr%20na%20opis%20zawieraj%C4%85cy%20tekst%20%22osada%20historyczna%22%0A%20%20%20%20%20%20%3Fplace%20schema%3Adescription%20%3FsettlementDescription.%0A%20%20%20%20%20%20FILTER%28LANG%28%3FsettlementDescription%29%20%3D%20%22pl%22%29%20%20%23%20Opis%20w%20j%C4%99zyku%20polskim%0A%20%20%20%20%20%20FILTER%28%21STRSTARTS%28%3FsettlementDescription%2C%20%22osada%20historyczna%22%29%29%20%0A%20%20%0A%20%20%20%20%20%20FILTER%28LANG%28%3FcurrentName%29%20%3D%20%22pl%22%20%26%26%20YEAR%28%3FpointInTime16thCentury%29%20%3D%201600%20%26%26%20YEAR%28%3Fpointintime_coord%29%20%3D%201600%29%0A%20%20%20%20%20%20%7D%0A%20%20%20%20GROUP%20BY%20%3Fplace%20%3FcurrentName%20%3Fcoordinate%0A%20%20%7D%0A%7D Try It!]
[https://wikihum.lab.dariah.pl/wdqs/#%23title%3ARenaming%20of%20human%20settlements%20between%20the%2016th%20century%20and%20the%20present%20%28monarchical%20ownership%20only%29%0A%23defaultView%3AMap%0ASELECT%20%3Fplace%20%3FcurrentName%20%3FhistoricNames%20%3Fcoordinate%20%3Flayer%0AWHERE%20%7B%0A%20%20%0A%20%20BIND%28%0A%20%20%20%20IF%20%28%20CONTAINS%28LCASE%28CONCAT%28%3FhistoricNames%2C%22%2C%22%29%29%2C%20LCASE%28CONCAT%28%3FcurrentName%2C%20%22%2C%22%29%29%29%2C%20%22continuation%20of%22%2C%20%22change%22%29%20AS%20%3Flayer%20%29.%0A%20%20%0A%20%20%7B%0A%20%20%20%20SELECT%20%3Fplace%20%3FcurrentName%20%3Fcoordinate%20%28GROUP_CONCAT%28%3FhistoricName%3B%20separator%3D%22%2C%22%29%20AS%20%3FhistoricNames%29%20%0A%20%20%20%20WHERE%20%7B%0A%20%20%20%20%20%20%3Fplace%20wdt%3AP27%20wd%3AQ175698%3B%20%20%0A%20%20%20%20%20%20%20%20%20%20%20%20%20rdfs%3Alabel%20%3FcurrentName.%0A%20%20%20%20%20%20%3Fplace%20wdt%3AP134%20wd%3AQ64.%0A%20%20%20%20%20%20%3Fplace%20p%3AP63%20%3Fstatement%20.%0A%20%20%20%20%20%20%3Fstatement%20pq%3AP40%20%3Fpointintime_coord%20.%0A%20%20%20%20%20%20%3Fstatement%20ps%3AP63%20%3Fcoordinate%20.%0A%20%20%0A%20%20%20%20%20%20%3Fplace%20p%3AP54%20%3FhistoricNameStatement%20.%0A%20%20%20%20%20%20%3FhistoricNameStatement%20ps%3AP54%20%3FhistoricName%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20pq%3AP40%20%3FpointInTime16thCentury.%0A%20%20%20%20%20%20%0A%20%20%20%20%20%20%23%20Filter%20for%20a%20description%20containing%20the%20text%20%E2%80%98historic%20settlement%E2%80%99%0A%20%20%20%20%20%20%3Fplace%20schema%3Adescription%20%3FsettlementDescription.%0A%20%20%20%20%20%20FILTER%28LANG%28%3FsettlementDescription%29%20%3D%20%22pl%22%29%20%20%23%20Description%20in%20Polish%0A%20%20%20%20%20%20FILTER%28%21STRSTARTS%28%3FsettlementDescription%2C%20%22osada%20historyczna%22%29%29%20%0A%20%20%0A%20%20%20%20%20%20FILTER%28LANG%28%3FcurrentName%29%20%3D%20%22pl%22%20%26%26%20YEAR%28%3FpointInTime16thCentury%29%20%3D%201600%20%26%26%20YEAR%28%3Fpointintime_coord%29%20%3D%201600%29%0A%20%20%20%20%20%20%7D%0A%20%20%20%20GROUP%20BY%20%3Fplace%20%3FcurrentName%20%3Fcoordinate%0A%20%20%7D%0A%7D Try It!]


=== Odległości między położeniem miejscowości w XVI wieku i współcześnie (w km)===
=== Odległości między położeniem miejscowości w XVI wieku i współcześnie (w km)===

Revision as of 11:38, 30 August 2024

This page is parsed by the web interface of the query service to fill the query example dialog.


Towns that served as county capital in the 16th century

#title:Towns that served as county capital in the 16th century
#defaultView:Map
SELECT ?item ?itemLabel ?ahp_id ?coordinate
  WHERE
  {
      ?item wdt:P81 ?ahp_id .
      ?item p:P63 ?statement .
      ?statement pq:P40 ?pointintime .
      ?statement ps:P63 ?coordinate .
      ?item p:P79 ?statement1.
      ?statement1 pq:P40 ?pointintime1 .
      ?statement1 (ps:P79/(wdt:P56*)) wd:Q99.  # stolica powiatu
      FILTER(YEAR(?pointintime) = 1600 && YEAR(?pointintime1) = 1600)
      SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE],en". }
  }

Try it!

Human settlements that were places of the local assembly in the 16th century

#title:Human settlements that were places of the local assembly in the 16th century
#defaultView:Map
SELECT ?item ?itemLabel ?ahp_id ?coordinate
  WHERE
  {
      ?item wdt:P81 ?ahp_id .
      ?item p:P63 ?statement .
      ?statement pq:P40 ?pointintime .
      ?statement ps:P63 ?coordinate .
      ?item p:P79 ?statement1.
      ?statement1 pq:P40 ?pointintime1 .
      ?statement1 (ps:P79/(wdt:P56*)) wd:Q91.  # places of the local assembly
      FILTER(YEAR(?pointintime) = 1600 && YEAR(?pointintime1) = 1600)
      SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE],en". }
  }

Try It!

Human settlements that were towns in the 16th century and are now villages

#title:Human settlements that were towns in the 16th century and are now villages
#defaultView:Map
SELECT ?settlement ?settlementLabel ?coordinate16thCentury WHERE {
  # Warunek dla miejscowości
  ?settlement wdt:P27 wd:Q175698.

  # It was a town in the 16th century
  ?settlement p:P62 ?cityStatement.
  ?cityStatement ps:P62 wd:Q622;
                 pq:P40 ?pointInTime16thCentury.
  FILTER(YEAR(?pointInTime16thCentury) > 1500 && YEAR(?pointInTime16thCentury) <= 1600)

  # it is a village in the year 2022
  ?settlement p:P62 ?villageStatement.
  ?villageStatement ps:P62 wd:Q653;
                    pq:P40 ?pointInTime2022.
  FILTER(YEAR(?pointInTime2022) = 2022)

  # geographical coordinates from the 16th century
  ?settlement p:P63 ?coordStatement.
  ?coordStatement ps:P63 ?coordinate16thCentury;
                 pq:P40 ?coordTime.
  FILTER(YEAR(?coordTime) > 1500 && YEAR(?coordTime) <= 1600)

  SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE],en". }
}

Try It!

Human settlements that existed in the 16th century but do not exist today

#title:Human settlements that existed in the 16th century but do not exist today
#defaultView:Map
SELECT ?settlement ?settlementLabel ?settlementDescription ?coordinate16thCentury WHERE {
  # Condition for elements that are human settlements
  ?settlement wdt:P27 wd:Q175698.

  # Filter for a description containing the text ‘historic settlement’
  ?settlement schema:description ?settlementDescription.
  FILTER(CONTAINS(LCASE(?settlementDescription), "osada historyczna"))
  
  # geographical coordinates from the 16th century
  ?settlement p:P63 ?coordStatement.
  ?coordStatement ps:P63 ?coordinate16thCentury;
                 pq:P40 ?coordTime.
  FILTER(YEAR(?coordTime) > 1500 && YEAR(?coordTime) <= 1600)

  # Service for labels and descriptions in the indicated language
  SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE],pl". }
}

Try It!

People born in the 16th century

#title:People born in the 16th century
SELECT DISTINCT ?human ?humanLabel (YEAR(?date_of_birth) AS ?year) WHERE {
  ?human wdt:P27 wd:Q5.
  ?human wdt:P11 ?date_of_birth.
  FILTER (YEAR(?date_of_birth) >= 1500 && YEAR(?date_of_birth) < 1601)
  SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE],en". }
}
ORDER BY ?date_of_birth

Try it!

List of long-lived persons

#title:Persons with known date of birth and death who have lived beyond 90 years
SELECT DISTINCT ?item ?itemLabel ?age 
WHERE {
        ?item wdt:P27 wd:Q5 .
        ?item p:P11/psv:P11 ?birth_date_node . 
        ?item p:P12/psv:P12 ?death_date_node .
        ?birth_date_node wikibase:timeValue ?birth_date.
        ?death_date_node wikibase:timeValue ?death_date.
        ?birth_date_node wikibase:timePrecision ?birth_precision.
        ?death_date_node wikibase:timePrecision ?death_precision.
        BIND( YEAR(?death_date) - YEAR(?birth_date) - 
              IF(MONTH(?death_date)<MONTH(?birth_date) || 
                 (MONTH(?death_date)=MONTH(?birth_date) && DAY(?death_date)<DAY(?birth_date)),1,0) AS ?age )
        FILTER(?age > 90 && ?birth_precision >= 9 && ?death_precision >= 9). 
        SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE],en". }
}
ORDER BY DESC(?age)

Try It!

Persons living in the 16th century - born, deceased or active during this period

#title:Persons living in the 16th century - born, deceased or active during this period
SELECT * WHERE
{ 
 
  { 
    SELECT DISTINCT ?item ?itemLabel WHERE {
    ?item wdt:P27 wd:Q5.
    ?item wdt:P11 ?birthdate.
    ?item wdt:P12 ?deathdate. 
    FILTER(
           ((?birthdate >= "1501-01-01T00:00:00Z"^^xsd:dateTime) && (?birthdate <= "1600-12-31T00:00:00Z"^^xsd:dateTime)) 
           ||
           ((?deathdate >= "1501-01-01T00:00:00Z"^^xsd:dateTime) && (?deathdate <= "1600-12-31T00:00:00Z"^^xsd:dateTime))
          ) 
    SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE],en". }}
  }
UNION
  {
   SELECT DISTINCT ?item ?itemLabel WHERE {
    ?item wdt:P27 wd:Q5.
    ?item wdt:P87 ?fluorit.
    FILTER ((?fluorit >= "+1501-01-01T00:00:00Z"^^xsd:dateTime) && (?fluorit <= "+1600-01-01T00:00:00Z"^^xsd:dateTime))
    SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE],en". }}
  }
   
}
ORDER BY ?itemLabel

Try It!

Human settlements that were cities in the 16th century

#title:Human settlements that were cities in the 16th century
#defaultView:Map
SELECT ?item ?itemLabel ?ahp_id ?coordinate
  WHERE
  {
      ?item wdt:P81 ?ahp_id .
      ?item p:P63 ?statement .
      ?statement pq:P40 ?pointintime .  
      ?item p:P62 ?statement1.
      ?statement1 pq:P40 ?pointintime1 .
      ?statement ps:P63 ?coordinate .
      ?statement1 (ps:P62/(wdt:P56*)) wd:Q622.
      FILTER(YEAR(?pointintime) = 1600 && YEAR(?pointintime1) = 1600)
      SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE],en". }
  }

Try It!

Human settlements that were monarchically owned in the 16th century

#title:Human settlements that were monarchically owned in the 16th century
#defaultView:Map
SELECT ?item ?itemLabel ?ahp_id ?coordinate
  WHERE
  {
      ?item wdt:P81 ?ahp_id .
      ?item p:P63 ?statement .
      ?item p:P134 ?statement1.
      ?statement pq:P40 ?pointintime .
      ?statement1 pq:P40 ?pointintime1 .
      ?statement ps:P63 ?coordinate .
      ?statement1 (ps:P134/(wdt:P56*)) wd:Q64.  # Q64 - własność monarsza, Q63 - duchowna, Q65 - mieszczańska, Q66 - szlachecka
      FILTER(YEAR(?pointintime) = 1600)
      FILTER(YEAR(?pointintime1) = 1600)
      SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE],en". }
  }

Try It!

Human settlements by property type in the 16th century

#title:Human settlements by property type in the 16th century
#defaultView:Map
SELECT ?item ?itemLabel ?ahp_id ?coordinate ?layer
  WHERE
  {
      ?item wdt:P81 ?ahp_id .
      ?item p:P63 ?statement .
      ?item p:P134 ?statement1.
      ?statement pq:P40 ?pointintime .
      ?statement1 pq:P40 ?pointintime1 .
      ?statement ps:P63 ?coordinate .
      ?statement1 (ps:P134/(wdt:P56*)) ?typ
      # Q64 - royal property, Q63 - ecclesiastical property, Q65 - townsmen property, Q66 - noble property
      BIND(
      IF(?typ = wd:Q64, "royal",
      IF(?typ = wd:Q63, "ecclesiastical",
      IF(?typ = wd:Q65, "townsmen",
      IF(?typ = wd:Q66, "noble",
      "inna"))))
      AS ?layer).
      FILTER(YEAR(?pointintime) = 1600)
      FILTER(YEAR(?pointintime1) = 1600)
      SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE],en". }
  }
GROUP BY ?item ?itemLabel ?ahp_id ?coordinate ?layer

Try It!

Summary of the number of people born in each century

#title:Summary of the number of people born in each century
#defaultView:BarChart
SELECT ?centuryRoman (COUNT(*) AS ?count)
WHERE {
  ?person wdt:P27 wd:Q5;
          wdt:P11 ?birthDate .

  # Calculation of centenary based on year of birth
  BIND(CEIL((YEAR(?birthDate) - 1) / 100) AS ?century)
  BIND(
    IF(?century = 10, "X",
    IF(?century = 11, "XI",
    IF(?century = 12, "XII",
    IF(?century = 13, "XIII",
    IF(?century = 14, "XIV",
    IF(?century = 15, "XV",
    IF(?century = 16, "XVI",
    IF(?century = 17, "XVII",
    IF(?century = 18, "XVIII",
    IF(?century = 19, "XIX",
    IF(?century = 20, "XX",
    ""))))))))))) AS ?centuryRoman).
  # filtering out incorrect data 
  FILTER(?century >= 10 && ?century < 21)
}
GROUP BY ?centuryRoman
ORDER BY ?count

Try It!

Persons with the surname Sobieski born in the 16th and 17th centuries

#title:Persons with the surname Sobieski born in the 16th and 17th centuries
#defaultView:Timeline
SELECT DISTINCT ?person (MAX(?deathDate) as ?ddate) (MAX(?birthDate) as ?bdate) (MAX(?personLabel) as ?label) WHERE {
  # Condition for persons
  ?person wdt:P27 wd:Q5.
  ?person rdfs:label ?personLabel.

  # Collection of date of birth 
  ?person p:P11 ?birthStatement.
  ?birthStatement ps:P11 ?birthDate.
  
  # Collection of date of death
  ?person p:P12 ?deathStatement.
  ?deathStatement ps:P12 ?deathDate.
  
  # date of birth filtering - range 1501-1700 and surname ‘Sobieski’ in the label
  FILTER(CONTAINS(LCASE(?personLabel), "sobieski") && ?birthDate >= "1501-01-01T00:00:00Z"^^xsd:dateTime && ?birthDate <= "1700-12-31T23:59:59Z"^^xsd:dateTime)

} GROUP BY ?person
ORDER BY ?personLabel

Try It!

Renaming of human settlements between the 16th century and the present (monarchical ownership only)

#title:Renaming of human settlements between the 16th century and the present (monarchical ownership only)
#defaultView:Map
SELECT ?place ?currentName ?historicNames ?coordinate ?layer
WHERE {
  
  BIND(
    IF ( CONTAINS(LCASE(CONCAT(?historicNames,",")), LCASE(CONCAT(?currentName, ","))), "continuation of", "change") AS ?layer ).
  
  {
    SELECT ?place ?currentName ?coordinate (GROUP_CONCAT(?historicName; separator=",") AS ?historicNames) 
    WHERE {
      ?place wdt:P27 wd:Q175698;  
             rdfs:label ?currentName.
      ?place wdt:P134 wd:Q64.
      ?place p:P63 ?statement .
      ?statement pq:P40 ?pointintime_coord .
      ?statement ps:P63 ?coordinate .
  
      ?place p:P54 ?historicNameStatement .
      ?historicNameStatement ps:P54 ?historicName;
                             pq:P40 ?pointInTime16thCentury.
      
      # Filter for a description containing the text ‘historic settlement’
      ?place schema:description ?settlementDescription.
      FILTER(LANG(?settlementDescription) = "pl")  # Description in Polish
      FILTER(!STRSTARTS(?settlementDescription, "osada historyczna")) 
  
      FILTER(LANG(?currentName) = "pl" && YEAR(?pointInTime16thCentury) = 1600 && YEAR(?pointintime_coord) = 1600)
      }
    GROUP BY ?place ?currentName ?coordinate
  }
}

Try It!

Odległości między położeniem miejscowości w XVI wieku i współcześnie (w km)

#title:Odległości między położeniem miejscowości w XVI wieku i współcześnie w km
SELECT DISTINCT ?place ?placeLabel ?distance 
WHERE {
  
SELECT ?place ?placeLabel ?coord1 ?coord2 (geof:distance(?coord1, ?coord2) AS ?distance)
WHERE {
  ?place wdt:P27 wd:Q175698;
         p:P63 ?statement1, ?statement2.

  ?statement1 ps:P63 ?coord1.
  ?statement2 ps:P63 ?coord2.

  FILTER(?statement1 != ?statement2)
  
  SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE],en". }
}
}
ORDER BY DESC (?distance)

Try It!

Miejscowości Wólka lub Dąbrowa w XVI wieku

#title:Miejscowości z nazwami typu Wólka lub Dąbrowa w XVI wieku
#defaultView:Map
SELECT ?item ?itemLabel ?ahp_id ?coordinate ?historicNames ?layer
WHERE {
  
BIND(
      IF(CONTAINS(?historicNames, "Wólka"), "Wólka",
      IF(CONTAINS(?historicNames, "Dąbrowa"), "Dąbrowa",
      "inna"))
      AS ?layer).

  { 
    SELECT ?item ?itemLabel ?ahp_id ?coordinate (GROUP_CONCAT(?historicName; separator=",") AS ?historicNames) 
    WHERE
    {
      ?item wdt:P81 ?ahp_id .
      ?item p:P63 ?statement .
      ?statement ps:P63 ?coordinate .
      ?statement pq:P40 ?pointintime .
    
      ?item p:P54 ?historicNameStatement .
      ?historicNameStatement ps:P54 ?historicName;
                             pq:P40 ?pointInTime16thCentury.
      
      FILTER( YEAR(?pointintime) = 1600 && YEAR(?pointInTime16thCentury) = 1600 && (CONTAINS(?historicName, "Wólka") || CONTAINS(?historicName, "Dąbrowa")))
    }
    GROUP BY ?item ?itemLabel ?ahp_id ?coordinate ?historicName
  }
  
  FILTER(?layer = "Wólka" || ?layer = "Dąbrowa")
}

Try It!

Stara Wieś kontra Nowa Wieś w XVI wieku

#title:Stara Wieś kontra Nowa Wieś w XVI wieku
#defaultView:Map
SELECT ?item ?itemLabel ?ahp_id ?coordinate ?historicNames ?layer
WHERE {
  
BIND(
      IF(CONTAINS(?historicNames, "Nowa Wieś"), "Nowa Wieś",
      IF(CONTAINS(?historicNames, "Stara Wieś"), "Stara Wieś",
      "inna"))
      AS ?layer).

  { 
    SELECT ?item ?itemLabel ?ahp_id ?coordinate (GROUP_CONCAT(?historicName; separator=",") AS ?historicNames) 
    WHERE
    {
      ?item wdt:P81 ?ahp_id .
      ?item p:P63 ?statement .
      ?statement ps:P63 ?coordinate .
      ?statement pq:P40 ?pointintime .
    
      ?item p:P54 ?historicNameStatement .
      ?historicNameStatement ps:P54 ?historicName;
                             pq:P40 ?pointInTime16thCentury.
      
      FILTER( YEAR(?pointintime) = 1600 && YEAR(?pointInTime16thCentury) = 1600 && (CONTAINS(?historicName, "Nowa Wieś") || CONTAINS(?historicName, "Stara Wieś")))
    }
    GROUP BY ?item ?itemLabel ?ahp_id ?coordinate ?historicName
  }
  
  FILTER(?layer = "Nowa Wieś" || ?layer = "Stara Wieś")
}

Try It!