
Hi, Here's a proposal for an OWL notation for ordered lists:
<!-- link A link B link C O--------------O--------------O--------------O
(--------------------------------------------) link Z --> @prefix nml: <http://example.ogf.org/schemas/nml/> . @prefix nmlrel: <http://example.ogf.org/schemas/nml-relation/> . @prefix ex: <urn:ogf:network:example.net:2012> .
ex:linkZ a nml:Link ; nml:capacity 1000000000 ; nmlrel:serialCompoundLinkSequence ex:linkZ_1 .
ex:linkZ_1 a nmlrel:serialCompoundLinkSegment ; nmlrel:serialCompoundLink ex:linkA ; nmlrel:next ex:linkZ_2 .
ex:linkZ_2 a nmlrel:serialCompoundSegment ; nmlrel:serialCompoundLink ex:linkB ; nmlrel:next ex:linkZ_3 .
ex:linkZ_3 a nmlrel:serialCompoundSegment ; nmlrel:serialCompoundLink ex:linkC .
Jeroen.

Jeroen van der Ham wrote:
@prefix nml: <http://example.ogf.org/schemas/nml/> . @prefix nmlrel: <http://example.ogf.org/schemas/nml-relation/> . @prefix ex: <urn:ogf:network:example.net:2012> .
ex:linkZ a nml:Link ; nml:capacity 1000000000 ; nmlrel:isSerialCompoundLink ex:linkZ_1 .
ex:linkZ_1 a nmlrel:serialCompoundLinkSegment ; nmlrel:serialCompoundLink ex:linkA ; nmlrel:next ex:linkZ_2 .
ex:linkZ_2 a nmlrel:serialCompoundSegment ; nmlrel:serialCompoundLink ex:linkB ; nmlrel:next ex:linkZ_3 .
ex:linkZ_3 a nmlrel:serialCompoundSegment ; nmlrel:serialCompoundLink ex:linkC .
I think it is a good proposal. One question: Is the _1, _2 etc obligatory, or can this be any URI? I presume any URI will do, since the "next" already cares about the ordering. Two comments: 1. I prefer to use a verb for the nmlrel:isSerialCompoundLink, thus nmlrel:isSerialCompoundLinkSequence or nmlrel:isSerialCompoundLink 2. The exact namespace (prefix) is still an open question: artf6535. PS: My usual approach to test if I like a proposal is to toy with some variants. Except for adding the verb to nmlrel:serialCompoundLinkSequence, Jeroen's proposal is better, so I support it. FYI I briefly toyed with these 3 variants: 1. nmlrel:serialCompoundLinkSequence -> nmlrel:isSerialCompoundLinkSequence or nmlrel:isSerialCompoundLink 2. Add explicit "last" relation 3. Use nml:alias instead of nmlrel:serialCompoundLink.
@prefix nml: <http://example.ogf.org/schemas/nml/> . @prefix nmlrel: <http://example.ogf.org/schemas/nml-relation/> . @prefix ex: <urn:ogf:network:example.net:2012> .
ex:linkZ a nml:Link ; nml:capacity 1000000000 ; nmlrel:isSerialCompoundLink ex:linkZ_1 .
ex:linkZ_1 a nmlrel:serialCompoundLinkSegment ; nml:alias ex:linkA ; nmlrel:next ex:linkZ_2 .
ex:linkZ_2 a nmlrel:serialCompoundSegment ; nml:alias ex:linkB ; nmlrel:next ex:linkZ_3 .
ex:linkZ_3 a nmlrel:serialCompoundSegment ; nml:alias ex:linkC . nmlrel:last "" .

Jeroen van der Ham wrote:
@prefix nml: <http://example.ogf.org/schemas/nml/> . @prefix nmlrel: <http://example.ogf.org/schemas/nml-relation/> . @prefix ex: <urn:ogf:network:example.net:2012> .
ex:linkZ a nml:Link ; nml:capacity 1000000000 ; nmlrel:serialCompoundLinkSequence ex:linkZ_1 .
ex:linkZ_1 a nmlrel:serialCompoundLinkSegment ; nmlrel:serialCompoundLink ex:linkA ; nmlrel:next ex:linkZ_2 .
ex:linkZ_2 a nmlrel:serialCompoundSegment ; nmlrel:serialCompoundLink ex:linkB ; nmlrel:next ex:linkZ_3 .
ex:linkZ_3 a nmlrel:serialCompoundSegment ; nmlrel:serialCompoundLink ex:linkC .
Generalised list structure alternative proposal:
@prefix nml: <http://example.ogf.org/schemas/nml/> . @prefix nmlrel: <http://example.ogf.org/schemas/nml-relation/> . @prefix ex: <urn:ogf:network:example.net:2012> .
ex:linkZ a nml:Link ; nml:capacity 1000000000 ; nmlrel:isSerialCompoundLink ex:linkZ_1 .
ex:linkZ_1 a nmlrel:ListItem ; nmlrel:item ex:linkA ; nmlrel:next ex:linkZ_2 .
ex:linkZ_2 a nmlrel:ListItem ; nmlrel:item ex:linkB ; nmlrel:next ex:linkZ_3 .
ex:linkZ_3 a nmlrel:ListItem ; nmlrel:item ex:linkC .
participants (2)
-
Freek Dijkstra
-
Jeroen van der Ham