$request (' . __CLASS__ . '::' . __FUNCTION__ . ':' . __LINE__ . '): ';print_r($request);echo'';} // /wfs-data.php/wsdl : $request->segments = ['wsdl'] // /wfs-data.php/wsdl/wfs-http-bindings.wsdl : $request->segments = ['wsdl', 'wfs-http-bindings.wsdl'] if (empty($request->segments)) throw new Exception("Bad request", 400); $countSegments = count($request->segments); if ('wsdl' != $request->segments[0]) throw new Exception("Bad request", 400); if (1 == $countSegments) { if (empty($request->query)) return $this->wsdlAction(); else throw new Exception("TODO: wsdl query: [".json_encode($request->query)."]"); } if (2 == $countSegments && 'wfs-http-bindings.wsdl' == $request->segments[1]) return $this->wsdlHttpBindingsWsdl(); // if (2 == $countSegments && 'wfs-responses.wsdl' == $request->segments[1]) return $this->sendFile('wfs-responses.wsdl'); // if (2 == $countSegments && 'wfs-util.xsd' == $request->segments[1]) return $this->sendFile('wfs-util.xsd'); // if (2 == $countSegments && 'wfs-xml-interfaces.wsdl' == $request->segments[1]) return $this->sendFile('wfs-xml-interfaces.wsdl'); // if (2 == $countSegments && 'wfs.xsd' == $request->segments[1]) return $this->sendFile('wfs.xsd'); throw new Exception("TODO: \$segments({$countSegments}): [".implode(", ", $request->segments)."]"); } public function sendFile($file) { header('Content-type: application/xml; charset="utf-8"'); echo file_get_contents(APP_PATH_SCHEMA . '/wsdl/' . $file); } public function wsdlXmlInterfacesAction() { $wsdlUri = Request::getHostUri() . "/wfs-data.php?wsdl"; $wsdlServiceName = "WFS-" . Request::getHostUri();// WFS-www.myservice.com $serviceUrlBase = Request::getPathUri() . "wfs-data.php/wsdl"; $staticWsdlUrlBase = Request::getPathUri() . "schema/wsdl"; $soapBinding = false; $httpBinding = true; $kvpBinding = false; header('Content-type: application/xml; charset="utf-8"'); echo '' . "\n"; ?> urn:opengis:spec:wfs:wsdl-1.1:interfaces:2.0.2 2008-08-31 This is the the normative abstract service interface definition for the OpenGIS Web Feature Service, v2.0.2. The WSDL 1.1 syntax is used to describe the interface signatures and message structures. Convenience schema that defines all common WFS message elements. ' . "\n"; ?> HTTP/1.1 protocol bindings for WFS interfaces. 2008-08-31 wfs interface bound to the HTTP/1.1 POST method. ' . "\n"; ?> 2008-08-31 This WSDL document defines the service-specific properties of a MyService WFS implementation; it specifies available endpoints and alternative bindings. A WFS-2.0 implementation. Includes alternative SOAP bindings for the WFS interfaces. Test WSDL 2.0