UBL20DocumentTypes { @Nullable public static Schema getSchemaOfImplementationClass (@Nullable final Class <?> aImplClass) { final EUBL20DocumentType eDocType = getDocumentTypeOfImplementationClass (aImplClass); return eDocType == null ? null : eDocType.getSchema (); } private  UBL20DocumentTypes(); @Nonnull @ReturnsMutableCopy static ICommonsSet <String> getAllNamespaces(); @Nullable static EUBL20DocumentType getDocumentTypeOfNamespace(@Nullable final String sNamespace); @Nullable static Class <?> getImplementationClassOfNamespace(@Nullable final String sNamespace); @Nullable static Schema getSchemaOfNamespace(@Nullable final String sNamespace); @Nonnull @ReturnsMutableCopy static ICommonsSet <String> getAllLocalNames(); @Nullable static EUBL20DocumentType getDocumentTypeOfLocalName(@Nullable final String sLocalName); @Nullable static Class <?> getImplementationClassOfLocalName(@Nullable final String sLocalName); @Nullable static EUBL20DocumentType getDocumentTypeOfImplementationClass(@Nullable final Class <?> aImplClass); @Nullable static Schema getSchemaOfLocalName(@Nullable final String sLocalName); @Nullable static Schema getSchemaOfImplementationClass(@Nullable final Class <?> aImplClass);  }
@Test public void testGetSchemaOfImplementationClass () { assertNull (UBL20DocumentTypes.getDocumentTypeOfImplementationClass (null)); assertNull (UBL20DocumentTypes.getSchemaOfImplementationClass (null)); assertNull (UBL20DocumentTypes.getSchemaOfImplementationClass (String.class)); for (final EUBL20DocumentType eDocType : EUBL20DocumentType.values ()) { assertSame (eDocType, UBL20DocumentTypes.getDocumentTypeOfImplementationClass (eDocType.getImplementationClass ())); assertSame (eDocType.getSchema (), UBL20DocumentTypes.getSchemaOfImplementationClass (eDocType.getImplementationClass ())); assertNotNull (eDocType.getValidator (null)); } }