Find all buildings having appearances with the both ‘summer’ and ‘winter’ theme
XML Query
<query xmlns="http://www.3dcitydb.org/importer-exporter/config">
<typeNames>
<typeName xmlns:bldg="http://www.opengis.net/citygml/building/2.0">bldg:Building</typeName>
</typeNames>
<filter>
<and>
<propertyIsEqualTo>
<valueReference>app:appearance/app:Appearance/app:theme</valueReference>
<literal>summer</literal>
</propertyIsEqualTo>
<propertyIsEqualTo>
<valueReference>app:appearance/app:Appearance/app:theme</valueReference>
<literal>winter</literal>
</propertyIsEqualTo>
</and>
</filter>
</query>
SQL Query for 3DCityDB v4 (PostgreSQL)
select
distinct b.id,
b.objectclass_id,
b.gmlid
from
citydb.cityobject b
inner join citydb.appearance c on b.id = c.cityobject_id
inner join citydb.appearance d on b.id = d.cityobject_id
where
b.objectclass_id = 26
and (
c.theme = 'summer'
and d.theme = 'winter'
)
SQL Query for 3DCityDB v5 (PostgreSQL)
select
ftr.id,
ftr.objectclass_id,
ftr.gmlid
from
citydb.feature AS ftr
inner join citydb.appearance c on ftr.id = c.cityobject_id
inner join citydb.appearance d on ftr.id = d.cityobject_id
where
ftr.objectclass_id = 26
and (
c.theme = 'summer'
and d.theme = 'winter'
)