digitalbazaar/pyld

expand result is unexpected with @propagate

haisland0909 opened this issue · 0 comments

Version 2.0.3
I faced some errors with using @propagate context.
And it seems that this problem happens only when the same context object is contained under the node with @propagate

Base Document

{
  "@context": {
    "@propagate": false, 
    "a": {
      "@id": "http://abc/a",
      "@context": {
        "b": "http://abc/b", 
        "c": "http://abc/c"
      }
    }, 
    "d": {
      "@id": "http://abc/d",
      "@context": {
        "b": "http://abc/b", 
        "c": "http://abc/c"
      }
    }
  }, 
  "a": {
    "b": "bb", 
    "c": "cc"
  }, 
  "d": {
    "b": "bbb", 
    "c": "ccc"
  }
}

Expected Result(From Playground)

[
  {
    "http://abc/a": [
      {
        "http://abc/b": [
          {
            "@value": "bb"
          }
        ],
        "http://abc/c": [
          {
            "@value": "cc"
          }
        ]
      }
    ],
    "http://abc/d": [
      {
        "http://abc/b": [
          {
            "@value": "bbb"
          }
        ],
        "http://abc/c": [
          {
            "@value": "ccc"
          }
        ]
      }
    ]
  }
]

Result from pyld

[
  {
    "http://abc/a": [
      {
        "http://abc/b": [
          {
            "@value": "bb"
          }
        ],
        "http://abc/c": [
          {
            "@value": "cc"
          }
        ]
      }
    ],
    "http://abc/d": [
      {}
    ]
  }
]