Мне нужно создать настольное приложение на Java 6. Программа должна иметь возможность взаимодействовать с другой системой с помощью файлов XML (отправка/получение). Каждый отдельный файл XML связан с его XSD, тегами, описывающими его содержимое, имя пользователя и статус документа. Приложение должно обеспечивать такие функции, как поиск, изменение и т. д. XML-контента.
Вопрос в том, как мне хранить всю эту информацию, сохраняя логические связи?
Мне пришла в голову идея хранить его с помощью базы данных XML - BaseX. Другими словами, хранение XML-файлов со связанной с ними информацией в одном большом XML-файле (базе данных).
Пример базы данных:
<?XML VERSION="1.0"?>
<mySampleRecord id="1">
<XMLcontent> // Content of XML file (...) </XMLcontent>
<XMLschema> // Content of XSD file (...) </XMLschema>
<tags>j2ee java xml</tags>
<username>File Owner</username>
<status>received</status>
</mySampleRecord>
<mySampleRecord id="2">
<XMLcontent> // Content of XML file (...) </XMLcontent>
<XMLschema> // Content of XSD file (...) </XMLschema>
<tags>doc xls mdb</tags>
<username>Admin</username>
<status>sent</status>
</mySampleRecord>
Мне также было интересно, возможно ли, чтобы BaseX читал узел <XMLContent>
, а затем обрабатывал его содержимое как XML, позволяя мне выполнять операции XQuery.
Надеюсь понятно ;)
Спасибо за любые подсказки и предложения.