attachment
attachment
attachment
attachment
attachment
attachment

I have this 4 units for exam of bsc nursing 3rd year sem 5 the paper pattern is 4 marks 4 mcq 6 marks 3 short ans 10 marks 2 short note And 10 mark 1 essay type question plz give me the important note and make 5 sample papers according to this syllabus in one document prepare me for tomorrow exam of 30 marks

analyse_media
analyse_media
analyse_media
Reading File
Running Command

mkdir -p /tmp/workspace/nursing-exam && echo "Directory ready"

Give..

It looks like your message got cut off! Could you complete your request? For example:
  • "Give me the document" - I'll create the full Word document with notes + 5 sample papers
  • "Give me the notes first" - I'll share the important study notes right here
  • "Give me sample paper 1" - I'll show you a specific paper
What would you like?

Give me the pdfof notes

Reading File
Writing File

~/nursing-exam/create_notes_pdf.py

from reportlab.lib.pagesizes import A4
from reportlab.lib.styles import getSampleStyleSheet, ParagraphStyle
from reportlab.lib.units import cm
from reportlab.lib import colors
from reportlab.platypus import (SimpleDocTemplate, Paragraph, Spacer,
                                 Table, TableStyle, PageBreak, HRFlowable)
from reportlab.lib.enums import TA_CENTER, TA_LEFT, TA_JUSTIFY

OUTPUT_PATH = "/tmp/workspace/nursing-exam/BSc_Nursing_Sem5_Educational_Technology_Notes_and_Papers.pdf"

doc = SimpleDocTemplate(
    OUTPUT_PATH,
    pagesize=A4,
    rightMargin=2*cm, leftMargin=2*cm,
    topMargin=2*cm, bottomMargin=2*cm
)

styles = getSampleStyleSheet()

# Custom styles
title_style = ParagraphStyle('TitleStyle', parent=styles['Title'],
    fontSize=18, textColor=colors.HexColor('#1a237e'), alignment=TA_CENTER,
    spaceAfter=6, fontName='Helvetica-Bold')

subtitle_style = ParagraphStyle('SubTitle', parent=styles['Normal'],
    fontSize=12, textColor=colors.HexColor('#283593'), alignment=TA_CENTER,
    spaceAfter=12)

unit_header = ParagraphStyle('UnitHeader', parent=styles['Heading1'],
    fontSize=14, textColor=colors.white, backColor=colors.HexColor('#1a237e'),
    spaceAfter=8, spaceBefore=14, fontName='Helvetica-Bold',
    leftIndent=-10, rightIndent=-10, leading=20)

h2 = ParagraphStyle('H2', parent=styles['Heading2'],
    fontSize=12, textColor=colors.HexColor('#283593'), fontName='Helvetica-Bold',
    spaceBefore=10, spaceAfter=4)

h3 = ParagraphStyle('H3', parent=styles['Heading3'],
    fontSize=11, textColor=colors.HexColor('#1565c0'), fontName='Helvetica-Bold',
    spaceBefore=6, spaceAfter=3)

body = ParagraphStyle('Body', parent=styles['Normal'],
    fontSize=10, textColor=colors.black, leading=15,
    spaceAfter=4, alignment=TA_JUSTIFY)

bullet = ParagraphStyle('Bullet', parent=styles['Normal'],
    fontSize=10, leftIndent=16, bulletIndent=6, textColor=colors.black,
    leading=14, spaceAfter=3)

subbullet = ParagraphStyle('SubBullet', parent=styles['Normal'],
    fontSize=9.5, leftIndent=30, bulletIndent=20, textColor=colors.HexColor('#333333'),
    leading=13, spaceAfter=2)

bold_body = ParagraphStyle('BoldBody', parent=styles['Normal'],
    fontSize=10, fontName='Helvetica-Bold', spaceAfter=3, spaceBefore=4)

paper_title = ParagraphStyle('PaperTitle', parent=styles['Normal'],
    fontSize=14, fontName='Helvetica-Bold', textColor=colors.HexColor('#880000'),
    alignment=TA_CENTER, spaceAfter=4, spaceBefore=10)

paper_sub = ParagraphStyle('PaperSub', parent=styles['Normal'],
    fontSize=10, alignment=TA_CENTER, spaceAfter=2)

section_q = ParagraphStyle('SectionQ', parent=styles['Normal'],
    fontSize=11, fontName='Helvetica-Bold', textColor=colors.HexColor('#4a148c'),
    spaceBefore=8, spaceAfter=4)

q_style = ParagraphStyle('QStyle', parent=styles['Normal'],
    fontSize=10, leading=15, spaceAfter=4, leftIndent=10)

ans_hint = ParagraphStyle('AnsHint', parent=styles['Normal'],
    fontSize=9, textColor=colors.HexColor('#555555'), leftIndent=20,
    spaceAfter=6, fontName='Helvetica-Oblique')

imp_box = ParagraphStyle('ImpBox', parent=styles['Normal'],
    fontSize=10, textColor=colors.HexColor('#b71c1c'), fontName='Helvetica-Bold',
    leftIndent=10, spaceAfter=3)

story = []

# ============================================================
# COVER PAGE
# ============================================================
story.append(Spacer(1, 2*cm))
story.append(Paragraph("BSc Nursing – 3rd Year, Semester V", title_style))
story.append(Spacer(1, 0.3*cm))
story.append(Paragraph("EDUCATIONAL TECHNOLOGY / NURSING EDUCATION", title_style))
story.append(Spacer(1, 0.5*cm))
story.append(HRFlowable(width="100%", thickness=2, color=colors.HexColor('#1a237e')))
story.append(Spacer(1, 0.4*cm))
story.append(Paragraph("📚 COMPLETE STUDY NOTES + 5 SAMPLE EXAM PAPERS", subtitle_style))
story.append(Spacer(1, 0.3*cm))

info_data = [
    ["Paper Pattern", "30 Marks Total"],
    ["Section A – MCQ", "4 Questions × 1 Mark = 4 Marks"],
    ["Section B – Short Answer", "3 Questions × 2 Marks = 6 Marks"],
    ["Section C – Short Notes", "2 Questions × 5 Marks = 10 Marks"],
    ["Section D – Essay", "1 Question × 10 Marks = 10 Marks"],
]
info_table = Table(info_data, colWidths=[8*cm, 8*cm])
info_table.setStyle(TableStyle([
    ('BACKGROUND', (0,0), (-1,0), colors.HexColor('#1a237e')),
    ('TEXTCOLOR', (0,0), (-1,0), colors.white),
    ('FONTNAME', (0,0), (-1,0), 'Helvetica-Bold'),
    ('FONTNAME', (0,1), (-1,-1), 'Helvetica'),
    ('FONTSIZE', (0,0), (-1,-1), 10),
    ('BACKGROUND', (0,1), (-1,-1), colors.HexColor('#e8eaf6')),
    ('ROWBACKGROUNDS', (0,1), (-1,-1), [colors.HexColor('#e8eaf6'), colors.HexColor('#c5cae9')]),
    ('ALIGN', (0,0), (-1,-1), 'CENTER'),
    ('VALIGN', (0,0), (-1,-1), 'MIDDLE'),
    ('GRID', (0,0), (-1,-1), 0.5, colors.HexColor('#9fa8da')),
    ('ROWHEIGHT', (0,0), (-1,-1), 22),
]))
story.append(info_table)
story.append(Spacer(1, 1*cm))
story.append(Paragraph("Exam Date: Tomorrow | Prepared: July 2026", subtitle_style))
story.append(PageBreak())

# ============================================================
# IMPORTANT TOPICS TABLE
# ============================================================
story.append(Paragraph("★ MOST IMPORTANT TOPICS AT A GLANCE", unit_header))
story.append(Spacer(1, 0.3*cm))
imp_topics = [
    ["Unit", "High-Priority Topics"],
    ["Unit I", "Definition of Ed. Technology • Learning Theories • Principles of Teaching & Learning\nBarriers to T&L • Latest Approaches (Experiential, Reflective, Blended, Simulation)\nEducational Philosophy • Transformational / Competency-based Education"],
    ["Unit II", "Qualities of a Good Teacher • Teaching Styles (4 types)\nTypes of Learners • Kolb's Learning Styles • Motivational Factors\nCurriculum – Definition, Types, Design • Writing Behavioral Objectives / Learning Outcomes\nLesson Plan – Meaning & Steps"],
    ["Unit III", "Teaching Methods – Lecture, Demonstration, Microteaching (features, adv, disadv)\nClassroom Management – Principles & Strategies • Classroom Communication\nICT in Education • Active Learning Strategies (PBL, TBL, Peer Sharing)"],
    ["Unit IV", "Clinical Learning Environment • Characteristics of Effective Clinical Teacher\nClinical Teaching Strategies – Bedside Clinic, Case Study, Concept Mapping\nFactors Influencing Clinical Learning • Process Recording"],
]
imp_t = Table(imp_topics, colWidths=[2.5*cm, 14*cm])
imp_t.setStyle(TableStyle([
    ('BACKGROUND', (0,0), (-1,0), colors.HexColor('#1a237e')),
    ('TEXTCOLOR', (0,0), (-1,0), colors.white),
    ('FONTNAME', (0,0), (-1,0), 'Helvetica-Bold'),
    ('FONTNAME', (0,1), (-1,-1), 'Helvetica'),
    ('FONTSIZE', (0,0), (-1,-1), 9),
    ('ROWBACKGROUNDS', (0,1), (-1,-1), [colors.HexColor('#e8eaf6'), colors.white]),
    ('GRID', (0,0), (-1,-1), 0.5, colors.HexColor('#9fa8da')),
    ('VALIGN', (0,0), (-1,-1), 'TOP'),
    ('ROWHEIGHT', (0,1), (-1,-1), 45),
    ('FONTNAME', (0,1), (0,-1), 'Helvetica-Bold'),
    ('TEXTCOLOR', (0,1), (0,-1), colors.HexColor('#1a237e')),
]))
story.append(imp_t)
story.append(PageBreak())

# ============================================================
# STUDY NOTES
# ============================================================
story.append(Paragraph("PART 1: COMPREHENSIVE STUDY NOTES", title_style))
story.append(HRFlowable(width="100%", thickness=2, color=colors.HexColor('#1a237e')))
story.append(Spacer(1, 0.3*cm))

# ---- UNIT I ----
story.append(Paragraph("UNIT I – INTRODUCTION & THEORETICAL FOUNDATIONS (6 Hrs Theory)", unit_header))
story.append(Spacer(1, 0.2*cm))

story.append(Paragraph("1. Educational Technology", h2))
story.append(Paragraph("Definition:", bold_body))
story.append(Paragraph("Educational Technology is the systematic application of scientific knowledge about teaching-learning to improve the quality of education. It includes the use of resources, methods, tools, and techniques to facilitate effective learning.", body))

story.append(Paragraph("Aims of Educational Technology:", bold_body))
for item in [
    "To make teaching-learning more effective and purposeful.",
    "To develop better instructional materials and methods.",
    "To measure and evaluate student learning outcomes.",
    "To individualize instruction based on learner needs.",
    "To apply scientific principles to solve educational problems.",
]:
    story.append(Paragraph(f"• {item}", bullet))

story.append(Paragraph("Approaches & Scope:", bold_body))
for item in [
    "Hardware approach – use of physical devices (projectors, computers, simulators).",
    "Software approach – use of instructional materials, programmed learning, e-content.",
    "Systems approach – integration of all components of teaching-learning as a system.",
]:
    story.append(Paragraph(f"• {item}", bullet))

story.append(Spacer(1, 0.2*cm))
story.append(Paragraph("2. Latest Approaches to Education", h2))

approaches = [
    ("Transformational Education",
     "Focuses on deep personal change. Encourages critical thinking, self-reflection, and social awareness. Goes beyond rote learning to transform attitudes, values, and behavior."),
    ("Relationship-Based Education",
     "Builds strong teacher-student relationships. Emphasizes trust, respect, empathy. Improves student motivation and engagement."),
    ("Competency-Based Education (CBE)",
     "Students advance by demonstrating mastery of skills. Focuses on outcomes. Each learner progresses at their own pace. Very relevant to nursing education."),
]
for title, desc in approaches:
    story.append(Paragraph(f"► {title}:", h3))
    story.append(Paragraph(desc, body))

story.append(Paragraph("3. Educational Philosophy", h2))
story.append(Paragraph("Philosophy = systematic study of fundamental questions about existence, knowledge, values, and reason.", body))
story.append(Paragraph("Key Educational Philosophies:", bold_body))
phil_data = [
    ["Philosophy", "Key Belief", "Application in Nursing"],
    ["Idealism", "Mind & ideas are primary reality; truth is absolute", "Values, ethics in nursing practice"],
    ["Realism", "Physical world is real; learn through senses", "Lab skills, clinical experience"],
    ["Pragmatism", "Learning by doing; truth is what works", "Problem-based learning, case studies"],
    ["Existentialism", "Individual freedom & personal responsibility", "Patient-centered care, self-reflection"],
    ["Perennialism", "Classical knowledge is timeless", "Core nursing theories and principles"],
    ["Progressivism", "Education should be experiential, democratic", "Active learning, group projects"],
]
phil_table = Table(phil_data, colWidths=[3.5*cm, 5.5*cm, 7*cm])
phil_table.setStyle(TableStyle([
    ('BACKGROUND', (0,0), (-1,0), colors.HexColor('#283593')),
    ('TEXTCOLOR', (0,0), (-1,0), colors.white),
    ('FONTNAME', (0,0), (-1,0), 'Helvetica-Bold'),
    ('FONTSIZE', (0,0), (-1,-1), 8.5),
    ('ROWBACKGROUNDS', (0,1), (-1,-1), [colors.HexColor('#e8eaf6'), colors.white]),
    ('GRID', (0,0), (-1,-1), 0.4, colors.HexColor('#9fa8da')),
    ('VALIGN', (0,0), (-1,-1), 'TOP'),
    ('WORDWRAP', (0,0), (-1,-1), True),
]))
story.append(phil_table)
story.append(Spacer(1, 0.3*cm))

story.append(Paragraph("Philosophy of Nursing Education:", bold_body))
story.append(Paragraph("Nursing education is grounded in humanism – caring, holistic approach, respect for each student's dignity. It combines theoretical knowledge with clinical practice, ethical standards, and professional values.", body))

story.append(Paragraph("4. Teaching-Learning Process", h2))
story.append(Paragraph("Teaching: A deliberate, planned interaction between teacher and learner to bring about desired behavioral changes.", body))
story.append(Paragraph("Learning: A relatively permanent change in behavior as a result of experience, practice, or instruction.", body))

story.append(Paragraph("Nature & Characteristics of Teaching-Learning:", bold_body))
for item in [
    "It is a goal-directed, purposive activity.",
    "It is a social/interactive process between teacher and learner.",
    "It involves change in knowledge, skills, and attitudes (KSA).",
    "It is individualized – different learners learn differently.",
    "It is continuous and lifelong.",
    "It requires motivation from both teacher and learner.",
]:
    story.append(Paragraph(f"• {item}", bullet))

story.append(Paragraph("Principles of Teaching & Learning:", bold_body))
principles = [
    ("Principle of Motivation", "Learning is effective when learners are motivated intrinsically or extrinsically."),
    ("Principle of Readiness", "Learner must be ready (physiologically, psychologically) to learn."),
    ("Principle of Effect", "Learning is strengthened by pleasant outcomes; weakened by unpleasant ones."),
    ("Principle of Repetition/Practice", "Repeated practice strengthens learning (law of exercise)."),
    ("Principle of Primacy", "First impressions are lasting – introduce concepts correctly the first time."),
    ("Principle of Recency", "Most recently learned material is best remembered."),
    ("Principle of Intensity", "Vivid, dramatic, real-life examples promote learning."),
    ("Principle of Freedom", "Learner must be free from fear and anxiety to learn effectively."),
    ("Principle of Active Participation", "Learning is more effective when learners are actively involved."),
]
for name, desc in principles:
    story.append(Paragraph(f"• <b>{name}:</b> {desc}", bullet))

story.append(Paragraph("Barriers to Teaching and Learning:", bold_body))
barriers = {
    "Teacher-related": ["Lack of subject knowledge", "Poor communication skills", "Monotonous teaching style", "Lack of feedback"],
    "Learner-related": ["Poor motivation", "Language barriers", "Anxiety/fear", "Physical/psychological illness", "Poor prior knowledge"],
    "Environment-related": ["Overcrowded classrooms", "Poor lighting/ventilation", "Lack of resources", "Noise"],
    "Institutional": ["Rigid curriculum", "Inadequate facilities", "Poor administrative support"],
}
for cat, items in barriers.items():
    story.append(Paragraph(f"► {cat}:", h3))
    for i in items:
        story.append(Paragraph(f"  – {i}", subbullet))

story.append(Paragraph("5. Learning Theories", h2))
theories = [
    ("Behaviorism (Pavlov, Skinner)", [
        "Learning = change in observable behavior.",
        "Classical conditioning: stimulus-response (Pavlov's dog experiment).",
        "Operant conditioning: reinforcement & punishment shape behavior (Skinner).",
        "Application in nursing: skill drills, clinical checklists, reward-based learning.",
    ]),
    ("Cognitivism (Piaget, Bruner)", [
        "Learning = internal mental processes (thinking, memory, problem-solving).",
        "Piaget's stages of cognitive development (sensorimotor → formal operations).",
        "Bruner's discovery learning – learners construct knowledge actively.",
        "Application: concept mapping, case studies, clinical reasoning.",
    ]),
    ("Humanism (Maslow, Rogers)", [
        "Learner is at the center; learning is self-directed.",
        "Maslow's hierarchy of needs – basic needs must be met before learning.",
        "Rogers' student-centered learning – facilitator role for teacher.",
        "Application: therapeutic relationships, patient education, reflection.",
    ]),
    ("Constructivism (Vygotsky)", [
        "Learners construct knowledge from experiences.",
        "Zone of Proximal Development (ZPD) – what learner can do with guidance.",
        "Scaffolding – temporary support to help learners.",
        "Application: PBL, group work, simulation-based learning.",
    ]),
    ("Social Learning Theory (Bandura)", [
        "Learning through observation and modeling (role modeling).",
        "Self-efficacy – belief in one's ability to perform tasks.",
        "Application: demonstration in skills lab, bedside teaching, peer learning.",
    ]),
]
for name, points in theories:
    story.append(Paragraph(f"► {name}", h3))
    for p in points:
        story.append(Paragraph(f"• {p}", bullet))

story.append(Paragraph("6. Latest Approaches to Learning", h2))
latest = [
    ("Experiential Learning (Kolb)", "Learning through direct experience and reflection. Kolb's cycle: Concrete Experience → Reflective Observation → Abstract Conceptualization → Active Experimentation."),
    ("Reflective Learning", "Learners reflect on their own experiences to gain insight. Promotes critical thinking and self-awareness. Journaling and portfolio are tools."),
    ("Scenario-Based Learning", "Learners solve realistic, complex scenarios. Bridges theory and practice. Used in simulation labs."),
    ("Simulation-Based Learning", "High-fidelity mannequins, virtual patients. Allows safe practice of clinical skills without risk to real patients."),
    ("Blended Learning", "Combination of face-to-face teaching and online learning. Flexible, self-paced. Uses LMS (Learning Management Systems)."),
]
for name, desc in latest:
    story.append(Paragraph(f"► {name}:", bold_body))
    story.append(Paragraph(desc, body))

story.append(PageBreak())

# ---- UNIT II ----
story.append(Paragraph("UNIT II – ASSESSMENT AND PLANNING (6 Hrs Theory)", unit_header))
story.append(Spacer(1, 0.2*cm))

story.append(Paragraph("1. Essential Qualities of a Good Teacher", h2))
qualities = [
    ("Subject Mastery", "Deep knowledge of the subject being taught."),
    ("Communication Skills", "Clear, simple, effective verbal and non-verbal communication."),
    ("Enthusiasm & Motivation", "Passionate about teaching; inspires students."),
    ("Empathy", "Understands students' feelings and challenges."),
    ("Patience", "Adapts to different learning speeds without frustration."),
    ("Fairness", "Treats all students equally and without bias."),
    ("Creativity", "Uses varied teaching methods to engage different learners."),
    ("Professional Ethics", "Models ethical behavior; maintains confidentiality."),
    ("Continuous Learning", "Stays updated with latest developments in nursing and education."),
    ("Role Model", "Demonstrates professional values in practice."),
]
q_data = [["Quality", "Description"]] + qualities
q_table = Table(q_data, colWidths=[5*cm, 11*cm])
q_table.setStyle(TableStyle([
    ('BACKGROUND', (0,0), (-1,0), colors.HexColor('#283593')),
    ('TEXTCOLOR', (0,0), (-1,0), colors.white),
    ('FONTNAME', (0,0), (-1,0), 'Helvetica-Bold'),
    ('FONTSIZE', (0,0), (-1,-1), 9),
    ('ROWBACKGROUNDS', (0,1), (-1,-1), [colors.HexColor('#e8eaf6'), colors.white]),
    ('GRID', (0,0), (-1,-1), 0.4, colors.HexColor('#9fa8da')),
    ('VALIGN', (0,0), (-1,-1), 'TOP'),
]))
story.append(q_table)

story.append(Paragraph("2. Teaching Styles", h2))
story.append(Paragraph("There are 4 main teaching styles (Grasha's model):", bold_body))
styles_data = [
    ["Style", "Description", "Characteristics"],
    ["Formal Authority", "Teacher-centered; relies on status/expertise", "Lectures, sets rules, one-way communication"],
    ["Demonstrator / Model", "Shows how things are done; role model", "Demonstrations, skill labs, leads by example"],
    ["Facilitator", "Student-centered; guides rather than tells", "Discussions, questioning, problem-solving"],
    ["Delegator", "High autonomy given to students", "Self-directed projects, independent study"],
]
st_table = Table(styles_data, colWidths=[4*cm, 6*cm, 6*cm])
st_table.setStyle(TableStyle([
    ('BACKGROUND', (0,0), (-1,0), colors.HexColor('#283593')),
    ('TEXTCOLOR', (0,0), (-1,0), colors.white),
    ('FONTNAME', (0,0), (-1,0), 'Helvetica-Bold'),
    ('FONTSIZE', (0,0), (-1,-1), 9),
    ('ROWBACKGROUNDS', (0,1), (-1,-1), [colors.HexColor('#e8eaf6'), colors.white]),
    ('GRID', (0,0), (-1,-1), 0.4, colors.HexColor('#9fa8da')),
    ('VALIGN', (0,0), (-1,-1), 'TOP'),
]))
story.append(st_table)

story.append(Paragraph("3. Assessment of Learner", h2))

story.append(Paragraph("Types of Learners:", bold_body))
learner_types = [
    ("Visual Learner", "Learns best through charts, diagrams, videos, written notes."),
    ("Auditory Learner", "Learns best through listening – lectures, discussions, podcasts."),
    ("Kinesthetic Learner", "Learns best through hands-on practice – skill labs, simulation."),
    ("Read/Write Learner", "Learns best through reading textbooks and writing notes (VARK model)."),
]
for name, desc in learner_types:
    story.append(Paragraph(f"• <b>{name}:</b> {desc}", bullet))

story.append(Paragraph("Kolb's Learning Style Inventory:", bold_body))
kolb = [
    ("Diverger (Concrete + Reflective)", "Imaginative, good at brainstorming, people-oriented."),
    ("Assimilator (Abstract + Reflective)", "Logical, prefers theories and models, less people-focused."),
    ("Converger (Abstract + Active)", "Problem-solver, prefers technical tasks, unemotional."),
    ("Accommodator (Concrete + Active)", "Risk-taker, hands-on, adapts to new experiences easily."),
]
for name, desc in kolb:
    story.append(Paragraph(f"• <b>{name}:</b> {desc}", bullet))

story.append(Paragraph("Motivational Factors in Learning:", bold_body))
for item in [
    "Personal factors: interest, self-confidence, past success/failure, health.",
    "Environmental factors: classroom environment, peer influence, family support.",
    "Teacher factors: teaching style, enthusiasm, feedback, relationship.",
    "Institutional factors: facilities, curriculum relevance, recognition.",
    "Emotional Intelligence (EI): ability to understand and manage emotions; high EI improves learning.",
]:
    story.append(Paragraph(f"• {item}", bullet))

story.append(Paragraph("Today's Generation of Learners (Millennial/Gen Z):", bold_body))
for item in [
    "Digital natives – comfortable with technology.",
    "Prefer interactive, engaging learning.",
    "Short attention span – need variety in teaching.",
    "Value collaboration and peer learning.",
    "Seek immediate feedback.",
    "Prefer visual content (videos, infographics).",
]:
    story.append(Paragraph(f"• {item}", bullet))

story.append(Paragraph("4. Curriculum Planning", h2))
story.append(Paragraph("Curriculum Definition: A planned set of educational experiences designed to help students achieve specific learning outcomes. Includes content, methods, resources, and evaluation.", body))

story.append(Paragraph("Types of Curriculum:", bold_body))
curr_types = [
    ("Subject-centered", "Organized around specific disciplines/subjects. Traditional approach."),
    ("Learner-centered", "Based on students' needs, interests, and experiences."),
    ("Problem-centered", "Focuses on real-world problems; interdisciplinary."),
    ("Activity-centered", "Emphasizes hands-on activities and projects."),
    ("Competency-based", "Focuses on specific skills and competencies to be mastered."),
    ("Hidden curriculum", "Unintended learning – values, norms, attitudes absorbed implicitly."),
]
for name, desc in curr_types:
    story.append(Paragraph(f"• <b>{name}:</b> {desc}", bullet))

story.append(Paragraph("Curriculum Design Components:", bold_body))
for item in [
    "Philosophy and aims – values and overall goals.",
    "Learning objectives / outcomes – specific, measurable statements.",
    "Content – topics and subject matter.",
    "Teaching-learning activities – methods and strategies.",
    "Assessment and evaluation – how learning is measured.",
    "Sequencing and organization – logical arrangement of content.",
]:
    story.append(Paragraph(f"• {item}", bullet))

story.append(Paragraph("Approaches to Curriculum Design:", bold_body))
for item in [
    "Top-down (product model): objectives → content → methods → evaluation.",
    "Bottom-up (process model): starts with learner needs.",
    "Integrated approach: combines multiple subjects around themes.",
    "Spiral approach: topics revisited at increasing levels of complexity.",
]:
    story.append(Paragraph(f"• {item}", bullet))

story.append(Paragraph("Factors Influencing Curriculum Development:", bold_body))
for item in [
    "Social factors: community needs, culture, values.",
    "Political/governmental factors: national policies, INC regulations.",
    "Economic factors: available resources and budget.",
    "Technological factors: advances in medical/nursing technology.",
    "Professional factors: standards of nursing councils (INC, WHO).",
    "Student-related factors: learner needs and characteristics.",
]:
    story.append(Paragraph(f"• {item}", bullet))

story.append(Paragraph("5. Writing Learning Outcomes / Behavioral Objectives", h2))
story.append(Paragraph("A behavioral objective states what the learner will be ABLE TO DO after instruction.", body))
story.append(Paragraph("SMART Criteria: Specific, Measurable, Achievable, Relevant, Time-bound.", bold_body))
story.append(Paragraph("Bloom's Taxonomy – 3 Domains:", bold_body))

bloom_data = [
    ["Domain", "Levels (Low → High)", "Action Verbs"],
    ["Cognitive (Knowledge)", "Remember → Understand → Apply → Analyze → Evaluate → Create", "Define, explain, apply, analyze, judge, design"],
    ["Affective (Attitude)", "Receiving → Responding → Valuing → Organizing → Characterizing", "Listen, respond, value, organize, display"],
    ["Psychomotor (Skills)", "Perception → Set → Guided response → Mechanism → Complex response", "Demonstrate, practice, perform, assemble, operate"],
]
bloom_t = Table(bloom_data, colWidths=[4*cm, 6.5*cm, 5.5*cm])
bloom_t.setStyle(TableStyle([
    ('BACKGROUND', (0,0), (-1,0), colors.HexColor('#283593')),
    ('TEXTCOLOR', (0,0), (-1,0), colors.white),
    ('FONTNAME', (0,0), (-1,0), 'Helvetica-Bold'),
    ('FONTSIZE', (0,0), (-1,-1), 8.5),
    ('ROWBACKGROUNDS', (0,1), (-1,-1), [colors.HexColor('#e8eaf6'), colors.white]),
    ('GRID', (0,0), (-1,-1), 0.4, colors.HexColor('#9fa8da')),
    ('VALIGN', (0,0), (-1,-1), 'TOP'),
    ('ROWHEIGHT', (0,1), (-1,-1), 35),
]))
story.append(bloom_t)

story.append(Paragraph("Example Learning Outcome:", bold_body))
story.append(Paragraph('"By the end of the session, the student will be able to demonstrate the procedure of wound dressing on a mannequin following aseptic technique without assistance." (Psychomotor domain)', body))

story.append(Paragraph("6. Lesson Plan", h2))
story.append(Paragraph("A lesson plan is a detailed guide for teaching a specific lesson, including objectives, content, teaching methods, learning activities, materials, and evaluation.", body))
story.append(Paragraph("Components of a Lesson Plan:", bold_body))
lp_components = [
    "Subject, Topic, Class/Level, Date, Duration",
    "General Objective",
    "Specific Objectives (at least 3-5)",
    "Previous Knowledge Assumed",
    "Introduction / Set Induction",
    "Presentation (step-by-step content with teaching points)",
    "Teaching Aids",
    "Student Activities",
    "Evaluation / Summary",
    "Homework / Assignment",
]
for c in lp_components:
    story.append(Paragraph(f"• {c}", bullet))

story.append(PageBreak())

# ---- UNIT III ----
story.append(Paragraph("UNIT III – IMPLEMENTATION: TEACHING METHODS (8 Hrs Theory)", unit_header))
story.append(Spacer(1, 0.2*cm))

story.append(Paragraph("1. Classroom Management", h2))
story.append(Paragraph("Definition: The process of ensuring that classroom lessons run smoothly by preventing disruptive behavior and promoting a positive learning environment.", body))
story.append(Paragraph("Principles of Classroom Management:", bold_body))
for item in [
    "Establish clear rules and expectations from day one.",
    "Be consistent in enforcing rules.",
    "Create a safe, respectful, and inclusive environment.",
    "Maintain positive teacher-student relationships.",
    "Use varied teaching strategies to maintain interest.",
    "Provide timely and constructive feedback.",
    "Deal with discipline issues promptly and fairly.",
]:
    story.append(Paragraph(f"• {item}", bullet))

story.append(Paragraph("Strategies for Classroom Management:", bold_body))
for item in [
    "Seating arrangement according to activity type.",
    "Time management – structured schedules.",
    "Transition strategies between activities.",
    "Positive reinforcement for good behavior.",
    "Non-verbal cues (eye contact, gestures) to maintain attention.",
    "Involvement of all students in discussions.",
]:
    story.append(Paragraph(f"• {item}", bullet))

story.append(Paragraph("Classroom Communication:", bold_body))
for item in [
    "Verbal: tone, pitch, clarity, pace of speech.",
    "Non-verbal: body language, facial expressions, gestures.",
    "Written: board work, handouts, assignments.",
    "Facilitators of communication: use of AV aids, open questions, active listening.",
    "Barriers: noise, fear, language differences, poor infrastructure.",
]:
    story.append(Paragraph(f"• {item}", bullet))

story.append(Paragraph("2. ICT in Education", h2))
story.append(Paragraph("ICT (Information Communication Technology) = use of digital tools for teaching and learning.", body))
for item in [
    "E-learning platforms (Moodle, Google Classroom).",
    "Virtual simulation software (vSim for Nursing).",
    "Online video lectures (YouTube, NPTEL).",
    "Electronic health records training.",
    "PowerPoint presentations, digital projectors.",
    "Computer-assisted instruction (CAI).",
    "Mobile learning apps.",
]:
    story.append(Paragraph(f"• {item}", bullet))

story.append(Paragraph("3. Teaching Methods – Features, Advantages & Disadvantages", h2))

methods = [
    ("Lecture Method",
     "Teacher presents information orally to a large group.",
     ["Cost-effective", "Covers large content quickly", "Good for theory"],
     ["One-way communication", "Passive learning", "Not individualized"]),
    ("Group Discussion",
     "Small groups discuss a topic and share findings.",
     ["Active participation", "Develops critical thinking", "Peer learning"],
     ["One person may dominate", "Time-consuming", "Needs skilled facilitation"]),
    ("Microteaching",
     "A scaled-down teaching practice – 5-10 min mini-lesson to a small group, then feedback.",
     ["Develops specific teaching skills", "Immediate feedback", "Low risk"],
     ["Artificial setting", "Limited scope", "Time-intensive"]),
    ("Demonstration & Re-demonstration",
     "Teacher shows a skill; students practice (return demo).",
     ["Best for skill learning", "Visual and kinesthetic", "Ensures safe practice"],
     ["Needs adequate equipment", "Large groups difficult", "Time-consuming"]),
    ("Simulation",
     "Use of mannequins/standardized patients to replicate clinical situations.",
     ["Safe practice environment", "Reduces patient risk", "Builds confidence"],
     ["Expensive equipment", "May not replicate real emotions", "Needs trained faculty"]),
    ("Role Play",
     "Students act out scenarios (patient-nurse interaction).",
     ["Develops communication skills", "Empathy building", "Active engagement"],
     ["Some students may feel embarrassed", "Needs structured debriefing"]),
    ("Self-Directed Learning (SDL)",
     "Students take initiative for their own learning.",
     ["Promotes independence", "Lifelong learning habit", "Flexibility"],
     ["Requires high motivation", "Students may lack direction"]),
    ("Problem-Based Learning (PBL)",
     "Learning organized around complex, real-world problems.",
     ["Critical thinking", "Contextual learning", "Teamwork"],
     ["Time-consuming", "Students may be frustrated without structure", "Faculty-intensive"]),
]

for mname, mdef, madvs, mdisadvs in methods:
    story.append(Paragraph(f"► {mname}", h3))
    story.append(Paragraph(f"<i>{mdef}</i>", body))
    story.append(Paragraph("Advantages: " + " | ".join(madvs), bullet))
    story.append(Paragraph("Disadvantages: " + " | ".join(mdisadvs), bullet))
    story.append(Spacer(1, 0.1*cm))

story.append(Paragraph("4. Active Learning Strategies", h2))
active = [
    ("Team-Based Learning (TBL)", "Students work in permanent teams; pre-class preparation tested by individual + team quizzes."),
    ("Problem-Based Learning", "See above."),
    ("Peer Sharing / Peer Teaching", "Students teach each other; reinforces knowledge of both teacher and learner."),
    ("Case Study Analysis", "Detailed analysis of a clinical case to apply theory to practice."),
    ("Journaling", "Students reflect on clinical experiences through writing in a diary/portfolio."),
    ("Debate", "Formal argument on a topic; develops critical thinking and communication."),
    ("Gaming", "Educational games (puzzles, quizzes) to make learning fun and competitive."),
    ("Inter-professional Education (IPE)", "Students from different health professions learn together to improve collaborative practice."),
]
for name, desc in active:
    story.append(Paragraph(f"• <b>{name}:</b> {desc}", bullet))

story.append(PageBreak())

# ---- UNIT IV ----
story.append(Paragraph("UNIT IV – TEACHING IN CLINICAL SETTING (3 Hrs Theory)", unit_header))
story.append(Spacer(1, 0.2*cm))

story.append(Paragraph("1. Clinical Learning Environment", h2))
story.append(Paragraph("Definition: The setting where students learn clinical skills through direct patient care under supervision.", body))
story.append(Paragraph("Characteristics of a good clinical learning environment:", bold_body))
for item in [
    "Supportive and non-threatening atmosphere.",
    "Adequate patient load for variety of learning experiences.",
    "Availability of skilled clinical teachers/mentors.",
    "Clear expectations and feedback mechanisms.",
    "Well-equipped facilities (wards, ICU, OT, OPD).",
    "Opportunities for supervised practice.",
    "Inter-professional collaboration.",
]:
    story.append(Paragraph(f"• {item}", bullet))

story.append(Paragraph("2. Factors Influencing Selection of Clinical Learning Experiences", h2))
for item in [
    "Course objectives and competencies to be achieved.",
    "Availability of appropriate patients/cases.",
    "Level of student preparation and readiness.",
    "Supervisor availability and expertise.",
    "Safety – student and patient safety must be ensured.",
    "Ethical considerations – patient consent and rights.",
    "Available equipment and resources.",
    "Time available for placement.",
]:
    story.append(Paragraph(f"• {item}", bullet))

story.append(Paragraph("3. Characteristics of Effective Clinical Teacher", h2))
ct_qualities = [
    ("Clinical competence", "Demonstrated expertise in clinical skills and knowledge."),
    ("Teaching ability", "Can explain complex procedures clearly and simply."),
    ("Role modeling", "Demonstrates professional behavior, ethics, and attitudes."),
    ("Supervisory skills", "Provides appropriate guidance without over-controlling."),
    ("Communication", "Clear, approachable, provides timely feedback."),
    ("Humanistic approach", "Respects students; encourages, not intimidates."),
    ("Enthusiasm", "Enthusiastic about nursing and teaching."),
    ("Evidence-based practice", "Integrates current research into teaching."),
]
for name, desc in ct_qualities:
    story.append(Paragraph(f"• <b>{name}:</b> {desc}", bullet))

story.append(Paragraph("4. Practice Models in Clinical Education", h2))
for item in [
    "Preceptorship Model: one-to-one pairing of student with experienced nurse (preceptor).",
    "Mentorship Model: long-term supportive relationship; mentor guides career development.",
    "Team Nursing Model: students assigned to nursing teams; learn from team interactions.",
    "Case Method: student is responsible for all care of one patient.",
    "Modular Nursing: student responsible for care of patients in a specific geographic area.",
]:
    story.append(Paragraph(f"• {item}", bullet))

story.append(Paragraph("5. Clinical Teaching Strategies", h2))
clin_strategies = [
    ("Patient Assignment", "Student assigned specific patients; responsible for their care under supervision."),
    ("Clinical Conference", "Pre or post-clinical meeting to discuss patient cases, share experiences, and plan care."),
    ("Bedside Clinic / Clinical Presentation", "Patient presents clinical findings at bedside; student observes and participates."),
    ("Case Study / Care Study", "In-depth written analysis of a patient's condition, nursing diagnosis, and care plan."),
    ("Nursing Rounds", "Group of students and teacher visit patients systematically to discuss care."),
    ("Concept Mapping", "Visual diagram linking patient problems, interventions, and outcomes."),
    ("Process Recording", "Verbatim written record of a nurse-patient communication; used in psychiatric nursing."),
    ("Debate / Role Play", "Used in clinical settings to develop communication and critical thinking."),
    ("PBL in clinical", "Clinical problem scenarios given to students to solve."),
    ("Written Assignment", "Reflection papers, care plans, drug studies submitted for evaluation."),
    ("Questioning", "Socratic questioning by clinical teacher to stimulate critical thinking during rounds."),
]
for name, desc in clin_strategies:
    story.append(Paragraph(f"• <b>{name}:</b> {desc}", bullet))

story.append(PageBreak())

# ============================================================
# QUICK REVISION – KEY POINTS
# ============================================================
story.append(Paragraph("QUICK REVISION – KEY POINTS TO REMEMBER", unit_header))
story.append(Spacer(1, 0.2*cm))

qr_items = [
    ("Ed. Technology definition", "Systematic application of scientific knowledge about T&L to improve education quality."),
    ("3 Approaches of Ed. Tech", "Hardware, Software, Systems approach"),
    ("3 Latest approaches to education", "Transformational, Relationship-based, Competency-based"),
    ("Educational Philosophy", "Idealism, Realism, Pragmatism, Existentialism, Perennialism, Progressivism"),
    ("Teaching Styles (Grasha)", "Formal Authority, Demonstrator, Facilitator, Delegator"),
    ("VARK Learning Styles", "Visual, Auditory, Read/Write, Kinesthetic"),
    ("Kolb's 4 styles", "Diverger, Assimilator, Converger, Accommodator"),
    ("Bloom's 3 Domains", "Cognitive, Affective, Psychomotor"),
    ("Curriculum Types", "Subject-centered, Learner-centered, Problem-centered, Competency-based, Hidden"),
    ("Lesson Plan Components", "Objectives, Content, Method, AV aids, Evaluation"),
    ("Microteaching steps", "Plan → Teach (5-10 min) → Observe → Feedback → Re-teach"),
    ("Active Learning Strategies", "TBL, PBL, Peer sharing, Case study, Journaling, Debate, Gaming, IPE"),
    ("Clinical Teaching Strategies", "Patient assignment, Bedside clinic, Case study, Nursing rounds, Process recording"),
    ("Process Recording", "Verbatim record of nurse-patient communication; used in psychiatric nursing"),
    ("Effective Clinical Teacher", "Clinically competent + Good communicator + Role model + Gives feedback"),
]
qr_data = [["Key Concept", "Answer"]] + qr_items
qr_table = Table(qr_data, colWidths=[6*cm, 10*cm])
qr_table.setStyle(TableStyle([
    ('BACKGROUND', (0,0), (-1,0), colors.HexColor('#b71c1c')),
    ('TEXTCOLOR', (0,0), (-1,0), colors.white),
    ('FONTNAME', (0,0), (-1,0), 'Helvetica-Bold'),
    ('FONTSIZE', (0,0), (-1,-1), 9),
    ('ROWBACKGROUNDS', (0,1), (-1,-1), [colors.HexColor('#fff8e1'), colors.white]),
    ('GRID', (0,0), (-1,-1), 0.4, colors.HexColor('#ef9a9a')),
    ('VALIGN', (0,0), (-1,-1), 'TOP'),
    ('FONTNAME', (0,1), (0,-1), 'Helvetica-Bold'),
    ('TEXTCOLOR', (0,1), (0,-1), colors.HexColor('#880000')),
]))
story.append(qr_table)
story.append(PageBreak())

# ============================================================
# SAMPLE PAPERS
# ============================================================
story.append(Paragraph("PART 2: SAMPLE EXAM PAPERS", title_style))
story.append(HRFlowable(width="100%", thickness=2, color=colors.HexColor('#880000')))
story.append(Spacer(1, 0.3*cm))
story.append(Paragraph("Paper Pattern: 30 Marks | MCQ (4×1=4) + Short Ans (3×2=6) + Short Notes (2×5=10) + Essay (1×10=10)", paper_sub))
story.append(PageBreak())

# ------- SAMPLE PAPERS DATA -------
papers = [
  {
    "no": 1,
    "mcqs": [
        ("Which of the following is a latest approach to education?",
         ["A) Rote learning", "B) Competency-based education ✓", "C) Passive learning", "D) Teacher-centered learning"],
         "B"),
        ("Kolb's experiential learning cycle starts with:",
         ["A) Abstract Conceptualization", "B) Active Experimentation", "C) Concrete Experience ✓", "D) Reflective Observation"],
         "C"),
        ("Which teaching style gives maximum autonomy to students?",
         ["A) Formal Authority", "B) Demonstrator", "C) Facilitator", "D) Delegator ✓"],
         "D"),
        ("Process recording is most commonly used in:",
         ["A) Medical-surgical nursing", "B) Psychiatric nursing ✓", "C) Paediatric nursing", "D) Obstetric nursing"],
         "B"),
    ],
    "short_ans": [
        ("Define educational technology. State its aims.", "(2 Marks)"),
        ("What are the barriers to teaching and learning?", "(2 Marks)"),
        ("List any four qualities of an effective clinical teacher.", "(2 Marks)"),
    ],
    "short_notes": [
        ("Write a short note on Bloom's Taxonomy.", "(5 Marks)"),
        ("Write a short note on Classroom Management.", "(5 Marks)"),
    ],
    "essay": ("Describe the various teaching methods used in classroom and skill lab. Include features, advantages, and disadvantages of any three methods.", "(10 Marks)"),
  },
  {
    "no": 2,
    "mcqs": [
        ("The software approach of educational technology includes:",
         ["A) Projectors", "B) Programmed learning materials ✓", "C) Computers", "D) Simulators"],
         "B"),
        ("Maslow's theory belongs to which school of learning?",
         ["A) Behaviorism", "B) Cognitivism", "C) Humanism ✓", "D) Constructivism"],
         "C"),
        ("VARK model was developed by:",
         ["A) Kolb", "B) Neil Fleming ✓", "C) Piaget", "D) Bloom"],
         "B"),
        ("Which of the following is an active learning strategy?",
         ["A) Lecture", "B) Demonstration", "C) Problem-Based Learning ✓", "D) One-to-one instruction"],
         "C"),
    ],
    "short_ans": [
        ("Define curriculum. List any three types of curriculum.", "(2 Marks)"),
        ("What is microteaching? State its steps.", "(2 Marks)"),
        ("List any four factors influencing selection of clinical learning experiences.", "(2 Marks)"),
    ],
    "short_notes": [
        ("Write a short note on Learning Theories.", "(5 Marks)"),
        ("Write a short note on the Characteristics of Effective Clinical Teacher.", "(5 Marks)"),
    ],
    "essay": ("Discuss Curriculum Development in nursing education. Include definition, types, design components, and factors influencing curriculum development.", "(10 Marks)"),
  },
  {
    "no": 3,
    "mcqs": [
        ("Experiential learning theory was given by:",
         ["A) Piaget", "B) David Kolb ✓", "C) Vygotsky", "D) Skinner"],
         "B"),
        ("Which teaching style is best suited for skill demonstration?",
         ["A) Formal Authority", "B) Demonstrator ✓", "C) Delegator", "D) Negotiator"],
         "B"),
        ("The 'Zone of Proximal Development' is a concept by:",
         ["A) Piaget", "B) Bandura", "C) Vygotsky ✓", "D) Bruner"],
         "C"),
        ("Bedside clinic is a type of:",
         ["A) Classroom teaching strategy", "B) Assessment tool", "C) Clinical teaching strategy ✓", "D) Evaluation method"],
         "C"),
    ],
    "short_ans": [
        ("What is blended learning? State its advantages.", "(2 Marks)"),
        ("Define behavioral objectives. Give one example.", "(2 Marks)"),
        ("What is process recording? State its purpose.", "(2 Marks)"),
    ],
    "short_notes": [
        ("Write a short note on Lesson Plan – its meaning and components.", "(5 Marks)"),
        ("Write a short note on ICT in nursing education.", "(5 Marks)"),
    ],
    "essay": ("Describe the Teaching-Learning Process in detail. Include definitions, nature, characteristics, principles, and barriers to teaching and learning.", "(10 Marks)"),
  },
  {
    "no": 4,
    "mcqs": [
        ("Which learning theory emphasizes operant conditioning?",
         ["A) Piaget", "B) Bandura", "C) Rogers", "D) B.F. Skinner ✓"],
         "D"),
        ("Which domain of Bloom's taxonomy includes 'demonstrate'?",
         ["A) Cognitive", "B) Affective", "C) Psychomotor ✓", "D) None"],
         "C"),
        ("Self-directed learning promotes:",
         ["A) Dependency on teacher", "B) Rote memorization", "C) Lifelong learning ✓", "D) Passive learning"],
         "C"),
        ("Inter-professional education (IPE) means:",
         ["A) Teaching only nurses together", "B) Health professions learning together ✓", "C) Online education", "D) Independent study"],
         "B"),
    ],
    "short_ans": [
        ("What are the teaching styles according to Grasha? Name and briefly describe each.", "(2 Marks)"),
        ("List any four principles of teaching and learning.", "(2 Marks)"),
        ("What is a clinical conference? State its purpose.", "(2 Marks)"),
    ],
    "short_notes": [
        ("Write a short note on Types of Learners (VARK model).", "(5 Marks)"),
        ("Write a short note on Simulation as a teaching method.", "(5 Marks)"),
    ],
    "essay": ("Explain the concept of Clinical Teaching in nursing education. Discuss the clinical learning environment, characteristics of an effective clinical teacher, and clinical teaching strategies in detail.", "(10 Marks)"),
  },
  {
    "no": 5,
    "mcqs": [
        ("The philosophy that believes 'learning by doing' is:",
         ["A) Idealism", "B) Realism", "C) Pragmatism ✓", "D) Existentialism"],
         "C"),
        ("Concept mapping is used in clinical teaching to:",
         ["A) Grade students", "B) Visualize relationships between patient problems and care ✓", "C) Record medications", "D) Plan the timetable"],
         "B"),
        ("Motivational factors of learning include:",
         ["A) Personal and environmental factors only", "B) Teacher factors only", "C) Personal, environmental, teacher & institutional factors ✓", "D) Institutional factors only"],
         "C"),
        ("Which is NOT an active learning strategy?",
         ["A) Debate", "B) Lecture ✓", "C) Journaling", "D) Gaming"],
         "B"),
    ],
    "short_ans": [
        ("Define educational philosophy. Name any three educational philosophies.", "(2 Marks)"),
        ("What is problem-based learning? State its advantages.", "(2 Marks)"),
        ("List any four factors that motivate a learner.", "(2 Marks)"),
    ],
    "short_notes": [
        ("Write a short note on Curriculum Design – components and approaches.", "(5 Marks)"),
        ("Write a short note on Educational Philosophy in nursing education.", "(5 Marks)"),
    ],
    "essay": ("Discuss Assessment and Planning in teaching. Include qualities of an effective teacher, teaching styles, assessment of learner, types of learners, and motivational factors with examples from nursing education.", "(10 Marks)"),
  },
]

# ------- RENDER EACH PAPER -------
for paper in papers:
    story.append(Paragraph(f"SAMPLE PAPER {paper['no']}", paper_title))
    story.append(HRFlowable(width="100%", thickness=1.5, color=colors.HexColor('#880000')))
    story.append(Paragraph("BSc Nursing – 3rd Year | Sem V | Educational Technology | Total Marks: 30 | Time: 1.5 Hours", paper_sub))
    story.append(Spacer(1, 0.2*cm))

    # SECTION A
    story.append(Paragraph("SECTION A – Multiple Choice Questions (4 × 1 = 4 Marks)", section_q))
    story.append(Paragraph("Choose the correct answer:", q_style))
    for i, (qtext, opts, ans) in enumerate(paper['mcqs'], 1):
        story.append(Paragraph(f"Q{i}. {qtext}", q_style))
        for opt in opts:
            color = '#006400' if '✓' in opt else '#333333'
            story.append(Paragraph(f"    {opt}", ParagraphStyle('opt', parent=styles['Normal'],
                fontSize=9.5, leftIndent=28, textColor=colors.HexColor(color), spaceAfter=1)))
        story.append(Spacer(1, 0.1*cm))

    # SECTION B
    story.append(Paragraph("SECTION B – Short Answer Questions (3 × 2 = 6 Marks)", section_q))
    story.append(Paragraph("Answer any THREE of the following in 4-6 lines each:", q_style))
    for i, (qtext, marks) in enumerate(paper['short_ans'], 1):
        story.append(Paragraph(f"Q{i}. {qtext}  <font color='#880000'>{marks}</font>", q_style))
        story.append(Paragraph("_" * 80, ans_hint))

    # SECTION C
    story.append(Paragraph("SECTION C – Short Notes (2 × 5 = 10 Marks)", section_q))
    story.append(Paragraph("Write short notes on ANY TWO of the following:", q_style))
    for i, (qtext, marks) in enumerate(paper['short_notes'], 1):
        story.append(Paragraph(f"Q{i}. {qtext}  <font color='#880000'>{marks}</font>", q_style))
        story.append(Paragraph("_" * 80, ans_hint))

    # SECTION D
    story.append(Paragraph("SECTION D – Essay Type Question (1 × 10 = 10 Marks)", section_q))
    story.append(Paragraph(f"Q1. {paper['essay']}  <font color='#880000'>{''}</font>", q_style))
    story.append(Paragraph("_" * 80, ans_hint))

    story.append(PageBreak())

# ============================================================
# ANSWER KEY
# ============================================================
story.append(Paragraph("MCQ ANSWER KEY – ALL 5 SAMPLE PAPERS", unit_header))
story.append(Spacer(1, 0.3*cm))
ak_data = [["Paper", "Q1", "Q2", "Q3", "Q4"]]
for paper in papers:
    row = [f"Paper {paper['no']}"]
    for _, _, ans in paper['mcqs']:
        row.append(ans)
    ak_data.append(row)
ak_table = Table(ak_data, colWidths=[3*cm, 3*cm, 3*cm, 3*cm, 3*cm])
ak_table.setStyle(TableStyle([
    ('BACKGROUND', (0,0), (-1,0), colors.HexColor('#1a237e')),
    ('TEXTCOLOR', (0,0), (-1,0), colors.white),
    ('FONTNAME', (0,0), (-1,0), 'Helvetica-Bold'),
    ('FONTSIZE', (0,0), (-1,-1), 10),
    ('ROWBACKGROUNDS', (0,1), (-1,-1), [colors.HexColor('#e8f5e9'), colors.white]),
    ('GRID', (0,0), (-1,-1), 0.5, colors.HexColor('#9fa8da')),
    ('ALIGN', (0,0), (-1,-1), 'CENTER'),
    ('VALIGN', (0,0), (-1,-1), 'MIDDLE'),
    ('ROWHEIGHT', (0,0), (-1,-1), 24),
    ('FONTNAME', (0,1), (0,-1), 'Helvetica-Bold'),
    ('TEXTCOLOR', (1,1), (-1,-1), colors.HexColor('#1b5e20')),
    ('FONTNAME', (1,1), (-1,-1), 'Helvetica-Bold'),
]))
story.append(ak_table)
story.append(Spacer(1, 0.5*cm))
story.append(Paragraph("All the best for your exam! Study systematically and focus on unit-wise key topics.", 
    ParagraphStyle('footer', parent=styles['Normal'], fontSize=11, textColor=colors.HexColor('#1a237e'),
                   fontName='Helvetica-Bold', alignment=TA_CENTER)))

# BUILD
doc.build(story)
print(f"PDF created: {OUTPUT_PATH}")
Running Command

cd /tmp/workspace/nursing-exam && python create_notes_pdf.py 2>&1

Running Command

ls -lh /tmp/workspace/nursing-exam/BSc_Nursing_Sem5_Educational_Technology_Notes_and_Papers.pdf

Your PDF is ready! Download it here:

BSc Nursing Sem5 Educational Technology Notes and Papers

PDF Document · PDF


What's inside the PDF (all 4 units covered):
PART 1 – STUDY NOTES:
  • Unit I: Educational Technology (definition, aims, approaches, educational philosophies, learning theories - Behaviorism/Cognitivism/Humanism/Constructivism, teaching-learning principles, barriers, latest approaches - Experiential/Reflective/Simulation/Blended learning)
  • Unit II: Assessment & Planning (teacher qualities, 4 teaching styles, VARK & Kolb's learning styles, motivational factors, curriculum definition/types/design, Bloom's Taxonomy, lesson plan components)
  • Unit III: Teaching Methods (classroom management, ICT in education, lecture/demo/microteaching/simulation/PBL with advantages & disadvantages, active learning strategies)
  • Unit IV: Clinical Teaching (clinical learning environment, factors influencing clinical placement, effective clinical teacher qualities, clinical strategies - bedside clinic, process recording, concept mapping, case study, nursing rounds)
  • Quick Revision Table with 15 key MCQ-style flashpoints
PART 2 – 5 SAMPLE PAPERS (30 marks each):
  • Section A: 4 MCQs (answers highlighted in green)
  • Section B: 3 Short Answer questions (2 marks each)
  • Section C: 2 Short Notes (5 marks each)
  • Section D: 1 Essay question (10 marks)
  • MCQ Answer Key at the end
Good luck for tomorrow's exam! Focus especially on learning theories, teaching methods with adv/disadv, Bloom's taxonomy, and clinical teaching strategies - those are the most essay-friendly topics.
This is a shared conversation. Sign in to Orris to start your own chat.