JSON-LD文档+Hydra Core生成Java代码
JSON-LD document + Hydra Core generate Java code
是否有一种工具可以为 JSON-LD 的 RESTful 服务生成框架,该服务使用 hydra 定义了操作。例如下面的例子,假设我有一个 Java class 现在的人,构建一个逆向工程 JSON-LD 以生成完整 spring mvc代码。
{
"@context": [
"http://www.w3.org/ns/hydra/core",
{
"@vocab": "https://schema.org/",
"image": { "@type": "@id" },
"friends": { "@type": "@id" }
}
],
"@id": "https://api.example.com/player/1234567890/friends",
"operation": {
"@type": "BefriendAction",
"method": "POST",
"expects": {
"@id": "http://schema.org/Person",
"supportedProperty": [
{ "property": "name", "range": "Text" },
{ "property": "alternateName", "range": "Text" },
{ "property": "image", "range": "URL" }
]
}
}
}
事实上,有一个名为 hydra-java 的工具可以帮助生成带有 hydra-core 添加的 JSON-LD 格式的资源表示。它还明确支持操作。
In fact there is a tool called hydra-java which helps to generate
resource representations in the JSON-LD format with hydra-core
additions. It also explicitly supports operations.
据我了解,@user3929266 想从 JSON-LD + Hydra API 文档生成 classes;不要从 Java class 生成 JSON-LD。如果是这样的话,恐怕目前还没有工具。但实现一个并将其与 hydra-java 提供的功能相结合应该相当简单。
是否有一种工具可以为 JSON-LD 的 RESTful 服务生成框架,该服务使用 hydra 定义了操作。例如下面的例子,假设我有一个 Java class 现在的人,构建一个逆向工程 JSON-LD 以生成完整 spring mvc代码。
{
"@context": [
"http://www.w3.org/ns/hydra/core",
{
"@vocab": "https://schema.org/",
"image": { "@type": "@id" },
"friends": { "@type": "@id" }
}
],
"@id": "https://api.example.com/player/1234567890/friends",
"operation": {
"@type": "BefriendAction",
"method": "POST",
"expects": {
"@id": "http://schema.org/Person",
"supportedProperty": [
{ "property": "name", "range": "Text" },
{ "property": "alternateName", "range": "Text" },
{ "property": "image", "range": "URL" }
]
}
}
}
事实上,有一个名为 hydra-java 的工具可以帮助生成带有 hydra-core 添加的 JSON-LD 格式的资源表示。它还明确支持操作。
In fact there is a tool called hydra-java which helps to generate resource representations in the JSON-LD format with hydra-core additions. It also explicitly supports operations.
据我了解,@user3929266 想从 JSON-LD + Hydra API 文档生成 classes;不要从 Java class 生成 JSON-LD。如果是这样的话,恐怕目前还没有工具。但实现一个并将其与 hydra-java 提供的功能相结合应该相当简单。