PREFIX gesli: <https://gesli.example/ontology#>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>

SELECT ?supplierName ?supplierNature ?platformSupplierType
       ?serviceCountry ?serviceRegion ?serviceCity ?servicePort ?serviceScope
       ?branchRole ?parentSupplierName ?authorizedBrandName
WHERE {
  ?supplier a/rdfs:subClassOf* gesli:Supplier ;
            rdfs:label ?supplierName .

  OPTIONAL { ?supplier gesli:supplierNature ?supplierNature . }
  OPTIONAL { ?supplier gesli:platformSupplierType ?platformSupplierType . }
  OPTIONAL { ?supplier gesli:serviceCountry ?serviceCountry . }
  OPTIONAL { ?supplier gesli:serviceRegion ?serviceRegion . }
  OPTIONAL { ?supplier gesli:serviceCity ?serviceCity . }
  OPTIONAL { ?supplier gesli:servicePort ?servicePort . }
  OPTIONAL { ?supplier gesli:serviceScope ?serviceScope . }
  OPTIONAL { ?supplier gesli:branchRole ?branchRole . }
  OPTIONAL {
    ?supplier gesli:localUnitOf ?parentSupplier .
    ?parentSupplier rdfs:label ?parentSupplierName .
  }
  OPTIONAL {
    ?supplier gesli:authorizedForServiceBrand ?brand .
    ?brand gesli:brandName ?authorizedBrandName .
  }
}
ORDER BY ?supplierNature ?platformSupplierType ?serviceCountry ?serviceRegion ?supplierName
