加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

如何设计在xml中存储复杂对象设置

发布时间:2020-12-16 07:57:54 所属栏目:百科 来源:网络整理
导读:我试图在对象本身上存储每个对象状态的自定义设置,但我不知道如何以面向对象的方式执行此操作.所以: xml文件中的一个部分是: ObjectType 可以是Blur,Sharpen,Smooth等. 但是说Blur只有在类型为Blur时才存储其他属性,例如: BlurTypeGaussian,Smart,etc/Blu
我试图在对象本身上存储每个对象状态的自定义设置,但我不知道如何以面向对象的方式执行此操作.所以:

xml文件中的一个部分是:

<ObjectType>

可以是Blur,Sharpen,Smooth等.

但是说Blur只有在类型为Blur时才存储其他属性,例如:

<BlurType>Gaussian,Smart,etc</BlurType>

此外,我不确定是否应将这些存储为:

<a>something</a>

要么

<a>Type=something</a>
永远不要在XML中存储分隔数据.

也就是说,永远不会有一个元素包含逗号分隔值列表,或等号分隔值,或类似的东西. XML为您提供了创建列表的机制,如果您计划使用它,则不应重新发明.

存储像你正在谈论的列表的“XML方式”是这样的:

<BlurType>
  <option>Gaussian</option>
  <option>Smart</option>
  ...
</BlurType>

或者,如果您有一组可以打开或关闭的特定值,

<BlurType>
  <Gaussian>true</Gaussian>
  <Smart>true</Smart>
  ...
</BlurType>

第二种方法可以比第一种方法更严格地验证XSD.第一种是更灵活.你不希望在XML中的任何地方存储类型=某些东西.两者之间的中间地带将如下工作:

<BlurType>
  <option name="Gaussian">true</option>
  <option name="Smart">true</option>
  ...
</BlurType>

这提供了灵活性,同时您可以针对XSD或DTD验证name属性和选项元素的值.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读