- From: Phil Archer <phila@w3.org>
- Date: Mon, 10 Apr 2017 13:22:26 +0100
- To: POE WG <public-poe-wg@w3.org>
Dear all, During last week's meeting, I volunteered to start collecting examples that can go into a test suite. Good news - the vocabulary document already includes 12 examples, each of which is available in multiple serialisations (JSON-LD, TTL, NT, HTML and XML). First question - can someone kindly walk me through how these are being generated? I see tools in the directory. Can I start from any serialisation? Presumably, given that these files all exist, the plan is to include them as external files with the vocabulary document? That can certainly be done, with content negotiation all set up. To show one possible method using ReSpec, I've set up an example at https://philarcher1.github.io/poe/vocab/#targetAsset The relevant markup is: <pre class="example hljs xquery" title='(<a href="examples/example1">Canonical</a>, <a href="examples/example1.xml">XML</a>, <a href="examples/example1.json">JSON-LD</a>, <a href="examples/example1.ttl">Turtle</a>, <a href="examples/example1.nt">NT</a>, <a href="examples/example1.html">HTML</a>)'> Turning to the Model document, it has a lot of examples - 27 in all. These have not yet been turned into discrete files AFAICT. Looking at Example 1, I see { "@context": { "odrl": "http://www.w3.org/ns/odrl/2/" }, "@type": "odrl:Set", "@id": "http://example.com/policy:1010", "permission": [{ "target": "http://example.com/asset:9898", "action": "odrl:read" }], "prohibition": [{ "target": "http://example.com/asset:9898", "action": "odrl:reproduce" }] } If I put that through a converter, I get just one triple: <http://example.com/policy:1010> a odrl:Set . All the permissions appear to be absent. So there's an error somewhere and I fiddled around and, well, first I need to go back to Turtle so I can see what I'm doing. I get this: @prefix odrl: <http://www.w3.org/ns/odrl/2/> . <http://example.com/policy:0231> a odrl:Set ; odrl:permission [ a odrl:Permission; odrl:target <http://example.com/asset:9898>; odrl:action odrl:read ]; odrl:prohibition [ a odrl:Prohibition; odrl:target <http://example.com/asset:9898>; odrl:action odrl:reproduce ] . Which converts to JSON-LD as { "@context": { "odrl": "http://www.w3.org/ns/odrl/2/", "rdf": "http://www.w3.org/1999/02/22-rdf-syntax-ns#", "rdfs": "http://www.w3.org/2000/01/rdf-schema#", "xsd": "http://www.w3.org/2001/XMLSchema#" }, "@graph": [ { "@id": "http://example.com/policy:0231", "@type": "odrl:Set", "odrl:permission": { "@id": "_:ub6bL4C18" }, "odrl:prohibition": { "@id": "_:ub6bL9C20" } }, { "@id": "_:ub6bL9C20", "@type": "odrl:Prohibition", "odrl:action": { "@id": "odrl:reproduce" }, "odrl:target": { "@id": "http://example.com/asset:9898" } }, { "@id": "_:ub6bL4C18", "@type": "odrl:Permission", "odrl:action": { "@id": "odrl:read" }, "odrl:target": { "@id": "http://example.com/asset:9898" } } ] } I'll see if I can simplify that into something more readable but the my basic question is do the 27 examples in the model document and the 12 in the vocab document give a good spread and therefore can provide the basis of a test suite? This also addresses my action-43 which is about invalid JSON-LD examples. Phil -- Phil Archer Data Strategist, W3C http://www.w3.org/ http://philarcher.org +44 (0)7887 767755 @philarcher1
Received on Monday, 10 April 2017 12:22:21 UTC