问题是这样的:
我处于 Web 环境中,并且拥有以某种结构化格式(例如 XML 或 JSON)表示的数据。
我想定位这些表示内的元素。
这是一个例子:
动物园的 XML 表示形式:
<?xml version="1.0" encoding="UTF-8" ?>
<zoo>
<dog>Joe</dog>
<cat>Alfred</cat>
<mouse>Ricky</mouse>
</zoo>
同一个动物园的 JSON 表示:
{
"zoo": {
"dog": "Joe",
"cat": "Alfred",
"mouse": "Ricky"
}
}
说吧,我要打狗的名字。
我看到有几种技术可以完成这项任务,但它们是bound to the 内容类型。 XML有XPath或Xpointer,JSON有JSONPath等等。
问题是:如果 XML 和 JSON 是表示结构化信息的两种方式(几乎是等价的),那么您知道一些吗?高水平, 独立于实现哪个符号不受特定表示的约束?
限制:
请考虑我不能使用纯 URL 机制。我的意思是,我不能做类似的事情http://authority/.../zoo/dog
.
这里的resource is the zoo
,我需要遍历它的内容(将其视为内容)。
只是为了澄清一点,比如http://authority/.../zoo#dog
会成功,因为它分隔了资源名称(前面的内容)#
)来自内容名称(位于#
)但我不确定以这种方式使用它是否可以被认为是标准的。另外,#策略要求资源用锚点进行注释,这对于我的情况来说是不可取的。
问题是:如果 XML 和 JSON 是表示结构化信息的两种方式(几乎是等价的),那么您是否知道一些高级的、与实现无关的、不绑定到特定表示的表示法?
以下是一些:
- 资源描述框架(RDF)
- 抽象语法表示法(ASN.1)
- 属性列表(PList)
- 注册表文件(Reg)
- OData
- 微观数据
- EXI
- 规范S-表达式(Canonical S-expr)
参考
- 文本 RDF 格式的媒体类型问题 http://www.w3.org/2008/01/rdf-media-types
- RDF 序列化 http://www.w3.org/wiki/RdfSyntax
- RDF翻译器 http://rdf-translator.appspot.com/
- 抽象语法符号一 (ASN.1) 建议 http://www.itu.int/ITU-T/studygroups/com17/languages/
- JSON 编码规则 (JSON/ER) 概述:
ASN.1 的编码规则集 http://www.oss.com/asn1/resources/asn1-papers/Overview%20of%20JSON%20ER.pdf
- Darwin Plist 手册页 https://developer.apple.com/library/mac/documentation/Darwin/Reference/ManPages/man5/plist.5.html
- 属性列表表示 http://readtiger.com/wkp/en/Property_list
- 财产清单简介 https://developer.apple.com/library/iOs/documentation/Cocoa/Conceptual/PropertyLists/Introduction/Introduction.html
- 旧式 ASCII 属性列表 https://developer.apple.com/library/iOs/documentation/Cocoa/Conceptual/PropertyLists/OldStylePlists/OldStylePLists.html
- 属性列表 XML 标签 https://developer.apple.com/library/ios/DOCUMENTATION/CoreFoundation/Conceptual/CFPropertyLists/Articles/XMLTags.html
- 分发注册表更改 https://msdn.microsoft.com/en-us/library/bb727154.aspx
- 如何创建全新的注册表配置单元 http://blogs.msdn.com/b/sergey_babkins_blog/archive/2014/11/10/how-to-create-a-brand-new-registry-hive.aspx
- 注册 COM 应用程序 https://msdn.microsoft.com/en-us/library/windows/desktop/ms683954
- 如何:在 Visual Basic 中创建注册表项并设置其值 https://msdn.microsoft.com/en-us/library/cy6azwf7.aspx
- 为 Firefox 浏览器创建并实现 XPCOM 组件 http://www.ibm.com/developerworks/java/library/os-xpcomfirefox/index.html
- 分发注册表更改 https://msdn.microsoft.com/en-us/library/bb727154.aspx
- JSON/XML-RPC 客户端和服务器 https://code.google.com/p/json-xml-rpc/wiki/DocumentationForJavaScript
- 简洁二进制对象表示(CBOR) https://www.rfc-editor.org/rfc/rfc7049
- 邻接列表 — NetworkX 1.10 文档 https://networkx.github.io/documentation/networkx-1.10/reference/readwrite.adjlist.html
- jsonGRDDL:JSON/XML GRDDL 客户端和服务器 http://buzzword.org.uk/2008/jsonGRDDL/spec#abstract
- 关联数据 API:格式化图表 http://code.google.com/p/linked-data-api/wiki/API_Formatting_Graphs
- OData 和 Schema.org (pdf) https://www.w3.org/wiki/images/4/43/ODataVocabulariesandSchemaorg.docx.pdf
- 微数据:提取 JSON https://www.w3.org/TR/microdata/#extracting-json
- W3C Wiki:Web 架构 https://www.w3.org/wiki/WebSchemas
- 微数据到 RDF:第二版 https://www.w3.org/TR/microdata-rdf/
- 傻瓜式微数据:提取语义注释 http://getschema.org/index.php/Main_Page
- JSON 的 EXI https://www.w3.org/TR/exi-for-json/
-
JSON指针 https://www.rfc-editor.org/rfc/rfc6901/XPointer http://www.w3.org/TR/xptr/
- 证书库服务API http://pubs.opengroup.org/onlinepubs/9629299/2_chap05.htm
- US6779120:用于指定安全策略的声明性语言 http://www.google.co.uk/patents/US6779120
- XML 签名语法和处理版本 1.1 https://www.w3.org/TR/xmldsig-core1/
- oEmbed 使嵌入第三方视频和图像变得轻而易举 http://ajaxian.com/archives/oembed-makes-embedding-third-party-videos-and-images-a-breeze
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)