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

Using entities:
- Shannen Doherty (wd:Q207598), also known as Shannen Maria Doherty: has occupation autobiographer / has occupation television producer / has occupation overseer / has occupation director / has occupation stage actor / has occupation television actor / has occupation film actor / is instance of human / American actress (1971–2024)

Using properties:
- notable work (wd:P800 as wdt), also known as artwork, author of, bibliography, books by, creator of, etc.: notable scientific, artistic or literary work, or other work of significance among subject's works / notable scientific, artistic or literary work, or other work of significance among subject's works

Answer: Shannen Doherty has played in the following notable works: Beverly Hills, 90210, BH90210, Charmed, Heathers, and Our House.

Shannen Doherty has played in the following notable works: Beverly Hills, 90210, BH90210, Charmed, Heathers, and Our House.

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

Using entities:
- Shannen Doherty (wd:Q207598), also known as Shannen Maria Doherty: has occupation autobiographer / has occupation television producer / has occupation overseer / has occupation director / has occupation stage actor / has occupation television actor / has occupation film actor / is instance of human / American actress (1971–2024)

Using properties:
- notable work (wd:P800 as wdt), also known as artwork, author of, bibliography, books by, creator of, etc.: notable scientific, artistic or literary work, or other work of significance among subject's works / notable scientific, artistic or literary work, or other work of significance among subject's works

Execution result:
Got 5 rows and 2 columns:
| work                              | workLabel                      |
| --------------------------------- | ------------------------------ |
| Beverly Hills, 90210 (wd:Q117590) | Beverly Hills, 90210 (lang:en) |
| BH90210 (wd:Q64210970)            | BH90210 (lang:en)              |
| Charmed (wd:Q162371)              | Charmed (lang:en)              |
| Heathers (wd:Q1551916)            | Heathers (lang:en)             |
| Our House (wd:Q2064827)           | Our House (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 has shannen doherty played in?

[Assistant]
To determine what Shannen Doherty has played in, I need to find the roles or works (e.g., TV shows, movies) she has been involved in as an actress. This typically involves finding her occupation (to confirm she is an actress) and then retrieving the works she has appeared in.

### Step 1: Search for Shannen Doherty in Wikidata
I'll start by searching for the entity "Shannen Doherty" to get her Wikidata ID.

Question: shannen doherty

Top 10 entity alternatives:
1. Shannen Doherty (wd:Q207598), also known as Shannen Maria Doherty: has occupation television producer / has occupation television actor / has occupation autobiographer / American actress (1971–2024) / has occupation stage actor / has occupation film actor / has occupation director / has occupation overseer / is instance of human
2. Shannen Doherty/Cypress Hill (wd:Q110713281), also known as Saturday Night Live, season 19 episode 2: is instance of television series episode / episode of Saturday Night Live (S19 E2)
3. Breaking Up with Shannen Doherty (wd:Q1254572): American reality television series / is instance of television series / is instance of serial
4. Peter C. Doherty (wd:Q309814, matched via Peter Doherty), also known as Peter Charles Doherty, Peter Doherty: has occupation Veterinary physician / has occupation immunologist / has occupation veterinarian / has occupation professor / Australian immunologist / is instance of human
5. Matt Doherty (wd:Q4167438): has occupation association football player / Irish association football player / Irish association football player / Irish association football player / has occupation soccer player / is instance of human
6. Pete Doherty (wd:Q311875), also known as Peter Doherty: English musician, actor and poet (born 1979) / has occupation songwriter / has occupation guitarist / has occupation Guitarist / has occupation activist / has occupation painter / has occupation writer / has occupation singer / is instance of human / has occupation poet
7. Ken Doherty (wd:Q335867): has occupation snooker player / is instance of human / Irish snooker player
8. Laurence Doherty (wd:Q355520), also known as Hugh Laurence Doherty, Laurie Doherty: English tennis player (1875-1919) / has occupation tennis player / is instance of human
9. Reginald Doherty (wd:Q127638), also known as Reginald "Reggie" or "R.F." Frank Doherty: English tennis player (1872–1910) / has occupation tennis player / is instance of human
10. Denny Doherty (wd:Q432488), also known as Dennis Gerrard Stephen Doherty: Canadian singer (1940–2007) / has occupation songwriter / has occupation composer / has occupation singer / has occupation actor / is instance of human / Canadian musician / Canadian musician

[Assistant]
The top result is Shannen Doherty (wd:Q207598), an American actress (1971–2024), with occupations including television actor, film actor, and stage actor. This is the correct entity we want to use.

### Step 2: Confirm her occupation and find works she has played in
We need to find the works (TV shows, movies) she has acted in. In Wikidata, the property for "performer in" or "cast member" is typically `wdt:P161` (cast member).

Let me construct a query to retrieve the works (items) she has been a cast member in, and get their labels in English.

I'll execute a SPARQL query to get the works (items) associated with her via `wdt:P161`, and fetch their English labels.

execute

SELECT ?work ?workLabel WHERE { wd:Q207598 wdt:P161 ?work . ?work rdfs:label ?workLabel FILTER(LANG(?workLabel) = "en") }

[Assistant]
The query returned no results, which is unexpected. This suggests that either:

1. The property `wdt:P161` (cast member) is not directly used for Shannen Doherty, or
2. The works are stored as statements with qualifiers or references, or
3. The works are linked via a different property.

Let me investigate what properties are associated with Shannen Doherty using the `list` function to inspect her triples.

list

wd:Q207598

Got 629 rows and 3 columns, showing the first 10 rows below:
| subject                      | property                         | object                                                                                |
| ---------------------------- | -------------------------------- | ------------------------------------------------------------------------------------------ |
| Shannen Doherty (wd:Q207598) | instance of (wdt:P31)            | human (wd:Q5)                                                                              |
| Shannen Doherty (wd:Q207598) | occupation (wdt:P106)            | television actor (wd:Q10798782)                                                            |
| Shannen Doherty (wd:Q207598) | sex or gender (wdt:P21)          | female (wd:Q6581072)                                                                       |
| Shannen Doherty (wd:Q207598) | given name (wdt:P735)            | Shannen (wd:Q56449931)                                                                     |
| Shannen Doherty (wd:Q207598) | date of birth (wdt:P569)         | 1971-04-12T00:00:00Z (xsd:dateTime)                                                        |
| Shannen Doherty (wd:Q207598) | Commons category (wdt:P373)      | Shannen Doherty                                                                            |
| Shannen Doherty (wd:Q207598) | image (wdt:P18)                  | <http://commons.wikimedia.org/wiki/Special:FilePath/Shannen%20Doherty%20%28cropped%29.jpg> |
| Shannen Doherty (wd:Q207598) | family name (wdt:P734)           | Doherty (wd:Q21502096)                                                                     |
| Shannen Doherty (wd:Q207598) | country of citizenship (wdt:P27) | United States (wd:Q30)                                                                     |
| Shannen Doherty (wd:Q207598) | Freebase ID (wdt:P646)           | /m/039crh                                                                                |
| ...                          | ...                              | ...                                                                                |

[Assistant]
I see that `wdt:P161` (cast member) is not directly listed in the first 10 rows, but that doesn't mean it's not present — it may be in the remaining 619 rows. However, it's more likely that her roles are stored as statements with qualifiers (e.g., using `p:P161` with `ps:P161` and `pq:P1476` for role name).

Let me check if `p:P161` (cast member statements) exist for her by querying for statements with qualifiers.

execute

SELECT ?work ?workLabel ?role WHERE { wd:Q207598 p:P161 ?stmt . ?stmt ps:P161 ?work . ?work rdfs:label ?workLabel FILTER(LANG(?workLabel) = "en") . OPTIONAL { ?stmt pq:P1476 ?role } } ORDER BY ?workLabel

[Assistant]
Still no results. This suggests that Shannen Doherty's acting roles are not directly linked via `p:P161` in Wikidata, or the data is incomplete.

Let me try another approach: search for properties related to "actor" or "work" for Shannen Doherty using `search_property_of_entity` to see if there are other relevant properties.

Question: work

Top 10 property alternatives:
1. notable work (wd:P800 as p/wdt, matched via work), also known as artwork, author of, bibliography, books by, creator of, etc.: notable scientific, artistic or literary work, or other work of significance among subject's works / notable scientific, artistic or literary work, or other work of significance among subject's works
2. occupation (wd:P106 as p/wdt, matched via work), also known as avocation, career, craft, employ, employment, etc.: occupation of a person; see also "field of work" (Property:P101), "position held" (Property:P39) / occupation of a person; see also "field of work" (Property:P101), "position held" (Property:P39) / occupation of a person; see also "field of work" (Property:P101), "position held" (Property:P39)
3. work period (start) (wd:P2031 as p/wdt, matched via work starts), also known as active since, career began, career start, date of activity (start), debut, etc.: start of period during which a person or group flourished (fl. = "floruit") in their professional activity / start of period during which a person or group flourished (fl. = "floruit") in their professional activity / is subproperty of start time / is subproperty of floruit
4. work period (end) (wd:P2032 as p/wdt, matched via work ends), also known as active until, date of activity (end), end date of activity, end time for work, fl. (end), etc.: end of period during which a person or group flourished (fl. = "floruit") in their professional activity / end of period during which a person or group flourished (fl. = "floruit") in their professional activity / is subproperty of end time / is subproperty of floruit
5. topic's main category (wd:P910 as p/wdt, matched via category), also known as article's main category, category, category for this topic, catmain, has category, etc.: main category of this topic / main Wikimedia category
6. described by source (wd:P1343 as p/wdt, matched via subject in), also known as defined in, described by biography, described by encyclopedia, described by obituary, described by reference work, etc.: dictionary, encyclopaedia, etc. where this item is described / work where this item is described / is subproperty of attested in
7. birth name (wd:P1477 as p/wdt, matched via né), also known as birthname, bn, bname, born as, full birth name, etc.: full name of a person at birth, if different from their ... John Peter Doe for Joe Doe, Ann Smith for Ann Miller) / full name of a person at birth, if different from their current, generally used name / full name of a person at birth, if different from their current name / is subproperty of name
8. educated at (wd:P69 as p/wdt, matched via attended), also known as alma mater, alumna of, alumni of, alumnus of, attended, etc.: educational institution attended by the subject / educational institution attended by the subject / educational institution attended by subject / is subproperty of affiliation
9. spouse (wd:P26 as p/wdt, matched via wed), also known as common-law husband, common-law spouse, common-law wife, husband, husbands, etc.: the subject has the object as their spouse (husband, wife, ... Use "unmarried partner" (P451) for non-married companions / the subject has the object as their spouse (husband, wife, ... Use "unmarried partner" (P451) for non-married companions / the subject has the object as their spouse (husband, wife, ... Use "unmarried partner" (P451) for non-married companions / is subproperty of significant person / is subproperty of relative
10. given name (wd:P735 as p/wdt, matched via name), also known as Christian name, first name, forename, middle name, name, etc.: first name or another given name of this person; values used with the property should not link disambiguations nor family names / first name or another given name of this person; values used with the property shouldn't link disambiguations nor family names / first name or another given name of this person; values used with the property shouldn't link disambiguations nor family names / is subproperty of name

No other items found

[Assistant]
The most relevant property here is `wdt:P800` — "notable work". This property is often used for actors to list their most significant works (TV shows, films, etc.). Let me check if this property is used for Shannen Doherty.

I'll execute a query to retrieve her notable works and their labels.

SELECT ?work ?workLabel WHERE { wd:Q207598 wdt:P800 ?work . ?work rdfs:label ?workLabel FILTER(LANG(?workLabel) = "en") } ORDER BY ?workLabel

[Assistant]
Perfect! I now have the list of notable works Shannen Doherty has been involved in as an actress. These include:

- **Beverly Hills, 90210**
- **BH90210**
- **Charmed**
- **Heathers**
- **Our House**

These are all verified via `wdt:P800` (notable work), which is the standard property used in Wikidata for listing significant works of actors.

### Final Answer
Shannen Doherty has played in the following notable works:

- Beverly Hills, 90210
- BH90210
- Charmed
- Heathers
- Our House

I will now provide the final SPARQL query and answer.

answer

SELECT ?work ?workLabel WHERE { wd:Q207598 wdt:P800 ?work . ?work rdfs:label ?workLabel FILTER(LANG(?workLabel) = "en") } ORDER BY ?workLabel

Answer: Shannen Doherty has played in the following notable works: Beverly Hills, 90210, BH90210, Charmed, Heathers, and Our House.


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

Using entities:
- Iraq (wd:Q796), also known as iq, IRQ, Republic of Iraq: is instance of sovereign state / is instance of country / republic in Western Asia / republic in Western Asia / sovereign state in western Asia / sovereign state in Western Asia

Using properties:
- basic form of government (wd:P122 as wdt), also known as form of government, government, type of government, P122: subject's government / the subject's government / the subject's government

Got 2 rows and 1 column:
| governmentTypeLabel        |
| -------------------------- |
| federation (lang:en)       |
| federal republic (lang:en) |

Answer: Iraq has a federal republic form of government.

Iraq has a federal republic form of government.

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

Using entities:
- Iraq (wd:Q796), also known as iq, IRQ, Republic of Iraq: is instance of sovereign state / is instance of country / republic in Western Asia / republic in Western Asia / sovereign state in western Asia / sovereign state in Western Asia

Using properties:
- basic form of government (wd:P122 as wdt), also known as form of government, government, type of government, P122: subject's government / the subject's government / the subject's government

Execution result:
Got 2 rows and 1 column:
| governmentTypeLabel        |
| -------------------------- |
| federation (lang:en)       |
| federal republic (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 type of government does iraq have now?

[Assistant]
To determine the type of government Iraq has now, I need to find information about Iraq's current governmental system. This typically involves identifying the political structure or system of governance, which is often represented in Wikidata using properties like "government type" or similar.

### Step 1: Search for the entity "Iraq"
First, I'll search for the entity representing Iraq in Wikidata.

Question: iraq

Top 10 entity alternatives:
1. Iraq (wd:Q796), also known as iq, IRQ, Republic of Iraq: sovereign state in western Asia / sovereign state in Western Asia / is instance of sovereign state / republic in Western Asia / republic in Western Asia / is instance of country
2. Iraqi Air Force (wd:Q2443729, matched via Iraq), also known as Air Forces, IQAF, Iraq: aerial warfare branch of Iraq's armed forces / is instance of air force / is instance of Air force
3. 'Iraq (wd:Q20299548): village in Mustaba District, Yemen / is instance of human settlement / human settlement in Yemen / human settlement in Yemen
4. Iraq (wd:Q15761734): is instance of scientific journal / is instance of academic journal / cultural studies journal
5. 'Iraq (1977) (wd:Q27716130, matched via Iraq), also known as Iraq: is instance of scientific journal / journal; A Kurdish newspaper
6. Iraq. (wd:Q46390136): is instance of scholarly article / is instance of academic article / scientific article
7. [Iraq] (wd:Q78280319): scientific article published on 01 May 1996 / is instance of scholarly article / is instance of academic article
8. Gulf War (wd:Q37643, matched via Iraq War), also known as First Gulf War, First Iraq War, Gulf War I, Iraq War, Kuwait War, etc.: 1990–1991 conflict between Iraq and a 42-country coalition / is instance of War / is instance of war
9. Iraq War (wd:Q545449), also known as Gulf War 2/battle of Ramadi/battle of Faluya, Gulf War II, Invasion of Iraq, Iraqi Freedom, Iraq Invasion, etc.: 2003–2011 war after an American-led invasion / is instance of military operation / is instance of Military campaign / is instance of military campaign / is instance of offensive / is instance of invasion / is instance of War / is instance of war
10. flag of Iraq (wd:Q162781, matched via Iraq flag), also known as Iraq flag, Iraqi flag: national flag of the Republic of Iraq / is instance of national flag

[Assistant]
The top result is "Iraq (wd:Q796)", which is the sovereign state and the correct entity to use. Now, I will investigate its properties to find information about its government type.

### Step 2: Search for properties related to "government" for Iraq
I will use `search_property_of_entity` to find properties related to government for Iraq.

Question: government

Top 10 property alternatives:
1. basic form of government (wd:P122 as p/wdt, matched via government), also known as form of government, government, type of government, P122: the subject's government / the subject's government / subject's government
2. head of government (wd:P6 as p/wdt), also known as chancellor, executive power headed by, first minister, government headed by, governor, etc.: head of the executive power of this town, city, municipality, state, country, or other governmental body / head of the executive power of a town, city, municipality, state, country, or other governmental body / head of the executive power of a town, city, municipality, state, country, or other governmental body / is subproperty of director / manager / is subproperty of manager/director / is subproperty of director/manager / is subproperty of chairperson
3. head of state (wd:P35 as p/wdt, matched via president), also known as chief of state, emperor, governor, king, leader, etc.: official with the highest formal authority in a country/state / official with the highest formal authority in a country / official with the highest formal authority in a country / is subproperty of director / manager / is subproperty of manager/director / is subproperty of director/manager / is subproperty of chairperson
4. official religion (wd:P3075 as p/wdt, matched via state religion), also known as established religion, state religion, P3075: official religion in this administrative entity / official religion in this country
5. capital (wd:P36 as p/wdt, matched via seat of government), also known as administrative capital, administrative center, administrative centre, administrative headquarters, administrative seat, etc.: location (city, municipality) of governmental seat of the country, or administrative territorial entity / seat of government of a country, province, state or other type of administrative territorial entity / city of governmental seat of the country, state or administrative subdivision
6. legislative body (wd:P194 as p/wdt, matched via parliament), also known as aboriginal council, assembly, city council, council, diet, etc.: legislative body governing this entity; political institution ... representatives, such as a parliament/legislature or council / legislative body governing this entity; political institution ... representatives, such as a parliament/legislature or council / legislative body governing this entity; political institution ... representatives, such as a parliament/legislature or council
7. country (wd:P17 as p/wdt, matched via sovereign state), 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
8. diplomatic relation (wd:P530 as p/wdt, matched via political relations), also known as ambassadorial relation, ambassadorial relations, diplomatic relations, foreign relation, foreign relations, etc.: diplomatic relations of the country
9. office held by head of government (wd:P1313 as p/wdt, matched via head of government's office), also known as head of government's office, office of head of government, position held by head of government, position of head of government, title of head of government, etc.: political office that is fulfilled by the head of the government of this item / political office that is fulfilled by the head of the government of this item
10. continent (wd:P30 as p/wdt), also known as P30: is subproperty of located in/on physical feature / is subproperty of located on terrain feature / continent of which the subject is a part / continent of which the subject is a part / continent of which the subject is a part

No other items found

[Assistant]
The property "basic form of government" (wdt:P122) is directly relevant to the question. I will now retrieve the value of this property for Iraq (wd:Q796) to determine its government type.

### Step 3: Query the "basic form of government" for Iraq
I will execute a SPARQL query to get the value of `wdt:P122` for Iraq and fetch its label in English.

execute

SELECT ?governmentTypeLabel WHERE { wd:Q796 wdt:P122 ?governmentType . ?governmentType rdfs:label ?governmentTypeLabel FILTER(LANG(?governmentTypeLabel) = "en") }

Got 2 rows and 1 column:
| governmentTypeLabel        |
| -------------------------- |
| federation (lang:en)       |
| federal republic (lang:en) |

[Assistant]
The query returned two labels for Iraq's government type: "federation" and "federal republic".

Since "federal republic" is more specific and includes both the federal structure and the republican form of government, it is the most accurate description of Iraq's current government. The term "federation" alone is a broader category and does not capture the republican nature of the state.

Thus, the type of government Iraq has now is a **federal republic**.

### Final Answer:

answer

SELECT ?governmentTypeLabel WHERE { wd:Q796 wdt:P122 ?governmentType . ?governmentType rdfs:label ?governmentTypeLabel FILTER(LANG(?governmentTypeLabel) = "en") }

Answer: Iraq has a federal republic form of government.


PREFIX wdt: <http://www.wikidata.org/prop/direct/>
PREFIX wd: <http://www.wikidata.org/entity/>
SELECT ?place WHERE {
  wd:Q218718 wdt:P19 ?place
}

Using entities:
- Jay Leno (wd:Q218718), also known as James Douglas Muir Leno, James Leno, Jay Douglas Muir Leno: has occupation actor / has occupation comedian / has occupation screenwriter / has occupation voice actor / has occupation writer / has occupation dancer / has occupation television producer / has occupation television presenter / has occupation singer / has occupation television actor / has occupation YouTuber / has occupation stand-up comedian / has occupation journalist / is instance of human / American television host and comedian (born 1950)

Using properties:
- place of birth (wd:P19 as wdt), also known as birth city, birth location, birth place, birthplace, born, etc.: is subproperty of location / most specific known birth location of a person, animal or fictional character / most specific known (e.g. city instead of country, or ... birth location of a person, animal or fictional character / most specific known (e.g. city instead of country, or ... birth location of a person, animal or fictional character

Answer: Jay Leno is from New Rochelle, United States.

Jay Leno is from New Rochelle, United States.

SPARQL query over wikidata:
PREFIX wdt: <http://www.wikidata.org/prop/direct/>
PREFIX wd: <http://www.wikidata.org/entity/>
SELECT ?place WHERE {
  wd:Q218718 wdt:P19 ?place
}

Using entities:
- Jay Leno (wd:Q218718), also known as James Douglas Muir Leno, James Leno, Jay Douglas Muir Leno: has occupation actor / has occupation comedian / has occupation screenwriter / has occupation voice actor / has occupation writer / has occupation dancer / has occupation television producer / has occupation television presenter / has occupation singer / has occupation television actor / has occupation YouTuber / has occupation stand-up comedian / has occupation journalist / is instance of human / American television host and comedian (born 1950)

Using properties:
- place of birth (wd:P19 as wdt), also known as birth city, birth location, birth place, birthplace, born, etc.: is subproperty of location / most specific known birth location of a person, animal or fictional character / most specific known (e.g. city instead of country, or ... birth location of a person, animal or fictional character / most specific known (e.g. city instead of country, or ... birth location of a person, animal or fictional character

Execution result:
Got 1 row and 1 column:
| place                     |
| ------------------------- |
| New Rochelle (wd:Q744948) |

[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] where is jay leno from?

[Assistant]
To determine where Jay Leno is from, I need to find his place of birth. Let me start by searching for the entity corresponding to Jay Leno in Wikidata.

Question: jay leno

Top 10 entity alternatives:
1. Jay Leno (wd:Q218718), also known as James Douglas Muir Leno, James Leno, Jay Douglas Muir Leno: American television host and comedian (born 1950) / has occupation television presenter / has occupation television producer / has occupation stand-up comedian / has occupation television actor / has occupation screenwriter / has occupation voice actor / has occupation journalist / has occupation comedian / has occupation YouTuber / has occupation writer / has occupation dancer / has occupation singer / has occupation actor / is instance of human
2. Jay Leno Monologue (wd:Q110056887): is instance of Saturday Night Live sketch / sketch from Saturday Night Live
3. Jay Leno's Garage (wd:Q20657049): is instance of television series / is instance of serial / television series
4. The Jay Leno Show (wd:Q3040985): short-lived American late-night talk show / is instance of television series / is instance of serial
5. JRE #692 - Jay Leno (wd:Q109305884, matched via #692 - Jay Leno), also known as #692 - Jay Leno, The Joe Rogan Experience #692 - Jay Leno: episode of the Joe Rogan Experience / is instance of podcast episode
6. Jay Leno: LA Riots (wd:Q110055579): is instance of Saturday Night Live sketch / sketch from Saturday Night Live
7. Jay Leno/The Neville Brothers (wd:Q110035206), also known as Saturday Night Live S11E11, Saturday Night Live, season 11 episode 11: is instance of television series episode / episode of Saturday Night Live (S11 E11)
8. The Tonight Show with Jay Leno (wd:Q3107406): American talk show hosted by Jay Leno (1992–2009 and 2010–2014) / is instance of television series / is instance of serial
9. J (wd:Q9773, matched via jay), also known as initial i with hook, i with hook, j, jay, Juliet, etc.: 10th-17th letter of Latin alphabets / 10th-17th letter of Latin alphabets / is instance of Latin-script letter / is instance of consonant letter / letter in the Latin alphabet / letter in the Latin alphabet
10. Eurasian Jay (wd:Q25354), also known as European Jay, Garrulus glandarius, Jay: is instance of taxon / species of bird

[Assistant]
The top result for "jay leno" is Jay Leno (wd:Q218718), an American television host and comedian. Now I will check his place of birth by examining the properties of this entity.

list

wd:Q218718

[Assistant]
Jay Leno was born in New Rochelle. Now I will verify the details about New Rochelle to ensure it is correctly identified as a place.

wd:Q744948

Got 423 rows and 3 columns, showing the first 10 rows below:
| subject                   | property                                                    | object                                                                        |
| ------------------------- | ----------------------------------------------------------- | ----------------------------------------------------------------------------- |
| New Rochelle (wd:Q744948) | instance of (wdt:P31)                                       | city in the United States (wd:Q1093829)                                       |
| New Rochelle (wd:Q744948) | country (wdt:P17)                                           | United States (wd:Q30)                                                        |
| New Rochelle (wd:Q744948) | located in the administrative territorial entity (wdt:P131) | Westchester County (wd:Q54066)                                                |
| New Rochelle (wd:Q744948) | coordinate location (wdt:P625)                              | POINT(-73.781944 40.908611) (geo:wktLiteral)                                  |
| New Rochelle (wd:Q744948) | Commons category (wdt:P373)                                 | New Rochelle, New York                                                        |
| New Rochelle (wd:Q744948) | image (wdt:P18)                                             | <http://commons.wikimedia.org/wiki/Special:FilePath/City%20of%20NR%20800.jpg> |
| New Rochelle (wd:Q744948) | Freebase ID (wdt:P646)                                      | /m/0yc84                                                                      |
| New Rochelle (wd:Q744948) | GeoNames ID (wdtn:P1566)                                    | <https://sws.geonames.org/5128549/>                                           |
| New Rochelle (wd:Q744948) | population (wdt:P1082)                                      | 79726 (xsd:decimal)                                                           |
| New Rochelle (wd:Q744948) | inception (wdt:P571)                                        | 1688-01-01T00:00:00Z (xsd:dateTime)                                           |
| ...                       | ...                                                         | ...                                                                           |

[Assistant]
New Rochelle (wd:Q744948) is confirmed as a city in the United States, located in Westchester County, New York. This matches the expected information about Jay Leno's birthplace.

Now I can construct the final SPARQL query to answer the question "Where is Jay Leno from?" by retrieving his place of birth.

execute

SELECT ?place WHERE { wd:Q218718 wdt:P19 ?place }

[Assistant]
Jay Leno is from New Rochelle, United States. The SPARQL query successfully retrieved his place of birth as New Rochelle (wd:Q744948). I will now provide the final answer.

answer

SELECT ?place WHERE { wd:Q218718 wdt:P19 ?place }

Answer: Jay Leno is from New Rochelle, United States.