GeoPubby  Version 0.1.0.0
GraphMLWriter Class Reference
Inheritance diagram for GraphMLWriter:
Collaboration diagram for GraphMLWriter:

Public Member Functions

 GraphMLWriter (String epsg)
 
String getColorForResource (Model model, Resource res, String defaultColor)
 
ExtendedIterator< Resource > write (Model model, HttpServletResponse response) throws IOException
 
Tuple< Boolean, String > handleGeometry (Statement curst, Resource ind, Model model)
 

Static Public Member Functions

static StyleObject handleStyle (Resource res)
 

Protected Attributes

String epsg =null
 
Double lat
 
String sourceCRS ="EPSG:4326"
 
Geometry geom
 
GridCoverage cov
 
StyleObject styleObject
 
ResultStyleFormatter styleformatter
 
Property usedProperty =null
 
WKTReader reader =new WKTReader()
 

Package Attributes

Double lon
 

Constructor & Destructor Documentation

◆ GraphMLWriter()

GraphMLWriter ( String  epsg)
26  {
27  super(epsg);
28  }
String epsg
Definition: GeoModelWriter.java:30

References GeoModelWriter.epsg.

Member Function Documentation

◆ getColorForResource()

String getColorForResource ( Model  model,
Resource  res,
String  defaultColor 
)
30  {
31  Property scof=model.createProperty("http://www.w3.org/2000/01/rdf-schema#subClassOf");
32  Property spof=model.createProperty("http://www.w3.org/2000/01/rdf-schema#subPropertyOf");
33  Property rdftype=model.createProperty("http://www.w3.org/1999/02/22-rdf-syntax-ns#type");
34  if(res.getURI().equals("http://www.w3.org/2002/07/owl#Class") || res.getURI().equals("http://www.w3.org/2000/01/rdf-schema#Class")) {
35  return "#ffa500";
36  }else if(res.getURI().contains("http://www.w3.org/2000/01/rdf-schema#")) {
37  return "#F08080";
38  }else if(res.listProperties(spof).hasNext()){
39  return "#F0F8FF";
40  }else if(res.listProperties(scof).hasNext()){
41  return "#ffa500";
42  }else if(res.listProperties(rdftype).hasNext()) {
43  StmtIterator it=res.listProperties(rdftype);
44  while(it.hasNext()) {
45  Statement st=it.next();
46  if(st.getObject().isURIResource()
47  && (st.getObject().asResource().getURI().equals("http://www.w3.org/2002/07/owl#Class")
48  || res.getURI().equals("http://www.w3.org/2000/01/rdf-schema#Class"))) {
49  return "#ffa500";
50  }
51  if(st.getObject().isURIResource() && st.getObject().asResource().getURI().equals("http://www.w3.org/2002/07/owl#Property")) {
52  return "#F0F8FF";
53  }
54  }
55  }
56  return defaultColor;
57  }

Referenced by GraphMLWriter.write().

◆ handleGeometry()

Tuple<Boolean,String> handleGeometry ( Statement  curst,
Resource  ind,
Model  model 
)
inherited
148  {
149  boolean handled=false;
150  String type="vector";
151  if (GEO.ASWKT.getURI().equals(curst.getPredicate().getURI().toString())
152  || GEO.P_GEOMETRY.getURI().equals(curst.getPredicate().getURI())
153  || GEO.P625.getURI().equals(curst.getPredicate().getURI())) {
154  try {
155  geom = reader.read(curst.getObject().asLiteral().getString());
156  if(this.epsg!=null) {
157  geom=ReprojectionUtils.reproject(geom, sourceCRS, epsg);
158  }
159  } catch (ParseException e) {
160  // TODO Auto-generated catch block
161  e.printStackTrace();
162  }
163  handled=true;
164  } else if (GEO.ASGEOJSON.getURI().equals(curst.getPredicate().getURI().toString())
165  && this.epsg != null) {
166  if (curst.getObject().asLiteral().getString() != null) {
167  GeoJSONReader read = new GeoJSONReader();
168  geom = read.read(curst.getObject().asLiteral().getString());
169  if(this.epsg!=null) {
170  ind.addProperty(GEO.EPSG, model.createTypedLiteral(this.epsg));
171  geom = ReprojectionUtils.reproject(geom, sourceCRS, epsg);
172  }
173  }
174  handled=true;
175  } else if (GEO.ASKML.getURI().equals(curst.getPredicate().getURI().toString())
176  && this.epsg != null) {
177  if (curst.getObject().asLiteral().getString() != null) {
178  KMLReader read = new KMLReader();
179  try {
180  geom = read.read(curst.getObject().asLiteral().getString());
181  if(this.epsg!=null) {
182  ind.addProperty(GEO.EPSG, model.createTypedLiteral(this.epsg));
183  geom = ReprojectionUtils.reproject(geom, sourceCRS, epsg);
184  }
185  } catch (ParseException e) {
186  // TODO Auto-generated catch block
187  e.printStackTrace();
188  }
189  }
190  handled=true;
191  } else if (GEO.ASWKB.getURI().equals(curst.getPredicate().getURI().toString())
192  && this.epsg != null) {
193  if (curst.getObject().asLiteral().getString() != null) {
194  WKBReader wkbread=new WKBReader();
195  try {
196  geom = wkbread.read(curst.getObject().asLiteral().getString().getBytes());
197  if(this.epsg!=null) {
198  ind.addProperty(GEO.EPSG, model.createTypedLiteral(this.epsg));
199  geom = ReprojectionUtils.reproject(geom, sourceCRS, epsg);
200  }
201  } catch (ParseException e) {
202  // TODO Auto-generated catch block
203  e.printStackTrace();
204  }
205  }
206  handled=true;
207  } else if (GEO.ASHEXWKB.getURI().equals(curst.getPredicate().getURI().toString())
208  && this.epsg != null) {
209  if (curst.getObject().asLiteral().getString() != null) {
210  WKBReader wkbread=new WKBReader();
211  try {
212  geom = wkbread.read(WKBReader.hexToBytes(curst.getObject().asLiteral().getString()));
213  if(this.epsg!=null) {
214  ind.addProperty(GEO.EPSG, model.createTypedLiteral(this.epsg));
215  geom = ReprojectionUtils.reproject(geom, sourceCRS, epsg);
216  }
217  } catch (ParseException e) {
218  // TODO Auto-generated catch block
219  e.printStackTrace();
220  }
221  }
222  handled=true;
223  }else if (GEO.ASGML.getURI().equals(curst.getPredicate().getURI().toString())
224  && this.epsg != null) {
225  if (curst.getObject().asLiteral().getString() != null) {
226  GMLReader reader=new GMLReader();
227  try {
228  geom=reader.read(curst.getObject().asLiteral().getString(), new GeometryFactory());
229  if(this.epsg!=null) {
230  ind.addProperty(GEO.EPSG, model.createTypedLiteral(this.epsg));
231  geom = ReprojectionUtils.reproject(geom, sourceCRS, epsg);
232  }
233  } catch (SAXException | IOException | ParserConfigurationException e) {
234  // TODO Auto-generated catch block
235  e.printStackTrace();
236  }
237  }
238  handled=true;
239  }else if (GEO.P_LAT.getURI().equals(curst.getPredicate().getURI().toString())) {
240  lat = curst.getObject().asLiteral().getDouble();
241  handled=true;
242  } else if (GEO.P_LONG.getURI().equals(curst.getPredicate().getURI().toString())) {
243  lon = curst.getObject().asLiteral().getDouble();
244  handled=true;
245  } else if (GEO.GEORSSPOINT.getURI().equals(curst.getPredicate().getURI().toString())) {
246  lat = Double.valueOf(curst.getObject().asLiteral().getString().split(" ")[0]);
247  lon = Double.valueOf(curst.getObject().asLiteral().getString().split(" ")[1]);
248  handled=true;
249  }
250  return new Tuple<Boolean,String>(handled,type);
251  }
String sourceCRS
Definition: GeoModelWriter.java:34
Geometry geom
Definition: GeoModelWriter.java:36
Double lon
Definition: GeoModelWriter.java:32
Double lat
Definition: GeoModelWriter.java:32
WKTReader reader
Definition: ModelWriter.java:22

References GEO.ASGEOJSON, GEO.ASGML, GEO.ASHEXWKB, GEO.ASKML, GEO.ASWKB, GEO.ASWKT, GeoModelWriter.epsg, GEO.EPSG, GeoModelWriter.geom, GEO.GEORSSPOINT, GeoModelWriter.lat, GeoModelWriter.lon, GEO.P625, GEO.P_GEOMETRY, GEO.P_LAT, GEO.P_LONG, ModelWriter.reader, ReprojectionUtils.reproject(), and GeoModelWriter.sourceCRS.

Referenced by AbstractGeoJSONWriter.prepareGeoJSONString(), CoverageJSONWriter.write(), X3DWriter.write(), XYZASCIIWriter.write(), EWKTWriter.write(), GeoHashWriter.write(), GeoURIWriter.write(), GMLWriter.write(), GoogleMapsLinkWriter.write(), GPXWriter.write(), KMLWriter.write(), LatLonTextWriter.write(), MapMLWriter.write(), OpenLocationCodeWriter.write(), OSMLinkWriter.write(), OSMWriter.write(), SVGWriter.write(), TopoJSONWriter.write(), TWKBWriterr.write(), WKBWriterr.write(), WKTWriter.write(), XLSWriter.write(), and XLSXWriter.write().

◆ handleStyle()

static StyleObject handleStyle ( Resource  res)
staticinherited
52  {
53  StyleObject result=new StyleObject();
54  if(res.isURIResource()){
55  result.styleId=res.getURI().toString();
56  }
57  if(res.hasProperty(RDFS.label)){
58  result.styleName= res.getProperty(RDFS.label).getLiteral().getString();
59  }
60  if(res.hasProperty(GEO.POINTSTYLE)){
61  result.pointStyle=res.getProperty(GEO.POINTSTYLE).getLiteral().getString();
62  }
63  if(res.hasProperty(GEO.POINTIMAGE)){
64  result.pointImage=res.getProperty(GEO.POINTIMAGE).getLiteral().getString();
65  }
66  if(res.hasProperty(GEO.LINESTRINGSTYLE)){
67  result.lineStringStyle=res.getProperty(GEO.LINESTRINGSTYLE).getLiteral().getString();
68  }
69  if(res.hasProperty(GEO.LINESTRINGIMAGE)){
70  result.lineStringImage=res.getProperty(GEO.LINESTRINGIMAGE).getLiteral().getString();
71  }
72  if(res.hasProperty(GEO.LINESTRINGIMAGESTYLE)){
73  result.lineStringImageStyle=res.getProperty(GEO.LINESTRINGIMAGESTYLE).getLiteral().getString();
74  }
75  if(res.hasProperty(GEO.POLYGONSTYLE)){
76  result.polygonStyle=res.getProperty(GEO.POLYGONSTYLE).getLiteral().getString();
77  }
78  if(res.hasProperty(GEO.POLYGONIMAGE)){
79  result.polygonImage=res.getProperty(GEO.POLYGONIMAGE).getLiteral().getString();
80  }
81  if(res.hasProperty(GEO.HATCH)){
82  result.hatch=res.getProperty(GEO.HATCH).getLiteral().getString();
83  }
84  if(res.hasProperty(GEO.POPUPSTYLE)){
85  result.hatch=res.getProperty(GEO.POPUPSTYLE).getLiteral().getString();
86  }
87  if(res.hasProperty(GEO.TEXTSTYLE2)){
88  result.hatch=res.getProperty(GEO.TEXTSTYLE2).getLiteral().getString();
89  }
90  if(res.hasProperty(GEO.POINTSTYLE2)){
91  result.pointStyle=res.getProperty(GEO.POINTSTYLE2).getLiteral().getString();
92  }
93  if(res.hasProperty(GEO.POINTIMAGE2)){
94  result.pointImage=res.getProperty(GEO.POINTIMAGE2).getLiteral().getString();
95  }
96  if(res.hasProperty(GEO.LINESTRINGSTYLE2)){
97  result.lineStringStyle=res.getProperty(GEO.LINESTRINGSTYLE2).getLiteral().getString();
98  }
99  if(res.hasProperty(GEO.LINESTRINGIMAGE2)){
100  result.lineStringImage=res.getProperty(GEO.LINESTRINGIMAGE2).getLiteral().getString();
101  }
102  if(res.hasProperty(GEO.LINESTRINGIMAGESTYLE2)){
103  result.lineStringImageStyle=res.getProperty(GEO.LINESTRINGIMAGESTYLE2).getLiteral().getString();
104  }
105  if(res.hasProperty(GEO.POLYGONSTYLE2)){
106  result.polygonStyle=res.getProperty(GEO.POLYGONSTYLE2).getLiteral().getString();
107  }
108  if(res.hasProperty(GEO.POLYGONIMAGE2)){
109  result.polygonImage=res.getProperty(GEO.POLYGONIMAGE2).getLiteral().getString();
110  }
111  if(res.hasProperty(GEO.HATCH2)){
112  result.hatch=res.getProperty(GEO.HATCH2).getLiteral().getString();
113  }
114  if(res.hasProperty(GEO.POPUPSTYLE2)){
115  result.hatch=res.getProperty(GEO.POPUPSTYLE2).getLiteral().getString();
116  }
117  if(res.hasProperty(GEO.TEXTSTYLE2)){
118  result.hatch=res.getProperty(GEO.TEXTSTYLE2).getLiteral().getString();
119  }
120  if(res.hasProperty(GEO.POINTSTYLE2)){
121  result.pointStyle=res.getProperty(GEO.POINTSTYLE2).getLiteral().getString();
122  }
123  if(res.hasProperty(GEO.POINTIMAGE2)){
124  result.pointImage=res.getProperty(GEO.POINTIMAGE2).getLiteral().getString();
125  }
126  if(res.hasProperty(GEO.LINESTRINGSTYLE2)){
127  result.lineStringStyle=res.getProperty(GEO.LINESTRINGSTYLE2).getLiteral().getString();
128  }
129  if(res.hasProperty(GEO.LINESTRINGIMAGE2)){
130  result.lineStringImage=res.getProperty(GEO.LINESTRINGIMAGE2).getLiteral().getString();
131  }
132  if(res.hasProperty(GEO.LINESTRINGIMAGESTYLE2)){
133  result.lineStringImageStyle=res.getProperty(GEO.LINESTRINGIMAGESTYLE2).getLiteral().getString();
134  }
135  if(res.hasProperty(GEO.POLYGONSTYLE2)){
136  result.polygonStyle=res.getProperty(GEO.POLYGONSTYLE2).getLiteral().getString();
137  }
138  if(res.hasProperty(GEO.POLYGONIMAGE2)){
139  result.polygonImage=res.getProperty(GEO.POLYGONIMAGE2).getLiteral().getString();
140  }
141  if(res.hasProperty(GEO.HATCH2)){
142  result.polygonImage=res.getProperty(GEO.HATCH2).getLiteral().getString();
143  }
144  return result;
145  }

References StyleObject.hatch, GEO.HATCH, GEO.HATCH2, StyleObject.lineStringImage, GEO.LINESTRINGIMAGE, GEO.LINESTRINGIMAGE2, StyleObject.lineStringImageStyle, GEO.LINESTRINGIMAGESTYLE, GEO.LINESTRINGIMAGESTYLE2, StyleObject.lineStringStyle, GEO.LINESTRINGSTYLE, GEO.LINESTRINGSTYLE2, StyleObject.pointImage, GEO.POINTIMAGE, GEO.POINTIMAGE2, StyleObject.pointStyle, GEO.POINTSTYLE, GEO.POINTSTYLE2, StyleObject.polygonImage, GEO.POLYGONIMAGE, GEO.POLYGONIMAGE2, StyleObject.polygonStyle, GEO.POLYGONSTYLE, GEO.POLYGONSTYLE2, GEO.POPUPSTYLE, GEO.POPUPSTYLE2, StyleObject.styleId, StyleObject.styleName, and GEO.TEXTSTYLE2.

Referenced by ResourceDescription.getStyle(), AbstractGeoJSONWriter.prepareGeoJSONString(), and KMLWriter.write().

◆ write()

ExtendedIterator<Resource> write ( Model  model,
HttpServletResponse  response 
) throws IOException

Reimplemented from ModelWriter.

60  {
61  Set<Resource> resources = new HashSet<>();
62  model.listStatements().toList().forEach(statement -> {
63  resources.add(statement.getSubject());
64  RDFNode object = statement.getObject();
65  if (object.isResource()) {
66  resources.add(object.asResource());
67  }
68  });
69  Set<String> uriToNodeId = new HashSet<String>();
70  Integer literalcounter = 0, edgecounter = 0;
71  Integer typecounter = 0, langcounter = 0, valcounter = 0;
72  StringWriter strwriter = new StringWriter();
73  XMLOutputFactory factory = XMLOutputFactory.newInstance();
74  try {
75  XMLStreamWriter writer = new IndentingXMLStreamWriter(factory.createXMLStreamWriter(strwriter));
76  writer.writeStartDocument();
77  writer.writeStartElement("graphml");
78  writer.writeAttribute("xmlns", "http://graphml.graphdrawing.org/xmlns");
79  writer.writeAttribute("xmlns:xsi", "http://www.w3.org/2001/XMLSchema-instance");
80  writer.writeAttribute("xmlns:y", "http://www.yworks.com/xml/graphml");
81  writer.writeAttribute("xmlns:schemaLocation",
82  "http://graphml.graphdrawing.org/xmlns http://graphml.graphdrawing.org/xmlns/1.0/graphml.xsd");
83  writer.writeStartElement("key");
84  writer.writeAttribute("for", "node");
85  writer.writeAttribute("id", "nodekey");
86  writer.writeAttribute("yfiles.type", "nodegraphics");
87  writer.writeEndElement();
88  writer.writeStartElement("key");
89  writer.writeAttribute("for", "edge");
90  writer.writeAttribute("id", "edgekey");
91  writer.writeAttribute("yfiles.type", "edgegraphics");
92  writer.writeEndElement();
93  writer.writeStartElement("graph");
94  writer.writeAttribute("id", "G");
95  writer.writeAttribute("edgedefault", "undirected");
96  for (Resource res : resources) {
97  if (!res.isURIResource())
98  continue;
99  String subprefix = null;
100  if (!uriToNodeId.contains(res.getURI())) {
101  writer.writeStartElement("node");
102  writer.writeAttribute("id", res.getURI());
103  writer.writeAttribute("uri", res.getURI());
104  writer.writeStartElement("data");
105  writer.writeAttribute("key", "nodekey");
106  literalcounter++;
107  writer.writeStartElement("y:ShapeNode");
108  writer.writeStartElement("y:Shape");
109  writer.writeAttribute("shape", "ellipse");
110  writer.writeEndElement();
111  writer.writeStartElement("y:Fill");
112  writer.writeAttribute("color", this.getColorForResource(model, res, "#800080"));
113  writer.writeAttribute("transparent", "false");
114  writer.writeEndElement();
115  writer.writeStartElement("y:NodeLabel");
116  writer.writeAttribute("alignment", "center");
117  writer.writeAttribute("autoSizePolicy", "content");
118  writer.writeAttribute("fontSize", "12");
119  writer.writeAttribute("fontStyle", "plain");
120  writer.writeAttribute("hasText", "true");
121  writer.writeAttribute("visible", "true");
122  writer.writeAttribute("width", "4.0");
123  subprefix = res.getModel().getNsURIPrefix(res.getNameSpace());
124  if (subprefix != null) {
125  writer.writeCharacters(subprefix + ":" + res.getLocalName());
126  } else {
127  writer.writeCharacters(res.getLocalName());
128  }
129  writer.writeEndElement();
130  writer.writeEndElement();
131  writer.writeEndElement();
132  writer.writeEndElement();
133  uriToNodeId.add(res.getURI());
134  }
135  StmtIterator propiter = res.listProperties();
136  while (propiter.hasNext()) {
137  Statement curst = propiter.next();
138  if (curst.getObject().isURIResource()) {
139  if (!uriToNodeId.contains(curst.getObject().asResource().getURI())) {
140  writer.writeStartElement("node");
141  writer.writeAttribute("id", curst.getObject().asResource().getURI());
142  writer.writeAttribute("value", curst.getObject().asResource().getLocalName());
143  writer.writeAttribute("uri", curst.getObject().asResource().getURI());
144  writer.writeStartElement("data");
145  writer.writeAttribute("key", "nodekey");
146  literalcounter++;
147  writer.writeStartElement("y:ShapeNode");
148  writer.writeStartElement("y:Shape");
149  writer.writeAttribute("shape", "ellipse");
150  writer.writeEndElement();
151  writer.writeStartElement("y:Fill");
152  writer.writeAttribute("color", this.getColorForResource(model, curst.getObject().asResource(), "#800080"));
153  writer.writeAttribute("transparent", "false");
154  writer.writeEndElement();
155  writer.writeStartElement("y:NodeLabel");
156  writer.writeAttribute("alignment", "center");
157  writer.writeAttribute("autoSizePolicy", "content");
158  writer.writeAttribute("fontSize", "12");
159  writer.writeAttribute("fontStyle", "plain");
160  writer.writeAttribute("hasText", "true");
161  writer.writeAttribute("visible", "true");
162  writer.writeAttribute("width", "4.0");
163  subprefix = curst.getObject().asResource().getModel()
164  .getNsURIPrefix(curst.getObject().asResource().getNameSpace());
165  if (subprefix != null) {
166  writer.writeCharacters(subprefix + ":" + curst.getObject().asResource().getLocalName());
167  } else {
168  writer.writeCharacters(curst.getObject().asResource().getLocalName());
169  }
170  writer.writeEndElement();
171  writer.writeEndElement();
172  writer.writeEndElement();
173  writer.writeEndElement();
174  uriToNodeId.add(curst.getObject().asResource().getURI());
175  }
176  writer.writeStartElement("edge");
177  writer.writeAttribute("id", "e" + edgecounter++);
178  writer.writeAttribute("uri", curst.getPredicate().getURI());
179  writer.writeAttribute("source", curst.getSubject().getURI());
180  writer.writeAttribute("target", curst.getObject().asResource().getURI());
181  writer.writeStartElement("data");
182  writer.writeAttribute("key", "edgekey");
183  literalcounter++;
184  writer.writeStartElement("y:PolyLineEdge");
185  writer.writeStartElement("y:EdgeLabel");
186  writer.writeAttribute("alignment", "center");
187  writer.writeAttribute("configuration", "AutoFlippingLabel");
188  writer.writeAttribute("fontSize", "12");
189  writer.writeAttribute("fontStyle", "plain");
190  writer.writeAttribute("hasText", "true");
191  writer.writeAttribute("visible", "true");
192  writer.writeAttribute("width", "4.0");
193  subprefix = curst.getPredicate().asResource().getModel()
194  .getNsURIPrefix(curst.getPredicate().asResource().getNameSpace());
195  if (subprefix != null) {
196  writer.writeCharacters(subprefix + ":" + curst.getPredicate().getLocalName());
197  } else {
198  writer.writeCharacters(curst.getPredicate().getLocalName());
199  }
200  writer.writeEndElement();
201  writer.writeEndElement();
202  writer.writeEndElement();
203  writer.writeEndElement();
204  } else if (curst.getObject().isLiteral()) {
205  writer.writeStartElement("node");
206  writer.writeAttribute("id", "literal" + literalcounter);
207  if (!curst.getObject().asLiteral().getValue().toString().isEmpty()) {
208  writer.writeStartElement("data");
209  writer.writeAttribute("key", "nodekey");
210  writer.writeStartElement("y:ShapeNode");
211  writer.writeStartElement("y:Shape");
212  writer.writeAttribute("shape", "ellipse");
213  writer.writeEndElement();
214  writer.writeStartElement("y:Fill");
215  if (curst.getPredicate().getURI() != null && curst.getPredicate().getURI()
216  .startsWith("http://www.w3.org/2000/01/rdf-schema#")) {
217  writer.writeAttribute("color", "#F08080");
218  } else {
219  writer.writeAttribute("color", "#008000");
220  }
221  writer.writeAttribute("transparent", "false");
222  writer.writeEndElement();
223  writer.writeStartElement("y:NodeLabel");
224  writer.writeAttribute("alignment", "center");
225  writer.writeAttribute("autoSizePolicy", "content");
226  writer.writeAttribute("fontSize", "12");
227  writer.writeAttribute("fontStyle", "plain");
228  writer.writeAttribute("hasText", "true");
229  writer.writeAttribute("visible", "true");
230  writer.writeAttribute("width", "4.0");
231  writer.writeCharacters(curst.getObject().asLiteral().getValue().toString() + " (xsd:"
232  + curst.getObject().asLiteral().getDatatype().getURI().substring(
233  curst.getObject().asLiteral().getDatatype().getURI().lastIndexOf('#') + 1)
234  + ")");
235  writer.writeEndElement();
236  writer.writeEndElement();
237  writer.writeEndElement();
238  valcounter++;
239  }
240  writer.writeStartElement("data");
241  writer.writeAttribute("key", "type" + typecounter);
242  typecounter++;
243  writer.writeCharacters(curst.getObject().asLiteral().getDatatypeURI());
244  writer.writeEndElement();
245  if (curst.getObject().asLiteral().getLanguage() != null && !curst.getObject().asLiteral().getLanguage().isEmpty()) {
246  writer.writeStartElement("data");
247  writer.writeAttribute("key", "lang" + langcounter);
248  langcounter++;
249  writer.writeCharacters(curst.getObject().asLiteral().getLanguage());
250  writer.writeEndElement();
251  }
252  writer.writeEndElement();
253  writer.writeStartElement("edge");
254  writer.writeAttribute("id", "e" + edgecounter++);
255  writer.writeAttribute("uri", curst.getPredicate().getURI());
256  writer.writeAttribute("source", curst.getSubject().getURI());
257  writer.writeAttribute("target", "literal" + literalcounter);
258  writer.writeStartElement("data");
259  writer.writeAttribute("key", "edgekey");
260  literalcounter++;
261  writer.writeStartElement("y:PolyLineEdge");
262  writer.writeStartElement("y:EdgeLabel");
263  writer.writeAttribute("alignment", "center");
264  writer.writeAttribute("configuration", "AutoFlippingLabel");
265  writer.writeAttribute("fontSize", "12");
266  writer.writeAttribute("fontStyle", "plain");
267  writer.writeAttribute("hasText", "true");
268  writer.writeAttribute("visible", "true");
269  writer.writeAttribute("width", "4.0");
270  subprefix = curst.getPredicate().asResource().getModel()
271  .getNsURIPrefix(curst.getPredicate().asResource().getNameSpace());
272  if (subprefix != null) {
273  writer.writeCharacters(subprefix + ":" + curst.getPredicate().getLocalName());
274  } else {
275  writer.writeCharacters(curst.getPredicate().getLocalName());
276  }
277  writer.writeEndElement();
278  writer.writeEndElement();
279  writer.writeEndElement();
280  writer.writeEndElement();
281  literalcounter++;
282  }
283  }
284  }
285  writer.writeEndElement();
286  writer.writeEndElement();
287  writer.writeEndDocument();
288  writer.flush();
289  strwriter.flush();
290  } catch (Exception e) {
291  e.printStackTrace();
292  }
293  response.getWriter().write(strwriter.toString());
294  response.getWriter().close();
295  return null;
296  }
String getColorForResource(Model model, Resource res, String defaultColor)
Definition: GraphMLWriter.java:30

References GraphMLWriter.getColorForResource().

Member Data Documentation

◆ cov

GridCoverage cov
protectedinherited

◆ epsg

String epsg =null
protectedinherited

Referenced by AbstractGeoJSONWriter.AbstractGeoJSONWriter(), CoverageJSONWriter.CoverageJSONWriter(), CSVWriter.CSVWriter(), CypherWriter.CypherWriter(), ESRIJSONWriter.ESRIJSONWriter(), EWKTWriter.EWKTWriter(), EXIJSONWriter.EXIJSONWriter(), GDFWriter.GDFWriter(), GeobufWriter.GeobufWriter(), GeoHashWriter.GeoHashWriter(), GeoJSONLDWriter.GeoJSONLDWriter(), GeoJSONWriterr.GeoJSONWriterr(), GeoModelWriter.GeoModelWriter(), GeoURIWriter.GeoURIWriter(), GEXFWriter.GEXFWriter(), GMLWriter.GMLWriter(), GoogleMapsLinkWriter.GoogleMapsLinkWriter(), GPXWriter.GPXWriter(), GraphMLWriter.GraphMLWriter(), GRASSVectorASCIIWriter.GRASSVectorASCIIWriter(), GXLWriter.GXLWriter(), GeoModelWriter.handleGeometry(), HexTuplesWriter.HexTuplesWriter(), JSONPWriter.JSONPWriter(), KMLWriter.KMLWriter(), LatLonTextWriter.LatLonTextWriter(), LDWriter.LDWriter(), MapMLWriter.MapMLWriter(), OpenLocationCodeWriter.OpenLocationCodeWriter(), OSMLinkWriter.OSMLinkWriter(), OSMWriter.OSMWriter(), SHPWriter.SHPWriter(), SVGWriter.SVGWriter(), TGFWriter.TGFWriter(), TLPWriter.TLPWriter(), TopoJSONWriter.TopoJSONWriter(), TWKBWriterr.TWKBWriterr(), WKBRasterWriter.WKBRasterWriter(), WKBWriterr.WKBWriterr(), WKTWriter.WKTWriter(), X3DWriter.write(), XYZASCIIWriter.write(), ESRIJSONWriter.write(), EWKTWriter.write(), GeoURIWriter.write(), GoogleMapsLinkWriter.write(), GPXWriter.write(), MapMLWriter.write(), OSMLinkWriter.write(), TWKBWriterr.write(), WKBWriterr.write(), WKTWriter.write(), XLSWriter.write(), XLSXWriter.write(), LDWriter.write(), X3DWriter.X3DWriter(), XLSWriter.XLSWriter(), XLSXWriter.XLSXWriter(), XYZASCIIWriter.XYZASCIIWriter(), and YAMLWriter.YAMLWriter().

◆ geom

◆ lat

◆ lon

◆ reader

◆ sourceCRS

◆ styleformatter

◆ styleObject

StyleObject styleObject
protectedinherited

◆ usedProperty

Property usedProperty =null
protectedinherited