Changes between Version 14 and Version 15 of SemanticWebServices
- Timestamp:
- 2009/03/20 10:28:36 (16 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
SemanticWebServices
v14 v15 30 30 === Why semantic web services === 31 31 The holy grail of web service interoperability is hampered along three axes: syntax, semantics and interface. In terms of core data syntax, bioinformatics tools consume and produce data in many different formats, some of which are loosely defined syntactically (e.g. legacy flat file formats). In addition, the semantics of what we are trying to do with data, and what we mean by encoding data in a certain way, are often loosely defined. Many file formats are abused and overloaded to add semantics to fields that weren't intended for that (e.g. in comments, definition lines, key/value fields). Lastly, there is a proliferation of interfaces, each of which probably make sense on their own (e.g. RESTful APIs) but they all aren't interoperable in a way that a machine can make sense of by itself. By adopting common standards to define syntax, semantics and interface, different service providers will be able to promote interoperability. Hence, this subgroup consists of people discussing the application of such technologies as WSDL, SAWSDL, OWL, RDF/XML (and other XML tools, i.e. XML schema, transforms). 32 33 32 === Technically === 34 33 === Philosophically === 35 34 === State of the practice === 36 35 ==== RDF ==== 37 RDF assumes that anything in the world can be described in triples, i.e. statements consisting of subject, predicate, object. RDF/XML is just one serialization of the concept of triples (other ways are M3, JSON, RDFa etc.). An RDF/XML document imports at least two namespaces: rdf and rdfs.36 [http://www.w3.org/RDF/ RDF] assumes that anything in the world can be described in triples, i.e. statements consisting of subject, predicate, object. [http://www.w3.org/TR/rdf-syntax-grammar/ RDF/XML] is just one serialization of the concept of triples (other ways are M3, [http://www.json.org/ JSON], [http://www.w3.org/TR/rdfa-syntax/ RDFa] etc.). An RDF/XML document imports at least two namespaces: rdf and [http://www.w3.org/TR/rdf-schema/ rdfs]. 38 37 * Simple example: rdf:Description element defines the subject, rdf:about attribute defines a resource that is the subject. rdfs:label, for example, attaches a human readable label to a subject. 39 38 * Example with more namespaces: subject is now defined on element foaf:Person (again by rdf:about), subject has multiple predicates: foaf:name (his name), foaf:page (which in turn encloses another triple: foaf:Document => dc:title => literal) 40 39 * Real example: a set of triples describing Tim Berners-Lee using foaf, dc, rss, rdfs. 41 40 * Biological example: a !UniProt record 41 ==== OWL ==== 42 While RDF just defines triples, [http://www.w3.org/TR/owl-features/ OWL] (Web Ontology Language) allows for defining classes of things, as opposed to opaque resources, for subjects (class), predicates (property) and objects (class). The previous examples that included things such as foaf:Person were using instances of classes from OWL ontologies. 43 * Simple example: an OWL ontology that describes a single class defined by duck-typing - anything belongs to CaffeineMetabolismParticipant if its value for isParticipantIn is the KEGG pathway for caffeine metabolism. 44 ==== SAWSDL ==== 45 Web services interfaces are described using web service description language ([http://www.w3.org/TR/wsdl WSDL]). In WSDL documents, semantic web services want to define the semantics of their inputs, outputs and services. This is done using [http://www.w3.org/2002/ws/sawsdl/ SAWSDL], which provides for the attributes modelReference (which defines the OWL class), liftingSchema (which links to an [http://www.w3.org/TR/xslt xslt] that lifts the [http://www.w3.org/XML/ xml] syntax into rdf) and loweringSchema (which links to an xslt that converts the rdf back to xml). 46 ==== SPARQL ==== 47 SPARQL is a query language for triples (SQL for triples). 42 48 === State of the art === 43 49 === Who === … … 47 53 ==== Willing ==== 48 54 === Acronym soup === 49 * [http://www.w3.org/RDF/ RDF]50 * [http://www.w3.org/TR/rdf-syntax-grammar/ RDF/XML]51 * [http://www.w3.org/TR/rdf-schema/ RDFS]52 * [http://www.json.org/ JSON]53 * [http://www.w3.org/TR/rdfa-syntax/ RDFa]54 * [http://www.w3.org/TR/owl-features/ OWL]55 * [http://www.w3.org/TR/wsdl WSDL]56 * [http://www.w3.org/2002/ws/sawsdl/ SAWSDL]57 * [http://www.w3.org/TR/xslt XSLT]58 * [http://www.w3.org/XML/ XML]59 55 * [http://dublincore.org/ DC] 60 56 === Resources ===