PREFIX wdt: <http://www.wikidata.org/prop/direct/>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
PREFIX wd: <http://www.wikidata.org/entity/>
SELECT ?subclass ?label WHERE {
  ?subclass wdt:P279 wd:Q13442814 .
  ?subclass rdfs:label ?label .
  FILTER ( LANG( ?label ) = "en" )
}
ORDER BY ?label

Using entities:
- scholarly article (wd:Q13442814), also known as academic article, academic paper, academic papers, article, article in science, etc.: is subclass of academic work / is subclass of scientific literature / is subclass of Scientific literature / is subclass of article / is subclass of magazine article / is subclass of research / is subclass of scientific publication / article in an academic publication, usually peer reviewed / article in an academic publication, usually peer reviewed

Using properties:
- subclass of (wd:P279 as wdt), also known as all members of this class also belong to, category of, form of, has superclass, is a class of, etc.: this item is a subclass (subset) of that item; ALL instances ... of volcanic landform); Everest is an instance of mountain / this item is a subclass (subset) of that item; all instances ... instance of volcanic landform); K2 is an instance of mountain / this item is a subclass (subset) of that item; all instances ... instance of volcanic landform); K2 is an instance of mountain / this item is a subclass (subset) of that item; all instances ... instance of volcanic landform); K2 is an instance of mountain

Got 30 rows and 2 columns, showing the first 5 and last 5 rows below:
| subclass                                 | label                               |
| ---------------------------------------- | ----------------------------------- |
| academic conference paper (wd:Q10885494) | academic conference paper (lang:en) |
| academic journal article (wd:Q18918145)  | academic journal article (lang:en)  |
| Annus Mirabilis papers (wd:Q51497)       | Annus Mirabilis papers (lang:en)    |
| A-publication (wd:Q2774197)              | A-publication (lang:en)             |
| classic article (wd:Q58898396)           | classic article (lang:en)           |
| ...                                      | ...                                 |
| sleeping beauty (wd:Q115528532)          | sleeping beauty (lang:en)           |
| survey article (wd:Q60535861)            | survey article (lang:en)            |
| systematic review (wd:Q1504425)          | systematic review (lang:en)         |
| type catalogue (wd:Q121763407)           | type catalogue (lang:en)            |
| working paper (wd:Q1228945)              | working paper (lang:en)             |

Answer: The items that are subclasses of scholarly articles, ordered by their English labels, include: academic conference paper, academic journal article, Annus Mirabilis papers, A-publication, classic article, sleeping beauty, survey article, systematic review, type catalogue, and working paper (among others).

The items that are subclasses of scholarly articles, ordered by their English labels, include: academic conference paper, academic journal article, Annus Mirabilis papers, A-publication, classic article, sleeping beauty, survey article, systematic review, type catalogue, and working paper (among others).

SPARQL query over wikidata:
PREFIX wdt: <http://www.wikidata.org/prop/direct/>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
PREFIX wd: <http://www.wikidata.org/entity/>
SELECT ?subclass ?label WHERE {
  ?subclass wdt:P279 wd:Q13442814 .
  ?subclass rdfs:label ?label .
  FILTER ( LANG( ?label ) = "en" )
}
ORDER BY ?label

Using entities:
- scholarly article (wd:Q13442814), also known as academic article, academic paper, academic papers, article, article in science, etc.: is subclass of academic work / is subclass of scientific literature / is subclass of Scientific literature / is subclass of article / is subclass of magazine article / is subclass of research / is subclass of scientific publication / article in an academic publication, usually peer reviewed / article in an academic publication, usually peer reviewed

Using properties:
- subclass of (wd:P279 as wdt), also known as all members of this class also belong to, category of, form of, has superclass, is a class of, etc.: this item is a subclass (subset) of that item; ALL instances ... of volcanic landform); Everest is an instance of mountain / this item is a subclass (subset) of that item; all instances ... instance of volcanic landform); K2 is an instance of mountain / this item is a subclass (subset) of that item; all instances ... instance of volcanic landform); K2 is an instance of mountain / this item is a subclass (subset) of that item; all instances ... instance of volcanic landform); K2 is an instance of mountain

Execution result:
Got 30 rows and 2 columns, showing the first 5 and last 5 rows below:
| subclass                                 | label                               |
| ---------------------------------------- | ----------------------------------- |
| academic conference paper (wd:Q10885494) | academic conference paper (lang:en) |
| academic journal article (wd:Q18918145)  | academic journal article (lang:en)  |
| Annus Mirabilis papers (wd:Q51497)       | Annus Mirabilis papers (lang:en)    |
| A-publication (wd:Q2774197)              | A-publication (lang:en)             |
| classic article (wd:Q58898396)           | classic article (lang:en)           |
| ...                                      | ...                                 |
| sleeping beauty (wd:Q115528532)          | sleeping beauty (lang:en)           |
| survey article (wd:Q60535861)            | survey article (lang:en)            |
| systematic review (wd:Q1504425)          | systematic review (lang:en)         |
| type catalogue (wd:Q121763407)           | type catalogue (lang:en)            |
| working paper (wd:Q1228945)              | working paper (lang:en)             |

[System]
You are a question answering assistant. Your job is to generate a SPARQL query to answer a given user question.

You should follow a step-by-step approach to generate the SPARQL query:
1. Determine possible entities and properties implied by the user question.
2. Search for the entities and properties in the knowledge graphs. Where applicable, constrain the searches with already identified entities and properties.
3. Gradually build up the SPARQL query using the identified entities and properties. Start with simple queries and add more complexity as needed. Execute intermediate queries to get feedback and to verify your assumptions. You may need to refine or rethink your current plan based on the query results and go back to step 2 if needed, possibly multiple times.
4. Use the answer or cancel function to finalize your answer and stop the generation process.

Available knowledge graphs:
- wikidata at http://localhost:7001 with prefix index for entities and similarity index for properties, and notes:
  - P106 = occupation. Use wdt:P106 to get occupations and fetch English labels with rdfs:label + FILTER(LANG(?label)="en"). When returning human occupations confirm the subject is human (wdt:P31 wd:Q5) to avoid non-human items.
  - Population (P1082) and tabular (P4179): use wdt:P1082 for quick/direct values; for time-series/point-in-time use p:P1082 + ps:P1082 + pq:P585 and ORDER BY pq:P585 DESC. Inspect statement qualifiers (e.g., 'applies to part') and prov:wasDerivedFrom references (pr:P854 etc.) to detect city-proper vs metro/prefecture scopes before using values.
  - Common person properties: P31 (instance of human Q5), P106 (occupation), P569 (date of birth), P19 (place of birth), P27 (country of citizenship), P21 (sex/gender), P166 (award received). Use wdt: for direct values when possible.
  - P17 (country) can be incomplete/misleading for places (historical/overseas tags). To get modern cities in a country combine: instance-of city (P31=Q515) + wdt:P17 OR use wdt:P131* to find an admin parent whose wdt:P17 = the country. Also cross-check coordinates (P625) or admin hierarchy to spot outliers.
  - When filtering by date of birth (P569) use xsd:dateTime comparisons (e.g. >= "1900-01-01T00:00:00Z"^^xsd:dateTime). Be aware many items have year-only or imprecise dates and coverage is biased toward notable/public figures (sportspeople, politicians, artists).
  - To retrieve qualifiers (e.g., award year) use the statement/qualifier pattern: p:Pxxx / ps:Pxxx / pq:P585. Use wdt:Pxxx for normalized/direct values when you don't need qualifiers. Example: p:P166 + pq:P585 gives award year.
  - To get a person's occupations: use wdt:P106 for direct/normalized values and rdfs:label for human-readable names (FILTER(LANG(...))). Example: wd:Q... wdt:P106 ?occ . ?occ rdfs:label ?occLabel . FILTER(LANG(?occLabel)="en").
  - P166 = award received. Use wdt:P166 for normalized/direct values when you only need award items. To get award years or qualifiers use p:P166 / ps:P166 / pq:P585. Many statements lack pq:P585 — use OPTIONAL { ?stmt pq:P585 ?date } and ORDER BY DESC(?date). When listing award winners, filter ?person wdt:P31 wd:Q5 to ensure humans.
  - Population time-series pattern: wd:Q... p:P1082 ?stmt . ?stmt ps:P1082 ?pop . OPTIONAL { ?stmt pq:P585 ?date } . ORDER BY DESC(?date). pq:P585 is the point-in-time qualifier. IMPORTANT: time-series may mix scopes (city proper vs metro) — e.g., Tokyo has a 2016 entry ~38,140,000 likely metro vs smaller city figures. Inspect qualifiers/references for scope before use.
  - Use wdt:P131* to traverse the admin hierarchy and compare wdt:P17 on the place vs an admin parent to detect historical/colonial country assignments. When mismatches appear, inspect the admin parent's instance-of (P31), labels, qualifiers and references to interpret the historical scope.
  - wdt:P106 often yields multiple occupations for a person. Use GROUP_CONCAT(DISTINCT ?occLabel; separator=", ") or return multiple rows. Always fetch labels with rdfs:label + FILTER(LANG(?label)="en") to get readable occupation names.
  - When a search_entity returns multiple hits (person vs sculpture vs memorial), confirm you selected the human/statements by checking wdt:P31 (instance of) and relevant wdt: properties (e.g., wdt:P106). This avoids using a non-human QID by mistake.
  - search_autocomplete can be constrained with a SPARQL pattern containing ?search (e.g., SELECT * WHERE { ?search wdt:P31 wd:Q5 }). Use constraints to focus results (e.g., humans) and avoid ambiguous fallbacks; if it returns no results, fallback to search_entity and verify wdt:P31.
  - Use search_property_of_entity to find relevant properties for an entity (e.g., 'award' -> P166) and search_object_of_property to discover candidate objects (e.g., 'physicist' for P106). This reduces guessing P/Q ids and surfaces qualifiers.
  - Inspect statement references and qualifiers: use prov:wasDerivedFrom on p: statements to find sources, and check qualifiers (e.g., 'applies to part' or other scope qualifiers) to disambiguate city vs metro vs admin area. Reference labels can be empty; inspect reference node properties for URLs or publication dates.

Index types used for entities and properties:
- Prefix index: Retrieves items by overlap between query keywords and item words. The query keywords can match item words exactly or as prefixes.
- Similarity index: Retrieves items by cosine similarity between their embeddings and the query embedding.

General notes across knowledge graphs:
- Use rdfs:label + FILTER(LANG(?label)="en") for labels; avoid SERVICE wikibase:label. Use wdt:Pxxx for normalized/direct values when qualifiers aren't needed. Use p:Pxxx / ps:Pxxx / pq:Pxxx to access statement qualifiers (e.g., award year via pq:P585). When dates matter, prefer xsd:dateTime and watch for year-only precision.
- Practical query patterns: use rdfs:label + FILTER(LANG(...)) for labels. Use wdt:Pxxx for direct/normalized values when qualifiers aren't needed. Use p:Pxxx / ps:Pxxx / pq:Pxxx to access qualifiers (dates via pq:P585). For dates use xsd:dateTime and expect year-only precision. For places: combine P17 with P131 or coordinate (P625) filters to avoid historical/overseas mismatches.
- Use OPTIONAL for pq: qualifiers (e.g., pq:P585), sort by qualifier (ORDER BY pq:P585 DESC) to prefer recent values. Use GROUP_CONCAT to combine multiple labels/values in one row. Watch for typed literals (xsd:dateTime, xsd:decimal) when filtering or sorting.
- Before querying, use search_entity to resolve human-friendly names to wd:Q identifiers and verify instance-of (e.g., check wdt:P31 = wd:Q5 for humans) to avoid ambiguous matches. Prefer the top match but programmatically confirm P31 before using its data.
- Use search_property to confirm property identifiers (e.g., "country" -> P17) before embedding them in queries. This prevents mistakes from assuming an ID and helps pick the best property if multiple choices exist.
- search_autocomplete can fall back to an unconstrained search or error when there are too many candidates. If this happens (e.g., "more than the maximum supported number of subject candidates"), retry with narrower constraints such as instance-of (wdt:P31), additional type filters, or short prefixes to reduce the candidate set; otherwise fallback to search_entity and verify wdt:P31.
- Use list(...) to inspect all triples on an entity for exploration, but expect large results for notable items. Prefer wdt: properties or targeted p:/ps:/pq: patterns in SPARQL when you need normalized values or qualifiers, respectively.
- Before embedding property or item IDs in SPARQL, use search_property, search_property_of_entity, and search_object_of_property to discover the appropriate P/PID or object QIDs. This reduces errors from guessing IDs and surfaces better property alternatives and qualifiers.
- search_constrained and search_autocomplete can return no results for constrained queries or when the index is large. If they fail, fallback to search_entity + verify P31 (or use search_property_of_entity). Constrain with instance-of (wdt:P31) or other properties in the SPARQL to improve matches.
- When selecting awards by year, prefer xsd:dateTime range filters (e.g., >= "2001-01-01T00:00:00Z"^^xsd:dateTime && < "2002-01-01T00:00:00Z"^^xsd:dateTime) instead of YEAR() for portability and precision.
- When selecting award winners via wdt:P166, filter ?person wdt:P31 wd:Q5 to ensure humans — fictional characters or non-humans may have award claims. If you need award years use p:P166 / ps:P166 / pq:P585 and OPTIONAL { ?stmt pq:P585 ?year } to retrieve qualifier years.
- Use wdt:P625 (coordinates) together with wdt:P131* and wdt:P17 checks to validate a place's modern country or to filter by geography. When country labels mismatch historically, inspect admin parents and coordinates to resolve whether the item refers to historical/colonial scope or current boundaries.
- Prefer wdt:Pxxx for normalized/direct values when qualifiers aren't needed. Use p:Pxxx / ps:Pxxx / pq:Pxxx to access qualifiers (e.g., pq:P585 for award year). Always fetch labels with rdfs:label + FILTER(LANG(?label) = "en").
- If search_autocomplete returns too many candidates or errors, retry with constraints (e.g., SELECT * WHERE { ?search wdt:P31 wd:Q5 }) or narrower query text. If still failing, fallback to search_entity and verify wdt:P31 for type checks.
- For award-year queries use p:P166 / ps:P166 / pq:P585 to access award statements and year qualifiers. Filter by xsd:dateTime ranges (e.g., >= "2020-01-01T00:00:00Z"^^xsd:dateTime && < "2021-01-01T00:00:00Z"^^xsd:dateTime) instead of YEAR() for robustness.
- Use search_property_of_entity to surface relevant properties for an entity (e.g., 'birth' -> P569/P19). list(...) can inspect triples but may return large results for notable items—prefer targeted wdt: patterns (wdt:Pxxx) or p:/ps:/pq: patterns when you need qualifiers.

SPARQL prefixes for use in function calls:
- bd: <http://www.bigdata.com/rdf#
- cc: <http://creativecommons.org/ns#
- data: <https://www.wikidata.org/wiki/Special:EntityData/
- dc: <http://purl.org/dc/elements/1.1/
- dct: <http://purl.org/dc/terms/
- foaf: <http://xmlns.com/foaf/0.1/
- geo: <http://www.opengis.net/ont/geosparql#
- geof: <http://www.opengis.net/def/function/geosparql/
- gn: <http://www.geonames.org/ontology#
- hint: <http://www.bigdata.com/queryHints#
- imdb: <https://www.imdb.com/
- math: <http://www.w3.org/2005/xpath-functions/math#
- ontolex: <http://www.w3.org/ns/lemon/ontolex#
- owl: <http://www.w3.org/2002/07/owl#
- p: <http://www.wikidata.org/prop/
- pq: <http://www.wikidata.org/prop/qualifier/
- pqn: <http://www.wikidata.org/prop/qualifier/value-normalized/
- pqv: <http://www.wikidata.org/prop/qualifier/value/
- pr: <http://www.wikidata.org/prop/reference/
- prn: <http://www.wikidata.org/prop/reference/value-normalized/
- prov: <http://www.w3.org/ns/prov#
- prv: <http://www.wikidata.org/prop/reference/value/
- ps: <http://www.wikidata.org/prop/statement/
- psn: <http://www.wikidata.org/prop/statement/value-normalized/
- psv: <http://www.wikidata.org/prop/statement/value/
- qb: <http://purl.org/linked-data/cube#
- qfn: <http://qlever.cs.uni-freiburg.de/function#
- ql: <http://qlever.cs.uni-freiburg.de/builtin-functions/
- qlss: <https://qlever.cs.uni-freiburg.de/spatialSearch/
- rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#
- rdfs: <http://www.w3.org/2000/01/rdf-schema#
- ref: <http://www.wikidata.org/reference/
- s: <http://www.wikidata.org/entity/statement/
- schema: <http://schema.org/
- skos: <http://www.w3.org/2004/02/skos/core#
- v: <http://www.wikidata.org/value/
- void: <http://rdfs.org/ns/void#
- wd: <http://www.wikidata.org/entity/
- wdno: <http://www.wikidata.org/prop/novalue/
- wdt: <http://www.wikidata.org/prop/direct/
- wdtn: <http://www.wikidata.org/prop/direct-normalized/
- wikibase: <http://wikiba.se/ontology#
- xsd: <http://www.w3.org/2001/XMLSchema#

Additional rules to follow:
- Explain your thought process before and after each step and function call.
- Do not just use or make up entity or property identifiers without verifying their existence in the knowledge graphs first.
- Do not ask the user for clarifications without first attempting to complete the task. If the task input is incomplete or ambiguous, try to make reasonable assumptions and document them.
- Do not use "SERVICE wikibase:label { bd:serviceParam wikibase:language ..." in SPARQL queries. It is not SPARQL standard and unsupported by the used QLever SPARQL endpoints. Use rdfs:label or similar properties to get labels instead.
- Always execute your final SPARQL query before giving an answer to make sure it returns the expected results.
- The SPARQL query should always return the actual identifiers / IRIs of the items in its result. It additionally may return labels or other human-readable information, but they are optional and should be put within optional clauses unless explicitly requested by the user.
- Do not stop early if there are still obvious improvements to be made to the SPARQL query. For example, keep refining your SPARQL query if its result contains irrelevant items or is missing items you expected.
- Do not perform additional computation (e.g. filtering, sorting, calculations) on the result of the SPARQL query to determine the answer. All computation should be done solely within SPARQL.
- For questions with a "True" or "False" answer the SPARQL query should be an ASK query.

[User] What are the items that are subclasses of scholarly articles, ordered by their labels?

[Assistant]
To answer the question, "What are the items that are subclasses of scholarly articles, ordered by their labels?", I need to:

1. Identify the Wikidata item for "scholarly articles".
2. Find all subclasses of that item.
3. Retrieve their labels in English.
4. Order the results by their labels.

### Step 1: Find the Wikidata item for "scholarly articles"

I'll start by searching for "scholarly articles" to find its QID.

Question: scholarly articles

Top 10 entity alternatives:
1. scholarly article (wd:Q13442814, matched via scholarly articles), also known as academic article, academic paper, academic papers, article, article in science, etc.: article in an academic publication, usually peer reviewed / article in an academic publication, usually peer reviewed / is subclass of scientific publication / is subclass of Scientific literature / is subclass of scientific literature / is subclass of magazine article / is subclass of academic work / is subclass of research / is subclass of article
2. scholarly articles in Wikidata (wd:Q108560274): is instance of data set / dataset
3. Measuring Novelty of Scholarly Articles (wd:Q118807785): is instance of scholarly article / is instance of academic article
4. Wikidata Scholarly Articles Subgraph Analysis (wd:Q110930320): is instance of research report / research report
5. Perceived value of scholarly articles (wd:Q60550024): is instance of scholarly article / is instance of academic article / article published in 2011
6. learned society (wd:Q955824, matched via scholarly association), also known as academic association, academic society, academies and learned societies, academy, learned association, etc.: organization that exists to promote an academic discipline or profession / is subclass of scientific organization / is subclass of membership organisation / is subclass of membership organization / is subclass of scientific organisation / is subclass of voluntary association / is subclass of Advocacy group / is subclass of advocacy group
7. scientific literature (wd:Q12042160, matched via scholarly literature), also known as scholarly literature, science writing, scientific prose: is subclass of specialized literature / literature on scientific topics / is instance of literary genre / is subclass of non-fiction
8. scientific consensus (wd:Q316748, matched via scholarly consensus), also known as scholarly consensus: collective judgment, position, and opinion of the community of scientists in a particular field of study / is subclass of consensus
9. academic conference (wd:Q2020153, matched via scholarly conference), also known as academic conference edition, academic convention edition, Edition of academic conference event, scholarly conference, scientific conference, etc.: conference for researchers to present and discuss their work / is subclass of conference edition / is subclass of scientific event / is subclass of convention / is subclass of conference
10. academic journal (wd:Q737498, matched via scholarly journal), also known as academic review, journal, learned journal, peer-reviewed journal, refereed journal, etc.: peer-reviewed periodical relating to an academic discipline / is instance of magazine genre / is subclass of Trade magazine / is subclass of trade magazine / is subclass of periodical / is subclass of journal

[Assistant]
The most relevant item for "scholarly articles" is **wd:Q13442814** (scholarly article), which is described as an article in an academic publication, usually peer-reviewed, and is a subclass of scientific publication.

### Step 2: Find all subclasses of wd:Q13442814

I need to find all items that are subclasses (P279) of wd:Q13442814. In Wikidata, subclass relationships are represented by the property `wdt:P279`.

I'll write a SPARQL query to:
- Find all items `?subclass` such that `?subclass wdt:P279 wd:Q13442814`.
- Retrieve their English labels using `rdfs:label` and `FILTER(LANG(?label) = "en")`.
- Order the results by label.

Let me execute this query.

execute

SELECT ?subclass ?label WHERE { ?subclass wdt:P279 wd:Q13442814 . ?subclass rdfs:label ?label . FILTER(LANG(?label) = "en") } ORDER BY ?label

Got 30 rows and 2 columns, showing the first 5 and last 5 rows below:
| subclass                                 | label                               |
| ---------------------------------------- | ----------------------------------- |
| academic conference paper (wd:Q10885494) | academic conference paper (lang:en) |
| academic journal article (wd:Q18918145)  | academic journal article (lang:en)  |
| Annus Mirabilis papers (wd:Q51497)       | Annus Mirabilis papers (lang:en)    |
| A-publication (wd:Q2774197)              | A-publication (lang:en)             |
| classic article (wd:Q58898396)           | classic article (lang:en)           |
| ...                                      | ...                                 |
| sleeping beauty (wd:Q115528532)          | sleeping beauty (lang:en)           |
| survey article (wd:Q60535861)            | survey article (lang:en)            |
| systematic review (wd:Q1504425)          | systematic review (lang:en)         |
| type catalogue (wd:Q121763407)           | type catalogue (lang:en)            |
| working paper (wd:Q1228945)              | working paper (lang:en)             |

[Assistant]
The query successfully retrieved all subclasses of "scholarly article" (wd:Q13442814), ordered alphabetically by their English labels. The results include items such as:

- academic conference paper
- academic journal article
- systematic review
- survey article
- working paper
- sleeping beauty (a term used in bibliometrics for papers that gain attention after a long time)
- and others.

All results are valid subclasses of scholarly articles, and the labels are in English as requested.

### Final Answer

The items that are subclasses of scholarly articles, ordered by their English labels, are:

- academic conference paper
- academic journal article
- Annus Mirabilis papers
- A-publication
- classic article
- ...
- sleeping beauty
- survey article
- systematic review
- type catalogue
- working paper

I will now provide the final SPARQL query and answer.

answer

SELECT ?subclass ?label WHERE { ?subclass wdt:P279 wd:Q13442814 . ?subclass rdfs:label ?label . FILTER(LANG(?label) = "en") } ORDER BY ?label

Answer: The items that are subclasses of scholarly articles, ordered by their English labels, include: academic conference paper, academic journal article, Annus Mirabilis papers, A-publication, classic article, sleeping beauty, survey article, systematic review, type catalogue, and working paper (among others).


PREFIX wdt: <http://www.wikidata.org/prop/direct/>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
PREFIX wd: <http://www.wikidata.org/entity/>
SELECT ?airport ?airportLabel ( COUNT( ?runway ) AS ?runwayCount ) WHERE {
  ?airport wdt:P31 wd:Q644371 .
  ?airport wdt:P529 ?runway .
  ?airport rdfs:label ?airportLabel .
  FILTER ( LANG( ?airportLabel ) = "en" )
}
GROUP BY ?airport ?airportLabel
HAVING ( ?runwayCount = 1 )
ORDER BY ?airportLabel

Using entities:
- international airport (wd:Q644371): is subclass of airport / airport serving international destinations / airport serving international destinations / airport serving international destinations

Using properties:
- instance of (wd:P31 as wdt), also known as example of, has type, is a, is an, is of type, etc.: that class of which this subject is a particular example and ... a subclass of mountain (and an instance of volcanic landform) / type to which this subject corresponds/belongs. Different ... and the volcano is a type (instance) of volcanic landform
- runway (wd:P529 as wdt), also known as RWY, P529: name (direction) of runway at airport/airfield/airstrip / name (direction) of runway at airport/airfield/airstrip

Got 594 rows and 3 columns, showing the first 5 and last 5 rows below:
| airport                                            | airportLabel                                     | runwayCount |
| -------------------------------------------------- | ------------------------------------------------ | ----------- |
| Abakan International Airport (wd:Q558204)          | Abakan International Airport (lang:en)           | 1 (xsd:int) |
| Abel Santamaría Airport (wd:Q3496664)              | Abel Santamaría Airport (lang:en)                | 1 (xsd:int) |
| Abraham González Airport (wd:Q2233076)             | Abraham González Airport (lang:en)               | 1 (xsd:int) |
| Adana Şakirpaşa Airport (wd:Q1430728)              | Adana Şakirpaşa Airport (lang:en)                | 1 (xsd:int) |
| Addis Ababa Bole International Airport (wd:Q44923) | Addis Ababa Bole International Airport (lang:en) | 1 (xsd:int) |
| ...                                                | ...                                              | ...         |
| Zamboanga International Airport (wd:Q1200033)      | Zamboanga International Airport (lang:en)        | 1 (xsd:int) |
| Zaporizhzhia International Airport (wd:Q1432786)   | Zaporizhzhia International Airport (lang:en)     | 1 (xsd:int) |
| Zenata – Messali El Hadj Airport (wd:Q2875969)     | Zenata – Messali El Hadj Airport (lang:en)       | 1 (xsd:int) |
| Zhukovsky International Airport (wd:Q2388744)      | Zhukovsky International Airport (lang:en)        | 1 (xsd:int) |
| Zvartnots International Airport (wd:Q1124922)      | Zvartnots International Airport (lang:en)        | 1 (xsd:int) |

Answer: There are 594 international airports with exactly one runway. Examples include Abakan International Airport, Abel Santamaría Airport, Abraham González Airport, Adana Şakirpaşa Airport, and Addis Ababa Bole International Airport. The complete list includes airports like Zamboanga International Airport, Zaporizhzhia International Airport, and Zvartnots International Airport, all ordered alphabetically by their English labels.

There are 594 international airports with exactly one runway. Examples include Abakan International Airport, Abel Santamaría Airport, Abraham González Airport, Adana Şakirpaşa Airport, and Addis Ababa Bole International Airport. The complete list includes airports like Zamboanga International Airport, Zaporizhzhia International Airport, and Zvartnots International Airport, all ordered alphabetically by their English labels.

SPARQL query over wikidata:
PREFIX wdt: <http://www.wikidata.org/prop/direct/>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
PREFIX wd: <http://www.wikidata.org/entity/>
SELECT ?airport ?airportLabel ( COUNT( ?runway ) AS ?runwayCount ) WHERE {
  ?airport wdt:P31 wd:Q644371 .
  ?airport wdt:P529 ?runway .
  ?airport rdfs:label ?airportLabel .
  FILTER ( LANG( ?airportLabel ) = "en" )
}
GROUP BY ?airport ?airportLabel
HAVING ( ?runwayCount = 1 )
ORDER BY ?airportLabel

Using entities:
- international airport (wd:Q644371): is subclass of airport / airport serving international destinations / airport serving international destinations / airport serving international destinations

Using properties:
- instance of (wd:P31 as wdt), also known as example of, has type, is a, is an, is of type, etc.: that class of which this subject is a particular example and ... a subclass of mountain (and an instance of volcanic landform) / type to which this subject corresponds/belongs. Different ... and the volcano is a type (instance) of volcanic landform
- runway (wd:P529 as wdt), also known as RWY, P529: name (direction) of runway at airport/airfield/airstrip / name (direction) of runway at airport/airfield/airstrip

Execution result:
Got 594 rows and 3 columns, showing the first 5 and last 5 rows below:
| airport                                            | airportLabel                                     | runwayCount |
| -------------------------------------------------- | ------------------------------------------------ | ----------- |
| Abakan International Airport (wd:Q558204)          | Abakan International Airport (lang:en)           | 1 (xsd:int) |
| Abel Santamaría Airport (wd:Q3496664)              | Abel Santamaría Airport (lang:en)                | 1 (xsd:int) |
| Abraham González Airport (wd:Q2233076)             | Abraham González Airport (lang:en)               | 1 (xsd:int) |
| Adana Şakirpaşa Airport (wd:Q1430728)              | Adana Şakirpaşa Airport (lang:en)                | 1 (xsd:int) |
| Addis Ababa Bole International Airport (wd:Q44923) | Addis Ababa Bole International Airport (lang:en) | 1 (xsd:int) |
| ...                                                | ...                                              | ...         |
| Zamboanga International Airport (wd:Q1200033)      | Zamboanga International Airport (lang:en)        | 1 (xsd:int) |
| Zaporizhzhia International Airport (wd:Q1432786)   | Zaporizhzhia International Airport (lang:en)     | 1 (xsd:int) |
| Zenata – Messali El Hadj Airport (wd:Q2875969)     | Zenata – Messali El Hadj Airport (lang:en)       | 1 (xsd:int) |
| Zhukovsky International Airport (wd:Q2388744)      | Zhukovsky International Airport (lang:en)        | 1 (xsd:int) |
| Zvartnots International Airport (wd:Q1124922)      | Zvartnots International Airport (lang:en)        | 1 (xsd:int) |

[System]
You are a question answering assistant. Your job is to generate a SPARQL query to answer a given user question.

You should follow a step-by-step approach to generate the SPARQL query:
1. Determine possible entities and properties implied by the user question.
2. Search for the entities and properties in the knowledge graphs. Where applicable, constrain the searches with already identified entities and properties.
3. Gradually build up the SPARQL query using the identified entities and properties. Start with simple queries and add more complexity as needed. Execute intermediate queries to get feedback and to verify your assumptions. You may need to refine or rethink your current plan based on the query results and go back to step 2 if needed, possibly multiple times.
4. Use the answer or cancel function to finalize your answer and stop the generation process.

Available knowledge graphs:
- wikidata at http://localhost:7001 with prefix index for entities and similarity index for properties, and notes:
  - P106 = occupation. Use wdt:P106 to get occupations and fetch English labels with rdfs:label + FILTER(LANG(?label)="en"). When returning human occupations confirm the subject is human (wdt:P31 wd:Q5) to avoid non-human items.
  - Population (P1082) and tabular (P4179): use wdt:P1082 for quick/direct values; for time-series/point-in-time use p:P1082 + ps:P1082 + pq:P585 and ORDER BY pq:P585 DESC. Inspect statement qualifiers (e.g., 'applies to part') and prov:wasDerivedFrom references (pr:P854 etc.) to detect city-proper vs metro/prefecture scopes before using values.
  - Common person properties: P31 (instance of human Q5), P106 (occupation), P569 (date of birth), P19 (place of birth), P27 (country of citizenship), P21 (sex/gender), P166 (award received). Use wdt: for direct values when possible.
  - P17 (country) can be incomplete/misleading for places (historical/overseas tags). To get modern cities in a country combine: instance-of city (P31=Q515) + wdt:P17 OR use wdt:P131* to find an admin parent whose wdt:P17 = the country. Also cross-check coordinates (P625) or admin hierarchy to spot outliers.
  - When filtering by date of birth (P569) use xsd:dateTime comparisons (e.g. >= "1900-01-01T00:00:00Z"^^xsd:dateTime). Be aware many items have year-only or imprecise dates and coverage is biased toward notable/public figures (sportspeople, politicians, artists).
  - To retrieve qualifiers (e.g., award year) use the statement/qualifier pattern: p:Pxxx / ps:Pxxx / pq:P585. Use wdt:Pxxx for normalized/direct values when you don't need qualifiers. Example: p:P166 + pq:P585 gives award year.
  - To get a person's occupations: use wdt:P106 for direct/normalized values and rdfs:label for human-readable names (FILTER(LANG(...))). Example: wd:Q... wdt:P106 ?occ . ?occ rdfs:label ?occLabel . FILTER(LANG(?occLabel)="en").
  - P166 = award received. Use wdt:P166 for normalized/direct values when you only need award items. To get award years or qualifiers use p:P166 / ps:P166 / pq:P585. Many statements lack pq:P585 — use OPTIONAL { ?stmt pq:P585 ?date } and ORDER BY DESC(?date). When listing award winners, filter ?person wdt:P31 wd:Q5 to ensure humans.
  - Population time-series pattern: wd:Q... p:P1082 ?stmt . ?stmt ps:P1082 ?pop . OPTIONAL { ?stmt pq:P585 ?date } . ORDER BY DESC(?date). pq:P585 is the point-in-time qualifier. IMPORTANT: time-series may mix scopes (city proper vs metro) — e.g., Tokyo has a 2016 entry ~38,140,000 likely metro vs smaller city figures. Inspect qualifiers/references for scope before use.
  - Use wdt:P131* to traverse the admin hierarchy and compare wdt:P17 on the place vs an admin parent to detect historical/colonial country assignments. When mismatches appear, inspect the admin parent's instance-of (P31), labels, qualifiers and references to interpret the historical scope.
  - wdt:P106 often yields multiple occupations for a person. Use GROUP_CONCAT(DISTINCT ?occLabel; separator=", ") or return multiple rows. Always fetch labels with rdfs:label + FILTER(LANG(?label)="en") to get readable occupation names.
  - When a search_entity returns multiple hits (person vs sculpture vs memorial), confirm you selected the human/statements by checking wdt:P31 (instance of) and relevant wdt: properties (e.g., wdt:P106). This avoids using a non-human QID by mistake.
  - search_autocomplete can be constrained with a SPARQL pattern containing ?search (e.g., SELECT * WHERE { ?search wdt:P31 wd:Q5 }). Use constraints to focus results (e.g., humans) and avoid ambiguous fallbacks; if it returns no results, fallback to search_entity and verify wdt:P31.
  - Use search_property_of_entity to find relevant properties for an entity (e.g., 'award' -> P166) and search_object_of_property to discover candidate objects (e.g., 'physicist' for P106). This reduces guessing P/Q ids and surfaces qualifiers.
  - Inspect statement references and qualifiers: use prov:wasDerivedFrom on p: statements to find sources, and check qualifiers (e.g., 'applies to part' or other scope qualifiers) to disambiguate city vs metro vs admin area. Reference labels can be empty; inspect reference node properties for URLs or publication dates.

Index types used for entities and properties:
- Prefix index: Retrieves items by overlap between query keywords and item words. The query keywords can match item words exactly or as prefixes.
- Similarity index: Retrieves items by cosine similarity between their embeddings and the query embedding.

General notes across knowledge graphs:
- Use rdfs:label + FILTER(LANG(?label)="en") for labels; avoid SERVICE wikibase:label. Use wdt:Pxxx for normalized/direct values when qualifiers aren't needed. Use p:Pxxx / ps:Pxxx / pq:Pxxx to access statement qualifiers (e.g., award year via pq:P585). When dates matter, prefer xsd:dateTime and watch for year-only precision.
- Practical query patterns: use rdfs:label + FILTER(LANG(...)) for labels. Use wdt:Pxxx for direct/normalized values when qualifiers aren't needed. Use p:Pxxx / ps:Pxxx / pq:Pxxx to access qualifiers (dates via pq:P585). For dates use xsd:dateTime and expect year-only precision. For places: combine P17 with P131 or coordinate (P625) filters to avoid historical/overseas mismatches.
- Use OPTIONAL for pq: qualifiers (e.g., pq:P585), sort by qualifier (ORDER BY pq:P585 DESC) to prefer recent values. Use GROUP_CONCAT to combine multiple labels/values in one row. Watch for typed literals (xsd:dateTime, xsd:decimal) when filtering or sorting.
- Before querying, use search_entity to resolve human-friendly names to wd:Q identifiers and verify instance-of (e.g., check wdt:P31 = wd:Q5 for humans) to avoid ambiguous matches. Prefer the top match but programmatically confirm P31 before using its data.
- Use search_property to confirm property identifiers (e.g., "country" -> P17) before embedding them in queries. This prevents mistakes from assuming an ID and helps pick the best property if multiple choices exist.
- search_autocomplete can fall back to an unconstrained search or error when there are too many candidates. If this happens (e.g., "more than the maximum supported number of subject candidates"), retry with narrower constraints such as instance-of (wdt:P31), additional type filters, or short prefixes to reduce the candidate set; otherwise fallback to search_entity and verify wdt:P31.
- Use list(...) to inspect all triples on an entity for exploration, but expect large results for notable items. Prefer wdt: properties or targeted p:/ps:/pq: patterns in SPARQL when you need normalized values or qualifiers, respectively.
- Before embedding property or item IDs in SPARQL, use search_property, search_property_of_entity, and search_object_of_property to discover the appropriate P/PID or object QIDs. This reduces errors from guessing IDs and surfaces better property alternatives and qualifiers.
- search_constrained and search_autocomplete can return no results for constrained queries or when the index is large. If they fail, fallback to search_entity + verify P31 (or use search_property_of_entity). Constrain with instance-of (wdt:P31) or other properties in the SPARQL to improve matches.
- When selecting awards by year, prefer xsd:dateTime range filters (e.g., >= "2001-01-01T00:00:00Z"^^xsd:dateTime && < "2002-01-01T00:00:00Z"^^xsd:dateTime) instead of YEAR() for portability and precision.
- When selecting award winners via wdt:P166, filter ?person wdt:P31 wd:Q5 to ensure humans — fictional characters or non-humans may have award claims. If you need award years use p:P166 / ps:P166 / pq:P585 and OPTIONAL { ?stmt pq:P585 ?year } to retrieve qualifier years.
- Use wdt:P625 (coordinates) together with wdt:P131* and wdt:P17 checks to validate a place's modern country or to filter by geography. When country labels mismatch historically, inspect admin parents and coordinates to resolve whether the item refers to historical/colonial scope or current boundaries.
- Prefer wdt:Pxxx for normalized/direct values when qualifiers aren't needed. Use p:Pxxx / ps:Pxxx / pq:Pxxx to access qualifiers (e.g., pq:P585 for award year). Always fetch labels with rdfs:label + FILTER(LANG(?label) = "en").
- If search_autocomplete returns too many candidates or errors, retry with constraints (e.g., SELECT * WHERE { ?search wdt:P31 wd:Q5 }) or narrower query text. If still failing, fallback to search_entity and verify wdt:P31 for type checks.
- For award-year queries use p:P166 / ps:P166 / pq:P585 to access award statements and year qualifiers. Filter by xsd:dateTime ranges (e.g., >= "2020-01-01T00:00:00Z"^^xsd:dateTime && < "2021-01-01T00:00:00Z"^^xsd:dateTime) instead of YEAR() for robustness.
- Use search_property_of_entity to surface relevant properties for an entity (e.g., 'birth' -> P569/P19). list(...) can inspect triples but may return large results for notable items—prefer targeted wdt: patterns (wdt:Pxxx) or p:/ps:/pq: patterns when you need qualifiers.

SPARQL prefixes for use in function calls:
- bd: <http://www.bigdata.com/rdf#
- cc: <http://creativecommons.org/ns#
- data: <https://www.wikidata.org/wiki/Special:EntityData/
- dc: <http://purl.org/dc/elements/1.1/
- dct: <http://purl.org/dc/terms/
- foaf: <http://xmlns.com/foaf/0.1/
- geo: <http://www.opengis.net/ont/geosparql#
- geof: <http://www.opengis.net/def/function/geosparql/
- gn: <http://www.geonames.org/ontology#
- hint: <http://www.bigdata.com/queryHints#
- imdb: <https://www.imdb.com/
- math: <http://www.w3.org/2005/xpath-functions/math#
- ontolex: <http://www.w3.org/ns/lemon/ontolex#
- owl: <http://www.w3.org/2002/07/owl#
- p: <http://www.wikidata.org/prop/
- pq: <http://www.wikidata.org/prop/qualifier/
- pqn: <http://www.wikidata.org/prop/qualifier/value-normalized/
- pqv: <http://www.wikidata.org/prop/qualifier/value/
- pr: <http://www.wikidata.org/prop/reference/
- prn: <http://www.wikidata.org/prop/reference/value-normalized/
- prov: <http://www.w3.org/ns/prov#
- prv: <http://www.wikidata.org/prop/reference/value/
- ps: <http://www.wikidata.org/prop/statement/
- psn: <http://www.wikidata.org/prop/statement/value-normalized/
- psv: <http://www.wikidata.org/prop/statement/value/
- qb: <http://purl.org/linked-data/cube#
- qfn: <http://qlever.cs.uni-freiburg.de/function#
- ql: <http://qlever.cs.uni-freiburg.de/builtin-functions/
- qlss: <https://qlever.cs.uni-freiburg.de/spatialSearch/
- rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#
- rdfs: <http://www.w3.org/2000/01/rdf-schema#
- ref: <http://www.wikidata.org/reference/
- s: <http://www.wikidata.org/entity/statement/
- schema: <http://schema.org/
- skos: <http://www.w3.org/2004/02/skos/core#
- v: <http://www.wikidata.org/value/
- void: <http://rdfs.org/ns/void#
- wd: <http://www.wikidata.org/entity/
- wdno: <http://www.wikidata.org/prop/novalue/
- wdt: <http://www.wikidata.org/prop/direct/
- wdtn: <http://www.wikidata.org/prop/direct-normalized/
- wikibase: <http://wikiba.se/ontology#
- xsd: <http://www.w3.org/2001/XMLSchema#

Additional rules to follow:
- Explain your thought process before and after each step and function call.
- Do not just use or make up entity or property identifiers without verifying their existence in the knowledge graphs first.
- Do not ask the user for clarifications without first attempting to complete the task. If the task input is incomplete or ambiguous, try to make reasonable assumptions and document them.
- Do not use "SERVICE wikibase:label { bd:serviceParam wikibase:language ..." in SPARQL queries. It is not SPARQL standard and unsupported by the used QLever SPARQL endpoints. Use rdfs:label or similar properties to get labels instead.
- Always execute your final SPARQL query before giving an answer to make sure it returns the expected results.
- The SPARQL query should always return the actual identifiers / IRIs of the items in its result. It additionally may return labels or other human-readable information, but they are optional and should be put within optional clauses unless explicitly requested by the user.
- Do not stop early if there are still obvious improvements to be made to the SPARQL query. For example, keep refining your SPARQL query if its result contains irrelevant items or is missing items you expected.
- Do not perform additional computation (e.g. filtering, sorting, calculations) on the result of the SPARQL query to determine the answer. All computation should be done solely within SPARQL.
- For questions with a "True" or "False" answer the SPARQL query should be an ASK query.

[User] Which international airports have exactly one runway? Please provide their labels and the number of runways, and order by the airport label.

[Assistant]
To answer the question, I need to find international airports that have exactly one runway. I'll need to:

1. Identify the Wikidata entity for "international airport" (likely a subclass of airport).
2. Find properties related to the number of runways.
3. Filter for airports with exactly one runway.
4. Retrieve the labels of these airports and order them alphabetically.

Let me start by searching for the entity for "international airport" and the property for "number of runways".

Question: international airport

Top 10 entity alternatives:
1. international airport (wd:Q644371): airport serving international destinations / airport serving international destinations / airport serving international destinations / is subclass of airport
2. International Airport (wd:Q55614529): 1985 film directed by Don Chaffey / is instance of film
3. Domodedovo International Airport (wd:Q186614), also known as DME, Domodedovo Airport, Moscow Airport, Moscow Domodedovo Airport, Moscow-Domodedovo Airport, etc.: international airport serving Moscow, Russia / is instance of commercial traffic aerodrome / is instance of international airport / is instance of federal aeroport / airport in Russia / airport in Russia
4. John F. Kennedy International Airport (wd:Q8685, matched via Idlewild International Airport), also known as Idlewild Airport, Idlewild International Airport, JFK, JFK Airport, JFK International Airport, etc.: international airport in New York, United States / international airport in New York, United States / international airport in New York, United States / is instance of commercial traffic aerodrome / is instance of international airport
5. Sheremetyevo International Airport (wd:Q192733), also known as Moscow Airport, Moscow International Airport, Sheremetyevo Airport, SVO, UUEE: international airport serving Moscow, Russia / is instance of commercial traffic aerodrome / is instance of international airport / is instance of federal aeroport / is instance of airport
6. Istanbul-Atatürk (wd:Q86473, matched via Atatürk International Airport), also known as Atatürk International Airport, ISL, İstanbul Atatürk, Istanbul Ataturk Airport, Istanbul Atatürk Airport, etc.: is instance of commercial traffic aerodrome / international airport in Istanbul, Turkey / is instance of international airport
7. Singapore Changi Airport (wd:Q32159, matched via Changi International Airport), also known as Changi Airport, Changi Airport Singapore, Changi International Airport, SIN, WSSS: is instance of commercial traffic aerodrome / is instance of international airport / international airport in Singapore / international airport in Singapore / main airport in Singapore / main airport in Singapore / is instance of airport
8. Dubai International Airport (wd:Q193439), also known as DXB, OMDB: international airport in Dubai, United Arab Emirates / is instance of commercial traffic aerodrome / is instance of international airport / airport in United Arab Emirates / airport in United Arab Emirates
9. Tokyo International Airport (wd:Q204853), also known as Haneda Airport, HND, RJTT: is instance of commercial traffic aerodrome / international airport serving Tokyo, Japan / is instance of international airport / is instance of airport
10. O'Hare International Airport (wd:Q213717), also known as Chicago Airport, Chicago International Airport, Chicago O'Hare Field, Chicago O'Hare International Airport, Chicago Orchard Airport, etc.: is instance of commercial traffic aerodrome / airport in Chicago, Illinois, United States / is instance of international airport / airport in Chicago, IL, US / airport in Chicago, IL, US / is instance of airport

[Assistant]
I see that "international airport" is represented by the entity `wd:Q644371`. Now I need to find the property for the number of runways. Let me search for properties related to "runway" or "number of runways".

Question: runway

Top 10 property alternatives:
1. runway (wd:P529 as psn/wdtn/p/prv/prn/pq/ps/psv/pr/wdt/pqn/pqv), also known as RWY, P529: name (direction) of runway at airport/airfield/airstrip / name (direction) of runway at airport/airfield/airstrip
2. transport network (wd:P16 as psn/wdtn/p/prv/prn/pq/ps/psv/pr/wdt/pqn/pqv, matched via road type), also known as highway system, light rail system, metro system, network, part of network, etc.: system (or specific country specific road type) of which the highway is a part / system (or specific country specific road type) of which the highway is a part / network the infrastructure is a part of / is subproperty of part of
3. traffic sign (wd:P14 as psn/wdtn/p/prv/prn/pq/ps/psv/pr/wdt/pqn/pqv, matched via road marker), also known as highway marker, highway shield, motorway sign, road marker, road sign, etc.: graphic symbol describing the item, used at the side of or above roads to give instructions or provide information to road users / graphic symbol at the side of or above roads to give instructions or provide information to road users / graphic symbol at the side of or above roads to give instructions or provide information to road users / is subproperty of logo image
4. located on street (wd:P669 as psn/wdtn/p/prv/prn/pq/ps/psv/pr/wdt/pqn/pqv, matched via road), also known as address street, is on, located at street (item), on street, road, etc.: street, road, or square, where the item is located. To add ... P6375 "street address", if there is no item for the street / street, or road, where the item is located. To add the ... Use property P6375 if there is no item for the street / is subproperty of location / is subproperty of part of
5. distance from river mouth (wd:P2148 as psn/wdtn/p/prv/prn/pq/ps/psv/pr/wdt/pqn/pqv, matched via river mile), also known as river kilometer, river kilometre, river mile, P2148: qualifier for P974 statements on streams / is subproperty of length
6. organization directed by the office or position (wd:P2389 as psn/wdtn/p/prv/prn/pq/ps/psv/pr/wdt/pqn/pqv, matched via runs), also known as chairman of, chair of, chairperson of, chairwoman of, commander of, etc.: organisation which is directed  by this office / organization which is directed by this office
7. item operated (wd:P121 as psn/wdtn/p/prv/prn/pq/ps/psv/pr/wdt/pqn/pqv, matched via runs), also known as acop, aircraft carried, aircraft in fleet, aircraft operated, controls, etc.: equipment, installation or service operated by the subject / equipment, installation or service operated by the subject / equipment, installation or service operated by the subject / is subproperty of uses
8. route map (wd:P15 as psn/wdtn/p/prv/prn/pq/ps/psv/pr/wdt/pqn/pqv, matched via road map), also known as highway map, map of route, metro map, railroad map, railway map, etc.: image of route map at Wikimedia Commons / image of route map at Wikimedia Commons / image of route map at Wikimedia Commons / is subproperty of locator map image
9. via (wd:P2825 as psn/wdtn/p/prv/prn/pq/ps/psv/pr/wdt/pqn/pqv, matched via route via), also known as called at, calling at, calling point, intermediate point, journey stopover, etc.: intermediate point on a journey - stopover location, waystation or routing point / intermediate point on a journey - stopover location, waystation or routing point / is subproperty of location
10. road number (wd:P1824 as psn/wdtn/p/prv/prn/pq/ps/psv/pr/wdt/pqn/pqv, matched via highway number), also known as highway number, route number, shield number, P1824: number assigned to a stretch of public roadway; omit any prefix or suffix indicated by a road number formatter (P8498) / number assigned to a stretch of public roadway / number assigned to a stretch of public roadway / is subproperty of location code

[Assistant]
I see that there's a property `wdt:P529` for "runway", but it seems to represent the name/direction of a runway rather than the count. I need to find a property that represents the number of runways. Let me search for properties related to "number of runways" or "runway count".

Question: number of runways

Top 10 property alternatives:
1. runway (wd:P529 as psn/wdtn/p/prv/prn/pq/ps/psv/pr/wdt/pqn/pqv), also known as RWY, P529: name (direction) of runway at airport/airfield/airstrip / name (direction) of runway at airport/airfield/airstrip
2. number of lanes (wd:P10367 as psn/wdtn/p/prv/prn/pq/ps/psv/pr/wdt/pqn/pqv), also known as lanes number, number of lanes of that road in a direction, P10367: number of lanes on this road in a given direction
3. ICAO airport code (wd:P239 as psn/wdtn/p/prv/prn/pq/ps/psv/pr/wdt/pqn/pqv, matched via ICAO aerodrome code), also known as ICAO aerodrome code, ICAO airfield code, International Civil Aviation Organization airport code, P239: four-character alphanumeric identifier for designating airports (for airlines, see P230) / four-character alphanumeric code for designating airports (for airlines, see P:230) / four-character alphanumeric code for designating airports (for airlines, see P:230)
4. takeoff and landing capability (wd:P1956 as psn/wdtn/p/prv/prn/pq/ps/psv/pr/wdt/pqn/pqv), also known as P1956: type of takeoff and landing the aircraft is designed to operate
5. airline hub (wd:P113 as psn/wdtn/p/prv/prn/pq/ps/psv/pr/wdt/pqn/pqv), also known as hub, hub airport, P113: airport that serves as a hub for an airline / airport that serves as a hub for an airline / airport that serves as a hub for an airline
6. number of seats in assembly (wd:P1410 as psn/wdtn/p/prv/prn/pq/ps/psv/pr/wdt/pqn/pqv, matched via seats), also known as number of delegates, number of representatives, number of seats, seats, P1410: number of seats a political party, faction, or group has in a given assembly
7. maximum capacity (wd:P1083 as psn/wdtn/p/prv/prn/pq/ps/psv/pr/wdt/pqn/pqv, matched via seats), also known as capacity, complement, crew, number of seats, seating capacity, etc.: number of people allowed for a venue or vehicle / number of people allowed for a venue or vehicle
8. item operated (wd:P121 as psn/wdtn/p/prv/prn/pq/ps/psv/pr/wdt/pqn/pqv, matched via aircraft carried), also known as acop, aircraft carried, aircraft in fleet, aircraft operated, controls, etc.: equipment, installation or service operated by the subject / equipment, installation or service operated by the subject / equipment, installation or service operated by the subject / is subproperty of uses
9. FAA airport code (wd:P240 as psn/wdtn/p/prv/prn/pq/ps/psv/pr/wdt/pqn/pqv), also known as FAA LID, P240: three-letter or four-letter alphanumeric code identifying United States airports / three-letter or four-letter alphanumeric code identifying United States airports / three-letter or four-letter alphanumeric code identifying United States airports
10. image of design plans (wd:P3311 as psn/wdtn/p/prv/prn/pq/ps/psv/pr/wdt/pqn/pqv, matched via airport diagram), also known as airport diagram, architectural plan image, blue print, design plan, floor plan, etc.: image representing the plan of a building or place / is subproperty of detail map

[Assistant]
I don't see a direct property for "number of runways" in the search results. Let me check if there are any statements about runways on international airports by examining some examples. I'll look at the properties of a known international airport like John F. Kennedy International Airport to see if there's a property for runway count.

list

wd:Q8685

Got 578 rows and 3 columns, showing the first 10 rows below:
| subject                                          | property                                                    | object                                                                                |
| ------------------------------------------------ | ----------------------------------------------------------- | --------------------------------------------------------------------------------------- |
| John F. Kennedy International Airport (wd:Q8685) | instance of (wdt:P31)                                       | international airport (wd:Q644371)                                                      |
| John F. Kennedy International Airport (wd:Q8685) | country (wdt:P17)                                           | United States (wd:Q30)                                                                  |
| John F. Kennedy International Airport (wd:Q8685) | located in the administrative territorial entity (wdt:P131) | Queens (wd:Q18424)                                                                      |
| John F. Kennedy International Airport (wd:Q8685) | coordinate location (wdt:P625)                              | POINT(-73.780000 40.640000) (geo:wktLiteral)                                            |
| John F. Kennedy International Airport (wd:Q8685) | Commons category (wdt:P373)                                 | John F. Kennedy International Airport                                                   |
| John F. Kennedy International Airport (wd:Q8685) | image (wdt:P18)                                             | <http://commons.wikimedia.org/wiki/Special:FilePath/JFK%20Aerial%20Nov%2014%202018.jpg> |
| John F. Kennedy International Airport (wd:Q8685) | Freebase ID (wdt:P646)                                      | /m/0p1l2                                                                                |
| John F. Kennedy International Airport (wd:Q8685) | GeoNames ID (wdtn:P1566)                                    | <https://sws.geonames.org/5122732/>                                                     |
| John F. Kennedy International Airport (wd:Q8685) | inception (wdt:P571)                                        | 1948-01-01T00:00:00Z (xsd:dateTime)                                                     |
| John F. Kennedy International Airport (wd:Q8685) | VIAF cluster ID (wdtn:P214)                                 | <http://viaf.org/viaf/158285112>                                                        |
| ...                                              | ...                                                         | ...                                                                                |

[Assistant]
I don't see a property for the number of runways in the first 10 results. Let me search for properties related to "runway" specifically for this airport to see if there are any runway statements.

Question: runway

Top 10 property alternatives:
1. runway (wd:P529 as wdt/p), also known as RWY, P529: name (direction) of runway at airport/airfield/airstrip / name (direction) of runway at airport/airfield/airstrip
2. inception (wd:P571 as wdt/p, matched via broke ground), also known as broke ground, built, commenced on date, commencement date, completed, etc.: time when an entity begins to exist; for date of official opening use P1619 / time when an entity begins to exist; for date of official opening use P1619 / date or point in time when the organisation / object was founded / created / is subproperty of start time
3. located in the administrative territorial entity (wd:P131 as wdt/p, matched via town), also known as administrative territorial entity, administrative territory, city, happens in, in, etc.: the item is located on the territory of the following ... the item falls only partially into the administrative entity. / the item is located on the territory of the following ... the item falls only partially into the administrative entity. / the item is located on the territory of the following administrative entity / the item is located on the territory of the following administrative entity / is subproperty of location / is subproperty of part of
4. ICAO airport code (wd:P239 as wdt/p, matched via ICAO aerodrome code), also known as ICAO aerodrome code, ICAO airfield code, International Civil Aviation Organization airport code, P239: four-character alphanumeric identifier for designating airports (for airlines, see P230) / four-character alphanumeric code for designating airports (for airlines, see P:230) / four-character alphanumeric code for designating airports (for airlines, see P:230)
5. country (wd:P17 as wdt/p, matched via land), also known as host country, land, sovereign state, state, P17: sovereign state that this item is in (not to be used for human beings) / sovereign state that this item is in (not to be used for human beings) / sovereign state that this item is in (not to be used for human beings) / sovereign state that this item is in (not to be used for human beings) / is subproperty of located in the administrative territorial entity
6. operator (wd:P137 as wdt/p, matched via run by), also known as administrator, controlled by, facility operator, in use by, item operator, etc.: person, profession, or organization that operates the equipment, facility, or service; use country for diplomatic missions / person, profession, organization or entity that operates the equipment, facility, or service / organization that operates the service, facility, ship, aircraft, missile / is subproperty of used by
7. patronage (wd:P3872 as wdt/p, matched via riders), also known as customers, number of visitors, passengers, patrons, riders, etc.: number of passengers, patrons or visitors in specified time period / number of passengers, patrons or visitors in specified time period
8. FAA airport code (wd:P240 as wdt/p), also known as FAA LID, P240: three-letter or four-letter alphanumeric code identifying United States airports / three-letter or four-letter alphanumeric code identifying United States airports / three-letter or four-letter alphanumeric code identifying United States airports
9. area (wd:P2046 as wdt/p), also known as acreage, camera resolution, die area, die size, image resolution, etc.: area occupied by an object / area occupied by an object
10. logo image (wd:P154 as wdt/p, matched via marque), also known as insignia, logo, logomark, mark, marque, etc.: graphic mark or emblem commonly used by commercial enterprises, organisations and products / graphic mark or emblem commonly used by commercial enterprises, organisations and products / graphic mark or emblem commonly used by commercial enterprises, organizations and products / graphic mark or emblem commonly used by commercial enterprises, organizations and products / is subproperty of icon

No other items found

[Assistant]
I see that `wdt:P529` is the property for "runway", but it appears to represent the name/direction of a runway (like "04R" or "22L") rather than the count. This means the number of runways is not stored as a direct property value but rather as multiple statements of `wdt:P529` for each runway.

To find airports with exactly one runway, I need to:
1. Find all international airports (instance of `wd:Q644371`)
2. Count the number of runway statements (`wdt:P529`) for each airport
3. Filter for those with exactly one runway
4. Get the labels of these airports and order them

I'll write a SPARQL query to do this.

execute

SELECT ?airport ?airportLabel (COUNT(?runway) AS ?runwayCount) WHERE {
  ?airport wdt:P31 wd:Q644371 .  # international airport
  ?airport wdt:P529 ?runway .     # has runway
  SERVICE wikibase:label { bd:serviceParam wikibase:language "en" }
} GROUP BY ?airport ?airportLabel HAVING (?runwayCount = 1) ORDER BY ?airportLabel

SPARQL execution failed:
Error while executing a SERVICE request to <http://wikiba.se:80/ontology#label>: SERVICE responded with HTTP status code: 301, Moved Permanently. First 100 bytes of the response: '
<title>301 Moved Permanently</title>

301 Moved Permanently'

[Assistant]
I need to fix the SPARQL query because I used `SERVICE wikibase:label` which is not supported. Instead, I'll use `rdfs:label` with a language filter to get the labels. Let me rewrite the query.

SELECT ?airport ?airportLabel (COUNT(?runway) AS ?runwayCount) WHERE {
  ?airport wdt:P31 wd:Q644371 .  # international airport
  ?airport wdt:P529 ?runway .     # has runway
  ?airport rdfs:label ?airportLabel .
  FILTER(LANG(?airportLabel) = "en")
} GROUP BY ?airport ?airportLabel HAVING (?runwayCount = 1) ORDER BY ?airportLabel

Got 594 rows and 3 columns, showing the first 5 and last 5 rows below:
| airport                                            | airportLabel                                     | runwayCount |
| -------------------------------------------------- | ------------------------------------------------ | ----------- |
| Abakan International Airport (wd:Q558204)          | Abakan International Airport (lang:en)           | 1 (xsd:int) |
| Abel Santamaría Airport (wd:Q3496664)              | Abel Santamaría Airport (lang:en)                | 1 (xsd:int) |
| Abraham González Airport (wd:Q2233076)             | Abraham González Airport (lang:en)               | 1 (xsd:int) |
| Adana Şakirpaşa Airport (wd:Q1430728)              | Adana Şakirpaşa Airport (lang:en)                | 1 (xsd:int) |
| Addis Ababa Bole International Airport (wd:Q44923) | Addis Ababa Bole International Airport (lang:en) | 1 (xsd:int) |
| ...                                                | ...                                              | ...         |
| Zamboanga International Airport (wd:Q1200033)      | Zamboanga International Airport (lang:en)        | 1 (xsd:int) |
| Zaporizhzhia International Airport (wd:Q1432786)   | Zaporizhzhia International Airport (lang:en)     | 1 (xsd:int) |
| Zenata – Messali El Hadj Airport (wd:Q2875969)     | Zenata – Messali El Hadj Airport (lang:en)       | 1 (xsd:int) |
| Zhukovsky International Airport (wd:Q2388744)      | Zhukovsky International Airport (lang:en)        | 1 (xsd:int) |
| Zvartnots International Airport (wd:Q1124922)      | Zvartnots International Airport (lang:en)        | 1 (xsd:int) |

[Assistant]
I can see that the query is working and returning international airports with exactly one runway. However, I notice that the airport labels are returned with "(lang:en)" appended, which is not ideal. Let me fix the query to get clean labels without the extra text.

SELECT ?airport ?airportLabel (COUNT(?runway) AS ?runwayCount) WHERE {
  ?airport wdt:P31 wd:Q644371 .  # international airport
  ?airport wdt:P529 ?runway .     # has runway
  ?airport rdfs:label ?airportLabel .
  FILTER(LANG(?airportLabel) = "en")
} GROUP BY ?airport ?airportLabel HAVING (?runwayCount = 1) ORDER BY ?airportLabel

Got 594 rows and 3 columns, showing the first 5 and last 5 rows below:
| airport                                            | airportLabel                                     | runwayCount |
| -------------------------------------------------- | ------------------------------------------------ | ----------- |
| Abakan International Airport (wd:Q558204)          | Abakan International Airport (lang:en)           | 1 (xsd:int) |
| Abel Santamaría Airport (wd:Q3496664)              | Abel Santamaría Airport (lang:en)                | 1 (xsd:int) |
| Abraham González Airport (wd:Q2233076)             | Abraham González Airport (lang:en)               | 1 (xsd:int) |
| Adana Şakirpaşa Airport (wd:Q1430728)              | Adana Şakirpaşa Airport (lang:en)                | 1 (xsd:int) |
| Addis Ababa Bole International Airport (wd:Q44923) | Addis Ababa Bole International Airport (lang:en) | 1 (xsd:int) |
| ...                                                | ...                                              | ...         |
| Zamboanga International Airport (wd:Q1200033)      | Zamboanga International Airport (lang:en)        | 1 (xsd:int) |
| Zaporizhzhia International Airport (wd:Q1432786)   | Zaporizhzhia International Airport (lang:en)     | 1 (xsd:int) |
| Zenata – Messali El Hadj Airport (wd:Q2875969)     | Zenata – Messali El Hadj Airport (lang:en)       | 1 (xsd:int) |
| Zhukovsky International Airport (wd:Q2388744)      | Zhukovsky International Airport (lang:en)        | 1 (xsd:int) |
| Zvartnots International Airport (wd:Q1124922)      | Zvartnots International Airport (lang:en)        | 1 (xsd:int) |

[Assistant]
I see that the labels are still being returned with "(lang:en)" in the output. This appears to be how the system is displaying the results, but the actual label values should be clean. Let me check a specific example to see the actual label value.

list

wd:Q558204

Got 24 rows and 3 columns, showing the first 10 rows below:
| subject                                   | property   | object                                    |
| ----------------------------------------- | ---------- | ----------------------------------------- |
| Abakan International Airport (wd:Q558204) | rdfs:label | Abakani nemzetközi repülőtér (lang:hu)    |
| Abakan International Airport (wd:Q558204) | rdfs:label | Abakan internasjonale lufthamn (lang:nn)  |
| Abakan International Airport (wd:Q558204) | rdfs:label | Abakan internasjonale lufthavn (lang:nb)  |
| Abakan International Airport (wd:Q558204) | rdfs:label | Abakan International Airport (lang:ceb)   |
| Abakan International Airport (wd:Q558204) | rdfs:label | Abakan International Airport (lang:en)    |
| Abakan International Airport (wd:Q558204) | rdfs:label | Abakan Uluslararası Havalimanı (lang:tr)  |
| Abakan International Airport (wd:Q558204) | rdfs:label | aéroport international d'Abakan (lang:fr) |
| Abakan International Airport (wd:Q558204) | rdfs:label | Aeroporto di Abakan (lang:it)             |
| Abakan International Airport (wd:Q558204) | rdfs:label | Aeroportul Internațional Abakan (lang:ro) |
| Abakan International Airport (wd:Q558204) | rdfs:label | Aeropuerto de Abakán (lang:es)            |
| ...                                       | ...        | ...                                       |

[Assistant]
I can see that the actual label for English is "Abakan International Airport" without any "(lang:en)" suffix. The "(lang:en)" is just metadata indicating the language of the label, not part of the actual label text. The query is working correctly.

The results show 594 international airports with exactly one runway. The query returns the airport entity, its English label, and the count of runways (which is 1 for all results). The results are ordered by the airport label as requested.

I'll provide the final answer with the SPARQL query.

answer

SELECT ?airport ?airportLabel (COUNT(?runway) AS ?runwayCount) WHERE {
  ?airport wdt:P31 wd:Q644371 .  # international airport
  ?airport wdt:P529 ?runway .     # has runway
  ?airport rdfs:label ?airportLabel .
  FILTER(LANG(?airportLabel) = "en")
} GROUP BY ?airport ?airportLabel HAVING (?runwayCount = 1) ORDER BY ?airportLabel

Answer: There are 594 international airports with exactly one runway. Examples include Abakan International Airport, Abel Santamaría Airport, Abraham González Airport, Adana Şakirpaşa Airport, and Addis Ababa Bole International Airport. The complete list includes airports like Zamboanga International Airport, Zaporizhzhia International Airport, and Zvartnots International Airport, all ordered alphabetically by their English labels.