我正在为动画设计一个简单的 XML文件.我经常遇到这种情况,我写的是这样的: frame image./image1.pngimage//frameframe image./image2.pngimage//frameframe image./image3.pngimage//frame... 现在,这当然会让人烦恼
<frame> <image>./image1.png<image/> </frame> <frame> <image>./image2.png<image/> </frame> <frame> <image>./image3.png<image/> </frame> ...
现在,这当然会让人烦恼.所以我想我会允许这样:
<frameset min=1 max=5> <image>./image#.png<image/> </frameset>
使#为占位符的变量.
我想知道的是:已经有一种标准化的做法吗?
如果使用人们习惯的方法,它会让事情变得更容易.
谢谢!
没有通用模型,但您正在寻找的本质上是一个模板解决方案 – 模板语言和模板评估引擎,通过执行模板中嵌入的代码将模板转换为最终XML.因此,对于模型,您可以使用您熟悉的任何模板语言.
当然,最好的方法是利用现有的模板引擎解决方案,如果您可以访问一个;所以你不必写一个.例如. JSP for Java,EmbPerl for Perl,XSLT等……
以下是示例EmbPerl模板的样子:
[$foreach my $i (1..5) $] <frame> <image>./image[+$i+].png<image/> </frame> [$endforeach $]
许多模板解决方案看起来非常相似,标记略有不同,逻辑语法明显不同(Perl vs. Java vs. xxx)
如果你使用自制软件解决方案,模板语言当然可以是XML本身,类似于
<frameset min=1 max=5> <image part=1 conent_type="constant">./image<image/> <image part=2 conent_type="iterator_value"><image/> <image part=3 conent_type="constant">.png<image/> </frameset>