On this page:
member-name/  c
thing
individual
resource
class
property
datatype
container-kind/  c
container

15.2 Things🔗ℹ

The struct type thing represents a named object about which assertions may be made. In fact, it is a mapping from a name (of type member-name/c) to a list of assertion values.

Schema Module – Things

A contract that defines the name of a schema member, where all things are intended as schema members.

struct

(struct thing (name assertions))

  name : member-name/c
  assertions : (listof assertion?)
TBD

constructor

(individual name    
  assertion ...    
  [#:label label    
  #:comment comment])  thing?
  name : member-name/c
  assertion : assertion?
  label : (or/c schema-object/c #f) = #f
  comment : (or/c schema-object/c #f) = #f
Create a new thing. This constructor has the fewest assumptions about the type, or structure, of a thing.

constructor

(resource name    
  assertion ...    
  [#:label label    
  #:comment comment    
  #:type type])  thing?
  name : member-name/c
  assertion : assertion?
  label : (or/c schema-object/c #f) = #f
  comment : (or/c schema-object/c #f) = #f
  type : (or/c schema-subject/c #f) = #f
This constructor creates an individual thing that is a RDF Schema Resource, and may have a type.

constructor

(class name    
  assertion ...    
  [#:label label    
  #:comment comment    
  #:subClassOf super])  thing?
  name : member-name/c
  assertion : assertion?
  label : (or/c schema-object/c #f) = #f
  comment : (or/c schema-object/c #f) = #f
  super : (or/c schema-subject/c #f) = #f
This constructor creates an individual thing that is an RDF Schema Class. The #:subClassOf keyword allows the class hierarchy to be specified directly rather than with individual assertions.

constructor

(property name    
  assertion ...    
  [#:label label    
  #:comment comment    
  #:subPropertyOf super    
  #:domain domain    
  #:range range])  thing?
  name : member-name/c
  assertion : assertion?
  label : (or/c schema-object/c #f) = #f
  comment : (or/c schema-object/c #f) = #f
  super : (or/c schema-subject/c #f) = #f
  domain : (or/c schema-subject/c #f) = #f
  range : (or/c schema-subject/c #f) = #f
This constructor creates an individual thing that is an RDF Property. The #:subPropertyOf keyword allows the property hierarchy to be specified directly rather than with individual assertions.

constructor

(datatype name    
  assertion ...    
  [#:label label    
  #:comment comment    
  #:restricts restricts])  thing?
  name : member-name/c
  assertion : assertion?
  label : (or/c schema-object/c #f) = #f
  comment : (or/c schema-object/c #f) = #f
  restricts : (or/c schema-subject/c #f) = #f
This constructor creates an individual thing that is an RDF Schema
datatype
.

TBD

constructor

(container name    
  assertion ...    
  [#:label label    
  #:comment comment    
  #:kind kind])  thing?
  name : member-name/c
  assertion : assertion?
  label : (or/c schema-object/c #f) = #f
  comment : (or/c schema-object/c #f) = #f
  kind : container-kind/c = #f
This constructor creates an individual thing that is an RDF Schema Container. Optionally the individual may be typed according to the container-kind/c value of 'alt, 'bag, or 'seq.