Curricula authoring is a complex process, involving different actors and different kinds of knowledge. Learners aim at acquiring expertise about some topic of their own interest, and need to perceive that the curriculum they attend will lead them towards their goal; when this does not happen, they become demotivated. Learners are all different, not only in their aims but also in their background knowledge and skills; curricula must carefully be tailored to the learner's individual traits: when this does not happen, curricula are not effective from a pedagogical perspective. On the other hand, it is not possible to leave learners alone in the design of a curriculum because this activity involves both knowledge about the topics to teach, and knowledge about teaching itself. It is one of the tasks of the school to support curricula authoring so to guarantee the correctness of the result w.r.t. the teaching goals and to pedagogical strategies. In this article we face the problem of authoring personalized curricula and propose a modular, layered architecture that accounts for the representation of learning resources, of the domain model, of the learner, and of pedagogical constraints, with the aim of supporting different validation tasks. The representation combines a Semantic Web approach to annotation with a declarative representation in linear temporal logic. The validation layer of the proposed architecture includes different kinds of inter-conceptual, postconstruction verifications, all of which can be realized by means of model checking techniques. The article also reports about a prototype implementation based on the Personal Reader for education, a framework that supplies to its users personalization functionalities implemented in a service-oriented fashion.