/*
* The Relaxer artifact
* Copyright (c) 2000-2004, ASAMI Tomoharu, All rights reserved.
*
* Permission is hereby granted, free of charge, to any person obtaining
* a copy of this software and associated documentation files (the
* "Software"), to deal in the Software without restriction, including
* without limitation the rights to use, copy, modify, merge, publish,
* distribute, sublicense, and/or sell copies of the Software, and to
* permit persons to whom the Software is furnished to do so, subject to
* the following conditions:
*
* - Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
* LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
* OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
* WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*/
package org.relaxer.vocabulary.forrest_0_5.faq_v12;
import java.io.IOException;
import java.io.PrintWriter;
import java.io.Writer;
import org.w3c.dom.Node;
/**
* <b>IFfQuestionMixed</b> is generated from faq_v12.rng by Relaxer.
* Concrete classes of the interface are RString, FfImg, FfIcon, FfLink, FfJump, FfFork, FfAcronym, FfStrong, FfEm, FfElaboration, FfCode, FfSub, FfSup and FfBr.
*
* @version faq_v12.rng (Wed Mar 03 11:15:15 JST 2004)
* @author Relaxer 1.1b (http://www.relaxer.org)
*/
public interface IFfQuestionMixed {
/**
* Creates a DOM representation of the object.
* Result is appended to the Node <code>parent</code>.
*
* @param parent
*/
void makeElement(Node parent);
/**
* Makes an XML text representation.
*
* @param buffer
*/
void makeTextElement(StringBuffer buffer);
/**
* Makes an XML text representation.
*
* @param buffer
* @exception IOException
*/
void makeTextElement(Writer buffer) throws IOException;
/**
* Makes an XML text representation.
*
* @param buffer
*/
void makeTextElement(PrintWriter buffer);
/**
* Makes an XML text representation.
*
* @param buffer
*/
void makeTextAttribute(StringBuffer buffer);
/**
* Makes an XML text representation.
*
* @param buffer
* @exception IOException
*/
void makeTextAttribute(Writer buffer) throws IOException;
/**
* Makes an XML text representation.
*
* @param buffer
*/
void makeTextAttribute(PrintWriter buffer);
/**
* @param stack
*/
void setup(RStack stack);
/**
* @return String
*/
String toString();
/**
* @return Object
*/
Object clone();
}