DML(Diagram Markup Language) 시스템의 설계 및 구현

A Design and Implementation of DML(Diagram Markup Language) System

  • 김성근 (가톨릭상지대학 컴퓨터정보계열) ;
  • 김영철 (숭실대학교 정보미디어기술연구소) ;
  • 유재우 (숭실대학교 시스템소프트웨어 연구실)
  • 발행 : 2005.03.01

초록

다이어그램은 직관성과 간결성을 갖는 장점이 있어 현재의 컴퓨팅 환경에서 많은 분야에 널리 사용되고 있다. 하지만 다이어그램 작성에 대한 표준화된 방법의 부재(不在)로 소프트웨어 상호간의 자료공유가 어렵고 다이어그램 컴포넌트와 규칙을 직접 프로그래밍 해야 하기 때문에 많은 시간과 노력을 필요로 한다. 이러한 문제점을 해결하고자 본 논문에서는 표준화된 문서규약인 XML을 이용해 다이어그램 컴포넌트의 형태와 행위를 정의하는 방법, 다이어그램의 규칙과 의미를 기술하는 방법에 대해 제안하고 제안한 XML 문서가 실행될 수 있는 다이어그램 시스템의 설계 및 구현에 관하여 논의한다. 본 다이어그램 시스템에서는 DML 그래픽 편집기를 제공하여 WYSWYG 방식으로 다이어그램 컴포넌트를 정의하고 자동으로 DML 문서를 생성할 수 있도록 함으로써 더욱 효율적으로 새로운 다이어그램을 개발할 수 있도록 하였다. 뿐만 아니라 DTD를 이용해 다이어그램에 대한 문법을 정의함으로써 문서의 구조를 정의하는 DTD에 대한 의미적 일관성을 유지하였으며 Semantic Definition XML을 이용하여 의미를 기술할 수 있도록 하였다. 또한 다이어그램 시스템에서 다이어그램 문장에 대한 문법검사와 의미실행의 방법은 VPL(Visual Programming Language)의 여러 개념들을 이용하였다.

The diagram has a intuition and simplicity So, it is widely used in various fields in current computing environment. But, because of the absence of a standard diagram specification method, we have difficulty in exchanging the diagram data between different diagram software and besides, we spend much money and time to code diagram component, rules and semantics to which diagram would be applied. So We propose a method for defining diagram component's shapes and actions, diagram's rules and semantics using XML. And We design and implement the diagram system which execute XML document specifying diagram. In the diagram system, We can define diagram component in WISWIG manner and generate DML document automatically. So We can develop diagram system more efficiently. And by defining diagram rules using DTD, we also achieve the consistency of DTD meaning. And We propose Semantic Definition XML for specifying diagram semantics. So, diagram sentence which drawn by users could be given semantics and executed in diagram system. In this thesis, many VPL(Visual Programming Language) concepts were adopted to implement diagram system environment.

키워드

참고문헌

  1. Booch, G., Rumbaugh, J. and Jacobson, I., 'The Unified Modeling Language User Guide', Addison-Wesley, 1999
  2. Scalable Vector Graphics, http://www.w3.org/Graphics/SVG
  3. Vector Markup Language, http://www.w3.org/TR/NOTE-VML, 1998
  4. Extensible Markup Language (XML) 1.0, http://www.w3.org/TR/2000fREC-xml-20001006
  5. Simple Object Access Protocol (SOAP) 1.1, 2000. http://www.w3.org/TR/SOAP
  6. XML Query, http://www.w3.org/XML/Query
  7. Chemical Markup Language, http://www.xml-cml.org
  8. Mathematical Markup Language, http://www.w3.org/Math
  9. Mark Minas, 'Concept and realization of a diagram editor generator based on hypergraph transformation', Journal of Science of Computer-Programming(SCP), 2001
  10. Mark Minas and Oliver Koth, Generating Diagram Editors with DiaGen, Proc. of the Int'l Workshop with Industrial Relevance, pp. 433-440, Sep., 1999
  11. Jukka Paakki, 'Attribute Grammar Paradigm -- A High-level Methodology in Language Implementation', ACM Computing Surveys, Vol. 27. No.2, pp. 197-255, 1995
  12. Extensible Graph Markup and Modeling Language, http://www.cs.rpi.edu/-puninj/XGMML
  13. XSL Transformations, http://www.w3.org/TR/xslt
  14. Document Object Model, http://www.w3.org/DOM
  15. Robert W, 'Sebesta, Concepts of programming language', Addison-Wesley, p. 122-205, 1999