opml1.0规范

首先声明:这篇文章主要内容来自互联网,个人认为可以做为以后使用方便,转到本页上。部分转载。

来源blog:http://www.cnblogs.com/dandandan/archive/2006/04/16/376691.html

OPML 1.0 规范

关于本文档
本文档用于描述OPML(Outline Processor Markup Language)格式: 是一种用XML 1.0存储大纲内容的"大纲处理标记语言". "大纲"指满足这样条件的一棵树:其每个节点都有一组string类型的命名属性.

例子
"大纲"可用于规范, 法律条款, 产品计划, 演讲稿, 电影剧本, 通信录, 日记, 讨论组, 聊天系统和小说等."大纲处理器"是指使用户能读,写,识别"大纲"结构的程序.一些示例OPML文档: 播放列表, 规范, 演讲稿.

目标
OPML格式旨在为不同"大纲处理器"提供一种交换数据的方式.设计目标是简单,自描述,可扩展,人可阅读,能存储和表达很大范围内的数据,且能方便地浏览和编辑. 在版本的进化中将保持这种设计目标.一个技术人员在阅读一个网页后应该能完全理解这种格式.

这是一种开放的格式, 也就是说其他"大纲处理器"开发者和服务提供者可以为兼容Radio UserLand 或其他目的自由地使用此格式.

xml 代码
  1. OPML 1.0 规范   
  2.   
  3. 关于本文档   
  4. 本文档用于描述OPML(Outline Processor Markup Language)格式: 是一种用XML 1.0存储大纲内容的"大纲处理标记语言". "大纲"指满足这样条件的一棵树:其每个节点都有一组string类型的命名属性.   
  5.   
  6. 例子   
  7. "大纲"可用于规范, 法律条款, 产品计划, 演讲稿, 电影剧本, 通信录, 日记, 讨论组, 聊天系统和小说等."大纲处理器"是指使用户能读,写,识别"大纲"结构的程序.一些示例OPML文档: 播放列表, 规范, 演讲稿.   
  8.   
  9. 目标   
  10. OPML格式旨在为不同"大纲处理器"提供一种交换数据的方式.设计目标是简单,自描述,可扩展,人可阅读,能存储和表达很大范围内的数据,且能方便地浏览和编辑. 在版本的进化中将保持这种设计目标.一个技术人员在阅读一个网页后应该能完全理解这种格式.   
  11.   
  12. 这是一种开放的格式, 也就是说其他"大纲处理器"开发者和服务提供者可以为兼容Radio UserLand 或其他目的自由地使用此格式.   
  13.   
  14. <opml>是什么?   
  15. <opml>是一个XML元素, 仅有一个必需的属性:version; 须具有一个<head>和一个<body>元素.version属性是一个版本信息字符串, 形如x.y, 其中x,y都是数字.   
  16.   
  17. <head>是什么?    
  18. <head>包含如下所述的0个或多个属性:   
  19. <title> 文档标题.   
  20. <dateCreated> 文档创建时间.   
  21. <dateModified> 文档最后修改时间.   
  22. <ownerName> 文档拥有者.   
  23. <ownerEmail> 文档拥有者Email地址   
  24. <expansionState> 一个逗号分隔的展开行行号列表. 列表中的行号告知哪些标题(headline)是展开的. 顺序是很重要的. 如列表中的元素X, 则从头开始数X下, 那一行应该是展开的.   
  25. <vertScrollState> 是一个数字,它指示了大纲的哪一行应该在窗口的最上面.该数字是在考虑了"展开状态"后计算出来的.   
  26. <windowTop> 是一个数字,指示了窗口的上沿的位置.   
  27. <windowLeft> 是一个数字,指示了窗口的左侧的位置.   
  28. <windowBottom> 是一个数字,指示了窗口的下沿的位置.   
  29. <windowRight> 是一个数字,指示了窗口的右侧的位置.   
  30.   
  31. <head>注意事项   
  32. <head>的子元素有可能被程序忽略. 如果一个大纲在另一个大纲中打开, 程序不能使用windowXxx元素, 因为这些元素只定义了该大纲自身在窗口中打开时大小和位置.   
  33.   
  34. 所有日期时间相关的元素,格式服从RFC 822.   
  35.   
  36. 你在程序中加载opml时, 可以自由决定是否使用expansionState. 定义它是因为有时可能需要用到.   
  37.   
  38. <body>是什么?    
  39. body> 包含一个或更多的<outline> 元素   
  40.   
  41. <outline>是什么?    
  42. 一个<outline> 是一个可能包含一个或多个属性及任意数目<outline>子元素的XML元素.   
  43.   
  44. 常用属性:   
  45. text: 在浏览或编辑大纲时显示的文字. 无长度限制.   
  46. type: 借以说明其他属性的意义.    
  47. isComment: 取值为"true" 或 "false"的字符串, 指示该outline是否是评论. 按惯例如果一个outline是评论,其子元素outline也都是评论. 如果无此属性,则表示非评论.   
  48. isBreakpoint: 取值为"true" or "false"的字符串, 指示该outline是否设置了断点. 该属性主要是用于编辑和运行脚本的outline. 如果无此属性,则表示未设置断点.   
  49.   
  50. 兼容性   
  51. 1.0版本之前有个根元素outlineDocument. Radio UserLand会继续读取该元素outlineDocument. .   
  52.   
  53. 限制    
  54. <outline>元素的属性和子元素数目无限制.   
  55.   
  56. 注意   
  57. OPML是一种文件格式, 不是协议.   
  58.   
  59. 一般说来,通过HTTP 获取OPML文档时MIME类型为text/xml.    
  60.   
  61. Copyright and disclaimer    
  62. © Copyright 2000 UserLand Software, Inc. All Rights Reserved.  
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值