Relation pm#relation_from_collection (collection,*)
  exclusion:  relation_from_situation  spatial_relation_from_entity_with_spatial_feature  relation_from_description_content/medium/container  relation_from_attribute_or_quality_or_measure
  supertype:  relation_from/to_thing_of_common_kind  what_relation
  subtype:  member (collection,*)
     subtype:  domain_object (domain,?)
        subtype:  core_domain_object__central_object_of_domain (domain,?)
     subtype:  reverse_of_KIF_member (set,?)  this type only exists to make the connection to kif#member (which should have been named kif#member_of to respect the common reading conventions of parameters)
     subtype:  item (list,?)
        subtype:  item (list,?)  for item(L,I) read: I is an item in L; either first(L,I) or item(R,I) where rest(L,R)
     subtype:  li (collection,*)
     subtype:  first (list -> ?)
        subtype:  first (list -> ?)
     subtype:  last (list -> ?)
     subtype:  butlast (list -> ?)
     subtype:  nth (list,positive_integer -> ?)
  subtype:  nthrest (list,nonnegative_integer -> list)
  subtype:  relation_from_collection_to_number (collection -> number)
     subtype:  size__number_of_elements (collection -> nonnegative_integer)
        subtype:  length (list -> nonnegative_integer)
     subtype:  minimal_size__minimalsize (collection -> nonnegative_integer)
     subtype:  maximal_size__maximalsize (collection -> nonnegative_integer)
     subtype:  percentage (collection -> number)
     subtype:  average (number_container -> number)  to specify an average on the values
  subtype:  list_order_fn (list,positive_integer -> ?)  returns the item that is in the given position (2nd argument) in the list, e.g., (sumo#list_order_fn (sumo#list_fn Monday Tuesday Wednesday) 2) would return the value tuesday
  subtype:  list_length_fn (list -> nonnegative_integer)  returns the number of items in the list, e.g., (sumo#list_length_fn (sumo#list_fn Monday Tuesday Wednesday)) would return the value 3
  subtype:  relation_from_an_ontology (ontology,*)
     subtype:  relation_to_another_ontology (ontology,ontology)
        subtype:  backward_compatible_with (ontology,ontology)
        subtype:  incompatible_with (ontology,ontology)
        subtype:  prior_version__priorversion (ontology,ontology)
  subtype:  relation_between_collections (collection,collection+)
     subtype:  sub_collection__subcollection (collection,collection)  a partial order relation
        subtype:  ending_collection (collection,collection)
           subtype:  final_segment__finalsegment (collection,collection)  the second collection is a final segment of the 1st
        subtype:  sublist__final_segment_of__finalsegmentof (list,list)  USE pm#final_segment INSTEAD OF THIS RELATION TYPE; "sublist" is a misleading name; "final_segment_of" is better
     subtype:  sub_collection_of (collection,collection)  DO NOT use this type; it only exists because the SUMO does not respect common reading conventions of parameters
        subtype:  sub_collection__subcollection__sub_collection_of (collection,collection)  the 1st collection is a proper part of the 2nd
        subtype:  sub_list__sublist__sub_list_of (list,list)  the 1st argument is a sublist of the 2nd, i.e. every element of the 1st is an element of the 2nd and the elements that are common to both lists have the same order in both lists
           subtype:  initial_list__initiallist (list,list)  the 1st argument (?L1) is a sublist of the 2nd (?L2), and (sumo#list_order_fn ?L1 ?NUMBER) returns the same value as (sumo#list_order_fn ?L2 ?N) for all of the values of ?N over which (sumo#list_order_fn ?L1 ?N) is defined
        subtype:  final_segment_of__finalsegmentof (collection,collection)  USE pm#final_segment INSTEAD
           subtype:  sublist__final_segment_of__finalsegmentof (list,list)  USE pm#final_segment INSTEAD OF THIS RELATION TYPE; "sublist" is a misleading name; "final_segment_of" is better
     subtype:  overlapping_collection__overlappingcollection (collection,collection)
     subtype:  not_overlapping_collection__notoverlappingcollection (collection,collection)
        subtype:  collection_complement (collection,collection)
     subtype:  rest (list -> list)
        subtype:  rest (list -> list)
     subtype:  append (list,list -> list)
     subtype:  list_concatenate_fn (list,list -> list)  returns the concatenation of two lists
     subtype:  revappend (list,list -> list)
     subtype:  reverse (list -> list)
     subtype:  relation_from_type_to_collection (type,collection)
        subtype:  partition (type,collection)
        subtype:  instances__instance (type -> collection)
        subtype:  subtypes (type -> collection)
        subtype:  relation_from_class_to_collection (class,collection)
           subtype:  union_of__unionof (class,list)  for unionOf(X,L) read: X is the union of the classes in the list L; i.e. if something is in any of the classes in L, it is in X, and vice versa
              subtype:  disjoint_union_of (class,list)  for disjointUnionOf(X,L) read: X is the disjoint union of the classes in the list L: (a) for any c1 and c2 in L, disjointWith(c1,c2), and (b) i.e. if something is in any of the classes in L, it is in X, and vice versa
           subtype:  intersection_of (class,list)  for intersectionOf(X,Y) read: X is the intersection of the classes in the list Y; i.e. if something is in all the classes in Y, then it's in X, and vice versa
           subtype:  one_of__oneof (class,list)  for oneOf(C,L) read everything in C is one of the things in L
           subtype:  distinct_members (all_different,list)
           subtype:  relation_to_another_class (class,class+)
              subtype:  sub_class_of__subclassof__super_class__superclas (class,class)  in WebKB, use the link '<'
              subtype:  equivalent_class (class,class)  in WebKB, use the link '='
              subtype:  exclusive_class__exclusiveclas (class,class)  the 2 classes have no common subtype/instance; in WebKB, use the link '!'
                 subtype:  complement_class (class -> class)  if something is not in one of the classes, then it is in the other, and vice versa; in WebKB, use the link '/'
              subtype:  restricted_by (class,restriction)
              subtype:  disjoint_decomposition (class,class+)  a disjoint_decomposition of a class C is a set of mutually disjoint subclasses of C
                 subtype:  partition (class,class+)  a partition of a class C is a set of mutually disjoint classes (a subclass partition) covering C; each instance of C is instance of exactly one of the subclasses in the partition
              subtype:  exhaustive_decomposition (class,class+)  an exhaustive_decomposition of a class C is a set of subclasses of C such that every instance of C is an instance of one of the subclasses in the set; note:  this does not necessarily mean that the elements of the set are disjoint (see sumo#partition - a partition is a disjoint exhaustive decomposition)
                 subtype:  partition (class,class+)  a partition of a class C is a set of mutually disjoint classes (a subclass partition) covering C; each instance of C is instance of exactly one of the subclasses in the partition
     subtype:  relation_to_another_set_or_class (set_or_class,set_or_class+)  this category is needed to group SUMO relations between classes which cannot be subtype of pm#relation_from_type because their signatures curiously also involve sets
        subtype:  disjoint (set_or_class,set_or_class)  like sumo#disjoint but from a a pm#set_or_class to another
           subtype:  disjoint (set_or_class,set_or_class)  classes are exclusive/disjoint only if they share no instance (and hence no subtype), i.e. just in case the result of applying sumo#intersection_fn to them is empty
           subtype:  exclusive_class__exclusiveclas (class,class)  the 2 classes have no common subtype/instance; in WebKB, use the link '!'
        subtype:  subclass_of_or_equal (set_or_class,set_or_class)
           subtype:  subclass__subclass_of (set_or_class,set_or_class)  if the common reading conventions of parameters had been respected, this type would have been named subclass_of; every instance of the 1st argument is also an instance of the 2nd argument; a class may have multiple superclasses and subclasses
              subtype:  immediate_subclass__immediate_subclass_of (set_or_class,set_or_class)  the 1st argument is a subclass of the 2nd argument and there is no other subclass of the 2nd argument such that the 1st is also a subclass of the 2nd; in WebKB, use the link '<'
           subtype:  sub_class_of__subclassof__super_class__superclas (class,class)  in WebKB, use the link '<'
        subtype:  power_set_fn__powersetfn (set_or_class -> set_or_class)  maps the argument to the set_or_class of all its subclasses
        subtype:  relation_to_another_class (class,class+)
     subtype:  relation_to_another_ontology (ontology,ontology)
  subtype:  relation_from_type (type,*)  type of relations from a concept/relation type, i.e. in RDFS terminology, from a class or a property
     subtype:  specializing_type (type,?)
        subtype:  instance (type,?)  the ':' link in the FT notation
        subtype:  subtype__subtype_or_equal (type,type)  subtype links should actually be strict subtype links or not much checking can be done
           subtype:  strict_subtype (type,type)  the '>' link in the FT notation
              subtype:  properly_subsumes_leaf__PSBL (type,type)  the 2nd type is a leaf type properly subsumed by the 1st type
           subtype:  subsumes_leaf__SBL (type,type)  the 2nd type is a leaf type subsumed by the 1st type
              subtype:  properly_subsumes_leaf__PSBL (type,type)  the 2nd type is a leaf type properly subsumed by the 1st type
     subtype:  supertype (type,type)  in the FT notation, the '<' link is only used to connect to a "strict" supertype
        subtype:  sub_class_of__subclassof__super_class__superclas (class,class)  in WebKB, use the link '<'
        subtype:  subrelation (relation_type,relation_type)  if the common reading conventions of parameters had been respected, this type would have been named subclass_of; every tuple of the 1st argument (r1) is also a tuple of the 2nd argument (r2), i.e. if r1 holds for some arguments arg_1, arg_2, ... arg_n, then the r2 holds for the same arguments; a consequence of this is that a relation and its subrelations must have the same valence
           subtype:  sub_property_of (binary_relation_type,binary_relation_type)  in WebKB, use the link '<'
     subtype:  same_type_as (type,type)
        subtype:  equivalent_class (class,class)  in WebKB, use the link '='
        subtype:  equivalent_property (binary_relation_type,binary_relation_type)  in WebKB, use the link '='
     subtype:  exclusive_type__exclusivetype (type,type)  in WebKB, use the '!' link
        subtype:  exclusive_class__exclusiveclas (class,class)  the 2 classes have no common subtype/instance; in WebKB, use the link '!'
        subtype:  closed_exclusion (type -> type)  the '/' link in the FT notation:  the two linked types either are respectively identical to pm#thing and pm#nothing (they are "complement types") or they subtype a same type and form a complete subtype partition
           subtype:  complement_type (type -> type)  a supertype of owl#complement_of which can only connect RDFS/OWL classes
              subtype:  complement_class (class -> class)  if something is not in one of the classes, then it is in the other, and vice versa; in WebKB, use the link '/'
     subtype:  relation_from_relation_type (relation_type,*)
        subtype:  relation_from_binary_relation_type (binary_relation_type,*)
           subtype:  relation_to_another_binary_relation_type (binary_relation_type,binary_relation_type)
              subtype:  equivalent_property (binary_relation_type,binary_relation_type)  in WebKB, use the link '='
              subtype:  sub_property_of (binary_relation_type,binary_relation_type)  in WebKB, use the link '<'
              subtype:  inverse__reverse (binary_relation_type -> binary_relation_type)  for inverseOf(R,S) read: R is the inverse of S; i.e. if R(x,y) then S(y,x) and vice versa; in WebKB, use the link '-'
           subtype:  domain (binary_relation_type,class)
           subtype:  range (binary_relation_type,class)
        subtype:  domain (relation_type,positive_integer,set_or_class)  the formula (sumo#domain ?REL ?INT ?CLASS) means that the ?INT'th element of each tuple in the relation ?REL must be an instance of ?CLASS
        subtype:  domain_subclass (relation_type,positive_integer,set_or_class)  the formula (sumo#domainSubclass ?REL ?INT ?CLASS) means that the ?INT'th element of each tuple in the relation ?REL must be a subclass of ?CLASS
        subtype:  range (function_type,set_or_class)  gives the range of a function, i.e. all of the values assigned by the function are instances of sumo#class
        subtype:  range_subclass (function_type,set_or_class)  all of the values assigned by the function in the 1st argument are subclasses of the 2nd argment
        subtype:  valence (relation_type,positive_integer)  specifies the number of arguments that a relation can take; if a relation does not have a fixed number of arguments, it does not have a valence and it is an instance of variable_arity_relation, e.g., sumo#holds is a variable_arity_relation
        subtype:  disjoint_relation (relation_type+)  (sumo#disjointRelation @ROW) means that any two relations in @ROW have no tuples in common; as a consequence, the intersection of all of the relations in @ROW is the null set
        subtype:  holds__hold (relation_type,*)  (holds P N1 ... NK) is true when the tuple of objects denoted by N1,..., NK is an element of the relation P
        subtype:  assignment_fn (function_type,*)  if F is a function with a value for the objects denoted by N1,..., NK, then (sumo#assignmentFn F N1 ... NK) is the value of applying F to the objects denoted by N1,..., NK; otherwise, the value is undefined
        subtype:  distributes__distribute (binary_function_type,binary_function_type)  a binary_function ?F1 is distributive over another binary_function ?F2 just in case (?F1 ?INST1 (?F2 ?INST2 ?INST3)) is equal to (?F2 (?F1 ?INST1 ?INST2) (?F1 ?INST1 ?INST3)), for all ?INST1, ?INST2, and ?INST3
     subtype:  relation_from_class (class,*)
        subtype:  relation_from_class_to_collection (class,collection)
        subtype:  abstraction_fn__abstractionfn (class -> Attribute)  a unary_function that maps a class into an attribute that specifies the condition(s) for membership in the class
        subtype:  relation_from_sumo_process_class (sumo_process_class,*)
           subtype:  causes_subclass (sumo_process_class,sumo_process_class)  the 1st argument brings about the 2nd, e.g., (causes_subclass killing death)
           subtype:  capability (sumo_process_class,case_relation_type,object)  the object  has the ability to play the role (case relation) in the given kinds of processes
           subtype:  has_skill__hasskill (sumo_process_class,agentive_physical_object)  similar to the capability predicate with the additional restriction that the ability be practised or demonstrated to some measurable degree
        subtype:  relation_from_attribute_type (attribute_class,*)
           subtype:  contrary_attribute (attribute_class,attribute_class+)  set of attributes such that something can not simultaneously have more than one of these attributes, e.g., in KIF, (sumo#contrary_aAttribute sumo#pliable sumo#rigid) means that nothing can be both pliable and rigid
           subtype:  exhaustive_attribute (attribute_class,attribute_class+)  this predicate relates a class to several types of attributes, and it means that the elements of this set exhaust the instances of the class; for example, in KIF, (sumo#exhaustiveAttribute sumo#physicalState sumo#solid sumo#fluid sumo#liquid sumo#gas) means that there are only three instances of the class sumo#physicalState, viz. sumo#solid, sumo#fluid, sumo#liquid, and sumo#gas
        subtype:  relation_from_restriction (restriction,*)
           subtype:  on_property (restriction,binary_relation_type)  for onProperty(?restrClass,?rel), read: ?restrClass is a restricted with respect to property ?rel
           subtype:  all_values_from (restriction,class)  for onProperty(?restrClass,?rel) and toClass(?restrClass,C), read: i instance of ?restrClass if and only if for all j, ?rel(i,j) implies type(j,C)
           subtype:  has_value__hasvalue (restriction,?)  for onProperty(?restrClass,?rel) and hasValue(?restrClass,V), read: i instance of ?restrClass if and only if ?rel(i,V), i.e. if and only if any ?rel from ?i has for destination an instance of C; toValue is an obsolete name
           subtype:  some_values_from (restriction,class)  for onProperty(?restrClass,?rel) and some_values_from(?restrClass,C), read: i instance of ?restrClass if and only if for some j, ?rel(i,j) and type(j,C), i.e. if and only if i has at least one ?rel which has for destination an instance of C
           subtype:  has_class_q__hasclassq (restriction,class)  property for specifying class restriction with cardinalityQ constraints
           subtype:  cardinality (restriction -> nonnegative_integer)  for onProperty(?restrClass,?rel) and cardinality(?restrClass,n), read: i instance of ?restrClass if and only if there are exactly n distinct j with ?rel(i,j)
           subtype:  cardinality_q__cardinalityq (restriction -> nonnegative_integer)  for onProperty(?restrClass,?rel), cardinalityQ(?restrClass,n) and hasClassQ(?restrClass,C), read: i instance of ?restrClass if and only if there are exactly n distinct j with ?rel(i,j) and type(j,C)
           subtype:  min_cardinality__mincardinality (restriction -> nonnegative_integer)  for onProperty(?restrClass,?rel) and minCardinality(?restrClass,n), read: i instance of ?restrClass if and only if there are at least n distinct j with ?rel(i,j)
           subtype:  min_cardinality_q__mincardinalityq (restriction -> nonnegative_integer)  for onProperty(?restrClass,?rel), minCardinalityQ(?restrClass,n) and hasClassQ(?restrClass,C), read: i instance of ?restrClass if and only if there are at least n distinct j with ?rel(i,j)
           subtype:  max_cardinality__maxcardinality (restriction -> nonnegative_integer)  for onProperty(?restrClass,?rel) and maxCardinality(?restrClass,n), read: i instance of ?restrClass if and only if there are at most n distinct j with ?rel(i,j)
           subtype:  max_cardinality_q__maxcardinalityq (restriction,nonnegative_integer)  for onProperty(?restrClass,?rel), maxCardinalityQ(?restrClass,n) and hasClassQ(?restrClass,C), read: i instance of ?restrClass if and only if there are at most n distinct j with ?rel(i,j) and type(j,C)
        subtype:  wnObject (class,?)
        subtype:  wnNounType (class,?)
     subtype:  relation_from_type_to_collection (type,collection)
     subtype:  material__material_type_of (substance_class,corpuscular_object)  all other mereological relations are defined in terms of this one; it means that the 2nd argument is structurally made up in part of the 1st argument; this relation encompasses the concepts of 'composed of', 'made of', and 'formed of'; for example, plastic is a material of my computer monitor; since part is a reflexive_relation, every object is a part of itself

142 categories printed


Another search (with same display options)?