4 个版本

0.1.3 2024年1月27日
0.1.2 2023年11月6日
0.1.1 2023年11月6日
0.1.0 2023年10月29日

#29 in #语义网


用于 rdfa-wasm

MIT 许可证

82KB
1.5K SLoC

RDFa 处理器库(WIP)

Rust 和 wasm 库,用于根据 RDFa 注释从 HTML 文件中提取 rdf 语句(以 n-triples 格式)。

示例

use graph_rdfa_processor::RdfaGraph;
    let html = r#"
    <div prefix="foaf: http://xmlns.com/foaf/0.1/" about="http://www.example.org/#somebody" rel="foaf:knows">
        <p about="http://danbri.org/foaf.rdf#danbri" typeof="foaf:Person" property="foaf:name">Dan Brickley</p>
	  </div>
    "#;
    let base = "http://example.com"
    let well_known_prefix = Some("http://example.org/.well_known");

    RdfaGraph::parse_str(html, base, well_known_prefix).unwrap()

 <script type="module">
    import init, {html_to_rdfa} from "./rdfa-wasm/pkg/rdfa_wasm.js";

    async function run() {
      await init();
      let html =`
        <div prefix="foaf: http://xmlns.com/foaf/0.1/" about="http://www.example.org/#somebody" rel="foaf:knows">
            <p about="http://danbri.org/foaf.rdf#danbri" typeof="foaf:Person" property="foaf:name">Dan Brickley</p>
	      </div>
      `;
      let base = "http://example.com"
      let well_known_prefix = "http://example.org/.well_known";
      let res = html_to_rdfa(html, base, well_known_prefix);

    }
    run();
  </script>

WIP

计划是尽可能多地编写测试,并在过程中修复错误。

已知问题

  • 空白字符未保留。参见测试 0329。

依赖项

~7–14MB
~194K SLoC