Class: TransitiveEdge

A relation graph edge that is formed from a chain of one or more edges

URI: semsql_rg:TransitiveEdge

classDiagram RelationGraphConstruct <|-- TransitiveEdge TransitiveEdge : object TransitiveEdge : predicate TransitiveEdge : subject

Usage

SELECT * FROM transitive_edge;

Inheritance

Slots

Name Cardinality and Range Description
subject 0..1
Node
The subject of the statement
predicate 0..1
PropertyNode
The predicate of the statement
object 0..1
Node
Note the range of this slot is always a node

Usages

Comments

  • sqlview>> WITH RECURSIVE transitive_edge ( subject, predicate, object, depth ) AS (SELECT subject, predicate, object, 1 FROM edge UNION ALL SELECT e.subject, e.predicate, a.object, a.depth+1 FROM edge AS e JOIN transitive_edge AS a ON e.object = a.subject AND e.predicate = a.predicate ) SELECT * FROM transitive_edge

Identifier and Mapping Information

Schema Source

  • from schema: https://w3id.org/semsql/relation_graph

SQL View

This class has a SQL view definition:

sqlview>>
  WITH RECURSIVE transitive_edge
               (
                     subject, predicate, object, depth
               )
               AS
               (SELECT subject, predicate, object, 1
                  FROM edge
                 UNION ALL
                SELECT
                     e.subject, e.predicate, a.object, a.depth+1
                  FROM edge AS e
                  JOIN transitive_edge AS a
                    ON e.object = a.subject AND e.predicate = a.predicate
               )
            SELECT * FROM transitive_edge

Mappings

Mapping Type Mapped Value
self ['semsql_rg:TransitiveEdge']
native ['semsql_rg:TransitiveEdge']

LinkML Specification

Direct

name: transitive_edge
description: A relation graph edge that is formed from a chain of one or more edges
notes:
- this is equivalent to a property path query in SPARQL
- there may be fewer edges than entailed_edge
comments:
- "sqlview>>\n  WITH RECURSIVE transitive_edge\n               (\n               \
  \      subject, predicate, object, depth\n               )\n               AS\n\
  \               (SELECT subject, predicate, object, 1\n                  FROM edge\n\
  \                 UNION ALL\n                SELECT\n                     e.subject,\
  \ e.predicate, a.object, a.depth+1\n                  FROM edge AS e\n         \
  \         JOIN transitive_edge AS a\n                    ON e.object = a.subject\
  \ AND e.predicate = a.predicate\n               )\n            SELECT * FROM transitive_edge"
from_schema: https://w3id.org/semsql/relation_graph
rank: 1000
is_a: relation_graph_construct
slots:
- subject
- predicate
- object

Induced

name: transitive_edge
description: A relation graph edge that is formed from a chain of one or more edges
notes:
- this is equivalent to a property path query in SPARQL
- there may be fewer edges than entailed_edge
comments:
- "sqlview>>\n  WITH RECURSIVE transitive_edge\n               (\n               \
  \      subject, predicate, object, depth\n               )\n               AS\n\
  \               (SELECT subject, predicate, object, 1\n                  FROM edge\n\
  \                 UNION ALL\n                SELECT\n                     e.subject,\
  \ e.predicate, a.object, a.depth+1\n                  FROM edge AS e\n         \
  \         JOIN transitive_edge AS a\n                    ON e.object = a.subject\
  \ AND e.predicate = a.predicate\n               )\n            SELECT * FROM transitive_edge"
from_schema: https://w3id.org/semsql/relation_graph
rank: 1000
is_a: relation_graph_construct
attributes:
  subject:
    name: subject
    description: The subject of the statement
    from_schema: https://w3id.org/semsql/rdf
    aliases:
    - about
    - source
    - head
    rank: 1000
    slot_uri: rdf:subject
    alias: subject
    owner: transitive_edge
    domain_of:
    - term_association
    - owl_complex_axiom
    - owl_subclass_of_some_values_from
    - owl_equivalent_to_intersection_member
    - statements
    - relation_graph_construct
    - edge
    - subgraph_query
    - subgraph_edge_by_ancestor
    - subgraph_edge_by_descendant
    - subgraph_edge_by_parent
    - subgraph_edge_by_child
    - subgraph_edge_by_self
    - entailed_edge
    - entailed_edge_cycle
    - transitive_edge
    - repair_action
    - problem
    range: node
  predicate:
    name: predicate
    description: The predicate of the statement
    from_schema: https://w3id.org/semsql/rdf
    aliases:
    - relationship type
    - property
    rank: 1000
    slot_uri: rdf:predicate
    alias: predicate
    owner: transitive_edge
    domain_of:
    - term_association
    - owl_complex_axiom
    - owl_subclass_of_some_values_from
    - statements
    - relation_graph_construct
    - edge
    - subgraph_query
    - subgraph_edge_by_ancestor
    - subgraph_edge_by_descendant
    - subgraph_edge_by_parent
    - subgraph_edge_by_child
    - subgraph_edge_by_self
    - entailed_edge
    - entailed_edge_cycle
    - transitive_edge
    - problem
    range: property_node
  object:
    name: object
    description: Note the range of this slot is always a node. If the triple represents
      a literal, instead value will be populated
    from_schema: https://w3id.org/semsql/rdf
    aliases:
    - target
    - sink
    - tail
    rank: 1000
    slot_uri: rdf:object
    alias: object
    owner: transitive_edge
    domain_of:
    - term_association
    - owl_complex_axiom
    - owl_subclass_of_some_values_from
    - owl_equivalent_to_intersection_member
    - statements
    - relation_graph_construct
    - edge
    - subgraph_query
    - subgraph_edge_by_ancestor
    - subgraph_edge_by_descendant
    - subgraph_edge_by_parent
    - subgraph_edge_by_child
    - subgraph_edge_by_self
    - entailed_edge
    - entailed_edge_cycle
    - transitive_edge
    range: node