新书推介:《语义网技术体系》
作者:瞿裕忠,胡伟,程龚
   >>中国XML论坛<<     W3CHINA.ORG讨论区     计算机科学论坛     SOAChina论坛     Blog     开放翻译计划     新浪微博  
 
  • 首页
  • 登录
  • 注册
  • 软件下载
  • 资料下载
  • 核心成员
  • 帮助
  •   Add to Google

    >> DTD, XML Schema(XMLS), RELAX NG
    [返回] 中文XML论坛 - 专业的XML技术讨论区XML.ORG.CN讨论区 - XML技术『 DTD/XML Schema 』 → Schema 类型定义~(简单) 查看新帖用户列表

      发表一个新主题  发表一个新投票  回复主题  (订阅本版) 您是本帖的第 6472 个阅读者浏览上一篇主题  刷新本主题   树形显示贴子 浏览下一篇主题
     * 贴子主题: Schema 类型定义~(简单) 举报  打印  推荐  IE收藏夹 
       本主题类别:     
     boaboa 帅哥哟,离线,有人找我吗?
      
      
      等级:大一新生
      文章:1
      积分:54
      门派:XML.ORG.CN
      注册:2007/9/11

    姓名:(无权查看)
    城市:(无权查看)
    院校:(无权查看)
    给boaboa发送一个短消息 把boaboa加入好友 查看boaboa的个人资料 搜索boaboa在『 DTD/XML Schema 』的所有贴子 引用回复这个贴子 回复这个贴子 查看boaboa的博客楼主
    发贴心情 Schema 类型定义~(简单)

    Schema
    1<xs:elemetn name="comment" type="xs:string"/>

    2<xs:elemetn name="comment" type="string"/>

    声明内置数据类型时用哪种?什么情况下用1?  什么情况下用2?

    帮助下新手吧.......刚学XML的


       收藏   分享  
    顶(0)
      




    点击查看用户来源及管理<br>发贴IP:*.*.*.* 2007/9/11 21:18:00
     
     PrimoJin 帅哥哟,离线,有人找我吗?水瓶座1984-1-29
      
      
      等级:大一(猛啃高等数学)
      文章:8
      积分:126
      门派:XML.ORG.CN
      注册:2007/10/9

    姓名:(无权查看)
    城市:(无权查看)
    院校:(无权查看)
    给PrimoJin发送一个短消息 把PrimoJin加入好友 查看PrimoJin的个人资料 搜索PrimoJin在『 DTD/XML Schema 』的所有贴子 引用回复这个贴子 回复这个贴子 查看PrimoJin的博客2
    发贴心情 
    首先声明,我也是新手,我估计这里的高手太多了。可能不愿意回答像咱们这样新手的问题
    ^_^那我就用这两天学到的知识给你解释下!
    这个问题应该归结到名称空间的相关问题上,首先,你要了解下XMLSchema的名称空间,如下
    <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
    xmlns:xbe2="http://www.w3school.com"
    targetNamespace="http://www.w3school.com"
    elementFormDefault="qualified" attributeFormDefault="unqualified">
    第一个就是声明了名称空间没有什么好讲的了
    xmln:xbe2:讲xbe2前缀与"http://www.w3school.com"名称空间联系起来(个人感觉理解到这里就可以了,如果要是像深入了解名称空间的知识那你就取看看XML名称空间介绍的语法吧)
    targetNamespace是该模式使用的名称空间。这个属性与xmlns:xbe2的作用是不一样的,xmlns:xbe2是将前缀和名称空间联系起来。
    elementFormDefault和attributeFormDefault分别控制本地元素和属性是否需要带有名称空间前缀。可以接受的值包括unqualified(本地元素不带有名称空间前缀)和qualified(本地元素必需带有名称空间前缀)。
    备注:如果你对“本地元素”和"全局元素"不太理解的话,可以忽略掉这几个字,因为对你的这个问题没有太大的关联。
    其次,我认为你的提议不太合理,而且你的提议过于极端化,非常之不利于举例说明。
    如果你要是这么写的话,你可以选择2来书写
    <schema  >
    <element name="ENTER_NAME_OF_ROOT_ELEMENT_HERE" type="string">
    <annotation>
    <documentation>Comment describing your root element</documentation>
    </annotation>
    </element>
    </schema>
    你对schema没有名称空间的引用的话你就可以不用加“xs”前缀了
    如果这样
    <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified">
    <xs:element name="ENTER_NAME_OF_ROOT_ELEMENT_HERE" type="xs:string">
      <xs:annotation>
       <xs:documentation>Comment describing your root element</xs:documentation>
      </xs:annotation>
     </xs:element>
    </xs:schema>
    你对schema加了名称空间你就不能省略“xs”。你就的选择1了。
    但是。如果按照上面这样为了省略“xs”前缀就把schema的名称空间给省略了,那是不科学也不合理的。
    为什么呢 ?
    因为string应该算是系统自带的类型说明了(这里感觉说的不太规范,但是我的本意就是这个不是自己创建的类型)。你要是不加前缀的话,怎么能区分这个是你自己创建的类型说明还是系统自带的类型说明呢?
    <xs:simpleType name="states-provinces">
      <xs:restriction base="xs:string">
       <xs:enumeration value="OH"/>
       <xs:enumeration value="OK"/>
       <xs:enumeration value="ON"/>
       <xs:enumeration value="OR"/>
      </xs:restriction>
     </xs:simpleType>
     <xs:complexType name="address-details">
      <xs:sequence>
       <xs:element name="street" type="xs:string"/>
       <xs:element name="region" type="states-provinces" minOccurs="0"/>
       <xs:element name="postal-code" type="xs:string"/>
       <xs:element name="locality" type="xs:string"/>
       <xs:element name="country" type="xs:string"/>
      </xs:sequence>
      <xs:attribute name="preferred" type="xs:boolean" default="true"/>
     </xs:complexType>
    其中<xs:element name="region" type="states-provinces" minOccurs="0"/>
    的type就是自己定义的。它就没有加名称空间(当然,如果你按照前面介绍的名称空间说明也是可以添加前缀的)。
    建议楼主应该和我一样静下心来,从基础看起。:-)
    点击查看用户来源及管理<br>发贴IP:*.*.*.* 2007/10/11 9:48:00
     
     GoogleAdSense水瓶座1984-1-29
      
      
      等级:大一新生
      文章:1
      积分:50
      门派:无门无派
      院校:未填写
      注册:2007-01-01
    给Google AdSense发送一个短消息 把Google AdSense加入好友 查看Google AdSense的个人资料 搜索Google AdSense在『 DTD/XML Schema 』的所有贴子 访问Google AdSense的主页 引用回复这个贴子 回复这个贴子 查看Google AdSense的博客广告
    2024/5/3 1:26:11

    本主题贴数2,分页: [1]

    管理选项修改tag | 锁定 | 解锁 | 提升 | 删除 | 移动 | 固顶 | 总固顶 | 奖励 | 惩罚 | 发布公告
    W3C Contributing Supporter! W 3 C h i n a ( since 2003 ) 旗 下 站 点
    苏ICP备05006046号《全国人大常委会关于维护互联网安全的决定》《计算机信息网络国际联网安全保护管理办法》
    2,623.047ms