]> gerrit.simantics Code Review - simantics/interop.git/blobdiff - org.simantics.xml.sax/src/org/simantics/xml/sax/SchemaConversionComponent.java
Refactoring and preparing the conversion code to handle references between XML schemas.
[simantics/interop.git] / org.simantics.xml.sax / src / org / simantics / xml / sax / SchemaConversionComponent.java
diff --git a/org.simantics.xml.sax/src/org/simantics/xml/sax/SchemaConversionComponent.java b/org.simantics.xml.sax/src/org/simantics/xml/sax/SchemaConversionComponent.java
new file mode 100644 (file)
index 0000000..89d8e86
--- /dev/null
@@ -0,0 +1,34 @@
+package org.simantics.xml.sax;\r
+\r
+import java.util.List;\r
+\r
+import org.simantics.utils.datastructures.BijectionMap;\r
+import org.simantics.xml.sax.SchemaConversionBase.RefType;\r
+import org.simantics.xml.sax.SchemaObject.ObjectType;\r
+import org.simantics.xml.sax.configuration.AttributeComposition;\r
+import org.w3._2001.xmlschema.Annotated;\r
+import org.w3._2001.xmlschema.Attribute;\r
+import org.w3._2001.xmlschema.AttributeGroup;\r
+import org.w3._2001.xmlschema.NamedGroup;\r
+\r
+\r
+public interface SchemaConversionComponent {\r
+\r
+               \r
+       void handleAttributes(SchemaObject simpleTypeObj);\r
+       void handleAttributeComposition(SchemaObject obj, AttributeComposition composition, BijectionMap<org.simantics.xml.sax.configuration.Attribute, Annotated> attributes);\r
+       void handleIndicator(SchemaObject parent, SchemaElement indicator, SchemaElement element, String refName, RefType refType);\r
+       void handleIndicator(SchemaObject parent, SchemaElement indicator, SchemaElement any);\r
+       //void handle(SchemaObject parent, SchemaElement indicator, List<SchemaElement> elements);\r
+       void handleChoice(SchemaObject parent, SchemaElement indicator, List<SchemaElement> elements, String name);\r
+       void handle(SchemaObject parent, Attribute attribute) ;\r
+       void handle(SchemaObject parent, AttributeGroup attribute) ;\r
+       void handle(SchemaObject parent, NamedGroup attribute);\r
+       void handleSimpleType(SchemaObject parent, SchemaObject simpleType);\r
+       void handleComplexType(SchemaObject complexTypeObj);\r
+       void handleElement(SchemaObject complexTypeObj);\r
+       String getComplexTypePrefix();  \r
+       String getAttributeGroupPrefix();\r
+       String getName(SchemaObject obj);\r
+       String getBaseClass(ObjectType type);\r
+}\r