Siddharth Trikha
Siddharth Trikha

Reputation: 2506

Graph IRI in a SPARQL Query and SPARQL UPDATE operation in oneM2M IoT Standard?

In oneM2M, the <semanticDescriptor> can be updated with SPARQL UPDATE operation with INSERT/DELETE and a Semantic Query (SELECT, CONSTRUCT, ASK, DESCRIBE) can be targeted towards a resource to derive semantic information.

For Update of <semanticDescriptor> resource in TR-0007-Study of Abstraction and Semantics Enablements example is given:

INSERT DATA { GRAPH graph_uri { .. RDF payload .. } }

EXAMPLE 1: Add semantic instance to a resource using INSERT DATA statement:

INSERT DATA {

GRAPH <http://<Hosting CSE address>/<CSEBase>/<AE>/<semanticDescriptor>> {

saref:WASH_LG_123 msm:hasOperation saref:WashingOperation_123

}

EDITED:

So SPARQL Query and UPDATE operations can have graph_uri which can be specified in queries, in technical terms Named Graphs.

First Question:

My question is in context of Semantics, as a Semantics Repository (RDF Database) is collection of GRAPHS, so in our case probably each Semantic Descriptor would be represented as a single Graph.

In this context, does oneM2M recommend using structured resource id: <http://<Hosting CSE address>/<CSEBase>/<AE>/<semanticDescriptor>> to be the IRI for that GRAPH in the Semantics Repository.

As I am not able to find any reference regarding same in TS-0034-Semantics-Support, TS-0001/0004 documents.

Follow-up Question:

If oneM2M doesn't recommend anything for graph_uri in Semantic Repository, How is an Originator bound to use the IRI/URI in its Semantic Query (SELECT, CONSTRUCT, ASK, DESCRIBE) or SPARQL UPDATE (INSERT/DELETE) ??

As every CSE then can have it's own way of giving a graph_uri to its GRAPHs in Semantic Repository, if it's not standardized.

Upvotes: 1

Views: 309

Answers (1)

Andreas Kraft
Andreas Kraft

Reputation: 3843

Did you have a look at TS-0004? There is a detailed description of each resource type and the operations for each of them. The <semanticDescriptor> is described in section 7.4.34 "Resource Type <semanticDescriptor>".

The <semanticDescriptor> has an attribute descriptorRepresentation that indicates the type used for the serialization of the descriptor attribute in the same resource. The type of this attribute is defined in TS-0004, section 6.3.4.2.48 "m2m:semanticFormat".

References in oneM2M are usually of type xs:anyURI. You can use any of the addressing schemes defined in TS-0001, section 9.3 "Resource Addressing", to reference another resource in the same or in another CSE.

Upvotes: 0

Related Questions