Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/doriantaylor/owl-graph-tool

Collaborative Graph Tool Ontology
https://github.com/doriantaylor/owl-graph-tool

ontology

Last synced: 23 days ago
JSON representation

Collaborative Graph Tool Ontology

Awesome Lists containing this project

README

        

Author
Dorian
Taylor

Version
0.2

Created
December 4, 2022

Updated
January 21, 2023

December 12, 2023

October 6, 2024

Namespace URI
https://vocab.methodandstructure.com/graph-tool#

Preferred Namespace Prefix
`cgto`

Ontologies like [the IBIS
vocabulary](https://vocab.methodandstructure.com/ibis#) are intended to
only convey their essential semantic content. There are nevertheless
additional constructs, that do not belong in the core vocabulary, that
need to be expressed in order to fully operationalize the information it
describes as a piece of user-facing software. Such constructs include
the users of the environment, and the graphical representation of the
network itself, from colour palette to the relative (or absolute)
geometry of the individual nodes.

so what ingredients do we know we need?

- basic ACL for users (e.g. view-only, comment, write; users themselves
can be SIOC that connects to FOAF)

- something that describes colour palettes for
classes/properties/individuals (borrow selectors from SHACL)

- should be able to derive palettes from rules
- should be able to describe some kind of matrix for eg class/property
along one side (eg hue) and ui state (eg sat, lum) on the other
- should be able to delta the colour palette for subclasses etc

- some way to say how labels are constructed (can use loupe)

- essential coordinate data for visual layouts (eg sugiyama
rank/ordering)

- consider different view states (eg clustering, edge contraction)

With respect to the graph itself, the goal of this vocabulary is to
provide just the information that only needs to be computed when the
graph's content is changed, so the computations can be cached and used
as inputs to more than one view.

## Classes


This diagram shows the classes and properties defined in
this document using solid lines, and third-party classes and properties
using dashed lines.

### `Space`

A graph tool needs a shared logical space to lay out its universe of
discourse.

Subclass of:
sioc:Space

Back to Top

### `View`

A partially or fully computed geometric rendering of a (sub)graph, or
the structured information needed to do so.

Back to Top

### `Error`

An error is a type of `cgto:View` the tool can send the user when
something is wrong. It is more suitable to send as a response *body*
than `http:Response`, which would be problematically self-referential.

Subclass of:
cgto:View

Back to Top

### `Index`

An index relates a `cgto:Space` to a set of `cgto:Inventory` resources,
via a set of `cgto:Summary` resources.

Subclass of:
sioc:Container

Back to Top

### `Inventory`

An inventory is a de facto grouping of resources according to some
criterion.

Subclass of:
sioc:Container

Back to Top

### `Summary`

A summary indexes the available `cgto:Inventory` resources.

Subclass of:
qb:DataSet

Back to Top

## Properties


This diagram depicts the ontology from the point of view
of its properties.

### `focus`

The entity that takes primary focus in the space is what will be shown,
e.g. on the front page of a Web app.

Domain:
cgto:Space

Inverse of:
cgto:focus-of

Sub-property of:
sioc:space_of

Back to Top

### `focus-of`

The entity that takes primary focus in the space is what will be shown,
e.g. on the front page of a Web app.

Range:
cgto:Space

Inverse of:
cgto:focus

Sub-property of:
sioc:space_of

Back to Top

### `view`

Relates the space to a view of said space.

Domain:
cgto:Space

Range:
cgto:View

Sub-property of:
sioc:space_of

Inverse of:
cgto:view-of

Back to Top

### `view-of`

Relates a view back to its `cgto:Space`.

Domain:
cgto:View

Range:
cgto:Space

Sub-property of:
sioc:has_space

Inverse of:
cgto:view

Back to Top

### `index`

Connects the `cgto:Space` to its `cgto:Index` of resources.

Domain:
cgto:Space

Range:
cgto:Index

Sub-property of:
sioc:space_of

xhv:index

Back to Top

### `summary`

Connects the `cgto:Space` to its `cgto:Index` of resources.

Domain:
cgto:Index

Range:
cgto:Summary

Sub-property of:
sioc:parent_of

Back to Top

### `by-class`

Specifies the index of inventories organized by `rdfs:Class`.

Domain:
cgto:Index

Range:
cgto:Summary

Sub-property of:
cgto:summary

Back to Top

### `by-property`

Connects the `cgto:Space` to its `cgto:Index` of resources.

Domain:
cgto:Index

Range:
cgto:Summary

Sub-property of:
cgto:summary

Back to Top

## Inventory Summaries

We use the Data Cube Ontology to summarize and
enumerate the resource inventories.

### Data Structure Definitions

Data sets are described by data structure definitions which specify
different component properties.

#### `resources-by-class`

This structure describes a data set that tabulates subject resources of
a certain `rdf:type`.

Components:
cgto:class

cgto:asserted-subjects

cgto:asserted-subject-count

cgto:inferred-subjects

cgto:inferred-subject-count

#### `resources-by-property`

This structure describes a data set that tabulates both subject and
object resources by property (predicate).

Components:
cgto:property

cgto:asserted-domain

cgto:asserted-domain-count

cgto:asserted-range

cgto:asserted-range-count

cgto:inferred-domain

cgto:inferred-domain-count

cgto:inferred-range

cgto:inferred-range-count

### Dimension Properties

Dimension properties denote the axes along which the data set can be
partitioned.

#### `class`

Specifies the `owl:Class` found in the `rdf:type` of the subjects.

Domain:
qb:Observation

Range:
rdfs:Class

Back to Top

#### `property`

Specifies the property (predicate) in the statements from which subject
and object resources are enumerated.

Domain:
qb:Observation

Range:
rdf:Property

Back to Top

### Measure Properties

Measure properties record the experimental data, which in this case
amounts to counts of resources.

#### `asserted-domain-count`

Domain:
qb:Observation

Range:
xsd:nonNegativeInteger

Back to Top

#### `asserted-range-count`

Domain:
qb:Observation

Range:
xsd:nonNegativeInteger

Back to Top

#### `asserted-subject-count`

Specifies the number of subject resources *asserted* to relate according
to the given criterion.

Domain:
qb:Observation

Range:
xsd:nonNegativeInteger

Back to Top

#### `inferred-domain-count`

Domain:
qb:Observation

Range:
xsd:nonNegativeInteger

Back to Top

#### `inferred-range-count`

Domain:
qb:Observation

Range:
xsd:nonNegativeInteger

Back to Top

#### `inferred-subject-count`

Specifies the number of subject resources *inferred* to relate according
to the given criterion.

Domain:
qb:Observation

Range:
xsd:nonNegativeInteger

Back to Top

### Attribute Properties

Attribute properties are used to qualify the data. In this case they are
being appropriated to link to the actual inventories of resources.

#### `asserted-domain`

Domain:
qb:Observation

Range:
cgto:Inventory

Back to Top

#### `asserted-range`

Domain:
qb:Observation

Range:
cgto:Inventory

Back to Top

#### `asserted-subjects`

Domain:
qb:Observation

Range:
cgto:Inventory

Back to Top

#### `inferred-domain`

Domain:
qb:Observation

Range:
cgto:Inventory

Back to Top

#### `inferred-range`

Domain:
qb:Observation

Range:
cgto:Inventory

Back to Top

#### `inferred-subjects`

Domain:
qb:Observation

Range:
cgto:Inventory

Back to Top