[Nml-wg] Transitivity of hasPort

Jeroen van der Ham vdham at uva.nl
Mon Aug 10 16:09:32 CDT 2009


Hi,

Just to be clear on this, examples of the following proposals so that we 
are all sure that we understand each other. (I'm abbreviating 
"urn:ogf:network:example.org:" to # and default namespace is nml)

I'm also adding a way to describe that something is on a specific layer 
using the "hasLayer" property. This is just an shorthand for whatever 
that we eventually decide will be the way to describe what layer an 
interface is on.

Node                     id     #pxc
SwitchingMatrixServer    id     #pxc:switch
Port                     id     #pxc:port1-ingress
Port                     id     #pxc:port1-egress

Freek Dijkstra wrote:
> I recently thought about this, and it seems we have 3 options:
> 1) No transitivity:
> You have to specify all 16 "hasPort" relation, as in the example I sent 
> out previous week.

#pxc                hasService  #pxc:switch
#pxc                hasPort     #pxc:port1-ingress
#pxc                hasPort     #pxc:port1-egress
#pxc:switch         hasPort     #pxc:port1-ingress
#pxc:switch         hasPort     #pxc:port1-egress
#pxc:switch         hasLayer	foo
#pxc:port1-ingress  hasLayer    foo
#pxc:port1-egress   hasLayer    foo

> 
> 2) Transitivity from Node to Service:
> If there is a hasPort relation between a Node and a Port, and also a 
> hasService between the same Node and a Service, then it is implied that 
> there is also a hasPort relation between the Service and the Port, 
> _provided that the Port is on the same layer as the Service_. This 
> scenario was discussed in the call, and we added this condition to cope 
> with Nodes with services on multiple layers.

#pxc                hasService  #pxc:switch
#pxc                hasPort     #pxc:port1-ingress
#pxc                hasPort     #pxc:port1-egress
#pxc:switch         hasLayer	foo
#pxc:port1-ingress  hasLayer    foo
#pxc:port1-egress   hasLayer    foo

implies:
#pxc:switch         hasPort     #pxc:port1-ingress
#pxc:switch         hasPort     #pxc:port1-egress



> 
> 3) Transitivity from Service to Node:
> If there is a hasPort relation between a Service and a Port, and also a 
> hasService between a Node and the same Service, then it is implied that 
> there is also a hasPort relation between the Node and the Port.

#pxc                hasService  #pxc:switch
#pxc:switch         hasPort     #pxc:port1-ingress
#pxc:switch         hasPort     #pxc:port1-egress
#pxc:switch         hasLayer	foo

implies:
#pxc:port1-ingress  hasLayer    foo
#pxc:port1-egress   hasLayer    foo
#pxc                hasPort     #pxc:port1-ingress
#pxc                hasPort     #pxc:port1-egress


Jeroen.




More information about the nml-wg mailing list