XForms Tutorial > I-6-1. Introduction
HTML을 기반으로 하는 기존의 Form 기술은 지난 10년간 전혀 발전하지 못했다. 그로 인해 다양한 장치들에 작동하는 플랫폼에서 그대로 이용하기에는 그 자체적 한계를 가지고 있으며, 또한 웹 인터페이스를 강화하기 위한 요건 들을 포함하고 있지 못하다. 이러한 인식과 한계에서 1999년 Mozquito.com은 HTML 안에서의 더 나은 웹 양식을 위해 FML(Form Markup Language) 을 발표하게 된다. W3C HTML 워킹그룹은 FML을 기반으로 “XForms” 이라는 이름하에 다음 세대의 웹 Form을 위한 요건 정의를 하게된다. W3C의 XForms는 HTML Form의 문제들을 해결하기 위해 개발된 웹 인터페이스 정의 언어이며, 그 표현을 위한 방법의 하나로 XForms Controls가 위치한다.
XForms User Interface Control (Form Control)은 Markup element 들을 사용하여 선언하는 것을 의미하며, Attribute 정의를 통해 그 상세 양식들을 정의할 수 있다.
XForms Form Control Element
Element | Attributes | Minimal Content Model |
input | Common, UI Common, Single Node Binding, inputmode (xsd:string), incremental (xsd:boolean) | label, (UI Common)* |
secret | Common, UI Common, Single Node Binding, inputmode (xsd:string), incremental (xsd:boolean) | label, (UI Common)* |
textarea | Common, UI Common, Single Node Binding, inputmode (xsd:string), incremental (xsd:boolean) | label, (UI Common)* |
output | Common, Single Node Binding(optional), appearance ("full"|"compact"|"minimal"|xforms:QNameButNotNCNAME) value (XPathExpression) | label? |
upload | Common, UI Common, Single Node Binding, mediatype (xsd:string), incremental (xsd:boolean) | label,filename?, mediatype?, (UI Common)* |
range | Common, UI Common, Single Node Binding, start (xsd:string), end (xsd:string), step (xsd:string), incremental (xsd:boolean) | label, (UI Common)* |
trigger | Common, UI Common, Single Node Binding (optional) | label, (UI Common)* |
submit | Common, UI Common, Single Node Binding(optional), submission (xsd:IDREF) | label, (UI Common)* |
select | Common, UI Common, Single Node Binding, selection ("open" | "closed"), incremental (xsd:boolean) | label, (List UI Common )+, (UI Common)* |
select1 | Common, UI Common, Single Node Binding, selection ("open" | "closed"), incremental (xsd:boolean) | label, (List UI Common )+, (UI Common)* |
choices | Common | label?, (List UI Common)+ |
item | Common | label, value, (UI Common)* |
filename | Common, Single Node Binding | EMPTY |
mediatype | Common, Single Node Binding | EMPTY |
value | Common, Single Node Binding (optional) | (PCDATA|ANY)* |
label | Common, Single Node Binding (optional), Linking | (PCDATA|(UI Inline))* |
help | Common Single Node Binding (optional), Linking | (PCDATA|(UI Inline))* |
hint | Common, Single Node Binding (optional), Linking | (PCDATA|(UI Inline))* |
alert | Common, Single Node Binding (optional), Linking | (PCDATA|(UI Inline))* |
위에서 정의되어 있는 XForms Form Control Element 들은 다음과 같은 Content Set 으로 구분하여 정의할 수 있다
Content Set | Minimal Content Model |
UI Common | (help|hint|alert|Action)* |
List UI Common | choices|item|itemset)+ |
Form Controls | input|secret|textarea|output|upload|range|trigger|submit|select|select1)* |
UI Inline | (output)* |
appearance: UI Common Attributes를 사용할 수 있는 Element, 예를 들어 input, secret, select 등 에서는 appearance 라는 Optional Attribute를 사용할 수 있다.
Common: XForms Core Attribute Collections의 Common Attributes 설명 참조할 것
UI Common: help | hint | alert | Action으로 구성되어 있는 Content Set을 칭하며, 그 구체적인 내용은 Additional Elements 설명 참조할 것
Single node Binding: XForms Core Attribute Collections의 Single node Binding Attributes 설명 참조할 것
Linking: XForms Core Attribute Collections의 Linking Attributes 설명 참조할 것
댓글 없음:
댓글 쓰기