我正在使用clojure.data.xml
0.2.0-alpha6将两个SVG文档合并成一个新的文档。
在这个过程中,我创建了一些新的元素。
我认为我按照c.d.xml README中的说明正确使用了命名空间;例如
(alias-uri 'svg "http://www.w3.org/2000/svg")
(element ::svg/svg {}
(element ::svg/g {}
(:content de)))
技术上这 works just fine,但当我使用emit-str
(或indent-str
)将新文档(根元素)输出为字符串时
的命名空间被分配了一个别名,并且这个别名被用于
整个文档中的所有元素;例如
<a:svg xmlns:a="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 1748 1740">
<a:g>...
在这个例子中,这个别名不是必须的,因为文档中的所有元素都属于
同一个命名空间,因此它可以是默认命名空间。换句话说,我希望输出看起来像这样
或者,如果不能这样,我希望别名是svg
而不是a
,像这样
<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 1748 1740">
<g>...
是否有人知道是否可以通过current
<svg:svg xmlns:svg="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 1748 1740">
<svg:g>...
clojure.data.xml的当前版本简单容易地实现这两种情况中的任何一种?
我已经尝试显式地向根元素添加xmlns
属性——这在0.0.8版本中有效,但在0.2.0-alpha6中不可行;有奇怪的事情发生。
我提问这个问题的原因是因为
我很好奇
- 如果current
- 这不是0.2.0版本中能够实现的,我希望将其变为一个功能请求。
谢谢!