This is an automated email from the ASF dual-hosted git repository.

olabusayo pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/daffodil.git


The following commit(s) were added to refs/heads/main by this push:
     new d5d4803ec Move factory methods from `Infoset` to `Daffodil`
d5d4803ec is described below

commit d5d4803eccc15a461b1cbb762acabb5c69c301b7
Author: olabusayoT <[email protected]>
AuthorDate: Tue Aug 12 12:36:09 2025 -0400

    Move factory methods from `Infoset` to `Daffodil`
    
    - delete `Infoset` class
    - migrate all factory methods to `Daffodil`
    - update references in tests and examples to use the new methods
    - clean up redundant code and imports
    
    DAFFODIL-3026
---
 .../main/scala/org/apache/daffodil/cli/Main.scala  |   2 +-
 .../java/org/apache/daffodil/api/Daffodil.java     | 201 ++++++++++++++++++
 .../org/apache/daffodil/api/DataProcessor.java     |   2 +-
 .../debugger/InteractiveDebuggerRunnerFactory.java |   2 +-
 .../org/apache/daffodil/api/infoset/Infoset.java   | 226 ---------------------
 .../daffodil/api/infoset/InfosetInputter.java      |   3 +-
 .../org/apache/daffodil/core/util/TestUtils.scala  |   2 +-
 .../runtime1/infoset/InfosetInputter.scala         |   2 +-
 .../runtime1/infoset/JDOMInfosetInputter.scala     |   2 +-
 .../runtime1/infoset/JsonInfosetInputter.scala     |   2 +-
 .../runtime1/infoset/NullInfosetInputter.scala     |   4 +-
 .../runtime1/infoset/SAXInfosetInputter.scala      |   4 +-
 .../runtime1/infoset/ScalaXMLInfosetInputter.scala |   2 +-
 .../runtime1/infoset/W3CDOMInfosetInputter.scala   |   2 +-
 .../runtime1/infoset/XMLTextInfosetInputter.scala  |   4 +-
 .../processors/DaffodilParseXMLReader.scala        |   6 +-
 .../DaffodilUnparseContentHandlerImpl.scala        |   2 +-
 .../java/org/apache/daffodil/jexample/TestAPI.java | 185 ++++++++---------
 .../daffodil/jexample/TestCustomDebuggerAPI.java   |  10 +-
 .../apache/daffodil/jexample/TestInfosetEvent.java |   9 +-
 .../daffodil/jexample/TestInfosetInputter.java     |   4 +-
 .../daffodil/jexample/ValidatorApiExample.java     |  16 +-
 .../daffodil/jexample/ValidatorSpiExample.java     |   9 +-
 .../core/processor/TestSAXParseUnparseAPI.scala    |   2 +-
 .../org/apache/daffodil/sexample/TestAPI.scala     | 147 +++++++-------
 .../daffodil/sexample/TestCustomDebuggerAPI.scala  |   5 +-
 .../sexample/TestInfosetInputterOutputter.scala    |   4 +-
 .../sexample/ValidatorExamplesSupport.scala        |   5 +-
 .../validation/schematron/EmbeddedTesting.scala    |   5 +-
 .../processor/tdml/DaffodilTDMLDFDLProcessor.scala |   2 +-
 .../processor/tdml/TDMLInfosetInputter.scala       |   2 +-
 31 files changed, 416 insertions(+), 457 deletions(-)

diff --git a/daffodil-cli/src/main/scala/org/apache/daffodil/cli/Main.scala 
b/daffodil-cli/src/main/scala/org/apache/daffodil/cli/Main.scala
index 5fe7668a0..88ac16ee5 100644
--- a/daffodil-cli/src/main/scala/org/apache/daffodil/cli/Main.scala
+++ b/daffodil-cli/src/main/scala/org/apache/daffodil/cli/Main.scala
@@ -1086,7 +1086,7 @@ class Main(
     debug: ScallopOption[Option[String]]
   ) = {
     if (trace()) {
-      InteractiveDebuggerRunnerFactory.getTraceDebuggerRunner(STDOUT)
+      InteractiveDebuggerRunnerFactory.newTraceDebuggerRunner(STDOUT)
     } else {
       if (System.console == null) {
         Logger.log.warn(
diff --git a/daffodil-core/src/main/java/org/apache/daffodil/api/Daffodil.java 
b/daffodil-core/src/main/java/org/apache/daffodil/api/Daffodil.java
index 84d06e7dd..70a1e2b61 100644
--- a/daffodil-core/src/main/java/org/apache/daffodil/api/Daffodil.java
+++ b/daffodil-core/src/main/java/org/apache/daffodil/api/Daffodil.java
@@ -17,6 +17,19 @@
 
 package org.apache.daffodil.api;
 
+import org.apache.daffodil.api.infoset.InfosetInputter;
+import org.apache.daffodil.api.infoset.InfosetOutputter;
+import org.apache.daffodil.api.infoset.JDOMInfosetOutputter;
+import org.apache.daffodil.api.infoset.ScalaXMLInfosetOutputter;
+import org.apache.daffodil.api.infoset.W3CDOMInfosetOutputter;
+import org.apache.daffodil.api.infoset.XMLTextEscapeStyle;
+import org.apache.daffodil.runtime1.infoset.JsonInfosetOutputter;
+import org.apache.daffodil.runtime1.infoset.XMLTextInfosetOutputter;
+
+import java.io.InputStream;
+import java.io.OutputStream;
+import java.nio.ByteBuffer;
+
 /**
  * Factory object to create a {@link Compiler}
  */
@@ -36,4 +49,192 @@ public class Daffodil {
   public static org.apache.daffodil.api.Compiler compiler() {
     return org.apache.daffodil.core.compiler.Compiler.apply(true);
   }
+
+
+  /**
+   * {@link InfosetOutputter} to build an infoset represented as a 
scala.xml.Node
+   *
+   * @return InfosetOutputter
+   */
+  public static ScalaXMLInfosetOutputter newScalaXMLInfosetOutputter() {
+    return new 
org.apache.daffodil.runtime1.infoset.ScalaXMLInfosetOutputter(false);
+  }
+
+  /**
+   * {@link InfosetOutputter} to build an infoset represented as XML written 
to a java.io.OutputStream
+   * <p>
+   * Output the infoset as XML Text, written to a java.io.OutputStream
+   *
+   * @param os     the java.io.OutputStream to write the XML text to
+   * @param pretty enable or disable pretty printing. Pretty printing will only
+   *               insert indentation and newlines where it will not affect the
+   *               content of the XML.
+   * @return InfosetOutputter
+   */
+  public static InfosetOutputter newXMLTextInfosetOutputter(OutputStream os, 
boolean pretty) {
+    return new XMLTextInfosetOutputter(os, pretty, 
XMLTextEscapeStyle.Standard, false);
+  }
+
+  /**
+   * {@link InfosetOutputter} to build an infoset represented as XML written 
to a java.io.OutputStream
+   * <p>
+   * Output the infoset as XML Text, written to a java.io.OutputStream
+   *
+   * @param os                 the java.io.OutputStream to write the XML text 
to
+   * @param pretty             enable or disable pretty printing. Pretty 
printing will only
+   *                           insert indentation and newlines where it will 
not affect the
+   *                           content of the XML.
+   * @param xmlTextEscapeStyle determine whether to wrap values of elements of 
type
+   *                           xs:string in CDATA tags in order to preserve
+   *                           whitespace.
+   * @return InfosetOutputter
+   */
+  public static InfosetOutputter newXMLTextInfosetOutputter(OutputStream os, 
boolean pretty, XMLTextEscapeStyle xmlTextEscapeStyle) {
+    return new XMLTextInfosetOutputter(os, pretty, xmlTextEscapeStyle, false);
+  }
+
+  /**
+   * {@link InfosetOutputter} to build an infoset represented as JSON written 
to a java.io.OutputStream
+   * Output the infoset as json text, written to a java.io.OutputStream
+   *
+   * @param os     the java.io.OutputStream to write the json text to
+   * @param pretty enable or disable pretty printing. Pretty printing will only
+   *               insert indentation and newlines where it will not affect the
+   *               content of the json.
+   * @return InfosetOutputter
+   */
+  public static InfosetOutputter newJsonInfosetOutputter(OutputStream os, 
boolean pretty) {
+    return new JsonInfosetOutputter(os, pretty);
+  }
+
+  /**
+   * {@link InfosetOutputter} to build an infoset represented as an 
org.jdom2.Document
+   *
+   * @return InfosetOutputter
+   */
+  public static JDOMInfosetOutputter newJDOMInfosetOutputter() {
+    return new org.apache.daffodil.runtime1.infoset.JDOMInfosetOutputter();
+  }
+
+  /**
+   * {@link InfosetOutputter} to build an infoset represented as an 
org.w3c.dom.Document
+   *
+   * @return InfosetOutputter
+   */
+  public static W3CDOMInfosetOutputter newW3CDOMInfosetOutputter() {
+    return new org.apache.daffodil.runtime1.infoset.W3CDOMInfosetOutputter();
+  }
+
+  /**
+   * {@link InfosetOutputter} that does not build an infoset representation, 
ignoring
+   * all {@link InfosetOutputter} events
+   *
+   * @return InfosetOutputter
+   */
+  public static InfosetOutputter newNullInfosetOutputter() {
+    return new org.apache.daffodil.runtime1.infoset.NullInfosetOutputter();
+  }
+
+  /**
+   * {@link InfosetInputter} to read an infoset represented as a scala.xml.Node
+   *
+   * @param node the scala.xml.Node infoset
+   * @return InfosetInputter
+   */
+  public static InfosetInputter newScalaXMLInfosetInputter(scala.xml.Node 
node) {
+    return new 
org.apache.daffodil.runtime1.infoset.ScalaXMLInfosetInputter(node);
+  }
+
+  /**
+   * {@link InfosetInputter} to read an infoset represented as XML from a 
java.io.InputStream
+   * <p>
+   * Read in an infoset in the form of XML text from a java.io.InputStream
+   *
+   * @param is the java.io.InputStream to read the XML text from
+   * @return InfosetInputter
+   */
+  public static InfosetInputter newXMLTextInfosetInputter(InputStream is) {
+    return new org.apache.daffodil.runtime1.infoset.XMLTextInfosetInputter(is);
+  }
+
+  /**
+   * {@link InfosetInputter} to read an infoset represented as JSON from a 
java.io.InputStream
+   * <p>
+   * Read in an infoset in the form of json text from a java.io.InputStream
+   *
+   * @param is the java.io.InputStream to read the json text from
+   * @return InfosetInputter
+   */
+  public static InfosetInputter newJsonInfosetInputter(InputStream is) {
+    return new org.apache.daffodil.runtime1.infoset.JsonInfosetInputter(is);
+  }
+
+  /**
+   * {@link InfosetInputter} to read an infoset represented as an 
org.jdom2.Document
+   *
+   * @param document the org.jdom2.Document infoset
+   * @return InfosetInputter
+   */
+  public static InfosetInputter newJDOMInfosetInputter(org.jdom2.Document 
document) {
+    return new 
org.apache.daffodil.runtime1.infoset.JDOMInfosetInputter(document);
+  }
+
+  /**
+   * {@link InfosetInputter} to read an infoset represented as an 
org.w3c.dom.Document
+   *
+   * @param document the org.w3c.dom.Document infoset. Note that w3c
+   *                 Documents are not guaranteed to be thread-safe, even if 
all
+   *                 users only read/traverse it. It is up to the user to 
ensure
+   *                 that the Document passed into the W3CDOMInfosetInputter is
+   *                 not read or written by other threads while the
+   *                 W3CDOMInfosetInputter has access to it.
+   * @return InfosetInputter
+   */
+  public static InfosetInputter newW3CDOMInfosetInputter(org.w3c.dom.Document 
document) {
+    return new 
org.apache.daffodil.runtime1.infoset.W3CDOMInfosetInputter(document);
+  }
+
+  /**
+   * Create an InputSourceDataInputStream from a java.io.InputStream
+   *
+   * @param is input stream to create from
+   * @return InputSourceDataInputStream from a java.io.InputStream
+   */
+  public static InputSourceDataInputStream 
newInputSourceDataInputStream(InputStream is) {
+    return org.apache.daffodil.io.InputSourceDataInputStream.apply(is);
+  }
+
+  /**
+   * Create an InputSourceDataInputStream from a java.nio.ByteBuffer
+   *
+   * @param bb byte buffer to create from
+   * @return InputSourceDataInputStream from a java.nio.ByteBuffer
+   */
+  public static InputSourceDataInputStream 
newInputSourceDataInputStream(ByteBuffer bb) {
+    return org.apache.daffodil.io.InputSourceDataInputStream.apply(bb);
+  }
+
+  /**
+   * Create an InputSourceDataInputStream from a byte array
+   *
+   * @param arr byte array to create from
+   * @return InputSourceDataInputStream from a byte array
+   */
+  public static InputSourceDataInputStream 
newInputSourceDataInputStream(byte[] arr) {
+    return org.apache.daffodil.io.InputSourceDataInputStream.apply(arr);
+  }
+
+  /**
+   * These are the events that a derived specific InfosetInputter
+   * creates.
+   * <p>
+   * The InfosetInputter base class figures out Daffodil InfosetEvents from
+   * the call-backs providing these derived-class events types.
+   */
+  public enum InfosetInputterEventType {
+    StartDocument,
+    EndDocument,
+    StartElement,
+    EndElement
+  }
 }
diff --git 
a/daffodil-core/src/main/java/org/apache/daffodil/api/DataProcessor.java 
b/daffodil-core/src/main/java/org/apache/daffodil/api/DataProcessor.java
index 50b143679..3a4522b98 100644
--- a/daffodil-core/src/main/java/org/apache/daffodil/api/DataProcessor.java
+++ b/daffodil-core/src/main/java/org/apache/daffodil/api/DataProcessor.java
@@ -62,7 +62,7 @@ public interface DataProcessor extends WithDiagnostics, 
Serializable {
     Debugger dbg = null;
     InteractiveDebuggerRunner runner;
     if (dr instanceof TraceDebuggerRunner) {
-      runner = 
InteractiveDebuggerRunnerFactory.getTraceDebuggerRunner(System.out);
+      runner = 
InteractiveDebuggerRunnerFactory.newTraceDebuggerRunner(System.out);
     } else if (dr != null) {
       runner = InteractiveDebuggerRunnerFactory.get(dr);
     } else {
diff --git 
a/daffodil-core/src/main/java/org/apache/daffodil/api/debugger/InteractiveDebuggerRunnerFactory.java
 
b/daffodil-core/src/main/java/org/apache/daffodil/api/debugger/InteractiveDebuggerRunnerFactory.java
index 62a4bce45..466168cbc 100644
--- 
a/daffodil-core/src/main/java/org/apache/daffodil/api/debugger/InteractiveDebuggerRunnerFactory.java
+++ 
b/daffodil-core/src/main/java/org/apache/daffodil/api/debugger/InteractiveDebuggerRunnerFactory.java
@@ -50,7 +50,7 @@ public class InteractiveDebuggerRunnerFactory {
    * @param out stream to print trace to
    * @return instance of TraceDebuggerRunner
    */
-  public static org.apache.daffodil.api.debugger.TraceDebuggerRunner 
getTraceDebuggerRunner(PrintStream out) {
+  public static org.apache.daffodil.api.debugger.TraceDebuggerRunner 
newTraceDebuggerRunner(PrintStream out) {
     return new TraceDebuggerRunner(out);
   }
 }
diff --git 
a/daffodil-core/src/main/java/org/apache/daffodil/api/infoset/Infoset.java 
b/daffodil-core/src/main/java/org/apache/daffodil/api/infoset/Infoset.java
deleted file mode 100644
index 0e6ce3607..000000000
--- a/daffodil-core/src/main/java/org/apache/daffodil/api/infoset/Infoset.java
+++ /dev/null
@@ -1,226 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.daffodil.api.infoset;
-
-import org.apache.daffodil.api.InputSourceDataInputStream;
-import org.apache.daffodil.runtime1.infoset.JsonInfosetOutputter;
-import org.apache.daffodil.runtime1.infoset.XMLTextInfosetOutputter;
-import scala.xml.Node;
-
-import java.io.InputStream;
-import java.io.OutputStream;
-import java.nio.ByteBuffer;
-
-/**
- * Contains factory methods for InfosetInputters and Outputters
- */
-public class Infoset {
-  /**
-   * private constructor
-   */
-  private Infoset() {
-  }
-
-  /**
-   * {@link InfosetOutputter} to build an infoset represented as a 
scala.xml.Node
-   *
-   * @return InfosetOutputter
-   */
-  public static ScalaXMLInfosetOutputter getScalaXMLInfosetOutputter() {
-    return new 
org.apache.daffodil.runtime1.infoset.ScalaXMLInfosetOutputter(false);
-  }
-
-  /**
-   * {@link InfosetOutputter} to build an infoset represented as XML written 
to a java.io.OutputStream
-   * <p>
-   * Output the infoset as XML Text, written to a java.io.OutputStream
-   *
-   * @param os     the java.io.OutputStream to write the XML text to
-   * @param pretty enable or disable pretty printing. Pretty printing will only
-   *               insert indentation and newlines where it will not affect the
-   *               content of the XML.
-   * @return InfosetOutputter
-   */
-  public static InfosetOutputter getXMLTextInfosetOutputter(OutputStream os, 
boolean pretty) {
-    return new XMLTextInfosetOutputter(os, pretty, 
XMLTextEscapeStyle.Standard, false);
-  }
-
-  /**
-   * {@link InfosetOutputter} to build an infoset represented as XML written 
to a java.io.OutputStream
-   * <p>
-   * Output the infoset as XML Text, written to a java.io.OutputStream
-   *
-   * @param os                 the java.io.OutputStream to write the XML text 
to
-   * @param pretty             enable or disable pretty printing. Pretty 
printing will only
-   *                           insert indentation and newlines where it will 
not affect the
-   *                           content of the XML.
-   * @param xmlTextEscapeStyle determine whether to wrap values of elements of 
type
-   *                           xs:string in CDATA tags in order to preserve
-   *                           whitespace.
-   * @return InfosetOutputter
-   */
-  public static InfosetOutputter getXMLTextInfosetOutputter(OutputStream os, 
boolean pretty, XMLTextEscapeStyle xmlTextEscapeStyle) {
-    return new XMLTextInfosetOutputter(os, pretty, xmlTextEscapeStyle, false);
-  }
-
-  /**
-   * {@link InfosetOutputter} to build an infoset represented as JSON written 
to a java.io.OutputStream
-   * Output the infoset as json text, written to a java.io.OutputStream
-   *
-   * @param os     the java.io.OutputStream to write the json text to
-   * @param pretty enable or disable pretty printing. Pretty printing will only
-   *               insert indentation and newlines where it will not affect the
-   *               content of the json.
-   * @return InfosetOutputter
-   */
-  public static InfosetOutputter getJsonInfosetOutputter(OutputStream os, 
boolean pretty) {
-    return new JsonInfosetOutputter(os, pretty);
-  }
-
-  /**
-   * {@link InfosetOutputter} to build an infoset represented as an 
org.jdom2.Document
-   *
-   * @return InfosetOutputter
-   */
-  public static JDOMInfosetOutputter getJDOMInfosetOutputter() {
-    return new org.apache.daffodil.runtime1.infoset.JDOMInfosetOutputter();
-  }
-
-  /**
-   * {@link InfosetOutputter} to build an infoset represented as an 
org.w3c.dom.Document
-   *
-   * @return InfosetOutputter
-   */
-  public static W3CDOMInfosetOutputter getW3CDOMInfosetOutputter() {
-    return new org.apache.daffodil.runtime1.infoset.W3CDOMInfosetOutputter();
-  }
-
-  /**
-   * {@link InfosetOutputter} that does not build an infoset representation, 
ignoring
-   * all {@link InfosetOutputter} events
-   *
-   * @return InfosetOutputter
-   * \
-   */
-  public static InfosetOutputter getNullInfosetOutputter() {
-    return new org.apache.daffodil.runtime1.infoset.NullInfosetOutputter();
-  }
-
-  /**
-   * {@link InfosetInputter} to read an infoset represented as a scala.xml.Node
-   *
-   * @param node the scala.xml.Node infoset
-   * @return InfosetInputter
-   */
-  public static InfosetInputter getScalaXMLInfosetInputter(Node node) {
-    return new 
org.apache.daffodil.runtime1.infoset.ScalaXMLInfosetInputter(node);
-  }
-
-  /**
-   * {@link InfosetInputter} to read an infoset represented as XML from a 
java.io.InputStream
-   * <p>
-   * Read in an infoset in the form of XML text from a java.io.InputStream
-   *
-   * @param is the java.io.InputStream to read the XML text from
-   * @return InfosetInputter
-   */
-  public static InfosetInputter getXMLTextInfosetInputter(InputStream is) {
-    return new org.apache.daffodil.runtime1.infoset.XMLTextInfosetInputter(is);
-  }
-
-  /**
-   * {@link InfosetInputter} to read an infoset represented as JSON from a 
java.io.InputStream
-   * <p>
-   * Read in an infoset in the form of json text from a java.io.InputStream
-   *
-   * @param is the java.io.InputStream to read the json text from
-   * @return InfosetInputter
-   */
-  public static InfosetInputter getJsonInfosetInputter(InputStream is) {
-    return new org.apache.daffodil.runtime1.infoset.JsonInfosetInputter(is);
-  }
-
-  /**
-   * {@link InfosetInputter} to read an infoset represented as an 
org.jdom2.Document
-   *
-   * @param document the org.jdom2.Document infoset
-   * @return InfosetInputter
-   */
-  public static InfosetInputter getJDOMInfosetInputter(org.jdom2.Document 
document) {
-    return new 
org.apache.daffodil.runtime1.infoset.JDOMInfosetInputter(document);
-  }
-
-  /**
-   * {@link InfosetInputter} to read an infoset represented as an 
org.w3c.dom.Document
-   *
-   * @param document the org.w3c.dom.Document infoset. Note that w3c
-   *                 Documents are not guaranteed to be thread-safe, even if 
all
-   *                 users only read/traverse it. It is up to the user to 
ensure
-   *                 that the Document passed into the W3CDOMInfosetInputter is
-   *                 not read or written by other threads while the
-   *                 W3CDOMInfosetInputter has access to it.
-   * @return InfosetInputter
-   */
-  public static InfosetInputter getW3CDOMInfosetInputter(org.w3c.dom.Document 
document) {
-    return new 
org.apache.daffodil.runtime1.infoset.W3CDOMInfosetInputter(document);
-  }
-
-  /**
-   * Create an InputSourceDataInputStream from a java.io.InputStream
-   *
-   * @param is input stream to create from
-   * @return InputSourceDataInputStream from a java.io.InputStream
-   */
-  public static InputSourceDataInputStream 
getInputSourceDataInputStream(InputStream is) {
-    return org.apache.daffodil.io.InputSourceDataInputStream.apply(is);
-  }
-
-  /**
-   * Create an InputSourceDataInputStream from a java.nio.ByteBuffer
-   *
-   * @param bb byte buffer to create from
-   * @return InputSourceDataInputStream from a java.nio.ByteBuffer
-   */
-  public static InputSourceDataInputStream 
getInputSourceDataInputStream(ByteBuffer bb) {
-    return org.apache.daffodil.io.InputSourceDataInputStream.apply(bb);
-  }
-
-  /**
-   * Create an InputSourceDataInputStream from a byte array
-   *
-   * @param arr byte array to create from
-   * @return InputSourceDataInputStream from a byte array
-   */
-  public static InputSourceDataInputStream 
getInputSourceDataInputStream(byte[] arr) {
-    return org.apache.daffodil.io.InputSourceDataInputStream.apply(arr);
-  }
-
-  /**
-   * These are the events that a derived specific InfosetInputter
-   * creates.
-   * <p>
-   * The InfosetInputter base class figures out Daffodil InfosetEvents from
-   * the call-backs providing these derived-class events types.
-   */
-  public enum InfosetInputterEventType {
-    StartDocument,
-    EndDocument,
-    StartElement,
-    EndElement;
-  }
-}
diff --git 
a/daffodil-core/src/main/java/org/apache/daffodil/api/infoset/InfosetInputter.java
 
b/daffodil-core/src/main/java/org/apache/daffodil/api/infoset/InfosetInputter.java
index 6821090e3..56c3473fb 100644
--- 
a/daffodil-core/src/main/java/org/apache/daffodil/api/infoset/InfosetInputter.java
+++ 
b/daffodil-core/src/main/java/org/apache/daffodil/api/infoset/InfosetInputter.java
@@ -17,6 +17,7 @@
 
 package org.apache.daffodil.api.infoset;
 
+import org.apache.daffodil.api.Daffodil;
 import org.apache.daffodil.runtime1.dpath.NodeInfo;
 
 import java.util.Map;
@@ -63,7 +64,7 @@ public abstract class InfosetInputter {
   /**
    * @return the current infoset inputter event type
    */
-  public abstract Infoset.InfosetInputterEventType getEventType();
+  public abstract Daffodil.InfosetInputterEventType getEventType();
 
   /**
    * Get the local name of the current event. This will only be called when the
diff --git 
a/daffodil-core/src/main/scala/org/apache/daffodil/core/util/TestUtils.scala 
b/daffodil-core/src/main/scala/org/apache/daffodil/core/util/TestUtils.scala
index c4721c345..0ebb425ba 100644
--- a/daffodil-core/src/main/scala/org/apache/daffodil/core/util/TestUtils.scala
+++ b/daffodil-core/src/main/scala/org/apache/daffodil/core/util/TestUtils.scala
@@ -175,7 +175,7 @@ object TestUtils {
 
   private lazy val builtInTracer =
     new InteractiveDebugger(
-      InteractiveDebuggerRunnerFactory.getTraceDebuggerRunner(System.out),
+      InteractiveDebuggerRunnerFactory.newTraceDebuggerRunner(System.out),
       ExpressionCompilers
     )
 
diff --git 
a/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/infoset/InfosetInputter.scala
 
b/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/infoset/InfosetInputter.scala
index 125f88b2e..6dacf6041 100644
--- 
a/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/infoset/InfosetInputter.scala
+++ 
b/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/infoset/InfosetInputter.scala
@@ -18,7 +18,7 @@
 package org.apache.daffodil.runtime1.infoset
 
 import org.apache.daffodil.api
-import org.apache.daffodil.api.infoset.Infoset.InfosetInputterEventType
+import org.apache.daffodil.api.Daffodil.InfosetInputterEventType
 import org.apache.daffodil.lib.exceptions.Assert
 import org.apache.daffodil.lib.iapi.DaffodilTunables
 import org.apache.daffodil.lib.util.Accessor
diff --git 
a/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/infoset/JDOMInfosetInputter.scala
 
b/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/infoset/JDOMInfosetInputter.scala
index 80efc79d9..8f89e283c 100644
--- 
a/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/infoset/JDOMInfosetInputter.scala
+++ 
b/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/infoset/JDOMInfosetInputter.scala
@@ -21,7 +21,7 @@ import java.lang.Boolean as JBoolean
 import java.util.Iterator
 
 import org.apache.daffodil.api
-import org.apache.daffodil.api.infoset.Infoset.InfosetInputterEventType
+import org.apache.daffodil.api.Daffodil.InfosetInputterEventType
 import org.apache.daffodil.lib.util.MStackOf
 import org.apache.daffodil.lib.xml.XMLUtils
 import org.apache.daffodil.runtime1.dpath.NodeInfo
diff --git 
a/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/infoset/JsonInfosetInputter.scala
 
b/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/infoset/JsonInfosetInputter.scala
index fc518b411..a76b4adc3 100644
--- 
a/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/infoset/JsonInfosetInputter.scala
+++ 
b/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/infoset/JsonInfosetInputter.scala
@@ -20,7 +20,7 @@ package org.apache.daffodil.runtime1.infoset
 import java.lang.Boolean as JBoolean
 
 import org.apache.daffodil.api
-import org.apache.daffodil.api.infoset.Infoset.InfosetInputterEventType
+import org.apache.daffodil.api.Daffodil.InfosetInputterEventType
 import org.apache.daffodil.lib.exceptions.Assert
 import org.apache.daffodil.lib.util.MStackOf
 import org.apache.daffodil.runtime1.dpath.NodeInfo
diff --git 
a/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/infoset/NullInfosetInputter.scala
 
b/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/infoset/NullInfosetInputter.scala
index a2eee0ba8..e657ebf75 100644
--- 
a/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/infoset/NullInfosetInputter.scala
+++ 
b/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/infoset/NullInfosetInputter.scala
@@ -26,8 +26,8 @@ import scala.xml.Text
 import scala.xml.XML
 
 import org.apache.daffodil.api
-import org.apache.daffodil.api.infoset.Infoset.InfosetInputterEventType
-import org.apache.daffodil.api.infoset.Infoset.InfosetInputterEventType.*
+import org.apache.daffodil.api.Daffodil.InfosetInputterEventType
+import org.apache.daffodil.api.Daffodil.InfosetInputterEventType.*
 import org.apache.daffodil.lib.xml.DaffodilSAXParserFactory
 import org.apache.daffodil.lib.xml.XMLUtils
 import org.apache.daffodil.runtime1.dpath.NodeInfo
diff --git 
a/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/infoset/SAXInfosetInputter.scala
 
b/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/infoset/SAXInfosetInputter.scala
index 5bf6c36e6..1c1d4c890 100644
--- 
a/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/infoset/SAXInfosetInputter.scala
+++ 
b/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/infoset/SAXInfosetInputter.scala
@@ -22,8 +22,8 @@ import java.net.URI
 import java.net.URISyntaxException
 
 import org.apache.daffodil.api
-import org.apache.daffodil.api.infoset.Infoset.InfosetInputterEventType
-import org.apache.daffodil.api.infoset.Infoset.InfosetInputterEventType.*
+import org.apache.daffodil.api.Daffodil.InfosetInputterEventType
+import org.apache.daffodil.api.Daffodil.InfosetInputterEventType.*
 import org.apache.daffodil.lib.exceptions.Assert
 import org.apache.daffodil.lib.util.Coroutine
 import org.apache.daffodil.lib.util.Maybe
diff --git 
a/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/infoset/ScalaXMLInfosetInputter.scala
 
b/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/infoset/ScalaXMLInfosetInputter.scala
index f60ed4c0a..f8ecbf990 100644
--- 
a/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/infoset/ScalaXMLInfosetInputter.scala
+++ 
b/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/infoset/ScalaXMLInfosetInputter.scala
@@ -25,7 +25,7 @@ import scala.xml.ProcInstr
 import scala.xml.Text
 
 import org.apache.daffodil.api
-import org.apache.daffodil.api.infoset.Infoset.InfosetInputterEventType
+import org.apache.daffodil.api.Daffodil.InfosetInputterEventType
 import org.apache.daffodil.lib.util.MStackOf
 import org.apache.daffodil.lib.xml.XMLUtils
 import org.apache.daffodil.runtime1.dpath.NodeInfo
diff --git 
a/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/infoset/W3CDOMInfosetInputter.scala
 
b/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/infoset/W3CDOMInfosetInputter.scala
index d3b6c0423..3d5a3f044 100644
--- 
a/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/infoset/W3CDOMInfosetInputter.scala
+++ 
b/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/infoset/W3CDOMInfosetInputter.scala
@@ -22,7 +22,7 @@ import javax.xml.XMLConstants
 import scala.jdk.OptionConverters.*
 
 import org.apache.daffodil.api
-import org.apache.daffodil.api.infoset.Infoset.InfosetInputterEventType
+import org.apache.daffodil.api.Daffodil.InfosetInputterEventType
 import org.apache.daffodil.lib.util.MStackOf
 import org.apache.daffodil.lib.xml.XMLUtils
 import org.apache.daffodil.runtime1.dpath.NodeInfo
diff --git 
a/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/infoset/XMLTextInfosetInputter.scala
 
b/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/infoset/XMLTextInfosetInputter.scala
index 1da9b0bc8..5d0edd0b8 100644
--- 
a/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/infoset/XMLTextInfosetInputter.scala
+++ 
b/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/infoset/XMLTextInfosetInputter.scala
@@ -28,8 +28,8 @@ import javax.xml.stream.XMLStreamReader
 import javax.xml.stream.XMLStreamWriter
 
 import org.apache.daffodil.api
-import org.apache.daffodil.api.infoset.Infoset.InfosetInputterEventType
-import org.apache.daffodil.api.infoset.Infoset.InfosetInputterEventType.*
+import org.apache.daffodil.api.Daffodil.InfosetInputterEventType
+import org.apache.daffodil.api.Daffodil.InfosetInputterEventType.*
 import org.apache.daffodil.lib.exceptions.Assert
 import org.apache.daffodil.lib.xml.XMLUtils
 import org.apache.daffodil.runtime1.dpath.NodeInfo
diff --git 
a/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/DaffodilParseXMLReader.scala
 
b/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/DaffodilParseXMLReader.scala
index 41b112b4c..809e7555b 100644
--- 
a/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/DaffodilParseXMLReader.scala
+++ 
b/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/DaffodilParseXMLReader.scala
@@ -139,7 +139,7 @@ class DaffodilParseXMLReader(dp: DataProcessor) extends 
api.DaffodilParseXMLRead
   override def parse(input: InputSource): Unit = {
     val is = input.getByteStream
     if (is != null) {
-      Using.resource(api.infoset.Infoset.getInputSourceDataInputStream(is)) { 
isdis =>
+      Using.resource(api.Daffodil.newInputSourceDataInputStream(is)) { isdis =>
         parse(isdis)
       }
     } else {
@@ -172,13 +172,13 @@ class DaffodilParseXMLReader(dp: DataProcessor) extends 
api.DaffodilParseXMLRead
   }
 
   def parse(stream: InputStream): Unit = {
-    Using.resource(api.infoset.Infoset.getInputSourceDataInputStream(stream)) 
{ isdis =>
+    Using.resource(api.Daffodil.newInputSourceDataInputStream(stream)) { isdis 
=>
       parse(isdis)
     }
   }
 
   def parse(arr: Array[Byte]): Unit = {
-    Using.resource(api.infoset.Infoset.getInputSourceDataInputStream(arr)) { 
isdis =>
+    Using.resource(api.Daffodil.newInputSourceDataInputStream(arr)) { isdis =>
       parse(isdis)
     }
   }
diff --git 
a/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/DaffodilUnparseContentHandlerImpl.scala
 
b/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/DaffodilUnparseContentHandlerImpl.scala
index d7eeed85d..610452c6f 100644
--- 
a/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/DaffodilUnparseContentHandlerImpl.scala
+++ 
b/daffodil-core/src/main/scala/org/apache/daffodil/runtime1/processors/DaffodilUnparseContentHandlerImpl.scala
@@ -21,7 +21,7 @@ import javax.xml.XMLConstants
 import scala.xml.NamespaceBinding
 import scala.xml.TopScope
 
-import org.apache.daffodil.api.infoset.Infoset.InfosetInputterEventType.*
+import org.apache.daffodil.api.Daffodil.InfosetInputterEventType.*
 import org.apache.daffodil.lib.exceptions.Assert
 import org.apache.daffodil.lib.util.MStackOf
 import org.apache.daffodil.lib.util.MainCoroutine
diff --git 
a/daffodil-core/src/test/java/org/apache/daffodil/jexample/TestAPI.java 
b/daffodil-core/src/test/java/org/apache/daffodil/jexample/TestAPI.java
index b5f9ca68d..3a2f1f1c7 100644
--- a/daffodil-core/src/test/java/org/apache/daffodil/jexample/TestAPI.java
+++ b/daffodil-core/src/test/java/org/apache/daffodil/jexample/TestAPI.java
@@ -49,18 +49,14 @@ import org.apache.daffodil.api.DataProcessor;
 import org.apache.daffodil.api.Diagnostic;
 import org.apache.daffodil.api.LocationInSchemaFile;
 import org.apache.daffodil.api.ParseResult;
-import org.apache.daffodil.api.validation.Validator;
 import org.apache.daffodil.api.validation.ValidatorInitializationException;
 import org.apache.daffodil.api.validation.ValidatorNotRegisteredException;
-import org.apache.daffodil.api.validation.Validators;
 import org.apache.daffodil.japi.SAXErrorHandlerForAPITest;
 import org.apache.daffodil.api.UnparseResult;
 import org.apache.daffodil.api.ProcessorFactory;
 import org.apache.daffodil.api.exceptions.DaffodilUnhandledSAXException;
 import org.apache.daffodil.api.exceptions.DaffodilUnparseErrorSAXException;
 import org.apache.daffodil.api.exceptions.ExternalVariableException;
-import org.apache.daffodil.api.exceptions.InvalidUsageException;
-import org.apache.daffodil.api.infoset.Infoset;
 import org.apache.daffodil.api.infoset.InfosetInputter;
 import org.apache.daffodil.api.infoset.InfosetOutputter;
 import org.apache.daffodil.api.infoset.JDOMInfosetOutputter;
@@ -78,7 +74,6 @@ import org.xml.sax.XMLReader;
 import javax.xml.XMLConstants;
 
 import java.nio.charset.StandardCharsets;
-import java.util.Properties;
 
 
 public class TestAPI {
@@ -90,7 +85,7 @@ public class TestAPI {
    * are also used to illustrate API usage, this exemplifies best practice.
    */
   public static void setSecureDefaults(XMLReader xmlReader)
-      throws SAXNotSupportedException, SAXNotRecognizedException {
+    throws SAXNotSupportedException, SAXNotRecognizedException {
     xmlReader.setFeature(XMLConstants.FEATURE_SECURE_PROCESSING, true);
     // since we're not really sure what they mean by secure processing
     // we make doubly sure by setting these ourselves also.
@@ -153,8 +148,8 @@ public class TestAPI {
 
     java.io.File file = getResource("/test/api/myData.dat");
     java.io.FileInputStream fis = new java.io.FileInputStream(file);
-    try (InputSourceDataInputStream dis = 
Infoset.getInputSourceDataInputStream(fis)) {
-      JDOMInfosetOutputter outputter = Infoset.getJDOMInfosetOutputter();
+    try (InputSourceDataInputStream dis = 
Daffodil.newInputSourceDataInputStream(fis)) {
+      JDOMInfosetOutputter outputter = Daffodil.newJDOMInfosetOutputter();
       ParseResult res = dp.parse(dis, outputter);
       boolean err = res.isError();
       assertFalse(err);
@@ -164,7 +159,7 @@ public class TestAPI {
 
       java.io.ByteArrayOutputStream bos = new java.io.ByteArrayOutputStream();
       java.nio.channels.WritableByteChannel wbc = 
java.nio.channels.Channels.newChannel(bos);
-      InfosetInputter inputter = 
Infoset.getJDOMInfosetInputter(outputter.getResult());
+      InfosetInputter inputter = 
Daffodil.newJDOMInfosetInputter(outputter.getResult());
       UnparseResult res2 = dp.unparse(inputter, wbc);
       err = res2.isError();
       assertFalse(err);
@@ -201,8 +196,8 @@ public class TestAPI {
     // and byte buffer.
     byte[] ba = FileUtils.readFileToByteArray(data);
     ByteBuffer bb = ByteBuffer.wrap(ba);
-    try (InputSourceDataInputStream dis = 
Infoset.getInputSourceDataInputStream(bb)) {
-      JDOMInfosetOutputter outputter = Infoset.getJDOMInfosetOutputter();
+    try (InputSourceDataInputStream dis = 
Daffodil.newInputSourceDataInputStream(bb)) {
+      JDOMInfosetOutputter outputter = Daffodil.newJDOMInfosetOutputter();
       ParseResult res = parser.parse(dis, outputter);
       boolean err = res.isError();
       assertFalse(err);
@@ -212,7 +207,7 @@ public class TestAPI {
 
       java.io.ByteArrayOutputStream bos = new java.io.ByteArrayOutputStream();
       java.nio.channels.WritableByteChannel wbc = 
java.nio.channels.Channels.newChannel(bos);
-      InfosetInputter inputter = 
Infoset.getJDOMInfosetInputter(outputter.getResult());
+      InfosetInputter inputter = 
Daffodil.newJDOMInfosetInputter(outputter.getResult());
       UnparseResult res2 = dp.unparse(inputter, wbc);
       err = res2.isError();
       assertFalse(err);
@@ -260,8 +255,8 @@ public class TestAPI {
     // the constructor for creating an InputSourceDataInputStream from a byte 
array
     // and byte buffer.
     byte[] ba = FileUtils.readFileToByteArray(file);
-    try (InputSourceDataInputStream dis = 
Infoset.getInputSourceDataInputStream(ba)) {
-      JDOMInfosetOutputter outputter = Infoset.getJDOMInfosetOutputter();
+    try (InputSourceDataInputStream dis = 
Daffodil.newInputSourceDataInputStream(ba)) {
+      JDOMInfosetOutputter outputter = Daffodil.newJDOMInfosetOutputter();
       ParseResult res = dp.parse(dis, outputter);
 
       // TODO: NEED a java friendly way to get the status of the outputter.
@@ -303,8 +298,8 @@ public class TestAPI {
 
     java.io.File file = getResource("/test/api/myData16.dat");
     java.io.FileInputStream fis = new java.io.FileInputStream(file);
-    try (InputSourceDataInputStream dis = 
Infoset.getInputSourceDataInputStream(fis)) {
-      JDOMInfosetOutputter outputter = Infoset.getJDOMInfosetOutputter();
+    try (InputSourceDataInputStream dis = 
Daffodil.newInputSourceDataInputStream(fis)) {
+      JDOMInfosetOutputter outputter = Daffodil.newJDOMInfosetOutputter();
       ParseResult res = dp.parse(dis, outputter);
       boolean err = res.isError();
       assertFalse(err);
@@ -313,7 +308,7 @@ public class TestAPI {
 
       java.io.ByteArrayOutputStream bos = new java.io.ByteArrayOutputStream();
       java.nio.channels.WritableByteChannel wbc = 
java.nio.channels.Channels.newChannel(bos);
-      InfosetInputter inputter = 
Infoset.getJDOMInfosetInputter(outputter.getResult());
+      InfosetInputter inputter = 
Daffodil.newJDOMInfosetInputter(outputter.getResult());
       UnparseResult res2 = dp.unparse(inputter, wbc);
       err = res2.isError();
       assertFalse(err);
@@ -344,8 +339,8 @@ public class TestAPI {
 
     java.io.File file = getResource("/test/api/myData16.dat");
     java.io.FileInputStream fis = new java.io.FileInputStream(file);
-    try (InputSourceDataInputStream dis = 
Infoset.getInputSourceDataInputStream(fis)) {
-      JDOMInfosetOutputter outputter = Infoset.getJDOMInfosetOutputter();
+    try (InputSourceDataInputStream dis = 
Daffodil.newInputSourceDataInputStream(fis)) {
+      JDOMInfosetOutputter outputter = Daffodil.newJDOMInfosetOutputter();
       ParseResult res = parser.parse(dis, outputter);
       boolean err = res.isError();
       assertFalse(err);
@@ -354,7 +349,7 @@ public class TestAPI {
 
       java.io.ByteArrayOutputStream bos = new java.io.ByteArrayOutputStream();
       java.nio.channels.WritableByteChannel wbc = 
java.nio.channels.Channels.newChannel(bos);
-      InfosetInputter inputter = 
Infoset.getJDOMInfosetInputter(outputter.getResult());
+      InfosetInputter inputter = 
Daffodil.newJDOMInfosetInputter(outputter.getResult());
       UnparseResult res2 = dp.unparse(inputter, wbc);
       err = res2.isError();
       assertFalse(err);
@@ -373,8 +368,8 @@ public class TestAPI {
 
     java.io.File file = getResource("/test/api/myData2.dat");
     java.io.FileInputStream fis = new java.io.FileInputStream(file);
-    try (InputSourceDataInputStream dis = 
Infoset.getInputSourceDataInputStream(fis)) {
-      JDOMInfosetOutputter outputter = Infoset.getJDOMInfosetOutputter();
+    try (InputSourceDataInputStream dis = 
Daffodil.newInputSourceDataInputStream(fis)) {
+      JDOMInfosetOutputter outputter = Daffodil.newJDOMInfosetOutputter();
       ParseResult res = dp.parse(dis, outputter);
       boolean err = res.isError();
       assertFalse(err);
@@ -383,7 +378,7 @@ public class TestAPI {
 
       java.io.ByteArrayOutputStream bos = new java.io.ByteArrayOutputStream();
       java.nio.channels.WritableByteChannel wbc = 
java.nio.channels.Channels.newChannel(bos);
-      InfosetInputter inputter = 
Infoset.getJDOMInfosetInputter(outputter.getResult());
+      InfosetInputter inputter = 
Daffodil.newJDOMInfosetInputter(outputter.getResult());
       UnparseResult res2 = dp.unparse(inputter, wbc);
       err = res2.isError();
       assertFalse(err);
@@ -402,8 +397,8 @@ public class TestAPI {
     java.io.File file = getResource("/test/api/myData3.dat"); // contains 5
     // bytes
     java.io.FileInputStream fis = new java.io.FileInputStream(file);
-    try (InputSourceDataInputStream dis = 
Infoset.getInputSourceDataInputStream(fis)) {
-      JDOMInfosetOutputter outputter = Infoset.getJDOMInfosetOutputter();
+    try (InputSourceDataInputStream dis = 
Daffodil.newInputSourceDataInputStream(fis)) {
+      JDOMInfosetOutputter outputter = Daffodil.newJDOMInfosetOutputter();
       ParseResult res = dp.parse(dis, outputter);
       boolean err = res.isError();
       assertFalse(err);
@@ -412,7 +407,7 @@ public class TestAPI {
 
       java.io.ByteArrayOutputStream bos = new java.io.ByteArrayOutputStream();
       java.nio.channels.WritableByteChannel wbc = 
java.nio.channels.Channels.newChannel(bos);
-      InfosetInputter inputter = 
Infoset.getJDOMInfosetInputter(outputter.getResult());
+      InfosetInputter inputter = 
Daffodil.newJDOMInfosetInputter(outputter.getResult());
       UnparseResult res2 = dp.unparse(inputter, wbc);
       err = res2.isError();
       assertFalse(err);
@@ -462,15 +457,15 @@ public class TestAPI {
 
     java.io.File file = getResource("/test/api/01very_simple.txt");
     java.io.FileInputStream fis = new java.io.FileInputStream(file);
-    try (InputSourceDataInputStream dis = 
Infoset.getInputSourceDataInputStream(fis)) {
-      JDOMInfosetOutputter outputter = Infoset.getJDOMInfosetOutputter();
+    try (InputSourceDataInputStream dis = 
Daffodil.newInputSourceDataInputStream(fis)) {
+      JDOMInfosetOutputter outputter = Daffodil.newJDOMInfosetOutputter();
       ParseResult res = dp.parse(dis, outputter);
       boolean err = res.isError();
       assertFalse(err);
 
       java.io.ByteArrayOutputStream bos = new java.io.ByteArrayOutputStream();
       java.nio.channels.WritableByteChannel wbc = 
java.nio.channels.Channels.newChannel(bos);
-      InfosetInputter inputter = 
Infoset.getJDOMInfosetInputter(outputter.getResult());
+      InfosetInputter inputter = 
Daffodil.newJDOMInfosetInputter(outputter.getResult());
       UnparseResult res2 = dp.unparse(inputter, wbc);
       err = res2.isError();
       assertFalse(err);
@@ -496,15 +491,15 @@ public class TestAPI {
 
     java.io.File file = getResource("/test/api/01very_simple.txt");
     java.io.FileInputStream fis = new java.io.FileInputStream(file);
-    try (InputSourceDataInputStream dis = 
Infoset.getInputSourceDataInputStream(fis)) {
-      JDOMInfosetOutputter outputter = Infoset.getJDOMInfosetOutputter();
+    try (InputSourceDataInputStream dis = 
Daffodil.newInputSourceDataInputStream(fis)) {
+      JDOMInfosetOutputter outputter = Daffodil.newJDOMInfosetOutputter();
       ParseResult res = dp.parse(dis, outputter);
       boolean err = res.isError();
       assertFalse(err);
 
       java.io.ByteArrayOutputStream bos = new java.io.ByteArrayOutputStream();
       java.nio.channels.WritableByteChannel wbc = 
java.nio.channels.Channels.newChannel(bos);
-      InfosetInputter inputter = 
Infoset.getJDOMInfosetInputter(outputter.getResult());
+      InfosetInputter inputter = 
Daffodil.newJDOMInfosetInputter(outputter.getResult());
       UnparseResult res2 = dp.unparse(inputter, wbc);
       err = res2.isError();
       assertFalse(err);
@@ -526,8 +521,8 @@ public class TestAPI {
 
     java.io.File file = getResource("/test/api/01very_simple.txt");
     java.io.FileInputStream fis = new java.io.FileInputStream(file);
-    try (InputSourceDataInputStream dis = 
Infoset.getInputSourceDataInputStream(fis)) {
-      JDOMInfosetOutputter outputter = Infoset.getJDOMInfosetOutputter();
+    try (InputSourceDataInputStream dis = 
Daffodil.newInputSourceDataInputStream(fis)) {
+      JDOMInfosetOutputter outputter = Daffodil.newJDOMInfosetOutputter();
       ParseResult res = dp.parse(dis, outputter);
       boolean err = res.isError();
       assertFalse(err);
@@ -536,7 +531,7 @@ public class TestAPI {
 
       java.io.ByteArrayOutputStream bos1 = new java.io.ByteArrayOutputStream();
       java.nio.channels.WritableByteChannel wbc1 = 
java.nio.channels.Channels.newChannel(bos1);
-      InfosetInputter inputter1 = Infoset.getJDOMInfosetInputter(doc1);
+      InfosetInputter inputter1 = Daffodil.newJDOMInfosetInputter(doc1);
       UnparseResult res2 = dp.unparse(inputter1, wbc1);
       err = res2.isError();
       assertFalse(err);
@@ -546,7 +541,7 @@ public class TestAPI {
 
       java.io.ByteArrayOutputStream bos2 = new java.io.ByteArrayOutputStream();
       java.nio.channels.WritableByteChannel wbc2 = 
java.nio.channels.Channels.newChannel(bos2);
-      InfosetInputter inputter2 = Infoset.getJDOMInfosetInputter(doc2);
+      InfosetInputter inputter2 = Daffodil.newJDOMInfosetInputter(doc2);
       UnparseResult res3 = dp.unparse(inputter2, wbc2);
       err = res3.isError();
       assertFalse(err);
@@ -568,8 +563,8 @@ public class TestAPI {
 
     java.io.File file = getResource("/test/api/myData4.dat");
     java.io.FileInputStream fis = new java.io.FileInputStream(file);
-    try (InputSourceDataInputStream dis = 
Infoset.getInputSourceDataInputStream(fis)) {
-      JDOMInfosetOutputter outputter = Infoset.getJDOMInfosetOutputter();
+    try (InputSourceDataInputStream dis = 
Daffodil.newInputSourceDataInputStream(fis)) {
+      JDOMInfosetOutputter outputter = Daffodil.newJDOMInfosetOutputter();
       ParseResult res = dp.parse(dis, outputter);
       boolean err = res.isError();
       assertFalse(err);
@@ -596,8 +591,8 @@ public class TestAPI {
 
     java.io.File file = getResource("/test/api/myData5.dat");
     java.io.FileInputStream fis = new java.io.FileInputStream(file);
-    try (InputSourceDataInputStream dis = 
Infoset.getInputSourceDataInputStream(fis)) {
-      JDOMInfosetOutputter outputter = Infoset.getJDOMInfosetOutputter();
+    try (InputSourceDataInputStream dis = 
Daffodil.newInputSourceDataInputStream(fis)) {
+      JDOMInfosetOutputter outputter = Daffodil.newJDOMInfosetOutputter();
       ParseResult res = dp.parse(dis, outputter);
       boolean err = res.isError();
       assertFalse(err);
@@ -639,8 +634,8 @@ public class TestAPI {
 
     java.io.File file = getResource("/test/api/myData.dat");
     java.io.FileInputStream fis = new java.io.FileInputStream(file);
-    try (InputSourceDataInputStream dis = 
Infoset.getInputSourceDataInputStream(fis)) {
-      JDOMInfosetOutputter outputter = Infoset.getJDOMInfosetOutputter();
+    try (InputSourceDataInputStream dis = 
Daffodil.newInputSourceDataInputStream(fis)) {
+      JDOMInfosetOutputter outputter = Daffodil.newJDOMInfosetOutputter();
       ParseResult res = dp.parse(dis, outputter);
       boolean err = res.isError();
       assertFalse(err);
@@ -670,8 +665,8 @@ public class TestAPI {
 
     java.io.File file = getResource("/test/api/myData.dat");
     java.io.FileInputStream fis = new java.io.FileInputStream(file);
-    try (InputSourceDataInputStream dis = 
Infoset.getInputSourceDataInputStream(fis)) {
-      JDOMInfosetOutputter outputter = Infoset.getJDOMInfosetOutputter();
+    try (InputSourceDataInputStream dis = 
Daffodil.newInputSourceDataInputStream(fis)) {
+      JDOMInfosetOutputter outputter = Daffodil.newJDOMInfosetOutputter();
       ParseResult res = dp.parse(dis, outputter);
       boolean err = res.isError();
       assertFalse(err);
@@ -705,8 +700,8 @@ public class TestAPI {
 
     java.io.File file = getResource("/test/api/myData.dat");
     java.io.FileInputStream fis = new java.io.FileInputStream(file);
-    try (InputSourceDataInputStream dis = 
Infoset.getInputSourceDataInputStream(fis)) {
-      JDOMInfosetOutputter outputter = Infoset.getJDOMInfosetOutputter();
+    try (InputSourceDataInputStream dis = 
Daffodil.newInputSourceDataInputStream(fis)) {
+      JDOMInfosetOutputter outputter = Daffodil.newJDOMInfosetOutputter();
       ParseResult res = dp.parse(dis, outputter);
       boolean err = res.isError();
       assertFalse(err);
@@ -745,7 +740,7 @@ public class TestAPI {
 
     java.io.ByteArrayOutputStream bos = new java.io.ByteArrayOutputStream();
     java.nio.channels.WritableByteChannel wbc = 
java.nio.channels.Channels.newChannel(bos);
-    InfosetInputter inputter = Infoset.getJDOMInfosetInputter(doc);
+    InfosetInputter inputter = Daffodil.newJDOMInfosetInputter(doc);
     UnparseResult res = dp.unparse(inputter, wbc);
     boolean err = res.isError();
     assertTrue(err);
@@ -769,8 +764,8 @@ public class TestAPI {
 
     java.io.File file = getResource("/test/api/myData.dat");
     java.io.FileInputStream fis = new java.io.FileInputStream(file);
-    try (InputSourceDataInputStream dis = 
Infoset.getInputSourceDataInputStream(fis)) {
-      JDOMInfosetOutputter outputter = Infoset.getJDOMInfosetOutputter();
+    try (InputSourceDataInputStream dis = 
Daffodil.newInputSourceDataInputStream(fis)) {
+      JDOMInfosetOutputter outputter = Daffodil.newJDOMInfosetOutputter();
       ParseResult res = dp.parse(dis, outputter);
       assertTrue(res.isError());
       assertFalse(res.isProcessingError());
@@ -796,8 +791,8 @@ public class TestAPI {
 
     java.io.File file = getResource("/test/api/myData.dat");
     java.io.FileInputStream fis = new java.io.FileInputStream(file);
-    try (InputSourceDataInputStream dis = 
Infoset.getInputSourceDataInputStream(fis)) {
-      JDOMInfosetOutputter outputter = Infoset.getJDOMInfosetOutputter();
+    try (InputSourceDataInputStream dis = 
Daffodil.newInputSourceDataInputStream(fis)) {
+      JDOMInfosetOutputter outputter = Daffodil.newJDOMInfosetOutputter();
       ParseResult res = dp.parse(dis, outputter);
       assertTrue(res.isError());
       assertFalse(res.isProcessingError());
@@ -832,9 +827,9 @@ public class TestAPI {
 
     java.io.File file = getResource("/test/api/myData2.dat");
     java.io.FileInputStream fis = new java.io.FileInputStream(file);
-    try (InputSourceDataInputStream input = 
Infoset.getInputSourceDataInputStream(fis)) {
+    try (InputSourceDataInputStream input = 
Daffodil.newInputSourceDataInputStream(fis)) {
 
-      JDOMInfosetOutputter outputter = Infoset.getJDOMInfosetOutputter();
+      JDOMInfosetOutputter outputter = Daffodil.newJDOMInfosetOutputter();
       ParseResult res = null;
       boolean err = false;
 
@@ -874,9 +869,9 @@ public class TestAPI {
 
     java.io.File file = getResource("/test/api/myData19.dat");
     java.io.FileInputStream fis = new java.io.FileInputStream(file);
-    try (InputSourceDataInputStream input = 
Infoset.getInputSourceDataInputStream(fis)) {
+    try (InputSourceDataInputStream input = 
Daffodil.newInputSourceDataInputStream(fis)) {
 
-      JDOMInfosetOutputter outputter = Infoset.getJDOMInfosetOutputter();
+      JDOMInfosetOutputter outputter = Daffodil.newJDOMInfosetOutputter();
       ParseResult res = null;
       boolean err = false;
 
@@ -908,10 +903,10 @@ public class TestAPI {
     java.io.File file = getResource("/test/api/myData.dat");
     java.io.FileInputStream fisDP = new java.io.FileInputStream(file);
     java.io.FileInputStream fisSAX = new java.io.FileInputStream(file);
-    try (InputSourceDataInputStream disDP = 
Infoset.getInputSourceDataInputStream(fisDP)) {
-      InputSourceDataInputStream disSAX = 
Infoset.getInputSourceDataInputStream(fisSAX);
+    try (InputSourceDataInputStream disDP = 
Daffodil.newInputSourceDataInputStream(fisDP)) {
+      InputSourceDataInputStream disSAX = 
Daffodil.newInputSourceDataInputStream(fisSAX);
       ByteArrayOutputStream xmlBos = new ByteArrayOutputStream();
-      InfosetOutputter outputter = Infoset.getXMLTextInfosetOutputter(xmlBos, 
true);
+      InfosetOutputter outputter = Daffodil.newXMLTextInfosetOutputter(xmlBos, 
true);
       ParseResult res = dp.parse(disDP, outputter);
       String infosetDPString = xmlBos.toString();
 
@@ -923,11 +918,11 @@ public class TestAPI {
       parseXMLReader.setContentHandler(contentHandler);
       parseXMLReader.setErrorHandler(errorHandler);
       
parseXMLReader.setProperty(DaffodilParseXMLReader.DAFFODIL_SAX_URN_BLOBDIRECTORY,
-          Paths.get(System.getProperty("java.io.tmpdir")));
+        Paths.get(System.getProperty("java.io.tmpdir")));
       
parseXMLReader.setProperty(DaffodilParseXMLReader.DAFFODIL_SAX_URN_BLOBPREFIX,
-          "daffodil-sapi-");
+        "daffodil-sapi-");
       
parseXMLReader.setProperty(DaffodilParseXMLReader.DAFFODIL_SAX_URN_BLOBSUFFIX,
-          ".sax.blob");
+        ".sax.blob");
       parseXMLReader.parse(disSAX);
       ParseResult resSAX = (ParseResult) 
parseXMLReader.getProperty(DaffodilParseXMLReader.DAFFODIL_SAX_URN_PARSERESULT);
       boolean err = errorHandler.isError();
@@ -947,7 +942,7 @@ public class TestAPI {
       DaffodilUnparseContentHandler unparseContentHandler = 
dp.newContentHandlerInstance(wbc);
       try {
         org.xml.sax.XMLReader unparseXMLReader = 
javax.xml.parsers.SAXParserFactory.newInstance()
-            .newSAXParser().getXMLReader();
+          .newSAXParser().getXMLReader();
         setSecureDefaults(unparseXMLReader);
         unparseXMLReader.setContentHandler(unparseContentHandler);
         unparseXMLReader.setErrorHandler(errorHandler);
@@ -982,14 +977,14 @@ public class TestAPI {
 
     java.io.File file = getResource("/test/api/myDataBroken.dat");
     java.io.FileInputStream fis = new java.io.FileInputStream(file);
-    try (InputSourceDataInputStream dis = 
Infoset.getInputSourceDataInputStream(fis)) {
+    try (InputSourceDataInputStream dis = 
Daffodil.newInputSourceDataInputStream(fis)) {
 
       org.jdom2.input.sax.SAXHandler contentHandler = new 
org.jdom2.input.sax.SAXHandler();
       SAXErrorHandlerForAPITest errorHandler = new SAXErrorHandlerForAPITest();
       parseXMLReader.setContentHandler(contentHandler);
       parseXMLReader.setErrorHandler(errorHandler);
       
parseXMLReader.setProperty(DaffodilParseXMLReader.DAFFODIL_SAX_URN_BLOBDIRECTORY,
-          Paths.get(System.getProperty("java.io.tmpdir")));
+        Paths.get(System.getProperty("java.io.tmpdir")));
       
parseXMLReader.setProperty(DaffodilParseXMLReader.DAFFODIL_SAX_URN_BLOBPREFIX, 
"daffodil-sapi-");
       
parseXMLReader.setProperty(DaffodilParseXMLReader.DAFFODIL_SAX_URN_BLOBSUFFIX, 
".sax.blob");
       parseXMLReader.parse(dis);
@@ -1031,8 +1026,8 @@ public class TestAPI {
 
     java.io.File file = getResource("/test/api/myData.dat");
     java.io.FileInputStream fis = new java.io.FileInputStream(file);
-    try (InputSourceDataInputStream dis = 
Infoset.getInputSourceDataInputStream(fis)) {
-      JDOMInfosetOutputter outputter = Infoset.getJDOMInfosetOutputter();
+    try (InputSourceDataInputStream dis = 
Daffodil.newInputSourceDataInputStream(fis)) {
+      JDOMInfosetOutputter outputter = Daffodil.newJDOMInfosetOutputter();
       ParseResult res = dp.parse(dis, outputter);
       boolean err = res.isError();
       assertFalse(err);
@@ -1068,7 +1063,7 @@ public class TestAPI {
     DaffodilUnparseContentHandler unparseContentHandler = 
dp.newContentHandlerInstance(wbc);
     try {
       org.xml.sax.XMLReader unparseXMLReader = 
javax.xml.parsers.SAXParserFactory.newInstance()
-          .newSAXParser().getXMLReader();
+        .newSAXParser().getXMLReader();
       setSecureDefaults(unparseXMLReader);
       unparseXMLReader.setContentHandler(unparseContentHandler);
       unparseXMLReader.setFeature(SAX_NAMESPACES_FEATURE, true);
@@ -1175,8 +1170,8 @@ public class TestAPI {
     {
       byte[] ba = {};
       ByteBuffer bb = ByteBuffer.wrap(ba);
-      try (InputSourceDataInputStream dis = 
Infoset.getInputSourceDataInputStream(bb)) {
-        JDOMInfosetOutputter outputter = Infoset.getJDOMInfosetOutputter();
+      try (InputSourceDataInputStream dis = 
Daffodil.newInputSourceDataInputStream(bb)) {
+        JDOMInfosetOutputter outputter = Daffodil.newJDOMInfosetOutputter();
         ParseResult res = dp.parse(dis, outputter);
         assertFalse(res.isError());
         org.jdom2.Document doc = outputter.getResult();
@@ -1196,8 +1191,8 @@ public class TestAPI {
     {
       byte[] ba = {};
       ByteBuffer bb = ByteBuffer.wrap(ba);
-      try (InputSourceDataInputStream dis = 
Infoset.getInputSourceDataInputStream(bb)) {
-        JDOMInfosetOutputter outputter = Infoset.getJDOMInfosetOutputter();
+      try (InputSourceDataInputStream dis = 
Daffodil.newInputSourceDataInputStream(bb)) {
+        JDOMInfosetOutputter outputter = Daffodil.newJDOMInfosetOutputter();
         ParseResult res = dp.parse(dis, outputter);
         assertFalse(res.isError());
         org.jdom2.Document doc = outputter.getResult();
@@ -1215,12 +1210,12 @@ public class TestAPI {
 
     String expectedData = "42";
     TestInfosetEvent expectedEvents[] = {
-        TestInfosetEvent.startDocument(),
-        TestInfosetEvent.startComplex("e1", "http://example.com";),
-        TestInfosetEvent.startSimple("e2", "http://example.com";, expectedData),
-        TestInfosetEvent.endSimple("e2", "http://example.com";),
-        TestInfosetEvent.endComplex("e1", "http://example.com";),
-        TestInfosetEvent.endDocument()
+      TestInfosetEvent.startDocument(),
+      TestInfosetEvent.startComplex("e1", "http://example.com";),
+      TestInfosetEvent.startSimple("e2", "http://example.com";, expectedData),
+      TestInfosetEvent.endSimple("e2", "http://example.com";),
+      TestInfosetEvent.endComplex("e1", "http://example.com";),
+      TestInfosetEvent.endDocument()
     };
 
     org.apache.daffodil.api.Compiler c = Daffodil.compiler();
@@ -1230,7 +1225,7 @@ public class TestAPI {
 
     java.io.File file = getResource("/test/api/myData.dat");
     java.io.FileInputStream fis = new java.io.FileInputStream(file);
-    try (InputSourceDataInputStream dis = 
Infoset.getInputSourceDataInputStream(fis)) {
+    try (InputSourceDataInputStream dis = 
Daffodil.newInputSourceDataInputStream(fis)) {
       TestInfosetOutputter outputter = new TestInfosetOutputter();
       ParseResult pr = dp.parse(dis, outputter);
 
@@ -1276,7 +1271,7 @@ public class TestAPI {
   public void testAPINullXMLTextEscapeStyle() throws IOException, 
ClassNotFoundException {
     ByteArrayOutputStream xmlBos = new ByteArrayOutputStream();
     try {
-      InfosetOutputter outputter = Infoset.getXMLTextInfosetOutputter(xmlBos, 
true, null);
+      InfosetOutputter outputter = Daffodil.newXMLTextInfosetOutputter(xmlBos, 
true, null);
     } catch (IllegalArgumentException e) {
       String msg = e.getMessage().toLowerCase();
       assertTrue(msg.contains("unrecognized"));
@@ -1326,7 +1321,7 @@ public class TestAPI {
   }
 
   public void doXMLTextEscapeStyleTest(String expect, String data, String 
schemaType)
-      throws Exception {
+    throws Exception {
 
     org.apache.daffodil.api.Compiler c = Daffodil.compiler();
     java.io.File schemaFile = getResource("/test/api/mySchemaCDATA.dfdl.xsd");
@@ -1334,9 +1329,9 @@ public class TestAPI {
     DataProcessor dp = pf.onPath("/");
 
     ByteArrayInputStream is = new 
ByteArrayInputStream(data.getBytes(StandardCharsets.UTF_8));
-    try (InputSourceDataInputStream input = 
Infoset.getInputSourceDataInputStream(is)) {
+    try (InputSourceDataInputStream input = 
Daffodil.newInputSourceDataInputStream(is)) {
       ByteArrayOutputStream bosDP = new ByteArrayOutputStream();
-      InfosetOutputter outputter = Infoset.getXMLTextInfosetOutputter(bosDP, 
true, XMLTextEscapeStyle.CDATA);
+      InfosetOutputter outputter = Daffodil.newXMLTextInfosetOutputter(bosDP, 
true, XMLTextEscapeStyle.CDATA);
       ParseResult res = dp.parse(input, outputter);
       boolean err = res.isError();
 
@@ -1360,14 +1355,14 @@ public class TestAPI {
 
     byte[] data = new byte[]{0x00, 0x00, 0x00, 0x04, 0x01, 0x02, 0x03, 0x04};
     ByteArrayInputStream bis = new ByteArrayInputStream(data);
-    try (InputSourceDataInputStream input = 
Infoset.getInputSourceDataInputStream(data)) {
+    try (InputSourceDataInputStream input = 
Daffodil.newInputSourceDataInputStream(data)) {
 
       Path blobRoot = Paths.get(System.getProperty("java.io.tmpdir"), 
"daffodil", "api");
       Files.createDirectories(blobRoot);
       Path blobDir = Files.createTempDirectory(blobRoot, "blob-");
 
       ByteArrayOutputStream bos = new ByteArrayOutputStream();
-      InfosetOutputter output = Infoset.getXMLTextInfosetOutputter(bos, true);
+      InfosetOutputter output = Daffodil.newXMLTextInfosetOutputter(bos, true);
       output.setBlobAttributes(blobDir, "pre-", ".suf");
 
       ParseResult res = dp.parse(input, output);
@@ -1404,8 +1399,8 @@ public class TestAPI {
 
     java.io.File file = getResource("/test/api/myData16.dat");
     java.io.FileInputStream fis = new java.io.FileInputStream(file);
-    try (InputSourceDataInputStream dis = 
Infoset.getInputSourceDataInputStream(fis)) {
-      JDOMInfosetOutputter outputter = Infoset.getJDOMInfosetOutputter();
+    try (InputSourceDataInputStream dis = 
Daffodil.newInputSourceDataInputStream(fis)) {
+      JDOMInfosetOutputter outputter = Daffodil.newJDOMInfosetOutputter();
       ParseResult res = dp.parse(dis, outputter);
       boolean err = res.isError();
       assertFalse(err);
@@ -1414,7 +1409,7 @@ public class TestAPI {
 
       java.io.ByteArrayOutputStream bos = new java.io.ByteArrayOutputStream();
       java.nio.channels.WritableByteChannel wbc = 
java.nio.channels.Channels.newChannel(bos);
-      InfosetInputter inputter = 
Infoset.getJDOMInfosetInputter(outputter.getResult());
+      InfosetInputter inputter = 
Daffodil.newJDOMInfosetInputter(outputter.getResult());
       UnparseResult res2 = dp.unparse(inputter, wbc);
       err = res2.isError();
       assertFalse(err);
@@ -1452,8 +1447,8 @@ public class TestAPI {
 
     java.io.File file = getResource("/test/api/myDataBroken.dat");
     java.io.FileInputStream fis = new java.io.FileInputStream(file);
-    try (InputSourceDataInputStream dis = 
Infoset.getInputSourceDataInputStream(fis)) {
-      JDOMInfosetOutputter outputter = Infoset.getJDOMInfosetOutputter();
+    try (InputSourceDataInputStream dis = 
Daffodil.newInputSourceDataInputStream(fis)) {
+      JDOMInfosetOutputter outputter = Daffodil.newJDOMInfosetOutputter();
       ParseResult res = dp.parse(dis, outputter);
       assertTrue(res.isError());
 
@@ -1473,8 +1468,8 @@ public class TestAPI {
 
     java.io.File file = getResource("/test/api/myDataBroken.dat");
     java.io.FileInputStream fis = new java.io.FileInputStream(file);
-    try (InputSourceDataInputStream dis = 
Infoset.getInputSourceDataInputStream(fis)) {
-      JDOMInfosetOutputter outputter = Infoset.getJDOMInfosetOutputter();
+    try (InputSourceDataInputStream dis = 
Daffodil.newInputSourceDataInputStream(fis)) {
+      JDOMInfosetOutputter outputter = Daffodil.newJDOMInfosetOutputter();
       ParseResult res = dp.parse(dis, outputter);
       assertTrue(res.isError());
 
@@ -1493,14 +1488,14 @@ public class TestAPI {
 
     java.io.File file = getResource("/test/api/myData.dat");
     java.io.FileInputStream fis = new java.io.FileInputStream(file);
-    InputSourceDataInputStream dis = 
Infoset.getInputSourceDataInputStream(fis);
+    InputSourceDataInputStream dis = 
Daffodil.newInputSourceDataInputStream(fis);
     ByteArrayOutputStream bos = new ByteArrayOutputStream();
-    InfosetOutputter outputter = Infoset.getJsonInfosetOutputter(bos, false);
+    InfosetOutputter outputter = Daffodil.newJsonInfosetOutputter(bos, false);
     ParseResult res = dp.parse(dis, outputter);
     assertFalse(res.isError());
 
     java.io.ByteArrayInputStream input = new 
java.io.ByteArrayInputStream(bos.toByteArray());
-    InfosetInputter inputter = Infoset.getJsonInfosetInputter(input);
+    InfosetInputter inputter = Daffodil.newJsonInfosetInputter(input);
     java.io.ByteArrayOutputStream bos2 = new java.io.ByteArrayOutputStream();
     java.nio.channels.WritableByteChannel wbc = 
java.nio.channels.Channels.newChannel(bos2);
     UnparseResult res2 = dp.unparse(inputter, wbc);
@@ -1519,7 +1514,7 @@ public class TestAPI {
     String badJsonInfoset = "{\"e1\": {\"e2\": {\"unexpected\": \"object\"}}}";
 
     java.io.ByteArrayInputStream input = new 
java.io.ByteArrayInputStream(badJsonInfoset.getBytes("UTF-8"));
-    InfosetInputter inputter = Infoset.getJsonInfosetInputter(input);
+    InfosetInputter inputter = Daffodil.newJsonInfosetInputter(input);
     java.io.ByteArrayOutputStream bos2 = new java.io.ByteArrayOutputStream();
     java.nio.channels.WritableByteChannel wbc = 
java.nio.channels.Channels.newChannel(bos2);
     UnparseResult res = dp.unparse(inputter, wbc);
diff --git 
a/daffodil-core/src/test/java/org/apache/daffodil/jexample/TestCustomDebuggerAPI.java
 
b/daffodil-core/src/test/java/org/apache/daffodil/jexample/TestCustomDebuggerAPI.java
index f7a52c6e9..e42803040 100644
--- 
a/daffodil-core/src/test/java/org/apache/daffodil/jexample/TestCustomDebuggerAPI.java
+++ 
b/daffodil-core/src/test/java/org/apache/daffodil/jexample/TestCustomDebuggerAPI.java
@@ -28,8 +28,6 @@ import org.apache.daffodil.runtime1.processors.parsers.Parser;
 import org.apache.daffodil.lib.util.Misc;
 import org.junit.Test;
 
-import org.apache.daffodil.api.infoset.Infoset;
-
 import java.io.IOException;
 import java.net.URI;
 
@@ -66,13 +64,13 @@ public class TestCustomDebuggerAPI {
     URI schemaFileName = 
Misc.getRequiredResource("/test/api/mySchema1.dfdl.xsd");
     ProcessorFactory pf = c.compileSource(schemaFileName);
     DataProcessor dp = pf.onPath("/")
-        .withDebugger(dbg)
-        .withDebugging(true);
+      .withDebugger(dbg)
+      .withDebugging(true);
 
     String file = 
Misc.getRequiredResource("/test/api/myData2.dat").toURL().getFile();
     java.io.FileInputStream fis = new java.io.FileInputStream(file);
-    try (InputSourceDataInputStream dis = 
Infoset.getInputSourceDataInputStream(fis)) {
-      ParseResult res = dp.parse(dis, Infoset.getNullInfosetOutputter());
+    try (InputSourceDataInputStream dis = 
Daffodil.newInputSourceDataInputStream(fis)) {
+      ParseResult res = dp.parse(dis, Daffodil.newNullInfosetOutputter());
 
       assertEquals(6, dbg.nodes);
       assertTrue(dbg.inited);
diff --git 
a/daffodil-core/src/test/java/org/apache/daffodil/jexample/TestInfosetEvent.java
 
b/daffodil-core/src/test/java/org/apache/daffodil/jexample/TestInfosetEvent.java
index 0fc95a55c..00af4c89d 100644
--- 
a/daffodil-core/src/test/java/org/apache/daffodil/jexample/TestInfosetEvent.java
+++ 
b/daffodil-core/src/test/java/org/apache/daffodil/jexample/TestInfosetEvent.java
@@ -18,14 +18,13 @@
 package org.apache.daffodil.jexample;
 
 
-import org.apache.daffodil.api.infoset.Infoset;
-import scala.Option;
+import org.apache.daffodil.api.Daffodil;
 
-import static 
org.apache.daffodil.api.infoset.Infoset.InfosetInputterEventType.*;
+import static org.apache.daffodil.api.Daffodil.InfosetInputterEventType.*;
 
 public class TestInfosetEvent {
 
-  Infoset.InfosetInputterEventType eventType;
+  Daffodil.InfosetInputterEventType eventType;
   String localName;
   String namespaceURI;
   String simpleText;
@@ -34,7 +33,7 @@ public class TestInfosetEvent {
   // nullable and has the given value
   Boolean isNilled;
 
-  public TestInfosetEvent(Infoset.InfosetInputterEventType _eventType, String 
_localName, String _namespaceURI, String _simpleText, Boolean _isNilled) {
+  public TestInfosetEvent(Daffodil.InfosetInputterEventType _eventType, String 
_localName, String _namespaceURI, String _simpleText, Boolean _isNilled) {
     this.eventType = _eventType;
     this.localName = _localName;
     this.namespaceURI = _namespaceURI;
diff --git 
a/daffodil-core/src/test/java/org/apache/daffodil/jexample/TestInfosetInputter.java
 
b/daffodil-core/src/test/java/org/apache/daffodil/jexample/TestInfosetInputter.java
index 1edafd213..29a63a63d 100644
--- 
a/daffodil-core/src/test/java/org/apache/daffodil/jexample/TestInfosetInputter.java
+++ 
b/daffodil-core/src/test/java/org/apache/daffodil/jexample/TestInfosetInputter.java
@@ -17,7 +17,7 @@
 
 package org.apache.daffodil.jexample;
 
-import org.apache.daffodil.api.infoset.Infoset;
+import org.apache.daffodil.api.Daffodil;
 import org.apache.daffodil.api.infoset.InfosetInputter;
 import org.apache.daffodil.runtime1.dpath.NodeInfo;
 
@@ -34,7 +34,7 @@ public class TestInfosetInputter extends InfosetInputter {
   }
 
   @Override
-  public Infoset.InfosetInputterEventType getEventType() {
+  public Daffodil.InfosetInputterEventType getEventType() {
     return events[curEventIndex].eventType;
   }
 
diff --git 
a/daffodil-core/src/test/java/org/apache/daffodil/jexample/ValidatorApiExample.java
 
b/daffodil-core/src/test/java/org/apache/daffodil/jexample/ValidatorApiExample.java
index 06c68c638..000971110 100644
--- 
a/daffodil-core/src/test/java/org/apache/daffodil/jexample/ValidatorApiExample.java
+++ 
b/daffodil-core/src/test/java/org/apache/daffodil/jexample/ValidatorApiExample.java
@@ -22,21 +22,17 @@ import org.apache.daffodil.api.Diagnostic;
 import org.apache.daffodil.api.ParseResult;
 import org.apache.daffodil.api.DataProcessor;
 import org.apache.daffodil.api.ProcessorFactory;
-import org.apache.daffodil.api.infoset.Infoset;
 import org.apache.daffodil.api.infoset.InfosetOutputter;
 import org.apache.daffodil.api.infoset.JDOMInfosetOutputter;
 import org.apache.daffodil.api.InputSourceDataInputStream;
-import org.apache.daffodil.api.validation.Validator;
 import org.apache.daffodil.api.validation.ValidatorInitializationException;
 import org.apache.daffodil.api.validation.ValidatorNotRegisteredException;
-import org.apache.daffodil.api.validation.Validators;
 import org.apache.daffodil.jexample.validation.FailingValidator;
 import org.apache.daffodil.jexample.validation.PassingValidator;
 import org.junit.Test;
 
 import java.io.ByteArrayInputStream;
 import java.io.IOException;
-import java.util.Properties;
 
 import static org.junit.Assert.*;
 
@@ -58,8 +54,8 @@ public class ValidatorApiExample {
 
     java.io.File file = getResource("/test/api/myData5.dat");
     java.io.FileInputStream fis = new java.io.FileInputStream(file);
-    try (InputSourceDataInputStream dis = 
Infoset.getInputSourceDataInputStream(fis)) {
-      InfosetOutputter outputter = Infoset.getJDOMInfosetOutputter();
+    try (InputSourceDataInputStream dis = 
Daffodil.newInputSourceDataInputStream(fis)) {
+      InfosetOutputter outputter = Daffodil.newJDOMInfosetOutputter();
       ParseResult res = dp.parse(dis, outputter);
       assertFalse(res.isValidationError());
     }
@@ -74,8 +70,8 @@ public class ValidatorApiExample {
 
     java.io.File file = getResource("/test/api/myData.dat");
     java.io.FileInputStream fis = new java.io.FileInputStream(file);
-    try (InputSourceDataInputStream dis = 
Infoset.getInputSourceDataInputStream(fis)) {
-      InfosetOutputter outputter = Infoset.getJDOMInfosetOutputter();
+    try (InputSourceDataInputStream dis = 
Daffodil.newInputSourceDataInputStream(fis)) {
+      InfosetOutputter outputter = Daffodil.newJDOMInfosetOutputter();
       ParseResult res = dp.parse(dis, outputter);
 
       assertTrue(res.isValidationError());
@@ -94,8 +90,8 @@ public class ValidatorApiExample {
     DataProcessor dp = dp1.withValidation("xerces", schemaFile.toURI());
 
     java.io.InputStream fis = new ByteArrayInputStream("0".getBytes());
-    try (InputSourceDataInputStream dis = 
Infoset.getInputSourceDataInputStream(fis)) {
-      JDOMInfosetOutputter outputter = Infoset.getJDOMInfosetOutputter();
+    try (InputSourceDataInputStream dis = 
Daffodil.newInputSourceDataInputStream(fis)) {
+      JDOMInfosetOutputter outputter = Daffodil.newJDOMInfosetOutputter();
       ParseResult res = dp.parse(dis, outputter);
 
       assertTrue(res.isValidationError());
diff --git 
a/daffodil-core/src/test/java/org/apache/daffodil/jexample/ValidatorSpiExample.java
 
b/daffodil-core/src/test/java/org/apache/daffodil/jexample/ValidatorSpiExample.java
index 9acc5c8ad..8fc184dd1 100644
--- 
a/daffodil-core/src/test/java/org/apache/daffodil/jexample/ValidatorSpiExample.java
+++ 
b/daffodil-core/src/test/java/org/apache/daffodil/jexample/ValidatorSpiExample.java
@@ -17,7 +17,6 @@
 
 package org.apache.daffodil.jexample;
 
-import org.apache.daffodil.api.infoset.Infoset;
 import org.apache.daffodil.api.validation.Validators;
 import org.apache.daffodil.jexample.validation.FailingValidator;
 import org.apache.daffodil.jexample.validation.PassingValidator;
@@ -52,8 +51,8 @@ public class ValidatorSpiExample {
 
     java.io.File file = getResource("/test/api/myData5.dat");
     java.io.FileInputStream fis = new java.io.FileInputStream(file);
-    try (InputSourceDataInputStream dis = 
Infoset.getInputSourceDataInputStream(fis)) {
-      JDOMInfosetOutputter outputter = Infoset.getJDOMInfosetOutputter();
+    try (InputSourceDataInputStream dis = 
Daffodil.newInputSourceDataInputStream(fis)) {
+      JDOMInfosetOutputter outputter = Daffodil.newJDOMInfosetOutputter();
       ParseResult res = dp.parse(dis, outputter);
 
       assertFalse(res.isValidationError());
@@ -71,8 +70,8 @@ public class ValidatorSpiExample {
 
     java.io.File file = getResource("/test/api/myData.dat");
     java.io.FileInputStream fis = new java.io.FileInputStream(file);
-    try (InputSourceDataInputStream dis = 
Infoset.getInputSourceDataInputStream(fis)) {
-      JDOMInfosetOutputter outputter = Infoset.getJDOMInfosetOutputter();
+    try (InputSourceDataInputStream dis = 
Daffodil.newInputSourceDataInputStream(fis)) {
+      JDOMInfosetOutputter outputter = Daffodil.newJDOMInfosetOutputter();
       ParseResult res = dp.parse(dis, outputter);
 
       assertTrue(res.isValidationError());
diff --git 
a/daffodil-core/src/test/scala/org/apache/daffodil/core/processor/TestSAXParseUnparseAPI.scala
 
b/daffodil-core/src/test/scala/org/apache/daffodil/core/processor/TestSAXParseUnparseAPI.scala
index 92b059511..569d13481 100644
--- 
a/daffodil-core/src/test/scala/org/apache/daffodil/core/processor/TestSAXParseUnparseAPI.scala
+++ 
b/daffodil-core/src/test/scala/org/apache/daffodil/core/processor/TestSAXParseUnparseAPI.scala
@@ -21,7 +21,7 @@ import java.io.ByteArrayInputStream
 import java.io.ByteArrayOutputStream
 
 import org.apache.daffodil.api
-import org.apache.daffodil.api.infoset.Infoset.InfosetInputterEventType
+import org.apache.daffodil.api.Daffodil.InfosetInputterEventType
 import org.apache.daffodil.io.InputSourceDataInputStream
 import org.apache.daffodil.lib.xml.DaffodilSAXParserFactory
 import org.apache.daffodil.lib.xml.XMLUtils
diff --git 
a/daffodil-core/src/test/scala/org/apache/daffodil/sexample/TestAPI.scala 
b/daffodil-core/src/test/scala/org/apache/daffodil/sexample/TestAPI.scala
index 3b238461e..d2f91d6d4 100644
--- a/daffodil-core/src/test/scala/org/apache/daffodil/sexample/TestAPI.scala
+++ b/daffodil-core/src/test/scala/org/apache/daffodil/sexample/TestAPI.scala
@@ -40,7 +40,6 @@ import org.apache.daffodil.api.ParseResult
 import org.apache.daffodil.api.exceptions.DaffodilUnhandledSAXException
 import org.apache.daffodil.api.exceptions.DaffodilUnparseErrorSAXException
 import org.apache.daffodil.api.exceptions.ExternalVariableException
-import org.apache.daffodil.api.infoset.Infoset
 import org.apache.daffodil.api.infoset.XMLTextEscapeStyle
 import org.apache.daffodil.lib.exceptions.UsageException
 import org.apache.daffodil.sapi.SAXErrorHandlerForSAPITest
@@ -153,8 +152,8 @@ class TestAPI {
 
     val file = getResource("/test/api/myData.dat")
     val fis = new java.io.FileInputStream(file)
-    Using.resource(Infoset.getInputSourceDataInputStream(fis)) { input =>
-      val outputter = Infoset.getScalaXMLInfosetOutputter()
+    Using.resource(Daffodil.newInputSourceDataInputStream(fis)) { input =>
+      val outputter = Daffodil.newScalaXMLInfosetOutputter()
       val res = dp.parse(input, outputter)
       val err = res.isError()
       assertFalse(err)
@@ -168,7 +167,7 @@ class TestAPI {
 
       val bos = new java.io.ByteArrayOutputStream()
       val wbc = java.nio.channels.Channels.newChannel(bos)
-      val inputter = Infoset.getScalaXMLInfosetInputter(outputter.getResult())
+      val inputter = Daffodil.newScalaXMLInfosetInputter(outputter.getResult())
       val res2 = dp.unparse(inputter, wbc)
       val err2 = res2.isError()
       assertFalse(err2)
@@ -206,8 +205,8 @@ class TestAPI {
     // and byte buffer.
     val ba = FileUtils.readFileToByteArray(file)
     val bb = ByteBuffer.wrap(ba)
-    Using.resource(Infoset.getInputSourceDataInputStream(bb)) { input =>
-      val outputter = Infoset.getScalaXMLInfosetOutputter()
+    Using.resource(Daffodil.newInputSourceDataInputStream(bb)) { input =>
+      val outputter = Daffodil.newScalaXMLInfosetOutputter()
       val res = parser.parse(input, outputter)
       val err = res.isError()
       assertFalse(err)
@@ -221,7 +220,7 @@ class TestAPI {
 
       val bos = new java.io.ByteArrayOutputStream()
       val wbc = java.nio.channels.Channels.newChannel(bos)
-      val inputter = Infoset.getScalaXMLInfosetInputter(outputter.getResult())
+      val inputter = Daffodil.newScalaXMLInfosetInputter(outputter.getResult())
       val res2 = dp.unparse(inputter, wbc)
       val err2 = res2.isError()
       assertFalse(err2)
@@ -242,8 +241,8 @@ class TestAPI {
     // the constructor for creating an InputSourceDataInputStream from a byte 
array
     // and byte buffer.
     val ba = FileUtils.readFileToByteArray(file)
-    Using.resource(Infoset.getInputSourceDataInputStream(ba)) { input =>
-      val outputter = Infoset.getScalaXMLInfosetOutputter()
+    Using.resource(Daffodil.newInputSourceDataInputStream(ba)) { input =>
+      val outputter = Daffodil.newScalaXMLInfosetOutputter()
       val res = dp.parse(input, outputter)
 
       // TODO: Need scala API for status enum
@@ -283,8 +282,8 @@ class TestAPI {
 
     val file = getResource("/test/api/myData16.dat")
     val fis = new java.io.FileInputStream(file)
-    Using.resource(Infoset.getInputSourceDataInputStream(fis)) { input =>
-      val outputter = Infoset.getScalaXMLInfosetOutputter()
+    Using.resource(Daffodil.newInputSourceDataInputStream(fis)) { input =>
+      val outputter = Daffodil.newScalaXMLInfosetOutputter()
       val res = dp.parse(input, outputter)
       val err = res.isError()
       assertFalse(err)
@@ -293,7 +292,7 @@ class TestAPI {
 
       val bos = new java.io.ByteArrayOutputStream()
       val wbc = java.nio.channels.Channels.newChannel(bos)
-      val inputter = Infoset.getScalaXMLInfosetInputter(outputter.getResult())
+      val inputter = Daffodil.newScalaXMLInfosetInputter(outputter.getResult())
       val res2 = dp.unparse(inputter, wbc)
       val err2 = res2.isError()
       assertFalse(err2)
@@ -324,8 +323,8 @@ class TestAPI {
 
     val file = getResource("/test/api/myData16.dat")
     val fis = new java.io.FileInputStream(file)
-    Using.resource(Infoset.getInputSourceDataInputStream(fis)) { input =>
-      val outputter = Infoset.getScalaXMLInfosetOutputter()
+    Using.resource(Daffodil.newInputSourceDataInputStream(fis)) { input =>
+      val outputter = Daffodil.newScalaXMLInfosetOutputter()
       val res = parser.parse(input, outputter)
       val err = res.isError()
       assertFalse(err)
@@ -334,7 +333,7 @@ class TestAPI {
 
       val bos = new java.io.ByteArrayOutputStream()
       val wbc = java.nio.channels.Channels.newChannel(bos)
-      val inputter = Infoset.getScalaXMLInfosetInputter(outputter.getResult())
+      val inputter = Daffodil.newScalaXMLInfosetInputter(outputter.getResult())
       val res2 = dp.unparse(inputter, wbc)
       val err2 = res2.isError()
       assertFalse(err2)
@@ -352,8 +351,8 @@ class TestAPI {
 
     val file = getResource("/test/api/myData2.dat")
     val fis = new java.io.FileInputStream(file)
-    Using.resource(Infoset.getInputSourceDataInputStream(fis)) { input =>
-      val outputter = Infoset.getScalaXMLInfosetOutputter()
+    Using.resource(Daffodil.newInputSourceDataInputStream(fis)) { input =>
+      val outputter = Daffodil.newScalaXMLInfosetOutputter()
       val res = dp.parse(input, outputter)
       val err = res.isError()
       assertFalse(err)
@@ -362,7 +361,7 @@ class TestAPI {
 
       val bos = new java.io.ByteArrayOutputStream()
       val wbc = java.nio.channels.Channels.newChannel(bos)
-      val inputter = Infoset.getScalaXMLInfosetInputter(outputter.getResult())
+      val inputter = Daffodil.newScalaXMLInfosetInputter(outputter.getResult())
       val res2 = dp.unparse(inputter, wbc)
       val err2 = res2.isError()
       assertFalse(err2)
@@ -382,8 +381,8 @@ class TestAPI {
     val file = getResource("/test/api/myData3.dat"); // contains 5
     // bytes
     val fis = new java.io.FileInputStream(file)
-    Using.resource(Infoset.getInputSourceDataInputStream(fis)) { input =>
-      val outputter = Infoset.getScalaXMLInfosetOutputter()
+    Using.resource(Daffodil.newInputSourceDataInputStream(fis)) { input =>
+      val outputter = Daffodil.newScalaXMLInfosetOutputter()
       val res = dp.parse(input, outputter)
       val err = res.isError()
       assertFalse(err)
@@ -392,7 +391,7 @@ class TestAPI {
 
       val bos = new java.io.ByteArrayOutputStream()
       val wbc = java.nio.channels.Channels.newChannel(bos)
-      val inputter = Infoset.getScalaXMLInfosetInputter(outputter.getResult())
+      val inputter = Daffodil.newScalaXMLInfosetInputter(outputter.getResult())
       val res2 = dp.unparse(inputter, wbc)
       val err2 = res2.isError()
       assertFalse(err2)
@@ -441,15 +440,15 @@ class TestAPI {
 
     val file = getResource("/test/api/01very_simple.txt")
     val fis = new java.io.FileInputStream(file)
-    Using.resource(Infoset.getInputSourceDataInputStream(fis)) { input =>
-      val outputter = Infoset.getScalaXMLInfosetOutputter()
+    Using.resource(Daffodil.newInputSourceDataInputStream(fis)) { input =>
+      val outputter = Daffodil.newScalaXMLInfosetOutputter()
       val res = dp.parse(input, outputter)
       val err = res.isError()
       assertFalse(err)
 
       val bos = new java.io.ByteArrayOutputStream()
       val wbc = java.nio.channels.Channels.newChannel(bos)
-      val inputter = Infoset.getScalaXMLInfosetInputter(outputter.getResult())
+      val inputter = Daffodil.newScalaXMLInfosetInputter(outputter.getResult())
       val res2 = dp.unparse(inputter, wbc)
       val err2 = res2.isError()
       assertFalse(err2)
@@ -476,15 +475,15 @@ class TestAPI {
 
     val file = getResource("/test/api/01very_simple.txt")
     val fis = new java.io.FileInputStream(file)
-    Using.resource(Infoset.getInputSourceDataInputStream(fis)) { input =>
-      val outputter = Infoset.getScalaXMLInfosetOutputter()
+    Using.resource(Daffodil.newInputSourceDataInputStream(fis)) { input =>
+      val outputter = Daffodil.newScalaXMLInfosetOutputter()
       val res = dp.parse(input, outputter)
       val err = res.isError()
       assertFalse(err)
 
       val bos = new java.io.ByteArrayOutputStream()
       val wbc = java.nio.channels.Channels.newChannel(bos)
-      val inputter = Infoset.getScalaXMLInfosetInputter(outputter.getResult())
+      val inputter = Daffodil.newScalaXMLInfosetInputter(outputter.getResult())
       val res2 = dp.unparse(inputter, wbc)
       val err2 = res2.isError()
       assertFalse(err2)
@@ -507,8 +506,8 @@ class TestAPI {
 
     val file = getResource("/test/api/01very_simple.txt")
     val fis = new java.io.FileInputStream(file)
-    Using.resource(Infoset.getInputSourceDataInputStream(fis)) { input =>
-      val outputter = Infoset.getScalaXMLInfosetOutputter()
+    Using.resource(Daffodil.newInputSourceDataInputStream(fis)) { input =>
+      val outputter = Daffodil.newScalaXMLInfosetOutputter()
       val res = dp.parse(input, outputter)
       val err = res.isError()
       assertFalse(err)
@@ -517,7 +516,7 @@ class TestAPI {
 
       val bos1 = new java.io.ByteArrayOutputStream()
       val wbc1 = java.nio.channels.Channels.newChannel(bos1)
-      val inputter1 = Infoset.getScalaXMLInfosetInputter(node1)
+      val inputter1 = Daffodil.newScalaXMLInfosetInputter(node1)
       val res2 = dp.unparse(inputter1, wbc1)
       val err2 = res2.isError()
       assertFalse(err2)
@@ -527,7 +526,7 @@ class TestAPI {
 
       val bos2 = new java.io.ByteArrayOutputStream()
       val wbc2 = java.nio.channels.Channels.newChannel(bos2)
-      val inputter2 = Infoset.getScalaXMLInfosetInputter(node2)
+      val inputter2 = Daffodil.newScalaXMLInfosetInputter(node2)
       val res3 = dp.unparse(inputter2, wbc2)
       val err3 = res3.isError()
       assertFalse(err3)
@@ -550,8 +549,8 @@ class TestAPI {
 
     val file = getResource("/test/api/myData4.dat")
     val fis = new java.io.FileInputStream(file)
-    Using.resource(Infoset.getInputSourceDataInputStream(fis)) { input =>
-      val outputter = Infoset.getScalaXMLInfosetOutputter()
+    Using.resource(Daffodil.newInputSourceDataInputStream(fis)) { input =>
+      val outputter = Daffodil.newScalaXMLInfosetOutputter()
       val res = dp.parse(input, outputter)
       val err = res.isError()
       assertFalse(err)
@@ -576,8 +575,8 @@ class TestAPI {
 
     val file = getResource("/test/api/myData5.dat")
     val fis = new java.io.FileInputStream(file)
-    Using.resource(Infoset.getInputSourceDataInputStream(fis)) { input =>
-      val outputter = Infoset.getScalaXMLInfosetOutputter()
+    Using.resource(Daffodil.newInputSourceDataInputStream(fis)) { input =>
+      val outputter = Daffodil.newScalaXMLInfosetOutputter()
       val res = dp.parse(input, outputter)
       val err = res.isError()
       assertFalse(err)
@@ -610,8 +609,8 @@ class TestAPI {
 
     val file = getResource("/test/api/myData.dat")
     val fis = new java.io.FileInputStream(file)
-    Using.resource(Infoset.getInputSourceDataInputStream(fis)) { input =>
-      val outputter = Infoset.getScalaXMLInfosetOutputter()
+    Using.resource(Daffodil.newInputSourceDataInputStream(fis)) { input =>
+      val outputter = Daffodil.newScalaXMLInfosetOutputter()
       val res = dp.parse(input, outputter)
       val err = res.isError()
       assertFalse(err)
@@ -643,8 +642,8 @@ class TestAPI {
 
     val file = getResource("/test/api/myData.dat")
     val fis = new java.io.FileInputStream(file)
-    Using.resource(Infoset.getInputSourceDataInputStream(fis)) { input =>
-      val outputter = Infoset.getScalaXMLInfosetOutputter()
+    Using.resource(Daffodil.newInputSourceDataInputStream(fis)) { input =>
+      val outputter = Daffodil.newScalaXMLInfosetOutputter()
       val res = dp.parse(input, outputter)
       val err = res.isError()
       assertFalse(err)
@@ -675,8 +674,8 @@ class TestAPI {
 
     val file = getResource("/test/api/myData.dat")
     val fis = new java.io.FileInputStream(file)
-    Using.resource(Infoset.getInputSourceDataInputStream(fis)) { input =>
-      val outputter = Infoset.getScalaXMLInfosetOutputter()
+    Using.resource(Daffodil.newInputSourceDataInputStream(fis)) { input =>
+      val outputter = Daffodil.newScalaXMLInfosetOutputter()
       val res = dp.parse(input, outputter)
       val err = res.isError()
       assertFalse(err)
@@ -741,7 +740,7 @@ class TestAPI {
     val bos = new java.io.ByteArrayOutputStream()
     val wbc = java.nio.channels.Channels.newChannel(bos)
 
-    val inputter = Infoset.getScalaXMLInfosetInputter(xml)
+    val inputter = Daffodil.newScalaXMLInfosetInputter(xml)
     val res = dp.unparse(inputter, wbc)
     val err = res.isError()
     assertTrue(err)
@@ -763,8 +762,8 @@ class TestAPI {
     val dp = reserializeDataProcessor(dp1).withValidation("daffodil")
     val file = getResource("/test/api/myData.dat")
     val fis = new java.io.FileInputStream(file)
-    Using.resource(Infoset.getInputSourceDataInputStream(fis)) { input =>
-      val outputter = Infoset.getScalaXMLInfosetOutputter()
+    Using.resource(Daffodil.newInputSourceDataInputStream(fis)) { input =>
+      val outputter = Daffodil.newScalaXMLInfosetOutputter()
       val res = dp.parse(input, outputter)
       assertTrue(res.isError())
       assertFalse(res.isProcessingError())
@@ -788,8 +787,8 @@ class TestAPI {
     val dp = dp1.withValidation("xerces", schemaFile.toURI)
     val file = getResource("/test/api/myData.dat")
     val fis = new java.io.FileInputStream(file)
-    Using.resource(Infoset.getInputSourceDataInputStream(fis)) { input =>
-      val outputter = Infoset.getScalaXMLInfosetOutputter()
+    Using.resource(Daffodil.newInputSourceDataInputStream(fis)) { input =>
+      val outputter = Daffodil.newScalaXMLInfosetOutputter()
       val res = dp.parse(input, outputter)
       assertTrue(res.isError())
       assertFalse(res.isProcessingError())
@@ -823,8 +822,8 @@ class TestAPI {
 
     val file = getResource("/test/api/myData2.dat")
     val fis = new java.io.FileInputStream(file)
-    Using.resource(Infoset.getInputSourceDataInputStream(fis)) { input =>
-      val outputter = Infoset.getScalaXMLInfosetOutputter
+    Using.resource(Daffodil.newInputSourceDataInputStream(fis)) { input =>
+      val outputter = Daffodil.newScalaXMLInfosetOutputter
       var res: ParseResult = null
       var err: Boolean = false
 
@@ -863,8 +862,8 @@ class TestAPI {
 
     val file = getResource("/test/api/myData19.dat")
     val fis = new java.io.FileInputStream(file)
-    Using.resource(Infoset.getInputSourceDataInputStream(fis)) { input =>
-      val outputter = Infoset.getScalaXMLInfosetOutputter()
+    Using.resource(Daffodil.newInputSourceDataInputStream(fis)) { input =>
+      val outputter = Daffodil.newScalaXMLInfosetOutputter()
       var res: ParseResult = null
       var err: Boolean = false
 
@@ -899,10 +898,10 @@ class TestAPI {
     val file = getResource("/test/api/myData.dat")
     val fisDP = new java.io.FileInputStream(file)
     val fisSAX = new java.io.FileInputStream(file)
-    Using.resource(Infoset.getInputSourceDataInputStream(fisSAX)) { inputSAX =>
-      val inputDP = Infoset.getInputSourceDataInputStream(fisDP)
+    Using.resource(Daffodil.newInputSourceDataInputStream(fisSAX)) { inputSAX 
=>
+      val inputDP = Daffodil.newInputSourceDataInputStream(fisDP)
       val bosDP = new ByteArrayOutputStream()
-      val outputter = Infoset.getXMLTextInfosetOutputter(bosDP, true)
+      val outputter = Daffodil.newXMLTextInfosetOutputter(bosDP, true)
       dp.parse(inputDP, outputter)
       val infosetDPString = bosDP.toString()
 
@@ -980,7 +979,7 @@ class TestAPI {
 
     val file = getResource("/test/api/myDataBroken.dat")
     val fis = new java.io.FileInputStream(file)
-    Using.resource(Infoset.getInputSourceDataInputStream(fis)) { input =>
+    Using.resource(Daffodil.newInputSourceDataInputStream(fis)) { input =>
       val contentHandler = new org.jdom2.input.sax.SAXHandler()
       val errorHandler = new SAXErrorHandlerForSAPITest()
       parseXMLReader.setContentHandler(contentHandler)
@@ -1139,8 +1138,8 @@ class TestAPI {
     {
       val ba = Array[Byte]()
       val bb = ByteBuffer.wrap(ba)
-      Using.resource(Infoset.getInputSourceDataInputStream(bb)) { dis =>
-        val outputter = Infoset.getScalaXMLInfosetOutputter()
+      Using.resource(Daffodil.newInputSourceDataInputStream(bb)) { dis =>
+        val outputter = Daffodil.newScalaXMLInfosetOutputter()
         val res = dp.parse(dis, outputter)
         assertFalse(res.isError())
         val docString = outputter.getResult().toString()
@@ -1154,8 +1153,8 @@ class TestAPI {
     {
       val ba = Array[Byte]()
       val bb = ByteBuffer.wrap(ba)
-      Using.resource(Infoset.getInputSourceDataInputStream(bb)) { dis =>
-        val outputter = Infoset.getScalaXMLInfosetOutputter()
+      Using.resource(Daffodil.newInputSourceDataInputStream(bb)) { dis =>
+        val outputter = Daffodil.newScalaXMLInfosetOutputter()
         val res = dp.parse(dis, outputter)
         assertFalse(res.isError())
         val docString = outputter.getResult().toString()
@@ -1186,7 +1185,7 @@ class TestAPI {
 
     val file = getResource("/test/api/myData.dat")
     val fis = new java.io.FileInputStream(file)
-    Using.resource(Infoset.getInputSourceDataInputStream(fis)) { dis =>
+    Using.resource(Daffodil.newInputSourceDataInputStream(fis)) { dis =>
       val outputter = new TestInfosetOutputter()
       val pr = dp.parse(dis, outputter)
 
@@ -1274,9 +1273,9 @@ class TestAPI {
     var dp = pf.onPath("/")
 
     val is = new ByteArrayInputStream(data.getBytes(StandardCharsets.UTF_8))
-    Using.resource(Infoset.getInputSourceDataInputStream(is)) { input =>
+    Using.resource(Daffodil.newInputSourceDataInputStream(is)) { input =>
       val bosDP = new ByteArrayOutputStream()
-      val outputter = Infoset.getXMLTextInfosetOutputter(bosDP, true, 
XMLTextEscapeStyle.CDATA)
+      val outputter = Daffodil.newXMLTextInfosetOutputter(bosDP, true, 
XMLTextEscapeStyle.CDATA)
       val res = dp.parse(input, outputter)
       val err = res.isError()
 
@@ -1299,13 +1298,13 @@ class TestAPI {
 
     val data = Array[Byte](0x00, 0x00, 0x00, 0x04, 0x01, 0x02, 0x03, 0x04)
     val bis = new ByteArrayInputStream(data)
-    Using.resource(Infoset.getInputSourceDataInputStream(data)) { input =>
+    Using.resource(Daffodil.newInputSourceDataInputStream(data)) { input =>
       val blobRoot = Paths.get(System.getProperty("java.io.tmpdir"), 
"daffodil", "api")
       Files.createDirectories(blobRoot)
       val blobDir = Files.createTempDirectory(blobRoot, "blob-")
 
       val bos = new ByteArrayOutputStream()
-      val output = Infoset.getXMLTextInfosetOutputter(bos, true)
+      val output = Daffodil.newXMLTextInfosetOutputter(bos, true)
       output.setBlobAttributes(blobDir, "pre-", ".suf")
 
       val res = dp.parse(input, output)
@@ -1342,8 +1341,8 @@ class TestAPI {
 
     val file = getResource("/test/api/myData16.dat")
     val fis = new java.io.FileInputStream(file)
-    Using.resource(Infoset.getInputSourceDataInputStream(fis)) { input =>
-      val outputter = Infoset.getScalaXMLInfosetOutputter()
+    Using.resource(Daffodil.newInputSourceDataInputStream(fis)) { input =>
+      val outputter = Daffodil.newScalaXMLInfosetOutputter()
       val res = dp.parse(input, outputter)
       val err = res.isError()
       assertFalse(err)
@@ -1352,7 +1351,7 @@ class TestAPI {
 
       val bos = new java.io.ByteArrayOutputStream()
       val wbc = java.nio.channels.Channels.newChannel(bos)
-      val inputter = Infoset.getScalaXMLInfosetInputter(outputter.getResult())
+      val inputter = Daffodil.newScalaXMLInfosetInputter(outputter.getResult())
       val res2 = dp.unparse(inputter, wbc)
       val err2 = res2.isError()
       assertFalse(err2)
@@ -1385,8 +1384,8 @@ class TestAPI {
 
     val file = getResource("/test/api/myDataBroken.dat")
     val fis = new java.io.FileInputStream(file)
-    Using.resource(Infoset.getInputSourceDataInputStream(fis)) { input =>
-      val outputter = Infoset.getScalaXMLInfosetOutputter()
+    Using.resource(Daffodil.newInputSourceDataInputStream(fis)) { input =>
+      val outputter = Daffodil.newScalaXMLInfosetOutputter()
       val res = dp.parse(input, outputter)
       assertTrue(res.isError())
 
@@ -1406,8 +1405,8 @@ class TestAPI {
 
     val file = getResource("/test/api/myDataBroken.dat")
     val fis = new java.io.FileInputStream(file)
-    Using.resource(Infoset.getInputSourceDataInputStream(fis)) { input =>
-      val outputter = Infoset.getScalaXMLInfosetOutputter
+    Using.resource(Daffodil.newInputSourceDataInputStream(fis)) { input =>
+      val outputter = Daffodil.newScalaXMLInfosetOutputter
       val res = dp.parse(input, outputter)
       assertTrue(res.isError())
 
@@ -1427,8 +1426,8 @@ class TestAPI {
     val file = getResource("/test/api/myData.dat")
     val fis = new java.io.FileInputStream(file)
     val bos = new ByteArrayOutputStream()
-    Using.resource(Infoset.getInputSourceDataInputStream(fis)) { input =>
-      val outputter = Infoset.getJsonInfosetOutputter(bos, false)
+    Using.resource(Daffodil.newInputSourceDataInputStream(fis)) { input =>
+      val outputter = Daffodil.newJsonInfosetOutputter(bos, false)
       val res = dp.parse(input, outputter)
       assertFalse(res.isError())
     }
@@ -1436,7 +1435,7 @@ class TestAPI {
     Using.resource(new ByteArrayInputStream(bos.toByteArray())) { input =>
       val bos = new java.io.ByteArrayOutputStream()
       val wbc = java.nio.channels.Channels.newChannel(bos)
-      val inputter = Infoset.getJsonInfosetInputter(input)
+      val inputter = Daffodil.newJsonInfosetInputter(input)
       val res = dp.unparse(inputter, wbc)
       assertFalse(res.isError())
       assertEquals("42", bos.toString())
@@ -1456,7 +1455,7 @@ class TestAPI {
     Using.resource(new ByteArrayInputStream(badJsonInfoset.getBytes("UTF-8"))) 
{ input =>
       val bos = new java.io.ByteArrayOutputStream()
       val wbc = java.nio.channels.Channels.newChannel(bos)
-      val inputter = Infoset.getJsonInfosetInputter(input)
+      val inputter = Daffodil.newJsonInfosetInputter(input)
       val res = dp.unparse(inputter, wbc)
       assertTrue(res.isError())
       val diags = res.getDiagnostics
diff --git 
a/daffodil-core/src/test/scala/org/apache/daffodil/sexample/TestCustomDebuggerAPI.scala
 
b/daffodil-core/src/test/scala/org/apache/daffodil/sexample/TestCustomDebuggerAPI.scala
index 8f1cfcf9f..d6ebf3734 100644
--- 
a/daffodil-core/src/test/scala/org/apache/daffodil/sexample/TestCustomDebuggerAPI.scala
+++ 
b/daffodil-core/src/test/scala/org/apache/daffodil/sexample/TestCustomDebuggerAPI.scala
@@ -21,7 +21,6 @@ import scala.util.Using
 
 import org.apache.daffodil.api.Daffodil
 import org.apache.daffodil.api.debugger.Debugger
-import org.apache.daffodil.api.infoset.Infoset
 import org.apache.daffodil.lib.util.Misc
 import org.apache.daffodil.runtime1.processors.parsers.PState
 import org.apache.daffodil.runtime1.processors.parsers.Parser
@@ -55,8 +54,8 @@ class TestCustomDebuggerAPI {
 
     val file = Misc.getRequiredResource("/test/api/myData.dat")
     val fis = new java.io.FileInputStream(file.toURL.getFile)
-    Using.resource(Infoset.getInputSourceDataInputStream(fis)) { input =>
-      dp.parse(input, Infoset.getNullInfosetOutputter)
+    Using.resource(Daffodil.newInputSourceDataInputStream(fis)) { input =>
+      dp.parse(input, Daffodil.newNullInfosetOutputter)
 
       assertEquals(6, dbg.nodes)
       assertTrue(dbg.inited)
diff --git 
a/daffodil-core/src/test/scala/org/apache/daffodil/sexample/TestInfosetInputterOutputter.scala
 
b/daffodil-core/src/test/scala/org/apache/daffodil/sexample/TestInfosetInputterOutputter.scala
index 521d90983..6d390ea1f 100644
--- 
a/daffodil-core/src/test/scala/org/apache/daffodil/sexample/TestInfosetInputterOutputter.scala
+++ 
b/daffodil-core/src/test/scala/org/apache/daffodil/sexample/TestInfosetInputterOutputter.scala
@@ -20,8 +20,8 @@ package org.apache.daffodil.sexample
 import java.lang.Boolean as JBoolean
 import scala.collection.mutable.ArrayBuffer
 
-import org.apache.daffodil.api.infoset.Infoset.InfosetInputterEventType
-import org.apache.daffodil.api.infoset.Infoset.InfosetInputterEventType.*
+import org.apache.daffodil.api.Daffodil.InfosetInputterEventType
+import org.apache.daffodil.api.Daffodil.InfosetInputterEventType.*
 import org.apache.daffodil.api.infoset.InfosetArray
 import org.apache.daffodil.api.infoset.InfosetComplexElement
 import org.apache.daffodil.api.infoset.InfosetInputter
diff --git 
a/daffodil-core/src/test/scala/org/apache/daffodil/sexample/ValidatorExamplesSupport.scala
 
b/daffodil-core/src/test/scala/org/apache/daffodil/sexample/ValidatorExamplesSupport.scala
index 041d0f460..726427291 100644
--- 
a/daffodil-core/src/test/scala/org/apache/daffodil/sexample/ValidatorExamplesSupport.scala
+++ 
b/daffodil-core/src/test/scala/org/apache/daffodil/sexample/ValidatorExamplesSupport.scala
@@ -26,14 +26,13 @@ import scala.util.Using
 import org.apache.daffodil.api.Daffodil
 import org.apache.daffodil.api.DataProcessor
 import org.apache.daffodil.api.InputSourceDataInputStream
-import org.apache.daffodil.api.infoset.Infoset
 import org.apache.daffodil.api.validation.ValidationHandler
 import org.apache.daffodil.api.validation.Validator
 import org.apache.daffodil.api.validation.ValidatorFactory
 
 abstract class ValidatorExamplesSupport {
   private def fileFromResource(path: String): File = new 
File(getClass.getResource(path).toURI)
-  val `/dev/null` = Infoset.getNullInfosetOutputter
+  val `/dev/null` = Daffodil.newNullInfosetOutputter
 
   def withSchema(name: String)(f: DataProcessor => Unit): Unit = {
     val c = Daffodil.compiler()
@@ -44,7 +43,7 @@ abstract class ValidatorExamplesSupport {
 
   def withInput(name: String)(f: InputSourceDataInputStream => Unit): Unit = {
     Using.resource(
-      Infoset.getInputSourceDataInputStream(new 
FileInputStream(fileFromResource(name)))
+      Daffodil.newInputSourceDataInputStream(new 
FileInputStream(fileFromResource(name)))
     ) { s =>
       f(s)
     }
diff --git 
a/daffodil-schematron/src/test/scala/org/apache/daffodil/validation/schematron/EmbeddedTesting.scala
 
b/daffodil-schematron/src/test/scala/org/apache/daffodil/validation/schematron/EmbeddedTesting.scala
index ac9b4416e..67d884879 100644
--- 
a/daffodil-schematron/src/test/scala/org/apache/daffodil/validation/schematron/EmbeddedTesting.scala
+++ 
b/daffodil-schematron/src/test/scala/org/apache/daffodil/validation/schematron/EmbeddedTesting.scala
@@ -25,7 +25,6 @@ import org.apache.daffodil.api.Daffodil
 import org.apache.daffodil.api.DataProcessor
 import org.apache.daffodil.api.Diagnostic
 import org.apache.daffodil.api.ParseResult
-import org.apache.daffodil.api.infoset.Infoset
 import org.apache.daffodil.lib.util.Misc
 
 import org.junit.Assert.assertFalse
@@ -51,8 +50,8 @@ trait EmbeddedTesting {
     def withBytes(bytes: Array[Byte], verbose: PrintInfosetMode = Quiet): PR = 
{
       val bos = new ByteArrayOutputStream()
       val r1 = dp.parse(
-        Infoset.getInputSourceDataInputStream(new ByteArrayInputStream(bytes)),
-        Infoset.getXMLTextInfosetOutputter(bos, true)
+        Daffodil.newInputSourceDataInputStream(new 
ByteArrayInputStream(bytes)),
+        Daffodil.newXMLTextInfosetOutputter(bos, true)
       )
       verbose match {
         case Always | AnyError if r1.isError() => 
r1.getDiagnostics.forEach(println)
diff --git 
a/daffodil-tdml-processor/src/main/scala/org/apache/daffodil/processor/tdml/DaffodilTDMLDFDLProcessor.scala
 
b/daffodil-tdml-processor/src/main/scala/org/apache/daffodil/processor/tdml/DaffodilTDMLDFDLProcessor.scala
index 436c13091..89f53430d 100644
--- 
a/daffodil-tdml-processor/src/main/scala/org/apache/daffodil/processor/tdml/DaffodilTDMLDFDLProcessor.scala
+++ 
b/daffodil-tdml-processor/src/main/scala/org/apache/daffodil/processor/tdml/DaffodilTDMLDFDLProcessor.scala
@@ -171,7 +171,7 @@ class DaffodilTDMLDFDLProcessor private[tdml] (
 
   private lazy val builtInTracer =
     new InteractiveDebugger(
-      InteractiveDebuggerRunnerFactory.getTraceDebuggerRunner(System.out),
+      InteractiveDebuggerRunnerFactory.newTraceDebuggerRunner(System.out),
       ExpressionCompilers
     )
 
diff --git 
a/daffodil-tdml-processor/src/main/scala/org/apache/daffodil/processor/tdml/TDMLInfosetInputter.scala
 
b/daffodil-tdml-processor/src/main/scala/org/apache/daffodil/processor/tdml/TDMLInfosetInputter.scala
index 75a356170..518f38961 100644
--- 
a/daffodil-tdml-processor/src/main/scala/org/apache/daffodil/processor/tdml/TDMLInfosetInputter.scala
+++ 
b/daffodil-tdml-processor/src/main/scala/org/apache/daffodil/processor/tdml/TDMLInfosetInputter.scala
@@ -22,7 +22,7 @@ import java.net.URI
 import java.net.URISyntaxException
 
 import org.apache.daffodil.api
-import org.apache.daffodil.api.infoset.Infoset.InfosetInputterEventType
+import org.apache.daffodil.api.Daffodil.InfosetInputterEventType
 import org.apache.daffodil.lib.util.Misc
 import org.apache.daffodil.lib.xml.XMLUtils
 import org.apache.daffodil.runtime1.dpath.NodeInfo

Reply via email to