사용자 인터페이스 표시 언어

User interface markup language

사용자 인터페이스 마크업 언어그래픽 사용자 인터페이스와 컨트롤을 렌더링하고 설명하는 마크업 언어다.이러한 마크업 언어의 대부분은 XML의 방언이며 제어 렌더링과 추가 스크립트 가능성을 위해 기존의 스크립팅 언어 엔진, 대개 자바스크립트 엔진에 의존한다.

사용자 인터페이스 마크업 언어의 개념은 주로 사용자 인터페이스의 설계, 개발 및 기능에서 "의 재발명"을 방지하고자 하는 욕구에 기초한다. 이러한 재발명은 사용자 인터페이스 전체에 대해 스크립트를 코딩하는 형태로 나타난다.일반적인 사용자 인터페이스 마크업 언어는 자주 재사용되는 프로그램이나 스크립트 코드를 마크업 형태로 공고화하여 기능에 초점을 맞추는 대신 이해할 수 있는 사투리로 사용자 인터페이스 설계에 더 쉽게 집중할 수 있게 한다.

사용자 인터페이스 마크업 언어는 대부분의 마크업 및 프로그래밍 언어와 마찬가지로 하위 응용 프로그램 런타임에 의존하여 마크업 코드를 원하는 형태로 처리 및 출력할 수 있는 프로그램 코드로 해석하고 렌더링한다.XML 기반 사용자 인터페이스 마크업 언어에서 마크업은 대개 애플리케이션의 코드나 동적으로 로드된 사용자 스크립트에 의해 런타임에 조작될 수 있는 노드의 트리로 해석되고 표현된다.

사용자 인터페이스 마크업 언어

XFD

XML Form Definition의 약자인 XFD는 Abbott Informatics가 개발한 STARLMS 제품(http://www.starlims.com[permanent dead link]) 뒤에 있는 사용자 인터페이스 마크업 언어다.STARLMS 제품은 XFD 언어를 사용하여 시각적 양식을 작성하고 실행할 수 있는 런타임 및 디자인 타임 툴의 전체 에코시스템을 갖추고 있다.STARLMS v10은 Microsoft 를 사용하여 개발된 XFD 런타임에 의해 구동된다.NET Framework 및 Internet Explorer 브라우저에서 호스팅.STARLMS v11은 XFD를 HTML5 호환 브라우저에서 실행되도록 설계된 HTML5 호환 데이터로 변환하는 서버측 변환 엔진을 기반으로 한 추가 XFD 엔진을 도입했다.XFD는 JavaScript 기반 언어로 프로그래밍할 수 있다.

QML

QML은 모바일에서 데스크탑에 이르는 기기에 하드웨어 가속 OpenGL로 구동되는 사용자 인터페이스를 만들기 위한 크로스 플랫폼 마크업 언어다.QML 인터페이스는 JavaScript 언어를 사용하여 조작된다.QML은 트롤텍이 만든 Qt 프로젝트의 일부로서, 당시 노키아가 소유했고 현재 디지아가 소유하고 있다.

MXML

MXML은 2004년 3월 매크로메디아가 도입한 XML 기반 사용자 인터페이스 마크업 언어다.현재 오픈 소스(http://opensource.adobe.com) Adobe Flex SDK 버전 4. MXML 파일은 Flex SDK를 통해 Flash SWF로 컴파일되며, 인터넷 브라우저, Adobe Flash 플러그인 또는 Open Source Adobe AIR SDK를 통해 독립 실행형 교차 플랫폼 애플리케이션으로 렌더링된다.

UIML

OASIS UIML은 XML 기반의 표준 사용자 인터페이스 마크업 언어다.[citation needed]단일 벤더로 이행에 제한을 두지 않는 개방형 표준이다.

XUL

모질라 파운데이션 제품의 1차 인터페이스 언어는 XUL이다. XUL 문서는 Gecko 엔진에 의해 렌더링되며, XHTMLSVG 문서도 렌더링한다.CSS, 자바스크립트, DTD, RDF 등 기존의 많은 표준과 기술에 협력한다.

우시XML

UsiXML(User Interface Extensible Markup Language)은 문자 사용자 인터페이스(CUI), 그래픽 사용자 인터페이스(GUI), 청각 사용자 인터페이스, 다중 사용자 인터페이스와 같은 다중 사용 컨텍스트에 대한 UI를 설명하는 XML 호환 마크업 언어다.즉, 서로 다른 유형의 상호작용 기법, 사용 양식 및 컴퓨팅 플랫폼을 가진 인터랙티브 애플리케이션은 물리적 컴퓨팅 플랫폼의 고유한 특징과는 독립적으로 설계를 보존하는 방식으로 설명할 수 있다.

WTKX

WTKX는 아파치 피벗 애플리케이션을 구축하는 데 사용되는 XML 기반 마크업 언어다.애플리케이션 사용자 인터페이스의 구조를 정의하는 데 가장 일반적으로 사용되지만, 모든 유형의 자바 객체 계층 구조를 선언적으로 구성하는 데 사용할 수 있다.

XAL

eXtensible Application Language는 넥사웹의 Enterprise Web 2.0 Suite의 마크업 언어다.개발자는 이 언어를 사용하여 Java 클라이언트 또는 Ajax 클라이언트로 실행될 응용 프로그램을 정의할 수 있다.

SVG

확장 가능한 벡터 그래픽스(Vector Graphics)는 W3C가 제안하는 그래픽의 마크업 언어로 웹과 모바일 애플리케이션에 대해 풍부한 그래픽을 지원할 수 있다.SVG는 사용자 인터페이스 언어가 아니지만 벡터/래스터 그래픽, 애니메이션, DOM 및 CSS와의 상호작용, 내장 미디어, 이벤트 및 스크립트 가능성에 대한 지원을 포함한다.이러한 기능을 조합하여 사용하면 풍부한 사용자 인터페이스가 가능하다.

또한 SVG는 사용자 인터페이스의 그래픽이 풍부한 부분으로서 XUL 및 XForms와 같은 또 다른 XML 호환 사용자 인터페이스 마크업 언어에 중첩될 수 있다.

TUIX

TUIXTriviq CMS에서 사용자 인터페이스를 정의하기 위한 XML 기반 마크업 언어로서 개발자는 인터페이스의 모양과 상호작용을 모두 정의할 수 있다.다른 플러그인의 TUIX 파일은 기존 인터페이스의 손쉬운 수정과 새로운 기능 추가가 용이하도록 렌더링하기 전에 병합된다.

XAML

XAML은 마이크로소프트 의 사용자 인터페이스 구성요소를 기반으로 하는 마크업 시스템이다.NET Framework 3.0 이상.프로그램 로직과 스타일도 XAML 문서에 포함되어 있기 때문에 그것의 범위는 대부분의 사용자 인터페이스 마크업 언어보다 더 야심적이다.기능적으로는 XUL, SVG, CSS, 자바스크립트가 하나의 XML 스키마에 결합된 것으로 볼 수 있다.

이러한 작업을 수행하기 위해 많은 표준(예: 이미 열거된 표준)이 존재하기 때문에 일부 사람들은 이 설계에 비판적이다.다만 개발자가 기초 마크업까지 이해할 필요가 없는 시각적 도구로 개발될 것으로 기대된다.

I3ML

I3MLCoKinetic Systems Corporation이 개발한 독점적인 씬 클라이언트 애플리케이션 전송 메커니즘으로, 최소한의 대역폭 요구로 HTTP 인프라에 윈도우와 같은 애플리케이션을 렌더링할 브라우저 플러그인이 제공하는 클라이언트 지원을 가지고 있다.

OpenLaszlo(LZX)

OpenLaszlo는 런타임 환경과 인터페이스 정의 언어(Laszlo XML - LZX)로 구성된 런타임 환경이다.LZX는 (JavaScript를 사용하여) 위젯, 응용프로그램 레이아웃 및 스크립팅 요소를 정의하여 응용프로그램을 만드는 선언적 사용자 인터페이스 언어다.LZX는 현재 지원되는 런타임이 Macromedia/Adobe Flash 내에 있으므로 런타임에 구애받지 않는다.DHTML/AJAX와 같은 다중 런타임 환경에서 OpenLaszlo(LZX) 애플리케이션을 실행할 수 있게 해주는 Laszlo "Legals"라는 실험 런타임.

HMVCUL

계층적 모델 컨트롤러 사용자 인터페이스 언어(HMVCUL)는 HMVC GUI 애플리케이션을 구성하는 데 사용되는 원자 MVC 3ad 구성 요소의 생성 및 체인을 지원하는 XML 마크업 사용자 인터페이스 언어다.관련 런타임은 각 MVC 트라이어드 요소(위젯, 컨트롤러, 모델)의 속성, 데이터 바인딩 및 이벤트를 구성할 수 있는 방법을 제공한다.런타임은 HMVCUL 파일에 정의된 XML 요소를 프레임워크 내의 개체, 속성 또는 이벤트에 매핑하여 이를 실현한다.체인은 HMVCUL 파일 내부에 설명된 트리 구조를 따라 수행된다.

와사비XML

와사비XML와사비 전원 애플리케이션에서 그래픽 인터페이스를 정의하는 데 사용되는 XML 마크업 언어다.그것은 Winamp 스킨을 만들기 위해 Winamp와 함께 가장 흔하게 사용된다.와사비XML은 Nullsoft가 Winamp를 위해 개발했지만, 와사비 SDK로 다른 애플리케이션에서도 사용할 수 있다.

와사비X의 뿌리 원소ML은<WasabiXML>(Winamp 스킨의 경우, 또한<WinampAbstractionLayer>. The.<skininfo>원소는 피부에 대한 정보를 보여준다.그래픽 인터페이스는 에 의해 유지된다.<container>요소 및 기본 가시성 GUI 요소는<layout>버튼 요소가 있는 간단한 GUI의 예는 다음과 같다.

<?xml 버전="1.0" 인코딩="UTF-8" 독립 실행형="예"?><WinampAbstractLayer version="1.2"<스킨린포>1</버전> mySkin</이름> Ooh Lala</comment></comment>.일부 Person<, /author>,<>email>, 정보 @ example.org<, /email>,<>homepage>,http://www.example.org</homepage>,<>/skininfo>,<>file="xml/color-sys.xml"/&gt을 포함한다;<>!--파일,><>컨테이너 id="정상">,<>레이아웃 id="정상"desktopalpha="진정한">,<>버튼 x="0"y="0"id="button.normal"image="mybutto이 포함된다.n.image"hoverimage="mybutton.himage" downimage="mybutton.dimage" /> </layout> </container> </WinampAbstractionLayer>

WasabiXML은 다음을 포함한 많은 GUI 요소를 지원한다.

  • <button>
  • <text>
  • <vis>
  • <eqvis>
  • <layer>
  • <animatedlayer>
  • <groupdef>와 함께 사용하다.<group>

<groupdef>개발자가 피부 어디에서나 재사용할 수 있는 GUI 개체 그룹을 정의할 수 있도록 허용한다.와사비는 또한 XUI를 지지한다.<groups>MAKI 스크립트로 구동되어 개발자가 모듈화에 추가하는 그들 자신의 GUI 구성요소(위젯)를 만들 수 있다.

와사비XML에는 XML 네임스페이스 '와사비::' 이미지 경로를 선언할 필요 없이 공통 GUI를 정의한다.

마리아야.

MARIA유비쿼터스 환경에서 인터랙티브 응용프로그램을 모델링하기 위한 XML 기반의 보편적이고 선언적인 다중 추상화 언어다.

FXML

FXML은 JavaFX 응용프로그램의 사용자 인터페이스를 정의하기 위한 XML 기반 언어다.

기타

기존 프레임워크에 통합된 기타 마크업 언어는 다음과 같다.

Apple의 인터페이스 빌더 .xib 형식

이것들 중 일부는 이진 형태로 편집된다.

항전학에서 ARINC 661 표준은 유리 콕핏에 사용자 인터페이스를 정의하기 위한 이진 형식을 규정한다.

볼랜드 VCL 양식(.dfm 및 .lfm)은 델파이라자루스 애플리케이션의 창을 설명하는 텍스트 파일이다.그들은 이진 형식으로 최종 실행 파일로 컴파일되고, 기능하기 위해 RTTI를 사용한다.

참고 항목