# Prefixes on subqueries

**URL:** <https://community.stardog.com/t/prefixes-on-subqueries/540>\
**Category:** Bug\
**Created:** [August 31, 2017, 9:53am UTC](https://community.stardog.com/t/prefixes-on-subqueries/540 "2017-08-31T09:53:52Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![Samur\_Araujo](https://avatars.discourse-cdn.com/v4/letter/s/a88e4f/32.png) [@Samur\_Araujo](https://community.stardog.com/u/Samur_Araujo)\
**Post date:** [August 31, 2017, 9:53am UTC](https://community.stardog.com/t/prefixes-on-subqueries/540/1 "2017-08-31T09:53:52Z")

</div>

Stardog does not consider valid prefixes on subqueries. Is this a bug?

For example, the query below are not syntactical correct by stardog.

PREFIX realestate: [http://geophy.io/ontologies/realestate#](http://geophy.io/ontologies/realestate#)  
PREFIX wgs84: [http://www.w3.org/2003/01/geo/wgs84\_pos#](http://www.w3.org/2003/01/geo/wgs84_pos#)  
PREFIX system: [http://geophy.io/ontologies/system#](http://geophy.io/ontologies/system#)  
PREFIX f: geophy:function:  
PREFIX meta: [http://geophy.io/ontologies/rank/meta#](http://geophy.io/ontologies/rank/meta#)  
select \*  
WHERE

```
    { PREFIX realestate: <http://geophy.io/ontologies/realestate#>
      PREFIX wgs84: <http://www.w3.org/2003/01/geo/wgs84_pos#>
      PREFIX system: <http://geophy.io/ontologies/system#>
      PREFIX f: <geophy:function:>
      PREFIX meta: <http://geophy.io/ontologies/rank/meta#>
      
      SELECT ?functional_area ?purpose ?renovation_year ?construction_year
      WHERE
        { 
          VALUES ?building { <http://geophy.io/buildings/55881> }
          ?building realestate:construction_year ?con_year
          
        }   

```

}

* * *

When we remove the prefixes, it is valid.

PREFIX realestate: [http://geophy.io/ontologies/realestate#](http://geophy.io/ontologies/realestate#)  
PREFIX wgs84: [http://www.w3.org/2003/01/geo/wgs84\_pos#](http://www.w3.org/2003/01/geo/wgs84_pos#)  
PREFIX system: [http://geophy.io/ontologies/system#](http://geophy.io/ontologies/system#)  
PREFIX f: geophy:function:  
PREFIX meta: [http://geophy.io/ontologies/rank/meta#](http://geophy.io/ontologies/rank/meta#)  
select \*  
WHERE

```
    {  
      
      SELECT ?functional_area ?purpose ?renovation_year ?construction_year
      WHERE
        { 
          VALUES ?building { <http://geophy.io/buildings/55881> }
          ?building realestate:construction_year ?con_year
          
        }

```

}

The issue occurs when using Jena. If I send the second query, jena rewrites it adding prefixes to the subquery. Then stardog do not accept it.

Are prefixes on subqueries syntactically valid by the sparql specification?

Best,  
Samur

---

<div class="post-metadata">

**Author:** ![pavel](https://yyz2.discourse-cdn.com/flex030/user_avatar/community.stardog.com/pavel/32/18_2.png) [@pavel](https://community.stardog.com/u/pavel)\
**Post date:** [August 31, 2017, 10:02am UTC](https://community.stardog.com/t/prefixes-on-subqueries/540/2 "2017-08-31T10:02:34Z")

</div>

No, they are not: [SPARQL 1.1 Query Language](https://www.w3.org/TR/sparql11-query/#rSubSelect)

Best,  
Pavel
