ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

Schema.org 开源仓库指南:词汇格式规范、发布体系与协作工作流

Schema.org 开源仓库指南:词汇格式规范、发布体系与协作工作流 知识图谱数据【免费下载链接】schemaorgSchema.org - schemas and supporting software项目地址https://gitcode.com/gh_mirrors/sc/schemaorg点击查看免费下载本指南以 Schema.org 开源仓库schemaorg为对象系统讲解其数据目录的格式规范、发布快照体系、词汇提案流程与本地构建运行方式。仓库以data/目录存放全部词汇定义与示例、以software/目录存放支撑网站发布的 Python 工具链读完本文你将掌握如何在仓库中定位与解读schema.rdfa/schema.ttl词汇文件、如何运行本地站点构建与调试以及如何参与 Schema.org 词汇的提议与评审。仓库定位词汇、示例与发布软件的统一体正如仓库根目录的 README.md 所述这是 Schema.org 项目仓库它包含发布 Schema.org 所使用的全部词汇schemas、示例examples与软件software而 Schema.org 官方网站本身则是该仓库的产出物。与此对应data/releases/4.0/README.md 正是随 4.0 正式发布打包的仓库自述文档它记录了这一版本时代仓库的完整组织方式与协作约定。在该版本的自述中明确了几项协作基础设施Issue 与提案的管理由 W3C Schema.org Community Group 的参与者负责感兴趣者需要加入该社区组并在仓库中查找或提交 Issue。发布规划入口GitHub 上的 Issue #1 是发布规划的入口点提供待办工作的总体概览涵盖主题、具体 Issue 与发布里程碑。持续集成仓库接入 Travis-CI 对进入的 Pull Request 进行自动检查当前版本已演进为 GitHub Actions 工作流见根 README.md 中的 CI 徽章。发布节奏每月左右经过 Schema.org Steering Group 最终评审后进行一次正式发布每次发布都会把默认分支切换到对应发布代号。词汇提案机制如何向 Schema.org 建议新词Proposing schemas一节是协作规范的核心它定义了新词汇从提议到被接受的取舍原则这些原则在今天仍主导着仓库的演进方向。优先级与证据导向仓库优先考虑对既有词汇、示例与文档的简单修复和改进而不是添加全新词汇。是否新增词汇关键判断标准是是否存在最好是大规模的消费方应用会实际使用这些数据。消费方并不局限于搜索引擎也可以是开源软件工具、增强标记的 Web 分析方案、浏览器插件或云工具。仅以搜索引擎一般会使用结构化数据为由不足以支撑新增词汇较小的、向后兼容的改动更容易被纳入。简化哲学与独立扩展Schema.org 有意不追求捕获 Web 内容的全部细节它是复杂现实的必要简化。因此很多看似可加入的细节往往不会被采纳目的是保持词汇对发布者与站长足够简单可用。同时Schema.org 不是封闭系统它依托 JSON-LD、Microdata、RDFa 等 Web 标准支持独立扩展其他倡议如 Wikidata、GS1 词汇表的术语可以与 Schema.org 自身定义的术语混用。对于大规模术语重组仓库持谨慎态度若仅出于优雅正确建模本体纯粹性或概念统一等动机一般不会被接受。项目在规模与性质上要求用渐进演化 务实容忍替代形式本体的全局一致性跨领域的基于逻辑的知识结构统一提案更适合提交给其他本体社区。发布与反馈的实践约定提出改进前请先搜索旧讨论含已关闭 Issue特别欢迎对既有定义、示例与文本的澄清性改进。若提案被标记为 noted 后关闭不必意外——仓库有数百个待讨论 Issue对暂不深入探索的采用记录后关闭的约定。Pull Request 应当关联其修复或解决的特定 Issue让讨论与具体且易过时的补丁解耦任何实质性开发工作需先与项目团队达成一致。改动难度差异很大定义措辞的调整相对容易而类型/属性拼写如Person、startDate的变更破坏性极强须格外慎重。新词常先进入 Pending 区域此阶段强烈欢迎全局视角的反馈新词与其他词的关系、如何与既有模式配合使用等整合阶段通常体现为措辞微调、示例补充或文档链接修正而非大规模重构。数据目录的格式与标准Formats and standards一节定义了仓库数据文件的组织约定这些约定直接决定了 4.0 快照与当前主线的目录形态。文件编码与目录分工全部词汇与示例均位于data/目录采用 utf-8 编码。4.0 时代的主词汇文件为data/schema.rdfautf-8开发过程中的词汇可以放在形如data/sdo-somethinghere-schema.rdfa的独立文件中。当前主线已迁移为 Turtle 格式的 data/schema.ttl根 README.md 已注明主文件为schema.ttl4.0 快照则完整保留了当时的 RDFa 主文件 data/releases/4.0/schema.rdfa。格式基础4.0 时代的格式基于 W3C RDFS 的 HTML/RDFa 表示见 data/releases/4.0/schema.rdfa 首部的说明使用 RDFa 1.1 初始上下文中声明的简化前缀子集注释中采用 Markdown 语法便于超文本文档编辑。示例文件示例存储在 data/examples.txt 与仓库中其他*examples.txt文件中。与词汇合并进主文件的处理方式不同示例始终保留在独立文件中因为这样更契合 git 的文件比较机制。词汇文件的典型结构以 data/schema.ttl 为例当前主线词汇以 Turtle 三元组表达 RDFS 模型例如:AboutPage a rdfs:Class声明类型、rdfs:subClassOf :WebPage声明父子关系、rdfs:comment承载带[[编码]]链接语法的自然语言定义。而在 4.0 快照 data/releases/4.0/schema.rdfa 中同一模型以 HTML/RDFa 呈现div typeofrdfs:Class resourcehttp://schema.org/Thing span classh propertyrdfs:labelThing/span span propertyrdfs:commentThe most generic type of item./span /div每个术语都以rdfs:label、rdfs:comment及可选的rdfs:subClassOf/dc:source表达dc:source通常指向影响该术语设计的外部来源如 rNews。这种 RDFa 与 Turtle 双格式并存的情况正是发布快照与主线演进的真实写照。示例文件的四段式结构data/examples.txt 中每个示例遵循固定结构TYPES:行声明涉及的术语列表随后依次给出PRE-MARKUP原始网页内容、MICRODATA、RDFA以及通常还有的JSON-LD各格式标记。例如 Person 示例的 TYPES 声明与 Microdata 片段TYPES: #eg-0001 Person, PostalAddress, addressRegion, postalCode, address, streetAddress, extendedAddress, telephone, email, url, addressLocalitydiv itemscope itemtypehttps://schema.org/Person span itempropnameJane Doe/span div itempropaddress itemscope itemtypehttps://schema.org/PostalAddress span itempropstreetAddress20341 Whitworth Institute, Suite 123, 405 N. Whitworth/span span itempropaddressLocalitySeattle/span /div span itemproptelephone(425) 123-4567/span /div这种多格式并存的示例结构既服务于网站术语页面的展示也是测试工具验证示例确实满足 RDF 中定义的 schema的输入数据。发布快照与扩展层级data/releases/层级保留发布快照对应 https://schema.org/version/ 的版本化访问。每个版本目录存放该发布时刻全套导出文件以 4.0 快照 data/releases/4.0/ 为例包含schema.rdfa、schema.ttl、schema.rdf、schema.nq、schema.nt、schema.jsonld、schemaorg.owl、schemaorgcontext.jsonld、各 CSV 属性/类型清单以及all-layers.*合并全部扩展层和各扩展ext-attic、ext-auto、ext-bib、ext-health-lifesci、ext-meta、ext-pending的独立导出文件。ext/*/层级保留扩展词汇对应扩展机制。当前主线下的 data/ext/ 依然沿用attic、auto、bib、health-lifesci、meta、pending等扩展区与 4.0 快照中的扩展文件一一对应。本地构建与运行软件Software一节交代了支撑 Schema.org 网站发布的核心工具链一个简单的 Python 应用用于在本地生成 Schema.org 网站的静态镜像供本地测试或上传至 Google GCloud 供 Web 访问。4.0 时代的部署基于 Python 版 Google App Engine SDK完整细节见 software/SOFTWARE_README.md。环境准备需要 Linux 类含 macOS环境Python 3.11 或以上Windows 用户建议使用 WSL2。建议创建虚拟环境并以可编辑模式安装软件包software/pyproject.toml 声明了第三方依赖与各 schema.org 包使本地编辑即时生效python3 -m venv .venv source .venv/bin/activate pip install -e software开发工具mypy、pytest可通过pip install -e software[dev]一并安装。安装同时会在虚拟环境中生成命令别名如build_site、build_schema、run_tests、dev_server与脚本路径形式等价。初始构建与本地服务./software/scripts/buildsite.py -a # 全量构建生成 site/ 目录 ./software/scripts/devserv.py # 本地服务默认 localhost:8080首次完整构建需 5–20 分钟依机器配置而定仅在初始或重大变更后需要。site/目录是网站镜像不会提交进仓库devserv.py支持--host与--port选项改变监听地址本地开发时改动页面即时生效浏览器缓存可能需强制刷新。增量构建按需重建术语页与文件开发阶段无需全量构建buildsite.py 的initialize()中定义了丰富选项-a全量、-c清空输出、-d文档页、-e补示例 ID、-f输出文件、-t术语页、-s静态页、-r先跑测试、--shacltests跑 SHACL 验证以及--release/--buildrelease/--buildsite三档发布构建常用组合如./software/scripts/buildsite.py -t Book sameAs # 重建 Book 与 sameAs 术语页 ./software/scripts/buildsite.py -t All # 重建全部术语页 ./software/scripts/buildsite.py -f Owl # 重建 docs/schemaorg.owl ./software/scripts/buildsite.py -f RDFExport.turtle # 重建 Turtle 格式词汇定义 ./software/scripts/buildsite.py -d PendingHome # 重建 pending 区首页 ./software/scripts/buildsite.py -s # 同步静态文档页与 CSS测试、版本控制与部署本地测试software/scripts/buildsite.py -a -r --shacltests会全量构建并断言 schema 自洽、示例满足 RDF 定义的约束--shacltests执行 Python SHACL 测试。版本控制构建脚本以单一配置文件 versions.json 控制所构建的发布版本修改schemaversion并在releaseLog增加对应条目未就绪的版本日期以XX占位如11.2: 2020-XX-XX后需执行buildsite.py -a全量重建。当前主线schemaversion已到 30.1而 4.0 对应releaseLog中的4.0: 2019-10-15。部署./software/gcloud/deploy2gcloud.sh可将本地版本部署到 appengine 实例需提供合法的 appengine 项目名与版本 ID不必与 Schema 版本号一致并接受默认的other.yaml另有面向 webschemas.org 与 schema.org 的专用部署脚本。发布命名与分支管理Github Branch naming一节解释了发布代号机制发布列表按工作代号与发布名双重命名例如 v1.91 的继任者代号为sdo-venkman最终成为 v1.92候选发布说明草稿可在仓库的docs/releases.html中查看。当前主线已不再为进行中的工作使用分支main分支作为最新候选虽不保证概念上完全一致但会在发布候选分发评审前趋于稳定根 README.md。在 4.0 快照中这一约定体现为随发布同步更新的data/releases/4.0/全套导出文件从schema.rdfa/schema.ttl等词汇定义、schemaorg.owl本体导出、schemaorgcontext.jsonldJSON-LD 上下文到*-properties.csv/*-types.csv术语清单再到all-layers.*合并层与各扩展独立导出完整构成可独立复现该版本词汇状态的归档。协作语言与文档定位Notes一节提醒仓库文档面向软件代码库而非 schema.org 站点本身同时代码与 schema 中的标签、注释与文档应统一使用美式英语如遇英式/美式选择时以国际通用英语为目标。从 4.0 快照到当前主线将 data/releases/4.0/README.md 与根 README.md 对照可以看到仓库的数处演进主词汇文件由 RDFa 的schema.rdfa迁移为 Turtle 的data/schema.ttl部署环境由 Python 版 App Engine SDK 演进为 Python 3.11 与 gcloud持续集成由 Travis-CI 迁移至 GitHub Actions分支模型从按发布切换默认分支演进为main单一候选分支。但核心架构与约定始终如一词汇与示例分离存放于data/、扩展位于ext/*/、发布快照归档于data/releases/、以versions.json单一配置驱动构建。理解这份 4.0 时代的基础文档即可顺畅衔接当前主线的构建、测试与发布工作流。赞分享知识图谱数据【免费下载链接】schemaorgSchema.org - schemas and supporting software项目地址https://gitcode.com/gh_mirrors/sc/schemaorg点击查看免费下载相关推荐Schema.org 开源仓库完全指南词汇表、示例与建站软件的一体化协作开发Schema.org 开源仓库完全指南词汇表、示例与建站软件的一体化协作开发 Schema.org 是 Web 上被广泛采用的结构化数据词汇表项目本仓库知识图谱数据Schema.org 仓库开发指南协作规范、软件构建、数据格式与版本分支详解Schema.org 仓库开发指南协作规范、软件构建、数据格式与版本分支详解 本篇指南以 Schema.org 仓库的根 README仓库快照版本 data知识图谱数据Unkey 仓库 AGENTS.md 指南面向 Agent 与开发者的协作规范与开发工作流Unkey 仓库 AGENTS.md 指南面向 Agent 与开发者的协作规范与开发工作流 本篇指南以 Unkey 仓库根目录的 AGENTS.md http后端API网关认证鉴权上一篇小赖字体快速入门10分钟学会如何安装和使用这款可爱的手写字体下一篇VectorDBBench 使用与安装教程创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表