Как я могу создать конечную точку в BaseX, используя выражения FLOWER? - PullRequest
0 голосов
/ 16 января 2020

У меня уже есть конечная точка, которая создает файл xml и сохраняет его в базе данных

declare %updating
 %rest:path("/worten")
 %rest:POST("{$body}")
 function page:worten($body) {
 file:write("wortenData.xml",$body),
 db:create('pricesWorten', 'wortenData.xml', "./"),
 update:output('Update Successful')
};

Вывод файла XML:

<json type="array">
  <_ type="object">
    <referencia>https://www.fnac.pt/Samsung-Galaxy-S10-G975FZ-128GB-Verde-Telemovel-SmartPhone-Android/a6587862</referencia>
    <imagem>https://static.fnac-static.com/multimedia/Images/PT/NR/ab/5c/4d/5069995/1545-1.jpg</imagem>
    <nome>Samsung Galaxy S10+</nome>
    <caracteristicas>G975FZ  128GB  Verde</caracteristicas>
    <marca>SAMSUNG</marca>
    <preco>1029,99</preco>
    <dataExtracao>16/01/2020</dataExtracao>
  </_>
</json>

I´ мы сделали следующее выражение FLOWER, чтобы изменить XML. Как я могу включить его в конечную точку?

<m:telemoveis xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:m="http://www.projetoPei.com/Main" xsi:schemaLocation="http://www.projetoPei.com/Main Main.xsd">{
for $x in doc('WortenData.xml')/json/_
return 
  <telemovel>
    <referencia>{ data($x/referencia)} </referencia>
    <imagem>{ data($x/imagem)}</imagem>
    <nome>{data($x/nome)}</nome>
    <caracteristicas>{ data($x/caracteristicas)}</caracteristicas>
    <marca>{ data($x/marca)}</marca>
    <preco>{ data($x/preco)}</preco>
   <dataExtracao>{ data($x/dataExtracao)}</dataExtracao>
  </telemovel>

}
</m:telemoveis>
...