--- /dev/null
+package org.simantics.graph.query;\r
+\r
+\r
+\r
+public class Paths {\r
+ public static PathRoot Root = new PathRoot("");\r
+ public static Path SimanticsDomain = Root.child("www.simantics.org");\r
+ \r
+ public Path Layer0;\r
+ \r
+ public Path InstanceOf;\r
+ public Path Inherits;\r
+ public Path SupertypeOf;\r
+ public Path SubrelationOf;\r
+ public Path SuperrelationOf;\r
+ public Path InverseOf;\r
+ public Path HasDatatype;\r
+ public Path Asserts;\r
+ public Path Assertion;\r
+ public Path HasPredicate;\r
+ public Path HasObject;\r
+ public Path Equals;\r
+ public Path ConsistsOf;\r
+ public Path PartOf;\r
+ public Path HasNext;\r
+ public Path HasPrevious; \r
+ public Path Template;\r
+ public Path HasTemplate;\r
+ public Path HasTemplateParameters;\r
+ public Path HasCardinality; \r
+ public Path PropertyDefinition;\r
+ public Path HasPropertyDefinition;\r
+ public Path ConcernsRelation;\r
+ public Path HasDomain;\r
+ public Path HasRange;\r
+ public Path Tag;\r
+ public Path Entity;\r
+ public Path IsWeaklyRelatedTo;\r
+ public Path IsRelatedTo;\r
+ \r
+ public Path HasResourceClass;\r
+ public Path Deprecated;\r
+ \r
+ public Path Library;\r
+ \r
+ // Literal types\r
+ public Path Literal;\r
+ public Path Boolean;\r
+ public Path Byte;\r
+ public Path Integer;\r
+ public Path Long;\r
+ public Path Float;\r
+ public Path Double;\r
+ public Path String; \r
+ public Path Variant;\r
+ \r
+ public Path BooleanArray;\r
+ public Path ByteArray;\r
+ public Path IntegerArray;\r
+ public Path LongArray;\r
+ public Path FloatArray;\r
+ public Path DoubleArray;\r
+ public Path StringArray;\r
+ \r
+ public Path Graph;\r
+ public Path Datatype;\r
+ public Path IntegerRange;\r
+ \r
+ public Path List;\r
+ public Path List_Entry;\r
+ public Path List_Next;\r
+ public Path List_Previous;\r
+ public Path List_Element;\r
+ \r
+ public Paths(String layer0Version) {\r
+ Layer0 = SimanticsDomain.child("Layer0-" + layer0Version);\r
+ \r
+ InstanceOf = Layer0.child("InstanceOf");\r
+ Inherits = Layer0.child("Inherits");\r
+ SupertypeOf = Layer0.child("SupertypeOf");\r
+ SubrelationOf = Layer0.child("SubrelationOf");\r
+ SuperrelationOf = Layer0.child("SuperrelationOf");\r
+ InverseOf = Layer0.child("InverseOf");\r
+ HasDatatype = Layer0.child("HasDataType");\r
+ Asserts = Layer0.child("Asserts");\r
+ Assertion = Layer0.child("Assertion");\r
+ HasPredicate = Layer0.child("HasPredicate");\r
+ HasObject = Layer0.child("HasObject");\r
+ Equals = Layer0.child("Equals");\r
+ ConsistsOf = Layer0.child("ConsistsOf");\r
+ PartOf = Layer0.child("PartOf");\r
+ HasNext = Layer0.child("HasNext");\r
+ HasPrevious = Layer0.child("HasPrevious"); \r
+ Template = Layer0.child("Template");\r
+ HasTemplate = Layer0.child("HasTemplate");\r
+ HasTemplateParameters = Layer0.child("HasTemplateParameters");\r
+ HasCardinality = Layer0.child("HasCardinality"); \r
+ PropertyDefinition = Layer0.child("PropertyDefinition");\r
+ HasPropertyDefinition = Layer0.child("HasPropertyDefinition");\r
+ ConcernsRelation = Layer0.child("ConcernsRelation");\r
+ HasDomain = Layer0.child("HasDomain");\r
+ HasRange = Layer0.child("HasRange");\r
+ Tag = Layer0.child("Tag");\r
+ Entity = Layer0.child("Entity");\r
+ IsWeaklyRelatedTo = Layer0.child("IsWeaklyRelatedTo");\r
+ IsRelatedTo = Layer0.child("IsRelatedTo");\r
+ \r
+ HasResourceClass = Layer0.child("HasResourceClass");\r
+ Deprecated = Layer0.child("Deprecated");\r
+ \r
+ Library = Layer0.child("Library");\r
+ \r
+ // Literal types\r
+ Literal = Layer0.child("Literal");\r
+ Boolean = Layer0.child("Boolean");\r
+ Byte = Layer0.child("Byte");\r
+ Integer = Layer0.child("Integer");\r
+ Long = Layer0.child("Long");\r
+ Float = Layer0.child("Float");\r
+ Double = Layer0.child("Double");\r
+ String = Layer0.child("String"); \r
+ Variant = Layer0.child("Variant");\r
+ \r
+ BooleanArray = Layer0.child("BooleanArray");\r
+ ByteArray = Layer0.child("ByteArray");\r
+ IntegerArray = Layer0.child("IntegerArray");\r
+ LongArray = Layer0.child("LongArray");\r
+ FloatArray = Layer0.child("FloatArray");\r
+ DoubleArray = Layer0.child("DoubleArray");\r
+ StringArray = Layer0.child("StringArray");\r
+ \r
+ Graph = Layer0.child("Graph");\r
+ Datatype = Layer0.child("DataType");\r
+ IntegerRange = Layer0.child("IntegerRange");\r
+ \r
+ List = Layer0.child("List");\r
+ List_Entry = List.child("Entry");\r
+ List_Next = List.child("Next");\r
+ List_Previous = List.child("Previous");\r
+ List_Element = List.child("Element"); \r
+ }\r
+ \r
+ public Path getPath(String url) {\r
+ String[] parts = url.split("/{1,2}");\r
+ if ( parts.length == 0 ) return null;\r
+ Path path = parts[0].equals("http:") ? Root : new PathRoot(parts[0]);\r
+ for (int i=1; i<parts.length; i++) {\r
+ path = path.child( parts[i] );\r
+ }\r
+ return path;\r
+ }\r
+\r
+}\r