public FilterChain() { filterList.add(new GroupFilter()); filterList.add(new ElementFilter()); filterList.add(new EnumFilter()); filterList.add(new AttributeFilter()); filterList.add(new AttributeGroupFilter()); filterList.add(new RestrictionFilter()); filterList.add(new ComplexTypeFilter()); // filterList.add(new SimpleContentFilter()); // simpleContent used for text only types are not supported // currently filterList.add(new ExtensionFilter()); filterList.add(new UnionFilter()); filterList.add(new ListFilter()); }
public boolean filter(final Metadata metadata, final TreeWalker walker) { final Node parent = walker.getCurrentNode(); final Element element = (Element) parent; if (XsdElementEnum.restriction.isTagNameEqual(element.getTagName())) { if (!hasNestedElement(parent, XsdElementEnum.enumeration)) { final Node parentNodeWithName = MetadataUtil.getNextParentNodeWithAttr(parent.getParentNode(), "name"); if (parentNodeWithName != null) { final Element parentElementWithName = (Element) parentNodeWithName; final String dataTypeName = MetadataUtil.getAttributeValue(parentElementWithName, "name"); if (dataTypeName != null) { final String type = MetadataUtil.getAttributeValue(element, "base"); if (type != null) { final MetadataItem dataType = new MetadataItem(dataTypeName); dataType.setMappedTo(type); dataType.setNamespace(metadata.getCurrentNamespace()); dataType.setSchemaName(metadata.getCurrentSchmema()); metadata.getDataTypeList().add(dataType); return true; } } } } } return false; }
public boolean filter(final Metadata metadata, final TreeWalker walker) { final Node parent = walker.getCurrentNode(); final Element element = (Element) parent; if (XsdElementEnum.restriction.isTagNameEqual(element.getTagName())) { if (!hasNestedElement(parent, XsdElementEnum.enumeration)) { final Node parentNodeWithName = MetadataUtil.getNextParentNodeWithAttr(parent.getParentNode(), "name"); if (parentNodeWithName != null) { final Element parentElementWithName = (Element) parentNodeWithName; final String dataTypeName = MetadataUtil.getAttributeValue(parentElementWithName, "name"); if (dataTypeName != null) { final String type = MetadataUtil.getAttributeValue(element, "base"); if (type != null) { final MetadataItem dataType = new MetadataItem(dataTypeName); dataType.setMappedTo(type); dataType.setNamespace(metadata.getCurrentNamespace()); dataType.setSchemaName(metadata.getCurrentSchmema()); metadata.getDataTypeList().add(dataType); return true; } } } } } return false; }
public FilterChain() { filterList.add(new GroupFilter()); filterList.add(new ElementFilter()); filterList.add(new EnumFilter()); filterList.add(new AttributeFilter()); filterList.add(new AttributeGroupFilter()); filterList.add(new RestrictionFilter()); filterList.add(new ComplexTypeFilter()); // filterList.add(new SimpleContentFilter()); // simpleContent used for text only types are not supported // currently filterList.add(new ExtensionFilter()); filterList.add(new UnionFilter()); filterList.add(new ListFilter()); }