====== Description of Course Unit ====== **[[http://sigarra.up.pt/feup/pt/cur_geral.cur_view?pv_curso_id=742|Master in Informatics and Computing Engineering]]\\ [[http://www.fe.up.pt/si_uk/disciplinas_geral.FormView?p_cad_codigo=EIC0107|Markup Languages and Document Processing]]\\ [[http://www.fe.up.pt/si_uk/disciplinas_geral.formview?p_cad_codigo=EIC0107&p_ano_lectivo=2011/2012&p_periodo=1S|Instance: 2011/2012]]** \\ --- \\ //**[[http://www.fe.up.pt/si_uk/disciplinas_geral.formview?p_cad_codigo=EIC0107&p_ano_lectivo=2011/2012&p_periodo=1S|Institutional page]]**// ===== General Information ===== **Course Unit**: Markup Languages and Document Processing\\ **Code**: EIC0107\\ **Programmes**: MIEIC, 4º, xx students\\ **Academic Year**: 2011/2012\\ **Semester**: 2S\\ **Credits**: 6\\ **ECTS**: 6\\ **Hours/Weeks**: 3 TP\\ **Teachers**: [[http://www.fe.up.pt/si/en/func_geral.FormView?p_codigo=209566|Cristina Ribeiro]] | [[http://www.fe.up.pt/uk/funcionarios_geral.FormView?p_codigo=230756|João Correia Lopes]] ===== Teaching Language ===== Suitable for English-speaking students ===== Objectives, Skills and Learning Outcomes ===== ==== Goals ==== This course is aimed at obtaining markup languages ​​for a given domain and at the realization of applications based on markup languages​. ==== Learning Outcomes ==== On completion of this course, the student should be able to: * Identify the use of markup languages in documents, in data repositories and in applications; * Analyse an XML document and decide whether it complies to a model; * Create models for XML documents; * Tell the difference between a standardised language for an application domain and the ad-hoc uses of markup languages; * Design a markup language to support a document type or the data for an application; * Evaluate and compare XML-based and other solutions to support application data interchange; * Design XSL stylesheets to transform documents; * Interpret the results of document processing with XML-based technologies; * Use a native XML database and take advantage of its query functions; * Compare data organisation in markup models with the relational model and translate data between both models; * Generate a markup model for data in an application domain, store a dataset and query it; * Compare markup languages to other document and data representations with respect to the support to data preservation along technological change; * Develop an XML-based prototype application involving the use of a dialect and document processing. ===== Program ===== * Introduction to XML and associated technologies: models and validation of documents, logical structure and physical structure of an XML document. * Navigation in XML documents. The XPath language. * XML document presentation with CSS. * XML document transformation — XSLT. * XML presentation with XSL-FO. * Querying XML documents. The XQuery language. * Examples of applications based on XQuery. * XML processing in applications. Read and write XML. DOM. JDOM. JAXB. SAX. StAX. * Examples of XML usage. XML and data access. A Web application with XML, JAXB and DAO. * Storage of XML: native XML databases, XML storage in databases object-relational. ===== Main Bibliography ===== * Anders Møller, Michael I. Schwartzbach; //An Introduction to XML and Web Technologies//, Addison Wesley Professional, 2006. ISBN: 0321269667 [[http://aleph.fe.up.pt/F/-?func=find-b&find_code=SYS&request=000074209|Biblioteca]] ===== Complementary Bibliography ===== * Neil Bradley, The XML Companion, Addison-Wesley, 3rd Edition, 2002, ISBN: 0-201-77059-8. [[http://aleph.fe.up.pt/F/-?func=find-b&find_code=SYS&request=000050335|Biblioteca]] * José Carlos Ramalho, Pedro Henriques; //XML e XSL — da Teoria à Prática//, FCA Editora, 2002, ISBN: 972-722-347-8. [[http://aleph.fe.up.pt/F/-?func=find-b&find_code=SYS&request=000057949|Biblioteca]] * Elliotte Rusty Harold, W. Scott Means, //XML in a Nutshell//, O'Reilly, Third Edition, 2004, ISBN: 0-596-00292-0. [[http://aleph.fe.up.pt/F/-?func=find-b&find_code=SYS&request=000057950|Biblioteca]] ===== Teaching Procedures ===== Lectures include theoretical presentation of the course subjects and practical sessions where proposed research topics are discussed with the students and practical coursework reported. ===== Software ===== * oXygen * XML Spy ===== Keywords ===== Physical sciences > Computer science > Informatics ===== Evaluation Type ===== Distributed evaluation without final exam ===== Registered evaluation and occupation components ===== The evaluation includes an exam and practical work, to be done along the semester, with the components identified. ^ Description ^ Type ^ Time (hours) ^ Conclusion date ^ | Teaching classes (estimated) | lectures | 42 | — | | XML Language (T1) | Work | 30 | 2012/03/09 | | XMLT Processing (T2) | Work | 30 | 2012/04/13 | | XML based application (T3) | Work | 60 | 2012/06/01 | | Total: || 162 | — | ===== Admission to Exams ===== The course has a practical component which results from the execution of projects, to be delivered up to their due dates established in the course plan. The students are admitted to the final exam if they achieve 50% in each component of the project work. Success in the course requires 40% in each intermediate written test. ===== Final grade ===== Classification = 60% Practical assignments + 40% Exam, where: Practical assignments = 25% T1 + 25% T2 + 50% T3. ===== Special Assignments ===== There are no special works or tests. ===== Special evaluation (TE, DA, ...) ===== Students taking exams under special regimes are expected to previously submit the assignments required for this course. ===== Improvement of Final/Distributed Classification ===== Students may improve the mark obtained in the practical component in the subject's next edition. Exam marks may be improved in the resit exam period. \\ -- MCR, JCL