我正在为一个相当复杂的XML文件格式编写XSD。在许多方面,XML可以包含实际的文字值或产生该值的脚本。 (想想Excel中:42
与=21+21
)XSD:可以具有简单内容或元素上下文的复杂类型
例如,指定大小,它应该是有效的写以下任一操作:
<size>42</size>
<size><script>2*21</script></size>
我首先想到的是用<choice>
成实现一个int或size
元素中的脚本。然而,那么我将不得不给这个字符串元素一个名字,导致一个笨拙的语法,如<size><value>42</value></size>
。由于文字将比脚本使用得多,我不想夸大他们的语法。
任何想法如何在XSD中表示初始语法?
我接受此答案,因为它显示最佳选项。但是,如果不使用混合内容来牺牲控制权,就不可能获得我想要的确切语法。我终于选择了size元素的两个版本,每个版本都有不同的名称。 – 2012-04-21 10:14:22