你怎么跟你奶奶说明什么是XML?

zz北邮人论坛

发信人: wks (cloverprince), 信区: WWWTechnology 

标  题: 你怎么跟你奶奶说明什么是XML? 
发信站: 北邮人论坛 (Thu Aug 25 13:57:06 2011), 站内 
  
我觉得XML真的不难啊。不就这么一点点东西嘛,但是真难跟没接触过的人说明白。 
  
方案1: 
  
XML节点是如下定义的: 
1. 字符串是XML节点。 
2. 元素是XML节点。一个元素包含一个由字符组成的名称,若干个属性,和若干个子节点。每个属性是一对字符串,每个子节点都是XML节点。 
由以上两种XML节点有限组合起来,就得到了一篇XML文档。 
  
奶奶似乎想再听一遍。但是我说了好几遍,她也没有全部记住,而且总是混淆几个概念。 
  
方案2: 
  
看: 
<?xml version="1.0" ?> 
<person> 
   <name>wks</name> 
   <nick>cloverprince</nick> 
   <sex>m</sex> 
   <phone primary="true">13555555555</phone> 
   <phone>15888888888</phone> 
   <phone>010-88118811<phone> 
</person> 
这就是个XML。它里面有很多像<name>xxx</name>一样的标签。 
  
奶奶问: 
all <your> base <are> belong </to> </us>是XML吗? 
我说元素要匹配,她似乎需要花一些时间来理解匹配的意义。 
  
方案3: 
  
我想写个电话本。我这样写: 
“wks是男人,它的电话号码是13555555555”,可是计算机不好处理自然语言的句子。于是我改成比较规范的格式 
“wks 男 13555555555” 
可是,万一这个人有很多电话号码呢? 
“wks 男 13555555555 13666666666 137777 13888888” 
如果里面还有地址呢? 
“wks 男 北京邮电大学 1333333 1444444 155555 166666” 
可是万一外国人名字有空格呢? 
“John Smith 男 Stanford University 1-23-4567 8-90-1234” 
可是哪些是名字哪些是性别哪些是地址哪些是电话呢?万一地址不是必须的呢? 
  
所以有人发明了一种规范的格式 
<person> 
   <name>John Smith</name> 
   <sex>M</sex> 
   <address>Stanford University</address> 
   <phone>1-23-4567</phone> 
   <phone>8-90-1234</phone> 
</person> 
  
奶奶问,可是……可是……为什么要设计成这种奇怪的格式呢? 
我回答,如果您当初参与设计XML,您应该可以把它设计成方括号。不过,什么括号都一样,不是吗。 
  
方案4: 
一般的数据很不规范,刚才您也看到了。所以,用规范的格式,便于程序解析。也就是说,您不用自己写解析器了。别人早就帮您写好了。 
  
奶奶问,什么东西现在在使用XML呢? 
我回答,任何东西都可以啊……我是说……我是说,真的任何东西都可以,比如网页,你可以用XHTML,比如RSS,您也看到过订阅新闻吧,再比如,请您打开eclipse看看……我是说,不是运行eclipse,是打开eclipse所在的目录。嗯,好的。现在,双击那个artifacts.xml。里面存的都是eclipse的元数据呀。那个……我是说,元数据不一定要用XML的,肯能是eclipse当初开发的时候开发人员碰巧知道XML而已。如果是我我就用YAML了。 
  
奶奶似乎手脚不是很灵活,我还要继续耐心地等一等。 
  
方案5: 
  
我想说说现在Web技术的发展,但是奶奶似乎有点累了…… 
  
  
如果是你,你怎么向一个没有基础的人说明什么是XML呢?
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值