In this paper we enhance the SOFA Component Description Language with a semantic description of a component's functionality. There are two key requirements this description aims to address: First, for the design purpose, it should ensure correct composition of the nested architectural ions; second, it should be easy-to-read so that an average user can identify a component with the correct semantics for the purposes of component trading. The semantic description in SOFA expresses the behavior of the component in terms of behavior protocols using a notation similar to regular expressions which is easy-to-read, and which grants guarantees about required and provided services. The behavior protocols are used on three levels: interface, frame, and architecture. One of the key achievements of this paper is that it defines a protocol conformance relation where the component designer can statically verify that the frame protocol adheres to requirements of the interface protocols, and tha...