@Test public void testWriteAppInfo() throws Exception { final Identifier mockID = Identifier.fromString("1234"); final TaggedValue mockTaggedValue = new TaggedValue("test", mockID); final ModelIndex mockIndex = Mockito.mock(ModelIndex.class); final Uml2XsdPluginWriter mockWriter = Mockito.mock(Uml2XsdPluginWriter.class); final TagDefinition mockTagDef = new TagDefinition(mockID, SliUmlConstants.TAGDEF_NATURAL_KEY, new Multiplicity(new Range(Occurs.ONE, Occurs.UNBOUNDED))); Mockito.when(mockIndex.getTagDefinition(mockID)).thenReturn(mockTagDef); pluginForMongo.writeAppInfo(mockTaggedValue, mockIndex, mockWriter); Mockito.verify(mockWriter).begin("sli", SliMongoConstants.SLI_NATURAL_KEY.getLocalPart(), SliMongoConstants.SLI_NATURAL_KEY.getNamespaceURI()); Mockito.verify(mockWriter, Mockito.times(2)).end(); }
@Override public void writeAppInfo(final TaggedValue taggedValue, final ModelIndex lookup, final Uml2XsdPluginWriter xsw) { final TagDefinition tagDefinition = lookup.getTagDefinition(taggedValue.getTagDefinition()); xsw.appinfo(); if (SliUmlConstants.TAGDEF_NATURAL_KEY.equals(tagDefinition.getName())) { xsw.begin("sli", SliMongoConstants.SLI_NATURAL_KEY.getLocalPart(), SliMongoConstants.SLI_NATURAL_KEY.getNamespaceURI()); xsw.characters(taggedValue.getValue()); xsw.end(); } else if (SliUmlConstants.TAGDEF_APPLY_NATURAL_KEYS.equals(tagDefinition.getName())) { xsw.begin("sli", SliMongoConstants.SLI_APPLY_NATURAL_KEYS.getLocalPart(), SliMongoConstants.SLI_APPLY_NATURAL_KEYS.getNamespaceURI()); xsw.characters(taggedValue.getValue()); xsw.end(); } else if (SliUmlConstants.TAGDEF_PII.equals(tagDefinition.getName())) { xsw.begin("sli", SliMongoConstants.SLI_PII.getLocalPart(), SliMongoConstants.SLI_PII.getNamespaceURI()); xsw.characters(taggedValue.getValue()); xsw.end(); } else if (SliUmlConstants.TAGDEF_ENFORCE_READ.equals(tagDefinition.getName())) { xsw.begin("sli", SliMongoConstants.SLI_READ_ENFORCEMENT.getLocalPart(), SliMongoConstants.SLI_READ_ENFORCEMENT.getNamespaceURI()); xsw.characters(taggedValue.getValue()); xsw.end(); } else if (SliUmlConstants.TAGDEF_ENFORCE_WRITE.equals(tagDefinition.getName())) { xsw.begin("sli", SliMongoConstants.SLI_WRITE_ENFORCEMENT.getLocalPart(), SliMongoConstants.SLI_WRITE_ENFORCEMENT.getNamespaceURI()); xsw.characters(taggedValue.getValue()); xsw.end(); } else if (SliUmlConstants.TAGDEF_RELAXED_BLACKLIST.equals(tagDefinition.getName())) { xsw.begin("sli", SliMongoConstants.SLI_RELAXEDBLACKLIST.getLocalPart(), SliMongoConstants.SLI_RELAXEDBLACKLIST.getNamespaceURI()); xsw.characters(taggedValue.getValue()); xsw.end(); } else if (SliUmlConstants.TAGDEF_SECURITY_SPHERE.equals(tagDefinition.getName())) { xsw.begin("sli", SliMongoConstants.SLI_SECURITY_SPHERE.getLocalPart(), SliMongoConstants.SLI_SECURITY_SPHERE.getNamespaceURI()); xsw.characters(taggedValue.getValue()); xsw.end(); } else if (SliUmlConstants.TAGDEF_ASSOCIATION_KEY.equals(tagDefinition.getName())) { xsw.begin("sli", SliMongoConstants.SLI_ASSOCIATION_KEY.getLocalPart(), SliMongoConstants.SLI_ASSOCIATION_KEY.getNamespaceURI()); xsw.characters(taggedValue.getValue()); xsw.end(); } else if (SliUmlConstants.TAGDEF_BEGIN_DATE.equals(tagDefinition.getName())) { xsw.begin("sli", SliMongoConstants.SLI_BEGIN_DATE.getLocalPart(), SliMongoConstants.SLI_BEGIN_DATE.getNamespaceURI()); xsw.characters(taggedValue.getValue()); xsw.end(); } else if (SliUmlConstants.TAGDEF_END_DATE.equals(tagDefinition.getName())) { xsw.begin("sli", SliMongoConstants.SLI_END_DATE.getLocalPart(), SliMongoConstants.SLI_END_DATE.getNamespaceURI()); xsw.characters(taggedValue.getValue()); xsw.end(); } else if (SliUmlConstants.TAGDEF_FILTER_BEGIN_DATE_ON.equals(tagDefinition.getName())) { xsw.begin("sli", SliMongoConstants.SLI_FILTER_BEGIN_DATE_ON.getLocalPart(), SliMongoConstants.SLI_FILTER_BEGIN_DATE_ON.getNamespaceURI()); xsw.characters(taggedValue.getValue()); xsw.end(); } else if (SliUmlConstants.TAGDEF_FILTER_END_DATE_ON.equals(tagDefinition.getName())) { xsw.begin("sli", SliMongoConstants.SLI_FILTER_END_DATE_ON.getLocalPart(), SliMongoConstants.SLI_FILTER_END_DATE_ON.getNamespaceURI()); xsw.characters(taggedValue.getValue()); xsw.end(); } else if (SliUmlConstants.TAGDEF_ASSOCIATED_DATED_COLLECTION.equals(tagDefinition.getName())) { xsw.begin("sli", SliMongoConstants.SLI_ASSOCIATED_DATED_COLLECTION.getLocalPart(), SliMongoConstants.SLI_ASSOCIATED_DATED_COLLECTION.getNamespaceURI()); xsw.characters(taggedValue.getValue()); xsw.end(); } xsw.end(); }
PluginForMongo implements Uml2XsdPlugin { @Override public void writeAppInfo(final TaggedValue taggedValue, final ModelIndex lookup, final Uml2XsdPluginWriter xsw) { final TagDefinition tagDefinition = lookup.getTagDefinition(taggedValue.getTagDefinition()); xsw.appinfo(); if (SliUmlConstants.TAGDEF_NATURAL_KEY.equals(tagDefinition.getName())) { xsw.begin("sli", SliMongoConstants.SLI_NATURAL_KEY.getLocalPart(), SliMongoConstants.SLI_NATURAL_KEY.getNamespaceURI()); xsw.characters(taggedValue.getValue()); xsw.end(); } else if (SliUmlConstants.TAGDEF_APPLY_NATURAL_KEYS.equals(tagDefinition.getName())) { xsw.begin("sli", SliMongoConstants.SLI_APPLY_NATURAL_KEYS.getLocalPart(), SliMongoConstants.SLI_APPLY_NATURAL_KEYS.getNamespaceURI()); xsw.characters(taggedValue.getValue()); xsw.end(); } else if (SliUmlConstants.TAGDEF_PII.equals(tagDefinition.getName())) { xsw.begin("sli", SliMongoConstants.SLI_PII.getLocalPart(), SliMongoConstants.SLI_PII.getNamespaceURI()); xsw.characters(taggedValue.getValue()); xsw.end(); } else if (SliUmlConstants.TAGDEF_ENFORCE_READ.equals(tagDefinition.getName())) { xsw.begin("sli", SliMongoConstants.SLI_READ_ENFORCEMENT.getLocalPart(), SliMongoConstants.SLI_READ_ENFORCEMENT.getNamespaceURI()); xsw.characters(taggedValue.getValue()); xsw.end(); } else if (SliUmlConstants.TAGDEF_ENFORCE_WRITE.equals(tagDefinition.getName())) { xsw.begin("sli", SliMongoConstants.SLI_WRITE_ENFORCEMENT.getLocalPart(), SliMongoConstants.SLI_WRITE_ENFORCEMENT.getNamespaceURI()); xsw.characters(taggedValue.getValue()); xsw.end(); } else if (SliUmlConstants.TAGDEF_RELAXED_BLACKLIST.equals(tagDefinition.getName())) { xsw.begin("sli", SliMongoConstants.SLI_RELAXEDBLACKLIST.getLocalPart(), SliMongoConstants.SLI_RELAXEDBLACKLIST.getNamespaceURI()); xsw.characters(taggedValue.getValue()); xsw.end(); } else if (SliUmlConstants.TAGDEF_SECURITY_SPHERE.equals(tagDefinition.getName())) { xsw.begin("sli", SliMongoConstants.SLI_SECURITY_SPHERE.getLocalPart(), SliMongoConstants.SLI_SECURITY_SPHERE.getNamespaceURI()); xsw.characters(taggedValue.getValue()); xsw.end(); } else if (SliUmlConstants.TAGDEF_ASSOCIATION_KEY.equals(tagDefinition.getName())) { xsw.begin("sli", SliMongoConstants.SLI_ASSOCIATION_KEY.getLocalPart(), SliMongoConstants.SLI_ASSOCIATION_KEY.getNamespaceURI()); xsw.characters(taggedValue.getValue()); xsw.end(); } else if (SliUmlConstants.TAGDEF_BEGIN_DATE.equals(tagDefinition.getName())) { xsw.begin("sli", SliMongoConstants.SLI_BEGIN_DATE.getLocalPart(), SliMongoConstants.SLI_BEGIN_DATE.getNamespaceURI()); xsw.characters(taggedValue.getValue()); xsw.end(); } else if (SliUmlConstants.TAGDEF_END_DATE.equals(tagDefinition.getName())) { xsw.begin("sli", SliMongoConstants.SLI_END_DATE.getLocalPart(), SliMongoConstants.SLI_END_DATE.getNamespaceURI()); xsw.characters(taggedValue.getValue()); xsw.end(); } else if (SliUmlConstants.TAGDEF_FILTER_BEGIN_DATE_ON.equals(tagDefinition.getName())) { xsw.begin("sli", SliMongoConstants.SLI_FILTER_BEGIN_DATE_ON.getLocalPart(), SliMongoConstants.SLI_FILTER_BEGIN_DATE_ON.getNamespaceURI()); xsw.characters(taggedValue.getValue()); xsw.end(); } else if (SliUmlConstants.TAGDEF_FILTER_END_DATE_ON.equals(tagDefinition.getName())) { xsw.begin("sli", SliMongoConstants.SLI_FILTER_END_DATE_ON.getLocalPart(), SliMongoConstants.SLI_FILTER_END_DATE_ON.getNamespaceURI()); xsw.characters(taggedValue.getValue()); xsw.end(); } else if (SliUmlConstants.TAGDEF_ASSOCIATED_DATED_COLLECTION.equals(tagDefinition.getName())) { xsw.begin("sli", SliMongoConstants.SLI_ASSOCIATED_DATED_COLLECTION.getLocalPart(), SliMongoConstants.SLI_ASSOCIATED_DATED_COLLECTION.getNamespaceURI()); xsw.characters(taggedValue.getValue()); xsw.end(); } xsw.end(); } }
PluginForMongo implements Uml2XsdPlugin { @Override public void writeAppInfo(final TaggedValue taggedValue, final ModelIndex lookup, final Uml2XsdPluginWriter xsw) { final TagDefinition tagDefinition = lookup.getTagDefinition(taggedValue.getTagDefinition()); xsw.appinfo(); if (SliUmlConstants.TAGDEF_NATURAL_KEY.equals(tagDefinition.getName())) { xsw.begin("sli", SliMongoConstants.SLI_NATURAL_KEY.getLocalPart(), SliMongoConstants.SLI_NATURAL_KEY.getNamespaceURI()); xsw.characters(taggedValue.getValue()); xsw.end(); } else if (SliUmlConstants.TAGDEF_APPLY_NATURAL_KEYS.equals(tagDefinition.getName())) { xsw.begin("sli", SliMongoConstants.SLI_APPLY_NATURAL_KEYS.getLocalPart(), SliMongoConstants.SLI_APPLY_NATURAL_KEYS.getNamespaceURI()); xsw.characters(taggedValue.getValue()); xsw.end(); } else if (SliUmlConstants.TAGDEF_PII.equals(tagDefinition.getName())) { xsw.begin("sli", SliMongoConstants.SLI_PII.getLocalPart(), SliMongoConstants.SLI_PII.getNamespaceURI()); xsw.characters(taggedValue.getValue()); xsw.end(); } else if (SliUmlConstants.TAGDEF_ENFORCE_READ.equals(tagDefinition.getName())) { xsw.begin("sli", SliMongoConstants.SLI_READ_ENFORCEMENT.getLocalPart(), SliMongoConstants.SLI_READ_ENFORCEMENT.getNamespaceURI()); xsw.characters(taggedValue.getValue()); xsw.end(); } else if (SliUmlConstants.TAGDEF_ENFORCE_WRITE.equals(tagDefinition.getName())) { xsw.begin("sli", SliMongoConstants.SLI_WRITE_ENFORCEMENT.getLocalPart(), SliMongoConstants.SLI_WRITE_ENFORCEMENT.getNamespaceURI()); xsw.characters(taggedValue.getValue()); xsw.end(); } else if (SliUmlConstants.TAGDEF_RELAXED_BLACKLIST.equals(tagDefinition.getName())) { xsw.begin("sli", SliMongoConstants.SLI_RELAXEDBLACKLIST.getLocalPart(), SliMongoConstants.SLI_RELAXEDBLACKLIST.getNamespaceURI()); xsw.characters(taggedValue.getValue()); xsw.end(); } else if (SliUmlConstants.TAGDEF_SECURITY_SPHERE.equals(tagDefinition.getName())) { xsw.begin("sli", SliMongoConstants.SLI_SECURITY_SPHERE.getLocalPart(), SliMongoConstants.SLI_SECURITY_SPHERE.getNamespaceURI()); xsw.characters(taggedValue.getValue()); xsw.end(); } else if (SliUmlConstants.TAGDEF_ASSOCIATION_KEY.equals(tagDefinition.getName())) { xsw.begin("sli", SliMongoConstants.SLI_ASSOCIATION_KEY.getLocalPart(), SliMongoConstants.SLI_ASSOCIATION_KEY.getNamespaceURI()); xsw.characters(taggedValue.getValue()); xsw.end(); } else if (SliUmlConstants.TAGDEF_BEGIN_DATE.equals(tagDefinition.getName())) { xsw.begin("sli", SliMongoConstants.SLI_BEGIN_DATE.getLocalPart(), SliMongoConstants.SLI_BEGIN_DATE.getNamespaceURI()); xsw.characters(taggedValue.getValue()); xsw.end(); } else if (SliUmlConstants.TAGDEF_END_DATE.equals(tagDefinition.getName())) { xsw.begin("sli", SliMongoConstants.SLI_END_DATE.getLocalPart(), SliMongoConstants.SLI_END_DATE.getNamespaceURI()); xsw.characters(taggedValue.getValue()); xsw.end(); } else if (SliUmlConstants.TAGDEF_FILTER_BEGIN_DATE_ON.equals(tagDefinition.getName())) { xsw.begin("sli", SliMongoConstants.SLI_FILTER_BEGIN_DATE_ON.getLocalPart(), SliMongoConstants.SLI_FILTER_BEGIN_DATE_ON.getNamespaceURI()); xsw.characters(taggedValue.getValue()); xsw.end(); } else if (SliUmlConstants.TAGDEF_FILTER_END_DATE_ON.equals(tagDefinition.getName())) { xsw.begin("sli", SliMongoConstants.SLI_FILTER_END_DATE_ON.getLocalPart(), SliMongoConstants.SLI_FILTER_END_DATE_ON.getNamespaceURI()); xsw.characters(taggedValue.getValue()); xsw.end(); } else if (SliUmlConstants.TAGDEF_ASSOCIATED_DATED_COLLECTION.equals(tagDefinition.getName())) { xsw.begin("sli", SliMongoConstants.SLI_ASSOCIATED_DATED_COLLECTION.getLocalPart(), SliMongoConstants.SLI_ASSOCIATED_DATED_COLLECTION.getNamespaceURI()); xsw.characters(taggedValue.getValue()); xsw.end(); } xsw.end(); }  }
PluginForMongo implements Uml2XsdPlugin { @Override public void writeAppInfo(final TaggedValue taggedValue, final ModelIndex lookup, final Uml2XsdPluginWriter xsw) { final TagDefinition tagDefinition = lookup.getTagDefinition(taggedValue.getTagDefinition()); xsw.appinfo(); if (SliUmlConstants.TAGDEF_NATURAL_KEY.equals(tagDefinition.getName())) { xsw.begin("sli", SliMongoConstants.SLI_NATURAL_KEY.getLocalPart(), SliMongoConstants.SLI_NATURAL_KEY.getNamespaceURI()); xsw.characters(taggedValue.getValue()); xsw.end(); } else if (SliUmlConstants.TAGDEF_APPLY_NATURAL_KEYS.equals(tagDefinition.getName())) { xsw.begin("sli", SliMongoConstants.SLI_APPLY_NATURAL_KEYS.getLocalPart(), SliMongoConstants.SLI_APPLY_NATURAL_KEYS.getNamespaceURI()); xsw.characters(taggedValue.getValue()); xsw.end(); } else if (SliUmlConstants.TAGDEF_PII.equals(tagDefinition.getName())) { xsw.begin("sli", SliMongoConstants.SLI_PII.getLocalPart(), SliMongoConstants.SLI_PII.getNamespaceURI()); xsw.characters(taggedValue.getValue()); xsw.end(); } else if (SliUmlConstants.TAGDEF_ENFORCE_READ.equals(tagDefinition.getName())) { xsw.begin("sli", SliMongoConstants.SLI_READ_ENFORCEMENT.getLocalPart(), SliMongoConstants.SLI_READ_ENFORCEMENT.getNamespaceURI()); xsw.characters(taggedValue.getValue()); xsw.end(); } else if (SliUmlConstants.TAGDEF_ENFORCE_WRITE.equals(tagDefinition.getName())) { xsw.begin("sli", SliMongoConstants.SLI_WRITE_ENFORCEMENT.getLocalPart(), SliMongoConstants.SLI_WRITE_ENFORCEMENT.getNamespaceURI()); xsw.characters(taggedValue.getValue()); xsw.end(); } else if (SliUmlConstants.TAGDEF_RELAXED_BLACKLIST.equals(tagDefinition.getName())) { xsw.begin("sli", SliMongoConstants.SLI_RELAXEDBLACKLIST.getLocalPart(), SliMongoConstants.SLI_RELAXEDBLACKLIST.getNamespaceURI()); xsw.characters(taggedValue.getValue()); xsw.end(); } else if (SliUmlConstants.TAGDEF_SECURITY_SPHERE.equals(tagDefinition.getName())) { xsw.begin("sli", SliMongoConstants.SLI_SECURITY_SPHERE.getLocalPart(), SliMongoConstants.SLI_SECURITY_SPHERE.getNamespaceURI()); xsw.characters(taggedValue.getValue()); xsw.end(); } else if (SliUmlConstants.TAGDEF_ASSOCIATION_KEY.equals(tagDefinition.getName())) { xsw.begin("sli", SliMongoConstants.SLI_ASSOCIATION_KEY.getLocalPart(), SliMongoConstants.SLI_ASSOCIATION_KEY.getNamespaceURI()); xsw.characters(taggedValue.getValue()); xsw.end(); } else if (SliUmlConstants.TAGDEF_BEGIN_DATE.equals(tagDefinition.getName())) { xsw.begin("sli", SliMongoConstants.SLI_BEGIN_DATE.getLocalPart(), SliMongoConstants.SLI_BEGIN_DATE.getNamespaceURI()); xsw.characters(taggedValue.getValue()); xsw.end(); } else if (SliUmlConstants.TAGDEF_END_DATE.equals(tagDefinition.getName())) { xsw.begin("sli", SliMongoConstants.SLI_END_DATE.getLocalPart(), SliMongoConstants.SLI_END_DATE.getNamespaceURI()); xsw.characters(taggedValue.getValue()); xsw.end(); } else if (SliUmlConstants.TAGDEF_FILTER_BEGIN_DATE_ON.equals(tagDefinition.getName())) { xsw.begin("sli", SliMongoConstants.SLI_FILTER_BEGIN_DATE_ON.getLocalPart(), SliMongoConstants.SLI_FILTER_BEGIN_DATE_ON.getNamespaceURI()); xsw.characters(taggedValue.getValue()); xsw.end(); } else if (SliUmlConstants.TAGDEF_FILTER_END_DATE_ON.equals(tagDefinition.getName())) { xsw.begin("sli", SliMongoConstants.SLI_FILTER_END_DATE_ON.getLocalPart(), SliMongoConstants.SLI_FILTER_END_DATE_ON.getNamespaceURI()); xsw.characters(taggedValue.getValue()); xsw.end(); } else if (SliUmlConstants.TAGDEF_ASSOCIATED_DATED_COLLECTION.equals(tagDefinition.getName())) { xsw.begin("sli", SliMongoConstants.SLI_ASSOCIATED_DATED_COLLECTION.getLocalPart(), SliMongoConstants.SLI_ASSOCIATED_DATED_COLLECTION.getNamespaceURI()); xsw.characters(taggedValue.getValue()); xsw.end(); } xsw.end(); }  static final boolean isUnbounded(final Occurs occurs); @Override Map<String, String> declarePrefixMappings(); @Override QName getElementName(final String name, final boolean isReference); @Override QName getElementType(final String name, final boolean isAssociation); @Override QName getGraphAssociationEndName(final PsmDocument<Type> classType); @Override QName getElementName(final PsmDocument<Type> classType); @Override String getTargetNamespace(); @Override QName getTypeName(final String name); @Override boolean isAttributeFormDefaultQualified(); @Override boolean isElementFormDefaultQualified(); @Override boolean isEnabled(final QName name); @Override void writeAppInfo(final TaggedValue taggedValue, final ModelIndex lookup, final Uml2XsdPluginWriter xsw); @Override void writeAssociation(final ClassType complexType, final AssociationEnd end, final ModelIndex model,
            final Uml2XsdPluginWriter xsw); @Override void writeTopLevelElement(PsmDocument<Type> classType, ModelIndex model, Uml2XsdPluginWriter xsw); }
PluginForMongo implements Uml2XsdPlugin { @Override public void writeAppInfo(final TaggedValue taggedValue, final ModelIndex lookup, final Uml2XsdPluginWriter xsw) { final TagDefinition tagDefinition = lookup.getTagDefinition(taggedValue.getTagDefinition()); xsw.appinfo(); if (SliUmlConstants.TAGDEF_NATURAL_KEY.equals(tagDefinition.getName())) { xsw.begin("sli", SliMongoConstants.SLI_NATURAL_KEY.getLocalPart(), SliMongoConstants.SLI_NATURAL_KEY.getNamespaceURI()); xsw.characters(taggedValue.getValue()); xsw.end(); } else if (SliUmlConstants.TAGDEF_APPLY_NATURAL_KEYS.equals(tagDefinition.getName())) { xsw.begin("sli", SliMongoConstants.SLI_APPLY_NATURAL_KEYS.getLocalPart(), SliMongoConstants.SLI_APPLY_NATURAL_KEYS.getNamespaceURI()); xsw.characters(taggedValue.getValue()); xsw.end(); } else if (SliUmlConstants.TAGDEF_PII.equals(tagDefinition.getName())) { xsw.begin("sli", SliMongoConstants.SLI_PII.getLocalPart(), SliMongoConstants.SLI_PII.getNamespaceURI()); xsw.characters(taggedValue.getValue()); xsw.end(); } else if (SliUmlConstants.TAGDEF_ENFORCE_READ.equals(tagDefinition.getName())) { xsw.begin("sli", SliMongoConstants.SLI_READ_ENFORCEMENT.getLocalPart(), SliMongoConstants.SLI_READ_ENFORCEMENT.getNamespaceURI()); xsw.characters(taggedValue.getValue()); xsw.end(); } else if (SliUmlConstants.TAGDEF_ENFORCE_WRITE.equals(tagDefinition.getName())) { xsw.begin("sli", SliMongoConstants.SLI_WRITE_ENFORCEMENT.getLocalPart(), SliMongoConstants.SLI_WRITE_ENFORCEMENT.getNamespaceURI()); xsw.characters(taggedValue.getValue()); xsw.end(); } else if (SliUmlConstants.TAGDEF_RELAXED_BLACKLIST.equals(tagDefinition.getName())) { xsw.begin("sli", SliMongoConstants.SLI_RELAXEDBLACKLIST.getLocalPart(), SliMongoConstants.SLI_RELAXEDBLACKLIST.getNamespaceURI()); xsw.characters(taggedValue.getValue()); xsw.end(); } else if (SliUmlConstants.TAGDEF_SECURITY_SPHERE.equals(tagDefinition.getName())) { xsw.begin("sli", SliMongoConstants.SLI_SECURITY_SPHERE.getLocalPart(), SliMongoConstants.SLI_SECURITY_SPHERE.getNamespaceURI()); xsw.characters(taggedValue.getValue()); xsw.end(); } else if (SliUmlConstants.TAGDEF_ASSOCIATION_KEY.equals(tagDefinition.getName())) { xsw.begin("sli", SliMongoConstants.SLI_ASSOCIATION_KEY.getLocalPart(), SliMongoConstants.SLI_ASSOCIATION_KEY.getNamespaceURI()); xsw.characters(taggedValue.getValue()); xsw.end(); } else if (SliUmlConstants.TAGDEF_BEGIN_DATE.equals(tagDefinition.getName())) { xsw.begin("sli", SliMongoConstants.SLI_BEGIN_DATE.getLocalPart(), SliMongoConstants.SLI_BEGIN_DATE.getNamespaceURI()); xsw.characters(taggedValue.getValue()); xsw.end(); } else if (SliUmlConstants.TAGDEF_END_DATE.equals(tagDefinition.getName())) { xsw.begin("sli", SliMongoConstants.SLI_END_DATE.getLocalPart(), SliMongoConstants.SLI_END_DATE.getNamespaceURI()); xsw.characters(taggedValue.getValue()); xsw.end(); } else if (SliUmlConstants.TAGDEF_FILTER_BEGIN_DATE_ON.equals(tagDefinition.getName())) { xsw.begin("sli", SliMongoConstants.SLI_FILTER_BEGIN_DATE_ON.getLocalPart(), SliMongoConstants.SLI_FILTER_BEGIN_DATE_ON.getNamespaceURI()); xsw.characters(taggedValue.getValue()); xsw.end(); } else if (SliUmlConstants.TAGDEF_FILTER_END_DATE_ON.equals(tagDefinition.getName())) { xsw.begin("sli", SliMongoConstants.SLI_FILTER_END_DATE_ON.getLocalPart(), SliMongoConstants.SLI_FILTER_END_DATE_ON.getNamespaceURI()); xsw.characters(taggedValue.getValue()); xsw.end(); } else if (SliUmlConstants.TAGDEF_ASSOCIATED_DATED_COLLECTION.equals(tagDefinition.getName())) { xsw.begin("sli", SliMongoConstants.SLI_ASSOCIATED_DATED_COLLECTION.getLocalPart(), SliMongoConstants.SLI_ASSOCIATED_DATED_COLLECTION.getNamespaceURI()); xsw.characters(taggedValue.getValue()); xsw.end(); } xsw.end(); }  static final boolean isUnbounded(final Occurs occurs); @Override Map<String, String> declarePrefixMappings(); @Override QName getElementName(final String name, final boolean isReference); @Override QName getElementType(final String name, final boolean isAssociation); @Override QName getGraphAssociationEndName(final PsmDocument<Type> classType); @Override QName getElementName(final PsmDocument<Type> classType); @Override String getTargetNamespace(); @Override QName getTypeName(final String name); @Override boolean isAttributeFormDefaultQualified(); @Override boolean isElementFormDefaultQualified(); @Override boolean isEnabled(final QName name); @Override void writeAppInfo(final TaggedValue taggedValue, final ModelIndex lookup, final Uml2XsdPluginWriter xsw); @Override void writeAssociation(final ClassType complexType, final AssociationEnd end, final ModelIndex model,
            final Uml2XsdPluginWriter xsw); @Override void writeTopLevelElement(PsmDocument<Type> classType, ModelIndex model, Uml2XsdPluginWriter xsw);  }