Closed VladimirAlexiev closed 6 months ago
Hi Vladmir, the TTL is generated by my pipeline - which is in fact just json-ld titanium
https://github.com/filip26/titanium-json-ld
It seems the actual ttl on the github was not up to date with the latest version - can you try again with this version and see if it improved. I will try and improve it also - I did at one point have it working upload to a local graphDB - but something recently seems to have broken it.
@beachtom GraphDB 10.5 (Dec 2023) switched to titanium
(actually a fork with improved performance) in order to support JSON-LD 1.1. See https://graphdb.ontotext.com/documentation/10.5/release-notes.html#graphdb-10-5-0.
Proposed solution for the Bad IRI
error:
%
, use PERCENT
and resolve them against the https://qudt.org/vocab/unit/
namespace (check out https://qudt.org/vocab/unit/PERCENT).vocabularies/quantity_kinds.ttl
proposes some quantity kinds and relates them to QUDT...@beachtom Can you add a Makefile in each folder to systematically derive various RDF serializations? To be sure what is derived from what, and using which tool.
@VladimirAlexiev you wrote:
The context does not define the expansion of hasComparator values. @maximelefrancois86 this can be done by declaring it
@type:@vocab
and then declaring the@vocab
namespace for it. Or you can enumerate all values:
Is there any action on me pending to update the file https://github.com/Accord-Project/aec3po/blob/main/src/aec3po.yaml ?
This is now sorted I think
Hi @beachtom (cc @Gonsco and @EdliraK and @maximelefrancois86 )! (As continuation to #6)
For every regulation, in addition to a YAML file, we also need a JSONLD and TTL, made automatically and with standard tools. I know Thamer made some tools, but we need to use standard RDF conversion tools to have any success.
How did you make FI2.ttl?
hasTarget
as@id
, but you havehasComparator
is defined as@id
, but you have:riot
I tried to convert it with this tool, part of Jena:
I got a bunch of errors:
The context does not define the expansion of
hasComparator
values. @maximelefrancois86 this can be done by declaring it`@type:@vocab
and then declaring the@vocab
namespace for it. Or you can enumerate all values:hasTarget: "pi"
cannot be resolved to a reasonable URL because there's no prefix@beachtom None of the subject URLs work. The file defines
@base
, so I wonder why. I'll try with another tool.jsonld
This is the same source that runs the JSONLD Playground.
I used it to
lint
the file and got 79 warnings due to relative URLs in@type
, see https://github.com/digitalbazaar/jsonld-cli/issues/29I had better success converting. After
jsonld
I runriot
in order to format the file for easier reading. I get 4 errors becausehasUnit
is declared$id
but%
cannot be converted to a reasonable URL. (I bet QUDT defines a unit for percent with appropriate URL)These URLs are obviously not what is intended:
Even the instance URLs are missing the
/FI
part. The same occurs on https://json-ld.org/playground/:<functions:tan>
is treated as an absolute URL with an invalid (unregistered) schemefunctions:
I have also sorted
FI2-jsonld.ttl
by "paragraph" to make it easier to track. Tom, can you check it out and see if it includes all info from JSONLD (especially look for the complex nested structure from #6), and that it doesn't have other problems?