Suppose you want to include a DTD

import java.math.BigInteger;
import java.io.*;


public class FibonacciDTD {

  public static void main(String[] args) {

    try {
      FileOutputStream fout
       = new FileOutputStream("valid_fibonacci.xml");
      OutputStreamWriter out = new OutputStreamWriter(fout, "UTF-8");

      BigInteger low  = BigInteger.ZERO;
      BigInteger high = BigInteger.ONE;

      out.write("<?xml version=\"1.0\"?>\r\n");
      out.write("<!DOCTYPE Fibonacci_Numbers [\r\n");
      out.write("  <!ELEMENT Fibonacci_Numbers (fibonacci*)>\r\n");
      out.write("  <!ELEMENT fibonacci (#PCDATA)>\r\n");
      out.write("  <!ATTLIST fibonacci index CDATA #IMPLIED>\r\n");
      out.write("]>\r\n");
      out.write("<Fibonacci_Numbers>\r\n");
      for (int i = 0; i <= 25; i++) {
        out.write("  <fibonacci index=\"" + i + "\">");
        out.write(low.toString());
        out.write("</fibonacci>\r\n");

        BigInteger temp = high;
        high = high.add(low);
        low = temp;
      }
      out.write("</Fibonacci_Numbers>");

      out.close();
    }
    catch (IOException e) {
      System.err.println(e);
    }

  }

}

Previous | Next | Top | Cafe con Leche

Copyright 2000, 2001 Elliotte Rusty Harold
elharo@metalab.unc.edu
Last Modified February 12, 2000