我应该在XML模式中使用分组特定元素吗?

时间:2013-06-11 01:59:37

标签: xml schema grouping nested

我正在尝试为跨部门数据库构建基于XML的数据定义。在模式中使用分组元素时,我无法分辨优缺点,或者是否存在最佳实践。它增加了一层额外的嵌套,但似乎也有助于在视觉上打破局面。例如:

<Experiment>
  .
  .
  .
  <Samples>
    <Sample>
      <Name>First Sample</Name>
      <Reviewed/>
      <Total/>
      <OrderNumber/>
    </Sample>
    <Sample>
      <Name>Second Sample</Name>
      <Reviewed/>
      <Total/>
      <OrderNumber/>
    </Sample>
  </Samples>
</Experiment>

与(没有分组):

<Experiment>
  .
  .
  .
  <Sample>
    <Name>First Sample</Name>
    <Reviewed/>
    <Total/>
    <OrderNumber/>
  </Sample>
  <Sample>
    <Name>Second Sample</Name>
    <Reviewed/>
    <Total/>
    <OrderNumber/>
  </Sample>
</Experiment>

任何偏好或最佳做法?

1 个答案:

答案 0 :(得分:1)

很难对此提供一般性建议。额外的包装层有时会使处理更容易 - 或者无论如何,某种处理;但是如果你过度使用它,XML就会变得非常嵌套,变得无法管理。与所有此类决策一样,有时极端位置(总是添加包装器,从不添加包装器)会产生最坏的结果。包装器最有用的一些情况:(a)如果有与组关联的属性,(b)如果有多个组具有相同的父元素。