This is a static archive of the previous Open Grid Forum GridForge content management system saved from host forge.ogf.org file /sf/sfmain/do/go/artf6575?nav=1&selectedTab=comments at Sun, 06 Nov 2022 14:38:30 GMT SourceForge : artf6575: NML relation in RDF

Project Home

Tracker

Documents

Tasks

Source Code

Discussions

File Releases

Wiki

Project Admin

NML-WG Homepage
Search Tracker
Project: NML-WG     Trackers > Schema Progress > View Artifact
Artifact artf6575 : NML relation in RDF
Tracker: Schema Progress
Title: NML relation in RDF
Description:
RDF regards an NML relations as any other property. In order to distinguish in RDF between 

    <nml:Relation type="http://schemas.ogf.org/nml/2013/10/base#hasInboundPort">
and
    <nml:hasInboundPort>

Propose: RDF needs to add the following triplet for all NML relations:
    nml:hasInboundPort rdfs:subPropertyOf nml:Relation .

Note: a NML version 1 compliant client does not need to add the these triplets for relations defined in version 1 of NML
, but it MUST include them for other relations if they are used in the description. Eg. if it is using a relation 
defined in the experimental extension schema.


Example 1: the following two syntaxes are equivalent.

RDF:

 @prefix nml: <http://schemas.ogf.org/nml/2013/10/base#>; .
 nml:hasInboundPort rdfs:subPropertyOf‎nml:Relation .
 urn:ogf:network:example.net:2012:mynode a nml:Node .
 urn:ogf:network:example.net:2012:mynode nml:hasInboundPort urn:ogf:network:example.net:2012:myport .
 urn:ogf:network:example.net:2012:myport a nml:Port .

XML:

 <nml:Node id="urn:ogf:network:example.net:2012:mynode">
   <nml:Relation type="http://schemas.ogf.org/nml/2013/10/base#hasInboundPort">
     <nml:Port idRef="urn:ogf:network:example.net:2012:myport" />
   </nml:Relation>
 </nml:Node>

Example 2: the following two syntaxes are equivalent (note the missing "nml:hasInboundPort rdfs:subPropertyOf‎nml:
Relation ." line)

RDF:

 @prefix nml: <http://schemas.ogf.org/nml/2013/10/base#>; .
 urn:ogf:network:example.net:2012:mynode a nml:Node .
 urn:ogf:network:example.net:2012:mynode nml:hasInboundPort urn:ogf:network:example.net:2012:myport .
 urn:ogf:network:example.net:2012:myport a nml:Port .

XML:

 <nml:Node id="urn:ogf:network:example.net:2012:mynode">
   <nml:hasInboundPort">
     <nml:Port idRef="urn:ogf:network:example.net:2012:myport" />
   </nml:hasInboundPort>
 </nml:Node>
Submitted By: Freek Dijkstra
Submitted On: 07/18/2012 10:53 AM EDT
Last Modified: 11/30/2012 8:00 AM EST
Closed: 11/30/2012 8:00 AM EST

Status / Comments Change Log Associations Attachments  
Status  
Status:* Completed
Category:* RDF syntax
Priority: * 2
Assigned To: * None
Comments
Jeroen van der Ham: 11/30/2012 8:00 AM EST
  Action: Update
Closed set to 11/30/2012
Status changed from Last Call to Completed
Freek Dijkstra: 09/07/2012 3:29 AM EDT
  Action: Update
Status changed from Under discussion to Last Call
Freek Dijkstra: 09/06/2012 9:54 AM EDT
  Comment:
I changed:
    nml:hasInboundPort a nml:Relation .
to
    nml:hasInboundPort rdfs:subPropertyOf nml:Relation .

After discussion with Jeroen.
  Action: Update
Freek Dijkstra: 09/06/2012 9:53 AM EDT
  Action: Update
Description changed from
RDF regards an NML relations as any other property. In order to distinguish in RDF between 

    <nml:Relation type="http://schemas.ogf.org/nml/2013/10/base#hasInboundPort">;
and
    <nml:hasInboundPort>

Propose: RDF needs to add the following triplet for all NML relations:
    nml:hasInboundPort a nml:Relation .

Note: a NML version 1 compliant client does not need to add the these triplets for relations defined in version 1 of NML
, but it MUST include them for other relations if they are used in the description. Eg. if it is using a relation 
defined in the experimental extension schema.


Example 1: the following two syntaxes are equivalent.

RDF:

 @prefix nml: <http://schemas.ogf.org/nml/2013/10/base#>; .
 nml:hasInboundPort a nml:Relation .
 urn:ogf:network:example.net:2012:mynode a nml:Node .
 urn:ogf:network:example.net:2012:mynode nml:hasInboundPort urn:ogf:network:example.net:2012:myport .
 urn:ogf:network:example.net:2012:myport a nml:Port .

XML:

 <nml:Node id="urn:ogf:network:example.net:2012:mynode">
   <nml:Relation type="http://schemas.ogf.org/nml/2013/10/base#hasInboundPort">;
     <nml:Port idRef="urn:ogf:network:example.net:2012:myport" />
   </nml:Relation>
 </nml:Node>

Example 2: the following two syntaxes are equivalent (note the missing "nml:hasInboundPort a nml:Relation ." line)

RDF:

 @prefix nml: <http://schemas.ogf.org/nml/2013/10/base#>; .
 urn:ogf:network:example.net:2012:mynode a nml:Node .
 urn:ogf:network:example.net:2012:mynode nml:hasInboundPort urn:ogf:network:example.net:2012:myport .
 urn:ogf:network:example.net:2012:myport a nml:Port .

XML:

 <nml:Node id="urn:ogf:network:example.net:2012:mynode">
   <nml:hasInboundPort">
     <nml:Port idRef="urn:ogf:network:example.net:2012:myport" />
   </nml:hasInboundPort>
 </nml:Node>
to
RDF regards an NML relations as any other property. In order to distinguish in RDF between 

    <nml:Relation type="http://schemas.ogf.org/nml/2013/10/base#hasInboundPort">;
and
    <nml:hasInboundPort>

Propose: RDF needs to add the following triplet for all NML relations:
    nml:hasInboundPort rdfs:subPropertyOf nml:Relation .

Note: a NML version 1 compliant client does not need to add the these triplets for relations defined in version 1 of NML
, but it MUST include them for other relations if they are used in the description. Eg. if it is using a relation 
defined in the experimental extension schema.


Example 1: the following two syntaxes are equivalent.

RDF:

 @prefix nml: <http://schemas.ogf.org/nml/2013/10/base#>; .
 nml:hasInboundPort rdfs:subPropertyOf‎nml:Relation .
 urn:ogf:network:example.net:2012:mynode a nml:Node .
 urn:ogf:network:example.net:2012:mynode nml:hasInboundPort urn:ogf:network:example.net:2012:myport .
 urn:ogf:network:example.net:2012:myport a nml:Port .

XML:

 <nml:Node id="urn:ogf:network:example.net:2012:mynode">
   <nml:Relation type="http://schemas.ogf.org/nml/2013/10/base#hasInboundPort">;
     <nml:Port idRef="urn:ogf:network:example.net:2012:myport" />
   </nml:Relation>
 </nml:Node>

Example 2: the following two syntaxes are equivalent (note the missing "nml:hasInboundPort rdfs:subPropertyOf‎nml:
Relation ." line)

RDF:

 @prefix nml: <http://schemas.ogf.org/nml/2013/10/base#>; .
 urn:ogf:network:example.net:2012:mynode a nml:Node .
 urn:ogf:network:example.net:2012:mynode nml:hasInboundPort urn:ogf:network:example.net:2012:myport .
 urn:ogf:network:example.net:2012:myport a nml:Port .

XML:

 <nml:Node id="urn:ogf:network:example.net:2012:mynode">
   <nml:hasInboundPort">
     <nml:Port idRef="urn:ogf:network:example.net:2012:myport" />
   </nml:hasInboundPort>
 </nml:Node>

Jason Zurawski: 09/05/2012 10:35 AM EDT
  Comment:
fine with me
  Action: Update
Freek Dijkstra: 09/05/2012 9:35 AM EDT
  Action: Update
Status changed from Need proposal to Under discussion
Freek Dijkstra: 09/05/2012 9:34 AM EDT
  Action: Update
Description changed from
RDF does not differentiate between NML relations and other relations.

A) If a relation is translated from RDF to XML, how to determine if the relation is a NML relation or not?

E.g. the following code 

 @prefix nml: <http://schemas.ogf.org/nml/2013/10/base#>;
 @prefix nmlrel: <http://schemas.ogf.org/nml/2013/10/relation#>;
 urn:ogf:network:example.net:2012:mynode a nml:Node
 urn:ogf:network:example.net:2012:mynode nmlrel:hasInboundPort urn:ogf:network:example.net:2012:myport
 urn:ogf:network:example.net:2012:myport a nml:Port

Can either translate to:

 <nml:Node id="urn:ogf:network:example.net:2012:mynode">
   <nmlrel:hasInboundPort>
     <nml:Port idRef="urn:ogf:network:example.net:2012:myport" />
   </nmlrel:hasInboundPort>
 </nml:Node>

or to:

 <nml:Node id="urn:ogf:network:example.net:2012:mynode">
   <nml:Relation type="http://schemas.ogf.org/nml/2013/10/relation#hasInboundPort">;
     <nml:Port idRef="urn:ogf:network:example.net:2012:myport" />
   </nml:Relation>
 </nml:Node>

Options:

1. Use nml:Relation for relations in the http://schemas.ogf.org/nml namespace.
2. Use nml:Relation for a set of predefined relations.
3. Add some syntax to RDF to differentiate between a nml:Relation and some other relation
4. Never use a nml:Relation, even not for relations in the http://schemas.ogf.org/nml namespace.
5. Always use a nml:Relation, even for relations outside the http://schemas.ogf.org/nml namespace.
to
RDF regards an NML relations as any other property. In order to distinguish in RDF between 

    <nml:Relation type="http://schemas.ogf.org/nml/2013/10/base#hasInboundPort">;
and
    <nml:hasInboundPort>

Propose: RDF needs to add the following triplet for all NML relations:
    nml:hasInboundPort a nml:Relation .

Note: a NML version 1 compliant client does not need to add the these triplets for relations defined in version 1 of NML
, but it MUST include them for other relations if they are used in the description. Eg. if it is using a relation 
defined in the experimental extension schema.


Example 1: the following two syntaxes are equivalent.

RDF:

 @prefix nml: <http://schemas.ogf.org/nml/2013/10/base#>; .
 nml:hasInboundPort a nml:Relation .
 urn:ogf:network:example.net:2012:mynode a nml:Node .
 urn:ogf:network:example.net:2012:mynode nml:hasInboundPort urn:ogf:network:example.net:2012:myport .
 urn:ogf:network:example.net:2012:myport a nml:Port .

XML:

 <nml:Node id="urn:ogf:network:example.net:2012:mynode">
   <nml:Relation type="http://schemas.ogf.org/nml/2013/10/base#hasInboundPort">;
     <nml:Port idRef="urn:ogf:network:example.net:2012:myport" />
   </nml:Relation>
 </nml:Node>

Example 2: the following two syntaxes are equivalent (note the missing "nml:hasInboundPort a nml:Relation ." line)

RDF:

 @prefix nml: <http://schemas.ogf.org/nml/2013/10/base#>; .
 urn:ogf:network:example.net:2012:mynode a nml:Node .
 urn:ogf:network:example.net:2012:mynode nml:hasInboundPort urn:ogf:network:example.net:2012:myport .
 urn:ogf:network:example.net:2012:myport a nml:Port .

XML:

 <nml:Node id="urn:ogf:network:example.net:2012:mynode">
   <nml:hasInboundPort">
     <nml:Port idRef="urn:ogf:network:example.net:2012:myport" />
   </nml:hasInboundPort>
 </nml:Node>

Freek Dijkstra: 08/08/2012 10:27 AM EDT
  Action: Update
Priority changed from 3 to 2
Freek Dijkstra: 08/08/2012 7:10 AM EDT
  Comment:
I propose the following solution:

* A NML version x compliant renderer MUST use the second NML Relation syntax for all relations defined in NML version x. (Thus the parser MUST have a 
list of known NML Relations)
* A RDF description MAY contain an explicit line to signify that something is a NML relation. Either:
  nmlrel:hasInboundPort rdfs:subPropertyOf nml:Relation
* A RDF parser/XML renderer which detects the above line SHOULD use the second NML Relation syntax for this relation.
* In all other cases, the XML renderer MUST use the first relation syntax (thus not use <nml:Relation>)

A question for the RDF folks. What is better:
  nmlrel:hasInboundPort rdfs:subPropertyOf nml:Relation
or
  nmlrel:hasInboundPort a nml:Relation
  Action: Update
Freek Dijkstra: 07/18/2012 10:53 AM EDT
  Action: Create


 
 
 
< Previous
 
 
Next >
 


The Open Grid Forum Contact Webmaster | Report a problem | GridForge Help
This is a static archive of the previous Open Grid Forum GridForge content management system saved from host forge.ogf.org file /sf/sfmain/do/go/artf6575?nav=1&selectedTab=comments at Sun, 06 Nov 2022 14:38:30 GMT