Please consider a donation to the Higher Intellect project. See https://preterhuman.net/donate.php or the Donate to Higher Intellect page for more info.

Changes

Jump to navigation Jump to search
88 bytes removed ,  21 September
no edit summary
Line 7: Line 7:  
<p>
 
<p>
 
This paper provides a description of the Meta Content Framework  (MCF), version 0.95.<br>
 
This paper provides a description of the Meta Content Framework  (MCF), version 0.95.<br>
Note :
+
Note :
 
if you are just looking for a specification of the file format, you can skip to  
 
if you are just looking for a specification of the file format, you can skip to  
 
here. If you are just interested in creating an mcf description
 
here. If you are just interested in creating an mcf description
 
of your site that visitors can fly through, you might want to start from
 
of your site that visitors can fly through, you might want to start from
https://web.archive.org/web/19970703020302/http://mcf.research.apple.com/hs/NXSpace.html.
+
https://web.archive.org/web/19970703020302/http://mcf.research.apple.com/hs/NXSpace.html.
    
<p>
 
<p>
 
<h3>Goals of the MCF </h3>
 
<h3>Goals of the MCF </h3>
   −
  The goal of MCF is to provide an adequate system for representing a  
+
The goal of MCF is to provide an adequate system for representing a  
 
wide range of information <b> about </b>content. The content targeted includes   
 
wide range of information <b> about </b>content. The content targeted includes   
 
web pages, gopher and ftp files, desktop files, email and structured  
 
web pages, gopher and ftp files, desktop files, email and structured  
Line 23: Line 23:  
<p>
 
<p>
   −
  The corresponding meta-content includes indices such as Yahoo!,  
+
The corresponding meta-content includes indices such as Yahoo!,  
  web  site descriptions (which includes maps of web sites together with
+
web  site descriptions (which includes maps of web sites together with
  other information about the pages on the web site),
+
other information about the pages on the web site),
 
gopher and ftp directory structures, email headers, data dictionaries, etc.  
 
gopher and ftp directory structures, email headers, data dictionaries, etc.  
 
The following diagram illustrates this.
 
The following diagram illustrates this.
Line 40: Line 40:  
<h3>Foundations of the MCF </h3>
 
<h3>Foundations of the MCF </h3>
 
    
 
    
  The MCF has its origins in knowledge representation system such as  
+
The MCF has its origins in knowledge representation system such as  
 
https://web.archive.org/web/19970703020302/http://www.cyc.com/tech.html#cycl", KRL and  
 
https://web.archive.org/web/19970703020302/http://www.cyc.com/tech.html#cycl", KRL and  
 
https://web.archive.org/web/19970703020302/http://logic.stanford.edu/kif/kif.html and advanced database models
 
https://web.archive.org/web/19970703020302/http://logic.stanford.edu/kif/kif.html and advanced database models
Line 68: Line 68:  
  <br><br><br><br>
 
  <br><br><br><br>
 
<h3>The Focus of MCF</h3>
 
<h3>The Focus of MCF</h3>
  Though we do need an interchange syntax, the syntax itself is distinct from MCF.  
+
Though we do need an interchange syntax, the syntax itself is distinct from MCF.  
 
The same MCF content may be transcribed using different standard syntaxes (such as
 
The same MCF content may be transcribed using different standard syntaxes (such as
 
SOIF, SiteMap, MARC, etc.) and MCF parsers  should be able to read all these  
 
SOIF, SiteMap, MARC, etc.) and MCF parsers  should be able to read all these  
Line 81: Line 81:  
We do however describe a preferred syntax --- the MCF File Format -- that is capable of  
 
We do however describe a preferred syntax --- the MCF File Format -- that is capable of  
 
exploiting the expressive power of MCF.
 
exploiting the expressive power of MCF.
The main reason for introducing yet another file format
+
The main reason for introducing yet another file format
is so that we have an interchange format that is not beholden to legacy applications
+
is so that we have an interchange format that is not beholden to legacy applications
that can track the changes in the expressiveness of MCF.
+
that can track the changes in the expressiveness of MCF.
    
    
 
    
What is important is the conceptual framework behind MCF and agreement on the meaning
+
What is important is the conceptual framework behind MCF and agreement on the meaning
of the actual terms used to describe the content.
+
of the actual terms used to describe the content.
 
  <p>
 
  <p>
 
   
 
   
The conceptual framework behind MCF --- the Meta Content Model --- is simple, yet powerful. There are a set of objects
+
The conceptual framework behind MCF --- the Meta Content Model --- is simple, yet powerful. There are a set of objects
with attributes and relations between them (technically speaking, this is a first order
+
with attributes and relations between them (technically speaking, this is a first order
model.) Some of these objects denote content objects such as web pages, desktop files, etc.
+
model.) Some of these objects denote content objects such as web pages, desktop files, etc.
Some others might denote content entities such as newsgroup threads. Yet others might  
+
Some others might denote content entities such as newsgroup threads. Yet others might  
denote physical objects such as people, companies, etc. Content is typically about people,  
+
denote physical objects such as people, companies, etc. Content is typically about people,  
companies, etc. and if there is no way of refering to these, one cannot possibly do a good
+
companies, etc. and if there is no way of refering to these, one cannot possibly do a good
job of representing information about the content.
+
job of representing information about the content.
<p>
+
<p>
Specifically, we have:
+
Specifically, we have:
<ul>
+
<ul>
 
  <li> A set of objects. E.g.,
 
  <li> A set of objects. E.g.,
 
  <ul>
 
  <ul>
Line 120: Line 120:  
  by a string (NB: wherever possible, as in the case of dates, MCF will try to use  
 
  by a string (NB: wherever possible, as in the case of dates, MCF will try to use  
 
  existing standards.)
 
  existing standards.)
  <li> Another subset of these
+
  <li> Another subset of these objects is called <b>Layers</b>. The layers are arranged in a total order.
  objects is called <b>Layers</b>. The layers are arranged in a total order.
   
  </ul>
 
  </ul>
 
  </ul>
 
  </ul>
 
   
 
   
An <it>assertion</it> (or tuple), which is the statement of a relation between a certain
+
An <it>assertion</it> (or tuple), which is the statement of a relation between a certain
set of objects or the statement has a certain property, is the basic unit.  
+
set of objects or the statement has a certain property, is the basic unit.  
An assertion is an n-tuple (typically a triple),  consisting of a slot and an ordered list of  
+
An assertion is an n-tuple (typically a triple),  consisting of a slot and an ordered list of  
  n-1 object references and a layer.  Each assertion
+
n-1 object references and a layer.  Each assertion
  also has a true/false value associated with it. Assertions are said to be true/false in the
+
also has a true/false value associated with it. Assertions are said to be true/false in the
  layer associated with them. An assertion that is true/false in a layer
+
layer associated with them. An assertion that is true/false in a layer
  is also true/false in all the superior layers, unless one of those  also contains the
+
is also true/false in all the superior layers, unless one of those  also contains the
  assertion with a different true/false value.
+
assertion with a different true/false value.
 
   <p>
 
   <p>
  Since the layers themselves are units, the relation between the layers themselves
+
Since the layers themselves are units, the relation between the layers themselves
  is expressed as assertions. These assertions are in the BaseLayer, a special layer
+
is expressed as assertions. These assertions are in the BaseLayer, a special layer
  that is at the bottom of the total order.
+
that is at the bottom of the total order.
 
  <p>
 
  <p>
A chunk of MCF (in whichever syntax) is typically a set of assertions. In the preferred
+
A chunk of MCF (in whichever syntax) is typically a set of assertions. In the preferred
syntax (the MCF File Format), the assertions are grouped together based on their
+
syntax (the MCF File Format), the assertions are grouped together based on their
first argument and all the assertions in a file are assumed to be in the same layer.
+
first argument and all the assertions in a file are assumed to be in the same layer.
<p>
+
<p>
It is important to note that predicates/relations themselves are objects. This allows  
+
It is important to note that predicates/relations themselves are objects. This allows  
us to extend the vocabulary within MCF itself. This is both a blessing and a curse.  
+
us to extend the vocabulary within MCF itself. This is both a blessing and a curse.  
It obviously makes it very easy to extend MCF for many different purposes.  
+
It obviously makes it very easy to extend MCF for many different purposes.  
Applications which dont' recognize the semantics of a new predicate can simply ignore it.  
+
Applications which dont' recognize the semantics of a new predicate can simply ignore it.  
The downside is of course that different authors of MCF can extend in potentially incompatible
+
The downside is of course that different authors of MCF can extend in potentially incompatible
ways. To alleviate this problem, we propose some  
+
ways. To alleviate this problem, we propose some  
https://web.archive.org/web/19970703020302/http://mcf.research.apple.com/hs/vocab.html basic terms that
+
https://web.archive.org/web/19970703020302/http://mcf.research.apple.com/hs/vocab.html basic terms that
can be used to describe web hierarchies such as Yahoo! </p>
+
can be used to describe web hierarchies such as Yahoo! </p>
 
   
 
   
In the next section, we describe the MCF File Format, a preferred format for
+
In the next section, we describe the MCF File Format, a preferred format for
representing MCF.  
+
representing MCF.  
 
   
 
   
 
   
 
   
Line 160: Line 159:  
<h3> The MCF File Format </h3>
 
<h3> The MCF File Format </h3>
 
   
 
   
MCF files contain descriptions of meta-content objects also  referred to as "units".  
+
MCF files contain descriptions of meta-content objects also  referred to as "units".  
A unit consists of the following.  
+
A unit consists of the following.  
 
<ul>
 
<ul>
 
   <li> a unit identifier.
 
   <li> a unit identifier.
Line 184: Line 183:  
</ul>
 
</ul>
   −
MCF is an interchange format and does not make any assumptions about how information  
+
MCF is an interchange format and does not make any assumptions about how information  
 
in this format is used by applications.
 
in this format is used by applications.
    
<h4>MCF Files and Units</h4>
 
<h4>MCF Files and Units</h4>
   −
Conceptually,  the Web is a large graph where the pages are the nodes
+
Conceptually,  the Web is a large graph where the pages are the nodes
and hyperlinks are arcs between these nodes. Similarly, MCF defines a graph
+
and hyperlinks are arcs between these nodes. Similarly, MCF defines a graph
where units are the nodes and relations between units are the arcs. Since
+
where units are the nodes and relations between units are the arcs. Since
we have many slots, we get a much richer space with labelled arcs.  
+
we have many slots, we get a much richer space with labelled arcs.  
The most general relations correspond to the notion of a directed arc
+
The most general relations correspond to the notion of a directed arc
and are represented by the predicate <b>parent</b> and its inverse <b>child</b>.
+
and are represented by the predicate <b>parent</b> and its inverse <b>child</b>.
 
   
 
   
 
  <p>
 
  <p>
Each mcf file defines  a sub-graph (typically a sub-hierarchy.)  
+
Each mcf file defines  a sub-graph (typically a sub-hierarchy.)  
The file itself corresponds to a  unit. The file may define one or more layers of  
+
The file itself corresponds to a  unit. The file may define one or more layers of  
the hierarchy under it.<p>
+
the hierarchy under it.<p>
    
If an object in a certain mcf file does not explicitly specify a parent, the parent  
 
If an object in a certain mcf file does not explicitly specify a parent, the parent  
Line 257: Line 256:  
file they are defined in, the identifier also needs to specify the location of
 
file they are defined in, the identifier also needs to specify the location of
 
the definition. In this case, you can use segmented identifiers   
 
the definition. In this case, you can use segmented identifiers   
(with segments separated by the character '#' : such as
+
(with segments separated by the character '#' : such as
 
"http://www.foo.com/another-taxonomy.mcf#baz") where the entire string
 
"http://www.foo.com/another-taxonomy.mcf#baz") where the entire string
 
is the identifier of an object that is defined in the file  
 
is the identifier of an object that is defined in the file  
Line 266: Line 265:  
<h4> Slots </h4>
 
<h4> Slots </h4>
   −
Slot names are restricted to non-white space characters.    A list of slot  
+
Slot names are restricted to non-white space characters.    A list of slot  
 
values is semantically equivalent to a set. So, the order of values and the  
 
values is semantically equivalent to a set. So, the order of values and the  
 
number of times a value occurs does not carry any significance. <p>
 
number of times a value occurs does not carry any significance. <p>
Line 288: Line 287:     
A longer term, better solution for object references is described   
 
A longer term, better solution for object references is described   
here.
+
here.
 
   
 
   
 
   
 
   
Line 302: Line 301:  
<h4> Headers </h4>
 
<h4> Headers </h4>
   −
Headers are similar to meta-content object descriptions in that they are a  
+
Headers are similar to meta-content object descriptions in that they are a  
 
sequence of slots and values.  Headers really provide meta-meta-content.  
 
sequence of slots and values.  Headers really provide meta-meta-content.  
   Line 324: Line 323:  
an end-headers: token is assumed.
 
an end-headers: token is assumed.
   −
Any characters appearing before a begin-headers: token or unit: token are ignored. <p><br>
+
Any characters appearing before a begin-headers: token or unit: token are ignored. <p><br>
    
   
 
   
Line 336: Line 335:  
is assumed to exist) though it would be highly desirable
 
is assumed to exist) though it would be highly desirable
 
to use the standard slots whereever possible. Please see  
 
to use the standard slots whereever possible. Please see  
https://web.archive.org/web/19970703020302/http://mcf.research.apple.com/hs/vocab.html here for a growing list
+
https://web.archive.org/web/19970703020302/http://mcf.research.apple.com/hs/vocab.html here for a growing list
 
of standard vocabulary. If you need a predicate of category not in this list, please
 
of standard vocabulary. If you need a predicate of category not in this list, please
 
write to us suggesting additions.
 
write to us suggesting additions.

Navigation menu