Учитывая ваш желаемый пример:
<?xml version="1.0" encoding="UTF-8"?>
<article xmlns="http://www.javaworld.com">
<title>Blah, blah, blah</title>
</article>
Это означает, что все дочерние элементы <article>
имеют то же пространство имен, что и <article>
, то есть пространства имен наследуются от родителей к детям.Это означает, что вам нужно указать jwNS
для всех ваших дочерних элементов, то есть
myElement.addContent(new Element("title", jwNS ).setText("Blah, blah, blah"));
При рендеринге вывода XML JDOM должен затем пропустить явное пространство имен из <title>
, поскольку оно наследует его от <article>
.
Используя просто new Element("title")
, вы говорите, что не хотите пространства имен в <title>
, и поэтому JDOm должен добавить явный атрибут xnmns=""
, чтобы переопределить наследованиеjwNS
пространство имен от <article>
родителя.