ElementFactoryImpl implements ElementFactory { public BinSource createBinSource(BinSource.Child child) { return new BinSourceImpl(child); } private  ElementFactoryImpl(); static ElementFactoryImpl getInstance(); Xliff createXliff(Version version, List<File> files); Xliff createXliff(Version version, File file); File createFile(Original original, SourceLanguage sourceLanguage,
			DataType dataType, Body body); Header createHeader(); Skl createSkl(Skl.Child part); InternalFile createInternalFile(Text embeddedFile); ExternalFile createExternalFile(Href href); Glossary createGlossary(Glossary.Child part); Reference createReference(Child child); Note createNote(Text note); PhaseGroup createPhaseGroup(List<Phase> phases); Phase createPhase(PhaseName phaseName, ProcessName processName); Tool createTool(ToolId toolId, ToolName toolName); CountGroup createCountGroup(Name name, List<Count> counts); Count createCount(CountType countType, Text number); Count createCount(CountType countType, int number); ContextGroup createContextGroup(List<Context> contexts); Context createContext(ContextType contextType, Text content); com.sap.mlt.xliff12.api.element.namedgroup.PropGroup createPropGroup(
			List<com.sap.mlt.xliff12.api.element.namedgroup.Prop> props); com.sap.mlt.xliff12.api.element.namedgroup.Prop createProp(
			com.sap.mlt.xliff12.api.attribute.PropType propType, Text content); Body createBody(List<? extends StructuralUnit> structuralUnits); Group createGroup(List<? extends StructuralUnit> structuralUnits); TransUnit createTransUnit(Id id, Source source); Source createSource(List<? extends TextFragment> textFragments); Source createSource(String text); Target createTarget(List<? extends TextFragment> textFragments); Target createTarget(String text); AltTrans createAltTrans(Target target); BinUnit createBinUnit(Id id, MimeType mimeType, BinSource binSource); BinSource createBinSource(BinSource.Child child); BinTarget createBinTarget(BinTarget.Child child); SegSource createSegSource(List<? extends TextFragment> textFragments); G createG(Id id, List<? extends TextFragment> content); X createX(Id id); Bx createBx(Id id); Ex createEx(Id id); Ph createPh(Id id, List<? extends CodeFragment> content); Bpt createBpt(Id id, List<? extends CodeFragment> content); Ept createEpt(Id id, List<? extends CodeFragment> content); It createIt(Id id, Pos pos, List<? extends CodeFragment> content); Sub createSub(List<? extends TextFragment> content); Mrk createMrk(Mtype mtype, List<? extends TextFragment> content); NonXliffElement createNonXliffElement(org.w3c.dom.Element xmlElement); NonXliffElement createNonXliffElement(String namespaceUri,
			String name, Collection<? extends Attribute> attributes,
			List<? extends Node> children); NonXliffElement createNonXliffElement(String namespaceUri,
			String prefix, String name,
			Collection<? extends Attribute> attributes,
			List<? extends Node> children); Element createElement(org.w3c.dom.Element xmlElement);  }
@Test public void testCreateBinSource() { ElementFactoryImpl factory = ElementFactoryImpl.getInstance(); BinSource binSource = factory .createBinSource(createDefaultInternalFile()); assertEquals(new BinSourceImpl(createDefaultInternalFile()), binSource); }