Difference between revisions of "SA-REST"

From Knoesis wiki
Jump to: navigation, search
(himPjQvyOV)
(Changed the top to reflect the latest version)
 
(52 intermediate revisions by 4 users not shown)
Line 1: Line 1:
/home/user/public_html/rb/ftp///assassins-creed-2.html assassins creed 2;assasins creed 2;assassins creed 2 date;assassins creed 2 be;will assassins creed 2;will assassins creed 2 be;assassins creed 2 for;assassins creed memory block 2;an assassins creed 2;assassins creed 2 player;assassins creed 2 the;of assassins creed 2;a assassins creed 2;assassins creed 2 coming;assassins creed 2 game;assassins creed 2 news;be an assassins creed 2;on assassins creed 2;there an assassins creed 2;when is assassins creed 2;assassins creed 2 come;assassins creed 2 in;assassins creed 2 info;assassins creed 2 wiki;assassins creed 2 and;does assassins creed 2;when does assassins creed 2;assassins creed 2 and 3;assassins creed 2 com;assassins creed 2 wikipedia
+
<span style="color:red">Note : This is a draft version of SA-REST. The latest (and active) version is the [http://www.w3.org/Submission/SA-REST/ W3C Member Submission] </span>
/home/user/public_html/rb/ftp///microsoft-money-crack.html microsoft money crack;microsoft money plus;microsoft money 2007;microsoft money 2006;microsoft money download;microsoft money deluxe;microsoft money vista;microsoft money 2004;microsoft money 2005;microsoft money canada;microsoft money software;microsoft money serial;microsoft money online;microsoft money 2003;microsoft money 2006 small business;microsoft money 2006 standard;microsoft money 2002;microsoft money 2004 standard;microsoft money 2006 premium;microsoft money help;microsoft money review;microsoft money mobile;microsoft money premium;microsoft money support;microsoft money upgrade;microsoft money 2000;microsoft money alternative;microsoft money for vista;microsoft money free;microsoft money trial
+
 
/home/user/public_html/rb/ftp///small-business-idea.html small business idea;home based business idea;work at home business idea;new business idea;work from home business idea;at home business ideas;creative business ideas;marketing idea for small business;idea home based service business;internet business idea;online business idea;start up business ideas;web business ideas;home based computer business idea;business ideas for women;free business ideas;money making business idea;new small business ideas;small business startup idea;home based business idea list;new home based business idea;business start up idea;service business ideas;small town business ideas;start your own business idea;unusual business ideas;home business idea;based business home idea successful;business idea;home base business idea
+
----
/home/user/public_html/rb/ftp///prom-hair-ideas.html prom hair ideas;hair cut ideas;hair idea;hair style ideas;short hair ideas;long hair ideas;curly hair ideas;cute hair ideas;wedding hair ideas;hair cuts ideas;hair ideas styles;blonde hair ideas;hair styling ideas;cool hair ideas;easy hair ideas;hair salon ideas;homecoming hair ideas;medium hair ideas;black hair ideas;funky hair ideas;hair ideas highlights;men hair ideas;up hair ideas;formal hair ideas;hair ideas medium length;hair ideas updos;mens hair ideas;punk hair ideas;updo hair ideas;bridal hair ideas
+
 
/home/user/public_html/rb/ftp///the-witcher-patch.html the witcher patch;the movies patch;knights of the old republic 2 patch;the witcher 1.2 patch;the witcher patch 1.1;the witcher patch 1.3;the software patch;civilization iv beyond the sword patch;stubbs the zombie patch;the club patch;knights of the old republic patch;lord of the rings battle for middle earth 2 patch;lord of the rings battle for middle earth patch;star wars knights of the old republic 2 patch;the battle for middle earth patch;the thing patch;lord of the rings online patch;patch the pony;the battle for middle earth 2 patch;the blueberry patch;heroes of the pacific patch;the flower patch;the watermelon patch;war of the ring patch;children of the nile patch;the battle for middle earth ii patch;the garden patch;the witcher uncensor patch;gunz the duel patch;knights of the old republic ii patch
+
 
/home/user/public_html/rb/ftp///liquid-diet.html liquid diet;clear liquid diet;diet liquid loss weight;for liquid diet;full liquid diet;liquid protein diet;liquid diet recipes;detox diet liquid;diet fast liquid;liquid diet and;all liquid diet;beyonce liquid diet;cleansing liquid diet;colonoscopy liquid diet;free liquid diet;liquid diet food;liquid diet recipe;liquid diet discussion;liquid fasting diet;the liquid diet;best liquid diet;liquid diet menu;liquid diets;liquid diet nutrition;liquid diet plan;liquid weight loss diets;liquid diet foods;liquid diet for weight loss;liquid diet with;on a liquid diet
+
SA-REST is a simple and open microformat for enhancing Web resources with additional semantic information.  
/home/user/public_html/rb/ftp///mussels-recipes.html mussels recipes;mussel recipe;mussel recipes;recipe for mussels;recipe mussels wine;recipe mussels in;sauce mussels recipe;steamed mussels recipe;mussels recipe white;and mussels recipe;garlic mussels recipe;recipe with mussels;chilli mussels recipe;recipes for mussels;mussels in wine recipe;mussels pasta recipe;mussels recipe cream;mussels recipe tomato;and mussels recipes;baked mussels recipe;green mussels recipe;mussel soup recipe;mussels marinara recipe;recipe mussels in white;recipes with mussels;mussells recipe;steamed mussels recipes;wine mussel recipe;and mussel recipe;mussel recipe white
+
In addition to HTML and XHTML, the SA-REST approach can also be used to enrich Atom, RSS, and arbitrary XML. SA-REST is one of several open microformat standards.
/home/user/public_html/rb/ftp///does-assassins-creed-2-come.html does assassins creed 2 come;assassins creed 2 announced;assassins creed 2 youtube;new assassins creed 2;will assassins creed 2 come;date for assassins creed 2;assassins creed 2 website;date of assassins creed 2;assassins creed 2 2009;assassins creed 2 information;assassins creed 2 the game;about assassins creed 2;assassins creed 2 announcement;assassins creed 2 e3;assassins creed 2 e3 08;assassin creed help;assassins creed freeze;assassins creed info;assassins creed layout;assassins creed logo;assassins creed manual;assassins creed pc version;assassins creed video game;assassins creed windows;assassins creed graphics;assassins creed language;assassins creed masyaf flag;assassins creed 1.1;assassins creed 2 date;assassins creed flash
+
 
/home/user/public_html/rb/ftp///microsoft-money-update.html microsoft money update;microsoft money business;microsoft money free trial;microsoft money freeware;microsoft money rebate;microsoft money small business;microsoft money updates;microsoft money 2009;microsoft money 98;microsoft money checks;microsoft money plus review;microsoft money pocket pc;microsoft money reviews;microsoft money 99;microsoft money for pocket pc;microsoft money keygen;microsoft money serial;microsoft money standard;microsoft money 2001;microsoft money demo;microsoft money forum;microsoft money tutorial;microsoft money windows mobile;microsoft money express;microsoft money international;microsoft money key;microsoft money warez;how to use microsoft money;microsoft com money;microsoft money 2004 download
+
==People==
/home/user/public_html/rb/ftp///business-idea-list.html business idea list;cool business ideas;easy business ideas;good business idea;ideas for a business;small home business idea;best business idea;great business idea;turnkey business idea;entrepreneur business idea;homebased business idea;business idea opportunity small;own business idea;simple business ideas;successful business idea;business idea forum;idea for small business;business idea blog;idea for business;business startup idea;crazy business idea;new businesses ideas;free business idea;a business idea;e business idea;hot business idea;low cost business idea;business idea from;idea for a business;original business idea
+
Collaborators in the SA-REST initiative are listed by their affiliations.
/home/user/public_html/rb/ftp///straight-hair-ideas.html straight hair ideas;summer hair ideas;wavy hair ideas;celebrity hair ideas;hair ideas for men;hair colors ideas;pictures of hair ideas;different hair ideas;great hair ideas;layered hair ideas;male hair ideas;hair ideas bangs;short hair cuts ideas;bob hair ideas;trendy hair ideas;african american hair ideas;mens hair ideas;modern hair ideas;womens hair ideas;asian hair ideas;hairs ideas;latest hair ideas;short hair cut ideas;long hair cut ideas;medium hair cut ideas;hair cut color ideas;curly hair cut ideas;hair cut ideas medium length;hair cut style ideas;hairstyle cut ideas
+
* '''kno.e.sis center, Wright State University, Dayton, OH'''
/home/user/public_html/rb/ftp///the-patch.html the patch;pick of the patch;the awakened patch;magic the gathering battlegrounds patch;the patch place;the witcher v1 2 patch;emperor rise of the middle kingdom patch;star wars knights of the old republic ii patch;star wars knights of the old republic patch;the elder scrolls oblivion patch;the experiment patch;the grass patch;the witcher no dvd patch;the dog patch;the patch store;the rabbit patch;typing of the dead patch;war in the pacific patch;darkies in the melon patch;knight of the old republic patch;lord of the rings patch;lords of the realm 3 patch;myth the fallen lords patch;patch the buck;tachyon the fringe patch;the carrot patch;the collard patch;the crabbage patch;the garbage patch;the movies 1.1 patch
+
** Amit P. Sheth.
/home/user/public_html/rb/ftp///what-is-a-liquid-diet.html what is a liquid diet;healthy liquid diet;liquid diet 2;liquid diet 3;liquid diet board;liquid diet drink;liquid diet plans;liquid protein diets;medical liquid diet;a liquid diet for;clear liquids diet;liquid diet discussion board;liquid diet program;liquid diet to lose weight;liquid diets for weight loss;new liquid diet;safe liquid diets;3 day liquid diet;a liquid diet to;diabetic liquid diet;full liquid diets;how to liquid diet;liquid diet 10;liquid diet ideas;liquid diet list;optifast liquid diet;clear diet food liquid;clear liquid diet foods;life liquid diet;liquid diet &
+
** Karthik Gomadam.
/home/user/public_html/rb/ftp///mussel-sauce-recipe.html mussel sauce recipe;mussell recipe;recipe for mussels in;and mussel recipes;cooking mussels recipe;garlic mussel recipe;green mussel recipe;green mussels recipes;mussel pasta recipe;mussels beer recipe;mussels clams recipe;recipe for mussel;steamed mussel recipes;baked mussel recipe;belgian mussels recipe;chili mussels recipe;green mussel recipes;italian mussels recipe;mussels pasta recipes;mussels shrimp recipe;recipe for steamed mussels;smoked mussels recipe;steamed mussel recipe;french mussels recipe;mussel recipe with;mussels marinara recipes;spicy mussels recipe;thai mussel recipe;best mussels recipe;black mussels recipe
+
** Ajith Ranabahu
/home/user/public_html/rb/ftp///assassins-creed-pc-specs.html assassins creed pc specs;assassins creed performance;assassins creed stealth;assassin creed achievement;assassin creed tips;assassin creed update;assassins creed audio;assassins creed benchmark;assassins creed fullscreen;assassins creed images;assassins creed install;assassin s creed 2;assassins creed backgrounds;assassins creed interactive;assassins creed pc problems;assassins creed picture;assassins creed system requirement;assassins creed two;assassins creed assassinations;assassins creed combo kill;assassins creed control;assassins creed pc forum;assassins creed pc sound;assassins creed saving;assassins creed sucks;assassins creed support;assassins creed trade in;assassins creed updates;assassins creed used;assassins creed emails
+
 
/home/user/public_html/rb/ftp///microsoft-money-2005-update.html microsoft money 2005 update;microsoft money 97;microsoft money delux;microsoft money deluxe 2006;microsoft money faq;microsoft money file extension;microsoft money manager;microsoft money password;microsoft money pda;microsoft money problems;microsoft money smartphone;microsoft money uk;microsoft money 2005 deluxe;microsoft money and vista;microsoft money buy;microsoft money for palm;microsoft money palm;microsoft money tips;microsoft money works;purchase microsoft money;download microsoft money 2005;download microsoft money 2006;microsoft money back;microsoft money linux;microsoft money ofx;using microsoft money;www microsoft money;microsoft money financial;microsoft money full;microsoft money guide
+
==Introduction==
/home/user/public_html/rb/ftp///business-idea-com.html business idea com;got a business idea;great small business idea;idea for a small business;idea to business;my business idea;protect a business idea;sell my business idea;a business idea and;a business idea in;a business idea into;a business idea to;a business idea to a;a small business idea;and business idea;best business idea new;business idea for stay;business idea in;business idea in the;business idea on;business idea one;business idea or;business idea with;for my business idea;idea for online business;idea into business;ideas small businesses;is my business idea;me a business idea;of a business idea
+
<!-- Replace this with a need for additional semantic annotation for Web resources. Highlight Web APIs as an example, not the only effect. -->
/home/user/public_html/rb/ftp///hair-cut-ideas-men.html hair cut ideas men;mens hair cut ideas;layered hair cut ideas;celebrity hair cut ideas;cool hair cut ideas;hair cut ideas for men;male hair cut ideas;straight hair cut ideas;bob hair cut ideas;pictures of hair cut ideas;womens hair cut ideas;summer hair cut ideas;womens hair cut ideas;hair coloring ideas;ideas for hair color;hair color ideas pictures;and hair color ideas;funky hair color ideas;blonde hair color ideas;hair colors ideas;hairstyle color ideas;hair colour ideas;new hair color ideas;brown hair color ideas;brunette hair color ideas;crazy hair color ideas;dark hair color ideas;hair color ideas highlights;hair color style ideas;of hair color ideas
+
 
/home/user/public_html/rb/ftp///the-paper-patch.html the paper patch;the warriors patch;baldurs gate tales of the sword coast patch;knights of the old republic vista patch;lord of the rings battle for middle earth ii patch;mysteries of the sith patch;the learning patch;the movies vista patch;the paw patch;the peanut patch;the witcher patch notes;unofficial patch magic the gathering;shadows of the empire patch;the eastern garbage patch;the gilroy patch;the potato patch;the unofficial oblivion patch;patch the horse;the bug patch;the chuckle patch;the design patch;the fat patch;the violet patch;dead on the money patch;the brier patch;the bunny patch;the cherry patch;the gift patch;the huckleberry patch;the oil patch
+
===Current mashup tools and technologies===
/home/user/public_html/rb/ftp///what-is-a-clear-liquid-diet.html what is a clear liquid diet;best liquid diets;celebrity liquid diet;hmr liquid diet;liquid diet com;liquid diet product;liquid diet products;liquid diet review;no liquid diet;liquid diet forum;foods for liquid diet;from liquid diet;liquid diet meals;semi liquid diet;supervised liquid diet;about liquid diet;cambridge liquid diet;clear liquid diet recipes;foods for a liquid diet;liquid diet 1;liquid diet blog;liquid diet do;liquid diet examples;liquid diet one;liquid diet support;the best liquid diet;a liquid diet in;do a liquid diet;full liquid diet menu;liquid diet idea
+
<!-- This section changes as well to talk about limitation in APIs and how SA-REST can address this. Add a blog example.-->
/home/user/public_html/rb/ftp///carrabbas-mussel-recipe.html carrabbas mussel recipe;mussel recipie;mussels and pasta recipe;mussels josephine recipe;new zealand mussels recipe;recipe for mussels and;recipe for mussels with;seafood recipes mussels;best mussel recipe;chili mussel recipe;clams and mussels recipe;easy mussel recipe;easy mussels recipe;frozen mussels recipe;grill mussels recipe;grilled mussels recipe;mussel pasta recipes;mussel recipes with;mussels di napoli recipe;mussels diablo recipe;recipe for mussels in white;recipe for mussels in wine;recipes for cooking mussels;recipes for mussels in;stuffed mussels recipe;zealand mussels recipe;bonefish grill mussels recipe;cooked mussels recipe;curry mussel recipe;garlic mussel recipes
+
Although mashups fully embrace the idea of customization on the Web, read-write is another story. The complexity of application development using javascript makes it hard for average developers to create new mashups and to customize the existing ones. To solve this problem, several companies are developing tools for mashup creation that require little or no programming knowledge. These tools, exemplified by Yahoo! pipes, IBM's QEDwiki and Google's Mashup Editor, facilitate the selection of some number of RESTful Web services or other Web resources and chain them together by piping one service's output into the next service's input while filtering content and making slight format changes.
/home/user/public_html/rb/ftp///assassins-creed-requirments.html assassins creed requirments;assassins creed conference room;assassins creed for the pc;assassins creed outfit;help on assassins creed;next assassins creed;assassins creed ii;assassins creed low profile;assassins creed pc help;weapons in assassins creed;assassins creed assassin flags;assassins creed 2 news;assassins creed 2 info;assassins creed 2 and 3;assassins creed 2 the throne of assassin;assassins creed ps3 xbox;assassins creed walkthrough xbox;assassins creed cheats for xbox;assassins creed on xbox;assassins creed xbox 360 walkthrough;assassins creed xbox vs;assassins creed on xbox 360;assassins creed review xbox;assassins creed xbox game;assassins creed xbox live;assassins creed cheats for xbox 360;assassins creed xbox 360 game;assassins creed xbox 360 review;assassins creed cheat xbox;assassins creed cheats on xbox
+
====Limitations====
/home/user/public_html/rb/ftp///microsoft-money-import.html microsoft money import;microsoft money management;microsoft money pocket;microsoft money premium 2005;microsoft money premium 2007;microsoft money vs;buy microsoft money plus;microsoft money 2005 standard;microsoft money features;microsoft money on vista;microsoft money ppc;microsoft money trial version;microsoft money website;microsoft office money;better than microsoft money;compare microsoft money;microsoft money 1999;microsoft money 2005 small business;microsoft money basic;microsoft money comparison;microsoft money equivalent;microsoft money for;microsoft money qif;microsoft money xp;convert microsoft money;microsoft money 6;microsoft money canadian;microsoft money home page;microsoft money internet;microsoft money live
+
One of the main drawbacks of the current state of the art is the lack of support for interoperability, especially that of data. Since most of the existing tools limit their support to services internal to the specific vendor that created them (for example, Google Mashup Editor has a complete abstraction of Google Maps service) or to services that have standard types of outputs such as RSS or Atom (Yahoo! Pipes), the problem of interop is not highlighted.
/home/user/public_html/rb/ftp///red-hair-color-ideas.html red hair color ideas;hair cut color ideas;pictures of hair color ideas;punk hair color ideas;black hair color ideas;hairstyles color ideas;different hair color ideas;hair color ideas 2008;hair color ideas and pictures;hair color ideas with;short hair color ideas;unique hair color ideas;wild hair color ideas;fun hair color ideas;hair color ideas photos;long hair color ideas;celebrity hair color ideas;color ideas for black hair;curly hair color ideas;hair color ideas pics;pink hair color ideas;scene hair color ideas;hair dye color ideas;two tone hair color ideas;creative hair color ideas;hot hair color ideas;mens hair color ideas;blond hair color ideas;bold hair color ideas;hair color ideas for 2008
+
 
/home/user/public_html/rb/ftp///the-party-patch.html the party patch;the political machine patch;before the storm patch;patch for the witcher;the fallen patch;the melon patch;the orange patch;the patch man;the picture patch;the plum patch;the witcher censorship patch;cost of the patch;patch for lord of the rings;the baby patch;the corn patch;the farm patch;the green patch;the patch connection;the patch works;the paw paw patch;the pepper patch;the pick patch;the pickin patch;the pickle patch;the posie patch;download the patch;miss spider and the sunny patch;patch for lord of the rings battle for middle earth;the banana patch;the basket patch
+
Another drawback of the current approach to mashups is the complexity of their development itself. Frameworks like Pipes that do not require any programming have limited capabilities. Google
/home/user/public_html/rb/ftp///liquid-diet-side.html liquid diet side;by liquid diet;home liquid diet;liquid diet example;long liquid diet;www liquid diet;a liquid diet consist;direction liquid diet;food for liquid diet;liquid diet at;liquid diet definition;liquid diet for the;liquid diet forums;new direction liquid diet;based liquid diet;liquid diet info;liquid diet message;liquid diet online;best liquid diet for;can a liquid diet;is the best liquid diet;liquid diet items;liquid diet marine;liquid diet vs;a liquid diet and;a liquid diet work;california liquid diet;liquid diet using;liquid diet works;start a liquid diet
+
Mashup Editor has a steeper learning curve and can do much more than Yahoo! Pipes. However the need to be proficient in languages such as javascript is mandatory to create more complex mashups.
/home/user/public_html/rb/ftp///italian-mussel-recipe.html italian mussel recipe;marinated mussels recipe;mussel recipes white;mussels and pasta recipes;mussels in white wine sauce recipe;new zealand mussel recipes;paella recipe mussels;recipe for cooking mussels;recipe for mussels marinara;recipes for mussel;recipes for mussels and;smoked mussel recipe;baked green mussels recipe;baked mussels recipes;curried mussels recipe;garden mussels recipe;mussel salad recipe;recipes for steamed mussels;spicy mussel recipe;steam mussels recipe;zealand mussel recipes;bbq mussels recipe;belgian mussel recipe;canned mussels recipe;green lipped mussel recipe;jamie oliver mussels recipe;mussels provencal recipe;oliver mussels recipe;recipes for mussels with;recipes using mussels
+
We identify two aspects of this complexity
/home/user/public_html/rb/ftp///assassins-creed-xbox-achievements.html assassins creed xbox achievements;assassins creed xbox guide;for assassins creed on xbox;assassin creed for xbox 360;assassins creed pc xbox;assassins creed xbox 360 cheat;assassins creed cheat codes xbox;assassins creed update xbox;assassins creed xbox ign;cheats for assassins creed on xbox 360;for assassins creed for xbox;assassins creed controls xbox;assassins creed patch xbox;cheats for assassins creed for xbox 360;codes for assassins creed xbox;assassins creed 2 xbox;assassins creed cheat codes xbox 360;assassins creed for the xbox;assassins creed walk through xbox;assassins creed xbox 360 hints;assassins creed xbox 360 walk;assassins creed 2 xbox 360;assassins creed cheat codes for xbox 360;assassins creed help xbox;assassins creed pc vs xbox;assassins creed xbox 360 tips;assassins creed cheats on xbox 360;assassins creed xbox 360 help;assassins creed xbox 360 walk through;assassins creed xbox 360 walkthroughs
+
* Visual: Complexity arising out of the need to create intuitive visual elements and handle various events relating to them
/home/user/public_html/rb/ftp///microsoft-money-sale.html microsoft money sale;backup microsoft money;microsoft money account;microsoft money investment;microsoft money msn;microsoft money sync;microsoft money version;microsoft money web;like microsoft money;microsoft money 2006 review;microsoft money accounts;microsoft money network;microsoft money video;microsoft money 1998;microsoft money 2006 rebate;microsoft money add;microsoft money net;microsoft money new;microsoft money os;microsoft money payee;microsoft money plus 2009;microsoft money promotion;microsoft money small;microsoft money store;microsoft money transaction;microsoft money versus;microsoft money will;microsoft ms money;old microsoft money;review of microsoft money
+
* Data: Complexity arising due to heterogeneity in data schemas and formats.
/home/user/public_html/rb/ftp///the-calico-patch.html the calico patch;the patch base signaturefile;the pineapple patch;the posey patch;the produce patch;using the patch;after the patch;civilization iv beyond the sword patch 3.17;drop the application to patch;game of the year patch;get the patch;in the paw paw patch;party in the patch;patch into the drop zone;patch on the back;respect the patch;stopping the patch;the bead patch;the foot patch;the growing patch;the patch cost;the patch perfect;the patch work;the play patch;the rye patch;the sunwell patch;the watermelon patch mobile;with the new patch;nocd patch;nodvd patch
+
 
/home/user/public_html/rb/ftp///roasted-mussels-recipe.html roasted mussels recipe;best mussel recipes;mussel appetizer recipe;mussels fra diablo recipe;recipe for baked mussels;recipe for mussels in white wine sauce;carrabas mussels recipe;steam mussel recipe;carrabbas mussels recipe;garden mussel recipe;bonefish mussel recipe;bonefish mussels recipe;carrabas mussel recipe;carrabbas mussel recipe;mussels and fries recipe;mussels fra diavolo recipe;penn cove mussels;steamed mussels recipes;arm mussels;cockels and mussels;green lip mussel;how to debeard mussels;marine mussels;mussels habitat;shellfish mussels;sore mussels;store mussels;american mussels;berthas mussels baltimore;berthas mussels
+
The primary objective of SA-REST is to address the ''data complexity issue''.
 +
===SA-REST in a nutshell===
 +
<!-- Change this. We can remove this completely, if we can capture a very good description at the beginning. -->
 +
 
 +
SA-REST is a microformat to add additional meta-data to (but not limited to) REST API descriptions in HTML and XHTML. Developers can directly embed meta-data from various models such an ontology, taxonomy or a tag cloud into their API descriptions. The embedded meta-data can be used to improve search (for example: perform faceted search for APIs), data mediation (in conjunction with XML annotation) as well as help in easier integration of services to create mashups.
 +
 
 +
===Background===
 +
Rather than talking only about SWS (not relevant), we should instead talk about other microformats and the synergy therein with SA-REST.
 +
 
 +
Researchers in the area of Semantic Web Services have proposed various specifications, the prominent of which are
 +
* OWL-S
 +
*WSDL-S
 +
*WSMO
 +
In 2005, the W3C initiated a charter to create a standard for adding semantics to WSDL descriptions. The WSDL-S specification (submitted by Services Research Lab at kno.e.sis from LSDIS Lab in GA along with IBM) was taken as the primary input for the charter. This led to the standardization of SAWSDL (Semantic Annotation of WSDL and XML Schema). SAWSDL has had a significant
 +
impact in the evolution of SA-REST. However, the adoption of a microformat based approach is a key difference between the SAWSDL and SA-REST frameworks. However, it must be noted here that the principles of Schema annotation, lifting and lowering can be directly used from SAWSDL for XML data objects in the RESTful environment.
 +
 
 +
==Usage Scenarios==
 +
 
 +
<!-- Need to write this along the style of microformats.org wiki. -->
 +
 
 +
===Faceted Search===
 +
 
 +
The number of available APIs are growing fast. In April 2008, we found that there were about 700 APIs added to ProgrammableWeb. In September, that number is over 900. Currently, general
 +
purpose search engines like Google are largely used to find these APIs. However, these treat API documents like any other in indexing and ranking APIs. As a result, search for APIs (even when specific queries like "Maps API") results in API resources being scattered all over the result set. Web API directories like programmableWeb do present a more domain-specific solution. However, they largely rely on user tags for classification and searching.
 +
 
 +
Addition of meta-data to capture the various facets of APIs (their functionality, the message types they support, clientside bindings, protocol) can allow for better searching. The results of
 +
one such framework [http://knoesis.wright.edu/research/srl/projects/apihut/ APIHut] is presented in [http://knoesis.wright.edu/library/download/GRNVS-facetedAPISearch-ICWS08.pdf Faceted Search for APIs]. We also present
 +
our initial evaluation of precision and recall metrics. SA-REST can improve faceted search in a significant manner. Using known techniques of GRDDL and XSLT, one can extract RDF representations of APIs. This can then be indexed and searched upon.
 +
 
 +
===Data Mediation and Mediatability===
 +
The importance of enabling easier approaches to data mediation has been well understood. In the context of mashups this is even more important, largely due to the fact that often developers are faced with the burden of handling data at the client side. SA-REST will address this issue in two ways
 +
*'''Adopting XML annotation from SAWSDL''': This will allow us to add the lifting and lowering transformations to data elements as a part of the API description. Information about SAWSDL lifting and lowering can be found in the [http://www.w3.org/TR/sawsdl/#annotateXSD SAWSDL spec on schema annotations]. There is a small catch that we have to address here. In the WSDL world, data exchange was XML de-facto. However, in the RESTful environment, developers can use many formats such as JSON, GData, RSS. It will be interesting to investigate this as a part of the SA-REST effort.  
 +
 
 +
*'''Mediatability''': [http://knoesis.wright.edu/students/gomadam/publications/GRRVS--ICSC08.pdf Mediatability] is a measure of the estimated human effort for performing data mediation manually. Having additional annotations can significantly help us in computing the mediatability. Even when automatic mediation is not possible, knowing how hard or easy the mediation between two services can definitely help developers in choosing services for their mashups.
 +
 
 +
===Smart Mashups===
 +
Smart mashups are those that allow the end user more flexibility to change certain services in a mashup. For example, in the popular [http://housingmaps.com Housing Maps] mashup, if the quality of Yahoo! maps in a certain area is better than that of Google, the user must have the flexibility to change it. To realize this, we are pursuing on a meta based approach for mashup creation. In this approach, the developer creates the mashup application at a meta level and services are added to them at the run time. In this context, there needs to be a way for the developer to specify the requirements for a service and the system to check if the user preference meets the requirement. Having annotations can help accomplish this task with lesser difficulty.
 +
 
 +
===Automatic Annotation===
 +
Semi-automatic text annotation is a significant research area, primarily due to the large volume of text data that becomes available everyday. It is not viable to annotate such volumes of data purely by human effort and one needs to employ text processing techniques to provide automatic markup. One major challenge in text processing is disambiguation, selecting the correct semantics of a word that may be used across domains to represent different concepts.
 +
 
 +
The ''domain-rel'' property acts as a guide to describe the domain(s) a certain text snippet describes and hence provides a means for the text processing / automatic annotation engines to perform effective disambiguation.
 +
 
 +
== Design principles and methods ==
 +
 
 +
===XHTML Design principles===
 +
 
 +
Due to the specific nature of this type of annotations, there are several design principles that are usually followed when designing XHTML based microformats. These patterns are well documented in the [http://microformats.org/wiki/hcalendar hcalendar microformat specification]. However we outline the most important design principles that were followed during this microformat design.
 +
 
 +
# Reuse the schema (names, objects, properties, values, types, hierarchies, constraints) as much as possible from pre-existing, established, well-supported standards by reference. This introduces minimum or no disruption to the regular machinery that interacts with this markup.
 +
# Use a generic structural element (e.g. <nowiki><span></nowiki> or <nowiki><div></nowiki> ), or the appropriate contextual element (e.g. an <nowiki><li></nowiki> inside a <nowiki><ul></nowiki> or <nowiki><ol></nowiki>).
 +
# if the format of the data according to the original schema is too long and/or not human-friendly,place the literal data into the 'title' attribute leaving the human readable text inside the element. This is extensively used in the hcalendar format with the <nowiki><abbr></nowiki> element where literal text is wrapped with <nowiki><abbr></nowiki> elements to provide the machine-friendly annotation. The specific design decision in hcalendar is detailed out by the author [http://tantek.com/log/2005/01.html#d26t0100 here].
 +
 
 +
===Annotation styles===
 +
Now we provide two styles of applying the microformat. These styles can be used interchangeably depending on readability and convenience considerations.
 +
 
 +
====Class and Title Style====
 +
Guided by the first design principle, the class and title attributes are used to provide a name-value relationship for the text content. For example marking up the word map with a specific class reference would appear in XHTML as follows
 +
<pre><nowiki><span class="sem-class" title="http://apihut.com/schema/apihut-taxonomy#Map">Maps</span></nowiki></pre>
 +
 
 +
==== Class Only Style====
 +
This is a convenient way of achieving the same objective of attaching a name-value pair to text content. The class attribute contains the name and value separated by a space and the first section is considered to be the name and the other, the value. Class only style has the additional benefit of
 +
not having an undesired ''tooltip effect'' on the text, but gives up the neat separation and hence sacrifices the readability.
 +
<pre><nowiki><span class="sem-class http://apihut.com/schema/apihut-taxonomy#Map">Maps</span></nowiki></pre>
 +
 
 +
=== Property Types ===
 +
 
 +
The microformat properties can be categorized into two major types.
 +
 +
====Block markup====
 +
Markups that pertain to a block like div, body etc.  Such markup applies to a larger portion of text that may or may not contain other markups.
 +
<pre><nowiki> <body class="domain-rel" title="http://apihut.com/taxonomies/domainClassification.rdf#maps"> ... </body></nowiki></pre>
 +
In this example, the domain-rel property is added to the body and hence covers the complete text content encapsulated by the <nowiki><body></nowiki> element. This particular property indicates that API descriptions inside the body belong to the maps domain as described in the domain model.
 +
 
 +
====Element markup====
 +
Markup on a single element like a span which wraps a word,phrase or a single resource. Element markup should not contain other markup.
 +
 
 +
=== Multivalued Properties ===
 +
Often it is necessary to associate multiple values with a single property. For example one might need to indicate that a certain text content as a whole is relevant to both mathematics and biology domains. In such situations SA-REST allows enumerations to be included as the value for a property. Enumerations are a white space separated list of references. The following example illustrates the use of enumerations as a property value.
 +
 
 +
<pre><nowiki> <body class="domain-rel" title="http://apihut.com/taxonomies/domainClassification.rdf#mathematics
 +
http://apihut.com/taxonomies/domainClassification.rdf#biology"> ... </body>  </nowiki></pre>
 +
 
 +
When using the class only style, the list of values ''after'' the name are considered to be the value. The previous markup, when made with
 +
class only style, would appear as follows.
 +
 
 +
<pre><nowiki> <body class="domain-rel http://apihut.com/taxonomies/domainClassification.rdf#mathematics
 +
http://apihut.com/taxonomies/domainClassification.rdf#biology"> ... </body>  </nowiki></pre>
 +
 
 +
==Basic SA-REST properties==
 +
 
 +
SA-REST has three basic properties discussed below. These properties provide for mechanisms to add richer semantic information for any Web resource. However, one can extend SA-REST
 +
to capture resource specific semantics. Examples of these include SA-REST extensions for Web APIs and SA-REST extensions for social networking profiles. An author desiring to create a new
 +
microformat, however is strongly urged to consider reuse for a resource type before attempting an extension.
 +
 
 +
===domain-rel===
 +
 
 +
The domain-rel property allows description of domain information for an entire resource. If a given resource (such as blog posts) has content spanning multiple domains, it is desired to add
 +
multiple domain-rel elements, each surrounding a section of the resource. If such a separation cannot be made, the title attribute should be an enumeration of the domains.
 +
 
 +
'''Simple domain-rel example'''
 +
<pre><nowiki><span class="domain-rel" title="http://apihut.com/schemas/socialnetworking#socialnetworks> The growing trend of "liking" has recently caught a lot of attention of both network
 +
users as well as developers.</span></nowiki></pre>
 +
 
 +
The example below illustrates a multi-domain scenario where the domain contexts can be separated in the content. This annotation is desirable when a resources (such as integrated feeds) that draw content from multiple sources are created.
 +
 
 +
'''Multi-domain domain-rel example 1'''
 +
<pre><nowiki><span class="domain-rel" title="http://apihut.com/schemas/socialnetworking#socialnetworks> The growing trend of "liking" has recently caught a lot of attention of both network
 +
users as well as developers...</span>
 +
 
 +
<span class="domain-rel" title="http://apihut.com/schemas/economy#banking"> I also came across this interesting discussion on bailout that talked about nationalization of banks</span>
 +
</nowiki></pre>
 +
 
 +
A very frequent scenario is one where a resource content spans multiple domains and the content is not contextualized.
 +
 
 +
'''Multi-domain domain-rel example 2'''
 +
<pre><nowiki><span class="domain-rel" title="http://apihut.com/schemas/socialnetworking#socialnetworks http://apihut.com/schemas/economy#recession"> One often wonders the future of
 +
advertisement driven Web applications in the current economic scenario. For example, social networking applications such as...</span></nowiki></pre>
 +
 
 +
===sem-rel===
 +
 
 +
The sem-rel property will capture the semantics of a link. This evolves from the popular rel tag. An application of sem-rel would be to describe
 +
a data model that is captured in a XSD. The primary purpose of the sem-rel tag is to allow developers to add "top level annotation" to schemas that are third party.
 +
The sem-rel property also allows enumeration within the title attribute. It is used in conjunction with the a attribute.
 +
 
 +
<pre><nowiki> <a href="http://foo.xsd" sem-rel="http://taxonomy.org/computerscience#firstname"> This is the input schema</a> </nowiki></pre>
 +
 
 +
<pre><nowiki> <a href="www.teachmegooglemaps.com" class="sem-rel" title="http://apihut.com/taxonomies/domainClassification.rdf#maps"> Learn Google Maps</nowiki></pre>
 +
 
 +
===sem-class===
 +
sem-class is an element markup property. sem-class can be used to markup a single entity within a resource. Like the domain-rel tag, the sem-rel tag can be an enumeration.
 +
For example, in a blog, sem-class can be used to markup single words, while in a
 +
page (such as YouTube), sem-class mark up an video object. Both scenarios are exemplified below.
 +
 
 +
<pre><nowiki> One striking observation in evolution of <span class="sem-class" title="http://tap.stanford.edu/#computer"> Computers </span> is the relationship between speed and size.</nowiki></pre>.
 +
 
 +
The example below illustrates the markup of a flash media object. The markup describes the actual video that is embedded therein. In this case, the video is from [http://www.hulu.com/watch/49927/american-dad-i-cant-stan-you American Dad episode from hulu.com (may not be active all the time)]
 +
 
 +
'''sem-class on non-textual content'''
 +
<pre><nowiki> <span class="sem-class" title="http://entertainment.org/schemas/tv#american_dad"><div id="player-container" style="text-align: center;">
 +
<embed id="player" height="368" width="790" flashvars="stage_width=790&stage_height=368&content_id=m1ppkqeh&bitrate=700000&user_id=-1" bgcolor="#000000"
 +
allowfullscreen="true" allowscriptaccess="sameDomain" quality="high" name="player" style="z-index: 10;" src="/player.swf" type="application/x-shockwave-flash"/>
 +
</div></span></nowiki></pre>.
 +
 
 +
==Processing SA-REST==
 +
The most straight forward way to process the documents is to use [http://www.w3.org/TR/xslt.html XSLT] along with [http://www.w3.org/TR/grddl/ GRDDL]. XSLT is a well supported and a flexible way to transform XML documents from one form to another, typically the target form being XML or any other text format. GRDDL specification describes how the XSLT transformation can be used to convert annotated XHTML/HTML documents to RDF. The following snippet shows a specification of the transformation stylesheet according to GRDDL.
 +
 
 +
<pre><nowiki> <html xmlns="http://www.w3.org/1999/xhtml"
 +
      xmlns:grddl='http://www.w3.org/2003/g/data-view#'
 +
      grddl:transformation="glean_title.xsl
 +
http://www.w3.org/2001/sw/grddl-wg/td/getAuthor.xsl"
 +
>
 +
  </nowiki></pre>
 +
 
 +
The subsequent processing can be done using the RDF representation.
 +
 
 +
== Related Documents ==
 +
 
 +
* [http://knoesis.wright.edu/library/resource.php?id=00162 SA-REST publication in IEEE Internet Computing Journal]
 +
* [http://knoesis.wright.edu/research/srl/standards/sa-rest/ SA-REST initial discussion draft]

Latest revision as of 15:12, 20 April 2011

Note : This is a draft version of SA-REST. The latest (and active) version is the W3C Member Submission



SA-REST is a simple and open microformat for enhancing Web resources with additional semantic information. In addition to HTML and XHTML, the SA-REST approach can also be used to enrich Atom, RSS, and arbitrary XML. SA-REST is one of several open microformat standards.

People

Collaborators in the SA-REST initiative are listed by their affiliations.

  • kno.e.sis center, Wright State University, Dayton, OH
    • Amit P. Sheth.
    • Karthik Gomadam.
    • Ajith Ranabahu

Introduction

Current mashup tools and technologies

Although mashups fully embrace the idea of customization on the Web, read-write is another story. The complexity of application development using javascript makes it hard for average developers to create new mashups and to customize the existing ones. To solve this problem, several companies are developing tools for mashup creation that require little or no programming knowledge. These tools, exemplified by Yahoo! pipes, IBM's QEDwiki and Google's Mashup Editor, facilitate the selection of some number of RESTful Web services or other Web resources and chain them together by piping one service's output into the next service's input while filtering content and making slight format changes.

Limitations

One of the main drawbacks of the current state of the art is the lack of support for interoperability, especially that of data. Since most of the existing tools limit their support to services internal to the specific vendor that created them (for example, Google Mashup Editor has a complete abstraction of Google Maps service) or to services that have standard types of outputs such as RSS or Atom (Yahoo! Pipes), the problem of interop is not highlighted.

Another drawback of the current approach to mashups is the complexity of their development itself. Frameworks like Pipes that do not require any programming have limited capabilities. Google Mashup Editor has a steeper learning curve and can do much more than Yahoo! Pipes. However the need to be proficient in languages such as javascript is mandatory to create more complex mashups. We identify two aspects of this complexity

  • Visual: Complexity arising out of the need to create intuitive visual elements and handle various events relating to them
  • Data: Complexity arising due to heterogeneity in data schemas and formats.

The primary objective of SA-REST is to address the data complexity issue.

SA-REST in a nutshell

SA-REST is a microformat to add additional meta-data to (but not limited to) REST API descriptions in HTML and XHTML. Developers can directly embed meta-data from various models such an ontology, taxonomy or a tag cloud into their API descriptions. The embedded meta-data can be used to improve search (for example: perform faceted search for APIs), data mediation (in conjunction with XML annotation) as well as help in easier integration of services to create mashups.

Background

Rather than talking only about SWS (not relevant), we should instead talk about other microformats and the synergy therein with SA-REST.

Researchers in the area of Semantic Web Services have proposed various specifications, the prominent of which are

  • OWL-S
  • WSDL-S
  • WSMO

In 2005, the W3C initiated a charter to create a standard for adding semantics to WSDL descriptions. The WSDL-S specification (submitted by Services Research Lab at kno.e.sis from LSDIS Lab in GA along with IBM) was taken as the primary input for the charter. This led to the standardization of SAWSDL (Semantic Annotation of WSDL and XML Schema). SAWSDL has had a significant impact in the evolution of SA-REST. However, the adoption of a microformat based approach is a key difference between the SAWSDL and SA-REST frameworks. However, it must be noted here that the principles of Schema annotation, lifting and lowering can be directly used from SAWSDL for XML data objects in the RESTful environment.

Usage Scenarios

Faceted Search

The number of available APIs are growing fast. In April 2008, we found that there were about 700 APIs added to ProgrammableWeb. In September, that number is over 900. Currently, general purpose search engines like Google are largely used to find these APIs. However, these treat API documents like any other in indexing and ranking APIs. As a result, search for APIs (even when specific queries like "Maps API") results in API resources being scattered all over the result set. Web API directories like programmableWeb do present a more domain-specific solution. However, they largely rely on user tags for classification and searching.

Addition of meta-data to capture the various facets of APIs (their functionality, the message types they support, clientside bindings, protocol) can allow for better searching. The results of one such framework APIHut is presented in Faceted Search for APIs. We also present our initial evaluation of precision and recall metrics. SA-REST can improve faceted search in a significant manner. Using known techniques of GRDDL and XSLT, one can extract RDF representations of APIs. This can then be indexed and searched upon.

Data Mediation and Mediatability

The importance of enabling easier approaches to data mediation has been well understood. In the context of mashups this is even more important, largely due to the fact that often developers are faced with the burden of handling data at the client side. SA-REST will address this issue in two ways

  • Adopting XML annotation from SAWSDL: This will allow us to add the lifting and lowering transformations to data elements as a part of the API description. Information about SAWSDL lifting and lowering can be found in the SAWSDL spec on schema annotations. There is a small catch that we have to address here. In the WSDL world, data exchange was XML de-facto. However, in the RESTful environment, developers can use many formats such as JSON, GData, RSS. It will be interesting to investigate this as a part of the SA-REST effort.
  • Mediatability: Mediatability is a measure of the estimated human effort for performing data mediation manually. Having additional annotations can significantly help us in computing the mediatability. Even when automatic mediation is not possible, knowing how hard or easy the mediation between two services can definitely help developers in choosing services for their mashups.

Smart Mashups

Smart mashups are those that allow the end user more flexibility to change certain services in a mashup. For example, in the popular Housing Maps mashup, if the quality of Yahoo! maps in a certain area is better than that of Google, the user must have the flexibility to change it. To realize this, we are pursuing on a meta based approach for mashup creation. In this approach, the developer creates the mashup application at a meta level and services are added to them at the run time. In this context, there needs to be a way for the developer to specify the requirements for a service and the system to check if the user preference meets the requirement. Having annotations can help accomplish this task with lesser difficulty.

Automatic Annotation

Semi-automatic text annotation is a significant research area, primarily due to the large volume of text data that becomes available everyday. It is not viable to annotate such volumes of data purely by human effort and one needs to employ text processing techniques to provide automatic markup. One major challenge in text processing is disambiguation, selecting the correct semantics of a word that may be used across domains to represent different concepts.

The domain-rel property acts as a guide to describe the domain(s) a certain text snippet describes and hence provides a means for the text processing / automatic annotation engines to perform effective disambiguation.

Design principles and methods

XHTML Design principles

Due to the specific nature of this type of annotations, there are several design principles that are usually followed when designing XHTML based microformats. These patterns are well documented in the hcalendar microformat specification. However we outline the most important design principles that were followed during this microformat design.

  1. Reuse the schema (names, objects, properties, values, types, hierarchies, constraints) as much as possible from pre-existing, established, well-supported standards by reference. This introduces minimum or no disruption to the regular machinery that interacts with this markup.
  2. Use a generic structural element (e.g. <span> or <div> ), or the appropriate contextual element (e.g. an <li> inside a <ul> or <ol>).
  3. if the format of the data according to the original schema is too long and/or not human-friendly,place the literal data into the 'title' attribute leaving the human readable text inside the element. This is extensively used in the hcalendar format with the <abbr> element where literal text is wrapped with <abbr> elements to provide the machine-friendly annotation. The specific design decision in hcalendar is detailed out by the author here.

Annotation styles

Now we provide two styles of applying the microformat. These styles can be used interchangeably depending on readability and convenience considerations.

Class and Title Style

Guided by the first design principle, the class and title attributes are used to provide a name-value relationship for the text content. For example marking up the word map with a specific class reference would appear in XHTML as follows

<span class="sem-class" title="http://apihut.com/schema/apihut-taxonomy#Map">Maps</span>

Class Only Style

This is a convenient way of achieving the same objective of attaching a name-value pair to text content. The class attribute contains the name and value separated by a space and the first section is considered to be the name and the other, the value. Class only style has the additional benefit of not having an undesired tooltip effect on the text, but gives up the neat separation and hence sacrifices the readability.

<span class="sem-class http://apihut.com/schema/apihut-taxonomy#Map">Maps</span>

Property Types

The microformat properties can be categorized into two major types.

Block markup

Markups that pertain to a block like div, body etc. Such markup applies to a larger portion of text that may or may not contain other markups.

 <body class="domain-rel" title="http://apihut.com/taxonomies/domainClassification.rdf#maps"> ... </body>

In this example, the domain-rel property is added to the body and hence covers the complete text content encapsulated by the <body> element. This particular property indicates that API descriptions inside the body belong to the maps domain as described in the domain model.

Element markup

Markup on a single element like a span which wraps a word,phrase or a single resource. Element markup should not contain other markup.

Multivalued Properties

Often it is necessary to associate multiple values with a single property. For example one might need to indicate that a certain text content as a whole is relevant to both mathematics and biology domains. In such situations SA-REST allows enumerations to be included as the value for a property. Enumerations are a white space separated list of references. The following example illustrates the use of enumerations as a property value.

 <body class="domain-rel" title="http://apihut.com/taxonomies/domainClassification.rdf#mathematics 
http://apihut.com/taxonomies/domainClassification.rdf#biology"> ... </body>  

When using the class only style, the list of values after the name are considered to be the value. The previous markup, when made with class only style, would appear as follows.

 <body class="domain-rel http://apihut.com/taxonomies/domainClassification.rdf#mathematics 
http://apihut.com/taxonomies/domainClassification.rdf#biology"> ... </body>  

Basic SA-REST properties

SA-REST has three basic properties discussed below. These properties provide for mechanisms to add richer semantic information for any Web resource. However, one can extend SA-REST to capture resource specific semantics. Examples of these include SA-REST extensions for Web APIs and SA-REST extensions for social networking profiles. An author desiring to create a new microformat, however is strongly urged to consider reuse for a resource type before attempting an extension.

domain-rel

The domain-rel property allows description of domain information for an entire resource. If a given resource (such as blog posts) has content spanning multiple domains, it is desired to add multiple domain-rel elements, each surrounding a section of the resource. If such a separation cannot be made, the title attribute should be an enumeration of the domains.

Simple domain-rel example

<span class="domain-rel" title="http://apihut.com/schemas/socialnetworking#socialnetworks> The growing trend of "liking" has recently caught a lot of attention of both network 
users as well as developers.</span>

The example below illustrates a multi-domain scenario where the domain contexts can be separated in the content. This annotation is desirable when a resources (such as integrated feeds) that draw content from multiple sources are created.

Multi-domain domain-rel example 1

<span class="domain-rel" title="http://apihut.com/schemas/socialnetworking#socialnetworks> The growing trend of "liking" has recently caught a lot of attention of both network 
users as well as developers...</span>

<span class="domain-rel" title="http://apihut.com/schemas/economy#banking"> I also came across this interesting discussion on bailout that talked about nationalization of banks</span>

A very frequent scenario is one where a resource content spans multiple domains and the content is not contextualized.

Multi-domain domain-rel example 2

<span class="domain-rel" title="http://apihut.com/schemas/socialnetworking#socialnetworks http://apihut.com/schemas/economy#recession"> One often wonders the future of 
advertisement driven Web applications in the current economic scenario. For example, social networking applications such as...</span>

sem-rel

The sem-rel property will capture the semantics of a link. This evolves from the popular rel tag. An application of sem-rel would be to describe a data model that is captured in a XSD. The primary purpose of the sem-rel tag is to allow developers to add "top level annotation" to schemas that are third party. The sem-rel property also allows enumeration within the title attribute. It is used in conjunction with the a attribute.

 <a href="http://foo.xsd" sem-rel="http://taxonomy.org/computerscience#firstname"> This is the input schema</a> 
 <a href="www.teachmegooglemaps.com" class="sem-rel" title="http://apihut.com/taxonomies/domainClassification.rdf#maps"> Learn Google Maps

sem-class

sem-class is an element markup property. sem-class can be used to markup a single entity within a resource. Like the domain-rel tag, the sem-rel tag can be an enumeration. For example, in a blog, sem-class can be used to markup single words, while in a page (such as YouTube), sem-class mark up an video object. Both scenarios are exemplified below.

 One striking observation in evolution of <span class="sem-class" title="http://tap.stanford.edu/#computer"> Computers </span> is the relationship between speed and size.
.

The example below illustrates the markup of a flash media object. The markup describes the actual video that is embedded therein. In this case, the video is from American Dad episode from hulu.com (may not be active all the time)

sem-class on non-textual content

 <span class="sem-class" title="http://entertainment.org/schemas/tv#american_dad"><div id="player-container" style="text-align: center;">
<embed id="player" height="368" width="790" flashvars="stage_width=790&stage_height=368&content_id=m1ppkqeh&bitrate=700000&user_id=-1" bgcolor="#000000" 
allowfullscreen="true" allowscriptaccess="sameDomain" quality="high" name="player" style="z-index: 10;" src="/player.swf" type="application/x-shockwave-flash"/>
</div></span>
.

Processing SA-REST

The most straight forward way to process the documents is to use XSLT along with GRDDL. XSLT is a well supported and a flexible way to transform XML documents from one form to another, typically the target form being XML or any other text format. GRDDL specification describes how the XSLT transformation can be used to convert annotated XHTML/HTML documents to RDF. The following snippet shows a specification of the transformation stylesheet according to GRDDL.

 <html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:grddl='http://www.w3.org/2003/g/data-view#'
      grddl:transformation="glean_title.xsl
			http://www.w3.org/2001/sw/grddl-wg/td/getAuthor.xsl"
 >
  

The subsequent processing can be done using the RDF representation.

Related Documents