; Tue Mar 02 22:36:31 PST 2004 ; ;+ (version "1.8") ;+ (build "Build 1074") (defclass %3ACLIPS_TOP_LEVEL_SLOT_CLASS (is-a USER) (role concrete) (single-slot %3ADomain4Class ;+ (comment "The class of the fifth argument") (type INSTANCE) ;+ (allowed-classes %3AUBL-CLASS) ;+ (cardinality 0 1) ;+ (associated-facet UBLinv018t_00302) (create-accessor read-write)) (multislot %3AInstanceAssertions ;+ (comment "assertions at the instance level that reference this instance.") (type INSTANCE) ;+ (allowed-classes %3AAssertion) (create-accessor read-write)) (single-slot %3Adocumentation ;+ (comment "A relation between objects in the domain of discourse and strings of natural language text. The domain of &%documentation is not constants (names), but the objects themselves. This means that one does not quote the names when associating them with their documentation.") (type STRING) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot %3AinputFile ;+ (comment ":inputFile is the name of the file from which a particular module was derived.") (type STRING) ;+ (cardinality 0 1) (create-accessor read-write)) (multislot partition2 ;+ (comment "A &%partition of a class C is a set of mutually &%disjoint classes (a subclass partition) which covers C. Every instance of C is an instance of exactly one of the subclasses \nin the partition.") (type INSTANCE) ;+ (allowed-classes %3AUBL-CLASS %3ATHING) ;+ (subslot-of partition) (create-accessor read-write)) (single-slot %3ADomain3Value ;+ (comment "The instance value for the fourth argument of a higher-arity slot.\nIt is an instance of :Domain3Class") (type INSTANCE) ;+ (allowed-classes Entity) ;+ (cardinality 0 1) ;+ (associated-facet SUMO152_00102) (create-accessor read-write)) (multislot %3AClassPredicates ;+ (comment ":ClassPredicates shows the list of predicates which are asserted on a class but do not have their own facet pane in the class display window. They are given as strings and do not directly point to the classes or instances whjich may be values of the predicate arguments.") (type STRING) (create-accessor read-write)) (single-slot %3AStartingBlock ;+ (comment "The block number fot the block ich starts this module - which should be the module definition block itself.") (type INTEGER) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot %3ASUO-name ;+ (comment "The :SUO-name is the name of an instance that is used for display. This is an important element of the ontology as it permits the assignment of instances to multiple classes, a tactic forbidden by the Protege program, which requires that all frame names be unique.\n Thus, if an instance of any concept has a :SUO-name, that name is the one that will appear in \"instance\" propositions that are exported to a KIF data file.") (type STRING) ;+ (cardinality 0 1) ;+ (associated-facet KIFcore2_00373) (create-accessor read-write)) (single-slot %3AAXIOMS ;+ (comment "Axioms from SUMO or other sources, constraining the meaning of the slot.") (type STRING) ;+ (cardinality 0 1) ;+ (associated-facet UBLinv014_00277) (create-accessor read-write)) (single-slot %3AhasClassValue ;+ (comment "\"(:hasClassValue ?REL ?CLASS ?VAL) is used to specify that every instance ?INST of class ?CLASS will have the same instance ?VAL related to ?INST by the relation ?REL. This explicit assignment of a value can override a default assignment using the relation :hasDefaultValue. Note that attempting to assign a value to one class and a different value to a subclass will result in a logical contradiction. The parent class value must be set by :hasDefaultValue in order for hasClassValue to overide the default without contradiction.\"") (type INSTANCE) ;+ (allowed-classes Entity) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot %3ADomain2Class ;+ (comment "The third argument of a higher-arity relation, after usual domain and range.") (type INSTANCE) ;+ (allowed-classes %3AUBL-CLASS) ;+ (cardinality 0 1) ;+ (associated-facet SUMO148_00000) (create-accessor read-write)) (multislot hasField_4 ;+ (comment "hasField relates a StructuredText to the fields that comprise its structure. \nFor multiple subfield, see hasField_1, hasField_2, etc.") (type INSTANCE) ;+ (allowed-classes) (cardinality 2 ?VARIABLE) (create-accessor read-write)) (single-slot %3AinLanguage ;+ (comment "inLanguage relates a word -- a string of characters -- to the language in which it is a word.\nThe language may be natural or artificial -- e.g. the terms in an ontology are considered a language for this purpose.") (type INSTANCE) ;+ (allowed-classes %3AHumanLanguage) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot %3AsynonymousTerm ;+ (comment "A string serving as a synonym for the class label.\n The value of the relation :synonymousTerm is a string of characters used as a label for the concept which is represented by the class which has that :Synonym pointed to by the :hasSynonym slot.\n Technically, :synonymousTerm is a slot of the class :Synonym. Instances of the class :Syonym are the values of the relation :SYNONYMS, which is an own slot of the class :SYN-CLASS.\n") (type STRING) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot %3ADomain3Type ;+ (comment "The type of the fifth argument, class or instance.\n It specifies whether the first domain argument is an instance of the specified class or a subclass.\n In SUMO, this signals whether the proposition describing the domains of the relation use the relation name \"domain\" or \"domainSubclass\".") (type SYMBOL) (allowed-values Class Instance) ;+ (cardinality 0 1) ;+ (associated-facet UBLinv018t_00300) (create-accessor read-write)) (single-slot %3ADomain2Value ;+ (comment "The instance value for the third argument of a higher-arity relation. It is an instance of :Domain2Class.") (type INSTANCE) ;+ (allowed-classes Entity) ;+ (cardinality 0 1) ;+ (associated-facet SUMO152_00100) (create-accessor read-write)) (multislot disjointRelation (type INSTANCE) ;+ (allowed-classes %3AUBL-SLOT) ;+ (associated-facet SKIFcore4_00381) (create-accessor read-write)) (single-slot %3ALOAD-SEQUENCE ;+ (comment "LOAD-SEQUENCE is a convenience slot which specifies the sequence in which a logically related block of predicates (or an axiom) was loaded from the input KIF-format file. The sole function is to allow recreation of the original sequence of statements for the convenience of the ontologist. A value of 0 is default for newly created concepts.") (type INTEGER) (range 0 %3FVARIABLE) (default 0) ;+ (cardinality 1 1) ;+ (associated-facet UBLinv019_00333) (create-accessor read-write)) (single-slot %3AblockLineNumber ;+ (comment "The :blockLineNumber of a comment or unrecognized predicate is its location within the block where it occurs in a SKIF input file.") (type INTEGER) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot %3AhasFrequency ;+ (comment "The frequency is the fraction of the time that this term refers to the labeled concept. The sum of frequencies onthis list may exceed 1.0, because this is not the freuency with which this concepot is labeled by this term, but the inverse.") (type FLOAT) (range 0.0 1.0) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot Name ;+ (comment "UBL-element Jul 26-03 (UBL-ID=UBL000003):\n") (type INSTANCE) ;+ (allowed-classes) ;+ (cardinality 0 1) (create-accessor read-write)) (multislot %3AuncInstList ;+ (comment "The insatance(s) created from an instance block, saved for convenience in later procesing of unclassified instance propositions.") (type INSTANCE) ;+ (allowed-classes Entity) (create-accessor read-write)) (multislot %3AidenticalTo ;+ (comment ":identicalTo points to other concepts within the ontology that are intended to be the same as the base concept. This is a way to work around the Protege restriction that no frame can be an instanceof more than one class, and no Slot can also be an instance, and no instance can also be a class.") (type STRING) ;+ (associated-facet SKIFcore4_00393) (create-accessor read-write)) (single-slot %3AhasUsage ;+ (comment "This relation records the usage for a synonymous word: one of a list of possibilities.") (type SYMBOL) (allowed-values preferred deprecated technical slang) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot %3ADomain2Type ;+ (comment "Specifies whether the first domain argument is an instance of the specified class or a subclass.\n In SUMO, this signals whether the proposition describing the domains of the relation use the relation name \"domain\" or \"domainSubclass\".") (type SYMBOL) (allowed-values Instance Class) ;+ (cardinality 0 1) ;+ (associated-facet UBLinv018_00288) (create-accessor read-write)) (multislot partition3 ;+ (comment "A &%partition of a class C is a set of mutually &%disjoint classes (a subclass partition) which covers C. Every instance of C is an instance of exactly one of the subclasses \nin the partition.") (type INSTANCE) ;+ (allowed-classes %3AUBL-CLASS %3ATHING) ;+ (subslot-of partition) (create-accessor read-write)) (single-slot %3ADomain4Type ;+ (comment "The type of the fifth argument, class or instance.\n Specifies whether the first domain argument is an instance of the specified class or a subclass.\n In SUMO, this signals whether the proposition describing the domains of the relation use the relation name \"domain\" or \"domainSubclass\".") (type SYMBOL) (allowed-values Class Instance) ;+ (cardinality 0 1) ;+ (associated-facet UBLinv018t_00306) (create-accessor read-write)) (multislot relatedExternalConcept (type INSTANCE) ;+ (allowed-classes %3ALanguage) (create-accessor read-write)) (multislot %3AisInModule ;+ (comment ":IsInModule is a slot that attaches to both :UBL-SLOT and :UBL-CLASS.\nIt is used to organize the concepts in related groupings. Initially, the modules specified will be those of the SUMO ontology.\n we allow a concpet to be inmore than one module, but in order to reproduce the structure of a particular KIF file, only one module should be specified.") (type INSTANCE) ;+ (allowed-classes %3AModule) ;+ (associated-facet UBLinv018t_00322) (create-accessor read-write)) (single-slot %3ADomain1Type ;+ (comment "Specifies whether the first domain argument is an instance of the specified class or a subclass.\n In SUMO, this signals whether the proposition describing the domains of the relation use the relation name \"domain\" or \"domainSubclass\".") (type SYMBOL) (allowed-values Instance Class) ;+ (cardinality 0 1) ;+ (associated-facet UBLinv018_00290) (create-accessor read-write)) (multislot hasField_5 ;+ (comment "hasField relates a StructuredText to the fields that comprise its structure. \nFor multiple subfield, see hasField1, hasField2, etc.") (type INSTANCE) ;+ (allowed-classes) (cardinality 2 ?VARIABLE) (create-accessor read-write)) (single-slot %3AisaSynonymOf ;+ (comment "The reverse pointer from an instance of :Synonym to the concept of which it is a synonym.") (type INSTANCE) ;+ (allowed-classes %3AUBL-CLASS %3AUBL-SLOT) ;+ (cardinality 0 1) ;+ (inverse-slot %3ASYNONYMS) (create-accessor read-write)) (multislot %3AisRestrictedTo ;+ (comment ":isRestrictedTo allows one to specify that a relation’s values may be restricted when that relation is applied to some subclass of the original domain 1. This can help to make the relation more clear, and may limit the range of necessary inferences. Such restrictions are realized in Protege by modifying the allowed class of a value of a relation at the level of some particular class which is a subclass of the higher-level class on which the relation is defined. This provision in Protege distinguishes between the top-level definition of a slot and its application at lower levels.\n A companion predicate :hasRestrictedVal assertws the same thjing, but has the first class as argument 1, allowing viewing of the relation in ") (type SYMBOL) ;+ (allowed-parents Entity) ;+ (associated-facet SKIFcore_00400) (create-accessor read-write)) (multislot relatedInternalConcept ;+ (comment "SUMO - 155") (type STRING) ;+ (associated-facet SKIFcore4_00380) (create-accessor read-write)) (single-slot hasField_2 ;+ (comment "hasField relates a StructuredText to the fields that comprise its structure. \nFor multiple subfield, see hasField_1, hasField_2, etc.") (type INSTANCE) ;+ (allowed-classes) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot %3AhasDefaultValue ;+ (comment "\"(:hasDefaultValue ?REL ?CLASS ?VAL) is used to specify that, for every instance of a particular class, the value of the relation ?REL for every instance of class ?CLASS is ?VAL, unless it is overridden by an explicit assignment of the value. In Protege, such overrides can be accomplished by simply changing the value of the instance. For the SKIF files, we need an explicit override relation so that the condition for using the default can be described logically rather than programmatically. The override can be accomplished by using :hasDefaultValue with the subclass as argument, or, if one wants an override that cannot itself be overridden, the relation used is ':hasClassValue'.\"") (type INSTANCE) ;+ (allowed-classes Entity) ;+ (cardinality 0 1) (create-accessor read-write)) (multislot hasField_3 ;+ (comment "hasField relates a StructuredText to the fields that comprise its structure. \nFor multiple subfield, see hasField_1, hasField_2, etc.") (type INSTANCE) ;+ (allowed-classes) (cardinality 2 ?VARIABLE) (create-accessor read-write)) (single-slot %3AliteralTranscription ;+ (comment ":literalTranscription is a byte-for-byte copy of the input proposition.") (type STRING) ;+ (cardinality 1 1) (create-accessor read-write)) (multislot %3ASYNONYMS ;+ (comment "A list of synonyms in natural or formal languages for the concept represetned by this class.") (type INSTANCE) ;+ (allowed-classes %3ASynonym) ;+ (inverse-slot %3AisaSynonymOf) ;+ (associated-facet SKIFcore4_00382) (create-accessor read-write)) (multislot disjoint ;+ (comment "&%Classes are &%disjoint only if they share no instances, i.e. just in case the result of applying &%IntersectionFn to them is empty.\n") (type INSTANCE) ;+ (allowed-classes %3AUBL-CLASS %3ASetOrClass) (create-accessor read-write)) (multislot hasField_7 ;+ (comment "hasField relates a StructuredText to the fields that comprise its structure. \nFor multiple subfield, see hasField1, hasField2, etc.") (type INSTANCE) ;+ (allowed-classes) (cardinality 2 ?VARIABLE) (create-accessor read-write)) (multislot partition ;+ (comment "A &%partition of a class C is a set of mutually &%disjoint classes (a subclass partition) which covers C. Every instance of C is an instance of exactly one of the subclasses \nin the partition.") (type INSTANCE) ;+ (allowed-classes %3AUBL-CLASS %3ATHING) (create-accessor read-write)) (single-slot %3AhasValueClass ;+ (comment ":hasValueClass is an inverse of :hasClassValue. It specifies that a certain value always holds in a certain relation on a particular class, but the relation has a different polarity from the relations similarly restricted with :hasClassValue.") (type SYMBOL) ;+ (allowed-parents Entity) ;+ (cardinality 0 1) (create-accessor read-write)) (multislot %3AargumentList ;+ (comment "The :argumentList is the list of top-level arguments (not breaking parenthesized arguments such as functions into their components)\n") (type STRING) (create-accessor read-write)) (multislot %3AcommentLines ;+ (comment "The individual comment lines found in a SKIF inpout file.") (type STRING) (create-accessor read-write)) (single-slot %3ADomain4Value ;+ (comment "The value of the fifth argument") (type INSTANCE) ;+ (allowed-classes Entity) ;+ (cardinality 0 1) ;+ (associated-facet UBLinv018t_00304) (create-accessor read-write)) (multislot %3AhasRestrictedVal ;+ (comment ":hasRestrictedVal is the companion slot to :isRestrictedTo, with args 1 and 2 reversed, so that it is displayed in the class window for arg2.") (type SYMBOL) ;+ (allowed-parents Entity) (create-accessor read-write)) (multislot hasField_6 ;+ (comment "hasField relates a StructuredText to the fields that comprise its structure. \nFor multiple subfield, see hasField1, hasField2, etc.") (type INSTANCE) ;+ (allowed-classes) (cardinality 2 ?VARIABLE) (create-accessor read-write)) (multislot disjointDecomposition ;+ (comment "A &%disjointDecomposition of a &%Class C is a set of subclasses of C that are mutually &%disjoint.") (type INSTANCE) ;+ (allowed-classes %3AUBL-CLASS %3ARow) (create-accessor read-write)) (multislot %3ArelationAllExists ;+ (comment "(:relationAllExists ?REL ?CLASS1 ?CLASS2) means that every instance of ?CLASS1 is related to some instance of ?CLASS2 by the ?REL relation. The name was taken from the CYC rule macro predicate.") (type SYMBOL) ;+ (allowed-parents Entity) ;+ (associated-facet SKIFcore_00418) (create-accessor read-write)) (single-slot %3ADomain3Class ;+ (comment "The fourth argument of a quaternary or higher-arity slot. Thisis the class of which the value is an instance.") (type INSTANCE) ;+ (allowed-classes %3AUBL-CLASS) ;+ (cardinality 0 1) ;+ (associated-facet UBLcore_00000) (create-accessor read-write)) (single-slot hasField ;+ (comment "hasField relates a StructuredText to the fields that comprise its structure. ") (type INSTANCE) ;+ (allowed-classes) ;+ (cardinality 1 1) (create-accessor read-write))) (defclass %3AUBL-SLOT "A UBL-SLOT has a text field to record axioms involving that relation." (is-a %3ASTANDARD-SLOT) (role concrete) (single-slot %3ASUO-name ;+ (comment "The :SUO-name is the name of an instance that is used for display. This is an important element of the ontology as it permits the assignment of instances to multiple classes, a tactic forbidden by the Protege program, which requires that all frame names be unique.\n Thus, if an instance of any concept has a :SUO-name, that name is the one that will appear in \"instance\" propositions that are exported to a KIF data file.") (type STRING) ;+ (cardinality 0 1) (create-accessor read-write)) (multislot %3ASYNONYMS ;+ (comment "A list of synonyms in natural or formal languages for the concept represetned by this class.") (type INSTANCE) ;+ (allowed-classes %3ASynonym) (create-accessor read-write)) (multislot relatedInternalConcept ;+ (comment "SUMO - 155") (type STRING) (create-accessor read-write)) (multislot %3AidenticalTo ;+ (comment ":identicalTo points to other concepts within the ontology that are intended to be the same as the base concept. This is a way to work around the Protege restriction that no frame can be an instanceof more than one class, and no Slot can also be an instance, and no instance can also be a class.") (type STRING) (create-accessor read-write)) (single-slot %3AAXIOMS ;+ (comment "Axioms from SUMO or other sources, constraining the meaning of the slot.") (type STRING) ;+ (cardinality 0 1) (create-accessor read-write)) (multislot disjointRelation (type INSTANCE) ;+ (allowed-classes %3AUBL-SLOT) (create-accessor read-write)) (single-slot %3ADomain1Type ;+ (comment "Specifies whether the first domain argumenbt is an instance of the specified class or a subclass.") (type SYMBOL) (allowed-values Instance Class) ;+ (cardinality 0 1) (create-accessor read-write)) (multislot %3AisRestrictedTo ;+ (comment ":isRestrictedTo allows one to specify that a relation’s values may be restricted when that relation is applied to some subclass of the original domain 1. This can help to make the relation more clear, and may limit the range of necessary inferences. Such restrictions are realized in Protege by modifying the allowed class of a value of a relation at the level of some particular class which is a subclass of the higher-level class on which the relation is defined. This provision in Protege distinguishes between the top-level definition of a slot and its application at lower levels.") (type SYMBOL) ;+ (allowed-parents Entity) (create-accessor read-write)) (single-slot %3ALOAD-SEQUENCE ;+ (comment "LOAD-SEQUENCE is a convenience slot which specifies the sequence in which a logically related block of predicates (or an axiom) was loaded from the input KIF-format file. The sole function is to allow recreation of the original sequence of statements for the convenience of the ontologist. A value of 0 is default for newly created concepts.") (type INTEGER) (range 0 %3FVARIABLE) (default 0) ;+ (cardinality 1 1) (create-accessor read-write)) (multislot %3AisInModule ;+ (comment ":IsInModule is a slot that attaches to both :UBL-SLOT and :UBL-CLASS.\nIt is used to organize the concepts in related groupings. Initially, the modules specified will be those of the SUMO ontology.\n we allow a concpet to be inmore than one module, but in order to reproduce the structure of a particular KIF file, only one module should be specified.") (type INSTANCE) ;+ (allowed-classes %3AModule) (create-accessor read-write)) (multislot %3ArelationAllExists ;+ (comment "(:relationAllExists ?REL ?CLASS1 ?CLASS2) means that every instance of ?CLASS1 is related to some instance of ?CLASS2 by the ?REL relation. The name was taken from the CYC rule macro predicate.") (type SYMBOL) ;+ (allowed-parents Entity) (create-accessor read-write))) (defclass %3ATernarySlot "A slot that has three arguments. It is implemented here by adding a slot to this class, Arg3. This slot can only take one class value. Other workarounds can be used to represent higher-arity relatrions, but at the expense of greater complexity in viewing the relations." (is-a %3AUBL-SLOT) (role concrete) (single-slot %3ADomain2Type ;+ (comment "Specifies whether the argument is an instance of the indicated class or a subclass.") (type SYMBOL) (allowed-values Instance Class) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot %3ADomain1Type ;+ (comment "Specifies whether the first domain argumenbt is an instance of the specified class or a subclass.") (type SYMBOL) (allowed-values Instance Class) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot %3ADomain2Class ;+ (comment "THe third argument of a higher-arity relation") (type SYMBOL) ;+ (allowed-parents Entity) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot %3ADomain2Value ;+ (comment "The instance value for the third argument of a higher-arity relation. It is an instance of :Arg3Value.") (type INSTANCE) ;+ (allowed-classes Entity) ;+ (cardinality 0 1) (create-accessor read-write))) (defclass %3AQuaternarySlot "A slot that has four arguments. It is implemented here by adding a slot,, Arg4, to the ternarySlot class. This slot can only take a fixed class value, and only serves to record the clas restriciton, it canot be used to instantiate the relation. Other workarounds can be used to better represent higher-arity relatrions, but at the expense of greater complexity in viewing the relations." (is-a %3ATernarySlot) (role concrete) (single-slot %3ADomain3Value ;+ (comment "The instance value for the fourth argument of a higher-arity slot.\nIt is an instance of :Arg4Class") (type INSTANCE) ;+ (allowed-classes Entity) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot %3ADomain3Type ;+ (comment "The type of the argument, class or instance") (type SYMBOL) (allowed-values Class Instance) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot %3ADomain3Class ;+ (comment "The fourth argument of a quaternary or higher-arity slot. Thisis the class of which the value is an instance.") (type SYMBOL) ;+ (allowed-parents Entity) ;+ (cardinality 0 1) (create-accessor read-write))) (defclass %3AQuintarySlot (is-a %3AQuaternarySlot) (role concrete) (single-slot %3ADomain4Value ;+ (comment "The value of the fifth argument") (type INSTANCE) ;+ (allowed-classes Entity) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot %3ADomain4Class ;+ (comment "The class of the fifth argument") (type SYMBOL) ;+ (allowed-parents Entity) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot %3ADomain4Type ;+ (comment "The type of the fifth argument, class or instance.") (type SYMBOL) (allowed-values Class Instance) ;+ (cardinality 0 1) (create-accessor read-write))) (defclass %3AVariableAritySlot "A variable arity slot is one that has the row variable @ROW as one of its arguments. @ROW is a stand-in for any numbe of arguments of any type." (is-a %3AUBL-SLOT) (role concrete)) (defclass %3AUNARY-RELATION "A unary relation is rare in SUMO. This slot metaclass was created to hold the logical operator 'not' in a way that is consistent with other slots." (is-a %3ASTANDARD-SLOT) (role concrete) (multislot %3AidenticalTo ;+ (comment ":identicalTo points to other concepts within the ontology that are intended to be the same as the base concept. This is a way to work around the Protege restriction that no frame can be an instanceof more than one class, and no Slot can also be an instance, and no instance can also be a class.") (type STRING) (create-accessor read-write)) (single-slot %3ADomain1Type ;+ (comment "Specifies whether the first domain argument is an instance of the specified class or a subclass.\n In SUMO, this signals whether the proposition describing the domains of the relation use the relation name \"domain\" or \"domainSubclass\".") (type SYMBOL) (allowed-values Instance Class) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot %3ALOAD-SEQUENCE ;+ (comment "LOAD-SEQUENCE is a convenience slot which specifies the sequence in which a logically related block of predicates (or an axiom) was loaded from the input KIF-format file. The sole function is to allow recreation of the original sequence of statements for the convenience of the ontologist. A value of 0 is default for newly created concepts.") (type INTEGER) (range 0 %3FVARIABLE) (default 0) ;+ (cardinality 1 1) (create-accessor read-write)) (single-slot %3ASUO-name ;+ (comment "The :SUO-name is the name of an instance that is used for display. This is an important element of the ontology as it permits the assignment of instances to multiple classes, a tactic forbidden by the Protege program, which requires that all frame names be unique.\n Thus, if an instance of any concept has a :SUO-name, that name is the one that will appear in \"instance\" propositions that are exported to a KIF data file.") (type STRING) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot %3AAXIOMS ;+ (comment "Axioms from SUMO or other sources, constraining the meaning of the slot.") (type STRING) ;+ (cardinality 0 1) (create-accessor read-write)) (multislot %3AisInModule ;+ (comment ":IsInModule is a slot that attaches to both :UBL-SLOT and :UBL-CLASS.\nIt is used to organize the concepts in related groupings. Initially, the modules specified will be those of the SUMO ontology.\n we allow a concpet to be inmore than one module, but in order to reproduce the structure of a particular KIF file, only one module should be specified.") (type INSTANCE) ;+ (allowed-classes %3AModule) (create-accessor read-write))) (defclass %3AUBL-AXIOM "A :UBL-AXIOM is a :PAL-CONSTRAINT to which the additional slots :isInModule and\n:LOAD-SEQUENCE have been added." (is-a %3APAL-CONSTRAINT) (role concrete) (multislot %3AisInModule ;+ (comment ":IsInModule is a slot that attaches to both :UBL-SLOT and :UBL-CLASS.\nIt is used to organize the concepts in related groupings. Initially, the modules specified will be those of the SUMO ontology.\n we allow a concpet to be inmore than one module, but in order to reproduce the structure of a particular KIF file, only one module should be specified.") (type INSTANCE) ;+ (allowed-classes %3AModule) (create-accessor read-write)) (single-slot %3ALOAD-SEQUENCE ;+ (comment "LOAD-SEQUENCE is a convenience slot which specifies the sequence in which a logically related block of predicates (or an axiom) was loaded from the input KIF-format file. The sole function is to allow recreation of the original sequence of statements for the convenience of the ontologist. A value of 0 is default for newly created concepts.") (type INTEGER) (range 0 %3FVARIABLE) (default 0) ;+ (cardinality 1 1) (create-accessor read-write))) (defclass %3AKIF-AXIOM "This class contains axioms added to the base SKIFcore ontology to enable perspicuous representation of KIF entities in Protege" (is-a %3APAL-CONSTRAINT) (role concrete)) (defclass InheritableRelation "\"This is a &%Class of &%Classes. Each &%instance of &%InheritableRelation is a &%subclass of &%Relation whose properties can be inherited downward in the class hierarchy via the &%subrelation &%Predicate.\"" (is-a %3ARELATION) (role concrete) (multislot %3AisInModule ;+ (comment ":IsInModule is a slot that attaches to both :UBL-SLOT and :UBL-CLASS.\nIt is used to organize the concepts in related groupings. Initially, the modules specified will be those of the SUMO ontology.\n we allow a concpet to be inmore than one module, but in order to reproduce the structure of a particular KIF file, only one module should be specified.") (type INSTANCE) ;+ (allowed-classes %3AModule) (create-accessor read-write)) (single-slot %3ALOAD-SEQUENCE ;+ (comment "LOAD-SEQUENCE is a convenience slot which specifies the sequence in which a logically related block of predicates (or an axiom) was loaded from the input KIF-format file. The sole function is to allow recreation of the original sequence of statements for the convenience of the ontologist. A value of 0 is default for newly created concepts.") (type INTEGER) (range 0 %3FVARIABLE) (default 0) ;+ (cardinality 1 1) (create-accessor read-write)) (multislot %3AidenticalTo ;+ (comment ":identicalTo points to other concepts within the ontology that are intended to be the same as the base concept. This is a way to work around the Protege restriction that no frame can be an instanceof more than one class, and no Slot can also be an instance, and no instance can also be a class.") (type STRING) (create-accessor read-write)) (single-slot %3Adocumentation ;+ (comment "A relation between objects in the domain of discourse and strings of natural language text. The domain of &%documentation is not constants (names), but the objects themselves. This means that one does not quote the names when associating them with their documentation.") (type STRING) ;+ (cardinality 0 1) (create-accessor read-write))) (defclass %3AKIFentity ":KIFentity holds the classes that are\nrequired to import a KIF ontology\nusing the KIF-utilities tab. These classes may have any of several functions.\n METADATA: data such as comment lines from an original input file (or comment lines that a user wants to export to an output file) are stored in :SKIFdocs to allow re-creation as best as possible of the structure an information in the original SKIF file.\n PROPOSITIONS: propositions which are not directly visualized as Protege data structures can be created or stored as instances of the :SUMOProposition class. Assertions about real-world objects and events can be stored as instances of the :Assertion class.\n Last edit November 8, 2003" (is-a %3ASYSTEM-CLASS) (role concrete) (single-slot %3Adocumentation ;+ (comment "A relation between objects in the domain of discourse and strings of natural language text. The domain of &%documentation is not constants (names), but the objects themselves. This means that one does not quote the names when associating them with their documentation.") (type STRING) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot %3ASUO-name ;+ (comment "The :SUO-name is the name of an instance that is used for display. This is an important element of the ontology as it permits the assignment of instances to multiple classes, a tactic forbidden by the Protege program, which requires that all frame names be unique.\n Thus, if an instance of any concept has a :SUO-name, that name is the one that will appear in \"instance\" propositions that are exported to a KIF data file.") (type STRING) ;+ (cardinality 0 1) (create-accessor read-write))) (defclass %3ASynonym "A Synonym is a word which labels the same concept as some other word.\nThis is used in the UBL-invoice ontology as an Own-Slot on classes, to allow classes to have multiple labels." (is-a %3AKIFentity) (role concrete) (single-slot %3AhasFrequency ;+ (comment "The frequency is the fraction of the time that this term refers to the labeled concept. The sum of frequencies onthis list may exceed 1.0, because this is not the freuency with which this concepot is labeled by this term, but the inverse.") (type FLOAT) (range 0.0 1.0) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot %3AinLanguage ;+ (comment "inLanguage relates a word -- a string of characters -- to the language in which it is a word.\nThe language may be natural or artificial -- e.g. the terms in an ontology are considered a language for this purpose.") (type INSTANCE) ;+ (allowed-classes %3AHumanLanguage) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot %3AsynonymousTerm ;+ (comment "A string serving as a synonym for the class label.\n The value of the relation :synonymousTerm is a string of characters used as a label for the concept which is represented by the class which has that :Synonym pointed to by the :hasSynonym slot.\n Technically, :synonymousTerm is a slot of the class :Synonym. Instances of the class :Syonym are the values of the relation :SYNONYMS, which is an own slot of the class :SYN-CLASS.\n") (type STRING) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot %3AhasUsage ;+ (comment "This relation records the usage for a synonymous word: one of a list of possibilities.") (type SYMBOL) (allowed-values preferred deprecated technical slang) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot %3AisaSynonymOf ;+ (comment "The reverse pointer from an instance of :Synonym to the concept of which it is a synonym.") (type INSTANCE) ;+ (allowed-classes %3AUBL-CLASS %3AUBL-SLOT) ;+ (cardinality 0 1) (create-accessor read-write))) (defclass %3ASetOrClass "SUO 1.55: July 14, 2003\nThe &%SetOrClass of &%Sets and &%Classes, i.e. any instance \nof &%Abstract that has &%elements or &%instances." (is-a %3AKIFentity) (role concrete) (multislot disjoint ;+ (comment "&%Classes are &%disjoint only if they share no instances, i.e. just in case the result of applying &%IntersectionFn to them is empty.\n") (type INSTANCE) ;+ (allowed-classes %3AUBL-CLASS %3ASetOrClass) (create-accessor read-write))) (defclass %3ASet "SUO 1.55: July 14, 2003\nA &%SetOrClass that satisfies extensionality as well as\nother constraints specified by some choice of set theory. &%Sets differ\nfrom &%Classes in two important respects. First, &%Sets are extensional -\ntwo &%Sets with the same &%elements are identical. Second, a &%Set can be\nan arbitrary stock of objects. That is, there is no requirement that &%Sets\nhave an associated condition that determines their membership. Note that &%Sets\nare not assumed to be unique sets, i.e. &%elements of a &%Set may occur more\nthan once in the &%Set." (is-a %3ASetOrClass) (role concrete)) (defclass %3AOrderedSet "An ordered set is one with an ordering relation between the members" (is-a %3ASet) (role concrete)) (defclass %3AUBL-CLASS "A UBL-CLASS will be used as the parent metaclass for concepts within the UBL-invoice series of ontologies. It will have at least one added facet, ':isInModule', which specifies the module within which the class was imported from an SKIF-format file. It will be used as a guide to where to put the class block in the exported file." (is-a %3ASTANDARD-CLASS %3ASetOrClass) (role concrete) (multislot partition ;+ (comment "A &%partition of a class C is a set of mutually &%disjoint classes (a subclass partition) which covers C. Every instance of C is an instance of exactly one of the subclasses \nin the partition.") (type INSTANCE) ;+ (allowed-classes %3AUBL-CLASS) (create-accessor read-write)) (multislot relatedExternalConcept (type INSTANCE) ;+ (allowed-classes Entity) (create-accessor read-write)) (single-slot %3AhasDefaultValue ;+ (comment "\"(:hasDefaultValue ?REL ?CLASS ?VAL) is used to specify that, for every instance of a particular class, the value of the relation ?REL for every instance of class ?CLASS is ?VAL, unless it is overridden by an explicit assignment of the value. In Protege, such overrides can be accomplished by simply changing the value of the instance. For the SKIF files, we need an explicit override relation so that the condition for using the default can be described logically rather than programmatically. The override can be accomplished by using :hasDefaultValue with the subclass as argument, or, if one wants an override that cannot itself be overridden, the relation used is ':hasClassValue'.\"") (type INSTANCE) ;+ (allowed-classes Entity) ;+ (cardinality 0 1) (create-accessor read-write)) (multislot %3AClassPredicates ;+ (comment ":ClassPredicates shows the list of predicates which are asserted on a class but do not have their own facet pane in the class display window. They are given as strings and do not directly point to the classes or instances whjich may be values of the predicate arguments.") (type STRING) (create-accessor read-write)) (multislot %3AidenticalTo ;+ (comment ":identicalTo points to other concepts within the ontology that are intended to be the same as the base concept. This is a way to work around the Protege restriction that no frame can be an instanceof more than one class, and no Slot can also be an instance, and no instance can also be a class.") (type STRING) (create-accessor read-write)) (multislot disjointDecomposition ;+ (comment "A &%disjointDecomposition of a &%Class C is a set of subclasses of C that are mutually &%disjoint.") (type INSTANCE) ;+ (allowed-classes %3AUBL-CLASS) (create-accessor read-write)) (multislot relatedInternalConcept ;+ (comment "SUMO - 155") (type STRING) (create-accessor read-write)) (multislot %3AisInModule ;+ (comment ":IsInModule is a slot that attaches to both :UBL-SLOT and :UBL-CLASS.\nIt is used to organize the concepts in related groupings. Initially, the modules specified will be those of the SUMO ontology.\n we allow a concpet to be inmore than one module, but in order to reproduce the structure of a particular KIF file, only one module should be specified.") (type INSTANCE) ;+ (allowed-classes %3AModule) (create-accessor read-write)) (multislot partition2 ;+ (comment "A &%partition of a class C is a set of mutually &%disjoint classes (a subclass partition) which covers C. Every instance of C is an instance of exactly one of the subclasses \nin the partition.") (type INSTANCE) ;+ (allowed-classes %3AUBL-CLASS %3ATHING) (create-accessor read-write)) (multislot %3AhasRestrictedVal ;+ (comment ":hasRestrictedVal is the companion slot to :isRestrictedTo, with args 1 and 2 reversed, so that it is displayed in the class window for arg2.") (type SYMBOL) ;+ (allowed-parents Entity) (create-accessor read-write)) (single-slot %3AhasClassValue ;+ (comment "(:hasClassValue ?CLASS ?REL ?ENT) is used to assert that every instance of class ?CLASS is related by relation ?REL to some instance ?ENT. The parent class of instance ?ENT must be a subclass of an allowed class for the values of relation ?REL.") (type INSTANCE) ;+ (allowed-classes Entity) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot %3ALOAD-SEQUENCE ;+ (comment "LOAD-SEQUENCE is a convenience slot which specifies the sequence in which a logically related block of predicates (or an axiom) was loaded from the input KIF-format file. The sole function is to allow recreation of the original sequence of statements for the convenience of the ontologist. A value of 0 is default for newly created concepts.") (type INTEGER) (range 0 %3FVARIABLE) (default 0) ;+ (cardinality 1 1) (create-accessor read-write))) (defclass %3ASYN-CLASS ":SYN-CLASS is a :UBL-CLASS which has a synonym slot." (is-a %3AUBL-CLASS) (role concrete) (multislot %3ASYNONYMS ;+ (comment "A list of synonyms in natural or formal languages for the concept represetned by this class.") (type INSTANCE) ;+ (allowed-classes %3ASynonym) (create-accessor read-write))) (defclass %3AClass "SUO 1.55: July 14, 2003\n&%Classes differ from &%Sets in three important respects. \nFirst, &%Classes are not assumed to be extensional. That is, distinct \n&%Classes might well have exactly the same instances. Second, &%Classes typically \nhave an associated `condition' that determines the instances of the &%Class. So, \nfor example, the condition `human' determines the &%Class of &%Humans. Note that \nsome &%Classes might satisfy their own condition (e.g., the &%Class of &%Abstract \nthings is &%Abstract) and hence be instances of themselves. Third, the instances \nof a class may occur only once within the class, i.e. a class cannot contain \nduplicate instances." (is-a %3ASetOrClass %3AUBL-CLASS) (role concrete) (single-slot disjointDecomposition ;+ (comment "A &%disjointDecomposition of a &%Class C is a set of subclasses of C that are mutually &%disjoint.") (type INSTANCE) ;+ (allowed-classes %3ASetOrClass) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot partition ;+ (comment "A &%partition of a class C is a set of \nmutually &%disjoint classes (a subclass partition) which covers C. \nEvery instance of C is an instance of exactly one of the subclasses \nin the partition.") (type INSTANCE) ;+ (allowed-classes %3ASetOrClass) ;+ (cardinality 0 1) (create-accessor read-write))) (defclass %3ALanguage "SUO 1.55: July 14, 2003\nA system of signs for expressing thought. The\nsystem can be either natural or artificial, i.e. something that emerges\ngradually as a cultural artifact or something that is intentionally created\nby a person or group of people." (is-a %3AKIFentity) (role concrete)) (defclass %3AHumanLanguage "SUO 1.55: July 14, 2003\nThe &%subclass of &%Languages used by\n&%Humans." (is-a %3ALanguage) (role concrete)) (defclass %3AConstructedLanguage "SUO 1.55: July 14, 2003\nAn &%ConstructedLanguage is a\n&%HumanLanguage that did not evolve spontaneously within a language\ncommunity, but rather had its core grammar and vocabulary invented by\none or more language experts, often with an aim to produce a more\ngrammatically regular language than any language that has evolved\nnaturally. This &%Class includes languages like Esperanto that were\ncreated to facilitate international communication" (is-a %3AHumanLanguage) (role concrete)) (defclass %3ANaturalLanguage "SUO 1.55: July 14, 2003\nThe &%subclass of &%HumanLanguages which\nare not designed and which evolve from generation to generation. This\n&%Class includes all of the national languages, e.g. English, Spanish,\nJapanese, etc. Note that this class includes dialects of natural\nlanguages." (is-a %3AHumanLanguage) (role concrete)) (defclass %3AList "SUO 1.55: July 14, 2003\nEvery &%List is a particular ordered n-tuple of items. Generally speaking, &%Lists are created by means of the &%ListFn \n&%Function, which takes any number of items as arguments and returns a \n&%List with the items in the same order. Anything, including other \n&%Lists, may be an item in a &%List. Note too that &%Lists are extensional - two lists that have the same items in the same order are identical. Note too that a &%List may contain no items. In that case, \nthe &%List is the &%NullList." (is-a %3AKIFentity) (role concrete)) (defclass %3AStringList "A StringList is a list of AbstractStrings." (is-a %3AList) (role concrete)) (defclass %3ACodeList "A CodeList is a list containing the usable code strings identified as part of thelist by some code-creating authority. This is used for official business and electronic transactions, among other things." (is-a %3AStringList) (role concrete)) (defclass %3AProtegeSymbolList "A ProtegeSymbolList is a duplicate way of encoding the \"Symbol\" values for the slots in Protege. It is used for exporting and importing from the KIF format." (is-a %3ACodeList) (role concrete)) (defclass %3AModule "A Module is a subset of the concepts, relations, and axioms which form a part of a topic or ontology.\n For UBL, the modulesof the SUMO ontology form the initial set of modules which are instances of this concept." (is-a %3AKIFentity) (role concrete) (single-slot %3AinputFile ;+ (comment ":inputFile is the name of the file from which a particular module was derived.") (type STRING) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot %3AStartingBlock ;+ (comment "The block number fot the block ich starts this module - which should be the module definition block itself.") (type INTEGER) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot %3ASUO-name ;+ (comment "The :SUO-name is the name of an instance that is used for display. This is an important element of the ontology as it permits the assignment of instances to multiple classes, a tactic forbidden by the Protege program, which requires that all frame names be unique.\n Thus, if an instance of any concept has a :SUO-name, that name is the one that will appear in \"instance\" propositions that are exported to a KIF data file.") (type STRING) ;+ (cardinality 0 1) (create-accessor read-write))) (defclass %3AAbstractString "An AbstractString is an abstraction of a linear series of characters -- printable or control codes -- in some language. It may have many representations in physical objects of different fonts, colors, shapes." (is-a %3AKIFentity) (role concrete) (single-slot %3ASUO-name ;+ (comment "The :SUO-name is the name of an instance that is used for display. This is an important element of the ontology as it permits the assignment of instances to multiple classes, a tactic forbidden by the Protege program, which requires that all frame names be unique.\n Thus, if an instance of any concept has a :SUO-name, that name is the one that will appear in \"instance\" propositions that are exported to a KIF data file.") (type STRING) ;+ (cardinality 0 1) (create-accessor read-write))) (defclass %3AGroup "A :Group is an aggregate of two or more entities that is not a mathematical set" (is-a %3AKIFentity) (role concrete)) (defclass %3ASUMOProposition "A :SUMOProposition is a proposition imported from the SUMO KIF-format ontology. It is recorded in two forms:\n(1) byte-for-byte copying\n Examples are:\n (disjoint Physical Abstract)\n (partition Entity Physical Abstract)\n(2) argument ordering\n The top-level arguments are broken out\ninto a list. The first example would be:\n\ndisjoint\nPhysical\nAbstract\n\n Where existence of such propositions in an ontology is known in advance, we can create a special slot on the :UBL-CLASS to handle it. But in the general case, we may not know ahead of time precisely how it is best visualized in Protege. We therefore merely record such propositions containing previously unknown relations in SUMO as instances of a \":SUMOProposition\". The user may decide whether and how to change the presentation of such relations.\n" (is-a %3AKIFentity) (role concrete) (multislot %3AisInModule ;+ (comment ":IsInModule is a slot that attaches to both :UBL-SLOT and :UBL-CLASS.\nIt is used to organize the concepts in related groupings. Initially, the modules specified will be those of the SUMO ontology.\n we allow a concpet to be inmore than one module, but in order to reproduce the structure of a particular KIF file, only one module should be specified.") (type INSTANCE) ;+ (allowed-classes %3AModule) (create-accessor read-write)) (single-slot %3AliteralTranscription ;+ (comment ":literalTranscription is a byte-for-byte copy of the input proposition.") (type STRING) ;+ (cardinality 1 1) (create-accessor read-write)) (single-slot %3ALOAD-SEQUENCE ;+ (comment "LOAD-SEQUENCE is a convenience slot which specifies the sequence in which a logically related block of predicates (or an axiom) was loaded from the input KIF-format file. The sole function is to allow recreation of the original sequence of statements for the convenience of the ontologist. A value of 0 is default for newly created concepts.") (type INTEGER) (range 0 %3FVARIABLE) (default 0) ;+ (cardinality 1 1) (create-accessor read-write)) (multislot %3AargumentList ;+ (comment "The :argumentList is the list of top-level arguments (not breaking parenthesized arguments such as functions into their components)\n") (type STRING) (create-accessor read-write)) (single-slot %3ASUO-name ;+ (comment "The :SUO-name is the name of an instance that is used for display. This is an important element of the ontology as it permits the assignment of instances to multiple classes, a tactic forbidden by the Protege program, which requires that all frame names be unique.\n Thus, if an instance of any concept has a :SUO-name, that name is the one that will appear in \"instance\" propositions that are exported to a KIF data file.") (type STRING) ;+ (cardinality 0 1) (create-accessor read-write))) (defclass %3AUnclassifiedProposition "An :UnclassifiedProposition is a proposition that is not recorded in other data structures in the Protege ontology. In the original SUMO file there were several such cases, but in general this can be used to hold instances of assertions of any kind that relate to instances of concepts, rather than being terminological relations on the concepts themselves.\n Propositions that relate to physical objects, events, states, or processes should be recorded as instances of :Assertion. Necessarily true propositions about abstract things, such as that a Euclidean triangle has a total of 180 degrees in its internal angles, can be instances of this metaclass." (is-a %3ASUMOProposition) (role concrete) (single-slot %3AblockLineNumber ;+ (comment "The :blockLineNumber of a comment or unrecognized predicate is its location within the block where it occurs in a SKIF input file.") (type INTEGER) ;+ (cardinality 0 1) (create-accessor read-write)) (multislot %3AuncInstList ;+ (comment "The insatance(s) created from an instance block, saved for convenience in later procesing of unclassified instance propositions.") (type INSTANCE) ;+ (allowed-classes Entity) (create-accessor read-write))) (defclass %3AAssertion "An :Assertion is any proposition intended to state a fact regarding specific objects, events, states, or processes in the real-world, rather than regarding conceptual relations or the structure of this ontology.\n Such assertions must have a specification of the time period during which the assertion asserted to be true, even if that time period is unknown or holds for all time." (is-a %3AKIFentity) (role concrete) (multislot %3AisInModule ;+ (comment ":IsInModule is a slot that attaches to both :UBL-SLOT and :UBL-CLASS.\nIt is used to organize the concepts in related groupings. Initially, the modules specified will be those of the SUMO ontology.\n we allow a concpet to be inmore than one module, but in order to reproduce the structure of a particular KIF file, only one module should be specified.") (type INSTANCE) ;+ (allowed-classes %3AModule) (create-accessor read-write)) (single-slot %3AliteralTranscription ;+ (comment ":literalTranscription is a byte-for-byte copy of the input proposition.") (type STRING) ;+ (cardinality 1 1) (create-accessor read-write)) (single-slot %3ALOAD-SEQUENCE ;+ (comment "LOAD-SEQUENCE is a convenience slot which specifies the sequence in which a logically related block of predicates (or an axiom) was loaded from the input KIF-format file. The sole function is to allow recreation of the original sequence of statements for the convenience of the ontologist. A value of 0 is default for newly created concepts.") (type INTEGER) (range 0 %3FVARIABLE) (default 0) ;+ (cardinality 1 1) (create-accessor read-write)) (multislot %3AargumentList ;+ (comment "The :argumentList is the list of top-level arguments (not breaking parenthesized arguments such as functions into their components)\n") (type STRING) (create-accessor read-write))) (defclass %3AClassPreds "This class is used to store predicates occurring in subclass blocks which are not handled by the 'addClassToArray' method. The values of such predicates may be instances or classes." (is-a %3AAssertion) (role concrete)) (defclass %3ARow "A :Row is an :OrderedSet that may contain classes, instances, or relations. It is used as an argument (specifically, domain2) in VariableArity relations." (is-a %3AKIFentity) (role concrete)) (defclass %3ASKIFdocs ":SKIFdocs are the documentation lines from an original SKIF file which was imported.\nAdditional documentation for export may be created in the Protege environment, and if given a module name or :LOAD-SEQUENCE, it will be placed ina specific locationin the ecported file." (is-a %3AKIFentity) (role concrete) (multislot %3AcommentLines ;+ (comment "The individual comment lines found in a SKIF inpout file.") (type STRING) (create-accessor read-write)) (multislot %3AisInModule ;+ (comment ":IsInModule is a slot that attaches to both :UBL-SLOT and :UBL-CLASS.\nIt is used to organize the concepts in related groupings. Initially, the modules specified will be those of the SUMO ontology.\n we allow a concpet to be inmore than one module, but in order to reproduce the structure of a particular KIF file, only one module should be specified.") (type INSTANCE) ;+ (allowed-classes %3AModule) (create-accessor read-write)) (single-slot %3ALOAD-SEQUENCE ;+ (comment "LOAD-SEQUENCE is a convenience slot which specifies the sequence in which a logically related block of predicates (or an axiom) was loaded from the input KIF-format file. The sole function is to allow recreation of the original sequence of statements for the convenience of the ontologist. A value of 0 is default for newly created concepts.") (type INTEGER) (range 0 %3FVARIABLE) (default 0) ;+ (cardinality 1 1) (create-accessor read-write))) (defclass %3AEmbeddedComment "An :EmbeddedComment is a comment line that occurs within a normal class or instance block of an input SKIF file. We record the line and also its line number within the block, so as to be able to reproduce the input file as closely as feasible when the Protege knowledge base is re-exported into SKIF format." (is-a %3ASKIFdocs) (role concrete) (single-slot %3AblockLineNumber ;+ (comment "The :blockLineNumber of a comment or unrecognized predicate is its location within the block where it occurs in a SKIF input file.") (type INTEGER) ;+ (cardinality 0 1) (create-accessor read-write))) (defclass %3AFunctionTerm ":FunctionTerm is the class of restricted terms that have a defined function in the ontology." (is-a %3AKIFentity) (role concrete)) (defclass Entity "SKIFcore -- test\n This is the base ontology required to import SKIF format ontology files into Protege using the SkifTab plug-in.\n Last modification Feb 18, 2004, for samin007.txt.\n Provision is made to add\nSUMO axioms as PAL-CONSTRAINTS.\n Top node is \"Entity\" -- all instances of any class are an instance of this class. \n This file is designed to allow visualization of the UBL-Invoice ontology, an ontology under constriction, derived from SUMO 1.56 with additional classes and relations being added by members of the Ontolog business ontology development group.\n\nCOnversion note: Converted SUMO 1.55 from the Merge-Txt file on Teknowledge's site.\nTernary predicates have the second argument as :Domain2Class.,and the third argument as the Value.\n Binary Functions have the second argument as :Domain2Class and the range as the Value.\n\nFor most **instances** of the relations defined in the SUMO file, only one class is listed as the parent class. Additional parent classes were not transcribed." (is-a USER) (role concrete) (single-slot %3AhasValueClass ;+ (comment ":hasValueClass is an inverse of :hasClassValue. It specifies that a certain value always holds in a certain relation on a particular class, but the relation has a different polarity from the relations similarly restricted with :hasClassValue.") (type SYMBOL) ;+ (allowed-parents Entity) ;+ (cardinality 0 1) (create-accessor read-write)) (multislot %3AInstanceAssertions ;+ (comment "assertions at the instance level that reference this instance.") (type INSTANCE) ;+ (allowed-classes %3AAssertion) (create-accessor read-write)) (single-slot %3ASUO-name ;+ (comment "The :SUO-name is the name of an instance that is used for display. This is an important element of the ontology as it permits the assignment of instances to multiple classes, a tactic forbidden by the Protege program, which requires that all frame names be unique.\n Thus, if an instance of any concept has a :SUO-name, that name is the one that will appear in \"instance\" propositions that are exported to a KIF data file.") (type STRING) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot %3AAXIOMS ;+ (comment "Axioms from SUMO or other sources, constraining the meaning of the slot.") (type STRING) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot %3ALOAD-SEQUENCE ;+ (comment "LOAD-SEQUENCE is a convenience slot which specifies the sequence in which a logically related block of predicates (or an axiom) was loaded from the input KIF-format file. The sole function is to allow recreation of the original sequence of statements for the convenience of the ontologist. A value of 0 is default for newly created concepts.") (type INTEGER) (range 0 %3FVARIABLE) (default 0) ;+ (cardinality 1 1) (create-accessor read-write)) (multislot %3AisInModule ;+ (comment ":IsInModule is a slot that attaches to both :UBL-SLOT and :UBL-CLASS.\nIt is used to organize the concepts in related groupings. Initially, the modules specified will be those of the SUMO ontology.\n we allow a concpet to be inmore than one module, but in order to reproduce the structure of a particular KIF file, only one module should be specified.") (type INSTANCE) ;+ (allowed-classes %3AModule) (create-accessor read-write)) (multislot %3AidenticalTo ;+ (comment ":identicalTo points to other concepts within the ontology that are intended to be the same as the base concept. This is a way to work around the Protege restriction that no frame can be an instanceof more than one class, and no Slot can also be an instance, and no instance can also be a class.") (type STRING) (create-accessor read-write)) (single-slot %3Adocumentation ;+ (comment "A relation between objects in the domain of discourse and strings of natural language text. The domain of &%documentation is not constants (names), but the objects themselves. This means that one does not quote the names when associating them with their documentation.") (type STRING) ;+ (cardinality 0 1) (create-accessor read-write)) (multislot relatedInternalConcept ;+ (comment "SUMO - 155") (type STRING) (create-accessor read-write))) (defclass BinaryRelation "A BinaryRelation is a class of relations with two arguments, specifying a relation between those two arguments." (is-a USER) (role concrete))