org.ceryle.xtm
Class XtmTopicMap

java.lang.Object
  extended by org.ceryle.xtm.XtmNode
      extended by org.ceryle.xtm.XtmTopicMap
All Implemented Interfaces:
Iterator, Constants

public class XtmTopicMap
extends XtmNode

Defines a topic map object, ie., a container for nodes representing an XTM topic map. This does not currently support editing, as the public access is only via an Iterator. Note that this class does not enforce ID uniqueness; this should be done by either the parser or processor.

Since:
JDK1.3
Version:
$Id: XtmTopicMap.java,v 3.3 2007-06-15 12:10:36 altheim Exp $
Author:
Murray Altheim

Field Summary
protected  String xmlbase
          A String containing an optional value for the xml:base attribute.
 
Fields inherited from class org.ceryle.xtm.XtmNode
ASSOCIATION_NODE, BASENAME_NODE, BASENAMESTRING_NODE, COMMENT_NODE, DOCUMENT_NODE, GrpSep, GRPSEP, id, INSTANCEOF_NODE, MEMBER_NODE, MERGEMAP_NODE, NODE, NonType, NONTYPE, OCCURRENCE_NODE, PARAMETERS_NODE, PROCESSING_INSTRUCTION_NODE, RecSep, RECSEP, REFERENCE_NODE, RESOURCEDATA_NODE, RESOURCEREF_NODE, ROLESPEC_NODE, SCOPE_NODE, SUBJECTIDENTITY_NODE, SUBJECTINDICATORREF_NODE, TOPIC_NODE, TOPICMAP_NODE, TOPICREF_NODE, VARIANT_NODE, VARIANTNAME_NODE
 
Fields inherited from interface org.ceryle.util.Constants
Amp, AMP, Apos, APOS, APP_NAME, APP_VERSION_NAME, APP_VERSION_NUMBER, AT, BANG, BAR, BIT_dev, BIT_http, BIT_ignoreCom, BIT_merge, BIT_none, BIT_noPreload, BIT_simple, BIT_ui, BIT_unused1, BIT_unused2, BIT_unused3, BIT_validating, BIT_verbose, BIT_xcatalog, BIT_xlink, BIT_xmlnsAware, BIT_xsd, BROKB, BSlash, BSLASH, CERYLE_CREDITS_FILE, CERYLE_DATA_DIR, CERYLE_HIST_FILE, CERYLE_LICENSE_FILE, CERYLE_PREF_FILE, CERYLE_PROP, CERYLE_PROP_BASE, CERYLE_PROP_FILE, CERYLE_RSRC_DIR, CERYLE_THANKS_FILE, CFLEX, Colon, COLON, Comma, COMMA, CR, CRet, Dash, DASH, DEFAULT_DIRECTORY, DEVELOPER, DOLR, Dot, DOT, EIGHT, Ellip, EOF, EqQuot, EQUAL, Equals, False, FALSE, FileProt, Filesep, FileURL, Five, FIVE, FONTSIZES, Four, FOUR, FSchar, GCOL_PROP, GRAPH_PROP, GRAVE, GT, Hash, HASH, HOME_DIRECTORY, HOME_DIRECTORY_PATH, HOME_DIRECTORY_URL, HTML, HttpProt, HttpURL, INDENT, INDENT_0, INDENT_1, INDENT_10, INDENT_2, INDENT_3, INDENT_4, INDENT_5, INDENT_6, INDENT_7, INDENT_8, INDENT_9, INIT, LCURL, LCurly, LF, LFS, Localhost, LPAR, LParen, LS, LSBrkt, LSBrkt2, LSQB, LT, MT, NBSP, NEL, NINE, NL, NL20x, NLchar, No, Null, NULL, NULL_STATE, NumParams, One, ONE, Pathsep, Percent, PERO, PLUS, Prcnt, PS, QMark, QMARK, Quot, QUOT, RCURL, RCurly, RESOURCE_BUNDLE, RPAR, RParen, RSBrkt, RSBrkt2, RSQB, Semi, SEMI, SEVEN, SIX, Slash, SLASH, SP, SPACE, Stago, Star, STAR, Tab, TAB, Tee, Three, THREE, Tilde, TILDE, TM_PROP, True, TRUE, Two, TWO, Under, UNDER, URI, URL, VBar, WIKI_PROP, XNodePfx, XNodeURL, XtmExt, Yes, Zero, ZERO
 
Constructor Summary
XtmTopicMap()
          XtmTopicMap constructor.
XtmTopicMap(String id)
          XtmTopicMap constructor with ID.
 
Method Summary
 void addComment(XtmComment comment, boolean addLine)
          Add the XtmComment comment as a comment in this XtmTopicMap.
 void addNode(XtmNode node)
          Add the XtmNode node as content of this XtmTopicMap.
 String getName()
          Returns a String containing the name of this XTM element type.
 Iterator getNodeIterator()
          Return an Iterator over this XtmTopicMap's nodes.
protected  Iterator getNodes()
          Return this XtmTopicMap's nodes as an Iterator.
 short getNodeType()
          A short integer indicating what type of node this is.
 boolean removeNode(XtmNode node)
          Remove the XtmNode node from this XtmTopicMap's nodes.
 void setXmlBase(String uri)
          Set this XtmTopicMap's xml:base attribute.
 
Methods inherited from class org.ceryle.xtm.XtmNode
addPI, getID, getPI, getPIs, hasNext, next, remove, removePI, setID
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

xmlbase

protected String xmlbase
A String containing an optional value for the xml:base attribute.

Constructor Detail

XtmTopicMap

public XtmTopicMap()
            throws XtmException
XtmTopicMap constructor.

Throws:
XtmException

XtmTopicMap

public XtmTopicMap(String id)
            throws XtmException
XtmTopicMap constructor with ID.

Throws:
XtmException
Method Detail

getName

public String getName()
Returns a String containing the name of this XTM element type.

Overrides:
getName in class XtmNode

getNodeType

public short getNodeType()
A short integer indicating what type of node this is. The named constants for this value are defined in the org.ceryle.XtmNode class.

Overrides:
getNodeType in class XtmNode

setXmlBase

public void setXmlBase(String uri)
Set this XtmTopicMap's xml:base attribute.

Parameters:
uri - the URI to be used as the xml:base value.

getNodes

protected Iterator getNodes()
Return this XtmTopicMap's nodes as an Iterator.

Returns:
the nodes Iterator.

getNodeIterator

public Iterator getNodeIterator()
Return an Iterator over this XtmTopicMap's nodes.

Returns:
the Iterator.

removeNode

public boolean removeNode(XtmNode node)
Remove the XtmNode node from this XtmTopicMap's nodes.

Returns:
true if the map contained the node.

addComment

public void addComment(XtmComment comment,
                       boolean addLine)
Add the XtmComment comment as a comment in this XtmTopicMap. If the previous node in the document is either an XtmTopic or XtmAssociation node, the addLine will be ignored because these elements include their own following whitespace. Because topic map documents can be reordered due to merging this isn't perfect, but whitespace is not significant anyway.

Parameters:
comment - The XtmComment to be added to this XtmTopicMap.
addLine - Indicates whether a linefeed should precede the comment.

addNode

public void addNode(XtmNode node)
Add the XtmNode node as content of this XtmTopicMap. No merging or other behaviour is performed; merely the adding of the object to the Vector.

Parameters:
node - The XtmNode to be added to this XtmTopicMap.


The Ceryle Project. Copyright ©2001-2007 Murray Altheim, All Rights Reserved. See LICENSE included with distribution.