簡體   English   中英

控制RDF到“更漂亮”JSON-LD的轉換

[英]Controlling conversion of RDF to “prettier” JSON-LD

我知道將RDF轉換為JSON-LD有一些限制,但我想知道是否有一種很好的方法可以使轉換避免使用空白節點?

例如,給定RDF圖:

@prefix ex: <http://example.org/ontology#> .
<http://example.org/x123> ex:house [
                                      a ex:House ;
                                      ex:houseNumber "1a" ;
                                      ex:doorColour "blue"
                                   ] ;
                          ex:house [
                                      a ex:House ;
                                      ex:houseNumber "1b" ;
                                      ex:doorColour "green"
                                   ] .

是否有可能使用(Java)JSON-LD強制轉換為基於數組的bnodes表示:

{
  "id": "http://example.org/x123",
  "house": [{
    "type": "House",
    "houseNumber": "1a",
    "doorColour": "blue"
  }, {
    "type": "House",
    "houseNumber": "1b",
    "doorColour": "green"
  }],
  "@context": {
      "ex": "http://example.org/ontology#",
      "house": "ex:house",
      "houseNumber": "ex:houseNumber",
      "doorColour": "ex:doorColour",
      "House": "ex:House",
      "id": "@id",
      "type": "@type"
  }
}

而不是像:

{
  "@graph": [
    {
      "@id": "_:b0",
      "@type": "http://example.org/ontology#House",
      "http://example.org/ontology#doorColour": "blue",
      "http://example.org/ontology#houseNumber": "1a"
    },
    {
      "@id": "_:b1",
      "@type": "http://example.org/ontology#House",
      "http://example.org/ontology#doorColour": "green",
      "http://example.org/ontology#houseNumber": "1b"
    },
    {
      "@id": "http://example.org/x123",
      "http://example.org/ontology#house": [
        {
          "@id": "_:b0"
        },
        {
          "@id": "_:b1"
        }
      ]
    }
  ]
}

目前,我正在迭代圖中的語句並手動生成JSON,但是使用java-jsonld或其他JSON-LD技術等庫可以做到這一點嗎?

您可以使用框架來實現這一目標。 看看JSON-LD游樂場中的庫示例。 不幸的是,它尚未標准化,因此各種實現可能不會產生完全相同的輸出和/或超級不同的特征

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM