Converter

load->view('rdf/html_tag_helpers'); $input_format_options = array('Guess' => 'guess'); $output_format_options = array(); foreach (EasyRdf_Format::getFormats() as $format) { if ($format->getSerialiserClass()) { $output_format_options[$format->getLabel()] = $format->getName(); } if ($format->getParserClass()) { $input_format_options[$format->getLabel()] = $format->getName(); } } // Stupid PHP :( if (get_magic_quotes_gpc() and isset($_REQUEST['data'])) { $_REQUEST['data'] = stripslashes($_REQUEST['data']); } // Default to Guess input and Turtle output if (!isset($_REQUEST['output_format'])) { $_REQUEST['output_format'] = 'turtle'; } if (!isset($_REQUEST['input_format'])) { $_REQUEST['input_format'] = 'guess'; } // Display the form, if raw option isn't set if (!isset($_REQUEST['raw'])) { print "\n"; print "EasyRdf Converter\n"; print "\n"; print "

EasyRdf Converter

\n"; print "
\n"; print form_tag(); print label_tag('data', 'Input Data: ').'
'.text_area_tag('data', '', array('cols'=>30, 'rows'=>10)) . "
\n"; print label_tag('uri', 'or Uri: ').text_field_tag('uri', 'http://www.dajobe.org/foaf.rdf', array('size'=>80)) . "
\n"; print label_tag('input_format', 'Input Format: ').select_tag('input_format', $input_format_options) . "
\n"; print label_tag('output_format', 'Output Format: ').select_tag('output_format', $output_format_options) . "
\n"; print label_tag('raw', 'Raw Output: ').check_box_tag('raw') . "
\n"; print reset_tag() . submit_tag(); print form_end_tag(); print "
\n"; } if (isset($_REQUEST['uri']) or isset($_REQUEST['data'])) { // Parse the input $graph = new EasyRdf_Graph($_REQUEST['uri']); if (empty($_REQUEST['data'])) { $graph->load($_REQUEST['uri'], $_REQUEST['input_format']); } else { $graph->parse($_REQUEST['data'], $_REQUEST['input_format'], $_REQUEST['uri']); } // Lookup the output format $format = EasyRdf_Format::getFormat($_REQUEST['output_format']); // Serialise to the new output format $output = $graph->serialise($format); if (!is_scalar($output)) { $output = var_export($output, true); } // Send the output back to the client if (isset($_REQUEST['raw'])) { header('Content-Type: '.$format->getDefaultMimeType()); print $output; } else { print '
'.htmlspecialchars($output).'
'; } } if (!isset($_REQUEST['raw'])) { print "\n"; print "\n"; } ?>