Template Version: @(#)onepager.txt 1.35 07/11/07 SMI Copyright 2007 Sun Microsystems 1. Introduction 1.1. Project/Component Working Name: Raptor 1.4.19 1.2. Name of Document Author/Supplier: Author: Jerry Tan Sponsor: Brian Cameron 1.3. Date of This Document: 07/21/09 1.4. Name of Major Document Customer(s)/Consumer(s): 1.4.1. The PAC or CPT you expect to review your project: Solaris PAC 1.4.2. The ARC(s) you expect to review your project: LSARC 1.4.3. The Director/VP who is "Sponsoring" this project: robert.odea@sun.com 1.4.4. The name of your business unit: OpenSolaris Desktop 1.5. Email Aliases: 1.5.1. Responsible Manager: harry.lu@sun.com 1.5.2. Responsible Engineer: jerry.tan@sun.com 1.5.3. Marketing Manager: glynn.foster@sun.com 1.5.4. Interest List: desktop-discuss@opensolaris.org 2. Project Summary 2.1. Project Description: Raptor is a free software C library that provides a set of parsers and serializers that generate Resource Description Framework (RDF) triples by parsing syntaxes or serialize the triples into a syntax. 4. Technical Description: 4.1. Details: The Raptor library provides a high-level interface to a set of parsers and serializers that generate Resource Description Framework (RDF) triples by parsing syntaxes or serialize the triples into syntaxes. The supported parsing syntaxes include RDF/XML, N-Triples, Turtle, TRiG, RSS tag soup (including all RSS and Atoms), GRDDL, RDFa and the serializing syntaxes include RDF/XML (3 varieties), N-Triples, Turtle, RSS 1.0, Atom 1.0, GraphViz DOT and RDF/JSON. The RDF/XML parser can use libxml XML parsers for providing the SAX event stream. The library functions are arranged in an object-oriented style with constructors, destructors and method calls. The statements and error messages are delivered via callback functions. Raptor contains a URI-reference parsing and resolving (not retrieval) class (raptor_uri) sufficient for dealing with URI-references inside RDF. This functionality is modular and can be transparently replaced with another existing and compatible URI implementation. It also provides a URI-retrieval class (raptor_www) for wrapping existing library such as libxml2 or BSD libfetch that provides full or partial retrieval of data from URIs and an I/O stream abstraction (raptor_iostream) for supportin serializing to a variety of outputs. Raptor uses Unicode strings for RDF literals and URIs and preserves them throughout the library. It uses the UTF-8 encoding of Unicode at the API for passing in or returning Unicode strings. It is intended that the preservation of Unicode for URIs will support Internationalized Resource Identifiers (IRIs) which are still under development and standardisation. A typical C programe that use raptor may look like this #include raptor_init(); raptor_parser *p=raptor_new_parser("rdfxml"); raptor_set_statement_handler(p,NULL,print_triples); raptor_uri *file_uri=raptor_new_uri("http://example.org/"); raptor_parse_file(p,file_uri,base_uri); raptor_parse_uri(p,uri,NULL); raptor_free_parser(p); raptor_free_uri(file_uri); raptor_finish(); 4.2. Bug/RFE Number(s): 6859024 4.3. In Scope: See above. 4.4. Out of Scope: See above. 4.5. Interfaces: Exported Interface Interface Classification Comments ----------------------------- -------------- ---------------------- SUNWraptor Uncommitted Package name SUNWraptor-devel Uncommitted Package name /usr/bin/rapper Volatile parser utility /usr/bin/raptor-config Volatile config utility /usr/lib/libraptor.so.1 Volatile library /usr/lib/libraptor.so Volatile library symlink /usr/lib/{adm64 |sparcv9}/libraptor.so.1 Volatile 64bit library /usr/lib/{amd64 |sparcv9}/libraptor.so Volatile 64bit library symlink /usr/lib/pkgconfig/raptor.pc Uncommitted pc file /usr/lib/{amd64 |sparcv9}/pkgconfig/raptor.pc Uncommitted 64bit pc file Imported Interface Interface Classification ARC case Comment -------- --------------- ---------- ------------------------------- XSLT Uncommitted PSARC/2002/244 XML2 Committed PSARC/2008/032 4.6. Doc Impact: Help docs and man page 4.7. Admin/Config Impact: None. 4.8. HA Impact: None. 4.9. I18N/L10N Impact: The OpenSolaris Desktop team and the G11N are working together to evaluate and provide I18N/L10N support. 4.10. Packaging & Delivery: Adds two new packages: Package Cluster Comment ------------------ ------------ ---------- SUNWraptor SUNW(gnapps) base package for libraries SUNWraptor-devel SUNW(gnapps) dev pkg for raptor 4.11. Security Impact: None 4.12. Dependencies: Refer to Imported Interface table. 5. Reference Documents: [1] RDF http://www.w3.org/TR/rdf-concepts/ http://www.w3.org/TR/rdf-syntax-grammar/ http://www.w3.org/2001/sw/RDFCore/ http://www.w3.org/TR/rdf-testcases/#ntriples http://www.dajobe.org/2004/01/turtle/ [2] raptor homepage: http://librdf.org/raptor/ [3] Related ARC Cases: PSARC/2002/244 Using XSLT and libxslt in Solaris PSARC/2008/032 libxml2 upgrade to 2.6.31 PSARC/2001/175 Using XML and libxml in Solaris