Class: Edge
A relationship between two nodes.
Currently the only kinds of edges supported in KGCL:
__
_ * A subClassOf B <==> Edge(subject=A, predicate=owl:subClassOf, object=B)_
_ * A subClassOf P some B <==> Edge(subject=A, predicate=P, object=B)_
_ * P subPropertyOf Q <==> Edge(subject=P, predicate=owl:subPropertyOf, object=Q)_
__
These represent the most common kind of pairwise relationship between classes, and classes are the dominant node type in ontologies.
In future a wider variety of OWL axiom types will be supportedn through the use of an additional edge property/slot to indicate the interpretation of the axiom, following owlstar (https://github.com/cmungall/owlstar).
For example:
_ * A subClassOf R only B <==> Edge(subject=A, predicate=P, object=B, interpretation=AllOnly)
_
_ * A Annotation(P,B) <==> Edge(subject=A, predicate=P, object=B, interpretation=annotationAssertion)
_
__
Note that not all axioms are intended to map to edges. Axioms/triples where the object is a literal would be represented as node properties. Complex OWL axioms involving nesting would have their own dedicated construct, or may be represented generically. These are out of scope for the current version of KGCL
URI: kgcl:Edge
Inheritance
- OntologyElement
- Edge
Slots
Name | Cardinality and Range | Description | Inheritance |
---|---|---|---|
subject | 0..1 Node |
direct | |
predicate | 0..1 Node |
direct | |
object | 0..1 Node |
direct | |
subject_representation | 0..1 String |
direct | |
predicate_representation | 0..1 String |
direct | |
object_representation | 0..1 String |
direct | |
annotation_set | 0..1 Annotation |
direct |
Usages
used by | used in | type | used |
---|---|---|---|
EdgeChange | about_edge | range | Edge |
EdgeCreation | about_edge | range | Edge |
PlaceUnder | about_edge | range | Edge |
EdgeDeletion | about_edge | range | Edge |
RemoveUnder | about_edge | range | Edge |
EdgeObsoletion | about_edge | range | Edge |
EdgeRewiring | about_edge | range | Edge |
MappingCreation | about_edge | range | Edge |
NodeMove | about_edge | range | Edge |
NodeDeepening | about_edge | range | Edge |
NodeShallowing | about_edge | range | Edge |
PredicateChange | about_edge | range | Edge |
EdgeLogicalInterpretationChange | about_edge | range | Edge |
Aliases
- triple
- axiom
- relationship
Identifier and Mapping Information
Schema Source
- from schema: https://w3id.org/kgcl
Mappings
Mapping Type | Mapped Value |
---|---|
self | kgcl:Edge |
native | kgcl:Edge |
undefined | owl:Axiom, rdf:Statement |
LinkML Source
Direct
name: Edge
description: "A relationship between two nodes.\nCurrently the only kinds of edges\
\ supported in KGCL:\n\n * A subClassOf B <==> Edge(subject=A, predicate=owl:subClassOf,\
\ object=B)\n * A subClassOf P some B <==> Edge(subject=A, predicate=P, object=B)\n\
\ * P subPropertyOf Q <==> Edge(subject=P, predicate=owl:subPropertyOf, object=Q)\n\
\nThese represent the most common kind of pairwise relationship between classes,\
\ and classes are the dominant node type in ontologies.\nIn future a wider variety\
\ of OWL axiom types will be supportedn through the use of an additional edge property/slot\
\ to indicate the interpretation of the axiom, following owlstar (https://github.com/cmungall/owlstar).\n\
For example:\n * `A subClassOf R only B <==> Edge(subject=A, predicate=P, object=B,\
\ interpretation=AllOnly)`\n * `A Annotation(P,B) <==> Edge(subject=A, predicate=P,\
\ object=B, interpretation=annotationAssertion)`\n\nNote that not all axioms are\
\ intended to map to edges. Axioms/triples where the object is a literal would be\
\ represented as node properties. Complex OWL axioms involving nesting would have\
\ their own dedicated construct, or may be represented generically. These are out\
\ of scope for the current version of KGCL"
from_schema: https://w3id.org/kgcl
aliases:
- triple
- axiom
- relationship
mappings:
- owl:Axiom
- rdf:Statement
is_a: OntologyElement
slots:
- subject
- predicate
- object
- subject_representation
- predicate_representation
- object_representation
- annotation_set
Induced
name: Edge
description: "A relationship between two nodes.\nCurrently the only kinds of edges\
\ supported in KGCL:\n\n * A subClassOf B <==> Edge(subject=A, predicate=owl:subClassOf,\
\ object=B)\n * A subClassOf P some B <==> Edge(subject=A, predicate=P, object=B)\n\
\ * P subPropertyOf Q <==> Edge(subject=P, predicate=owl:subPropertyOf, object=Q)\n\
\nThese represent the most common kind of pairwise relationship between classes,\
\ and classes are the dominant node type in ontologies.\nIn future a wider variety\
\ of OWL axiom types will be supportedn through the use of an additional edge property/slot\
\ to indicate the interpretation of the axiom, following owlstar (https://github.com/cmungall/owlstar).\n\
For example:\n * `A subClassOf R only B <==> Edge(subject=A, predicate=P, object=B,\
\ interpretation=AllOnly)`\n * `A Annotation(P,B) <==> Edge(subject=A, predicate=P,\
\ object=B, interpretation=annotationAssertion)`\n\nNote that not all axioms are\
\ intended to map to edges. Axioms/triples where the object is a literal would be\
\ represented as node properties. Complex OWL axioms involving nesting would have\
\ their own dedicated construct, or may be represented generically. These are out\
\ of scope for the current version of KGCL"
from_schema: https://w3id.org/kgcl
aliases:
- triple
- axiom
- relationship
mappings:
- owl:Axiom
- rdf:Statement
is_a: OntologyElement
attributes:
subject:
name: subject
from_schema: https://w3id.org/kgcl
rank: 1000
alias: subject
owner: Edge
domain_of:
- EdgeCreation
- EdgeDeletion
- EdgeObsoletion
- MappingCreation
- Edge
range: Node
predicate:
name: predicate
from_schema: https://w3id.org/kgcl
rank: 1000
alias: predicate
owner: Edge
domain_of:
- EdgeCreation
- EdgeDeletion
- EdgeObsoletion
- MappingCreation
- NewSynonym
- NewMapping
- RemoveMapping
- NewMetadataAssertion
- RemoveMetadataAssertion
- Edge
range: Node
object:
name: object
from_schema: https://w3id.org/kgcl
rank: 1000
alias: object
owner: Edge
domain_of:
- EdgeCreation
- EdgeDeletion
- EdgeObsoletion
- MappingCreation
- NewMapping
- RemoveMapping
- NewMetadataAssertion
- RemoveMetadataAssertion
- Edge
range: Node
subject_representation:
name: subject_representation
deprecated: no longer required
from_schema: https://w3id.org/kgcl
rank: 1000
alias: subject_representation
owner: Edge
domain_of:
- Edge
range: string
predicate_representation:
name: predicate_representation
deprecated: no longer required
from_schema: https://w3id.org/kgcl
rank: 1000
alias: predicate_representation
owner: Edge
domain_of:
- Edge
range: string
object_representation:
name: object_representation
deprecated: no longer required
from_schema: https://w3id.org/kgcl
rank: 1000
alias: object_representation
owner: Edge
domain_of:
- Edge
range: string
annotation_set:
name: annotation_set
from_schema: https://w3id.org/kgcl
rank: 1000
alias: annotation_set
owner: Edge
domain_of:
- EdgeCreation
- EdgeDeletion
- EdgeObsoletion
- MappingCreation
- NodeCreation
- Annotation
- Node
- Edge
range: Annotation