代码之家  ›  专栏  ›  技术社区  ›  Bill H

有人介意看看我的XML结构吗?

  •  2
  • Bill H  · 技术社区  · 16 年前

    我对这方面还比较陌生,但我希望有人能对我整理的XML结构提出一个很好的批评。我不是在寻找任何深入的东西,而是如果有人注意到任何固有的结构错误(或任何提示,使它更好),我会非常感激。

    我们有大量的产品,我们批发出去,我们的客户正在寻找一个数据源,将我们的产品纳入他们的网站。

    <product modified="">
        <id></id>
        <title></title>
        <description></description>
        <upc></upc>
        <quantity></quantity>
        <images>
            <image width="" height=""></image>
            <image width="" height=""></image>
            <image width="" height=""></image>
        </images>
        <category>
            <name></name>
            <subcategory></subcategory>
        </category>     
        <sale expiration="">yes</sale>
        <msrp></msrp>               
        <cube></cube>
        <weight></weight>
        <pricing>
            <tier>
                <pack><pack>
                <price></price>
            </tier>
            <tier>
                <pack><pack>
                <price></price>
            </tier>         
            <tier>
                <pack><pack>
                <price></price>
            </tier>
        </pricing>
    </product>
    

    我们销售3种不同的包装尺寸,因此定价节点。

    3 回复  |  直到 16 年前
        1
  •  1
  •   Robert Rossney    16 年前
    1. 我不清楚您是否一直使用子元素来表示一对多关系。如果一个产品可以有多个类别,那么很好,但是如果它只能有一个类别,那么最好使用一个名为 categoryName categorySubcategory . 否则,某个地方的人会误解XML的语义,您将有一个问题需要解决,如果您保持一致,就不会出现这个问题。

    2. 说到这里,当你需要在标签名中使用多个单词时,你应该有一个计划。

    3. image 元素 width height 属性,因为这就是它们在HTML中的表示方式。只有在整个设计中使用HTML约定时,我才会复制它们。我不知道为什么 sale expiration 属性。

    4. 说到这个 销售 true false . (你也可以使用 1 0

    XML设计中的一致性比可读性有100倍的价值。如果您有一致的XML,您可以将它转换成可读的形式;事实并非如此。

        2
  •  0
  •   Lars Andren    16 年前

    <pack> <price> 可能是 <tier> <第> 并拥有 <包装> <价格> 作为的属性 <pricing>

    <tier pack="some-pack" price="some-price" />
    

    <pricing pack="big-pack" price="high-price" />
    

        3
  •  0
  •   anatoly techtonik Tony    16 年前

    如果移动所有属性(即/ modified , width , height expiration protocol buffers 作为数据的替代格式,纯XML结构将允许自动进行转换。如果您有几十种不同的XML格式(可能会时不时地发生变化),这将是一种解脱。很少有人阅读XML并手动从中提取信息,因此完全没有必要将XML之美放在首位。

    推荐文章