<?xml version="1.0" encoding="UTF-8"?>

<?xml-stylesheet type="text/xsl" href="http://sw.opencyc.org/xsl/OpenCycOWLCollectionDisplayVersioned.xsl"?>

<!DOCTYPE rdf:RDF [
     <!ENTITY ocyc "http://sw.opencyc.org/concept/" >
     <!ENTITY cyc  "http://sw.cyc.com/concept/" >
     <!ENTITY rdf  "http://www.w3.org/1999/02/22-rdf-syntax-ns#" >
     <!ENTITY rdfs "http://www.w3.org/2000/01/rdf-schema#" >
     <!ENTITY xsd  "http://www.w3.org/2001/XMLSchema#" >
     <!ENTITY owl  "http://www.w3.org/2002/07/owl#" >
   ]>

<rdf:RDF xml:base="http://sw.opencyc.org/2008/06/10/concept/"
         xmlns="http://sw.opencyc.org/2008/06/10/concept/"
         xmlns:cycAnnot="http://sw.cyc.com/CycAnnotations_v1#"
         xmlns:rdf="&rdf;"
         xmlns:rdfs="&rdfs;"
         xmlns:owl="&owl;"
         xmlns:xsd="&xsd;">

  <owl:Ontology rdf:about="http://sw.opencyc.org/2008/06/10/concept/">
    <owl:versionInfo>2008/06/10</owl:versionInfo>
    <rdfs:comment xml:lang="en">

      OpenCyc Knowledge Base

      Copyright© 2001-2008 Cycorp, Inc., http://www.cyc.com/, Austin, TX, USA

      This file contains an OWL representation of information contained 
      in the OpenCyc Knowledge Base. The content of this OWL file is 
      licensed under the Creative Commons Attribution 3.0 license whose 
      text can be found at http://creativecommons.org/licenses/by/3.0/legalcode. 
      The content of this OWL file, including the OpenCyc content it represents, 
      constitutes the "Work" referred to in the Creative Commons license. The terms of 
      this license equally apply to, without limitation, renamings and other 
      logically equivalent reformulations of the content of this OWL file 
      (or portions thereof) in any natural or formal language, as well 
      as to derivations of this content or inclusion of it in other ontologies.

    </rdfs:comment>
  </owl:Ontology>

  <owl:AnnotationProperty rdf:about="http://sw.cyc.com/CycAnnotations_v1#externalID">
    <rdfs:label xml:lang="en">externalID</rdfs:label>
    <rdfs:comment xml:lang="en">
      A unique, language-neutral, variable-sized identifier
      for a concept that can be used to refer unambiguously to that concept across 
      OWL exports or across Cyc inference engines.
    </rdfs:comment>
    <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#FunctionalProperty"/>
  </owl:AnnotationProperty>

  <owl:AnnotationProperty rdf:about="http://sw.cyc.com/CycAnnotations_v1#label">
    <rdfs:label xml:lang="en">label</rdfs:label>
    <rdfs:comment xml:lang="en">
      A natural-language representation for a concept that is both human 
      readable and readable by the Cyc inference engine. These terms are not 
      guaranteed to refer to the same concept across time but are guaranteed to
      be consistent within a particular OWL export. Use 'cycAnnot:externalID'
      for unambiguously referring to a concept across OWL exports or across Cyc
      inference engines.
    </rdfs:comment>
  </owl:AnnotationProperty>

  <owl:Class rdf:about="Mx4rvVjDLZwpEbGdrcN5Y29ycA">
    <rdfs:comment xml:lang="en">A specialization of &lt;a href=&quot;http://sw.opencyc.org/2008/06/10/concept/Mx4rvVib1JwpEbGdrcN5Y29ycA&quot; class=&quot;cyc_term&quot;&gt;Specification&lt;/a&gt;. Each instance of this collection is not a computer program itself (i.e. lines of code), but an abstract characterization of how a program should behave.  For instance, a sorting program can be specified by requiring that the program&apos;s output be a list of the same elements as the input such that no element follows an element that is greater than it. A notable example of a &lt;a href=&quot;http://sw.opencyc.org/2008/06/10/concept/Mx4rvVjDLZwpEbGdrcN5Y29ycA&quot; class=&quot;cyc_term&quot;&gt;ProgramSpecification&lt;/a&gt; is UNIX - which is not (contrary to popular belief) an operating system per se, but a specification to which many different operating systems (instances of &lt;a href=&quot;http://sw.opencyc.org/2008/06/10/concept/Mx4rvwJcVZwpEbGdrcN5Y29ycA&quot; class=&quot;cyc_term&quot;&gt;UnixOS&lt;/a&gt;) conform. Note that instances of &lt;a href=&quot;http://sw.opencyc.org/2008/06/10/concept/Mx4rvVjDLZwpEbGdrcN5Y29ycA&quot; class=&quot;cyc_term&quot;&gt;ProgramSpecification&lt;/a&gt; do not necessarily specify single, discrete programs -- thus many of the internet&apos;s &amp;quot;RFC&amp;quot; protocol-establishing documents (see &lt;a href=&quot;http://sw.opencyc.org/2008/06/10/concept/Mx4rwL2Ud5wpEbGdrcN5Y29ycA&quot; class=&quot;cyc_term&quot;&gt;RequestForComments_Internet&lt;/a&gt;) fall into this collection.</rdfs:comment>
    <cycAnnot:label xml:lang="en">ProgramSpecification</cycAnnot:label>
    <rdfs:label xml:lang="en">program specification</rdfs:label>
    <rdfs:subClassOf rdf:resource="Mx4rvVib1JwpEbGdrcN5Y29ycA"/>
    <rdf:type rdf:resource="Mx4rvVirnZwpEbGdrcN5Y29ycA"/>
    <owl:sameAs rdf:resource="&ocyc;Mx4rvVjDLZwpEbGdrcN5Y29ycA"/>
    <owl:sameAs rdf:resource="&cyc;Mx4rvVjDLZwpEbGdrcN5Y29ycA"/>
    <owl:sameAs rdf:resource="http://dbpedia.org/resource/Program_specification"/>
    <Mx4rwLSVCpwpEbGdrcN5Y29ycA xml:lang="en">program specifications</Mx4rwLSVCpwpEbGdrcN5Y29ycA>
    <wikipediaArticleURL>http://en.wikipedia.org/wiki/Program_specification</wikipediaArticleURL>
  </owl:Class>

  <owl:Class rdf:about="Mx4rKgDylG5kQdmM5K3S1kRDJg">
    <rdfs:subClassOf rdf:resource="Mx4rvVjDLZwpEbGdrcN5Y29ycA"/>
    <rdfs:label xml:lang="en">inductive logic programming mode</rdfs:label>
    <rdfs:comment xml:lang="en">A sub-collection of &lt;a href=&quot;http://sw.opencyc.org/2008/06/10/concept/Mx4rvVjDLZwpEbGdrcN5Y29ycA&quot; class=&quot;cyc_term&quot;&gt;ProgramSpecification&lt;/a&gt;.  Instances of &lt;a href=&quot;http://sw.opencyc.org/2008/06/10/concept/Mx4rKgDylG5kQdmM5K3S1kRDJg&quot; class=&quot;cyc_term&quot;&gt;InductiveLogicProgrammingMode&lt;/a&gt; constitute part of the settings for inductive logic programs like &lt;font color=&quot;#ff0000&quot;&gt;#$ALEPH&lt;/font&gt;.  Specifically, they serve to increase the efficiency of the system by constraining the search space of possible rules.</rdfs:comment>
    <cycAnnot:label xml:lang="en">InductiveLogicProgrammingMode</cycAnnot:label>
  </owl:Class>

  <owl:Class rdf:about="Mx8Ngh4rZ8HBth8YEdqAAAACs71DGR8Ngh4r6Itlxh8ZEdqAAAACs71DGR4rsUtZ3AhcEdqAAAACs4vPlg">
    <rdfs:subClassOf rdf:resource="Mx4rvVjDLZwpEbGdrcN5Y29ycA"/>
    <cycAnnot:label xml:lang="en">(SpecificationTypeFromParameterTypeFn (ParameterTypeOfProgramFn CycAnalyticEnvironment-TheProgram))</cycAnnot:label>
    <rdfs:label xml:lang="en">Specification Type From Parameter Type Fn Parameter Type Of Program Fn the Cyc Analytic Environment</rdfs:label>
  </owl:Class>

  <owl:Class rdf:about="Mx4rKK6YdG5kQdmejZDbI0raNg">
    <rdfs:subClassOf rdf:resource="Mx4rvVjDLZwpEbGdrcN5Y29ycA"/>
    <cycAnnot:label xml:lang="en">InductiveLogicProgrammingDetermination</cycAnnot:label>
    <rdfs:label xml:lang="en">inductive logic programming determination</rdfs:label>
    <rdfs:comment xml:lang="en">A sub-collection of &lt;a href=&quot;http://sw.opencyc.org/2008/06/10/concept/Mx4rvVjDLZwpEbGdrcN5Y29ycA&quot; class=&quot;cyc_term&quot;&gt;ProgramSpecification&lt;/a&gt;.  Instances of &lt;a href=&quot;http://sw.opencyc.org/2008/06/10/concept/Mx4rKK6YdG5kQdmejZDbI0raNg&quot; class=&quot;cyc_term&quot;&gt;InductiveLogicProgrammingDetermination&lt;/a&gt; constitute part of the settings for inductive logic programs like &lt;a href=&quot;http://sw.opencyc.org/2008/06/10/concept/Mx4rtJjJzHYqQdmO1f3q8REXOA&quot; class=&quot;cyc_term&quot;&gt;ALEPH_ILPProgram&lt;/a&gt;.  Specifically, they enumerate the relevant predicates that will be investigated by the program while performing induction.</rdfs:comment>
  </owl:Class>

  <owl:Class rdf:about="Mx4rzqxwMpi9EdqAAAACs4vPlg">
    <rdfs:subClassOf rdf:resource="Mx4rvVjDLZwpEbGdrcN5Y29ycA"/>
    <cycAnnot:label xml:lang="en">ScoringSoftwareStrategy</cycAnnot:label>
    <rdfs:comment xml:lang="en">A specialization of &lt;a href=&quot;http://sw.opencyc.org/2008/06/10/concept/Mx4rzbW43Ji9EdqAAAACs4vPlg&quot; class=&quot;cyc_term&quot;&gt;ScoringStrategy&lt;/a&gt; and &lt;a href=&quot;http://sw.opencyc.org/2008/06/10/concept/Mx4rvVjDLZwpEbGdrcN5Y29ycA&quot; class=&quot;cyc_term&quot;&gt;ProgramSpecification&lt;/a&gt;. Each instance of &lt;a href=&quot;http://sw.opencyc.org/2008/06/10/concept/Mx4rzqxwMpi9EdqAAAACs4vPlg&quot; class=&quot;cyc_term&quot;&gt;ScoringSoftwareStrategy&lt;/a&gt; is a &lt;a href=&quot;http://sw.opencyc.org/2008/06/10/concept/Mx4rvVjDLZwpEbGdrcN5Y29ycA&quot; class=&quot;cyc_term&quot;&gt;ProgramSpecification&lt;/a&gt; that characterizes how a scoring program should behave. For example, a video game that awards points based on players&apos; performance might have several strategies that reflect different levels of difficulty.</rdfs:comment>
    <rdfs:label xml:lang="en">scoring software strategy</rdfs:label>
  </owl:Class>

  <owl:Class rdf:about="Mx4rwCy9_pwpEbGdrcN5Y29ycA">
    <rdfs:subClassOf rdf:resource="Mx4rvVjDLZwpEbGdrcN5Y29ycA"/>
    <rdfs:comment xml:lang="en">&lt;a href=&quot;http://sw.opencyc.org/2008/06/10/concept/Mx4rwCy9_pwpEbGdrcN5Y29ycA&quot; class=&quot;cyc_term&quot;&gt;JavaClass&lt;/a&gt; is a specialization of &lt;a href=&quot;http://sw.opencyc.org/2008/06/10/concept/Mx4rvVjDLZwpEbGdrcN5Y29ycA&quot; class=&quot;cyc_term&quot;&gt;ProgramSpecification&lt;/a&gt;.  Instances
of &lt;a href=&quot;http://sw.opencyc.org/2008/06/10/concept/Mx4rwCy9_pwpEbGdrcN5Y29ycA&quot; class=&quot;cyc_term&quot;&gt;JavaClass&lt;/a&gt; determine what sorts of operations programs written in
&lt;a href=&quot;http://sw.opencyc.org/2008/06/10/concept/Mx4rwQfjYJwpEbGdrcN5Y29ycA&quot; class=&quot;cyc_term&quot;&gt;JavaProgrammingLanguage&lt;/a&gt; are able to perform when they include the
class and are interpreted by an instance of &lt;a href=&quot;http://sw.opencyc.org/2008/06/10/concept/Mx4rvbND75wpEbGdrcN5Y29ycA&quot; class=&quot;cyc_term&quot;&gt;JavaVirtualMachine&lt;/a&gt;.</rdfs:comment>
    <rdfs:label xml:lang="en">Java class</rdfs:label>
    <cycAnnot:label xml:lang="en">JavaClass</cycAnnot:label>
  </owl:Class>

  <owl:Class rdf:about="Mx4rxo_VAfHDEdaO6gABAkLVdg">
    <rdfs:subClassOf rdf:resource="Mx4rvVjDLZwpEbGdrcN5Y29ycA"/>
    <cycAnnot:label xml:lang="en">MachineProtocol</cycAnnot:label>
    <rdfs:label xml:lang="en">machine protocol</rdfs:label>
    <rdfs:comment xml:lang="en">A specialization of &lt;a href=&quot;http://sw.opencyc.org/2008/06/10/concept/Mx4rxo_VAPHDEdaO6gABAkLVdg&quot; class=&quot;cyc_term&quot;&gt;Protocol&lt;/a&gt; and &lt;a href=&quot;http://sw.opencyc.org/2008/06/10/concept/Mx4rvVib1JwpEbGdrcN5Y29ycA&quot; class=&quot;cyc_term&quot;&gt;Specification&lt;/a&gt;. The collection of all protocols that specify how machines should behave in order to participate in some larger system or to be considered to be of a particular type. To be considered a &lt;a href=&quot;http://sw.opencyc.org/2008/06/10/concept/Mx4rxo_VAPHDEdaO6gABAkLVdg&quot; class=&quot;cyc_term&quot;&gt;Protocol&lt;/a&gt;, this interaction of system with system must involve communication, as opposed to direct action as gears perform on each other in a gearbox.
&lt;p/&gt;
Examples: There are rules that specify how a device should behave electrically in order to be considered a node on a 10 base-T Ethernet network, and there are rules about what types of messages to send to interact with a SOAP-based service on a network.</rdfs:comment>
  </owl:Class>

  <owl:Class rdf:about="Mx4rvzDExpwpEbGdrcN5Y29ycA">
    <rdfs:subClassOf rdf:resource="Mx4rvVjDLZwpEbGdrcN5Y29ycA"/>
    <cycAnnot:label xml:lang="en">NetworkProtocol</cycAnnot:label>
    <rdfs:comment xml:lang="en">&lt;a href=&quot;http://sw.opencyc.org/2008/06/10/concept/Mx4rvzDExpwpEbGdrcN5Y29ycA&quot; class=&quot;cyc_term&quot;&gt;NetworkProtocol&lt;/a&gt; is the collection of all protocols for communication over computer networks. Many of the protocols governing communication over the &lt;a href=&quot;http://sw.opencyc.org/2008/06/10/concept/Mx4rvVnZe5wpEbGdrcN5Y29ycA&quot; class=&quot;cyc_term&quot;&gt;Internet&lt;/a&gt; find expression in so called &amp;quot;Request For Comment&amp;quot; documents (see &lt;a href=&quot;http://sw.opencyc.org/2008/06/10/concept/Mx4rwL2Ud5wpEbGdrcN5Y29ycA&quot; class=&quot;cyc_term&quot;&gt;RequestForComments_Internet&lt;/a&gt;).</rdfs:comment>
    <rdfs:label xml:lang="en">network protocol</rdfs:label>
  </owl:Class>

  <owl:Class rdf:about="Mx4rQaAoRHyFEdaAAACQJ5T1Bg">
    <rdfs:subClassOf rdf:resource="Mx4rvVjDLZwpEbGdrcN5Y29ycA"/>
    <rdfs:comment xml:lang="en">The collection of specifications that deal not with how an entire program should behave, but with how a part of a program ought to behave.</rdfs:comment>
    <cycAnnot:label xml:lang="en">ProgramStepSpecification</cycAnnot:label>
    <rdfs:label xml:lang="en">program step specification</rdfs:label>
  </owl:Class>

  <owl:Class rdf:about="Mx8Ngh4rZ8HBth8YEdqAAAACs71DGR4redGqOB8YEdqAAAACs71DGQ">
    <rdfs:subClassOf rdf:resource="Mx4rvVjDLZwpEbGdrcN5Y29ycA"/>
    <rdfs:label xml:lang="en">Specification Type From Parameter Type Fn NL parsing parameter</rdfs:label>
    <cycAnnot:label xml:lang="en">(SpecificationTypeFromParameterTypeFn NLParsingParameter)</cycAnnot:label>
  </owl:Class>

  <owl:Class rdf:about="Mx4rRLf3MAmAQdiZI9Tr-RY16w">
    <rdfs:subClassOf rdf:resource="Mx4rvVjDLZwpEbGdrcN5Y29ycA"/>
    <rdfs:label xml:lang="en">reformulation specification</rdfs:label>
    <cycAnnot:label xml:lang="en">ReformulationSpecification</cycAnnot:label>
    <rdfs:comment xml:lang="en">&lt;a href=&quot;http://sw.opencyc.org/2008/06/10/concept/Mx4rRLf3MAmAQdiZI9Tr-RY16w&quot; class=&quot;cyc_term&quot;&gt;ReformulationSpecification&lt;/a&gt; is the collection of &lt;a href=&quot;http://sw.opencyc.org/2008/06/10/concept/Mx4rvVjDLZwpEbGdrcN5Y29ycA&quot; class=&quot;cyc_term&quot;&gt;ProgramSpecification&lt;/a&gt;s for the &lt;a href=&quot;http://sw.opencyc.org/2008/06/10/concept/Mx4rv5UqfZwpEbGdrcN5Y29ycA&quot; class=&quot;cyc_term&quot;&gt;CycLReformulator&lt;/a&gt;. Instance of this collection (known as &apos;reformulator calls&apos;) - will be linked to &lt;a href=&quot;http://sw.opencyc.org/2008/06/10/concept/Mx4rSAGW0AmAQdiC5OBZX-GRVQ&quot; class=&quot;cyc_term&quot;&gt;ReformulationParameter&lt;/a&gt;s that govern how the reformulator modifies CycL formulae. Reformulator calls are specified via &lt;a href=&quot;http://sw.opencyc.org/2008/06/10/concept/Mx4rijhYLnyFEdaAAACQJ5T1Bg&quot; class=&quot;cyc_term&quot;&gt;softwareParameterValueInSpecification&lt;/a&gt;.</rdfs:comment>
  </owl:Class>

  <Mx4rvVjDLZwpEbGdrcN5Y29ycA rdf:about="Mx4rd28MTJcqEdqAAAACs4vPlg">
    <cycAnnot:label xml:lang="en">DocumentDisambiguatorGlobalSpecification</cycAnnot:label>
    <rdfs:label xml:lang="en">Document Disambiguator Global Specification</rdfs:label>
  </Mx4rvVjDLZwpEbGdrcN5Y29ycA>

  <Mx4rvVjDLZwpEbGdrcN5Y29ycA rdf:about="Mx4rjCfqo4RzEdaZvAACs0uXdw">
    <rdfs:label xml:lang="en">POSIX</rdfs:label>
    <cycAnnot:label xml:lang="en">POSIX</cycAnnot:label>
    <rdfs:comment xml:lang="en">A specialization of &lt;a href=&quot;http://sw.opencyc.org/2008/06/10/concept/Mx4rvViHlJwpEbGdrcN5Y29ycA&quot; class=&quot;cyc_term&quot;&gt;Unix&lt;/a&gt;. &amp;quot;POSIX&amp;quot; stands for &amp;quot;Portable Operating System Interface&amp;quot;, and is an IEEE standard designed to facilitate application portability. POSIX is an attempt by a consortium of vendors to create a single standard version of UNIX. If they are successful, it will make it easier to port applications between hardware platforms. For more information, see &lt;a href= &quot;http://www.pasc.org&quot;&gt;http://www.pasc.org&lt;/a&gt;.</rdfs:comment>
  </Mx4rvVjDLZwpEbGdrcN5Y29ycA>

  <Mx4rvVjDLZwpEbGdrcN5Y29ycA rdf:about="Mx4rvViHlJwpEbGdrcN5Y29ycA">
    <rdfs:label xml:lang="en">UNIX</rdfs:label>
    <cycAnnot:label xml:lang="en">Unix</cycAnnot:label>
    <rdfs:comment xml:lang="en">An instance of &lt;a href=&quot;http://sw.opencyc.org/2008/06/10/concept/Mx4rvVjDLZwpEbGdrcN5Y29ycA&quot; class=&quot;cyc_term&quot;&gt;ProgramSpecification&lt;/a&gt;. &lt;a href=&quot;http://sw.opencyc.org/2008/06/10/concept/Mx4rvViHlJwpEbGdrcN5Y29ycA&quot; class=&quot;cyc_term&quot;&gt;Unix&lt;/a&gt; is an &lt;a href=&quot;http://sw.opencyc.org/2008/06/10/concept/Mx4rvViws5wpEbGdrcN5Y29ycA&quot; class=&quot;cyc_term&quot;&gt;OperatingSystem&lt;/a&gt; specification.  Usually Unix operating systems are written in &lt;a href=&quot;http://sw.opencyc.org/2008/06/10/concept/Mx4rvViLJ5wpEbGdrcN5Y29ycA&quot; class=&quot;cyc_term&quot;&gt;C_ProgrammingLanguage&lt;/a&gt;.  &lt;a href=&quot;http://sw.opencyc.org/2008/06/10/concept/Mx4rv8H-YJwpEbGdrcN5Y29ycA&quot; class=&quot;cyc_term&quot;&gt;Linux&lt;/a&gt; is a common implementation of &lt;a href=&quot;http://sw.opencyc.org/2008/06/10/concept/Mx4rvViHlJwpEbGdrcN5Y29ycA&quot; class=&quot;cyc_term&quot;&gt;Unix&lt;/a&gt;. For the collection of all Unix operating systems, see &lt;a href=&quot;http://sw.opencyc.org/2008/06/10/concept/Mx4rvwJcVZwpEbGdrcN5Y29ycA&quot; class=&quot;cyc_term&quot;&gt;UnixOS&lt;/a&gt;.</rdfs:comment>
  </Mx4rvVjDLZwpEbGdrcN5Y29ycA>

  <owl:Class rdf:about="Mx4rvVirnZwpEbGdrcN5Y29ycA">
    <cycAnnot:label xml:lang="en">ObjectType</cycAnnot:label>
    <rdfs:comment xml:lang="en">The collection of all collections that are &amp;quot;object-like&amp;quot; in at least one respect. A collection &lt;code&gt;&lt;b&gt;COL&lt;/b&gt;&lt;/code&gt; is object-like just in case there is some sense of &apos;part&apos; according to which any (or nearly any) given proper part of an instance of &lt;code&gt;&lt;b&gt;COL&lt;/b&gt;&lt;/code&gt; is &lt;i&gt;not&lt;/i&gt; itself an instance of &lt;code&gt;&lt;b&gt;COL&lt;/b&gt;&lt;/code&gt;; when this happens &lt;code&gt;&lt;b&gt;COL&lt;/b&gt;&lt;/code&gt; is said to be object-like with respect to that sense of &apos;part&apos;.
&lt;p/&gt;
More precisely, for a collection &lt;code&gt;&lt;b&gt;COL&lt;/b&gt;&lt;/code&gt; to be an instance of &lt;a href=&quot;http://sw.opencyc.org/2008/06/10/concept/Mx4rvVirnZwpEbGdrcN5Y29ycA&quot; class=&quot;cyc_term&quot;&gt;ObjectType&lt;/a&gt; it is sufficient that there be some specialization &lt;code&gt;&lt;b&gt;PARTPRED&lt;/b&gt;&lt;/code&gt; of &lt;a href=&quot;http://sw.opencyc.org/2008/06/10/concept/Mx4rwgfukKs8QdePzLB9nLNpTw&quot; class=&quot;cyc_term&quot;&gt;properParts&lt;/a&gt; such that, for any &lt;code&gt;&lt;b&gt;OBJ1&lt;/b&gt;&lt;/code&gt; and &lt;code&gt;&lt;b&gt;OBJ2&lt;/b&gt;&lt;/code&gt;, if &lt;code&gt;(&lt;a href=&quot;http://sw.opencyc.org/2008/06/10/concept/Mx4rvViBBJwpEbGdrcN5Y29ycA&quot; class=&quot;cyc_term&quot;&gt;isa&lt;/a&gt; &lt;b&gt;OBJ1&lt;/b&gt; &lt;b&gt;COL&lt;/b&gt;)&lt;/code&gt; and &lt;code&gt;(&lt;b&gt;PARTPRED&lt;/b&gt; &lt;b&gt;OBJ1&lt;/b&gt; &lt;b&gt;OBJ2&lt;/b&gt;)&lt;/code&gt; both hold, then &lt;code&gt;(&lt;a href=&quot;http://sw.opencyc.org/2008/06/10/concept/Mx4rvViBBJwpEbGdrcN5Y29ycA&quot; class=&quot;cyc_term&quot;&gt;isa&lt;/a&gt; &lt;b&gt;OBJ2&lt;/b&gt; &lt;b&gt;COL&lt;/b&gt;)&lt;/code&gt; does &lt;i&gt;not&lt;/i&gt; hold.  (Also sufficient for &lt;code&gt;&lt;b&gt;COL&lt;/b&gt;&lt;/code&gt;&apos;s being an object-type is that there be some specialization &lt;code&gt;&lt;b&gt;INVPARTPRED&lt;/b&gt;&lt;/code&gt; of the &lt;i&gt;inverse&lt;/i&gt; of &lt;a href=&quot;http://sw.opencyc.org/2008/06/10/concept/Mx4rwgfukKs8QdePzLB9nLNpTw&quot; class=&quot;cyc_term&quot;&gt;properParts&lt;/a&gt; (see &lt;a href=&quot;http://sw.opencyc.org/2008/06/10/concept/Mx4rvWHsNJwpEbGdrcN5Y29ycA&quot; class=&quot;cyc_term&quot;&gt;genlInverse&lt;/a&gt;) such that &lt;code&gt;(&lt;b&gt;INVPARTPRED&lt;/b&gt; &lt;b&gt;OBJ2&lt;/b&gt; &lt;b&gt;OBJ1&lt;/b&gt;)&lt;/code&gt;, with everything else remaining the same as above.)  Note that neither of the above sufficient conditions for &lt;code&gt;&lt;b&gt;COL&lt;/b&gt;&lt;/code&gt;&apos;s being an object-type is strictly necessary: some exceptions are allowed.  Thus as long as either one of the above conditionals holds in &lt;i&gt;nearly&lt;/i&gt; all cases, &lt;code&gt;&lt;b&gt;COL&lt;/b&gt;&lt;/code&gt; should be considered an instance of &lt;a href=&quot;http://sw.opencyc.org/2008/06/10/concept/Mx4rvVirnZwpEbGdrcN5Y29ycA&quot; class=&quot;cyc_term&quot;&gt;ObjectType&lt;/a&gt;.
&lt;p/&gt;
Here are two examples.  Consider &lt;a href=&quot;http://sw.opencyc.org/2008/06/10/concept/Mx4rvViVwZwpEbGdrcN5Y29ycA&quot; class=&quot;cyc_term&quot;&gt;Automobile&lt;/a&gt;.  Take an instance of that, say my car.  Now consider one of the proper &lt;a href=&quot;http://sw.opencyc.org/2008/06/10/concept/Mx4rvVj5FpwpEbGdrcN5Y29ycA&quot; class=&quot;cyc_term&quot;&gt;physicalParts&lt;/a&gt; of my car, say the steering wheel.  The steering wheel is &lt;i&gt;not&lt;/i&gt; an instance of &lt;a href=&quot;http://sw.opencyc.org/2008/06/10/concept/Mx4rvViVwZwpEbGdrcN5Y29ycA&quot; class=&quot;cyc_term&quot;&gt;Automobile&lt;/a&gt;.  And the same would be true for any proper physical part of any car.  So &lt;a href=&quot;http://sw.opencyc.org/2008/06/10/concept/Mx4rvViVwZwpEbGdrcN5Y29ycA&quot; class=&quot;cyc_term&quot;&gt;Automobile&lt;/a&gt; is an &lt;a href=&quot;http://sw.opencyc.org/2008/06/10/concept/Mx4rvVirnZwpEbGdrcN5Y29ycA&quot; class=&quot;cyc_term&quot;&gt;ObjectType&lt;/a&gt;.  Consider &lt;a href=&quot;http://sw.opencyc.org/2008/06/10/concept/Mx4rvVjyV5wpEbGdrcN5Y29ycA&quot; class=&quot;cyc_term&quot;&gt;CalendarYear&lt;/a&gt;. No proper &lt;a href=&quot;http://sw.opencyc.org/2008/06/10/concept/Mx4rvWn4OZwpEbGdrcN5Y29ycA&quot; class=&quot;cyc_term&quot;&gt;timeSlices&lt;/a&gt; of a year is itself a year.  So &lt;a href=&quot;http://sw.opencyc.org/2008/06/10/concept/Mx4rvVjyV5wpEbGdrcN5Y29ycA&quot; class=&quot;cyc_term&quot;&gt;CalendarYear&lt;/a&gt; is an &lt;a href=&quot;http://sw.opencyc.org/2008/06/10/concept/Mx4rvVirnZwpEbGdrcN5Y29ycA&quot; class=&quot;cyc_term&quot;&gt;ObjectType&lt;/a&gt;.  
&lt;p/&gt;
See &lt;a href=&quot;http://sw.opencyc.org/2008/06/10/concept/Mx4rvVir35wpEbGdrcN5Y29ycA&quot; class=&quot;cyc_term&quot;&gt;StuffType&lt;/a&gt; for the contrasting (though not disjoint) notion of being stuff-like.</rdfs:comment>
    <rdfs:label xml:lang="en">type of object</rdfs:label>
  </owl:Class>

  <owl:Thing rdf:about="http://dbpedia.org/resource/Program_specification">
    <rdfs:comment xml:lang="en">A specialization of &lt;a href=&quot;http://sw.opencyc.org/2008/06/10/concept/Mx4rvVib1JwpEbGdrcN5Y29ycA&quot; class=&quot;cyc_term&quot;&gt;Specification&lt;/a&gt;. Each instance of this collection is not a computer program itself (i.e. lines of code), but an abstract characterization of how a program should behave.  For instance, a sorting program can be specified by requiring that the program&apos;s output be a list of the same elements as the input such that no element follows an element that is greater than it. A notable example of a &lt;a href=&quot;http://sw.opencyc.org/2008/06/10/concept/Mx4rvVjDLZwpEbGdrcN5Y29ycA&quot; class=&quot;cyc_term&quot;&gt;ProgramSpecification&lt;/a&gt; is UNIX - which is not (contrary to popular belief) an operating system per se, but a specification to which many different operating systems (instances of &lt;a href=&quot;http://sw.opencyc.org/2008/06/10/concept/Mx4rvwJcVZwpEbGdrcN5Y29ycA&quot; class=&quot;cyc_term&quot;&gt;UnixOS&lt;/a&gt;) conform. Note that instances of &lt;a href=&quot;http://sw.opencyc.org/2008/06/10/concept/Mx4rvVjDLZwpEbGdrcN5Y29ycA&quot; class=&quot;cyc_term&quot;&gt;ProgramSpecification&lt;/a&gt; do not necessarily specify single, discrete programs -- thus many of the internet&apos;s &amp;quot;RFC&amp;quot; protocol-establishing documents (see &lt;a href=&quot;http://sw.opencyc.org/2008/06/10/concept/Mx4rwL2Ud5wpEbGdrcN5Y29ycA&quot; class=&quot;cyc_term&quot;&gt;RequestForComments_Internet&lt;/a&gt;) fall into this collection.</rdfs:comment>
    <cycAnnot:label xml:lang="en">ProgramSpecification</cycAnnot:label>
    <rdfs:label xml:lang="en">program specification</rdfs:label>
  </owl:Thing>

  <owl:Class rdf:about="&cyc;Mx4rvVjDLZwpEbGdrcN5Y29ycA">
    <rdfs:comment xml:lang="en">A specialization of &lt;a href=&quot;http://sw.opencyc.org/2008/06/10/concept/Mx4rvVib1JwpEbGdrcN5Y29ycA&quot; class=&quot;cyc_term&quot;&gt;Specification&lt;/a&gt;. Each instance of this collection is not a computer program itself (i.e. lines of code), but an abstract characterization of how a program should behave.  For instance, a sorting program can be specified by requiring that the program&apos;s output be a list of the same elements as the input such that no element follows an element that is greater than it. A notable example of a &lt;a href=&quot;http://sw.opencyc.org/2008/06/10/concept/Mx4rvVjDLZwpEbGdrcN5Y29ycA&quot; class=&quot;cyc_term&quot;&gt;ProgramSpecification&lt;/a&gt; is UNIX - which is not (contrary to popular belief) an operating system per se, but a specification to which many different operating systems (instances of &lt;a href=&quot;http://sw.opencyc.org/2008/06/10/concept/Mx4rvwJcVZwpEbGdrcN5Y29ycA&quot; class=&quot;cyc_term&quot;&gt;UnixOS&lt;/a&gt;) conform. Note that instances of &lt;a href=&quot;http://sw.opencyc.org/2008/06/10/concept/Mx4rvVjDLZwpEbGdrcN5Y29ycA&quot; class=&quot;cyc_term&quot;&gt;ProgramSpecification&lt;/a&gt; do not necessarily specify single, discrete programs -- thus many of the internet&apos;s &amp;quot;RFC&amp;quot; protocol-establishing documents (see &lt;a href=&quot;http://sw.opencyc.org/2008/06/10/concept/Mx4rwL2Ud5wpEbGdrcN5Y29ycA&quot; class=&quot;cyc_term&quot;&gt;RequestForComments_Internet&lt;/a&gt;) fall into this collection.</rdfs:comment>
    <cycAnnot:label xml:lang="en">ProgramSpecification</cycAnnot:label>
    <rdfs:label xml:lang="en">program specification</rdfs:label>
  </owl:Class>

  <owl:Class rdf:about="Mx4rvVib1JwpEbGdrcN5Y29ycA">
    <rdfs:label xml:lang="en">specification</rdfs:label>
    <rdfs:comment xml:lang="en">A specialization of &lt;a href=&quot;http://sw.opencyc.org/2008/06/10/concept/Mx4rv5L5vZwpEbGdrcN5Y29ycA&quot; class=&quot;cyc_term&quot;&gt;PropositionalConceptualWork&lt;/a&gt;. Each instance of &lt;a href=&quot;http://sw.opencyc.org/2008/06/10/concept/Mx4rvVib1JwpEbGdrcN5Y29ycA&quot; class=&quot;cyc_term&quot;&gt;Specification&lt;/a&gt; is an abstract work that constitutes a description of the properties of a &lt;a href=&quot;http://sw.opencyc.org/2008/06/10/concept/Mx4rvYjIS5wpEbGdrcN5Y29ycA&quot; class=&quot;cyc_term&quot;&gt;Situation&lt;/a&gt; or a &lt;a href=&quot;http://sw.opencyc.org/2008/06/10/concept/Mx4rvVi255wpEbGdrcN5Y29ycA&quot; class=&quot;cyc_term&quot;&gt;SomethingExisting&lt;/a&gt;, and sometimes even entire collections of such things.  Things are made, bought, and searched for according to specifications, which can be instantiated as printed instructions or as diagrams.  This collection is modally neutral with regard to the descriptive character of its instances. Thus, it includes descriptions of how things are, were, should be, must be, &lt;i&gt;etc&lt;/i&gt;.</rdfs:comment>
    <cycAnnot:label xml:lang="en">Specification</cycAnnot:label>
  </owl:Class>

  <owl:ObjectProperty rdf:about="Mx4rwLSVCpwpEbGdrcN5Y29ycA">
    <rdfs:label xml:lang="en">Pretty String</rdfs:label>
    <rdfs:comment xml:lang="en">(&lt;a href=&quot;http://sw.opencyc.org/2008/06/10/concept/Mx4rwLSVCpwpEbGdrcN5Y29ycA&quot; class=&quot;cyc_term&quot;&gt;prettyString&lt;/a&gt; TERM STRING) means that STRING is the English word or expression (sequence of words) commonly used to refer to TERM.  The predicate &lt;a href=&quot;http://sw.opencyc.org/2008/06/10/concept/Mx4rwLSVCpwpEbGdrcN5Y29ycA&quot; class=&quot;cyc_term&quot;&gt;prettyString&lt;/a&gt; is used by the code which generates CycL to English paraphrases, but its applicability is not restricted to this use.</rdfs:comment>
    <cycAnnot:label xml:lang="en">prettyString</cycAnnot:label>
  </owl:ObjectProperty>

  <owl:DataProperty rdf:about="wikipediaArticleURL">
  </owl:DataProperty>

  <owl:Class rdf:about="&ocyc;Mx4rvVjDLZwpEbGdrcN5Y29ycA">
    <rdfs:comment xml:lang="en">A specialization of &lt;a href=&quot;http://sw.opencyc.org/2008/06/10/concept/Mx4rvVib1JwpEbGdrcN5Y29ycA&quot; class=&quot;cyc_term&quot;&gt;Specification&lt;/a&gt;. Each instance of this collection is not a computer program itself (i.e. lines of code), but an abstract characterization of how a program should behave.  For instance, a sorting program can be specified by requiring that the program&apos;s output be a list of the same elements as the input such that no element follows an element that is greater than it. A notable example of a &lt;a href=&quot;http://sw.opencyc.org/2008/06/10/concept/Mx4rvVjDLZwpEbGdrcN5Y29ycA&quot; class=&quot;cyc_term&quot;&gt;ProgramSpecification&lt;/a&gt; is UNIX - which is not (contrary to popular belief) an operating system per se, but a specification to which many different operating systems (instances of &lt;a href=&quot;http://sw.opencyc.org/2008/06/10/concept/Mx4rvwJcVZwpEbGdrcN5Y29ycA&quot; class=&quot;cyc_term&quot;&gt;UnixOS&lt;/a&gt;) conform. Note that instances of &lt;a href=&quot;http://sw.opencyc.org/2008/06/10/concept/Mx4rvVjDLZwpEbGdrcN5Y29ycA&quot; class=&quot;cyc_term&quot;&gt;ProgramSpecification&lt;/a&gt; do not necessarily specify single, discrete programs -- thus many of the internet&apos;s &amp;quot;RFC&amp;quot; protocol-establishing documents (see &lt;a href=&quot;http://sw.opencyc.org/2008/06/10/concept/Mx4rwL2Ud5wpEbGdrcN5Y29ycA&quot; class=&quot;cyc_term&quot;&gt;RequestForComments_Internet&lt;/a&gt;) fall into this collection.</rdfs:comment>
    <cycAnnot:label xml:lang="en">ProgramSpecification</cycAnnot:label>
    <rdfs:label xml:lang="en">program specification</rdfs:label>
  </owl:Class>

</rdf:RDF>
