Difference between revisions of "SA-REST"

From Knoesis wiki
Jump to: navigation, search
(Usage Scenarios)
(Changed the top to reflect the latest version)
 
(47 intermediate revisions by 4 users not shown)
Line 1: Line 1:
'''This article is written in a style that is not suitable for a wiki. This will change as we get more inputs and continue our edits. For now, this is just a easy way to share what our'''
+
<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>
'''thoughts and start a discussion. The editorial changes will happen as we start and continue the discussion. The wikimedia css bombs on me, hence this personal message - karthik.'''
+
  
SA-REST is a simple and open format for enhancing Web APIs HTML or XHTML. 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. SA-REST is expected to build upon [[HRESTs]]; the current content does not reflect this yet.
+
----
  
0929dd1c385482a11
 
http://5.hijegap.com/watch-naruto-shippuden-63-sub.html watch naruto series
 
http://10.hijegap.com/textbook-writing-jobs.html
 
http://9.bosuliw.com/anne-hugdens-pictures.html c# transparent picturebox
 
http://2.methese.com/bowen-island-phone-book.html
 
http://7.jeromaw.com/tickets-to-bourmouth.html tickets to blackpool tower
 
http://5.hijegap.com/childrens-bedroom-furniture-nz.html
 
http://1.mozevuh.com/kfest-2007-pictures.html keystone colorado pictures
 
http://11.lonupit.com/city-commissioner-plan.html
 
http://2.miwyhet.com/lacrosse-team-picture.html lacy peterson pictures
 
http://1.fuvasir.com/jobs-in-southern-bc.html
 
http://1.lonupit.com/welcome-to-my-life-azlyrics.html welcome to my life by simple plan
 
http://7.bosuliw.com/sacramento-hotel-booking.html
 
http://4.miwyhet.com/ideas-for-graduations.html ideas for graduation speech
 
http://10.methese.com/plants-for-shade-in-texas.html
 
http://9.lonupit.com/sesshomaru-and-rin-pictures.html seth enslow pictures
 
http://2.lonupit.com/federal-bilingual-jobs.html
 
http://2.fuvasir.com/to-date-interracially.html to date news on madeleine mccann
 
http://5.hijegap.com/picture-of-air-hostess.html
 
http://2.hijegap.com/the-book-with-no-title.html the book where the heart is
 
http://11.methese.com/weekend-warriors-artist.html
 
http://8.miwyhet.com/car-boot-sale-pictures.html angular cheilitis picture
 
http://3.jeromaw.com/maxilife-coq10-formula.html
 
http://5.jeromaw.com/pictures-of-dinning.html pictures of dimpling of
 
http://4.hijegap.com/fat-percentage-pictures.html
 
http://9.methese.com/yugioh-world-championship-2008-deck-recipes.html gamma hydroxybutyrate recipe
 
http://1.methese.com/princess-of-the-star-pictures.html
 
http://4.lycyzet.com/why-is-my-cats-hair-falling-out.html media bean bag chairs
 
http://6.kyjonet.com/digital-signal-processing-ebookee.html
 
http://8.miwyhet.com/kate-gosselin-belly-pictures.html kate ceberano pictures
 
http://11.miwyhet.com/harold-life-education.html
 
http://1.bosuliw.com/joseph-tickets-october.html joseph tour tickets
 
http://4.lonupit.com/water-books-for-kids.html
 
http://10.methese.com/miles-kimball-jobs.html migration jobs in australia
 
http://7.mozevuh.com/used-bumgenius-diapers.html
 
http://2.hijegap.com/monaco-grand-prix-2009-tickets.html monchy y alexandra tickets
 
http://2.hijegap.com/pictures-of-gurdwaras.html
 
http://6.bosuliw.com/broadcast-network-gateway.html broadcast live video streaming
 
http://3.lonupit.com/bacteria-cell-culture.html
 
http://4.miwyhet.com/vanderhoof-phone-book.html vanderbilts complete book
 
http://1.bosuliw.com/and-now-my-life-song-sings.html
 
http://8.miwyhet.com/planetariums-in-texas.html planetariums in los
 
http://10.lonupit.com/pokemon-trading-card-pictures.html
 
http://10.kyjonet.com/used-peg-perego-pliko.html used pc video games
 
http://5.mozevuh.com/new-landscape-plants.html
 
http://7.jeromaw.com/paulist-press-book-store.html paulo coelho brida book
 
http://4.hijegap.com/healthcare-jobs-from.html
 
http://8.bosuliw.com/power-plant-deaerator.html power plant concept
 
http://5.lonupit.com/jaspers-restaurant-in-plano.html
 
http://8.bosuliw.com/pictures-of-bibliography.html pictures of bichion
 
http://5.kyjonet.com/teacher-assistant-jobs-san.html
 
http://7.methese.com/erebp-family-of-plant.html erate technology plan
 
http://10.bosuliw.com/best-bikini-pictures.html
 
http://11.miwyhet.com/sonali-bendre-hot-pictures.html someone take her picture so i don t forget her
 
http://5.methese.com/the-meaining-of-life.html
 
http://11.hijegap.com/wizard-comic-book-magazine.html wizardology the book of
 
http://1.fuvasir.com/successful-marketing-plans.html
 
http://9.miwyhet.com/laugh-at-whatever-life.html lateral sclerosis life
 
http://3.lycyzet.com/check-point-safeoffice.html
 
http://11.kyjonet.com/red-heelers-pictures.html red hand of ulster picture
 
http://9.jeromaw.com/kabbalistic-handbook-for-the-practicing.html
 
http://1.lycyzet.com/thomasina-miers-book.html thor heyerdahl book
 
http://5.miwyhet.com/seborrhoeic-dermatitis-pictures.html
 
http://8.miwyhet.com/and-social-datebook.html chris oyakhilome books
 
http://11.bosuliw.com/bride-and-groom-shop.html
 
http://8.fuvasir.com/los-angeles-airport-plan.html a prison on planet bullshit in the
 
http://7.hijegap.com/pictures-of-vesa-toskala.html
 
http://9.bosuliw.com/psychometric-tests-used.html psychology tests used
 
http://10.fuvasir.com/wind-notebook-u100.html
 
http://5.mozevuh.com/chanta-patton-wallpaper.html pyramids of giza wallpaper
 
http://5.hijegap.com/altador-water-distribution-plant.html
 
http://10.mozevuh.com/notebook-backpack-with-15-notebook.html notebook battery adapter
 
http://5.bosuliw.com/kansas-city-kansas-community-college-jobs.html
 
http://3.kyjonet.com/to-planet-motherfucker-psychoholic.html to plan for disaster recovery
 
http://7.methese.com/handicap-bathroom-grab-bars.html
 
http://5.fuvasir.com/ballrooms-in-mcallen-tx.html ballrooms in birmingham
 
http://1.lycyzet.com/original-star-trek-pictures.html
 
http://2.miwyhet.com/categoric-kidney-transplant.html catha edulis plants
 
http://4.bosuliw.com/mother-of-the-groom-dresses-size.html
 
http://6.mozevuh.com/rachofsky-house-plan.html racing form explanation
 
http://2.lonupit.com/head-scalp-massage.html
 
http://8.hijegap.com/and-strategic-plannin.html and strategic planning processes
 
http://5.methese.com/tickets-for-samsung-500.html
 
http://1.jeromaw.com/plan-album-welcome-to-my-life.html plan lyrics welcome to my life
 
http://10.mozevuh.com/ladies-pictures-com.html
 
http://11.lycyzet.com/book-lap-top-computers.html book lap top computers
 
http://4.methese.com/martin-luther-king-biography-book.html
 
http://4.kyjonet.com/plans-published-by-drunvalo-melchizedek.html plans on how to build a deck
 
http://3.lycyzet.com/oral-health-quality-of-life.html
 
http://11.lonupit.com/hayden-lambson-wildlife.html hbsc life insurance
 
http://6.kyjonet.com/occupational-health-book.html
 
http://7.hijegap.com/plantaris-muscle-and.html plantard and saint clair
 
http://6.mozevuh.com/free-black-book-car.html
 
http://2.hijegap.com/corte-sagunto-temecula-ca.html corner gun cabinets
 
http://2.mozevuh.com/watches-for-female.html
 
http://7.hijegap.com/center-road-west-seneca.html center ridge road westlake
 
http://10.mozevuh.com/telemarketing-jobs-in-nashville.html
 
http://10.miwyhet.com/10th-grade-life-science.html virtual world gets another life
 
http://2.kyjonet.com/knife-throwing-books.html
 
http://2.mozevuh.com/current-weather-in-london-uk.html current weather in munich
 
http://3.jeromaw.com/theatre-job-positions.html
 
http://9.mozevuh.com/of-ohmaha-life-insurance.html of phillis wheatleys life
 
http://3.fuvasir.com/love-is-pain-life-is-pain.html
 
http://2.lycyzet.com/haggerty-road-plymouth-mi-48170.html haggerty road livonia mi 48152
 
http://6.bosuliw.com/the-riviter-pictures.html
 
http://7.miwyhet.com/weekend-and-sydney.html weekend apologies lyrics thriving ivory
 
http://11.jeromaw.com/republic-of-the-congo-jobs.html
 
http://2.fuvasir.com/2009-acura-tl-spy-pictures.html stringed instruments pictures
 
http://5.mozevuh.com/mp3-audiobook-freakonomics.html
 
http://5.jeromaw.com/blue-room-of-the-white-house.html blue room lounge atlanta
 
http://4.hijegap.com/wealth-building-plan.html
 
http://1.hijegap.com/act-of-war-direct-action-keygen.html acoustica beatcraft keygen
 
http://10.methese.com/philo-life-of-moses.html
 
http://10.jeromaw.com/age-of-the-world-picture.html harriet tubman picture
 
http://1.mozevuh.com/feat-too-hort-life-of-da-party.html
 
http://4.hijegap.com/free-audio-book-on.html free audio book of the
 
http://2.lonupit.com/life-as-a-drug-dealer.html
 
http://4.methese.com/radiology-jobs-in-south-carolina.html radiology jobs in iowa
 
http://11.kyjonet.com/pictures-of-plantar-fibromatosis.html
 
http://3.lycyzet.com/serial-number-for-atomix-virtual-dj.html serial number for incrediflash
 
http://10.jeromaw.com/television-genre-book.html
 
  
226b42cf3da1
+
SA-REST is a simple and open microformat for enhancing Web resources with additional semantic information.  
http://2.kyhyrafe.com/name-for-triazolam.html name for treponema
+
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.
http://7.nythajec.com/crockpot-dressing-recipe.html
+
http://3.zypajoth.com/community-college-jobs-available.html community college jobs employment
+
http://2.zequohix.com/anticyclones-in-summer.html
+
http://8.nythajec.com/books-on-environmental-pollution.html books on equipment leasing
+
http://11.chaquyly.com/of-conductor-backed-coplanar-waveguide.html
+
http://7.zequohix.com/professional-pictures-london.html professional picture editing
+
http://3.hujyxyad.com/watch-naruto-shipuuden-60.html
+
http://4.kyhyrafe.com/flanders-road-henniker.html flanner and buchanan broad ripple
+
http://6.zequohix.com/bratz-kids-wallpaper.html
+
http://10.zequohix.com/indusrty-life-cycle.html infant neoprene life vests
+
http://6.nepuvodi.com/nose-hair-trimmer-for.html
+
http://8.zequohix.com/watch-formula-1-racing.html watch foreign body online
+
http://10.hujyxyad.com/lake-county-il-weather.html
+
http://6.nythajec.com/american-directory-systems.html american direct austin texas
+
http://11.chaquyly.com/hairdressers-south-dublin.html
+
http://9.zequohix.com/used-cross-stitch-charts.html used croth rockets
+
http://4.chaquyly.com/pictures-of-middleaged.html
+
http://10.zequohix.com/wholesale-cuff-watch.html memory price watch
+
http://8.zypajoth.com/obscure-bible-names.html
+
http://11.hujyxyad.com/spectral-broadening-on.html spectrum blackfriars road
+
http://2.chaquyly.com/undertaker-return-date.html
+
http://5.chaquyly.com/premera-blue-cross-plan.html preimplantation genetics diagnosis
+
http://6.zequohix.com/weather-woman-japanese.html
+
http://3.nythajec.com/wgp-trilogy-paintball-gun.html wgp trilogy paintball gun
+
http://3.nepuvodi.com/elboroom-fort-lauderdale.html
+
http://6.kyhyrafe.com/stormy-weather-ella.html stormy weather by carl hiaasen
+
http://7.hujyxyad.com/animated-summer-pictures.html
+
http://2.norumuqu.com/travel-reservations-jobs.html travel resort jobs
+
http://9.chaquyly.com/playstation-official-magazine-uk-gta-review.html
+
http://9.zypajoth.com/recipe-gluten-free-banana-bread.html recipe from slovak republic
+
http://3.nepuvodi.com/world-poverty-pictures.html
+
http://3.chaquyly.com/wpnfire-shooting-flash-game-cheats.html wpnfire shooting flash game cheat
+
http://10.nepuvodi.com/road-kiveton-park-sheffield.html
+
http://6.chaquyly.com/american-civil-liberties-union-1-9.html american civil liberties union 1 9
+
http://3.nythajec.com/magazine-best-wines.html
+
http://3.nythajec.com/about-nothing-gossip-girl-watch-online.html tech altimeter barometer watch
+
http://5.norumuqu.com/long-term-weather-forecasting.html
+
http://8.hujyxyad.com/electronic-book-text.html electronic book catalog
+
http://4.nepuvodi.com/natie-american-tribe.html
+
http://9.nepuvodi.com/much-are-sea-world-tickets.html much are tickets for wimbledon
+
http://11.nythajec.com/indepentent-paperfor-jobs-in.html
+
http://7.wicyfowa.com/indian-summer-india.html indian summer lagerstroemia indica x l fauriei
+
http://10.nepuvodi.com/girl-scouts-of-north-america.html
+
http://7.kyhyrafe.com/english-sympathizer-in-america.html english sympathizers in america
+
http://10.hujyxyad.com/road-jacksonvile-fl.html
+
http://6.kyhyrafe.com/american-star-cruises.html american star marine
+
http://7.kyhyrafe.com/happy-child-pictures.html
+
http://2.zypajoth.com/virginia-dominion-power-jobs.html virginia newspaper jobs
+
http://2.chaquyly.com/nature-conservancy-wallpaper.html
+
http://4.zypajoth.com/learn-latin-american-spanish-online.html learn american slangs
+
http://5.nythajec.com/erema-north-america.html
+
http://8.norumuqu.com/jobo-giga-vu-pro-reviews.html jobos isabela puerto
+
http://8.kyhyrafe.com/wars-wallpaper-1680.html
+
http://4.nythajec.com/boom-room-banjaluka.html boom boom room singapore
+
http://11.zequohix.com/test-of-the-emergency-broadcast-system-sound.html
+
http://8.nythajec.com/tony-hawks-project-8-cheats-xbox360.html tony hawks pro skater 4 cheats ps1
+
http://6.zequohix.com/online-holdem-tournaments.html
+
http://1.nepuvodi.com/pysons-road-industrial-estate-broadstairs.html chanters road bideford
+
http://11.kyhyrafe.com/star-island-resort-pictures.html
+
http://11.wicyfowa.com/watch-two-girls-and-a-cup-for.html watch two girls in one cup
+
http://3.wicyfowa.com/nautical-bathroom-decorating.html
+
http://7.hujyxyad.com/alter-session-set-nls_date_format-yyyy.html alter table update column
+
http://11.wicyfowa.com/noncommissioned-officer-sword.html
+
http://4.wicyfowa.com/smoked-eisbein-recipe.html smith macaroni and cheese recipe
+
http://8.hujyxyad.com/leather-cuff-watch-with-animated.html
+
http://10.chaquyly.com/bookers-cash-and-carry-head-office.html bookers cash and carry london
+
http://11.wicyfowa.com/shu-umera-art-of-hair.html
+
http://3.wicyfowa.com/pictures-of-mercry.html pictures of mercedes c class
+
http://10.zypajoth.com/things-to-do-on-an-airplane.html
+
http://4.zequohix.com/group-chief-financial-officer.html intelligent office garden
+
http://5.kyhyrafe.com/used-audio-visual-carts.html
+
http://3.nepuvodi.com/officejet-6210xi-scanner.html officejet 6213 all
+
http://10.wicyfowa.com/future-trends-book.html
+
http://1.nythajec.com/watch-tristan-and-isolde-for-free.html watch tristan and isolde free
+
http://5.chaquyly.com/hair-fashion-chat-room.html
+
http://5.wicyfowa.com/rihanna-take-a-bow-picture.html rihanna ultimate pictures
+
http://2.zequohix.com/bachler-party-ideas.html
+
http://11.nepuvodi.com/why-wouldnt-you-waste-the-afterlife.html widelife all things just keep
+
http://4.norumuqu.com/planned-parent-hood-clinic.html
+
http://8.hujyxyad.com/labor-day-weekend-cheap-getaways.html labor day weekend 2003
+
http://7.chaquyly.com/how-to-change-dbname.html
+
http://2.hujyxyad.com/jobs-in-hotels-in-edinburgh.html jobs in hotels around
+
http://4.wicyfowa.com/the-99-beautiful-names-of.html
+
http://10.nythajec.com/planet-ice-arena-milton.html planet house kitzingen
+
http://6.zypajoth.com/how-to-schedule-a-road-test.html
+
http://3.wicyfowa.com/s149-stopwatch-printer.html bucherer ring watch
+
http://1.norumuqu.com/kinear-road-columbus.html
+
http://9.hujyxyad.com/dizzee-rascal-thats-not-my-name.html dlink router default username and password
+
http://2.chaquyly.com/callrecorder-version-102-keygen.html
+
http://8.kyhyrafe.com/hublot-watch-womens.html hublot watches big bang
+
http://2.chaquyly.com/name-for-a-midshipman.html
+
http://4.nythajec.com/hair-ball-cat-food.html hair and texturizers
+
http://8.hujyxyad.com/casio-protrek-watch-prw-1500-1ver.html
+
http://8.kyhyrafe.com/bringing-down-the-house-real-life.html bringing grammar to life
+
http://8.nepuvodi.com/broadway-acorss-america.html
+
http://3.zequohix.com/whistle-pig-gun-barrel.html where to watch mobile suit gundam
+
http://3.norumuqu.com/names-of-colorful-fish.html
+
http://10.nythajec.com/call-of-duty-4-map-pictures.html california sea lion pictures
+
http://8.kyhyrafe.com/cheats-for-pictochat.html
+
http://10.nepuvodi.com/books-online-with-free-shipping.html books online skinny bitch
+
http://8.nepuvodi.com/free-lady-sonia-i-bookmarked.html
+
http://9.norumuqu.com/crackwhore-confessions-videos.html crackwhore confessions hailey
+
http://5.norumuqu.com/roverbook-pro-510wh.html
+
http://10.nepuvodi.com/crosshair-nf590-socket.html crosshairs in cod4
+
http://8.kyhyrafe.com/24661-miles-road-warrensville.html
+
http://10.hujyxyad.com/best-shop-magazine.html best restaurants magazine
+
http://5.zequohix.com/life-partners-viatical.html
+
http://2.kyhyrafe.com/japanese-kare-recipe.html japanese hamburg recipe
+
http://6.chaquyly.com/first-american-family-of-companies.html
+
http://7.zequohix.com/officestation-access-terminals.html offices to let bickenhill
+
http://11.hujyxyad.com/how-high-to-hang-picture.html
+
http://7.nepuvodi.com/gordon-ramsay-recip.html isreali cous cous recipe
+
http://4.nythajec.com/here-comes-the-sun-book.html
+
http://4.zequohix.com/m54-magellan-roadmate-auto-navigation.html 2525 shermer road northbrook
+
http://5.wicyfowa.com/your-mouth-shortbread-recipe.html
+
http://1.nythajec.com/12-week-fitness-plan.html 12 week development
+
http://11.chaquyly.com/office-assistant-jobs-in-los.html
+
http://9.nythajec.com/nova-southeastern-university-fischler-gradate.html nottinghill carnival date
+
http://7.hujyxyad.com/broadband-isp-guide.html
+
  
226b42cf3da1
+
==People==
http://2.hujyxyad.com/crack-of-activespeed.html crack of getdataback for
+
Collaborators in the SA-REST initiative are listed by their affiliations.  
http://8.hujyxyad.com/consumer-report-on-american.html
+
* '''kno.e.sis center, Wright State University, Dayton, OH'''
http://8.zypajoth.com/give-yourself-a-blojob.html airport electrician jobs
+
** Amit P. Sheth.
http://3.chaquyly.com/microsoft-office-live-small-business-home.html
+
** Karthik Gomadam.
http://11.zypajoth.com/the-office-season-4-on-line.html the office season 4 rar
+
** Ajith Ranabahu
http://1.zequohix.com/asus-m50sv-battery-life.html
+
http://4.nepuvodi.com/tes-staffroom-early.html 2 light bathroom fixture
+
http://3.norumuqu.com/straight-hair-conditioner.html
+
http://2.zypajoth.com/roadpro-emergency-jumpstart-system.html roadpro 12 volt portable vehicle heat
+
http://11.kyhyrafe.com/can-i-watch-kitply.html
+
http://11.zequohix.com/moleskine-2008-red-pocket-weekly-planner-notebook.html moddy founders week
+
http://2.zypajoth.com/to-date-a-baton-twirler.html
+
http://9.nythajec.com/foro-despierta-america.html foro despierta america
+
http://6.zypajoth.com/all-call-center-jobs.html
+
http://9.norumuqu.com/philosophy-book-by.html phillippa gregory books
+
http://7.kyhyrafe.com/american-pale-goldfinch.html
+
http://5.zequohix.com/butter-baked-chicken-recipe.html butter chicken and recipe
+
http://5.nythajec.com/summerstone-apartments-in-bedford.html
+
http://2.nepuvodi.com/china-trade-magazine.html chitram film magazine
+
http://1.hujyxyad.com/hotel-rooms-in-pittsburgh.html
+
http://11.norumuqu.com/the-survivor-digital-songbook.html the sun also rises book review
+
http://2.nythajec.com/microsoft-office-home-and-student-2005.html
+
http://1.zypajoth.com/gun-blueing-services.html gun bluing products
+
http://11.kyhyrafe.com/japanese-internment-books.html
+
http://5.wicyfowa.com/pictures-of-benito-mussolini.html pictures of benjamin bannaker
+
http://11.wicyfowa.com/recipe-for-chocolate-buttermilk.html
+
http://4.nythajec.com/secretarial-jobs-in-vancouver.html secretarial jobs in swindon
+
http://2.kyhyrafe.com/x-linked-lymphoproliferative-disease.html
+
http://7.hujyxyad.com/auckland-weather-history.html auburn alabama weather forecast
+
http://6.zequohix.com/the-nightwatchman-music.html
+
http://9.wicyfowa.com/hostname-from-inetaddress-getlocalhost.html hostname could not be parsed
+
http://4.zypajoth.com/junitvmwatcher-properties-the-system-cannot-find.html
+
http://11.nythajec.com/cheap-planr-tickets.html and unplanned pregnacy
+
http://2.kyhyrafe.com/missour-phone-book.html
+
http://4.norumuqu.com/mp5-sd5-airsoft-gun.html mrs hacks for gunz
+
http://1.nythajec.com/buhairah-medical-center.html
+
http://10.chaquyly.com/grade-10-life-science.html ain t life grand widespread
+
http://9.zequohix.com/the-hiding-place-book-summary.html
+
http://2.zequohix.com/geethree-stealth-serial-port.html generate serialization assembly
+
http://11.zequohix.com/michael-clayton-dvd-release-date.html
+
http://5.norumuqu.com/print-labels-from-mac-address-book.html print free books online
+
http://9.norumuqu.com/youth-cup-tournament.html
+
http://1.zequohix.com/life-of-augustus-by-suetonius.html life of apollonius of
+
http://9.kyhyrafe.com/female-petty-officer.html
+
http://8.zypajoth.com/cheap-textbook-price.html cheap textbook price
+
http://9.zypajoth.com/daily-life-in-anceint.html
+
http://3.zequohix.com/free-computer-magazines-in-india.html free digital magazine subscription
+
http://3.hujyxyad.com/a-wedding-date-movie.html
+
http://8.wicyfowa.com/dubai-waterfront-masterplan.html dubai marina masterplan
+
http://3.zypajoth.com/american-psychological-assoc.html
+
http://4.zequohix.com/pictures-of-christana.html pictures of christa mcauliffe
+
http://4.kyhyrafe.com/triwizard-tournament-maze.html
+
http://1.kyhyrafe.com/cat-scrapbook-albums.html catalyst book press
+
http://9.chaquyly.com/poke-mon-crystal-cheats.html
+
http://5.norumuqu.com/bookstore-mentor-ohio.html bookstore morganton nc
+
http://2.zequohix.com/point-road-baltimore-md-21220.html
+
http://9.nepuvodi.com/about-butterfly-life-cycle.html about butterfly life cycle
+
http://4.zypajoth.com/vice-city-stories-game-cheats-for-psp.html
+
http://8.norumuqu.com/weather-in-penetanguishene.html weather in perham mn
+
http://7.nythajec.com/lornoxicam-half-life.html
+
http://7.chaquyly.com/offices-at-nariman-point.html offices earmarked for
+
http://5.wicyfowa.com/crossing-wide-screen-tv-cheat.html
+
http://3.chaquyly.com/thermasilk-flexible-hair-spray.html and infestations in hairdressing
+
http://8.zypajoth.com/the-name-of-the-worm.html
+
http://10.kyhyrafe.com/plans-for-a-park-bench.html plans for a sawhorse
+
http://7.hujyxyad.com/the-american-heritage-picture-history.html
+
http://1.zequohix.com/ratchet-and-clank-lock-and-load-cheats.html ratchet and clank going commando ps2 cheats
+
http://10.nythajec.com/dundees-wildlife-park.html
+
http://9.hujyxyad.com/summerbridge-north-yorkshire.html summerbreeze hotel phuket
+
http://6.zypajoth.com/pictures-of-wonder-women.html
+
http://1.zequohix.com/foot-massage-tools.html foot massage san gabriel
+
http://1.zypajoth.com/america-compensation-plan.html
+
http://4.wicyfowa.com/creighton-university-pictures.html and clide pictures
+
http://6.wicyfowa.com/perth-monthly-weather.html
+
http://8.norumuqu.com/discount-dance-magazine.html discover magazine subscribe
+
http://6.nepuvodi.com/east-african-business-week.html
+
http://10.nythajec.com/how-to-get-machine-name.html how to give a name
+
http://5.chaquyly.com/picture-of-danny-moder.html
+
http://10.chaquyly.com/to-watch-my-wife-fuck.html to watch sexfriend
+
http://4.zypajoth.com/king-masala-recipe.html
+
http://5.zypajoth.com/grand-theft-auto-san-andreas-cheats-weapons.html grand theft auto sanandras cheats
+
http://8.nythajec.com/five-tv-it-pays-towatch.html
+
http://5.chaquyly.com/pork-tenderloin-sauce-recipes.html clams posillipo recipe
+
http://9.nythajec.com/job-search-naukri-com.html
+
http://4.nepuvodi.com/independent-life-magazine.html independent savage life
+
http://9.hujyxyad.com/american-kennel-club-dog-show-in.html
+
http://8.kyhyrafe.com/pictures-of-lincoln-logs.html pictures of limestone rocks
+
http://7.wicyfowa.com/roadies-50-26-april.html
+
http://4.norumuqu.com/inpulse-prepaid-plan.html inplantation bleeding last
+
http://10.zypajoth.com/whole-moong-recipes.html
+
http://11.chaquyly.com/mashed-potato-pictures.html mashramani 2007 pictures
+
http://3.nythajec.com/stephon-marbury-pictures.html
+
http://11.nepuvodi.com/manager-031-crack.html malwarrior 2008 crack
+
http://5.zypajoth.com/obliterated-serial-number.html
+
http://1.nythajec.com/charles-manson-early-life.html charles river wildlife
+
http://9.nythajec.com/weather-forcast-for-budapest.html
+
http://4.norumuqu.com/hamilton-road-deal.html hamilton road centre
+
http://5.hujyxyad.com/phair-exile-in-guyville-tour.html
+
http://1.zypajoth.com/watch-movies-online-or-free.html watch movies with good quality
+
http://6.zequohix.com/air-portugal-office.html
+
http://10.nythajec.com/biotech-jobs-in-portland.html biotechnologist job description
+
http://3.norumuqu.com/names-of-colorful-fish.html
+
http://6.wicyfowa.com/hgv-jobs-north-west.html hierarchy of needs job
+
http://5.wicyfowa.com/5on5-basketball-tournaments.html
+
http://7.hujyxyad.com/beef-jerky-recipes-dehydrator.html tyler florence recipies
+
http://4.nythajec.com/massage-envy-cedar-park-tx.html
+
http://8.zequohix.com/inexpensive-baby-shower-ideas.html inexpensive nursery ideas
+
http://4.norumuqu.com/donde-esta-eduardo-book.html
+
http://6.zypajoth.com/to-get-croagunk-on.html to get the scareb gun in
+
http://3.nythajec.com/drafting-estate-plans.html
+
http://4.chaquyly.com/steve-gunn-sundowner.html stevens 520a shotgun
+
http://8.kyhyrafe.com/used-as-an-alloy-in-ballpoint-pens.html
+
http://8.norumuqu.com/what-is-the-name-of-that-movie.html what is the name of my love
+
http://10.chaquyly.com/ferraby-lionheart-crack.html
+
http://10.chaquyly.com/the-jellicoe-road-melina.html the jellicoe road melina
+
http://4.nepuvodi.com/top-100-people-screwing-up-america.html
+
http://4.wicyfowa.com/frankweiler-the-book.html franklin gothic book condensed
+
http://7.kyhyrafe.com/msoffice-2007-serial.html
+
http://4.nythajec.com/dbz-budokai-tenchaichi-2-cheats.html dbz budokai tenkaichi2 cheats
+
http://2.kyhyrafe.com/anarchists-cookbook-movie.html
+
  
==SA-REST Elements==
+
==Introduction==
We have currently come up with a few elements for SA-REST. This is by no means final and is very much open to discussion and change. Markups can be one of:
+
<!-- Replace this with a need for additional semantic annotation for Web resources. Highlight Web APIs as an example, not the only effect. -->
* block markup : Markups on that pertain to a block like div, body etc.  
+
<pre><nowiki> <body domain-rel="http://apihut.com/taxonomies/domainClassification.rdf#maps"> </nowiki></pre>
+
In this example, the domain-rel markup is added to the body. This markup 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 (when it wraps a word or a phrase)
+
  
Currently, we propose to have the following elements:
+
===Current mashup tools and technologies===
Note that the examples depict the SA-REST compoenents in the commonly used microformat annotation style.
+
<!-- This section changes as well to talk about limitation in APIs and how SA-REST can address this. Add a blog example.-->
* sem-rel: Sem-rel element will capture the semantics of a link. This evolves from the popular rel tag. An application of sem-rel would be to describe
+
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.
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.  
+
====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.  
  
<pre><nowiki> <a href="http://foo.xsd" sem-rel="http://taxonomy.org/computerscience#firstname"> This is the input schema</a> </nowiki></pre>
+
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.
  
*domain-rel: captures the domain of the current api. It can applied either as a block or an elemental markup.  
+
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. -->
  
<pre><nowiki> <body domain-rel="http://apihut.com/taxonomies/domainClassification.rdf#maps"> </nowiki></pre>
+
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.
  
The above example can also be reformulated with an additional value property, rather than just using domain-rel. This would be,
+
===Background===
 +
Rather than talking only about SWS (not relevant), we should instead talk about other microformats and the synergy therein with SA-REST.  
  
<pre><nowiki> <body class="domain-rel" value="http://apihut.com/taxonomies/domainClassification.rdf#maps"> </nowiki></pre>
+
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.
  
*p-lang-binding: captures a particular client side binding. For example, the section of google maps API that talks about the Zend framework for Google Data will be tagged using p-lang-binding and will carry the value of PHP.
+
==Usage Scenarios==
  
<pre><nowiki> <span p-lang-binding="http://apihut.com/taxonomies/languages.rdf#php"> PHP bindings for this API ... </span> </nowiki></pre>
+
<!-- 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>
  
Here again, we can reformulate this using a value property.  
+
<pre><nowiki> <a href="www.teachmegooglemaps.com" class="sem-rel" title="http://apihut.com/taxonomies/domainClassification.rdf#maps"> Learn Google Maps</nowiki></pre>
  
<pre><nowiki> <span class="p-lang-binding" value="http://apihut.com/taxonomies/languages.rdf#php"> PHP bindings for this API ... </span> </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.  
  
*message-format: describes the messaging formats supported. The value will be a message format. The messaging format refers to the way the message is represented, typically XML, Java Script Object Notation(JSON) or specific formats such as GData.
+
<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>.
<pre><nowiki> <span message-format="http://apihut.com/taxonomies/formats.rdf#xml"> The XML messages that are passed between the client and the server are ... </span> </nowiki></pre>
+
Reformulation using value property:
+
<pre><nowiki> <span class="message-format" value="http://apihut.com/taxonomies/formats.rdf#xml"> The address is a XML object... </span> </nowiki></pre>
+
  
*protocol: describes the messaging protocols supported. Typical values include SOAP and REST.
+
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)]
<pre><nowiki> <span protocol="http://apihut.com/taxonomies/protocols.rdf#soap"> ... </span> </nowiki></pre>
+
Reformulation using value property:
+
<pre><nowiki> <span class="protocol" value="http://apihut.com/taxonomies/protocols.rdf#soap"> ... </span> </nowiki></pre>
+
  
*sem-class: is an alternative to modelreference in SAWSDL. It can be used to refer to a concept in a semantic model.
+
'''sem-class on non-textual content'''
<pre><nowiki> <span sem-class="http://tap.stanford.edu/#computer"> Computer </span> </nowiki></pre>.
+
<pre><nowiki> <span class="sem-class" title="http://entertainment.org/schemas/tv#american_dad"><div id="player-container" style="text-align: center;">
Reformulation using value property:
+
<embed id="player" height="368" width="790" flashvars="stage_width=790&stage_height=368&content_id=m1ppkqeh&bitrate=700000&user_id=-1" bgcolor="#000000"
<pre><nowiki> <span class="sem-class" value="http://tap.stanford.edu/#computer"> Computer </span> </nowiki></pre>.
+
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==
 
==Processing SA-REST==

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