import type { Metadata } from "next"; import PageHeader from "@/components/PageHeader"; import Reveal from "@/components/Reveal"; import SectionLabel from "@/components/SectionLabel"; import Counter from "@/components/Counter"; import Marquee from "@/components/Marquee"; export const metadata: Metadata = { title: "논문 (Publications)", description: "사물인터넷 표준 연구실의 대표 논문 목록 (placeholder).", }; // CUSTOMIZATION HOOK: replace placeholder publications below. const publications = [ { year: "2025", type: "Journal", title: "메타버스 상호운용을 위한 공통 정보 모델 설계 및 oneM2M 매핑 (Design of a Common Information Model for Metaverse Interoperability over oneM2M)", authors: "Hong G., Researcher A., et al.", venue: "한국통신학회논문지 (J-KICS), Vol. 50, No. 3", }, { year: "2025", type: "Conference", title: "QUIC-based Orchestration Architecture for Low-Latency Multi-Agent Communication", authors: "Researcher B., Hong G.", venue: "IEEE International Conference on Communications (ICC)", }, { year: "2024", type: "Journal", title: "W3C WoT Thing Description를 활용한 이종 메타버스 자산의 의미 보존 변환 (Semantic-Preserving Mapping of Cross-Platform Metaverse Assets Using W3C WoT)", authors: "Researcher C., Hong G., et al.", venue: "정보과학회논문지 (KIISE Transactions), Vol. 51, No. 11", }, { year: "2024", type: "Conference", title: "Stream Multiplexing Strategies for Agent Message Routing over QUIC", authors: "Researcher D., Researcher B., Hong G.", venue: "ACM/IEEE Symposium on Edge Computing (SEC)", }, { year: "2023", type: "Conference", title: "oneM2M 기반 IoT 디바이스 상호운용성 적합성 검증 프레임워크 (A Conformance Testing Framework for oneM2M-based IoT Interoperability)", authors: "Researcher E., Hong G.", venue: "한국정보과학회 학술발표회 (KSC)", }, ]; // CUSTOMIZATION HOOK: venue ticker. const venueTicker = [ "J-KICS", "IEEE ICC", "KIISE TRANSACTIONS", "ACM/IEEE SEC", "KSC", "oneM2M", "W3C WoT", "IETF QUIC", ]; // Accent per publication type, drawn from the editorial palette. const typeAccent: Record = { Journal: { text: "text-vermillion", rule: "bg-vermillion" }, Conference: { text: "text-cobalt", rule: "bg-cobalt" }, }; // Derived figures. const journalCount = publications.filter((p) => p.type === "Journal").length; const confCount = publications.filter((p) => p.type === "Conference").length; const figures = [ { value: publications.length, label: "전체 논문 · Total Publications" }, { value: journalCount, label: "저널 · Journal" }, { value: confCount, label: "학회 · Conference" }, ]; export default function PublicationsPage() { return ( <> {/* Venue marquee band */} {/* ============ FIGURES ============ */}
{figures.map((f, i) => (

{f.label}

))}
{/* ============ PUBLICATION LIST ============ */}
    {publications.map((p, i) => { const accent = typeAccent[p.type] ?? { text: "text-ink", rule: "bg-ink", }; // Reveal `as="li"` keeps the
      direct-child contract (HTML spec: //
        may only contain
      1. /