记录联系方式对所有商务应用程序都非常重要,通过有效的 XML 结构来捕获这些信息可以简化此类数据的处理。 联系信息变化可能很大,因此应该选择 XML 。比如,有些公司和个人可能有
记录联系方式对所有商务应用程序都非常重要,通过有效的 XML 结构来捕获这些信息可以简化此类数据的处理。
联系信息变化可能很大,因此应该选择 XML 。比如,有些公司和个人可能有多个地址、电话号码和电子邮件帐户。在 XML 结构中很容易声明多个此类信息片段。
vCard 结构经常在 Internet 上用于表示联系信息,它独立于平台,很容易生成和导入不同的应用程序。它支持 XML 结构的某些灵活性,但实际上是一种基于文本的简单格式,使用声明性字段和扩展来提供信息。不同于 XML,vCard 格式是扁平文本,就是说不能直接向各种元素增加信息。电话号码是一个很好的例子,它不一定和某个地址关联,而仅仅作为记录中的另一个电话号码。
W3 联盟提出一种 vCard 格式的 XML,它采用 RDF XML 标准,以便于格式化和交换联系信息。采用 RDF 框架可以在声明过程中保留一些结构化信息。比如,RDF 标准支持使用包、序列和替代来描述数据。包支持多次声明一个对象(比如多种角色),并且可以在序列不重要时使用包。序列用于定义对象的次序,比如机构中人员角色的层次结构。替代允许从列表中选择一项,比如多个电子邮件地址。
清单 6 显示了虚拟人物 Charles Perston 的 vCard。
清单 6. Charles Perston 的 vCard
BEGIN:VCARD VERSION:3.0 N:Perston;Charles;;; FN:Charles Perston ORG:Perston Technology; EMAIL;type=INTERNET;type=WORK;type=pref:null@perston.co.uk TEL;type=WORK;type=pref:01234 567890 item1.ADR;type=WORK;type=pref:;;Perston House;Perston;Perstonshire;P1 0NS;UK item1.X-ABADR:gb X-ABUID:5AE47BB6-4E0F-4558-980C-BD3066FA6154\:ABPerson END:VCARD
采用 vCard XML 标准,可用清单 7 中的结构表示同样的信息。
清单 7. 使用 vCard XML 标准表示 Charles Perston
<vCard:vCard xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:foaf="http://xmlns.com/foaf/0.1/" vCard:version="3.0" xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#" vCard:class="PUBLIC" xmlns:vCard="x-urn:cpan:ascope:xml-generator-vcard#"> <vCard:fn>Charles Perston</vCard:fn> <vCard:n> <vCard:family>Perston</vCard:family> <vCard:given>Charles</vCard:given> </vCard:n> <vCard:adr vCard:del.type="pref;work"> <vCard:street>Perston House</vCard:street> <vCard:locality>Perston</vCard:locality> <vCard:region>Perstonshire</vCard:region> <vCard:pcode>P1 0NS</vCard:pcode> <vCard:country>UK</vCard:country> </vCard:adr> <vCard:email vCard:email.type="internet;pref;work">null@perston.co.uk </vCard:email> <vCard:org> <vCard:orgnam>Perston Technology</vCard:orgnam> </vCard:org> </vCard:vCard>
XML 格式更长,但容易理解所看的内容以及各部分之间的关系。这种格式可以了解更详细的信息和细节。比方说,很容易在地址中找到需要的国家,在标准 vCard 输出中该信息是比较隐含的。
再比如,很容易使用 XPath 或者 SAX 事件提取国家的列表,以便了解位于不同地区的联系人的数目。
以上就是XML模式-vCard结构详解的详细内容,更多请关注自由互联其它相关文章!