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:subPropertyOfnml: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:subPropertyOfnml:
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> |