我试图在对象本身上存储每个对象状态的自定义设置,但我不知道如何以面向对象的方式执行此操作.所以:
xml文件中的一个部分是:
<ObjectType>
Run Code Online (Sandbox Code Playgroud)
可以是Blur, Sharpen, Smooth,等等
但是说,Blur只有在类型为的情况下才能存储其他属性Blur,例如:
<BlurType>Gaussian, Smart, etc</BlurType>
Run Code Online (Sandbox Code Playgroud)
此外,我不确定是否应将这些存储为:
<a>something</a>
Run Code Online (Sandbox Code Playgroud)
要么
<a>Type=something</a>
Run Code Online (Sandbox Code Playgroud)
也就是说,永远不要有一个包含逗号分隔值列表或等号分隔值的元素,或类似的东西.XML为您提供了创建列表的机制,如果您计划使用它,则不应重新发明.
存储像你正在谈论的列表的"XML方式"是这样的:
<BlurType>
<option>Gaussian</option>
<option>Smart</option>
...
</BlurType>
Run Code Online (Sandbox Code Playgroud)
或者,如果您有一组可以打开或关闭的特定值,
<BlurType>
<Gaussian>true</Gaussian>
<Smart>true</Smart>
...
</BlurType>
Run Code Online (Sandbox Code Playgroud)
第二种方法可以比第一种方法更严格地验证XSD.首先是更灵活.您不希望像type=somethingXML 一样存储任何内容.两者之间的中间地带将如下工作:
<BlurType>
<option name="Gaussian">true</option>
<option name="Smart">true</option>
...
</BlurType>
Run Code Online (Sandbox Code Playgroud)
这提供了灵活性,同时您可以根据XSD或DTD验证name属性和option元素的值.
| 归档时间: |
|
| 查看次数: |
356 次 |
| 最近记录: |