Я что-то упускаю, но не уверен, что. Я использую BaseX и Http-сервер для передачи REST GET в XML, который я хранил в данных, который выглядит следующим образом.
<?xml version="1.0" encoding="utf-8"?>
<CarParkDataImport xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.transportdirect.info/carparking B:/CODE/carparks/CarParking.xsd" xmlns="http://www.transportdirect.info/carparking">
<CarPark>
<CarParkRef>3</CarParkRef>
<CarParkName>Nunnery Lane</CarParkName>
<Location>York</Location>
<Address>Nunnery Lane--York--North Yorkshire</Address>
<Postcode>YO23 1AA</Postcode>
<Notes>Open 24 hours. Park and pay by phone in this car park by calling 01904 279279. The location number for this car park is 7709. Blue badge holders can park free for as long as they want. CCTV & toilets. Permit parking available.</Notes>
<Telephone>01904551309</Telephone>
<URL>http://www.york.gov.uk/transport/Parking/Car_parks/nunnery_ln/</URL>
</CarPark>
</CarParkDataImport>
теперь у меня есть 2 Xqueries, которые я сохранил на HTTP-сервере для запроса
(: XQuery file: location.xq :)
declare default element namespace "http://www.transportdirect.info/carparking";
declare variable $a as xs:string external;
db:open("Car_park_data")/CarParkDataImport/CarPark[Location=$a]
и
(: XQuery file: loc.xq :)
declare default element namespace "http://www.transportdirect.info/carparking";
declare variable $a as xs:string external;
for $b in db:open("Car_park_data")/CarParkDataImport/CarPark
where $b/Location = $a
return $b/.
поэтому я могу запустить свой REST http как (с изменением .xq в зависимости от того, что я запрашиваю.
http://localhost:8984/rest?run=loc.xq&$a=York
Они оба работают и возвращают все узлы в CarPark, но как мне просто вернуть выбранные узлы? Например, CarParkName, местоположение и почтовый индекс.