| 202 | | // var RDFService = Components.classes["@mozilla.org/rdf/rdf-service;1"] |
| 203 | | // .getService(Components.interfaces.nsIRDFService); |
| 204 | | // var IOService = Components.classes["@mozilla.org/network/io-service;1"] |
| 205 | | // .getService(Components.interfaces.nsIIOService); |
| 206 | | // var ds = Components.classes["@mozilla.org/rdf/datasource;1?name=in-memory-datasource"] |
| 207 | | // .createInstance(Components.interfaces.nsIRDFDataSource); |
| 208 | | // var rdfParser = Components.classes["@mozilla.org/rdf/xml-parser;1"] |
| 209 | | // .createInstance(Components.interfaces.nsIRDFXMLParser); |
| 210 | | // rdfParser.parseString(ds, IOService.newURI(doc.documentURI, null, null), xml); |
| 211 | | // |
| | 210 | //var uri = "data:text/xml," + encodeURI(xml); |
| | 211 | |
| | 212 | var RDFService = Components.classes["@mozilla.org/rdf/rdf-service;1"] |
| | 213 | .getService(Components.interfaces.nsIRDFService); |
| | 214 | var IOService = Components.classes["@mozilla.org/network/io-service;1"] |
| | 215 | .getService(Components.interfaces.nsIIOService); |
| | 216 | var ds = Components.classes["@mozilla.org/rdf/datasource;1?name=in-memory-datasource"] |
| | 217 | .createInstance(Components.interfaces.nsIRDFDataSource); |
| | 218 | var rdfParser = Components.classes["@mozilla.org/rdf/xml-parser;1"] |
| | 219 | .createInstance(Components.interfaces.nsIRDFXMLParser); |
| | 220 | rdfParser.parseString(ds, IOService.newURI(doc.documentURI, null, null), xml); |
| | 221 | |
| | 222 | var outputStream = { |
| | 223 | data: "", |
| | 224 | close : function () {}, |
| | 225 | flush : function () {}, |
| | 226 | write : function (buffer, count) { |
| | 227 | // 文字化け対策 |
| | 228 | this.data += decodeURIComponent(escape(buffer)); |
| | 229 | return count; |
| | 230 | }, |
| | 231 | writeFrom : function (stream, count) {} , |
| | 232 | isNonBlocking: false |
| | 233 | }; |
| | 234 | var ser = Components.classes["@mozilla.org/rdf/xml-serializer;1"] |
| | 235 | .createInstance(Components.interfaces.nsIRDFXMLSerializer); |
| | 236 | ser.init(ds); |
| | 237 | ser.QueryInterface(Components.interfaces.nsIRDFXMLSource).Serialize(outputStream); |
| | 238 | |
| | 239 | var uri = "http://www.w3.org/RDF/Validator/ARPServlet?RDF=" + |
| | 240 | encodeURIComponent(outputStream.data.replace(/\r?\n/g, "\r\n")) + |
| | 241 | "&PARSE=Parse+RDF&TRIPLES_AND_GRAPH=PRINT_BOTH&FORMAT=PNG_EMBED"; |
| | 242 | // var uri = "data:text/xml," + encodeURI(outputStream.data); |
| | 243 | |