Have you found and opened the documentation PDF for BaseX 7.3? Looking
for the term "export" should give you some hints.

Best,
Christian



On Fri, Feb 2, 2018 at 1:36 PM, Bang Pham Huu
<b.pham...@jacobs-university.de> wrote:
> Hi Christian,
>
> I'd do as your suggestion, but I'm stuck with how to export old database
> to XML file. I only have these files (no XML):
>
> atv.basex   atvr.basex  tbl.basex   txt.basex   txtr.basex
> atvl.basex  inf.basex   tbli.basex  txtl.basex
>
> and from your link, I tried to download BaseX GUI application
> http://files.basex.org/releases/7.3/BaseX73.jar. But this tool seems can
> open from XML file only. How can I open these .basex file and convert
> to  a XML file?
>
> Thanks,
>
>
> On 02/02/2018 12:55 PM, Christian Grün wrote:
>> Hi Bang,
>>
>> The general answer on your initial question: BaseX is
>> backward-compatible. Older databases can be opened and queried with
>> newer versions of BaseX.
>>
>> This seems to conflict with the experiences you made. But I agree with
>> Dirk: It’s difficult to understand what is going wrong in your testing
>> environment. It’s not possible to tell why a query should yield
>> results that is not contained in the data you provide.
>>
>> Maybe you could try to proceed step by step and give feedback:
>>
>> 1. Export the database with BaseX 7.3.1. Note that you cannot use all
>> the BaseX 8.x syntax with older versions of the software. Please check
>> out our documentation history to learn how to proceed [1].
>> 2. Export the same database with BaseX 8.x.
>> 3. Compare the resulting output.
>>
>> If the output of BaseX 7 and 8 differs, then:
>>
>> 4. Ensure that your database directories are really identical.
>> 5. Report back to us which output you believe is correct: If the
>> output of BaseX 7.x is wrong, it may even be due to a bug in the old
>> version, or due to some corrupt data that can successfully restored by
>> BaseX 8. If the output of BaseX 8.x is wrong, tell us what is missing.
>>
>> If the output is identical, then:
>>
>> 4. Create a new database from this data with BaseX 8.x.
>> 5. Run your query and compare the results.
>>
>> Best,
>> Christian
>>
>> [1] http://docs.basex.org/wiki/Documentation
>>
>>
>>
>>
>> On Fri, Feb 2, 2018 at 11:48 AM, Bang Pham Huu
>> <b.pham...@jacobs-university.de> wrote:
>>> What I tried to say is: I'm using input (old database) which has lot of
>>> modifications since version 7.3.1 and I could use this database for both
>>> applications (BaseX 8.6.7 and BaseX 7.3.1 on different systems). But
>>> application in 8.6.7 can export database (with some missing data),
>>> application in 7.3.1 cannot export database (error).
>>>
>>> If it is hard to understand, sorry about it. I shouldn't have asked this
>>> question if one database is queried with same queries on both version BaseX
>>> 8.6.7 and BaseX 7.3.1 could return different results.
>>>
>>> So, now, actually I couldn't provide you a valid test input ("Your input XML
>>> (using BaseX 8.6.7)") because as you saw that in exported db from an
>>> application using BaseX 8.6.7 on this olddatabase, the data is missing and
>>> you questioned about it.
>>>
>>> "The expected result and how it differs from what you expect", I'd say it
>>> should be the same from application using BaseX version 7.3.1 as my first
>>> email (it can be replaced from "\n" to " ", it is ok).
>>>
>>> I asked because I just want to confirm there was no big change from
>>> application using BaseX version 7.3.1 to application using BaseX version
>>> 8.6.7 on old database. But the outputs are different that got me confused.
>>>
>>> Thanks,
>>>
>>>
>>> On 02/02/2018 11:35 AM, Kirsten, Dirk wrote:
>>>
>>> Now I am very confused: What does “BaseX database version 7.3.1 (old
>>> database) via Java application with BaseX version 8.6.7.” even mean? How can
>>> you access a newer BaseX version with some older BaseX version? Sorry, but
>>> this doesn’t make any sense to me.
>>>
>>> Could you please simple open the BaseX GUI and open your database and run
>>> the XQuery?
>>>
>>>
>>>
>>> Also, as I said I think it doesn’t make any sense to focus on this old
>>> database version anymore. Keep in mind that BaseX 7.3 is (I had to look this
>>> up…) from June 2012 and hasn’t been supported for years.
>>>
>>>
>>>
>>> So, to move on from this, you need to provide the following (in general) for
>>> people to be able to help you:
>>>
>>>
>>>
>>> -      Your input XML (using BaseX 8.6.7)
>>>
>>> -      You query (you already showed this, so not needed anymore)
>>>
>>> -      The actual result (you already showed this, so nothing to do)
>>>
>>> -      The expected result and how it differs from what you expect
>>>
>>>
>>>
>>> Cheers
>>>
>>> Dirk
>>>
>>>
>>>
>>> Von: Bang Pham Huu [mailto:b.pham...@jacobs-university.de]
>>> Gesendet: Freitag, 2. Februar 2018 11:19
>>> An: Kirsten, Dirk <dirk.kirs...@senacor.com>;
>>> basex-talk@mailman.uni-konstanz.de
>>> Betreff: Re: AW: AW: [basex-talk] Big Surprise from outputs in version 7.3.1
>>> and 8.6.7 ?
>>>
>>>
>>>
>>> Thanks for your detail answer.
>>>
>>> What I gave to you is an exported output of BaseX database version 7.3.1
>>> (old database) via Java application with BaseX version 8.6.7. I tried to
>>> export with BaseX version 7.3.1 with same db:export() XQuery, but it returns
>>> error
>>>
>>> db:export("userdb", "/home/mascalan/", map { 'method': 'xml' })
>>> Error when querying BaseX database 'Failed at querying the database, detail:
>>> Stopped at line 1, column 45: [XPST0003] Invalid key, simple expression
>>> expected. Check collection name and version are valid first.'.
>>>
>>> I think if I could export to you the XML of old database by BaseX version
>>> 7.3.1, you could see the
>>> http://localhost:8080/def/crs/OGC/0/_Temporal_template in the XML file which
>>> BaseX version 8.6.7 couldn't find to export (?)
>>>
>>>
>>>
>>> On 02/02/2018 11:02 AM, Kirsten, Dirk wrote:
>>>
>>> Hi,
>>>
>>>
>>>
>>> well, the XQuery might be the same, but because you certainly use different
>>> BaseX instances they might use different properties (i.e. point to a
>>> different BaseX storage). At least for the examples you provide here it
>>> simply doesn’t add up. To make it clear: You say the result on the right is
>>> with the old BaseX version. One of the results is the string
>>> http://localhost:8080/def/crs/OGC/0/_Temporal_template. However, the string
>>> does simply not appear in your input XML. So, where does the difference come
>>> from?
>>>
>>>
>>>
>>> Maybe it would be easier to simply forget about the old version and instead
>>> you could describe what results you are missing from the 8.6.7 vcersion?
>>> (you said data is missing)? I can hardly imagine that something is really
>>> missing in this case.
>>>
>>>
>>>
>>> However, what certainly has improved (and thus: changed) with BaseX 8 (I
>>> think) is the serialization. It uses the adaptive serialization by default,
>>> which uses newlines as separators when serialiazing. However, you can switch
>>> to any other serialization method quite easily and use the old default xml
>>> by issueing “declare option output:method “xml”; in the query prolog.
>>>
>>>
>>>
>>> Cheers
>>>
>>> Dirk
>>>
>>>
>>>
>>> Von: Bang Pham Huu [mailto:b.pham...@jacobs-university.de]
>>> Gesendet: Freitag, 2. Februar 2018 10:08
>>> An: Kirsten, Dirk <dirk.kirs...@senacor.com>;
>>> basex-talk@mailman.uni-konstanz.de
>>> Betreff: Re: AW: [basex-talk] Big Surprise from outputs in version 7.3.1 and
>>> 8.6.7 ?
>>>
>>>
>>>
>>> Yes, I'm sure I tested with old database from version 7.3.1 for both
>>> versions (7.3.1 and 8.6.7). Please see the exported XML from this database
>>> here: https://pastebin.com/ZjkFrE7B
>>>
>>> with this XQuery: db:export("userdb", "./userdb", map { 'method': 'xml' })
>>>
>>> At least I can see that query in version 7.3.1 doesn't return "new line
>>> character \n" as in 8.6.7 but an empty space " ".
>>>
>>> Thanks,
>>>
>>>
>>>
>>> On 02/02/2018 09:46 AM, Kirsten, Dirk wrote:
>>>
>>> Hallo,
>>>
>>> are you sure you are querying the same collection? I am quite confused by
>>> your different outputs, because they seem to have not much in common (the
>>> results on the left almost exclusively return URIs pointing to opengis.net
>>> and the one on the right to localhost:8080?
>>>
>>> If you are sure it would most certainly be helpful if you provide the input
>>> XML.
>>>
>>> Also, looking at your query I don't really get why you write it that way,
>>> e.g. "for $i in $x return $i" is identical as simply "$x"...
>>>
>>> Cheers
>>> Dirk
>>>
>>>
>>>
>>>
>>> Senacor Technologies Aktiengesellschaft - Sitz: Eschborn - Amtsgericht
>>> Frankfurt am Main - Reg.-Nr.: HRB 105546
>>> Vorstand: Matthias Tomann, Marcus Purzer - Aufsichtsratsvorsitzender: Daniel
>>> Grözinger
>>>
>>> -----Ursprüngliche Nachricht-----
>>> Von: basex-talk-boun...@mailman.uni-konstanz.de
>>> [mailto:basex-talk-boun...@mailman.uni-konstanz.de] Im Auftrag von Bang Pham
>>> Huu
>>> Gesendet: Freitag, 2. Februar 2018 08:45
>>> An: basex-talk@mailman.uni-konstanz.de
>>> Betreff: [basex-talk] Big Surprise from outputs in version 7.3.1 and 8.6.7 ?
>>>
>>> Hello,
>>>
>>> I've been using BaseX to query an XML file in version 7.3.1 and it worked
>>> well. However, because of this problem
>>> https://www.mail-archive.com/basex-talk@mailman.uni-konstanz.de/msg10241.html
>>> and I was suggested to use version 8.6.7 then I changed to use this version
>>> in a Java Web application which queries the old BaseX files from version
>>> 7.3.1.
>>>
>>> However, I didn't know that this version changes created a very surprise
>>> result between version 7.3.1 and 8.6.7 (i.e: data is missing in version
>>> 8.6.7 from output result !!!).
>>>
>>> Could someone tell me why it happens and how to use BaseX version 8.6.7 on
>>> BaseX database from version 7.3.1.
>>>
>>> Here is the difference between 2 outputs on same old BaseX database version
>>> 7.3.1 (left: 8.6.7, right: 7.3.1) with same XQuery:
>>> https://www.diffchecker.com/iCgLhRUx
>>>
>>> The XQuery is:
>>>
>>>  declare namespace gml = "http://www.opengis.net/gml/3.2";;
>>>  declare function local:get-children() {
>>>  let $x := collection('userdb')//gml:identifier/text()
>>>  return
>>>       if (exists($x)) then
>>>            for $i in $x
>>>                 return $i
>>>       else <empty/>
>>>  };
>>>
>>>   let $x := distinct-values(local:get-children())
>>>   for $i in $x return $i
>>>
>>> Thanks,
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>
>

Reply via email to