Service-Oriented Architecture (SOA) has finally turned a corner: companies are shifting from the tentative first steps of Service enabling a few systems here and there to strategic SOA rollouts of all sizes that now have the blessing of senior management in the IT departments, and sometimes business executives themselves. In the hundreds of conversations that ZapThink has had in the past year, we have recognized a clear, decisive pattern of organizations moving toward SOA and away from the tightly-coupled, brittle integration approaches of yesterday. We’re no longer getting questions about the “whats” or “whys” of SOA, but rather the “hows” and “whens.” In fact, companies no longer discuss whether or not to embark on an SOA initiative. The eventual move to SOA is fast becoming a fait accompli.

In the midst of this decisive move toward SOA, we are now starting to get more difficult, tactical questions about how to implement SOA. Some questions are organizational in nature, while many others are technical. The questions generally focus on the core issues of SOA. We’re not seeing as much emphasis on technical zingers such as the best way to set up complicated transaction-based systems with million message-per-second throughput, but rather some of the simplest questions one could ask about SOA. Many questions center on how to build a Service. In particular, the question many architects are asking us now is what exactly goes in the Service contract.

The Service Contract: The Most Important Metadata for SOA
The most basic interaction in SOA is between Service providers and Service consumers. For each interaction between these two parties, one provides some combination of data and functionality and the other consumes it. Before the provider can provide whatever the Service offers, however, the two parties must come to an agreement, or contract, that specifies the details of the Service the provider is performing. As with any good legal contract, the two parties are at “arm’s length” — that is, they remain independent parties who don’t get to mess around in each other’s business, except as the contract explicitly provides for. Essentially, the contract loosely couples the relationship between the provider and the consumer.

It’s important to note, however, that there are two different senses of contract in play here. First, there is the legal agreement between two business entities, and second, there is the technical relationship between the parties that aim to work with each other. In order to simplify this technical relationship, we can use an abstraction that represents some simplification of how the Services work as well as the parties in the contract. Just as legal contracts are documents that outline a set of enforceable rules and agreements written in a language that both parties can understand, in IT we need to define a contract that stipulates IT “rules of engagement” in a standardized manner that both the consumer and provider can understand. Such information should also appear in a document external to each participant that provides the information each participant needs to interact with the other.

Such contracts are the key to loose coupling, which goes to the heart of SOA. Loose coupling mandates that two interacting parties should have as little information as possible necessary to govern their relationship. Furthermore, the entire reason why we want to loosely couple software is so that we can independently create and control each component of the IT environment. The way in which we choose to make loose coupling a reality is by implementing contracted interfaces on systems, and making sure that we enforce those contracted relationships while allowing each party to independently change how they implement the contract.

Contracts and Policies
So, given that the contract is key to making Services work, what exactly goes into that Service contract? Just as legal contracts make for solid business relationships, software contracts make for solid, loosely coupled distributed computing. Here’s what goes into a contract — the kind that computers, rather than people, need to understand:

  • Contracts should describe functional requirements, that is, what a provider will give to any consumer that chooses to abide by the terms of the contract. The contract should define what functionality the provider provides, what data it will return, or typically some combination of the two.
  • Contracts must also specify nonfunctional requirements that detail not what the Service does, but the way in which it goes about its business. This includes information both about the responsibility of the providers for providing their functionality and/or data as well as the expected responsibilities of the consumers of that information and what they will need to provide in return, such as availability, security, and other quality of service considerations.
  • Contracts also specify the rules of engagement between consumers and providers, known as policies, that govern who can access a provider, what security procedures the participants must follow, and any other rules that apply to the exchange.

A contract is an expression of visible aspects of Service behavior, and so what contracts never include are the data that providers and consumers actually exchange, or any specifics about how a provider or a consumer will go about meeting the requirements of the contract. In addition, since consumers vary just as much as providers, there might be multiple contracts for a single Service. Another point of clarity is the difference between contract and policy. The definitions of these terms can vary from one company to another, but a general way of understanding the difference is that a policy is a set of conditions that can apply to any number of contracts, from none of them to all of them. For example, a policy might state that all interactions with Services must be SSL-secured, and that policy would then apply to all Service contracts in an organization.

Why WSDL is Not Enough

At the core of all Web Service contracts is the Web Services Definition Language (WSDL), which forms the basic contract for a Service provider, identifying that Service as a Web Service. However, in many ways WSDL is insufficient to describe all the requirements for a contract. First of all, WSDL only defines a basic set of functional requirements for Services, specifically as they apply to Web Services. WSDL is not sufficient for defining non-functional requirements such as security, transactionality, process, commerce, reliability, and service level requirements for a Service, nor does it even come close to defining the semantic requirements for the data a Service actually produce. Therefore, Service contracts require more than just WSDL.

Ideally, there would be a universal Service contract definition language that would include the description of Service semantics, the definition of Service capabilities and constraints, and an interaction model for both data and behavior. However, no such single language exists! Instead, there are a series of additional specifications that augment WSDL now in development that seek to add to the richness of Service contracts, but do so in a piecemeal fashion.

At the forefront of these contract-related specifications are policy specs such as WS-Policy. WS-Policy doesn’t provide the actual semantics for defining policies, but rather a generalized container for specifying a range of policy considerations. Therefore, we need additional specifications like WS-Security, Web Services Business Process Execution Language (WS-BPEL), Web Services Choreography Description Language (WS-CDL), Web Service Level Agreements (WSLA), and Web Service Offerings Language (WSOL) to specify non-functional requirements in greater detail. Also on the horizon are specifications like the Ontology Web Language for Services (OWL-S) that aim to provide a more complete, rich language for defining Service contracts.

You don’t have to wait for these specifications to be ready to build perfectly good Service contracts, however. In the meantime, you’ll need to specify contract metadata in whatever format providers and consumers can understand. Here’s a set of steps we recommend for companies going through the Service contract definition process:

  • First, Define the Service
    • Identify what value the Service provides to prospective consumers
    • Describe the functionality of the Service
    • Delineate quality of service and applicability constraints
    • Define the constraints on the types of consumers or other consumption requirements
  • Next, define how to consume the Service
    • Define message and semantic formats for requests
    • Identify conditions for particular outcomes and behaviors
    • Determine the flow of processes and activities and steps leading to outcomes
  • Finally, define how Services will interact
    • Define how consumers will communicate with the Service
    • Describe acceptable communication protocols
    • Decide on the appropriate invocation style (request/response, notification, event-driven)
    • Set your latency expectations

Complete these steps and you’ll be in good shape to build loosely-coupled Services based on well-defined contracts.

The ZapThink Take
Regardless of the specifications, it’s clear that companies are now grappling with how to create Service contracts. The fact that the specifications are in flux is an important indicator of how nascent SOA is. However, you don’t need to wait for all these rich metadata specifications to fall into place to build Service contracts. In fact, one of the most important activities that a company can do is to define their contracts and policies in a language that humans can understand.

If people can focus on developing contracts instead of code, we’ve already made significant progress toward building loosely-coupled systems. The next step is then to encode those contracts and policies to make the Services actually work. The choice of metadata specification and semantics to do so will reflect the decisions you’ve already made as far as what goes in the contract.

Remember that a contract is nothing more than metadata that describe how parties will interact, and a policy is also metadata that describe the conditions under which those parties are entitled to engage in an interaction. As a result, it’s possible for an SOA implementation to respond to changes in policies and contracts without the need for more tightly coupled, inflexible programming–essentially, change the policy, adjust the contract, and the consumers and providers simply follow the amended contract. This is the vision of SOA in action.

HowBuildService-082005-ZTP-0184-1

Discussion
202 comments for “What Belongs in a Service Contract?”
Tarık Avatar

just like dynamic type binding in some programming languages.

Posted by Tarık | March 9, 2010
Economics Tuition Avatar

... [Trackback]

[...] Read More here: zapthink.com/2005/08/24/what-belongs-in-a-service-contract/ [...]

Posted by Economics Tuition | July 25, 2016
life insurance claim lawyer attorney law firm Avatar

... [Trackback]

[...] Read More here: zapthink.com/2005/08/24/what-belongs-in-a-service-contract/ [...]

removal services London Avatar

... [Trackback]

[...] Read More: zapthink.com/2005/08/24/what-belongs-in-a-service-contract/ [...]

Posted by removal services London | August 4, 2016
ephedrine steroid Avatar

... [Trackback]

[...] Read More: zapthink.com/2005/08/24/what-belongs-in-a-service-contract/ [...]

Posted by ephedrine steroid | August 8, 2016
buy steroids within canada Avatar

... [Trackback]

[...] Read More here: zapthink.com/2005/08/24/what-belongs-in-a-service-contract/ [...]

Posted by buy steroids within canada | August 12, 2016
adu ayam Avatar

... [Trackback]

[...] Read More here: zapthink.com/2005/08/24/what-belongs-in-a-service-contract/ [...]

Posted by adu ayam | August 12, 2016
Buy Drugs Without a Prescription Avatar

... [Trackback]

[...] Read More here: zapthink.com/2005/08/24/what-belongs-in-a-service-contract/ [...]

Posted by Buy Drugs Without a Prescription | August 13, 2016
http://www.recycletotes.com Avatar

... [Trackback]

[...] Read More: zapthink.com/2005/08/24/what-belongs-in-a-service-contract/ [...]

Posted by http://www.recycletotes.com | August 18, 2016
satta matka Avatar

... [Trackback]

[...] Read More here: zapthink.com/2005/08/24/what-belongs-in-a-service-contract/ [...]

Posted by satta matka | August 22, 2016
Joseph de Saram#Rhodium Avatar

... [Trackback]

[...] Read More Infos here: zapthink.com/2005/08/24/what-belongs-in-a-service-contract/ [...]

Posted by Joseph de Saram#Rhodium | August 26, 2016
Agen Bandarq Avatar

... [Trackback]

[...] Informations on that Topic: zapthink.com/2005/08/24/what-belongs-in-a-service-contract/ [...]

Posted by Agen Bandarq | August 31, 2016
قاب سامسونگ Avatar

... [Trackback]

[...] Read More here: zapthink.com/2005/08/24/what-belongs-in-a-service-contract/ [...]

Posted by قاب سامسونگ | September 1, 2016
stanoxyl depot Avatar

... [Trackback]

[...] Informations on that Topic: zapthink.com/2005/08/24/what-belongs-in-a-service-contract/ [...]

Posted by stanoxyl depot | September 3, 2016
yandex ankara Avatar

... [Trackback]

[...] Read More here: zapthink.com/2005/08/24/what-belongs-in-a-service-contract/ [...]

Posted by yandex ankara | September 4, 2016
yandex ankara Avatar

... [Trackback]

[...] Read More: zapthink.com/2005/08/24/what-belongs-in-a-service-contract/ [...]

Posted by yandex ankara | September 4, 2016
buy steroids online usa Avatar

... [Trackback]

[...] Read More here: zapthink.com/2005/08/24/what-belongs-in-a-service-contract/ [...]

Posted by buy steroids online usa | September 13, 2016
طراحی سایت Avatar

... [Trackback]

[...] There you will find 36928 more Infos: zapthink.com/2005/08/24/what-belongs-in-a-service-contract/ [...]

Posted by طراحی سایت | September 17, 2016
digital marketing agencies Melbourne Avatar

... [Trackback]

[...] Read More here: zapthink.com/2005/08/24/what-belongs-in-a-service-contract/ [...]

Posted by digital marketing agencies Melbourne | September 30, 2016
MotoGolf Avatar

... [Trackback]

[...] Find More Informations here: zapthink.com/2005/08/24/what-belongs-in-a-service-contract/ [...]

Posted by MotoGolf | October 2, 2016
Best Magazine in India Avatar

... [Trackback]

[...] Read More: zapthink.com/2005/08/24/what-belongs-in-a-service-contract/ [...]

Posted by Best Magazine in India | October 21, 2016
Best Newspaper in India Avatar

... [Trackback]

[...] Informations on that Topic: zapthink.com/2005/08/24/what-belongs-in-a-service-contract/ [...]

Posted by Best Newspaper in India | October 21, 2016
para kazanmak Avatar

... [Trackback]

[...] Informations on that Topic: zapthink.com/2005/08/24/what-belongs-in-a-service-contract/ [...]

Posted by para kazanmak | October 30, 2016
Trisha Avatar

... [Trackback]

[...] Read More here: zapthink.com/2005/08/24/what-belongs-in-a-service-contract/ [...]

Posted by Trisha | November 2, 2016
para para dinle Avatar

... [Trackback]

[...] There you will find 92634 more Infos: zapthink.com/2005/08/24/what-belongs-in-a-service-contract/ [...]

Posted by para para dinle | November 3, 2016
economics tuition Avatar

... [Trackback]

[...] Find More Informations here: zapthink.com/2005/08/24/what-belongs-in-a-service-contract/ [...]

Posted by economics tuition | November 3, 2016
margaret cunniffe Avatar

... [Trackback]

[...] Read More here: zapthink.com/2005/08/24/what-belongs-in-a-service-contract/ [...]

Posted by margaret cunniffe | November 4, 2016
joseph shihara rukshan de saram Avatar

... [Trackback]

[...] Read More: zapthink.com/2005/08/24/what-belongs-in-a-service-contract/ [...]

Posted by joseph shihara rukshan de saram | November 5, 2016
joe de saram Avatar

... [Trackback]

[...] Read More Infos here: zapthink.com/2005/08/24/what-belongs-in-a-service-contract/ [...]

Posted by joe de saram | November 6, 2016
joseph de saram Avatar

... [Trackback]

[...] There you will find 61990 more Infos: zapthink.com/2005/08/24/what-belongs-in-a-service-contract/ [...]

Posted by joseph de saram | November 6, 2016
rhodium Avatar

... [Trackback]

[...] Read More: zapthink.com/2005/08/24/what-belongs-in-a-service-contract/ [...]

Posted by rhodium | November 6, 2016
joe de saram Avatar

... [Trackback]

[...] Informations on that Topic: zapthink.com/2005/08/24/what-belongs-in-a-service-contract/ [...]

Posted by joe de saram | November 7, 2016
astrazeneca turkey Avatar

... [Trackback]

[...] Read More here: zapthink.com/2005/08/24/what-belongs-in-a-service-contract/ [...]

Posted by astrazeneca turkey | November 9, 2016
in vitro Avatar

... [Trackback]

[...] Read More: zapthink.com/2005/08/24/what-belongs-in-a-service-contract/ [...]

Posted by in vitro | November 15, 2016
geneza pharmaceuticals for sale Avatar

... [Trackback]

[...] Read More: zapthink.com/2005/08/24/what-belongs-in-a-service-contract/ [...]

Posted by geneza pharmaceuticals for sale | November 16, 2016
economics tuition Avatar

... [Trackback]

[...] Read More: zapthink.com/2005/08/24/what-belongs-in-a-service-contract/ [...]

Posted by economics tuition | November 19, 2016
porn Avatar

... [Trackback]

[...] Read More: zapthink.com/2005/08/24/what-belongs-in-a-service-contract/ [...]

Posted by porn | November 21, 2016
click here to hire an injury lawyer Avatar

... [Trackback]

[...] Read More: zapthink.com/2005/08/24/what-belongs-in-a-service-contract/ [...]

Posted by click here to hire an injury lawyer | November 28, 2016
roofing Avatar

... [Trackback]

[...] There you will find 97488 more Infos: zapthink.com/2005/08/24/what-belongs-in-a-service-contract/ [...]

Posted by roofing | November 30, 2016
FALKIRK IPAD REPAIR REPAIR FALKIRK - IPAD - REPAIR - FALKIRK Avatar

FALKIRK IPAD REPAIR REPAIR FALKIRK - IPAD - REPAIR - FALKIRK

[...]Here is a superb Blog You may Uncover Intriguing that we Encourage You[...]

genotropin 16 iu sale Avatar

... [Trackback]

[...] Read More here: zapthink.com/2005/08/24/what-belongs-in-a-service-contract/ [...]

Posted by genotropin 16 iu sale | December 9, 2016
international removals prices Avatar

... [Trackback]

[...] Read More: zapthink.com/2005/08/24/what-belongs-in-a-service-contract/ [...]

Posted by international removals prices | December 11, 2016
Refrigeration Installation & Repair Avatar

... [Trackback]

[...] Find More Informations here: zapthink.com/2005/08/24/what-belongs-in-a-service-contract/ [...]

Posted by Refrigeration Installation & Repair | December 12, 2016
apk downloads Avatar

... [Trackback]

[...] There you will find 55526 more Infos: zapthink.com/2005/08/24/what-belongs-in-a-service-contract/ [...]

Posted by apk downloads | December 17, 2016
apk downloads Avatar

... [Trackback]

[...] Read More Infos here: zapthink.com/2005/08/24/what-belongs-in-a-service-contract/ [...]

Posted by apk downloads | December 17, 2016
reuiqrements for uber Avatar

... [Trackback]

[...] Read More here: zapthink.com/2005/08/24/what-belongs-in-a-service-contract/ [...]

Posted by reuiqrements for uber | December 18, 2016
Skrota bilen Göteborg Avatar

... [Trackback]

[...] Informations on that Topic: zapthink.com/2005/08/24/what-belongs-in-a-service-contract/ [...]

Posted by Skrota bilen Göteborg | December 24, 2016
Bilskrot Göteborg Avatar

... [Trackback]

[...] Find More Informations here: zapthink.com/2005/08/24/what-belongs-in-a-service-contract/ [...]

Posted by Bilskrot Göteborg | December 25, 2016
trump for children Avatar

... [Trackback]

[...] Read More: zapthink.com/2005/08/24/what-belongs-in-a-service-contract/ [...]

Posted by trump for children | December 29, 2016
repair Avatar

... [Trackback]

[...] Informations on that Topic: zapthink.com/2005/08/24/what-belongs-in-a-service-contract/ [...]

Posted by repair | December 31, 2016
Google Avatar

Google

One of our guests not long ago encouraged the following website.

Posted by Google | January 1, 2017
mens watches Avatar

mens watches

[...]please take a look at the web pages we adhere to, which includes this one, as it represents our picks through the web[...]

Posted by mens watches | January 2, 2017
Live adult webcam models Avatar

Live adult webcam models

[...]that would be the finish of this article. Right here you’ll uncover some web pages that we assume you’ll value, just click the hyperlinks over[...]

Posted by Live adult webcam models | January 2, 2017
Google Avatar

Google

Always a huge fan of linking to bloggers that I love but do not get quite a bit of link like from.

Posted by Google | January 2, 2017
numbing cream for sex Avatar

numbing cream for sex

[...]one of our guests just lately advised the following website[...]

Posted by numbing cream for sex | January 2, 2017
100% pure kona Avatar

100% pure kona

[...]Here are several of the sites we advise for our visitors[...]

Posted by 100% pure kona | January 2, 2017
tow truck near north rosedale park Avatar

tow truck near north rosedale park

[...]Wonderful story, reckoned we could combine some unrelated data, nonetheless actually worth taking a appear, whoa did 1 find out about Mid East has got extra problerms as well [...]

Posted by tow truck near north rosedale park | January 3, 2017
the most reliable tow truck company near boston edison Avatar

the most reliable tow truck company near boston edison

[...]usually posts some incredibly interesting stuff like this. If you’re new to this site[...]

peaberry bean company Avatar

peaberry bean company

[...]check beneath, are some absolutely unrelated internet sites to ours, even so, they may be most trustworthy sources that we use[...]

Posted by peaberry bean company | January 3, 2017
coffee of kona Avatar

coffee of kona

[...]we like to honor quite a few other world wide web websites on the net, even though they aren’t linked to us, by linking to them. Below are some webpages worth checking out[...]

Posted by coffee of kona | January 3, 2017
Fix Credit Score Avatar

Fix Credit Score

[...]we prefer to honor quite a few other web internet sites around the internet, even when they aren’t linked to us, by linking to them. Below are some webpages really worth checking out[...]

Posted by Fix Credit Score | January 3, 2017
look at here Avatar

look at here

[...]usually posts some extremely interesting stuff like this. If you’re new to this site[...]

Posted by look at here | January 4, 2017
hawaii kona coffee Avatar

hawaii kona coffee

[...]Here is an excellent Blog You might Locate Exciting that we Encourage You[...]

Posted by hawaii kona coffee | January 4, 2017
kona black Avatar

kona black

[...]below you’ll uncover the link to some sites that we think you should visit[...]

Posted by kona black | January 5, 2017
Adam and Eve Avatar

Adam and Eve

[...]just beneath, are several totally not related internet sites to ours, even so, they may be certainly worth going over[...]

Posted by Adam and Eve | January 5, 2017
letra de Avatar

letra de

[...]that is the finish of this post. Here you will come across some web pages that we think you’ll appreciate, just click the links over[...]

Posted by letra de | January 5, 2017
passport photos Maple Avatar

passport photos Maple

[...]Wonderful story, reckoned we could combine a few unrelated data, nevertheless seriously worth taking a appear, whoa did 1 master about Mid East has got a lot more problerms at the same time [...]

Posted by passport photos Maple | January 5, 2017
web hosting Avatar

web hosting

[...]please stop by the websites we adhere to, like this one particular, because it represents our picks through the web[...]

Posted by web hosting | January 6, 2017
Waste Equipment Avatar

Waste Equipment

[...]we prefer to honor several other world-wide-web web pages around the internet, even if they aren’t linked to us, by linking to them. Underneath are some webpages really worth checking out[...]

Posted by Waste Equipment | January 6, 2017
download games for windows 7 Avatar

download games for windows 7

[...]very couple of websites that occur to become detailed below, from our point of view are undoubtedly nicely worth checking out[...]

Posted by download games for windows 7 | January 6, 2017
top 10 car racing games for pc free download Avatar

top 10 car racing games for pc free download

[...]although web sites we backlink to below are considerably not related to ours, we really feel they're basically really worth a go through, so have a look[...]

Posted by top 10 car racing games for pc free download | January 6, 2017
high quality sex toys Avatar

high quality sex toys

[...]always a huge fan of linking to bloggers that I appreciate but do not get a lot of link enjoy from[...]

Posted by high quality sex toys | January 7, 2017
adam and eve Avatar

adam and eve

[...]please stop by the web pages we stick to, which includes this 1, as it represents our picks through the web[...]

Posted by adam and eve | January 7, 2017
camiones de venta usados en arizona Avatar

camiones de venta usados en arizona

Busca Concesionarios especializados en la Compra y Venta de Camiones y Tráileres, Camiones usados o nuevos de todas los años, marcas y modelos. Hágalo Aquí

Posted by camiones de venta usados en arizona | January 7, 2017
nail art Avatar

nail art

[...]always a significant fan of linking to bloggers that I really like but don’t get quite a bit of link like from[...]

Posted by nail art | January 7, 2017
seo paslaugos Avatar

seo paslaugos

[...]below you will obtain the link to some websites that we consider you'll want to visit[...]

Posted by seo paslaugos | January 7, 2017
train at home with personalized video training Avatar

train at home with personalized video training

[...]we came across a cool web site that you simply may appreciate. Take a appear if you want[...]

read this post here Avatar

read this post here

[...]below you will come across the link to some internet sites that we assume you should visit[...]

Posted by read this post here | January 9, 2017
free slot play Avatar

free slot play

[...]usually posts some very fascinating stuff like this. If you are new to this site[...]

Posted by free slot play | January 10, 2017
android apps for pc Avatar

android apps for pc

[...]Here are a number of the websites we advocate for our visitors[...]

Posted by android apps for pc | January 10, 2017
成绩 差 被 美国 大学 开除 Avatar

成绩 差 被 美国 大学 开除

[...]please pay a visit to the web-sites we follow, which includes this one particular, because it represents our picks from the web[...]

Posted by 成绩 差 被 美国 大学 开除 | January 10, 2017
webcam models Avatar

webcam models

[...]Every the moment in a when we opt for blogs that we study. Listed beneath are the most current internet sites that we pick [...]

Posted by webcam models | January 10, 2017
webcam models Avatar

webcam models

[...]usually posts some really interesting stuff like this. If you are new to this site[...]

Posted by webcam models | January 11, 2017
Toys Adults Avatar

Toys Adults

[...]the time to read or pay a visit to the content material or internet sites we've linked to below the[...]

Posted by Toys Adults | January 11, 2017
toys for adults Avatar

toys for adults

[...]Every after inside a though we pick blogs that we study. Listed beneath are the newest web-sites that we select [...]

Posted by toys for adults | January 11, 2017
best clit vibrators Avatar

best clit vibrators

[...]here are some links to web pages that we link to since we feel they are really worth visiting[...]

Posted by best clit vibrators | January 11, 2017
best dryer vent Avatar

best dryer vent

[...]very couple of web sites that occur to be comprehensive below, from our point of view are undoubtedly nicely really worth checking out[...]

Posted by best dryer vent | January 12, 2017
Dryer vent cleaning Ontarioville Avatar

Dryer vent cleaning Ontarioville

[...]we came across a cool web site that you may well appreciate. Take a search if you want[...]

Posted by Dryer vent cleaning Ontarioville | January 12, 2017
low profile dryer duct Avatar

low profile dryer duct

[...]the time to read or pay a visit to the subject material or websites we've linked to beneath the[...]

Posted by low profile dryer duct | January 12, 2017
Wand Massager Avatar

Wand Massager

[...]here are some links to web-sites that we link to simply because we think they may be really worth visiting[...]

Posted by Wand Massager | January 12, 2017
ماطور للبيع Avatar

ماطور للبيع

[...]one of our guests not long ago recommended the following website[...]

Posted by ماطور للبيع | January 13, 2017
g spot rabbit vibrator Avatar

g spot rabbit vibrator

[...]Here is an excellent Weblog You may Come across Intriguing that we Encourage You[...]

Posted by g spot rabbit vibrator | January 13, 2017
love swing Avatar

love swing

[...]Here is a good Blog You may Discover Fascinating that we Encourage You[...]

Posted by love swing | January 13, 2017
android games free download Avatar

android games free download

[...]Here is an excellent Weblog You might Find Exciting that we Encourage You[...]

Posted by android games free download | January 13, 2017
first jack rabbit Avatar

first jack rabbit

[...]please go to the websites we adhere to, like this a single, because it represents our picks from the web[...]

Posted by first jack rabbit | January 14, 2017
social media exchange Avatar

social media exchange

[...]very few web-sites that take place to be detailed below, from our point of view are undoubtedly effectively really worth checking out[...]

Posted by social media exchange | January 14, 2017
harder penis Avatar

harder penis

[...]please take a look at the web pages we stick to, like this one particular, because it represents our picks in the web[...]

Posted by harder penis | January 14, 2017
dating websites for free Avatar

dating websites for free

[...]Sites of interest we have a link to[...]

Posted by dating websites for free | January 14, 2017
firstclass4life Avatar

firstclass4life

[...]Sites of interest we've a link to[...]

Posted by firstclass4life | January 14, 2017
Wild Vibrator Avatar

Wild Vibrator

[...]the time to read or visit the subject material or web sites we have linked to below the[...]

Posted by Wild Vibrator | January 17, 2017
이문희 감독 Avatar

이문희 감독

[...]always a huge fan of linking to bloggers that I appreciate but do not get a lot of link adore from[...]

Posted by 이문희 감독 | January 17, 2017
stick on tile transfers Avatar

stick on tile transfers

[...]Here are a number of the web sites we suggest for our visitors[...]

Posted by stick on tile transfers | January 18, 2017
kitchen tiles stickers Avatar

kitchen tiles stickers

[...]the time to read or go to the content material or web pages we have linked to beneath the[...]

Posted by kitchen tiles stickers | January 18, 2017
buy a skyzone franchise Avatar

buy a skyzone franchise

[...]please visit the websites we adhere to, including this one particular, because it represents our picks through the web[...]

Posted by buy a skyzone franchise | January 19, 2017
commercial dumpster rental Avatar

commercial dumpster rental

[...]Sites of interest we've a link to[...]

Posted by commercial dumpster rental | January 19, 2017
insurance a Avatar

insurance a

[...]here are some links to web-sites that we link to mainly because we assume they're really worth visiting[...]

Posted by insurance a | January 20, 2017
love balls review Avatar

love balls review

[...]that will be the finish of this post. Here you will obtain some web-sites that we think you will enjoy, just click the links over[...]

Posted by love balls review | January 20, 2017
l'arque prostate massager Avatar

l'arque prostate massager

[...]please go to the web-sites we adhere to, like this a single, because it represents our picks in the web[...]

Posted by l'arque prostate massager | January 20, 2017
Personal Injury Solicitors in London Avatar

Personal Injury Solicitors in London

[...]below you will come across the link to some web sites that we assume you'll want to visit[...]

Posted by Personal Injury Solicitors in London | January 20, 2017
taxi innsbruck sölden Avatar

taxi innsbruck sölden

[...]although sites we backlink to beneath are considerably not related to ours, we feel they may be really really worth a go through, so have a look[...]

Posted by taxi innsbruck sölden | January 21, 2017
Cash For Trucks Melbourne Avatar

Cash For Trucks Melbourne

[...]check beneath, are some absolutely unrelated websites to ours, even so, they are most trustworthy sources that we use[...]

Posted by Cash For Trucks Melbourne | January 21, 2017
diamond wheels Avatar

diamond wheels

[...]Here are several of the web sites we advocate for our visitors[...]

Posted by diamond wheels | January 21, 2017
toronto restaurants Avatar

toronto restaurants

[...]please pay a visit to the web-sites we adhere to, like this 1, as it represents our picks in the web[...]

Posted by toronto restaurants | January 23, 2017
chat gratis Avatar

chat gratis

[...]very few websites that happen to become detailed beneath, from our point of view are undoubtedly well really worth checking out[...]

Posted by chat gratis | January 23, 2017
digital marketing agency philippines Avatar

digital marketing agency philippines

[...]that may be the finish of this report. Here you will find some internet sites that we think you will value, just click the hyperlinks over[...]

Posted by digital marketing agency philippines | January 24, 2017
Sell home Derby, KS Avatar

Sell home Derby, KS

[...]the time to read or take a look at the material or web-sites we have linked to below the[...]

Posted by Sell home Derby, KS | January 24, 2017
climax Avatar

climax

[...]Here are some of the internet sites we advocate for our visitors[...]

Posted by climax | January 24, 2017
vibrator g spot Avatar

vibrator g spot

[...]Every the moment in a when we pick blogs that we read. Listed beneath are the most current web-sites that we pick [...]

Posted by vibrator g spot | January 25, 2017
Buddypass Avatar

Buddypass

[...]we like to honor several other world-wide-web web-sites around the net, even when they aren’t linked to us, by linking to them. Below are some webpages really worth checking out[...]

Posted by Buddypass | January 25, 2017
Male Enhancement Pills Avatar

Male Enhancement Pills

[...]that may be the end of this report. Here you will find some internet sites that we assume you will value, just click the links over[...]

Posted by Male Enhancement Pills | January 25, 2017
this is my email address Avatar

this is my email address

[...]we prefer to honor several other world-wide-web websites on the net, even though they aren’t linked to us, by linking to them. Under are some webpages really worth checking out[...]

Posted by this is my email address | January 26, 2017
Dealer Advertising Avatar

Dealer Advertising

Clasificados Online para El Transportista encontrar todo lo relacionado en el área de la transportación. Compra y venta de Camiones usados, tráiler, volteos, utilitarios usados.

Posted by Dealer Advertising | January 26, 2017
Car Wrecker Melbourne Avatar

Car Wrecker Melbourne

[...]always a major fan of linking to bloggers that I like but really don't get lots of link like from[...]

Posted by Car Wrecker Melbourne | January 27, 2017
오버워치 대리 Avatar

오버워치 대리

[...]one of our guests recently proposed the following website[...]

Posted by 오버워치 대리 | January 27, 2017
strap tow hook Avatar

strap tow hook

[...]just beneath, are numerous absolutely not related web pages to ours, having said that, they are certainly worth going over[...]

Posted by strap tow hook | January 28, 2017
auto wrecker service melvindale mi Avatar

auto wrecker service melvindale mi

[...]check below, are some completely unrelated web sites to ours, even so, they're most trustworthy sources that we use[...]

Posted by auto wrecker service melvindale mi | January 28, 2017
Circular Saw Avatar

Circular Saw

[...]usually posts some pretty fascinating stuff like this. If you’re new to this site[...]

Posted by Circular Saw | January 29, 2017
mti magnolia telecom reviews Avatar

mti magnolia telecom reviews

[...]Sites of interest we have a link to[...]

Posted by mti magnolia telecom reviews | January 29, 2017
pink sexy rabbit vibrator g plug spot massager Avatar

pink sexy rabbit vibrator g plug spot massager

[...]Here are a number of the web sites we advocate for our visitors[...]

Posted by pink sexy rabbit vibrator g plug spot massager | January 30, 2017
car wreckers Avatar

car wreckers

[...]just beneath, are various completely not related web pages to ours, on the other hand, they may be certainly worth going over[...]

Posted by car wreckers | January 31, 2017
sextoys Avatar

sextoys

[...]the time to study or check out the subject material or sites we have linked to below the[...]

Posted by sextoys | February 2, 2017
superiorautoinstitute.com Avatar

superiorautoinstitute.com

[...]we came across a cool web page which you may take pleasure in. Take a look when you want[...]

Posted by superiorautoinstitute.com | February 2, 2017
open for business crotchless panty Avatar

open for business crotchless panty

[...]usually posts some quite intriguing stuff like this. If you are new to this site[...]

Posted by open for business crotchless panty | February 3, 2017
anal sex toy Avatar

anal sex toy

[...]Here are a few of the sites we advise for our visitors[...]

Posted by anal sex toy | February 3, 2017
anal sex Avatar

anal sex

[...]always a major fan of linking to bloggers that I enjoy but really don't get a great deal of link enjoy from[...]

Posted by anal sex | February 3, 2017
bondage toys Avatar

bondage toys

[...]we came across a cool website that you just could appreciate. Take a look in case you want[...]

Posted by bondage toys | February 3, 2017
copiadoras a color Avatar

copiadoras a color

[...]check beneath, are some absolutely unrelated sites to ours, even so, they're most trustworthy sources that we use[...]

Posted by copiadoras a color | February 4, 2017
shades of kinky sex Avatar

shades of kinky sex

[...]Here is an excellent Weblog You may Come across Fascinating that we Encourage You[...]

Posted by shades of kinky sex | February 4, 2017
50+ dating Avatar

50+ dating

[...]Here are a number of the internet sites we advocate for our visitors[...]

Posted by 50+ dating | February 4, 2017
inchiriere apartamente bucuresti Avatar

inchiriere apartamente bucuresti

[...]always a major fan of linking to bloggers that I really like but do not get a good deal of link adore from[...]

Posted by inchiriere apartamente bucuresti | February 4, 2017
Balinese handy craft Avatar

Balinese handy craft

[...]the time to read or pay a visit to the material or sites we've linked to below the[...]

Posted by Balinese handy craft | February 5, 2017
iPad broken screen repair Avatar

iPad broken screen repair

[...]The information mentioned in the article are a number of the ideal readily available [...]

Posted by iPad broken screen repair | February 5, 2017
piezas originales suzuki Avatar

piezas originales suzuki

[...]here are some links to web-sites that we link to due to the fact we feel they may be worth visiting[...]

Posted by piezas originales suzuki | February 5, 2017
buy hawaii solar Avatar

buy hawaii solar

Solar Of Hawaii – Buy Solar panels & Complete Solar Systems- Solar Systems Services including #1 rated Solar World & Mitsubishi Electric Solar Power on the Big Island of Hawaii. Professional Solar Installation Available in Hawaii.

Posted by buy hawaii solar | February 5, 2017
retirement benefits and income tax Avatar

retirement benefits and income tax

[...]Every the moment inside a even though we opt for blogs that we read. Listed beneath would be the most recent sites that we select [...]

Posted by retirement benefits and income tax | February 5, 2017
work from home 2018 Avatar

work from home 2018

[...]always a major fan of linking to bloggers that I like but really don't get a whole lot of link enjoy from[...]

Posted by work from home 2018 | February 5, 2017
Cock Ring Reviews Avatar

Cock Ring Reviews

[...]we prefer to honor quite a few other web sites on the net, even when they aren’t linked to us, by linking to them. Underneath are some webpages really worth checking out[...]

Posted by Cock Ring Reviews | February 7, 2017
autoplosiny Avatar

autoplosiny

[...]very few web-sites that take place to become in depth below, from our point of view are undoubtedly nicely really worth checking out[...]

Posted by autoplosiny | February 7, 2017
lovedolls Avatar

lovedolls

[...]the time to study or check out the content or web-sites we have linked to beneath the[...]

Posted by lovedolls | February 8, 2017
Clasificados Kentucky Avatar

Clasificados Kentucky

[...]Here is an excellent Blog You may Uncover Exciting that we Encourage You[...]

Posted by Clasificados Kentucky | February 8, 2017
anal sex toys Avatar

anal sex toys

[...]the time to study or stop by the content material or websites we've linked to beneath the[...]

Posted by anal sex toys | February 8, 2017
morkie Avatar

morkie

[...]The information mentioned within the report are some of the top readily available [...]

Posted by morkie | February 8, 2017
MOBILE DISCOS Avatar

MOBILE DISCOS

[...]very few websites that transpire to be detailed beneath, from our point of view are undoubtedly nicely worth checking out[...]

Posted by MOBILE DISCOS | February 8, 2017
hammerhead stroker Avatar

hammerhead stroker

[...]here are some links to websites that we link to mainly because we feel they may be worth visiting[...]

Posted by hammerhead stroker | February 8, 2017
apps for windows 10 Avatar

apps for windows 10

[...]check below, are some totally unrelated sites to ours, even so, they are most trustworthy sources that we use[...]

Posted by apps for windows 10 | February 9, 2017
apps for pc download Avatar

apps for pc download

[...]please take a look at the web-sites we stick to, like this one, as it represents our picks in the web[...]

Posted by apps for pc download | February 9, 2017
best rabbit sex toy Avatar

best rabbit sex toy

[...]here are some hyperlinks to web pages that we link to due to the fact we feel they are worth visiting[...]

Posted by best rabbit sex toy | February 11, 2017
best male masturbator Avatar

best male masturbator

[...]below you’ll obtain the link to some sites that we think you must visit[...]

Posted by best male masturbator | February 11, 2017
dental x-ray Avatar

dental x-ray

[...]check beneath, are some totally unrelated internet sites to ours, on the other hand, they may be most trustworthy sources that we use[...]

Posted by dental x-ray | February 11, 2017
Macintosh repair Avatar

Macintosh repair

[...]we came across a cool site that you simply might take pleasure in. Take a appear when you want[...]

Posted by Macintosh repair | February 11, 2017
스포츠닥터스 Avatar

스포츠닥터스

[...]that will be the end of this report. Here you’ll uncover some websites that we believe you will appreciate, just click the hyperlinks over[...]

Posted by 스포츠닥터스 | February 11, 2017
스포츠닥터스 Avatar

스포츠닥터스

[...]please stop by the websites we stick to, such as this one, because it represents our picks through the web[...]

Posted by 스포츠닥터스 | February 11, 2017
coffee from kona Avatar

coffee from kona

[...]we came across a cool web-site that you just could take pleasure in. Take a search when you want[...]

Posted by coffee from kona | February 12, 2017
buy kona Avatar

buy kona

[...]Here is a superb Weblog You might Locate Intriguing that we Encourage You[...]

Posted by buy kona | February 12, 2017
work from home 2017 Avatar

work from home 2017

[...]the time to read or visit the content material or internet sites we have linked to below the[...]

Posted by work from home 2017 | February 12, 2017
Triple Stimulation Avatar

Triple Stimulation

[...]that is the end of this report. Right here you will obtain some web sites that we consider you will value, just click the links over[...]

Posted by Triple Stimulation | February 13, 2017
Disco Bunny Vibrator Avatar

Disco Bunny Vibrator

[...]below you’ll come across the link to some internet sites that we feel it is best to visit[...]

Posted by Disco Bunny Vibrator | February 14, 2017
Blacktop Sealing Avatar

Blacktop Sealing

[...]we came across a cool web page that you could love. Take a appear in case you want[...]

Posted by Blacktop Sealing | February 14, 2017
Wool rug Avatar

Wool rug

[...]the time to study or stop by the content or sites we've linked to beneath the[...]

Posted by Wool rug | February 14, 2017
Florida Compra y Venta de Paletas Avatar

Florida Compra y Venta de Paletas

[...]Here is an excellent Blog You might Come across Exciting that we Encourage You[...]

Posted by Florida Compra y Venta de Paletas | February 15, 2017
Vagina Sex Toy Avatar

Vagina Sex Toy

[...]The information and facts talked about in the post are several of the most beneficial accessible [...]

Posted by Vagina Sex Toy | February 16, 2017
discount sex toys Avatar

discount sex toys

[...]check below, are some absolutely unrelated web sites to ours, even so, they're most trustworthy sources that we use[...]

Posted by discount sex toys | February 16, 2017
best sex doll Avatar

best sex doll

[...]please stop by the web pages we follow, including this one particular, because it represents our picks through the web[...]

Posted by best sex doll | February 16, 2017
play online games Avatar

play online games

[...]although internet websites we backlink to beneath are considerably not related to ours, we really feel they are truly worth a go through, so possess a look[...]

Posted by play online games | February 16, 2017
pc games for windows 10 Avatar

pc games for windows 10

[...]just beneath, are numerous totally not associated websites to ours, on the other hand, they may be surely worth going over[...]

Posted by pc games for windows 10 | February 17, 2017
full version pc games download Avatar

full version pc games download

[...]very handful of internet websites that come about to be comprehensive beneath, from our point of view are undoubtedly properly really worth checking out[...]

Posted by full version pc games download | February 17, 2017
tech forum Avatar

tech forum

[...]Wonderful story, reckoned we could combine a handful of unrelated data, nevertheless actually worth taking a look, whoa did a single master about Mid East has got a lot more problerms also [...]

Posted by tech forum | February 18, 2017
CTO Indonesia 2017 Avatar

CTO Indonesia 2017

[...]Every the moment in a although we choose blogs that we study. Listed below would be the most current web pages that we decide on [...]

Posted by CTO Indonesia 2017 | February 19, 2017
خرید سرور مجازی Avatar

خرید سرور مجازی

[...]always a major fan of linking to bloggers that I enjoy but really don't get a good deal of link like from[...]

Posted by خرید سرور مجازی | February 19, 2017
dog Avatar

dog

[...]check beneath, are some entirely unrelated web sites to ours, on the other hand, they are most trustworthy sources that we use[...]

Posted by dog | February 19, 2017
small dogs Avatar

small dogs

[...]we prefer to honor several other world-wide-web websites on the net, even when they aren’t linked to us, by linking to them. Below are some webpages worth checking out[...]

Posted by small dogs | February 19, 2017
Курс US Citizenship Avatar

Курс US Citizenship

[...]the time to read or pay a visit to the subject material or sites we've linked to below the[...]

Posted by Курс US Citizenship | February 20, 2017
apps for pc download Avatar

apps for pc download

[...]below you’ll come across the link to some web pages that we consider you must visit[...]

Posted by apps for pc download | February 21, 2017
full version pc games download Avatar

full version pc games download

[...]just beneath, are quite a few completely not related websites to ours, nevertheless, they may be certainly really worth going over[...]

Posted by full version pc games download | February 21, 2017
pdr training Avatar

pdr training

[...]Here are several of the internet sites we advise for our visitors[...]

Posted by pdr training | February 21, 2017
personal massager Avatar

personal massager

[...]Wonderful story, reckoned we could combine a couple of unrelated data, nevertheless definitely worth taking a search, whoa did a single understand about Mid East has got additional problerms as well [...]

Posted by personal massager | February 22, 2017
thruster dildo Avatar

thruster dildo

[...]Here is a great Blog You might Locate Exciting that we Encourage You[...]

Posted by thruster dildo | February 22, 2017
cock rings for sale Avatar

cock rings for sale

[...]below you’ll obtain the link to some websites that we feel you ought to visit[...]

Posted by cock rings for sale | February 22, 2017
movie malayalam Avatar

movie malayalam

[...]check below, are some totally unrelated sites to ours, however, they're most trustworthy sources that we use[...]

Posted by movie malayalam | February 23, 2017
Peterbilt 330 Avatar

Peterbilt 330

[...]Here is a good Weblog You may Obtain Fascinating that we Encourage You[...]

Posted by Peterbilt 330 | February 23, 2017
PHP Music website Avatar

PHP Music website

[...]very handful of internet websites that occur to be detailed beneath, from our point of view are undoubtedly very well worth checking out[...]

Posted by PHP Music website | February 24, 2017
roof repair Avatar

roof repair

[...]that could be the finish of this article. Right here you will come across some websites that we assume you’ll value, just click the hyperlinks over[...]

Posted by roof repair | February 24, 2017
Song Avatar

Song

[...]Sites of interest we've a link to[...]

Posted by Song | February 24, 2017
hitachi edm filter Avatar

hitachi edm filter

[...]very few web-sites that come about to be in depth beneath, from our point of view are undoubtedly nicely really worth checking out[...]

Posted by hitachi edm filter | February 27, 2017
shared hosting Avatar

shared hosting

[...]The details mentioned within the post are some of the ideal out there [...]

Posted by shared hosting | February 28, 2017
отель для кошек Avatar

отель для кошек

[...]just beneath, are numerous totally not associated sites to ours, nevertheless, they're certainly worth going over[...]

Posted by отель для кошек | February 28, 2017
dabjars wholesale Avatar

dabjars wholesale

[...]Every as soon as in a when we choose blogs that we read. Listed beneath are the most up-to-date websites that we pick out [...]

Posted by dabjars wholesale | February 28, 2017
chain saw sharpening CBN wheel Avatar

chain saw sharpening CBN wheel

[...]we like to honor lots of other internet websites on the web, even when they aren’t linked to us, by linking to them. Under are some webpages worth checking out[...]

Posted by chain saw sharpening CBN wheel | February 28, 2017
superior auto institute Avatar

superior auto institute

[...]Here is an excellent Blog You might Discover Exciting that we Encourage You[...]

Posted by superior auto institute | February 28, 2017
vacheron watch exchange Avatar

vacheron watch exchange

[...]Every as soon as inside a while we pick out blogs that we read. Listed beneath would be the latest websites that we pick out [...]

Posted by vacheron watch exchange | February 28, 2017
superior auto institute Avatar

superior auto institute

[...]just beneath, are various absolutely not associated web sites to ours, having said that, they may be surely really worth going over[...]

Posted by superior auto institute | March 1, 2017
women Avatar

women

[...]Sites of interest we have a link to[...]

Posted by women | March 1, 2017