This course introduces the foundations and practical applications of the Semantic Web, covering its layered architecture from resource identification (URI/IRI) through structured data representation (XML and XML Schema), graph-based knowledge modeling (RDF and RDFS), and formal ontology engineering with OWL 2.0 using the Protégé editor, including classes, properties, individuals, restrictions, cardinality constraints, and defined classes; it further examines rule-based reasoning through SWRL and its built-ins, semantic service description via OWL-S, and the programmatic manipulation and reasoning of ontologies in Java using the OWL API together with description-logic reasoners such as HermiT and Openllet/Pellet, culminating in querying inferred knowledge with SQWRL and SPARQL. Theoretical instruction is reinforced by a term-long, hands-on case study through which students design an ontology, author a SWRL rule set, develop a Java/OWL API application that reads, writes, and reasons over the ontology, and implement a working Web 3.0 based software that surfaces the justification behind each inference, with the course concluding in a live demonstration, project presentations, and the writing of an academic paper.