UPnP devices and services lack a composition framework to provide a novel value-added service. This paper aim at designing and implementing a dynamic service composition framework and create a virtual UPnP device in home network environment. Semantic data type ontology is used to define a communication interface for UPnP services. The interface matching mechanism is employed to construct a service graph that describes which services can be composed together. Finally, the proposed system travels on the service graph, and a method called Virtual Application Probing which allows home virtual applications can be dynamically and semantically composed from the individual services of home networked devices and find a suitable execution path to generate a new device. Home users can invoke this new generated device through the control point, as if the device is real in the house. In addition, a virtual UPnP Karaoke device generated by the proposed service composition system is demonstrated as well. From the demonstration, it can be seen that the service composition system is feasible in practice.