Create Custom Relations
PoolParty allows you to add new relations to your custom ontology.
Note
You can add a custom relation to a custom ontology. For more information on how to create a custom ontology, refer to Create a Custom Ontology.
Note
You can also add custom relations to custom schemes. For more information, refer to Add Classes, Relations and Attributes to Your Custom Scheme
Open the Ontology Management by clicking its icon on the toolbar.
Go to Custom Ontologies and right click the node representing the custom ontology where you want to add a new relation.
Select New Relation.
The New Relation dialog opens
Specify all mandatory settings. For more information, refer to the Mandatory Settings on the New Relation Dialog section below.
Optional: Specify optional settings. For more information, refer to the Optional Settings on the New Relation Dialog section below.
Confirm with Create.
Open the Ontology Management by clicking its icon on the toolbar.
Go to Custom Ontologies and expand the node representing the custom ontology to which you want to add a new relation.
Right click Relations.
Select New Relation.
Tip
Alternatively, you can access this option by double clicking the Relations node.
The New Relation dialog opens
Specify all mandatory settings. For more information, refer to the Mandatory Settings on the New Relation Dialog section below.
Optional: Specify optional settings. For more information, refer to the Optional Settings on the New Relation Dialog section below.
Confirm with Create.
Open the Ontology Management by clicking its icon on the toolbar.
Go to Custom Ontologies and select the node representing the custom ontology where you want to add a new relation.
Click Add next to Relations in the ontology Details View.
The New Relation dialog opens
Specify all mandatory settings. For more information, refer to the Mandatory Settings on the New Relation Dialog section below.
Optional: Specify optional settings. For more information, refer to the Optional Settings on the New Relation Dialog section below.
Confirm with Create.
Open the Ontology Management by clicking its icon on the toolbar.
Go to Custom Ontologies and expand the node representing the custom ontology where you want to add a new relation.
Select the Relations node.
Select New Relation.
The New Relation dialog opens
Specify all mandatory settings. For more information, refer to the Mandatory Settings on the New Relation Dialog section below.
Optional: Specify optional settings. For more information, refer to the Optional Settings on the New Relation Dialog section below.
Confirm with Create.
Relation name (1)
The specified name without spaces gets appended to the base URI and scheme identifier forming a relation URI. For more information on how to define the URI pattern, refer to Define the URI Pattern for a Custom Ontology or Custom Scheme.
Relation type (2)
Per default, the Directed relation is selected. A directed relation allows you to define a relationship between two concepts where the property is only defined in one direction similar to
skos:inScheme
.The Symmetric relation expresses a relationship between two concepts where the same property is used in both directions, similar to the
skos:related
property.The Inverse relation expresses a relationship between two concepts where the different properties are used in both directions, similar to the
skos:broader
andskos:narrower
properties.Domain and range classes (3)
Specify the domain and range classes using the the drop downs to the left and to the right of the relation type.
Note
For a Symmetric relation, only the domain class selection is active.
You can select from all classes available in the ontology. In addition, the SKOS classes 'Concept', 'Label' and 'Concept Scheme' are available.
Selecting No Restriction (default) allows you to use the relation regardless of the classes assigned to the resources between which you create the relation.
Inverse relation name (4)
This field is available only for inverse relations.
Usage (5)
If you want this relation to only be used once between two resources, select Unique Use .
Language (6)
Language of the new relation. This list depends on the language settings for the custom ontology.
Select Edit to edit the prefilled relation URI (1).
Sub-Property of
If you want this relation to be a sub-property of another, choose the desired parent relation from the relations in the ontology and all SKOS relations (2).
To add a description for the new relation, select the Description tab (3).
Below you see OWL statements created for a directed relation. As you can see a directed relation is defined as an owl:ObjectProperty
and rdfs:label
is used for the name. The rdfs:domain
and rdfs:range
are used to define the respective class restrictions. Finally, rdfs:comment
is used for the description. To indicated Unique Use , the relation in addition becomes owl:FunctionalProperty
. The rdfs:subPropertyOf
relation defines the sub-property.
<http://doku.poolparty.biz/cocktail-ontology/Uses-Garnish> a owl:ObjectProperty; dcterms:created "2019-02-03T12:41:42.037Z"^^xsd:dateTime; dcterms:creator <http://resource.semantic-web.at/user/admin>; rdfs:domain <http://doku.poolparty.biz/cocktail-ontology/Cocktail>; rdfs:label "Uses Garnish"@en; rdsf:comment "Directed relation between a Cocktail and it's Garnish."@en rdfs:range <http://doku.poolparty.biz/cocktail-ontology/Garnish> .
Below you see OWL statements created for an inverse relation. As you can see, inverse relations are created as owl:ObjectProperty
. The inverse relation is indicated by the owl:inverseOf
relation. All other definitions are the same as for the other relations.
<http://doku.poolparty.biz/cocktail-ontology/hasIngredient> a owl:ObjectProperty; rdfs:domain <http://doku.poolparty.biz/cocktail-ontology/Cocktail>; rdfs:label "hasIngredient"@en; rdfs:range <http://doku.poolparty.biz/cocktail-ontology/Ingredients>; owl:inverseOf <http://doku.poolparty.biz/cocktail-ontology/ingredientOf> . <http://doku.poolparty.biz/cocktail-ontology/ingredientOf> a owl:ObjectProperty; rdfs:domain <http://doku.poolparty.biz/cocktail-ontology/Ingredients>; rdfs:label "ingredientOf"@en; rdfs:range <http://doku.poolparty.biz/cocktail-ontology/Cocktail>; owl:inverseOf <http://doku.poolparty.biz/cocktail-ontology/hasIngredient> .
Below you see OWL statements created for a symmetric relation. As you can see, symmetric relations are created as owl:SymmetricProperty
. All other definitions are the same as for the other relations.
<http://doku.poolparty.biz/cocktail-ontology/variantOf> a owl:SymmetricProperty; rdfs:domain <http://doku.poolparty.biz/cocktail-ontology/Cocktail>; rdfs:label "variantOf"; rdfs:range <http://doku.poolparty.biz/cocktail-ontology/Cocktail> .
Tip
If you would like to learn more about this topic, please watch this PoolParty Academy Tutorial video:
2.9 Extending Your Taxonomy With Custom Schemes & Ontologies
When the video is not available, you can sign up to the PoolParty Academy.