Find all buildings having a wall surface whose gml:name equals to ‘west wall’

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>
    <propertyIsEqualTo>
      <valueReference>bldg:boundedBy/bldg:WallSurface/gml:name</valueReference>
      <literal>west wall</literal>
    </propertyIsEqualTo>
  </filter>
</query>

SQL Query for 3DCityDB v4 (PostgreSQL)

select
  distinct b.id,
  b.objectclass_id,
  b.gmlid
from
  citydb.building a
  inner join citydb.cityobject b on a.id = b.id
  inner join citydb.thematic_surface c on (
    a.id = c.building_id
    and c.objectclass_id = 34
  )
  inner join citydb.cityobject d on c.id = d.id
where
  b.objectclass_id = 26
  and d.name = 'west wall'

SQL Query for 3DCityDB v5 (PostgreSQL)

SELECT ftr_bld.id
  ,ftr_bld.objectclass_id
  ,ftr_bld.gmlid
FROM feature AS ftr
INNER JOIN property AS pro
  ON pro.val_feature = ftr.id
    AND pro.namespace = 'core'
    AND pro.name = 'boundary'
INNER JOIN feature AS ftr_bld
  ON pro.relation_id = ftr_bld.id
WHERE
  ftr.objectclass_id = 34
  AND ftr.identifier = 'west wall' -- or use LIKE/ILIKE
  AND ftr_bld.objectclass_id = 26;