[Nml-wg] Review of the OWL schema
Freek Dijkstra
Freek.Dijkstra at sara.nl
Thu Dec 27 17:33:14 EST 2012
Here is my review of the OWL schema:
Discrepancy between names in document and OWL schema:
* List should be OrderedList
* endtime should be end
* starttime should be start
* labelvalue should be value
* labelvalues should be values
(I actually like endtime and starttime better, but the document and XSD
schem use end and start)
Missing items:
* nml:canProvidePort relation
* nml:parameter (likely not needed, just as nml:Relation is not needed)
* nml:labelSwapping
(DataProperty with domain: SwitchingService and range: boolean)
* nml:noReturnTraffic
(DataProperty with domain: Link and range: boolean)
Spurious items (should be removed):
* hasSource (use isSource instead)
* hasSink (use isSink instead)
* time (use start and end instead)
The domains and/or ranges of the following Properties are different from
what's allowed in the document:
* hasInboundPort
Domain should be NetworkObject (to allow future extensions)
Range should be Union of Port and PortGroup
* hasLabelGroup
Domain is correct
Range should be Union of LinkGroup and PortGroup
* hasLink
Domain should be Group (to allow future extensions)
Range is correct
* hasNode
Domain should be NetworkObject (to allow future extensions)
Range is correct
* hasOutboundPort
Domain should be NetworkObject (to allow future extensions)
Range should be Union of Port and PortGroup
* hasPort
Domain should be Group (to allow future extensions)
Range should be Union of Port and PortGroup
* hasTopology
Domain should be NetworkObject (to allow future extensions)
Range is correct
* implementedBy
Domain should be NetworkObject (to allow future extensions)
Range should be NetworkObject (to allow future extensions)
* isSerialCompoundLink
Domain is correct
Range should be OrderedList
* isSink
Domain should be NetworkObject (there is an experimental feature
from Node to Link)
Range is correct
* isSource
Domain should be NetworkObject (there is an experimental feature
from Node to Link)
Range is correct
* locatedAt
Domain should be NetworkObject (e.g. Port is perfectly valid)
Range is correct
* providesLink
Domain should be Service (to allow future extensions)
Range is correct
* providesPort
Domain should be Service (to allow future extensions)
Range is correct
* item
Domain is correct
Range is correct (undefined)
* adaptationfunction
Domain is correct
Range should be a URI
* address
Domain is correct
Range should be undefined (typical use is a vCard object)
* encoding
Domain should be Union of Port, PortGroup, Link, and LinkGroup
Range should be a URI
* labeltype
Domain is correct
Range should be a URI
* version
Domain should be NetworkObject (to allow future extensions)
Range should be a dateTime (from XMLSchema)
The ranges of the following DataProperties are a URI, and thus should be
described as a ObjectPoperty instead:
* address (points to a vCard object)
* adaptationfunction (points to an object in a NML extension schema)
* encoding (points to an object in a NML extension schema)
* labeltype (points to an object in a NML extension schema)
For consistency in the document, consider swapping the order of domain
and range in the following DataProperties:
- existsDuring
- hasInboundPort
- hasLabel
- hasLabelGroup
- hasLink
- hasNode
- hasOutboundPort
- hasPort
- hasTopology
- implementedBy
- isAlias
- isSerialCompoundLink
- isSink
- locatedAt
Regards,
Freek
More information about the nml-wg
mailing list