尧图网络 高端网站定制 · 原创设计
免费咨询热线
400-888-6620
免费获取方案
Schema.org 中的 LRMI 协作贡献:从 collab 元数据文件到 AlignmentObject 与 EducationalAudience 类
知识图谱数据【免费下载链接】schemaorgSchema.org - schemas and supporting software项目地址https://gitcode.com/gh_mirrors/sc/schemaorg点击查看免费下载Schema.org 词汇表的演进离不开外部协作项目的贡献其中 LRMILearning Resource Metadata Initiative学习资源元数据倡议就是典型的代表它通过仓库中一份轻量的协作元数据文件data/collab/LRMIClass.md被登记为来源贡献方并为 Schema.org 带来了AlignmentObject、EducationalAudience两个教育领域核心类。本文将以data/collab/LRMIClass.md为骨架结合仓库内发布产物data/releases/下的 TTL 文件与解析软件software/SchemaTerms/sdocollaborators.py的源码实现完整讲解协作方元数据的文件格式、解析管线、发布链路与最终在 schema 数据中呈现的形态帮助读者理解并复用以同样机制扩展 Schema.org 词汇表。一、协作方collaborator机制概述Schema.org 是一个开放协作的词汇表项目其data/collab/目录下存放着一批协作方元数据文件每个文件对应一个为 Schema.org 贡献过术语的外部项目或工作组例如ActionCollabClass.md、Automotive_Ontology_Working_Group.md、FIBO.md、GoodRelationsClass.md、QAStackExchange.md以及本文主角LRMIClass.md。这些文件的核心作用有二登记来源归属声明某个 schema 类/属性源自哪个外部项目形成可追溯的出处链驱动页面渲染在生成 schema.org 术语页面时将协作方信息标题、链接、描述、致谢文本渲染进页面并在页面上列出该协作方贡献的术语清单。LRMIClass.md是这一机制的最小但完整的示例全部内容如下含前导元数据与两个内容区块--- img: https://www.dublincore.org/specifications/lrmi/images/LRMI_400w.png title: LRMI project url: http://lrmi.net --- DescriptionText.md --- AcknowledgementText.md This class is based on the work of the LRMI project, see lrmi.net for details.文件虽然只有 7 行却完整覆盖了协作方文件格式的全部要素元数据头、描述区块此处留空、致谢区块。围绕它仓库内同时存在发行版 TTL 中的对应来源声明与两类 LRMI 贡献类可展开的内容远比表面丰富。二、LRMIClass.md 文件格式详解2.1 前导元数据front matter文件前三行是key: value形式的属性声明用---与正文分隔。data/collab/下所有协作方文件统一采用该约定。LRMIClass.md声明了三个属性属性取值用途imgLRMI 项目标识图的外部 URL页面渲染时展示的协作方标识图titleLRMI project协作方的显示名称urlhttp://lrmi.net协作方主页链接从源码看这三个属性是解析器明确识别并消费的键在software/SchemaTerms/sdocollaborators.py的_parseDesc方法中self.url attributes.get(url)、self.title attributes.get(title)、self.img attributes.get(img)随后这三个键会从属性字典中移除attributes.pop(...)。如果文件中还出现其他未知属性键解析器会输出警告日志Unknown attributes found in collaborator file ...sdocollaborators.py。这提示协作方文件维护者目前只支持img、title、url三个元数据属性不要自行添加新键。2.2 内容区块section元数据之后用---加区块名的方式划分内容区块。LRMIClass.md声明了两个区块--- DescriptionText.md协作方描述文本本文件中该区块为空LRMIClass.md未提供独立描述直接以致谢文本为主体--- AcknowledgementText.md致谢/声明文本内容为 This class is based on the work of the LRMI project, see lrmi.net for details.本类基于 LRMI 项目的工作成果详见 lrmi.net。解析器通过正则INCLUDE_RE re.compile(R---\s([^.])\.md)识别区块名sdocollaborators.py并把DescriptionText.md名下的行解析为description、AcknowledgementText.md名下的行解析为acknowledgementsdocollaborators.py。两个区块名之外的未知区块同样会触发警告日志。这些文本最终经由localmarkdown.Markdown.parseLines做本地 Markdown 解析后进入collaborator对象。三、解析管线sdocollaborators.py 源码解读software/SchemaTerms/sdocollaborators.py是整个协作方机制的软件实现核心类是collaboratorsdocollaborators.py。其关键设计如下全局注册表COLLABORATORS与CONTRIBUTORS两个类级字典前者收录全部协作方后者仅收录被 schema 数据确认为贡献者contributor的协作方。loadCollaborators()通过paths.DefaultInputLayout().domain_files(paths.Domain.DATA, collab/*.md)扫描data/collab/*.md并逐个调用createCollaborator()加载sdocollaborators.pyLRMIClass.md即在此扫描范围内。URI 规约每个协作方对象的urirel形如/docs/collab/LRMIClassos.path.join(/docs, collab, ref)uri则为schema.constants.HOMEPAGE urirel。这意味着协作方在 schema 数据中拥有一个可解析的 URI 身份。贡献者判定loadContributors()使用 SPARQL 查询SELECT distinct ?val WHERE { [] schema:contributor ?val. }从 schema 图数据中找出所有schema:contributor指向的实体再调用createContributor()把匹配的协作方标记为 contributorsdocollaborators.py。也就是说一个协作方是否算贡献者取决于 schema 本体中是否存在指向其 URI 的schema:contributor三元组。术语反查getTerms()调用sdotermsource.SdoTermSource.getAcknowledgedTerms(self.uri)反查出所有在致谢acknowledgement中指向该 URI 的术语用于在术语页面上生成该协作方贡献了哪些词条的清单sdocollaborators.py。这套设计的直接推论是修改或新增data/collab/*.md后需要重新运行构建/发布流程让解析结果与生成页面、TTL 产物保持一致。四、LRMI 在 schema 本体中的落地两类贡献在发布产物data/releases/10.0/schema.ttl中LRMI 的来源声明被序列化为一个Organization节点schema.ttlhttp://www.w3.org/wiki/WebSchemas/SchemaDotOrgSources#source_LRMIClass a :Organization ; rdfs:label LRMIClass ; rdfs:comment This class is based on the work of the LRMI project, see lrmi.net for details. .注意其rdfs:comment与LRMIClass.md的AcknowledgementText.md区块文本完全一致——这正是致谢文本从 collab 元数据流入发行版本体的直接证据。同样的声明早在data/releases/3.0/schema.ttlschema.ttl中就已存在说明 LRMI 合作从早期版本延续至今。4.1 AlignmentObject学习资源与教育框架的对齐AlignmentObject是 LRMI 贡献的核心类定义于 schema.ttl:AlignmentObject a rdfs:Class ; rdfs:label AlignmentObject ; :source http://www.w3.org/wiki/WebSchemas/SchemaDotOrgSources#source_LRMIClass ; rdfs:comment An intangible item that describes an alignment between a learning resource and a node in an educational framework. Should not be used where the nature of the alignment can be described using a simple property, for example to express that a resource [[teaches]] or [[assesses]] a competency. ; rdfs:subClassOf :Intangible .关键信息点通过:source属性显式指向source_LRMIClass即声明本类源自 LRMI 项目语义为描述学习资源与教育框架中某个节点之间对齐关系的无形条目并给出明确的边界约束若对齐关系可以用简单属性表达如资源teaches教授或assesses评估某能力则不应使用本类作为Intangible的子类属于无形实体分支通常需要配合alignmentType、educationalFramework、targetName、targetUrl等属性一起使用来具体化对齐信息。4.2 EducationalAudience教育受众类型第二类 LRMI 贡献是EducationalAudience定义于 schema.ttl:EducationalAudience a rdfs:Class ; rdfs:label EducationalAudience ; :source http://www.w3.org/wiki/WebSchemas/SchemaDotOrgSources#source_LRMIClass ; rdfs:comment An EducationalAudience. ; rdfs:subClassOf :Audience .它作为Audience受众的子类存在用于标注内容面向的教育受众群体同样带有source_LRMIClass来源声明。它与AlignmentObject共同构成了 LRMI 在教育元数据标注上的双支柱一个描述内容与课程框架的对应关系一个描述内容的受教育对象。4.3 source 属性的全局传播source关联不仅存在于上述两个类的定义处还会随每次发布传播到所有格式产物中。例如在software/SchemaTerms/example-code/data/schemaorg-all-http.nt中可以看到source_LRMIClass以http://schema.org/source三元组形式出现的记录对齐AlignmentObject与EducationalAudience两类的声明与source_GoodRelationsClass、source_GoodRelationsTerms、FIBO等协作方来源并列。这意味着使用者可以从 NT/JSON-LD/RDF 等任一发布格式中反查某术语的出处。五、协作机制在软件层面的完整闭环LRMI 协作的完整生命周期贯穿了仓库的三个部分可归纳为元数据定义data/collab/LRMIClass.md以伪 Markdown 格式登记协作方身份与致谢文本解析与渲染sdocollaborators.py将文件解析为collaborator对象供页面模板templates/下的相关 J2 模板与构建脚本消费术语对象SdoTerm也维护acknowledgements列表sdoterm.py并通过 protobuf 定义的acknowledgements字段对外输出见 schematermsprotobuf.py发布物序列化构建后source_LRMIClass以rdfs:comment:source形式固化进各版本schema.ttl及衍生格式中。如果希望确认某个类是否由 LRMI 贡献最快的方式是在发布 TTL 中搜索source_LRMIClass关键字即能定位到AlignmentObject与EducationalAudience两条声明以及 LRMI 来源节点本身。六、如何基于该机制新增/维护协作方LRMIClass.md是最简洁的范本新增一个协作方文件只需三步在data/collab/下创建名称.md文件名为协作方的ref如FIBO.md、GLEIF.md头部按序声明img可选、title、url三个属性并以---与正文分隔正文按需声明--- DescriptionText.md与--- AcknowledgementText.md两个区块在对应区块下写入描述与致谢文本若两个区块都未提供内容解析器会将其视为空字符串处理。维护时需注意的约束属性键仅支持img、title、url多余键会触发Unknown attributes警告区块名仅支持DescriptionText.md与AcknowledgementText.md未知区块会触发Unknown sections警告若希望该协作方被计入CONTRIBUTORS贡献者列表并展示其贡献术语schema 数据中必须存在schema:contributor指向其 URI 的三元组修改文件后需重新构建发布产物保证data/releases/下的 TTL/JSON-LD/NT 与页面保持一致。结语data/collab/LRMIClass.md虽只有寥寥数行却是理解 Schema.org 外部协作机制的钥匙它展示了协作方元数据的最小完备结构其致谢文本被原样写入发行版本体其来源标识source_LRMIClass关联着AlignmentObject与EducationalAudience两个教育领域的实际类定义。结合 sdocollaborators.py 的解析实现与 schema.ttl 的序列化产物读者可以完整掌握外部项目 → collab 元数据 → 软件解析 → 发布本体的整条链路并据此为 Schema.org 贡献新的协作方与术语。赞分享知识图谱数据【免费下载链接】schemaorgSchema.org - schemas and supporting software项目地址https://gitcode.com/gh_mirrors/sc/schemaorg点击查看免费下载相关推荐PI0 模型昇腾 Atlas A2 分布式训练实战基于 LeRobot 的 LIBERO 训练全流程解析PI0 模型昇腾 Atlas A2 分布式训练实战基于 LeRobot 的 LIBERO 训练全流程解析 本文档系统讲解在 CANN 平台上将物理智能体基础模知识图谱数据文档标题使用祈使句或名词短语文档标题使用祈使句或名词短语 概述必选 简要说明功能用途、适用场景及核心价值 基本用法必选 提供最小化可用示例包含命令语法和输出效果 高级配置可CLI云原生interactive-coding-challenges 贡献指南从 Fork 到 Notebook 与单元测试的完整协作流程interactive coding challenges 贡献指南从 Fork 到 Notebook 与单元测试的完整协作流程 本篇技术指南围绕 CONTR示例工程教程上一篇ToolJet Text Input 文本输入组件完全指南属性、事件、校验、CSA 动作与样式配置下一篇Metabase Embedding SDKActionResultForSql 类型详解 —— 自定义 SQL Action 响应结果的结构、判别与前端消费创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
RELATED

相关推荐

Agent-Reach:轻量级智能体触达层设计与实践

Agent-Reach:轻量级智能体触达层设计与实践

这段时间一直在折腾个人AI Agent,最大的感受就是一个字:够不着。模型再聪明,工具再多,一旦散落在不同的终端、不同的服务、不同的目录里,Agent实际能做的事就非常有限。后来我索性动手写了一个轻量级中间层&#xff0c…

📅 2026/10/7 21:13:48
AI Agent Skills:从提示词到可复用技能封装的实践指南

AI Agent Skills:从提示词到可复用技能封装的实践指南

如果只用一个词概括我过去一年在 AI 应用开发里的最大变化,我会选 "skills"。不是简历上那一串能力列表,而是把智能体从"会聊天"变成"真能干活"的那一层封装——一组指令、脚本和资源打包成可随时被模型调用的能力单元。我…

📅 2026/10/7 21:13:48
Agent-Reach:基于CLI的AI Agent统一调度与多Agent协作实战指南

Agent-Reach:基于CLI的AI Agent统一调度与多Agent协作实战指南

1. 项目缘起与核心定位Agent-Reach 这个名字第一次出现在我视野里的时候,我正被一堆零散的 AI Agent 脚本折磨得够呛。手头有五六个不同场景的小助手,有的负责抓取信息,有的负责整理文档,有的负责定时提醒,但它们之间互…

📅 2026/10/7 21:13:48
MORE NEWS

更多资讯

📰

十款AI辅助论文写作工具实测:专科生毕业论文避坑指南

如果你正拿着实习单位的考勤表对着日历发愁,同时又收到了导师发来的“论文定稿日期提前一周”的通知,这篇文章正好是为你准备的。我这几天把市面上号称“一键生成论文”的工具翻来覆去测了个遍,从免费到付费、从手机 App 到网页端&#xff0c…

📰

论文AI率太高怎么办?从检测原理到十个降AIGC实操方法

每年到这个季节,后台咨询最集中的永远是同一个问题:老师说我论文AI率太高,怎么降?尤其是专科同学,写论文本身就吃力,好不容易憋出一稿,拿回来一看AIGC疑似比例百分之三四十,心态直接…

📰

新能源场站全景监控:架构、时间同步与事故回放避坑指南

简介:新能源场站全景监控通用技术规范(Q/GDW 12056—2020)是面向风电场和光伏发电站全景监控系统制定的行业标准,适用于35kV及以上电压等级并网或装机容量40MW及以上的场站,为监控系统的整体架构、功能要求、技术条件及…

📰

从I/O点到联锁逻辑:加热炉DCS组态设计实战指南

1. 从仪表盘到DCS:加热炉监控系统为什么需要组态设计基于DCS做加热炉监控系统的组态设计,听起来像一句工程套话,但真正把一个改造项目从头走到尾的人都知道,组态设计才是项目里最磨人、也最考验功底的环节。前阵子我经手一套轧钢加…

📰

野外油气计量间远程监测系统设计:传感器、4G通信与太阳能供电实践

接到野外油气计量间油气参数远程监测系统设计这个任务时,我并没有急着选传感器和通信模块,而是先跑去现场蹲了半天。这个计量间离最近的联合站控制中心有将近四公里,中间隔着两座土坡和一片芦苇地,没有市电,没有网线&a…

📰

AXI DMA SG模式实战:寄存器配置与Descriptor Ring深度解析

1. 为什么SG模式是AXI DMA工程落地的分水岭在Xilinx FPGA开发中,VIVADO里的AXI DMA核从来不是“开箱即用”的玩具。我带过三届FPGA校企联合实训班,每次讲到DMA数据搬运,总有学员卡在“为什么我的DMA跑通了但吞吐量只有理论值的30%”——直到他…

TODAY

今日更新

THIS WEEK

本周精选

THIS MONTH

本月热门

读完文章,想聊聊您的网站?

告诉我们您的行业与需求,资深顾问一对一梳理方案与报价,全程免费。

📞 💬