Hi Daniel,
Even if it is indirect, you have solved my problem. As I read you, I
quickly reinstalled BaseX to see if the problem could be with version
10.4. And re-importing my database made me pay attention to a little
"Use internal XML parser" checkbox in the import dialog. If I check
it, everything suddenly starts working properly. I tried again with
the 10.4 and it's really this checkbox that makes the difference. I
don't realise what impact this might have, but I can get on with my
work.
A huge thank you.
Virgile Reignier
"Zimmel, Daniel" <d.zim...@esvmedien.de> a écrit :
While this may not solve your problem, I can confirm that your files
import just fine with BaseX 10.3 GUI on my Windows machine.
There is a checkbox in the import dialog "Use XInclude", but it
works regardless whether the I check or uncheck the box.
-----Ursprüngliche Nachricht-----
Von: BaseX-Talk <basex-talk-boun...@mailman.uni-konstanz.de> Im
Auftrag von Virgile Reignier
Gesendet: Dienstag, 14. März 2023 18:55
An: basex-talk@mailman.uni-konstanz.de
Betreff: [basex-talk] Problem with using XInclude in BaseX
Bonjour,
Je me permets de vous contacter dans le cadre de mon doctorat en
histoire médiévale. Je souhaiterai en effet organiser le
dépouillement de mes archives à l'aide d'une base de données en XML
en utilisant le logiciel BaseX, mais je suis face à une difficulté
que je n'arrive pas à surmonter dans son utilisation. Cette
difficulté est liée à l'utilisation de la balise <xi:include>.
J'ai tenté de produire un exemple minimaliste avec deux fichiers
dans un même répertoire pour voir ce qui ne marche pas :
file music.xml :
<musique xmlns:xi="http://www.w3.org/2001/XInclude">
<titre>Smoke on the water</titre>
<artiste>Deep Purple</artiste>
<xi:include href="label.xml"/>
</musique>
file label.xml :
<label>Purple Records</label>
Alors que ces deux fichiers sont décrits comme valides par Oxygen,
l'importation du fichier music.xml avec BaseX (que ce soit avec
l'interface DBA ou l'interface GUI) génère systématiquement l'erreur
suivante : "An include with href 'label.xml'failed, and no fallback
element was found". Je peux en revanche importer le fichier dans la
base de données via Oxygen et l'utilisation du WebDAV de BaseX, mais
le fichier est alors indiqué comme étant de type "binary" et est
absolument inemployable pour réaliser des requêtes.
J'ai pourtant tenté de réaliser la requête suivante au sein de ma DB
dans BaseX GUI, ce qui n'a pas renvoyé d'erreurs :
declare namespace xi = "http://www.w3.org/2001/XInclude";
xi:include
J'ai également tenté de charger ces mêmes fichiers dans eXist DB, et
l'inclusion s'est réalisée sans problèmes. Je ne comprends donc pas
ce qui ne va pas avec l'utilisation de XInclude dans BaseX. Est-ce
qu'il y a un problème avec la résolution des URI ?
Je travaille sous Windows 10 (j'ai aussi fait des tests sur Ubuntu
et obtenu le même résultat), BaseX 10.4 et Java 1.8.0_361.
Est-ce que c'est quelque chose qui vous est déjà arrivé ? J'ai
essayé de chercher dans les archives mail de basex-talk et trouvé
quelques problèmes similaires, mais qui ont été résolus par l'emploi
de BaseX GUI. Or chez moi cela marche aussi mal avec GUI qu'avec
DBA. Je peux transférer mon travail sur eXist DB, mais j'avoue
m'être assez familiarisé avec BaseX et souhaiterai rester sur ce
logiciel tant que possible. Je suis donc preneur de toutes vos
propositions.
En vous remerciant par avance pour vos réponses,
Bien cordialement,
Virgile Reignier
Hello,
I am contacting you as part of my PhD in medieval history. I would
like to organise the analysis of my archives with the help of an XML
database using the BaseX software, but I am encountering a
difficulty that I cannot overcome in its use. This difficulty is
related to the use of the <xi:include> tag.
I tried to produce a minimalist example with two files in the same
directory to see what goes wrong:
file music.xml :
<musique xmlns:xi="http://www.w3.org/2001/XInclude">
<titre>Smoke on the water</titre>
<artiste>Deep Purple</artiste>
<xi:include href="label.xml"/>
</musique>
file label.xml :
<label>Purple Records</label>
While both files are described as valid by Oxygen, importing the
music.xml file with BaseX (either with the DBA interface or the GUI
interface) consistently generates the following error: "An include
with href 'label.xml'failed, and no fallback element was found". I
can import the file into the database via Oxygen and the use of
BaseX WebDAV, but the file is then indicated as being of type
"binary" and is absolutely unusable for queries.
However, I tried to perform the following query within my DB in
BaseX GUI, which did not return any errors:
declare namespace xi = "http://www.w3.org/2001/XInclude";
xi:include
I also tried to load these same files into eXist DB, and the
inclusion was successful. So I don't understand what is wrong with
using XInclude in BaseX. Is there a problem with URI resolution?
I'm working on Windows 10 (I also tested on Ubuntu and got the same
result), BaseX 10.4 and Java 1.8.0_361.
Is this something that has happened to you before? I tried to search
the basex-talk mail archives and found some similar problems, but
they were solved by using BaseX GUI. However, in my case it works
just as badly with GUI as with DBA. I can transfer my work to eXist
DB, but I have become quite familiar with BaseX and would like to
stay with it as long as possible. I am therefore interested in any
suggestions you may have.
Thank you in advance for your answers,
Virgile Reignier