以文本方式查看主题

-  中文XML论坛 - 专业的XML技术讨论区  (http://bbs.xml.org.cn/index.asp)
--  『 XML基础 』  (http://bbs.xml.org.cn/list.asp?boardid=1)
----  如何定义这样的type?架构有什么区别  (http://bbs.xml.org.cn/dispbbs.asp?boardid=1&rootid=&id=6217)


--  作者:慧子
--  发布时间:3/26/2004 8:50:00 AM

--  如何定义这样的type?架构有什么区别
首先我是新手,只对xml稍加了解,谈不上多深,所以遇到问题不知从何下手,请大家帮我啊!
     我在delphi6中操作下面的xml文件很正常,文件内容如下。
<?xml version="1.0" encoding="GB2312"?>
<学生花名册>
<学生 性别 = "男">
<姓名>李华</姓名>
<年龄>14</年龄>
<电话>6287555</电话>
</学生>
<学生 性别 = "男">
<姓名>张三</姓名>
<年龄>16</年龄>
<电话>8273425</电话>
</学生>
</学生花名册>

type是这样定义的:
TStudent=class{row}
    XZQHBM:string;
    DWBM:string;
    DWMC:integer;
    end;
很顺利地将其转换为下面的文本:
男^李华^14^6287555
男^张三^16^8273425

可是我在处理下面的这个xml文件时,不知道如何定义type了,文件是这样的:
<xml xmlns:s='uuid:BDC6E3F0-6DA3-11d1-A2A3-00AA00C14882'
 xmlns:dt='uuid:C2F41010-65B3-11d1-A29F-00AA00C14882'
 xmlns:rs='urn:schemas-microsoft-com:rowset'
 xmlns:z='#RowsetSchema'>
<s:Schema id='RowsetSchema'>
 <s:ElementType name='row' content='eltOnly'>
  <s:AttributeType name='XZQHBM' rs:number='1' rs:writeunknown='true'>
   <s:datatype dt:type='string' dt:maxLength='8' rs:maybenull='false'/>
  </s:AttributeType>
  <s:AttributeType name='DWBM' rs:number='2' rs:writeunknown='true'>
   <s:datatype dt:type='string' dt:maxLength='12' rs:maybenull='false'/>
  </s:AttributeType>
  <s:AttributeType name='DWMC' rs:number='3' rs:nullable='true' rs:writeunknown='true'>
   <s:datatype dt:type='string' dt:maxLength='60'/>
  </s:AttributeType>
  <s:extends type='rs:rowbase'/>
 </s:ElementType>
</s:Schema>
<rs:data>
 <z:row XZQHBM='13032300' DWBM='101002' DWMC='人大常委会'/>
 <z:row XZQHBM='13032300' DWBM='161006' DWMC='人民法院'/>
        <z:row XZQHBM='13032300' DWBM='766002' DWMC='工商联'/>
</rs:data>
</xml>

请高手指点着两个xml文件本质上有什么区别,我该如何定义type呢?xml有版本一说吗?
为什么这两个文件架构区别这么大呢?


[此贴子已经被小鞋子于2004-3-26 11:47:42编辑过]

--  作者:likebbs
--  发布时间:3/26/2004 9:10:00 AM

--  
上面那个是 xml 的数据文件。。
下面那个是 xml 的定义文件,用的是 Schema 。。

你所说的范畴好象是自己写程序解析 xml  了。
我一般用现成的 msdom 来解析,也不懂 delphi 。:(


--  作者:慧子
--  发布时间:3/26/2004 11:44:00 AM

--  更正一下
首先我是新手,只对xml稍加了解,谈不上多深,所以遇到问题不知从何下手,请大家帮我啊!
     我在delphi6中操作下面的xml文件很正常,文件内容如下。
<?xml version="1.0" encoding="GB2312"?>
<学生花名册>
<学生 性别 = "男">
<姓名>李华</姓名>
<年龄>14</年龄>
<电话>6287555</电话>
</学生>
<学生 性别 = "男">
<姓名>张三</姓名>
<年龄>16</年龄>
<电话>8273425</电话>
</学生>
</学生花名册>

type是这样定义的:
TStudent=class{学生}
    sex:string;
    name:string;
    age:integer;
    phone:string;
    end;
很顺利地将其转换为下面的文本:
男^李华^14^6287555
男^张三^16^8273425

可是我在处理下面的这个xml文件时,不知道如何定义type了,文件是这样的:
<xml xmlns:s='uuid:BDC6E3F0-6DA3-11d1-A2A3-00AA00C14882'
xmlns:dt='uuid:C2F41010-65B3-11d1-A29F-00AA00C14882'
xmlns:rs='urn:schemas-microsoft-com:rowset'
xmlns:z='#RowsetSchema'>
<s:Schema id='RowsetSchema'>
<s:ElementType name='row' content='eltOnly'>
  <s:AttributeType name='XZQHBM' rs:number='1' rs:writeunknown='true'>
   <s:datatype dt:type='string' dt:maxLength='8' rs:maybenull='false'/>
  </s:AttributeType>
  <s:AttributeType name='DWBM' rs:number='2' rs:writeunknown='true'>
   <s:datatype dt:type='string' dt:maxLength='12' rs:maybenull='false'/>
  </s:AttributeType>
  <s:AttributeType name='DWMC' rs:number='3' rs:nullable='true' rs:writeunknown='true'>
   <s:datatype dt:type='string' dt:maxLength='60'/>
  </s:AttributeType>
  <s:extends type='rs:rowbase'/>
</s:ElementType>
</s:Schema>
<rs:data>
<z:row XZQHBM='13032300' DWBM='101002' DWMC='人大常委会'/>
<z:row XZQHBM='13032300' DWBM='161006' DWMC='人民法院'/>
        <z:row XZQHBM='13032300' DWBM='766002' DWMC='工商联'/>
</rs:data>
</xml>

请高手指点着两个xml文件本质上有什么区别,我该如何定义type呢?xml有版本一说吗?
为什么这两个文件架构区别这么大呢?


--  作者:小鞋子
--  发布时间:3/26/2004 11:48:00 AM

--  
帮你修改了标题..请以后发贴注意下标题.不然高手门会不进来的哦...呵..
W 3 C h i n a ( since 2003 ) 旗 下 站 点
苏ICP备05006046号《全国人大常委会关于维护互联网安全的决定》《计算机信息网络国际联网安全保护管理办法》
62.500ms