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: [topicmaps-comment] Topic Map Challenge


Dear Friends,

Happy New Year to all!  I thought it might be interesting - in the interest
of "eating one's own dogfood" - to propose a small challenge to anyone who
has a Topic Map engine.  Here it is:

=============================================
    Turn (a part of) your user guide into a topic map.
    If your system provides authoring capabilities, use
    them to create the map.
=============================================

It will be interesting to compare the different approaches to the topic map
design.  It will be even more interesting to see how conveniently these
topic maps can be used by a would-be user of your system.  Finally, it will
provide a small measure of interoperability experience.

Who will participate?  I have made a start myself, for the javascript/web
browser application I have mentioned before, and include it in-line below
(I'm not sure of the policy towards attachments on the list) - it's very
incomplete!.

I don't have a web site I can put any submissions on, I'm sorry to say.
Would anyone like to volunteer to do this?

Best wishes,

Tom P

===========================================================

<?xml version="1.0" encoding="iso-8859-1"?>
<topicMap xmlns="http://www.topicmaps.org/xtm/1.0/"
 xmlns:xlink="http://www.w3.org/1999/xlink">
<topic id="tt-urtype">
<baseName>
<scope>
<topicRef xlink:href="#st-unconstrained"/>

</scope>
<baseNameString>
Ur-Type
</baseNameString>

</baseName>

</topic>

<topic id="tt-topicmap">
<instanceOf>
<topicRef xlink:href="#tt-urtype"/>

</instanceOf>
<baseName>
<scope>
<topicRef xlink:href="#st-unconstrained"/>

</scope>
<baseNameString>
Topic Map Type
</baseNameString>

</baseName>

</topic>

<topic id="tt-assoc">
<instanceOf>
<topicRef xlink:href="#tt-urtype"/>

</instanceOf>
<baseName>
<scope>
<topicRef xlink:href="#st-unconstrained"/>

</scope>
<baseNameString>
Association Type
</baseNameString>

</baseName>

</topic>

<topic id="tt-role">
<instanceOf>
<topicRef xlink:href="#tt-urtype"/>

</instanceOf>
<baseName>
<scope>
<topicRef xlink:href="#st-unconstrained"/>

</scope>
<baseNameString>
Role Type
</baseNameString>

</baseName>

</topic>

<topic id="tt-occur">
<instanceOf>
<topicRef xlink:href="#tt-urtype"/>

</instanceOf>
<baseName>
<scope>
<topicRef xlink:href="#st-unconstrained"/>

</scope>
<baseNameString>
Occurrence Type
</baseNameString>

</baseName>

</topic>

<topic id="tt-scope">
<instanceOf>
<topicRef xlink:href="#tt-urtype"/>

</instanceOf>
<baseName>
<scope>
<topicRef xlink:href="#st-unconstrained"/>

</scope>
<baseNameString>
Scope Type
</baseNameString>

</baseName>

</topic>

<topic id="st-unconstrained">
<instanceOf>
<topicRef xlink:href="#tt-scope"/>

</instanceOf>
<baseName>
<scope>
<topicRef xlink:href="#st-unconstrained"/>

</scope>
<baseNameString>
All-scopes
</baseNameString>

</baseName>

</topic>

<topic id="ot-descr">
<instanceOf>
<topicRef xlink:href="#tt-occur"/>

</instanceOf>
<baseName>
<scope>
<topicRef xlink:href="#st-unconstrained"/>

</scope>
<baseNameString>
Description
</baseNameString>

</baseName>

</topic>

<topic id="ot-note">
<instanceOf>
<topicRef xlink:href="#tt-occur"/>

</instanceOf>
<baseName>
<scope>
<topicRef xlink:href="#st-unconstrained"/>

</scope>
<baseNameString>
Note
</baseNameString>

</baseName>

</topic>

<topic id="ot-homepage">
<instanceOf>
<topicRef xlink:href="#tt-occur"/>

</instanceOf>
<baseName>
<scope>
<topicRef xlink:href="#st-unconstrained"/>

</scope>
<baseNameString>
Home page
</baseNameString>

</baseName>

</topic>

<topic id="ot-about">
<instanceOf>
<topicRef xlink:href="#tt-occur"/>

</instanceOf>
<baseName>
<scope>
<topicRef xlink:href="#st-unconstrained"/>

</scope>
<baseNameString>
About
</baseNameString>

</baseName>

</topic>

<topic id="at-chapter">
<instanceOf>
<topicRef xlink:href="#tt-assoc"/>

</instanceOf>
<baseName>
<scope>
<topicRef xlink:href="#st-unconstrained"/>

</scope>
<baseNameString>
Chapter Association
</baseNameString>

</baseName>

</topic>

<topic id="tt-section">
<instanceOf>
<topicRef xlink:href="#tt-urtype"/>

</instanceOf>
<baseName>
<scope>
<topicRef xlink:href="#st-unconstrained"/>

</scope>
<baseNameString>
Section Type
</baseNameString>

</baseName>

</topic>

<topic id="rt-chapter">
<instanceOf>
<topicRef xlink:href="#tt-role"/>

</instanceOf>
<baseName>
<scope>
<topicRef xlink:href="#st-unconstrained"/>

</scope>
<baseNameString>
Chapter
</baseNameString>

</baseName>

</topic>

<topic id="rt-section">
<instanceOf>
<topicRef xlink:href="#tt-role"/>

</instanceOf>
<baseName>
<scope>
<topicRef xlink:href="#st-unconstrained"/>

</scope>
<baseNameString>
Section
</baseNameString>

</baseName>

</topic>

<topic id="ot-title">
<instanceOf>
<topicRef xlink:href="#tt-occur"/>

</instanceOf>
<baseName>
<scope>
<topicRef xlink:href="#st-unconstrained"/>

</scope>
<baseNameString>
Title
</baseNameString>

</baseName>

</topic>

<topic id="ot-num">
<instanceOf>
<topicRef xlink:href="#tt-occur"/>

</instanceOf>
<baseName>
<scope>
<topicRef xlink:href="#st-unconstrained"/>

</scope>
<baseNameString>
Number
</baseNameString>

</baseName>

</topic>

<topic id="st-chapter">
<instanceOf>
<topicRef xlink:href="#tt-scope"/>

</instanceOf>
<baseName>
<scope>
<topicRef xlink:href="#st-unconstrained"/>

</scope>
<baseNameString>
Chapter
</baseNameString>

</baseName>

</topic>

<topic id="st-limitation">
<instanceOf>
<topicRef xlink:href="#tt-scope"/>

</instanceOf>
<baseName>
<scope>
<topicRef xlink:href="#st-unconstrained"/>

</scope>
<baseNameString>
Limitation
</baseNameString>

</baseName>

</topic>

<topic id="st-bug">
<instanceOf>
<topicRef xlink:href="#tt-scope"/>

</instanceOf>
<baseName>
<scope>
<topicRef xlink:href="#st-unconstrained"/>

</scope>
<baseNameString>
Bug
</baseNameString>

</baseName>

</topic>

<topic id="st-feature">
<instanceOf>
<topicRef xlink:href="#tt-scope"/>

</instanceOf>
<baseName>
<scope>
<topicRef xlink:href="#st-unconstrained"/>

</scope>
<baseNameString>
Feature
</baseNameString>

</baseName>

</topic>

<topic id="t-intro-1">
<instanceOf>
<topicRef xlink:href="#tt-section"/>

</instanceOf>
<baseName>
<scope>
<topicRef xlink:href="#st-unconstrained"/>
<topicRef xlink:href="#st-chapter"/>

</scope>
<baseNameString>
Introduction 1 - the Topic Map Browser
</baseNameString>

</baseName>
<occurrence>
<instanceOf>
<topicRef xlink:href="#ot-num"/>

</instanceOf>
<scope>
<topicRef xlink:href="#st-chapter"/>

</scope>
<resourceData>
<![CDATA[1]]>
</resourceData>

</occurrence>
<occurrence>
<instanceOf>
<topicRef xlink:href="#ot-title"/>

</instanceOf>
<scope>
<topicRef xlink:href="#st-chapter"/>

</scope>
<resourceData>
<![CDATA[The Topic Map Browser]]>
</resourceData>

</occurrence>
<occurrence>
<instanceOf>
<topicRef xlink:href="#ot-content"/>

</instanceOf>
<scope>
<topicRef xlink:href="#st-chapter"/>

</scope>
<resourceData>
<![CDATA[The Topic Map Browser lets you create and browse small to medium
size topic maps (a few dozen to a few hundred topics and associations).  The
Browser can export its maps to the standard XTM format, and, using a
two-step process, and also import XTM or ISO-XML format maps.

The Topic Map Browser works in a standard web browser.  Currently Internet
Explorer 5.5 (and  up) and Mozilla/Netscape 6+ support all the features.
Mozilla  brings a cross-platform capability plus much faster operation than
Internet Explorer.]]>
</resourceData>

</occurrence>

</topic>

<topic id="ot-content">
<instanceOf>
<topicRef xlink:href="#tt-occur"/>

</instanceOf>
<baseName>
<scope>
<topicRef xlink:href="#st-unconstrained"/>

</scope>
<baseNameString>
Content
</baseNameString>

</baseName>

</topic>

<topic id="st-quirk">
<instanceOf>
<topicRef xlink:href="#tt-scope"/>

</instanceOf>
<baseName>
<scope>
<topicRef xlink:href="#st-unconstrained"/>

</scope>
<baseNameString>
Quirk
</baseNameString>

</baseName>

</topic>

<topic id="t-intro-2">
<instanceOf>
<topicRef xlink:href="#tt-section"/>

</instanceOf>
<baseName>
<scope>
<topicRef xlink:href="#st-unconstrained"/>
<topicRef xlink:href="#st-chapter"/>

</scope>
<baseNameString>
Introduction 2 - Features
</baseNameString>

</baseName>
<occurrence>
<instanceOf>
<topicRef xlink:href="#ot-num"/>

</instanceOf>
<scope>
<topicRef xlink:href="#st-chapter"/>

</scope>
<resourceData>
<![CDATA[2]]>
</resourceData>

</occurrence>
<occurrence>
<instanceOf>
<topicRef xlink:href="#ot-title"/>

</instanceOf>
<scope>
<topicRef xlink:href="#st-chapter"/>

</scope>
<resourceData>
<![CDATA[Features]]>
</resourceData>

</occurrence>
<occurrence>
<instanceOf>
<topicRef xlink:href="#ot-content"/>

</instanceOf>
<scope>
<topicRef xlink:href="#st-chapter"/>

</scope>
<resourceData>
<![CDATA[The Topic Map Browser is a general-purpose application, intended to
help you create topic maps and to experiment with Topic Map features like
scopes.

Here are the main features of the Browser:

1) Export/import topic maps, including XTM format.
2) Display sorted list of topics (by name).
3) Filter the displayed list of topics by one or more scopes.
4) Display occurrences of selected topics.
5) Display list of associations,
6) Filter the displayed list of associations.
7) Display topics that play a role in a selected association.
8) Define new topics, associations, occurrences, role types, and scoping
topics.
9) Create new topics, associations, and occurrences.
10) Change topic names and types.
11) Delete Topics.
12) Assign scopes to topics, associations, and occurrences.
13) Change the content of occurrences.
14) Create an HTML report of all topics and their occurrences, possibly
filtered by scope.
15) Create an HTML report of topics and their related associations, possibly
filtered by scope.
16) For any topic, show all related associations and their respective
related topics (the topics from the various associations stay separated) in
a compact, readable display.  In this display, the occurrrences of any of
the related topics can also be displayed.]]>
</resourceData>

</occurrence>

</topic>

<topic id="t-intro-3">
<instanceOf>
<topicRef xlink:href="#tt-section"/>

</instanceOf>
<baseName>
<scope>
<topicRef xlink:href="#st-unconstrained"/>
<topicRef xlink:href="#st-chapter"/>

</scope>
<baseNameString>
Introduction 3 - Limitations
</baseNameString>

</baseName>
<occurrence>
<instanceOf>
<topicRef xlink:href="#ot-num"/>

</instanceOf>
<scope>
<topicRef xlink:href="#st-chapter"/>

</scope>
<resourceData>
<![CDATA[3]]>
</resourceData>

</occurrence>
<occurrence>
<instanceOf>
<topicRef xlink:href="#ot-title"/>

</instanceOf>
<scope>
<topicRef xlink:href="#st-chapter"/>

</scope>
<resourceData>
<![CDATA[Limitations]]>
</resourceData>

</occurrence>
<occurrence>
<instanceOf>
<topicRef xlink:href="#ot-content"/>

</instanceOf>
<scope>
<topicRef xlink:href="#st-chapter"/>

</scope>
<resourceData>
<![CDATA[Limitations of the Browser.  Many of these are limitations of the
user interface rather than of the underlying topic map engine.

1) Relatively slow because it is written in Javascript and runs in a web
browser.  This is the main reason that it is not good for large maps.
However, the engine could be ported to, say, Python with little trouble and
should then have much better performance.  However, you then have to create
a user interface whereas the web browser provides a universally available
UI.

2) Only a single basename - the first one if a topic has more than one- is
displayed.  This is to keep the UI simple.

3) Variant names are not supported.

4) Subject indicators are not yet supported.   Neither are PSIs.

5) The engine does not understand class-subclass relationships yet (they can
be assigned using associations but would mean nothing to the engine).
Because of this, a convention is used that assigns a "scope type" to a
scoping topic, a "role type" to a role topic, etc.,  in lieu of an actual
class-subclass relationship, to inform the UI about which topics are
intended to be used as scopes, etc.  This limitation will be lifted at some
point.

6) In some cases a generated id is assigned to a topic or association (if it
does not have one of its own).  This is necesssary to have something unique
to display and to use in indexes.  This generated id will be included in the
exported XTM.

7) There is no query language available.

8) Import and export are done by pasting or copying text in an textarea
element.  This gets around the inability of a standard web browser to
read/write local files without having to use java or activeX controls.

9) Only one instanceOf is supported for topics.  This is a limitation of the
engine design, not just the UI.  This limitation could be removed, but there
are no plans to do so at present.

10) Pasting text into a textarea HTML element can be slow for large text
sizes.  For example, the engine will handle the well-known Operas topic map,
which has something like 700 topics, but the browser may die trying to
ingest this much text (i.e., the javascript version of the topic map).

If you want to load such a  larger map, you should do in by importing the
javascript source (see chapters 1 and 3) in the frameset file, rather than
by pasting it into th textarea element.

11) The Role-player select box in the "Associations" window is not sorted
alphabetically.]]>
</resourceData>

</occurrence>

</topic>

<topic id="t-chapt-1-intro">
<instanceOf>
<topicRef xlink:href="#tt-section"/>

</instanceOf>
<baseName>
<scope>
<topicRef xlink:href="#st-unconstrained"/>
<topicRef xlink:href="#st-chapter"/>

</scope>
<baseNameString>
Chapter 1 Intro
</baseNameString>

</baseName>

</topic>

<topic id="t-chap-1-loadmao">
<instanceOf>
<topicRef xlink:href="#tt-section"/>

</instanceOf>
<baseName>
<scope>
<topicRef xlink:href="#st-unconstrained"/>
<topicRef xlink:href="#st-chapter"/>
<topicRef xlink:href="#st-load-map"/>

</scope>
<baseNameString>
Chapter 1 - Load A Map
</baseNameString>

</baseName>

</topic>

<topic id="t-chap1-topic-centric">
<instanceOf>
<topicRef xlink:href="#tt-section"/>

</instanceOf>
<baseName>
<scope>
<topicRef xlink:href="#st-unconstrained"/>
<topicRef xlink:href="#st-chapter"/>
<topicRef xlink:href="#st-assoc"/>

</scope>
<baseNameString>
Chapter 1 - Browser Association Centric
</baseNameString>

</baseName>

</topic>

<topic id="st-load-map">
<instanceOf>
<topicRef xlink:href="#tt-scope"/>

</instanceOf>
<baseName>
<scope>
<topicRef xlink:href="#st-unconstrained"/>

</scope>
<baseNameString>
Load Map
</baseNameString>

</baseName>

</topic>

<topic id="st-browse-map">
<instanceOf>
<topicRef xlink:href="#tt-scope"/>

</instanceOf>
<baseName>
<scope>
<topicRef xlink:href="#st-unconstrained"/>

</scope>
<baseNameString>
Browse Map
</baseNameString>

</baseName>

</topic>

<topic id="t-chap1-apply-scope">
<instanceOf>
<topicRef xlink:href="#tt-section"/>

</instanceOf>
<baseName>
<scope>
<topicRef xlink:href="#st-unconstrained"/>
<topicRef xlink:href="#st-chapter"/>
<topicRef xlink:href="#st-filter-by-scope"/>

</scope>
<baseNameString>
Chapter 1 - Apply A Scope
</baseNameString>

</baseName>

</topic>

<topic id="st-filter-by-scope">
<instanceOf>
<topicRef xlink:href="#tt-scope"/>

</instanceOf>
<baseName>
<scope>
<topicRef xlink:href="#st-unconstrained"/>

</scope>
<baseNameString>
Filter By Scope
</baseNameString>

</baseName>

</topic>

<topic id="t-intro-4">
<instanceOf>
<topicRef xlink:href="#tt-section"/>

</instanceOf>
<baseName>
<scope>
<topicRef xlink:href="#st-unconstrained"/>
<topicRef xlink:href="#st-chapter"/>
<topicRef xlink:href="#st-bug"/>

</scope>
<baseNameString>
Introduction 4 - Bugs
</baseNameString>

</baseName>
<occurrence>
<instanceOf>
<topicRef xlink:href="#ot-title"/>

</instanceOf>
<scope>
<topicRef xlink:href="#st-bug"/>

</scope>
<resourceData>
<![CDATA[Bugs]]>
</resourceData>

</occurrence>
<occurrence>
<instanceOf>
<topicRef xlink:href="#ot-num"/>

</instanceOf>
<scope>
<topicRef xlink:href="#st-chapter"/>

</scope>
<resourceData>
<![CDATA[4]]>
</resourceData>

</occurrence>
<occurrence>
<instanceOf>
<topicRef xlink:href="#ot-content"/>

</instanceOf>
<scope>
<topicRef xlink:href="#st-bug"/>

</scope>
<resourceData>
<![CDATA[Known Bugs -

1) For XTM export, all text content of occurrences is wrapped in CDATA
sections.  Mozilla (as of version 0.9.7) has a bug whereby the leading <!-
of the CDATA  and the trailing > are omitted.  They are supplied in Internet
Explorer 5.5.

Therefore, if you export to XTM using Mozilla, you will need to fix this in
a text editor using global search and replace.
]]>
</resourceData>

</occurrence>

</topic>

<topic id="t-chap1-report">
<instanceOf>
<topicRef xlink:href="#tt-section"/>

</instanceOf>
<baseName>
<scope>
<topicRef xlink:href="#st-unconstrained"/>
<topicRef xlink:href="#st-chapter"/>
<topicRef xlink:href="#st-report"/>

</scope>
<baseNameString>
Chapter 1 - Create Report
</baseNameString>

</baseName>

</topic>

<topic id="st-report">
<instanceOf>
<topicRef xlink:href="#tt-scope"/>

</instanceOf>
<baseName>
<scope>
<topicRef xlink:href="#st-unconstrained"/>

</scope>
<baseNameString>
Report
</baseNameString>

</baseName>

</topic>

<topic id="st-assoc">
<instanceOf>
<topicRef xlink:href="#tt-scope"/>

</instanceOf>
<baseName>
<scope>
<topicRef xlink:href="#st-unconstrained"/>

</scope>
<baseNameString>
Association
</baseNameString>

</baseName>

</topic>

<topic id="t-chap2-intro">
<instanceOf>
<topicRef xlink:href="#tt-section"/>

</instanceOf>
<baseName>
<scope>
<topicRef xlink:href="#st-unconstrained"/>

</scope>
<baseNameString>
Chapter 2 - Introduction
</baseNameString>

</baseName>

</topic>

<topic id="t-chap2-load">
<instanceOf>
<topicRef xlink:href="#tt-section"/>

</instanceOf>
<baseName>
<scope>
<topicRef xlink:href="#st-unconstrained"/>

</scope>
<baseNameString>
Chapter 2 - Create New Map
</baseNameString>

</baseName>

</topic>

<topic id="t-user-guide">
<instanceOf>
<topicRef xlink:href="#tt-urtype"/>

</instanceOf>
<baseName>
<scope>
<topicRef xlink:href="#st-unconstrained"/>
<topicRef xlink:href="#st-user-guide"/>
<topicRef xlink:href="#st-report"/>

</scope>
<baseNameString>
The User Guide
</baseNameString>

</baseName>

</topic>

<topic id="at-report">
<instanceOf>
<topicRef xlink:href="#tt-assoc"/>

</instanceOf>
<baseName>
<scope>
<topicRef xlink:href="#st-unconstrained"/>

</scope>
<baseNameString>
Report Association
</baseNameString>

</baseName>

</topic>

<topic id="st-user-guide">
<instanceOf>
<topicRef xlink:href="#tt-scope"/>

</instanceOf>
<baseName>
<scope>
<topicRef xlink:href="#st-unconstrained"/>

</scope>
<baseNameString>
User Guide
</baseNameString>

</baseName>

</topic>

<topic id="rt-head">
<instanceOf>
<topicRef xlink:href="#tt-role"/>

</instanceOf>
<baseName>
<scope>
<topicRef xlink:href="#st-unconstrained"/>

</scope>
<baseNameString>
Head
</baseNameString>

</baseName>

</topic>

<association id="a-intro">
<instanceOf>
<topicRef xlink:href="#at-chapter"/>

</instanceOf>
<scope>
<topicRef xlink:href="#st-unconstrained"/>
<topicRef xlink:href="#st-chapter"/>

</scope>
<member>
<roleSpec>
<topicRef xlink:href="#rt-section"/>

</roleSpec>
<topicRef xlink:href="#t-intro-1"/>
<topicRef xlink:href="#t-intro-2"/>
<topicRef xlink:href="#t-intro-3"/>
<topicRef xlink:href="#t-intro-4"/>

</member>

</association>
<association id="a-chap-1">
<instanceOf>
<topicRef xlink:href="#at-chapter"/>

</instanceOf>
<scope>
<topicRef xlink:href="#st-unconstrained"/>
<topicRef xlink:href="#st-chapter"/>

</scope>
<member>
<roleSpec>
<topicRef xlink:href="#rt-section"/>

</roleSpec>
<topicRef xlink:href="#t-chapt-1-intro"/>
<topicRef xlink:href="#t-chap-1-loadmao"/>
<topicRef xlink:href="#t-chap1-topic-centric"/>
<topicRef xlink:href="#t-chap1-apply-scope"/>
<topicRef xlink:href="#t-chap1-topic-centric"/>
<topicRef xlink:href="#t-chap1-report"/>

</member>

</association>
<association id="a-chap-2">
<instanceOf>
<topicRef xlink:href="#at-chapter"/>

</instanceOf>
<scope>
<topicRef xlink:href="#st-unconstrained"/>
<topicRef xlink:href="#st-chapter"/>

</scope>
<member>
<roleSpec>
<topicRef xlink:href="#rt-section"/>

</roleSpec>
<topicRef xlink:href="#t-chap2-intro"/>
<topicRef xlink:href="#t-chap2-load"/>

</member>

</association>
<association id="a-user-guide">
<instanceOf>
<topicRef xlink:href="#at-report"/>

</instanceOf>
<scope>
<topicRef xlink:href="#st-unconstrained"/>
<topicRef xlink:href="#st-user-guide"/>

</scope>
<member>
<roleSpec>
<topicRef xlink:href="#rt-chapter"/>

</roleSpec>
<topicRef xlink:href="#t-intro-1"/>
<topicRef xlink:href="#t-chapt-1-intro"/>
<topicRef xlink:href="#t-chap2-intro"/>

</member>
<member>
<roleSpec>
<topicRef xlink:href="#rt-head"/>

</roleSpec>
<topicRef xlink:href="#t-user-guide"/>

</member>

</association>
</topicMap>



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


Powered by eList eXpress LLC