Summary

  • W3C는 1998년 4월 7일 MathML 1.0을 권고안으로 발표했다. 권고안이 된 첫 XML 응용으로, 수학 표기와 내용을 웹에서 다룰 공통 언어를 마련했다.
  • 표현 마크업은 분수와 첨자 같은 모양을, 내용 마크업은 연산과 관계를 기술했다. 실제 활용에는 그 언어를 쓰는 편집기와 표시 프로그램이 필요했다.

수식을 GIF로 붙이는 일은 고장 난 기계의 사진을 수리공에게 내미는 것과 비슷하다. 어떻게 생겼는지는 보인다. 나사를 풀 수는 없다. W3C가 1998년에 설명한 웹에서는 수학 표기가 글과 이미지의 조합인 경우가 많았다. 식의 일부를 검색하거나, 한 항만 복사해 다른 도구로 옮기거나, 계산 프로그램이 식을 해석하게 만들기 어려웠다. 문서끼리는 연결하면서 문서 속 수식은 액자에 가뒀던 셈이다.

액자도 독자에게 꼭 친절하지 않았다. 한 글자 크기에 맞춰 만든 그림은 글꼴을 키우면 작아 보인다. 흰 배경을 가진 이미지의 테두리는 페이지 색이 달라지면 하얗게 번질 수 있다. 본문 줄과 수식의 기준선을 맞추기 어렵고, 인쇄하면 선명한 글자 옆에 낮은 해상도의 수식이 남는다. 대체 설명을 붙여도 픽셀에서 연산 구조가 되살아나지는 않는다. GIF는 표정을 보존했지만 생각의 뼈대를 보존하지 못했다.

MathML 1.0 권고안은 두 종류의 마크업을 내놓았다. 표현 쪽은 분수, 위첨자, 행과 연산자가 어떻게 놓이는지 다룬다. 내용 쪽은 어떤 연산이 어떤 대상에 적용되고 무엇과 관계를 맺는지 적는다. 권고안에는 표현 요소 28개와 내용 요소 75개가 있다. 독자에게 필요한 모양을 만들면서 다른 소프트웨어에 건넬 구조도 남기는 설계였다.

두 방식을 섞을 때에는 규칙이 따른다. 권고안 제5장은 표현식이 자연스럽게 그려지고 내용식에는 분명한 해석이 남아야 한다고 설명한다. 익숙하게 보이는 기호라도 정확한 연산을 알리려면 주석이 필요한 예가 있다. 프로그램에 기호의 얼굴만 보여 주고 계산까지 알아서 하라고 할 수는 없다. MathML은 모양과 뜻 사이의 이 간격을 기술적 문제로 받아들였다.

4월 7일 W3C 발표는 MathML이 W3C 권고안에 오른 첫 XML 응용이라고 밝혔다. 사양은 저자들이 태그를 일일이 치기보다 수식 편집기와 변환기를 쓸 것이라 예상했다. 좋은 인쇄, 음성, 점자, 검색, 수학 소프트웨어와의 교환도 목표였다. W3C는 시험용 브라우저 겸 편집기 Amaya의 MathML 지원을 언급했다. 공통 문법을 만든 날과 모든 도구가 그 문법을 잘 쓰게 되는 날은 다르다.

1998년의 변화는 수식의 신분이었다. 보기 좋은 작은 그림에 머무는 대신 웹 문서가 운반할 수 있는 구조가 됐다. 사람은 기호를 읽고, 검색 도구는 안을 살피고, 편집기는 일부를 고칠 수 있다. 수식이 액자 밖 작업대에 올라온 것이다.