- for(ResourceInfo info : infos.valueCollection())
- discoverOwners(graph, info);
- for(ResourceInfo info : infos.valueCollection())
- fixInstanceOf(graph, info);
- for(ResourceInfo info : infos.valueCollection())
- if(info.owner > 0) {
- ResourceInfo ownerInfo = infos.get(info.owner);
- ownerInfo.owned.add(info.ownerPredicate);
- ownerInfo.owned.add(info.resource);
- } else if (info.owner == 0) {
- //System.err.println("faf1");
- } else if (info.owner == -1) {
- //System.err.println("faf2");
- }
-
- TreeMap<String,ResourceInfo> order = new TreeMap<>();
- for(ResourceInfo info : infos.valueCollection())
- order.put(info.name, info);
-
- this.output.append("MOD = <http://www.simantics.org/Modeling-1.2>\n");
- this.output.append("L0 = <http://www.simantics.org/Layer0-1.1>\n");
- this.output.append("L0X = <http://www.simantics.org/Layer0X-1.1>\n");
- this.output.append("DIA = <http://www.simantics.org/Diagram-2.2>\n");
- this.output.append("STR = <http://www.simantics.org/Structural-1.2>\n");
- this.output.append("DOCU = <http://www.simantics.org/Documentation-1.2>\n");
- this.output.append("DOC = <http://www.simantics.org/Document-1.2>\n");
- this.output.append("G2D = <http://www.simantics.org/G2D-1.1>\n");
- this.output.append("SEL = <http://www.simantics.org/SelectionView-1.2>\n");
- this.output.append("VP = <http://www.simantics.org.Viewpoint-1.2>\n");
- this.output.append("IMAGE2 = <http://www.simantics.org/Image2-1.2>\n");
- this.output.append("GRAPHFILE = <http://www.simantics.org/GraphFile-0.1>\n");
- this.output.append("APROS_OPER = <http://www.apros.fi/OperationUI-6.6>\n");
- this.output.append("SIMUPEDIA = <http://www.semantum.fi/Simupedia-1.0>\n");
- this.output.append("SIMUPEDIA_WB = <http://www.semantum.fi/SimupediaWorkbench-1.0>\n");
- this.output.append("SIMUPEDIA_STD = <http://semantum.fi/SimupediaStandardLibrary@1.3-trunk>\n");
-
- for(ResourceInfo info : order.values())
- printURI(graph, info);
-
+
+ TreeMap<String,ResourceInfo> order = new TreeMap<>();
+ for(ResourceInfo info : infos.valueCollection())
+ order.put(info.name, info);
+
+ for(ResourceInfo info : order.values())
+ printURI(graph, info, true, 0);
+
+ for(ResourceInfo info : order.values())
+ if(!info.hasURI && info.owner < 0)
+ printURI(graph, info, false, 0);
+
+ StringBuilder refs = new StringBuilder();
+ for(String ontology : referencedOntologies) {
+ String key = ontologies.get(ontology);
+ refs.append(key + " = <" + ontology + ">\n");
+ }
+ output.insert(0, refs.toString());
+