Don Box and HailStorm
The other day I stumbled on an interesting post by Don Box. In it, he discusses noticing his old HailStorm (a.k.a., ".Net My Services") reference manual. Don, I am not sure why that old book is in your living room? Mine is on a shelf in my basement, along with all my old .NET books...
Don's claim is that "the technology never saw the light of day". While it is true that Microsoft never shipped the system (at least not yet anyway), I wonder if others are successfully shipping the essence of HailStorm?
For the duration of this post, and for the entire comment stream, lets for a minute, forget the over-sensationalized past. Forget that Microsoft was involved in the design, development, and marketing of this system. Forget that many believed that Microsoft was attempting to associate HailStorm with a global identity system, and that some within Microsoft believed that Microsoft should house all of the data exposed by HailStorm in it's own data centers. I am asking you to put this behind you, and instead, lets just look at the essence of HailStorm, and decide if some of these ideas are shipping, or should be shipping.
As I look back on HailStorm, and try to distill it into some of its core concepts, I come up with the following list:
HailStorm was based on an XML data model. The system defined several core data types (calendar events, address book entries, bookmarks, profiles, etc.). Each core type had a set of required elements and attributes, and allowed for arbitrary extensions in both the element and attribute dimension, as long as those extensions are defined within a unique XML namespace. HailStorm had the notion of an <address/> type which defined a set of base properties associated with an address. Anyone could easily extend an address by including arbitrary, well formed XML from an arbitrary namespace. The data model was simple to use, simple to extend, and simple to process. There was no need to buy proprietary tools to crack, parse, manipulate, re-transmit, or re-purpose any type.
Looking at HailStorm through this facet, there are clear similarities between it, and RSS 2.0 and Atom. These two core systems are very powerful. Their ease of use, their simple extensibility, their inherent network centricity have unleashed many clever and useful applications.
Both of these systems specify a very simple container model, in both systems we see a variety of "everyday types including events, people and their properties, rich categorization, etc.
When Don claims that "the technology never saw the light of day", I agree with him that as a whole, HailStorm was never released, but that the essence of HailStorm, in this dimension is alive and well.
HailStorm embraced the idea of decoupling the data from the application. The idea was to allow a variety of applications to process an manipulate your calendar data, your address book, your email, your favorite web sites, your travel preferences and itineraries, etc. This is not a new, novel idea, but was certainly something that was important and core to the system. Simple applications that we were trying to enable included the ability to overlay your personal calendar with the calendar of your favorite band, or your favorite sports team, or your spouse, etc. We wanted to enable a unified "address book" where your contacts could be used across applications written by any vendor.
In keeping with our RSS/Atom theme, I wonder if these two systems have similar goals? Isn't it true that we all love this idea of decoupling data from applications? That we are able to use applications like bloglines, newsgator, or a host of other aggregators/notifiers to keep track and reuse all that is going on out there? What would the blogsphere be like without this technology? What would it be like if you could only read blogger blogs on blogspot? Or read Don's stuff on pluralsight? Or read Jon Udell on infoworld? I think that we can all agree that this theme that was central to the vision of HailStorm is extremely valuable, and has certainly "seen the light of day". In fact, I think we can all also agree that we would rather see more information work like this...
HailStorm embraced the idea of accessing your data anytime, anywhere, and from any device. In fact, during our first public demonstration of the system, we showed read/write HailStorm access from:
I don't remember if we demonstrated Windows access from .NET, but for sure, that would have worked too.
In our system, if you had a crude XML parser, and if you had an ability to send/receive HTTP, you could interact with HailStorm. We did not force you to purchase any special tools, install complex DLL's or type libraries, generate proxy classes through a WSDL parser, etc. HailStorm was based on an approachable protocol that was easy to understand and use from any platform and from any device.
Looking at both Atom publishing protocol for updates, and A9's OpenSearch API for query is an interesting excercise. These systems all are designed to provide an approachable, read/write API that will work from any network capable device, without the need for a proprietary runtime or tool suite. These systems put you, the developer first. I would argue, and I think most of you would agree, that uniform access, any time, any place, and from any device, independent of any proprietary runtime stack is exactly what it takes for an information access protocol to succeed. Has this technology shipped? For sure, in pockets of the broader industry, this approach is thriving. In other areas, the illusion of openness is there, but the reality is that expensive and complex proprietary tools act as your gateway...
The final facet of HailStorm, is the idea of identity centric information access. In HailStorm, the model was based on an identity space where an identity could represent a person, an organization, a group, etc. Given an identity, you could determine where to send messages to interact what information related to that identity. Both the identity space and the services bound to that identity were fully federated. We did this so for instance, the calendar information for Callie could be served by servers at Microsoft, Yahoo, Google, etc. So that the travel data for Nikki could be served by Expedia, American Express, or Cisco... Our system was based on a discoverable, distributed directory known as the myServices service designed to answer these simple queries.
Architecturally, HailStorm provided a level playing field where service providers could compete for a customer's business, and where because of all the facets listed above, a customer had complete freedom to move from provider to provider, with no impact on applications running on her behalf.
Let us look back one more time on the central concepts, or the essence of HailStorm:
I believe that there are systems out there today that are based in large part on a similar set of core concepts. My feeling is that the various RSS/Atom based systems share these core concepts and are therefore very similar, and more importantly, that a vibrant, open and accessible, developer friendly eco-system is forming around these systems...
Don's claim is that "the technology never saw the light of day". While it is true that Microsoft never shipped the system (at least not yet anyway), I wonder if others are successfully shipping the essence of HailStorm?
For the duration of this post, and for the entire comment stream, lets for a minute, forget the over-sensationalized past. Forget that Microsoft was involved in the design, development, and marketing of this system. Forget that many believed that Microsoft was attempting to associate HailStorm with a global identity system, and that some within Microsoft believed that Microsoft should house all of the data exposed by HailStorm in it's own data centers. I am asking you to put this behind you, and instead, lets just look at the essence of HailStorm, and decide if some of these ideas are shipping, or should be shipping.
As I look back on HailStorm, and try to distill it into some of its core concepts, I come up with the following list:
- Network Centric, Extensible Data Model, for Everyday Data
- Data Decoupled from Applications
- Anytime, Anyplace, and from Any Device Access
- Identity Centric Data Access
HailStorm was based on an XML data model. The system defined several core data types (calendar events, address book entries, bookmarks, profiles, etc.). Each core type had a set of required elements and attributes, and allowed for arbitrary extensions in both the element and attribute dimension, as long as those extensions are defined within a unique XML namespace. HailStorm had the notion of an <address/> type which defined a set of base properties associated with an address. Anyone could easily extend an address by including arbitrary, well formed XML from an arbitrary namespace. The data model was simple to use, simple to extend, and simple to process. There was no need to buy proprietary tools to crack, parse, manipulate, re-transmit, or re-purpose any type.
Looking at HailStorm through this facet, there are clear similarities between it, and RSS 2.0 and Atom. These two core systems are very powerful. Their ease of use, their simple extensibility, their inherent network centricity have unleashed many clever and useful applications.
Both of these systems specify a very simple container model, in both systems we see a variety of "everyday types including events, people and their properties, rich categorization, etc.
When Don claims that "the technology never saw the light of day", I agree with him that as a whole, HailStorm was never released, but that the essence of HailStorm, in this dimension is alive and well.
HailStorm embraced the idea of decoupling the data from the application. The idea was to allow a variety of applications to process an manipulate your calendar data, your address book, your email, your favorite web sites, your travel preferences and itineraries, etc. This is not a new, novel idea, but was certainly something that was important and core to the system. Simple applications that we were trying to enable included the ability to overlay your personal calendar with the calendar of your favorite band, or your favorite sports team, or your spouse, etc. We wanted to enable a unified "address book" where your contacts could be used across applications written by any vendor.
In keeping with our RSS/Atom theme, I wonder if these two systems have similar goals? Isn't it true that we all love this idea of decoupling data from applications? That we are able to use applications like bloglines, newsgator, or a host of other aggregators/notifiers to keep track and reuse all that is going on out there? What would the blogsphere be like without this technology? What would it be like if you could only read blogger blogs on blogspot? Or read Don's stuff on pluralsight? Or read Jon Udell on infoworld? I think that we can all agree that this theme that was central to the vision of HailStorm is extremely valuable, and has certainly "seen the light of day". In fact, I think we can all also agree that we would rather see more information work like this...
HailStorm embraced the idea of accessing your data anytime, anywhere, and from any device. In fact, during our first public demonstration of the system, we showed read/write HailStorm access from:
- Solaris written in Java
- Linux written in perl
- Windows written in perl, javascript, C
- Palm VII (written in I forget, sorry, I think C)
I don't remember if we demonstrated Windows access from .NET, but for sure, that would have worked too.
In our system, if you had a crude XML parser, and if you had an ability to send/receive HTTP, you could interact with HailStorm. We did not force you to purchase any special tools, install complex DLL's or type libraries, generate proxy classes through a WSDL parser, etc. HailStorm was based on an approachable protocol that was easy to understand and use from any platform and from any device.
Looking at both Atom publishing protocol for updates, and A9's OpenSearch API for query is an interesting excercise. These systems all are designed to provide an approachable, read/write API that will work from any network capable device, without the need for a proprietary runtime or tool suite. These systems put you, the developer first. I would argue, and I think most of you would agree, that uniform access, any time, any place, and from any device, independent of any proprietary runtime stack is exactly what it takes for an information access protocol to succeed. Has this technology shipped? For sure, in pockets of the broader industry, this approach is thriving. In other areas, the illusion of openness is there, but the reality is that expensive and complex proprietary tools act as your gateway...
The final facet of HailStorm, is the idea of identity centric information access. In HailStorm, the model was based on an identity space where an identity could represent a person, an organization, a group, etc. Given an identity, you could determine where to send messages to interact what information related to that identity. Both the identity space and the services bound to that identity were fully federated. We did this so for instance, the calendar information for Callie could be served by servers at Microsoft, Yahoo, Google, etc. So that the travel data for Nikki could be served by Expedia, American Express, or Cisco... Our system was based on a discoverable, distributed directory known as the myServices service designed to answer these simple queries.
Architecturally, HailStorm provided a level playing field where service providers could compete for a customer's business, and where because of all the facets listed above, a customer had complete freedom to move from provider to provider, with no impact on applications running on her behalf.
Let us look back one more time on the central concepts, or the essence of HailStorm:
- Network Centric, Extensible Data Model, for Everyday Data
- Data Decoupled from Applications
- Anytime, Anyplace, and from Any Device Access
- Identity Centric Data Access
I believe that there are systems out there today that are based in large part on a similar set of core concepts. My feeling is that the various RSS/Atom based systems share these core concepts and are therefore very similar, and more importantly, that a vibrant, open and accessible, developer friendly eco-system is forming around these systems...
37 Comments:
I don't remember if we demonstrated Windows access from .NET, but for sure, that would have worked too.
Yes Mark, we did show a .NET version of this in the demos. We had a stripped-down "native" version and a class library on top of it.
FWIW it sure seems like RSS + Atom + Script + GMail perhaps sure feels an awful lot like HS.
OK, Thanks for reminding me paul. We did do a .NET version as well. How corporate of us :)
Interesting that you see the same similarities that I see...
Oh, and now dodgeball for MyAlerts/MyPresence? Also an SMS presence we never did quite figure out in HS. When do I get my Google calendar?
Don't forget the macos x/freebsd version of the demo. :)
I think you are underestimating your effort at Hailstorm. The key, at least to me, would be the common storage of everyday data in a non-application-specific way.
It has not happened yet. It is extremely important -- the biggest thing I can think of happening to software since at least the seventies -- and pushing its adoption is an enormous undertaking. We will have schema wars, but once you get common data models for everyday items that are extensible, and pressure for common data models for more domain specific data, we can really begin to do some interesting things.
Yes, it looks a little bit like RSS+ATOM+Script+GMail, but only when every viable application is working with the same cloud of data does the beauty really come out.
Oh, we did ship the Alerts stuff -- MSN Alerts (and .NET Alerts) was just about the only service we actually "finished" of Hailstorm and continued to ship. It's a webservice that outside agencies were able to tie to.
You say that to you, the key was the common storage of the every day data. I agree with your thinking at the highest possible level, BUT thinking in terms of common storage, when you really mean common storage is the fatal mistake that Microsoft continues to make in this space. Instead, it is much better, in my opinion, to take your same line of thinking and say that the key is common access to the everyday data. Know what I mean here?
If we had this, and IF the access mechanism was approachable, used the common data model, was designed for the network, etc., this would provide us all with the illusion of a common storage layer without forcing the cost and complexity, world wide grand unification of storage, etc.
The HSDL protocol where we specified exactly this type of information access layer was a shot at this... I see some of the emerging work in A9's open search protocol as an attempt at query unification, and in Atom's publishing API as an attempt in the update side. Given that both of these work within the framework of the Atom and RSS data and container models, I think we are moving in a good direction.
Contrast this approach with the approach taken by Microsoft with the WinFS project where the sole focus has been on unification of the actual bits being stored, a complimentary and proprietary data model, and a .NET centric proprietary API. This is something that is very difficult to pull off, and we can perhaps assume that it is because of this difficulty that Microsoft was forced to remove this key component from Longhorn?
Mark,
First of all, let me just say that I think it is pretty damn cool that the architect of Hailstorm is so accesible here, and I think RSS is in a lot of ways responsible for that.
I agree that it is common access, not common storage. The big problem is getting the whole ball rolling, and perhaps a simplified, easy approach is the best way to do that. Perhaps a clear thinking behemoth like google or MS can do the heavy lifting. I do not know the answer.
Focusing on common access, you run into a directory problem, and it is very hard to guarantee that every action hits every piece of data that it is supposed to. It is a very big undertaking. I think it is unclear how it will shakeout, but I think MS attempts on the client and LAN wil be helpful to the other aspects of getting the common access to everyday data ball rolling, and when it happens we will see something kind of like what was being hyped with the dot com stuff.
Mark,
Even though you are the author of these ideas, they are intellectual property of MS. As an ex employee of MS, you should be discrete about unpublished IP materials from an ex-employer.
> This is something that is very difficult to pull off, and we can perhaps assume that it is because of this difficulty that Microsoft was forced to remove this key component from Longhorn?
I think WinFS was implemented in managed code - it was too slow.
They are reimplementing it in C.
"As an ex employee of MS, you should be discrete about unpublished IP materials from an ex-employer."
Everything we have discussed in this thread has been Published in the form of freely available books, widely read press articles, and Microsoft's own public web site. This thread contains absolutely NO unpublished IP.
Don started this topic when he stumbled on his old .NET My Services book which describes all of the Schemas, the Principles of Operation, the directory scheme, the security model, and the HSDL access layer.
A similar level of detail is available on MSDN describing WinFS from a developers perspective. Take a look at WinFS A Developers Perspective
Sorry about those comments from chaudes. Looks like its been taken care of.
I wonder if others are successfully shipping the essence of HailStorm?
You have a very valid point here. Hailstorm was no rocket science, but it was trying to be everything at once. I also remember how hard it was to push back on that HS thing that nobody has ever even seen and more importantly couldn't see what it practically did.
So others are building it by patching bits and pieces instead. Google is in the read stage with RSS with releasing everything RSS planned in a couple of weeks. When Google moves into the write stage ... it will become Hailstorm. Are they building an operating system?! :)
"The .NET My Services MyServices service serves as a directory service to find other .NET My Services services". :-) Our choice of marketing names certainly didn't help advance the cause of this promising technology either. Good write up Mark...
Before there was Hailstorm, there were companies like Yodlee. As early as 1999, Yodlee naively made efforts to get big (mostly financial) companies to migrate existing datafeeds to use standard XML. Their problem, of course, is that they were working with big companies, and although it is not said often enough, any real progress will never be made by big companies but are generally grassroots efforts.
.net alerts did not really take off that well
a - required passport
b - run by MSN
c - too much outsourced service elements (which have recently been absorbed)
d - did i say required passport and run by MSN?
Ok I don't get it. The network centric open standards stuff not tied to a proprietary stack I can understand. But where's the data model? Where's the federated identity?
federation only works .. well it doesnt
OASIS can't even agree on basic schema or it's scope.
At the end of the day you can do alot more for less. Overloaded encapsulation is heavy lifting that could be moved to other components of the stack.
If the information offered needs to be paid for, then the web services movement grinds to a halt.
I can't even do a Google web search via web services. They have an API but there's limited usage for each token last I checked. Even RSS is often just teasers for the full article (with ads).
Web services have business problems. When you find a way to sell them profitably I'll tip my hat to you.
Hi Mark,
We work quite a bit with salesforce.com. Many aspects of their sforce architecture remind me of Hailstorm. They have the closets thing I've found to a service enabled developer platform these days.
Best,
Bill Appleton
CTO
DreamFactory Software
billappleton@dreamfactory.com
Hi,
This article is good and informative.
Software Development Company
My name is Yana. Let me introduce my proposal to you. Can we start collaborating with your Blog in order to place an article about our site to it?
My contact is: yanablin@gmail.com
I'm looking forward to hearing from you soon.
情趣用品,情趣用品,情趣用品,情趣用品,情趣,情趣,情趣,情趣,按摩棒,震動按摩棒,微調按摩棒,情趣按摩棒,逼真按摩棒,G點,跳蛋,跳蛋,跳蛋,性感內衣,飛機杯,充氣娃娃,情趣娃娃,角色扮演,性感睡衣,SM,潤滑液,威而柔,香水,精油,芳香精油,自慰套,自慰,性感吊帶襪,吊帶襪,情趣用品加盟AIO交友愛情館,情人歡愉用品,美女視訊,情色交友,視訊交友,辣妹視訊,美女交友,嘟嘟成人網,成人網站,A片,A片下載,免費A片,免費A片下載愛情公寓,情色,舊情人,情色貼圖,情色文學,情色交友,色情聊天室,色情小說,一葉情貼圖片區,情色小說,色情,色情遊戲,情色視訊,情色電影,aio交友愛情館,色情a片,一夜情,辣妹視訊,視訊聊天室,免費視訊聊天,免費視訊,視訊,視訊美女,美女視訊,視訊交友,視訊聊天,免費視訊聊天室,情人視訊網,影音視訊聊天室,視訊交友90739,成人影片,成人交友,美女交友,微風成人,嘟嘟成人網,成人貼圖,成人電影,A片,豆豆聊天室,聊天室,UT聊天室,尋夢園聊天室,男同志聊天室,UT男同志聊天室,聊天室尋夢園,080聊天室,080苗栗人聊天室,6K聊天室,女同志聊天室,小高聊天室,上班族聊天室,080中部人聊天室,同志聊天室,聊天室交友,中部人聊天室,成人聊天室,一夜情聊天室,情色聊天室,寄情築園小遊戲情境坊歡愉用品,情趣用品,成人網站,情人節禮物,情人節,AIO交友愛情館,情色,情色貼圖,情色文學,情色交友,色情聊天室,色情小說,七夕情人節,色情,情色電影,色情網站,辣妹視訊,視訊聊天室,情色視訊,免費視訊聊天,美女視訊,視訊美女,美女交友,美女,情色交友,成人交友,自拍,本土自拍,情人視訊網,視訊交友90739,生日禮物,情色論壇,正妹牆,免費A片下載,AV女優,成人影片,色情A片,成人論壇,情趣,免費成人影片,成人電影,成人影城,愛情公寓,成人影片,保險套,舊情人,微風成人,成人,成人遊戲,成人光碟,色情遊戲,跳蛋,按摩棒,一夜情,男同志聊天室,肛交,口交,性交,援交,免費視訊交友,視訊交友,一葉情貼圖片區,性愛,視訊,視訊聊天,A片,A片下載,免費A片,嘟嘟成人網,寄情築園小遊戲,女同志聊天室,免費視訊聊天室,一夜情聊天室,聊天室
クレジットカード現金化とは、キャッシング枠を枠一杯利用済みで、さらに現金を必要としている方を狙った、アンダーグラウンドなサービスです。
ク レジットカードには、通常、ショッピング専用のショッピング枠と、キャッシング専用のキャッシング枠が存在しています。キャッシング枠を目一杯利用してい ると、当然ながら、カードで現金を借りることが出来なくなります。ショッピングは可能な状態ですが、そのショッピング枠だと、利用用途や利用場所に制限が 生まれます。
seo
seo対策
seo
SEO対策
seo
SEO対策
seo
SEO対策
seo
SEO対策
seo
SEO対策
seo
SEO対策
发布名 buy wow gold
URL http://www.game4power.com
Emil: xcyhmh@163.com
Today, the Microsoft-owned in-game ad agency said that it has signed an exclusive multiyear agreement with Blizzard. Azerothians opposed to seeing in-game ads in their localworld of warcft goldwatering holes need not worry, however, because the deal is limited to Blizzard's Web sites and Battle.net,the game maker's online-gaming hub. Terms of the deal were not announced, but Massive did note that the agreement is applicable to users in the US, Canada, Europe, South Korea, and Australia.
buy wow gold
Massive also said today that it would be extending its aforementioned deal with Activision to encompass an additional 18 games appearing on the Xbox 360 and PC.cheap wow goldThe agency didn't fully delineate which would fall under this deal, though it did call out Guitar Hero: World Tour, James Bond: Quantum of Solace, and Transformers: Revenge of the Fallen,buy wow items as well as games in its Tony Hawk and AMAX Racing franchises.Shortly before Activision and Vivendi announced their deal of the decade,wow power levelingthe Guitar Hero publisher signed on to receive in-game advertisements from Massive Inc for a number of its Xbox 360 and PC games. A bit more than a year later, Massive is now extending its reach to Activision's new power player, Blizzard Entertainment.buy wow gold from our site ,you'll get more surprises!
杭州装修公司杭州店面装修杭州办公室装修杭州装饰公司杭州装修公司杭州装饰公司蜂王浆芦荟蜂胶蜂王浆芦荟蜂胶ball valve球阀gate valve闸阀angle valve角阀bibcock水嘴tapCheck valvehot-water heatingfittings苏州led上海led北京led苏州电磁铁苏州装修公司苏州装饰公司atsATS生产atsATS开关
個別指導塾
幼児教室
搬家
搬家
搬家公司
徵信社
徵信
彩妝造型
新娘秘書
票貼
室內設計
室內設計
徵信
徵信社
外遇
徵信
徵信社
外遇
搬家
搬家
花蓮民宿
花蓮民宿
免費a片
a片
免費av
色情影片
情色
情色網
色情網站
色情
成人網
成人圖片
成人影片
18成人
av
av女優
性
情慾
走光
做愛
sex
H漫
免費a片
a片
免費av
色情影片
情色
情色網
色情網站
色情
成人網
成人圖片
成人影片
18成人
av
av女優
性
情慾
走光
做愛
sex
H漫
a片
アダルト
アダルト
アダルトサイト
アダルトサイト
離婚
抓姦
外遇蒐證
外遇抓姦
外遇
侵權
仿冒
應收帳款
工商徵信
Shade sail
nike shoes
水泵
电动隔膜泵
自吸泵
离心泵
磁力泵
螺杆泵
化工泵
水泵
电动隔膜泵
自吸泵
离心泵
磁力泵
螺杆泵
化工泵
水泵
电动隔膜泵
自吸泵
离心泵
磁力泵
螺杆泵
化工泵
隔膜泵
气动隔膜泵
隔膜泵
气动隔膜泵
隔膜泵
气动隔膜泵
a片
成人網站
成人影片
寵物用品
情趣用品
情趣用品
MBA
在职研究生
在职博士
補習班
花店
花店
補正下着
中古車買賣
貸款
婚紗
婚紗攝影
補習班
留學
情色
情色
百家乐
轮盘
21点
德州扑克
百家乐系统
真人娱乐场
百家乐
足球
德州扑克
电子游戏
英格兰超级联赛
德国甲组联赛
意大利甲组联赛
西班牙甲组联赛
法国甲组联赛欧冠杯
英超
足球比分
足球彩票
体育彩票
即时比分
堆高機
婚禮佈置
宜蘭民宿推薦
寵物用品
情趣用品
情趣用品
坐月子
植牙
牙齒矯正
租屋
催眠
房屋出租
租房子
xo醬
牛軋糖
牛嘎糖
代償
房屋貸款
信用貸款
失眠
減肥
眼鏡
金門高梁酒
變頻洗衣機
減肥
眼鏡
睡眠障礙
憂鬱症
躁鬱症
減重
瘦身
中醫減肥
台北中醫減肥
台中中醫減肥
高雄中醫減肥
產後減肥
下半身減肥
下半身瘦身
高雄眼鏡
屏東眼鏡
名牌眼鏡
太陽眼鏡
隱形眼鏡
鐵氟龍
PTFE
中壢花店
林口花店
南崁花店
金莎花束
歌倫比亞 雞腳凍
飲料加盟
床
太陽餅
月餅
口袋秤
度量衡
吊秤
吊磅
電子秤
磅秤
口袋秤
度量衡
吊秤
吊磅
電子秤
磅秤
招牌製作
招牌設計
廣告招牌
大圖輸出
電腦割字
招牌看板
廢鐵
廢銅
廢不銹鋼
廢電線
廢鋁
廢棄物
廢電纜電線
廢塑膠
制服
成衣
戒指
耳環
項鍊
對戒
手鍊
銀飾
飾品
對鍊
護理之家
台中花店
考試
塑膠箱
塑膠容器
工具箱
物流箱
拖板車
自動倉儲
倉儲設備
自行車衣
自行車背包
自行車手套
車衣
債務更生
債務清理
法協
蜂蜜
蜂王乳花粉
農產品
草本膠囊
促進新陳代謝
排便順暢的方法
體內環保
塑膠射出
塑膠製品
塑膠箱籃
物流塑膠箱
休閒傢俱
庭園圍籬
toefl
不動産投資
個別指導塾
アウトソーシング
Keep blogging.
Good luck.
花蓮入口網|花蓮|花蓮民宿|花蓮美食|花蓮消費券|花蓮旅遊|花蓮|花蓮電影|花蓮|花蓮海洋公園|花蓮遠來飯店|花蓮提拉米蘇|花蓮客運|蜂膠|花蓮太魯閣|花蓮廣告|花蓮地圖|花蓮旅遊|花蓮民宿|花蓮房屋|花蓮租車|花蓮汽車|花蓮餐廳|花蓮旅館|花蓮瑞穗牧場|花蓮名產|花蓮3600|花蓮租屋|花蓮理想大地|大月映|花蓮廣告|花蓮租車旅遊-TTA租車公司|花蓮餐廳|花蓮租車旅遊網|花蓮入口網|花蓮旅遊|花蓮|花蓮|花蓮
蜂王浆
芦荟
蜂胶
ball valve球阀
gate valve闸阀
angle valve角阀
bibcock水嘴
tap
Check valve
hot-water heating
fittings
苏州led
上海led
北京led
苏州电磁铁
苏州装修公司
苏州装饰公司
ats
双电源切换开关
双电源转换开关
双电源开关
乐清网站建设.
乐清网站推广.
咆嘯老鼠論壇咆嘯老鼠論壇咆嘯老鼠論壇咆嘯老鼠論壇咆嘯老鼠論壇咆嘯老鼠論壇小老鼠論壇小老鼠論壇小老鼠論壇小老鼠論壇小老鼠論壇小老鼠論壇小老鼠論壇小老鼠論壇小老鼠論壇小老鼠論壇男人幫論壇男人幫論壇男人幫論壇男人幫論壇男人幫論壇男人幫論壇男人幫論壇男人幫論壇男人幫論壇男人幫論壇天天網遊論壇天天網遊論壇天天網遊論壇天天網遊論壇天天網遊論壇天天網遊論壇天天網遊論壇天天網遊論壇天天網遊論壇天天網遊論壇小老鼠分享論壇小老鼠分享論壇小老鼠分享論壇小老鼠分享論壇小老鼠分享論壇小老鼠分享論壇小老鼠分享論壇小老鼠分享論壇小老鼠分享論壇小老鼠分享論壇小瓢蟲論壇小瓢蟲論壇小瓢蟲論壇小瓢蟲論壇小瓢蟲論壇小瓢蟲論壇小瓢蟲論壇小瓢蟲論壇小瓢蟲論壇小瓢蟲論壇癡漢論壇癡漢論壇癡漢論壇癡漢論壇癡漢論壇癡漢論壇癡漢論壇癡漢論壇癡漢論壇癡漢論壇mcy論壇mcy論壇mcy論壇mcy論壇mcy論壇mcy論壇mcy論壇mcy論壇mcy論壇mcy論壇無限論壇無限論壇無限論壇無限論壇無限論壇無限論壇無限論壇無限論壇無限論壇無限論壇168私服論壇168私服論壇168私服論壇168私服論壇168私服論壇168私服論壇168私服論壇168私服論壇168私服論壇168私服論壇袍笑小老鼠論壇袍笑小老鼠論壇袍笑小老鼠論壇袍笑小老鼠論壇袍笑小老鼠論壇袍笑小老鼠論壇袍笑小老鼠論壇袍笑小老鼠論壇袍笑小老鼠論壇袍笑小老鼠論壇台灣論壇遊戲區台灣論壇遊戲區台灣論壇遊戲區台灣論壇遊戲區台灣論壇遊戲區台灣論壇遊戲區台灣論壇遊戲區台灣論壇遊戲區台灣論壇遊戲區台灣論壇遊戲區bt下載論壇bt下載論壇bt下載論壇bt下載論壇bt下載論壇bt下載論壇bt下載論壇bt下載論壇bt下載論壇bt下載論壇bt P2P論壇bt P2P論壇bt P2P論壇bt P2P論壇bt P2P論壇bt P2P論壇bt P2P論壇bt P2P論壇bt P2P論壇bt P2P論壇eney伊莉論壇eney伊莉論壇eney伊莉論壇eney伊莉論壇eney伊莉論壇eney伊莉論壇eney伊莉論壇eney伊莉論壇eney伊莉論壇eney伊莉論壇eyny伊莉論壇eyny伊莉論壇eyny伊莉論壇eyny伊莉論壇eyny伊莉論壇eyny伊莉論壇eyny伊莉論壇eyny伊莉論壇eyny伊莉論壇eyny伊莉論壇夜玥論壇夜玥論壇夜玥論壇夜玥論壇夜玥論壇夜玥論壇夜玥論壇夜玥論壇夜玥論壇夜玥論壇dcp2p論壇dcp2p論壇dcp2p論壇dcp2p論壇dcp2p論壇dcp2p論壇dcp2p論壇dcp2p論壇dcp2p論壇dcp2p論壇香港製造論壇aa片免費看微風論壇080哈啦聊天室6k聊天室成人聊天室上班族捷克論壇大眾論壇plus論壇080視訊聊天室520視訊聊天室尋夢園上班族聊天室成人聊天室上班族 a片a片影片免費情色影片免費a片觀看小弟第貼影片區免費av影片免費h影片試看 H漫 - 卡通美女短片小魔女貼影片免費影片觀賞無碼a片網美女pc交友相簿美女交友-哈啦聊天室中文a片線上試看免費電影下載區免費試看a短片免費卡通aa片觀看女優影片無碼直播免費性感a片試看日本AV女優影音娛樂網日本av女優無碼 dvd辣妹視訊 - 免費聊天室美女交友視訊聊天室 080免費視訊聊天室尋夢園聊天室080苗栗人聊天室a片下載
China Highlights
China Highlights
China Highlights
China Highlights
Beijing China Travel
Shanghai China Tour
Shanghai China Travel
Xi'an China Travel
Chengdu China Travel
Chongqing China Travel
Kunming China Travel
Lijiang China Travel
Hangzhou China Travel
Suzhou China Travel
Guilin China Travel
花蓮|花蓮縣長|楊文值|縣政值日生|花蓮選舉|傅崑萁|杜麗華|張志明|蔡啟塔|花蓮縣|花蓮|花蓮縣長|楊文值|縣政值日生|值日生
威創牙醫診所除了提供優質的植牙技術外還提供假牙|矯正|牙周病治療,是值得您信賴的牙醫診所。
獅王紋身工作室提供專業的無痛刺青技術,獅王紋身在世界TATTOO大賽中,獲獎無數,獅王紋身給您最時尚的作品。
陳駿逸皮膚科診所提供了治療痘痘的服務,皮膚雷射權威,包括雷射、脈衝光、除斑等,讓您回復青春蘋果臉。
ck皮件處理棧提供專業洗包包|洗鞋子|各式皮件修理保養疑難雜症都有服務,清洗包包專門店讓您的包包、鞋子、永遠保持最新的況態唷。
杏儒中醫診所提供了糖尿病的治療。
Post a Comment
<< Home