diff options
Diffstat (limited to 'lv2/core')
-rw-r--r-- | lv2/core/lv2core.ttl | 31 |
1 files changed, 24 insertions, 7 deletions
diff --git a/lv2/core/lv2core.ttl b/lv2/core/lv2core.ttl index dd3e6bd..20bcacc 100644 --- a/lv2/core/lv2core.ttl +++ b/lv2/core/lv2core.ttl @@ -146,6 +146,11 @@ lv2:Plugin owl:onProperty doap:name ; owl:someValuesFrom rdf:PlainLiteral ; rdfs:comment "A plugin MUST have at least one untranslated doap:name." ; + ] , [ + a owl:Restriction ; + owl:onProperty lv2:port ; + owl:allValuesFrom lv2:Port ; + rdfs:comment "All ports on a plugin MUST be fully specified lv2:Port instances." ; ] ; lv2:documentation """ <p>The class which represents an LV2 plugin.</p> @@ -162,22 +167,34 @@ e.g. <q>Tape Delay Unit</q>. Use doap:shortdesc or doap:description for more detailed descriptions.</p> """ . +lv2:PortBase + a rdfs:Class , + owl:Class ; + rdfs:label "Port Base" ; + rdfs:subClassOf [ + a owl:Restriction ; + owl:onProperty lv2:symbol ; + owl:cardinality 1 ; + rdfs:comment "A port MUST have exactly one lv2:symbol." ; + ] ; + lv2:documentation """ +<p>Similar to lv2:PluginBase, an abstract port-like resource that MAY not +actually be a fully specified LV2 port . For example, this is used for preset +"ports" which do not specify an index.</p> +""" . + lv2:Port a rdfs:Class , owl:Class ; rdfs:label "Port" ; - rdfs:subClassOf [ + rdfs:subClassOf lv2:PortBase , + [ a owl:Restriction ; owl:onProperty lv2:index ; owl:cardinality 1 ; rdfs:comment "A port MUST have exactly one lv2:index." ; ] , [ a owl:Restriction ; - owl:onProperty lv2:symbol ; - owl:cardinality 1 ; - rdfs:comment "A port MUST have exactly one lv2:symbol." ; - ] , [ - a owl:Restriction ; owl:onProperty lv2:name ; owl:minCardinality 1 ; rdfs:comment "A port MUST have at least one lv2:name." ; @@ -262,7 +279,7 @@ lv2:port a rdf:Property , owl:ObjectProperty ; rdfs:domain lv2:PluginBase ; - rdfs:range lv2:Port ; + rdfs:range lv2:PortBase ; rdfs:label "port" ; rdfs:comment "A port (input or output) on this plugin." . |