OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

topicmaps-comment message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [Elist Home]


Subject: [xtm-wg] XTM Processing Model - alternative proposal




  XTM PROCESSING MODEL
  Alternative strawman proposal


  1. Purpose and scope of the model
===================================

The purpose of this model is to provide a better foundation for
interoperability between different topic map processors by formally
specifying the requirements placed on such processors.

The first step in doing so is to formally and precisely articulate the
abstract model of topic maps that is implicit in the ISO 13250
standard and also the XTM 1.0 specification in a way that does not
constrain implementors more than strictly necessary.

Important operations like building topic maps from XTM 1.0 documents
and ISO 13250 documents and merging topic maps are then described in
terms of this underlying abstract model.

Throughout this document text in {} is comments to the reader, and not
part of the document proper.

This document is NOT complete; it is just a sketch intended to show
one possible approach to specifying the XTM processing model, believed
by the author to be preferrable to the current approach. In
particular, this document has NO OFFICIAL STANDING WHATSOEVER. It is,
as stated above, just a sketch.


  2. The abstract structure of topic maps
=========================================

The abstract model for topic maps here presented is inspired by the
XML Infoset, and uses a similar system of information items with named
and typed properties. This approach has been chosen in order to avoid
the problem inherent in any formalism: that the formalism must first
be learned.

Note that in the terminology used in this document, sets are
collections of unordered items that contain no duplicates.



  2.1. The topic map information item
-------------------------------------

A topic map information set has exactly one topic map information
item, which is the hub item of the information set, from which all
other parts can be reached. This item represents the entire topic
map. 

The topic map information item has the following properties:

 [base uri]: This is the base URI of the <topicMap> element of the
 topic map document that gave rise to the topic map information set,
 as determined by the rules of the XML Information Set. (This implies
 that it may be null.)

 If the topic map information set did not originate with a topic map
 document, a base URI may be assigned to it by implementation-specific
 means.


 [topics]: This is a set of topic information items.


 [associations]: This is a set of association information items.


  2.2 Topic information items
-----------------------------

A topic information item represents a single topic in a topic map, and
this topic should be the only one representing its subject. Topic map
processors are required to ensure that more than one topic with the
same subject, according to the rules given below, are never present in
the same topic map. 

{Add URI-based duplicate constraints.}

Topic information items have the following properties:

 [source uris]: This is a set of URIs, being the URIs of the <topic>
 elements of the topic map document that gave rise to the topic
 information item. This set of URIs may be empty; it may also contain
 URIs assigned to the topic information item by means not described by
 this specification.

 
 [base names]: This is a set of base name information items.

 
 [occurrences]: This is a set of occurrence information items.


 [roles]: This is a set of association role information items.


 [subject indicators]: This is a set of URIs referring to the subject
 indicators of the topic.


 [subject address]: This a URI referring to the resource that is the
 subject of this topic. The property may be null.



 2.3 Base name information items
--------------------------------

A base name information item represents a topic name with its scope
and tree of variant names.

[FIXME: Add the topic naming constraint.]

Base name information items have the following properties:

 [source uris]: This is a set of URIs, being the URIs of the
 <baseName> elements of the topic map document that gave rise to the
 base name information item. This set of URIs may be empty; it may
 also contain URIs assigned to the base name information item by means
 not described by this specification.

 
 [value]: This is the string that is the base name. It may be empty,
 but it may not be null.


 [scope]: This is the set of topic information items that constitute
 the scope of this base name.


 [variants]: This is a set of variant information items representing
 the variant names of this base name.


 2.4 Variant information items
------------------------------

A variant information item represents a variant of a base name as it
appears in the variant tree of that base name.

The properties of variant information items are:

 [source uris]: This is a set of URIs, being the URIs of the <variant>
 elements of the topic map document that gave rise to the variant
 information item. This set of URIs may be empty; it may also contain
 URIs assigned to the variant information item by means not described
 by this specification.

 
 [value]: This is the string that is the variant name. It can be
 empty. The value can also be null, provided that the [resource]
 property is not null. If it is not null the [resource] property must
 be null.


 [resource]: This is the URI of the resource which is this variant
 name. It can be null if the [value] property is not null, and it must
 be null if the [value] property is not null.


 [scope]: This is the set of topic information items that constitute
 the scope of this variant name.


 [variants]: This is a set of variant information items representing
 the variant names of this variant name.


 2.5 Occurrence information items
---------------------------------

An occurrence information item represents the occurrence relationship
between a topic and a resource that is an occurrence of information
about the subject of that topic.

The properties of occurrence information items are:

 [source uris]: This is a set of URIs, being the URIs of the
 <occurrence> elements of the topic map document that gave rise to the
 occurrence information item. This set of URIs may be empty; it may
 also contain URIs assigned to the occurrence information item by
 means not described by this specification.

 
 [value]: This is the string that is the occurrence resource. It can
 be empty. The value can also be null, provided that the [resource]
 property is not null. If it is not null the [resource] property must
 be null.


 [resource]: This is the URI of the resource which is the occurrence
 of information about the topic's subject. It can be null if the
 [value] property is not null, and it must be null if the [value]
 property is not null.


 [scope]: This is the set of topic information items that constitute
 the scope of this occurrence.


---
{This should make it clear what style of exposition is wanted.}


  3. Building the structure from XTM documents
==============================================

This section describes how to build a topic map information set from
an XTM document. If the procedure here described is followed, the
result will always be a consistent topic map information set. The
description is given in terms of what impact each XML element in the
XTM document has on its context.

The initial context is nothing.


  3.1 The <topicMap> element
----------------------------

For each <topicMap> element in the XTM document a new, separate, topic
map information set is created. This information set is added to the
context and remains there as long as the children of the <topicMap>
element are processed.

The [base URI] property of the <topicMap> XML information set item is
set as the [base URI] value of the created topic map information item.

The values of the [topics] and [associations] properties are initially
empty. 


  3.2 The <topic> element
-------------------------

For each <topic> element in the XTM document a new topic information
item is created and added to the context as the current topic
information item.

The URI of the <topic> element is added to the set of [source uris] on
the topic information item.

The children of the <topic> element are then processed, with the topic
information item in the context. Once all the children of the element
have been processed the topic information item is merged into the
topic map information set currently in the context according to the
rules of section 5.X.


  3.3 The <baseName> element
----------------------------

For each <baseName> element in the XTM document a new base name
information item is created and added to the context as the current
base name information item.

The URI of the <baseName> element is added to the set of [source uris]
on the base name information item.

{Describe processing of children.}

---
{Again, this should probably be enough to discern the full flavour of
what would have followed if this were complete.}


  4. Building the structure from ISO 13250 documents
====================================================

{This should probably be done the same way as the XTM bit, but much
shorter, since ISO 13250 is much simpler. HOWEVER, the HyTime bits may
make this difficult.}


  5. Merging topic maps
=======================

{This must describe, exhaustively and precisely, the rules for merging
two topic map information sets.}

  5.X. Merging a topic into a topic map
---------------------------------------

{Must describe how, given a certain context, one topic is merged into
a topic map.}


  6. Conformance
================

An XTM processor is conformant with this specification provided that
it:

 1. Make available to applications all the information described in
    section 2. More information may well be provided, but nothing may
    be left out.

 2. Can build structures representing topic map information sets from
    XTM documents in a way that produces identical result to those
    described in section 3.

 3. If it can build structures from ISO 13250 topic map documents, it
    must do so according to the rules in section 4.

 4. If it can merge topic map structures it must do so according to
    the rules of section 5.

--Lars M.


------------------------ Yahoo! Groups Sponsor ---------------------~-~>
We give away $70,000 a month! Come to iWin.com for
your chance to win!
http://us.click.yahoo.com/olMXHC/BJVCAA/4ihDAA/2n6YlB/TM
---------------------------------------------------------------------_->

To Post a message, send it to:   xtm-wg@eGroups.com

To Unsubscribe, send a blank message to: xtm-wg-unsubscribe@eGroups.com 

Your use of Yahoo! Groups is subject to http://docs.yahoo.com/info/terms/ 




[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [Elist Home]


Powered by eList eXpress LLC