Posts Tagged ‘한글 번역’

OPML 2.0 Draft Specification

5월 19, 2008

히님이 직접 번역한 문서라서 많이 어설프니 원문이랑 같이 보는 것을 추천해 드립니다.

Outline

Outline은 각 노드가 String형식의 값을 가지고 있는 지명된 속성들의 셋을 포함하는 트리이다.

<opml>

<opml>는 version이라는 단 하나의 필수 속성을 가지는 XML 요소이다. <head>와 <body>는 양쪽 다 필수 요소이다. version Attribute는 x.y형식의 숫자 String이다. version의 값은 아마 1.0일 것이다. 만약 2000년도에 공개된 이 명세의 이전 버전을 따른다면 version의 값은 1.0일 것이고 이 명세를 따른다면 2.0이 될 것이다. 만약 version이 1.1인 파일을 본다면 1.0과 똑같이 다루면 될 것이다.

<head>

<head>는 아래에 묘사된 0개 이상의 요소를 선택적으로 포함한다.

<title> 는 문서의 제목이다.

<dateCreated>는 문서가 생성된 일시를 가리키는 date-time 형식이다.

<dateModified>는 문서가 마지막으로 수정된 일시를 가리키는 date-time 형식이다.

<ownerName>는 문서의 소유자를 가리키는 String 형식이다.

<ownerEmail>는 문서 소유자의 Email 주소를 가리키는 String 형식이다.

<ownerId>는 구독자가 Email이나 다른 방법을 통해 문서의 소유주와 의사를 소통하기 위한 정보를 포함하는 웹페이지의 http 주소를 포함한다. 또한 소유주를 확인하는데 사용 될 수 있다. ownerId는 유일한 값이다.

<docs>는 OPML 파일에서 사용된 형식을 위한 문서화의 http 주소이다. 아마도 누군가 지금으로 부터 수십년 후에 웹 서버에서 이 파일을 발견하고 궁금해 하는 사람들에게는 이 주소가 참고가 될 것이다.

<expansionState> 는 콤마로 구분지어진 확장되는 줄 번호의 목록이다. 목록의 줄 번호는 어느 헤드라인이 확장되어야(펼쳐져야) 할 지를 말한다. 목록에서 줄 번호의 순서는 중요하다. For each element in the list, X, starting at the first summit, navigate flatdown X times and expand.

<vertScrollState>는 Outline의 어느 줄이 창의 최상위 줄에 표시되는지에 대해 말하는 숫자 형식이다. 이 숫자는 이미 확장된(펼쳐져 있는) 상태와 함께 계산된다.

<windowTop>는 창의 윗쪽 가장자리의 픽셀 위치를 나타내는 숫자 형식이다.

<windowLeft>는 창의 왼쪽 가장자리의 픽셀 위치를 나타내는 숫자 형식이다.

<windowBottom>는 창의 아래쪽 가장자리의 픽셀 위치를 나타내는 숫자 형식이다.

<windowRight>는 창의 오른쪽 가장자리의 픽셀 위치를 나타내는 숫자 형식이다.

<body>

<body>는 하나 이상의 <outline> 요소를 포함한다.

<outline>

<outline> 는 text라는 필수 속성과 0개 이상의 추가 속성들을 포함하는 XML 요소이다. <outline>는 하위 요소로 <outline>를 0개 이상 포함 할 수도 있다. 같은 <outline> 안에서 속성이 반복되지 않을지도 모른다.

text 속성

outliner가 OPML 파일을 열었을때 무언가 표시되기 위해 <outline>마다 적어도 하나의 text 속성을 가져야만 한다. text 속성을 생략하면 outliner가 outline을 랜더링 할 수 없다. text 속성은 유저가 무엇을 볼 것인지를 결정한다. (<text 속성을 생략 한 경우> — 이것은 유저 경험상 명확히 받아들일 수 없다.) OPML의 생산 목적은 유저에게 outliner와 관련된 정보를 모으고 조직화 하는 힘을 주는 것이다. 이 것은 OPML이 자료를 서로 교환하는데 사용하기 때문에 중요하다.

어떤 outline 요소라도 text 속성이 없다면 오류이다.

text 속성은 인코딩된 HTML markup을 가질 수도 있다.

그 외 특수 속성들

type은 어떻게 <outline>의 다른 속성들이 해석되는지를 말해주는 String 형식의 속성이다.

isComment는 outline에 주석의 존재여부를 가리키는 “true” 또는 “false” 값을 가지는 String 형식이다. 만약 outline이 주석이 존재한다면 관습적으로 하위 outline들도 주석이 존재한다고 가정한다. 만약 존재하지 않으면 값은 false가 된다.

created는 outline 노드가 생성된 일시의 date-time 형식이다.

category는 RSS 2.0 category 요소에 의해 정의된 형식으로 ‘/’로 구분된 카테고리를 ‘,’로 나누어 놓은 String 형식이다. “태그”를 표현 할 때에는 카테고리 문자열은 ‘/’를 포함하지 않아야 한다.

카테고리 예제

1. category=”/Boston/Weather”

2. category=”/Harvard/Berkman,/Politics”

3. category=”Music, Mariah Carey, Hero” – 태그를 표현할 경우

Subscription lists

예약 구독 목록(Subscription lists)들은 아마 피드를 위한 예약 구독의 다단계 목록일 것이다. OPML 문서의 Body의 각 하위요소는 RSS 형식의 노드거나 RSS 형식의 노드들을 포함하는 outline 요소이다.

오늘날, 대부분의 예약 구독 목록들은 RSS의 단순한 배열이지만, 몇몇 aggregator들은 독단적으로 구조화된 예약 구독 목록들이 카테고리화된 것을 허용한다. 유효성 검사기의 몇몇 프로세서가 구조를 이해하거나 보존할 수 없어서 이 파일에 경고 신호를 보낼 지도 모른다.

필수 속성: type, text, xmlUrl. RSS 형식의 outline 요소를 위해, text는 Feed가 처음 가리키고 있는 상위 단계의 title 요소로 초기화 될 것이지만, 사용자가 수정할 수 있는 속성이므로 항상 Feed의 title에 의존해서는 안 될 것이다.

선택 속성: description, htmlUrl, language, title, version. 이 속성들은 유저가 예약 구독 목록을 표현할 때 유용하다. 버전을 제외한 나머지 속성들은 모두 Feed 그 자체의 정보로 부터 유래한다.

description 은 Feed의 상위 description 요소이다. htmlUrl은 상위 단계의 link 요소이다. language는 상위 단계의 language 요소의 값이다. title는 아마도 text 속성과 같은 값을 가질 것이고 생략 될 수 없다. title는 Feed의 상위 단계의 title 요소를 포함한다.

version은 공급되는 RSS의 버전에 따라 달라진다. 우리가 몇몇 프로세서만이 어떤 버전을 다룬다고 생각 했을때 개발 되었지만 주요한 이수가 되지 못했다. 가질 수 있는 값으로는 RSS 1.0을 위한 RSS1과 RSS 0.91, 0.92 또는 2.0을 위한 RSS, scriptingNews 형식을 위한 scriptingNews이다. Atom Feed를 위한 값은 정해져 있지 않지만 분명 추가 제공될 것이다.

Inclusion

link 형식의 outline 요소는 반드시 http 주소를 값으로 가지는 url 속성을 가져야 한다. text 요소는 일반적으로 outliner에 표시되고, 또한 HTML 렌더링에서 보여지는 것이다.

outliner에서 link 요소가 펼쳐졌을때, 만약 주소가 “.opml”로 끝난다면 outline는 그 장소에서 펼쳐진다. 이것을 inclusion(포함)이라고 부른다.

만약 주소가 “.opml”로 끝나지 않는다면 link는 웹 브라우저에서 보여 질 수 있는 어떤 것이라고 가정한다.

OPML 2.0에서 새로운 형식을 소개한다. include 형식의 outline 요소는 반드시 포함하려는 OPML 파일을 가리키는 url 속성을 가져야 한다. text 요소는 일반적으로 outliner에 표시되고, 또한 HTML 렌더링에서 보여지는 것이다.

link와 include의 차이점은 link는 웹 브라우저에 보여질 무엇인가를 가리키고, include는 항상 OPML 파일을 가리킨다는 것이다.

Directories

directory 는 include, link 또는 rss와 기타 다른 형식들과 함께 outline의 독자적인 구조를 포함할 지도 모른다. 디렉토리들을 보여주거나 OPML 에디터와 같은 outliner를 포함하는 넓고 다양한 소프트웨어에 사용될 수 있다.

Extending OPML
An OPML file may contain elements and attributes not described on this page, only if those elements are defined in a namespace, as specified by the W3C.

OPML can also be extended by the addition of new values for the type attribute. When specifying such an extension, following the example of this specification, say which attributes are required and which are optional, and explain the roles each of the attributes plays, how they relate to each other, and what rules they must conform to. There is a mechanism in the OPML Editor that is based on this form of extension.

Developers should, whenever possible, use capabilities that are already in use by others, or included in this spec, or recommendations or guidelines.

Examples

http://hosting.opml.org/dave/spec/subscriptionList.opml

http://hosting.opml.org/dave/spec/states.opml

http://hosting.opml.org/dave/spec/simpleScript.opml

http://hosting.opml.org/dave/spec/placesLived.opml

http://hosting.opml.org/dave/spec/directory.opml

http://hosting.opml.org/dave/spec/category.opml

Notes

1. All date-times conform to the Date and Time Specification of RFC 822, with the exception that the year may be expressed with two characters or four characters (four preferred).

2. The page in <ownerId> may contain link elements pointing to other documents containing information about the owner. For example, you may have a link element pointing to a FOAF document describing the owner and his or her network of friends; or an RSS feed with news from the owner, possibly even related via the RSS 2.0 category element to parts of the OPML document. In other words, all the extension mechanisms of HTML can come into play.

3. The value of type attributes are not case-sensitive, that is type=”LINK” has the same meaning as type=”link”.

4. Outline attributes generally do not contain encoded HTML markup, unless their are specifically said to include markup.

5. Processors should ignore any attributes they do not understand.

6. There are no documented limits to the number of attributes an <outline> element can have, or the number of <outline> elements it can contain or the size of any attribute.

7. Each sub-element of <head> may appear once or not at all. No sub-element of <head> may be repeated.

8. If an HTML page is generated using an OPML document, you may use an HTML link element to provide for “auto-discovery” of the OPML. The rel attribute value is “outline”, the type “text/x-opml”, and of course the href attribute contains the address of the OPML document.

9. You may include elements of OPML 2.0 in other XML-based formats. The URI for the namespace is http://opml.org/spec2. The namespace declaration should look like this: xmlns:opml=”http://opml.org/spec2&#8243;. However, for backward compatibility, the core elements (those defined by this spec) in an OPML 2.0 document are not in a namespace. Here’s an example of an RSS 2.0 file that contains an outline in one of its items.

Roadmap

Version 2.0 is the last version of OPML. Any further development will take place in namespaces, new outline types, per the Extending OPML section of this specification; or in formats derived from OPML with different names.

Copyright and disclaimer

© Copyright 2000 UserLand Software, Inc. All Rights Reserved.
© Copyright 2006-2007 Scripting News, Inc. All Rights Reserved.

UserLand Software, Inc. and Scripting News, Inc. are refererred to in the following as “the Companies.”

This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and these paragraphs are included on all such copies and derivative works.

This document may not be modified in any way, such as by removing the copyright notice or references to the Companies or other organizations. Further, while these copyright restrictions apply to the written OPML specification, no claim of ownership is made by the Companies to the format it describes. Any party may, for commercial or non-commercial purposes, implement this format without royalty or license fee to the Companies. The limited permissions granted herein are perpetual and will not be revoked by the Companies or their successors or assigns.

This document and the information contained herein is provided on an “AS IS” basis and THE COMPANIES DISCLAIM ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.