Amazon Neptune перезаписывает пустые значения узлов при вставке данных - PullRequest
1 голос
/ 06 февраля 2020

При вставке тройки с пустым узлом в экземпляр Amazon Neptune:

INSERT DATA { <http://example.com/s> <http://example.com/p> _:something }

… значение пустого узла заменяется на b<SOME NUMBER>. Выполнение запроса, подобного этому:

SELECT ?o WHERE { <http://example.com/s> <http://example.com/p> ?o }

… вернет что-то вроде этого:

{
    "results": {
        "bindings": [
            {
                "o": {
                    "type": "bnode",
                    "value": "b24508943"
                }
            }
        ]
    }
}

Есть ли способ сохранить исходные пустые имена узлов при загрузке данных в Нептун?

1 Ответ

2 голосов
/ 12 февраля 2020

Идея пустых узлов в том, что они не адресуемы ("извне"). Если вам нужно что-то, к чему вы можете обратиться (т. Е. «Указать на») позже, вам следует дать ему URI.

Если у вас есть пустой узел, который служит предметом некоторых операторов, вы можете найдите эти операторы, если какой-то другой оператор также использует этот пустой узел (например, как его объект). То есть вы можете использовать запрос, чтобы найти их. В противном случае используйте URI.

...