With the increased complexity of ontologies, building and using large-scale ontologies require cooperative and scalable mechanisms. In this paper, we propose a modular ontology approach for such challenge. A large ontology has multiple smaller modules called packages, which are sets of highly related terms and term relations; packages can be nested in other packages, forming a package hierarchy. The visibility of a term is controlled in order to realize partial knowledge hiding in the process of knowledge sharing. The whole ontology is composed of a set of packages. A concrete package-based ontology language, i.e., the package-based partial-order (hierarchy) ontology (PPO), is studied to illustrate the features of such modular ontologies. We also present a modular ontology editor for building PPO and we show its applications on practical ontologies.