// Path: core/src/main/java/net/vhati/openuhs/core/markup/DecoratedFragment.java
// public class DecoratedFragment {
// 	public String fragment = null;
// 	public String[] attributes = null;
// 	public Map[] argMaps = null;
// 
// 
// 	public DecoratedFragment( String fragment, String[] attributes, Map[] argMaps ) {
// 		this.fragment = fragment;
// 		this.attributes = attributes;
// 		this.argMaps = argMaps;
// 	}
// }
// 
// Path: core/src/main/java/net/vhati/openuhs/core/markup/StringDecorator.java
// public abstract class StringDecorator {
// 	/** The sequence representing line breaks, as expected from the parser. */
// 	public static final char[] linebreak = new char[] {'^','b','r','e','a','k','^'};
// 
// 
// 	public abstract DecoratedFragment[] getDecoratedString( String rawContent );
// }


import java.io.PrintStream;
import java.util.ArrayList;
import java.util.List;
import net.vhati.openuhs.core.markup.DecoratedFragment;
import net.vhati.openuhs.core.markup.StringDecorator;


	/**
	 * Sets this node's content, may not be null.
	 */
	public void setRawStringContent( String rawStringContent ) {
		if ( rawStringContent == null ) throw new IllegalArgumentException( "String content may not be null" );

		this.rawStringContent = rawStringContent;
	}

	public String getRawStringContent() {
		return rawStringContent;
	}


	public void setStringContentDecorator( StringDecorator d ) {
		decorator = d;
	}

	public StringDecorator getStringContentDecorator() {
		return decorator;
	}

	/**
	 * Returns content with markup parsed away.
	 *
	 * @return an array of DecoratedFragments, or null if no decorator is set
	 * @see #getDecoratedStringContent()
	 */
// Path: core/src/main/java/net/vhati/openuhs/core/markup/DecoratedFragment.java
// public class DecoratedFragment {
// 	public String fragment = null;
// 	public String[] attributes = null;
// 	public Map[] argMaps = null;
// 
// 
// 	public DecoratedFragment( String fragment, String[] attributes, Map[] argMaps ) {
// 		this.fragment = fragment;
// 		this.attributes = attributes;
// 		this.argMaps = argMaps;
// 	}
// }
// 
// Path: core/src/main/java/net/vhati/openuhs/core/markup/StringDecorator.java
// public abstract class StringDecorator {
// 	/** The sequence representing line breaks, as expected from the parser. */
// 	public static final char[] linebreak = new char[] {'^','b','r','e','a','k','^'};
// 
// 
// 	public abstract DecoratedFragment[] getDecoratedString( String rawContent );
// }


// Path: core/src/main/java/net/vhati/openuhs/core/UHSNode.java
import java.io.PrintStream;
import java.util.ArrayList;
import java.util.List;
import net.vhati.openuhs.core.markup.DecoratedFragment;
import net.vhati.openuhs.core.markup.StringDecorator;



	/**
	 * Sets this node's content, may not be null.
	 */
	public void setRawStringContent( String rawStringContent ) {
		if ( rawStringContent == null ) throw new IllegalArgumentException( "String content may not be null" );

		this.rawStringContent = rawStringContent;
	}

	public String getRawStringContent() {
		return rawStringContent;
	}


	public void setStringContentDecorator( StringDecorator d ) {
		decorator = d;
	}

	public StringDecorator getStringContentDecorator() {
		return decorator;
	}

	/**
	 * Returns content with markup parsed away.
	 *
	 * @return an array of DecoratedFragments, or null if no decorator is set
	 * @see #getDecoratedStringContent()
	 */
	public DecoratedFragment[] getDecoratedStringFragments() {