'xFacility/Documents'에 해당되는 글 7건

  1. 2010.12.02 어플리케이션 메뉴
  2. 2010.10.20 xFacility Data Form데이터 형식
  3. 2010.08.23 xf_language 변수
  4. 2010.08.07 xFacility 변수 규칙
  5. 2010.06.29 문장 구조
  6. 2010.05.17 데이터 형식
  7. 2010.05.16 처리Process
xFacility/Documents2010. 12. 2. 23:56
그간 xFacility 어플리케이션을 한 메뉴에 모으기 위한 고민을 하였다.
만약 사이트 내에 Viewer와 Blog라는 어플리케이션이 있다면 다음과 같이 보이도록 하는 것이다.

Viewer
- Pictures
- Video
- eBooks
- Settings
Blog
- Notice
- Column
- Scrapbook
- Settings

이와 같은 메뉴 보여주기를 위해서는 우선 메뉴 형식의 통일화가 필요하다.
둘째로는 조금 복잡한 문제로써, 권한에 대한 것을 신경 쓸 필요가 있다. 위에 보이는 것처럼 Settings메뉴가 그냥 노출되어 있다고 하자. 그렇다고 Settings 메뉴를 아무나 들어갈 수는 없지 않은가! 하지만 어플리케이션 자체에는 사용자에 대한 정보가 전혀 없으므로, 결국 이 권한에 대한 부분은 xFacility가 중간에서 조율할 필요성이 있다는 것이다.

'xFacility > Documents' 카테고리의 다른 글

xFacility Data Form데이터 형식  (0) 2010.10.20
xf_language 변수  (0) 2010.08.23
xFacility 변수 규칙  (0) 2010.08.07
문장 구조  (0) 2010.06.29
데이터 형식  (0) 2010.05.17
Posted by 마이클
xFacility/Documents2010. 10. 20. 14:45
xFacility는 육하원칙에 의거하여 데이터를 보관하기 위해 일정한 데이터 형식을 갖고 있다.
C에서 데이터 형식을 혼동하여 사용하면 프로그램이 예기치 못한 오류를 발생하는 것처럼,
xFacility에서도 형식에 맞게 데이터를 입력하지 않으면 오류를 발생한다.

데이터명[who][#][항목명]
데이터명[how][#][항목명]
데이터명[what][#][항목명]
데이터명[where][#][항목명]
데이터명[when][#][항목명]
데이터명[why][#][항목명]

'xFacility > Documents' 카테고리의 다른 글

어플리케이션 메뉴  (0) 2010.12.02
xf_language 변수  (0) 2010.08.23
xFacility 변수 규칙  (0) 2010.08.07
문장 구조  (0) 2010.06.29
데이터 형식  (0) 2010.05.17
Posted by 마이클
xFacility/Documents2010. 8. 23. 14:46
xFacility의 변수인 xf_language는 사용자의 언어 정보를 담는다. 사용자가 가장 편한 언어를 최상위인 0번으로 하여, 익숙치 않은 언어일 수록 후번에 등록이 된다. 예를 들어, 한국어를 모국어로 하고 제1외국어를 영어로 제2외국어를 일본어로 한다면, 그 사용자의 언어정보는 다음과 같이 구성될 것이다.
$xf_language['0'] = "ko-kr";
$xf_language['1'] = "en-us";
$xf_language['2'] = "ja-jp";

xf_language 변수는 사용자의 정보이기 때문에 어플리케이션에 상관 없이 유지, 보존되어야 한다. 그래서 사용자 로그인 후 세션 정보로 이를 등록할 필요가 있는데 xFacility변수의 기본 규칙을 따라 php의 경우 $_SESSION['xf_language']에 그 내용을 입력한다.

'xFacility > Documents' 카테고리의 다른 글

어플리케이션 메뉴  (0) 2010.12.02
xFacility Data Form데이터 형식  (0) 2010.10.20
xFacility 변수 규칙  (0) 2010.08.07
문장 구조  (0) 2010.06.29
데이터 형식  (0) 2010.05.17
Posted by 마이클
xFacility/Documents2010. 8. 7. 13:55
xFacility 프로그램에서 지정하는 변수명에는 규칙이 있다.

1. 접두어로 xf_를 사용한다.
데이터베이스 정보와 관련한 변수인 경우 접두어 xf_에 데이터베이스의 약어인 db를 붙여서 xf_db를 변수명으로 사용한다.
사용자와 관련한 변수인 경우 접두어 xf_에 사용자의 약어인 user를 붙여서 xf_user를 변수명으로 사용한다.

2. 하위정보 는 배열로 저장한다.
xFacility의 데이터베이스 정보 중, 데이터베이스 서버인 경우는 데이터베이스 변수인 xf_db에 배열명 server를 이용하여 xf_db[server]와 같은 식으로 지정한다.
사용자의 아이디는 사용자 변수인 xf_user에 배열명 id를 이용하여 xf_user[id]와 같이 지정한다.

3. 세션 또는 쿠키에는 포장을 해서 변수를 등록한다.
세션 또는 쿠키에 저장하려면 $_SESSION[xf_user], $_COOKIE[xf_user]와 같은 식으로 포장을 해서 등록한다.

'xFacility > Documents' 카테고리의 다른 글

xFacility Data Form데이터 형식  (0) 2010.10.20
xf_language 변수  (0) 2010.08.23
문장 구조  (0) 2010.06.29
데이터 형식  (0) 2010.05.17
처리Process  (0) 2010.05.16
Posted by 마이클
xFacility/Documents2010. 6. 29. 01:40
문장이란 xFacility에서 데이터를 전송/수신할 때, 효과적으로 하기 위한 하나의 규칙이다.
문장은 육하원칙의 요소로 구성되며, 그 구성 형태는 영문법의 문장 구조를 따르고 있다.
(물론, 프로그램은 문장 구성 요소를 각각 처리하므로 문장 구조를 벗어나도 이해할 수 있다.)
그렇기 때문에 문장을 해석하는 주체(컴퓨터 또는 사람)에 상관 없이 모두 문장을 쉽게 이해할 수 있다는 장점이 있다.

1. Who
문장의 주체이다.

2. How
주체가 행하는 행동이다.

3. Whom
문장의 수신자, 행동에 영향을 받는 사람이다. 보통 xFacility를 여기에 기입한다.

4. What
행동에 대한 목적어이다. 행동을 행하는데 있어서 중심이 되는 데이터들을 여기에 기입한다.

5. Where
이 문장이 효력을 발휘하는 지점이다.

6. When
이 문장이 효력을 발휘하는 시점이다.

7. Why
이 문장이 작성된 까닭이다.

'xFacility > Documents' 카테고리의 다른 글

xFacility Data Form데이터 형식  (0) 2010.10.20
xf_language 변수  (0) 2010.08.23
xFacility 변수 규칙  (0) 2010.08.07
데이터 형식  (0) 2010.05.17
처리Process  (0) 2010.05.16
Posted by 마이클
xFacility/Documents2010. 5. 17. 14:32
1. xFXML

xFXML이란 xFacility의 원활한 데이터 처리를 위해서 사용하는 XML형식입니다.

그 최소 형식은 다음과 같습니다.
<?xml version="1.0" encoding="utf-8" ?>

<sentences>
<sentence>
<who></who>
<how></how>
<what></what>
<where></where>
<when></when>
<why></why>
</sentence>
</sentences>

who는 사용자 고유번호 또는 xfacility를 입력합니다.
how는 읽기, 쓰기, 수정 등의 해야 할(또는 완료한) 행동을 기술합니다. 명령 결과 전송시 반환return이라 표시합니다.
what은행동의 대상을 나타냅니다. 실제적 데이터가 여기에 기술됩니다.
where는 어떠한 라이브러리에서 이러한 행동을 취할 것인지(취했는지) 나타냅니다. 데이터 내용과 관련 있습니다.
when은 언제 이러한 행동이 이뤄질 것인지(또는 이루어졌는지) 나타냅니다.
why는 이러한 행동이 취해진 까닭을 기술합니다. 오류가 발생한 경우 오류가 발생한 이유가 여기에 기술됩니다.

다음은 예제 코드입니다.
<?xml version="1.0" encoding="utf-8" ?>

<sentences>
<sentence>
<who>xfacility</who>
<how>return</how>
<what>1</what>
<where>party</where>
<when>2010May05162118</when>
<why>An error occured. xFacility cannot EDIT the item. Nothing has the NUMBER(2).</why>
</sentence>
<sentence>
<who>xfacility</who>
<how>return</how>
<what>0</what>
<where>shelf</where>
<when>2010May05162118</when>
<why></why>
</sentence>
</sentences>


2. 범위Range

특정한 대상을 숫자로 지정하기 위해 사용하는 형식입니다.
숫자(1234567890)와 콤마(,), 하이픈(-), 느낌표(!)을 통해서 나타냅니다.
인쇄 옵션에서 페이지를 지정할 때의 문법과 같습니다.

숫자는 지정할 숫자를 그대로 사용합니다.
콤마(,)는 "또는"의 의미입니다.
하이픈(-)은 "에서"의 의미입니다. 2-4인 경우 2에서 4라고 읽으며 2,3,4를 지정합니다.
'-'는 처음부터 끝까지(모든 번호를) 지정합니다.
'x-'는 x이후 모든 번호를 지정합니다.(모든 번호에서 x-1을 제외합니다.)
'-y'는 1부터 y까지의 번호를 지정합니다.
'x-y'는 x부터 y까지 지정합니다.
느낌표(!)는 "부정(NOT)"을 의미합니다. !2-4라고 쓰인경우 2,3,4를 제외하여 지정합니다.
0은 아무것도 지정하지 않습니다. NULL값으로 규정합니다.

① 처음은 반드시 숫자이어야 합니다.
② 음수는 사용 불가능합니다.
③ 제외할 번호가 있을 때에는 제외할 숫자 앞에 !를 붙입니다.

다음은 예제입니다.
1,2,3,4,5,6,7,8,9,10  //
1-10 //위와 동일합니다.
-10 //위와 동일합니다.
1,4-7,10 //1번, 4번, 5번, 6번, 7번 그리고 10번을 지정합니다.
10,7-4,1 //위와 동일합니다.
1-10,!2,!3,!8-9 //위와 동일합니다.
10- //10번 이후의 모든 번호를 지정합니다.
0 //모든 번호를 지정합니다.

범위는 아이템 번호를 지정할 때 주로 사용됩니다. 만약 2에서 5번까지의 게시물을 읽고 싶은 경우, <no>2-5</no>로 지정하면 원하는 게시물을 불러 올 수 있습니다. 또한 범위는 기존 웹보드와 달리 비연속적, 비연관적 게시물을 무제한으로 불러 올 수 있는 장점이 있습니다.

3. 그릇Container

그릇은 XML은 데이터의 부피가 크기 때문의 효과적인 데이터 공간 활용을 위해서 새로 개발한 형식입니다.
개발자들이 이 형식을 익히기 위해 노력할 필요가 없도록 최대한 C의 형식을 빌어왔으며
xFacility API를 통해서 그릇은 XML 또는 배열 변수로도 변환이 가능합니다.
배열을 위해 만들어진 형식이기 때문에 배열 데이터를 플랫폼이나 언어에 상관없이 손쉽게 작성할 수 있으며,
배열을 시각화할 수 있다는 장점이 있습니다.

앞서 xFXML의 설명을 위해 나왔던 코드를 그릇으로 옮기면 다음과 같습니다.
sentence{who=xfacility;how=return;what=1;where=xfxmlio;when=2010May05162118;why=An error occured. xFacility cannot EDIT the item. Nothing has the NUMBER(2).;}, sentence{who=xfacility;how=return;what=0;where=shelf;when=2010May05162118;why=;}

다음과 같은 것도 가능합니다.
{a{b{c{d{e{f{g{h{i:5}}}}}}}}}

//PHP
$string = "{a{b{c{d{e{f{g{h{i:5}}}}}}}}}";
$array = container($string);
//RESULT:  $array[a][b][c][d][e][f][g][h][i] = 5;

배열을 시각화할 수 있습니다.
{
a{
c{
e{
h:10;
i:1;
}
f:6;
}
d{
g:7;
}
}
b{
e:5;
}
}

= {a{c{e{h:10;i:1;}f:6;}d{g:7;}}b{e:5;}}

문법요소 사이에 있는 문자는 다음으로 인식됩니다. (배열명이 없는 경우 자동으로 배열명을 배정합니다.)
 끝         /      시작  {  =  ;  }  공백
 { 배열명   배열명 배열명 배열명
 = 배열명   배열명 배열명  배열명
 ; 값(자동배열) 값(자동배열) 값(자동배열) 값(자동배열) 
 } 값(자동배열) 값(자동배열) 값(자동배열)
 공백
값(자동배열) 값(자동배열) 값(무배열)

4. 치환자Replacer

치환자는 치환될 내용을 보관하는 XML형식입니다.
<?xml version="1.0" encoding="utf-8" ?>

<replacer>
<imageaddress>http://www.example.com/image.jpg</imageaddress>
<content>
<p>Hello World</p>
</content>
</replacer>

이와 같은 내용을 xFacility API를 통해 제공하는 replacer()함수를 이용하면 %치환변수명% 자리에 해당 내용이 바뀌어 들어갑니다.

만약 치환변수가 있는 원본 파일의 내용이 다음과 같다면,
<html>
<head>
<title>Test</title>
</head>
<body>
<img src="%imageaddress%" />
%content%
</body>
</html>

replacer()함수의 처리를 거친 뒤에는 다음과 같이 변환됩니다.
<html>
<head>
<title>Test</title>
</head>
<body>
<img src="http://www.example.com/image.jpg" />
<p>Hello World</p>
</body>
</html>

'xFacility > Documents' 카테고리의 다른 글

xFacility Data Form데이터 형식  (0) 2010.10.20
xf_language 변수  (0) 2010.08.23
xFacility 변수 규칙  (0) 2010.08.07
문장 구조  (0) 2010.06.29
처리Process  (0) 2010.05.16
Posted by 마이클
xFacility/Documents2010. 5. 16. 21:20
1. 처리 구조



2. 처리 단계

① 최종 사용자가 xFacility Application을 실행
② xFacility Application은 최종 사용자의 컴퓨터에게 xFacility 서버 정보와 xFXML 처리 프로그램(JavaScript 등) 제공
③ 최종 사용자의 컴퓨터는 xFacility 서버로 xFXML을 통해 자료 요청
④ xFacility 서버는 xFXML을 실행하고 그 결과를 다시 xFXML로 최종 사용자에게 전송
⑤ 최종 사용자의 컴퓨터는 그 결과 값을 App 화면에 뿌림

'xFacility > Documents' 카테고리의 다른 글

xFacility Data Form데이터 형식  (0) 2010.10.20
xf_language 변수  (0) 2010.08.23
xFacility 변수 규칙  (0) 2010.08.07
문장 구조  (0) 2010.06.29
데이터 형식  (0) 2010.05.17
Posted by 마이클