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