이 서비스를 사용하면 스크립트가 XML 문서를 파싱, 탐색, 프로그래매틱 방식으로 만들 수 있습니다.
// Log the title and labels for the first page of blog posts on // Google's The Keyword blog. function parseXml() { let url = 'https://blog.google/rss/'; let xml = UrlFetchApp.fetch(url).getContentText(); let document = XmlService.parse(xml); let root = document.getRootElement(); let channel = root.getChild('channel'); let items = channel.getChildren('item'); items.forEach(item => { let title = item.getChild('title').getText(); let categories = item.getChildren('category'); let labels = categories.map(category => category.getText()); console.log('%s (%s)', title, labels.join(', ')); }); } // Create and log an XML representation of first 10 threads in your Gmail inbox. function createXml() { let root = XmlService.createElement('threads'); let threads = GmailApp.getInboxThreads() threads = threads.slice(0,10); // Just the first 10 threads.forEach(thread => { let child = XmlService.createElement('thread') .setAttribute('messageCount', thread.getMessageCount()) .setAttribute('isUnread', thread.isUnread()) .setText(thread.getFirstMessageSubject()); root.addContent(child); }); let document = XmlService.createDocument(root); let xml = XmlService.getPrettyFormat().format(document); console.log(xml); }
클래스
이름 | 간략한 설명 |
---|---|
Attribute | XML 속성의 표현입니다. |
Cdata | XML CDATASection 노드의 표현입니다. |
Comment | XML Comment 노드의 표현입니다. |
Content | 일반 XML 노드의 표현입니다. |
Content | XML 콘텐츠 노드의 유형을 나타내는 열거형입니다. |
Doc | XML Document 노드의 표현입니다. |
Document | XML 문서의 표현입니다. |
Element | XML Element 노드의 표현입니다. |
Entity | XML Entity 노드의 표현입니다. |
Format | XML 문서를 출력하기 위한 형식 지정 도구로, 추가로 맞춤설정할 수 있는 사전 정의된 세 가지 형식이 있습니다. |
Namespace | XML 네임스페이스의 표현입니다. |
Processing | XML Processing 노드의 표현입니다. |
Text | XML Text 노드의 표현입니다. |
Xml | 이 서비스를 사용하면 스크립트가 XML 문서를 파싱, 탐색, 프로그래매틱 방식으로 만들 수 있습니다. |
Attribute
메서드
메서드 | 반환 유형 | 간략한 설명 |
---|---|---|
get | String | 속성의 로컬 이름을 가져옵니다. |
get | Namespace | 속성의 네임스페이스를 가져옵니다. |
get | String | 속성의 값을 가져옵니다. |
set | Attribute | 속성의 로컬 이름을 설정합니다. |
set | Attribute | 속성의 네임스페이스를 설정합니다. |
set | Attribute | 속성의 값을 설정합니다. |
Cdata
메서드
메서드 | 반환 유형 | 간략한 설명 |
---|---|---|
append(text) | Text | 노드에 이미 있는 콘텐츠에 지정된 텍스트를 추가합니다. |
detach() | Content | 노드를 상위 Element 노드에서 분리합니다. |
get | Element | 노드의 상위 Element 노드를 가져옵니다. |
get | String | Text 노드의 텍스트 값을 가져옵니다. |
get | String | 노드의 직접 또는 간접 하위 요소인 모든 노드의 텍스트 값을 문서에 표시되는 순서대로 가져옵니다. |
set | Text | Text 노드의 텍스트 값을 설정합니다. |
Comment
메서드
메서드 | 반환 유형 | 간략한 설명 |
---|---|---|
detach() | Content | 노드를 상위 Element 노드에서 분리합니다. |
get | Element | 노드의 상위 Element 노드를 가져옵니다. |
get | String | Comment 노드의 텍스트 값을 가져옵니다. |
get | String | 노드의 직접 또는 간접 하위 요소인 모든 노드의 텍스트 값을 문서에 표시되는 순서대로 가져옵니다. |
set | Comment | Comment 노드의 텍스트 값을 설정합니다. |
Content
메서드
메서드 | 반환 유형 | 간략한 설명 |
---|---|---|
as | Cdata | 자동 완성을 위해 노드를 CDATASection 노드로 전송합니다. |
as | Comment | 자동 완성을 위해 노드를 Comment 노드로 전송합니다. |
as | Doc | 자동 완성을 위해 노드를 Document 노드로 전송합니다. |
as | Element | 자동 완성을 위해 노드를 Element 노드로 전송합니다. |
as | Entity | 자동 완성을 위해 노드를 Entity 노드로 전송합니다. |
as | Processing | 자동 완성을 위해 노드를 Processing 노드로 전송합니다. |
as | Text | 자동 완성을 위해 노드를 Text 노드로 전송합니다. |
detach() | Content | 노드를 상위 Element 노드에서 분리합니다. |
get | Element | 노드의 상위 Element 노드를 가져옵니다. |
get | Content | 노드의 콘텐츠 유형을 가져옵니다. |
get | String | 노드의 직접 또는 간접 하위 요소인 모든 노드의 텍스트 값을 문서에 표시되는 순서대로 가져옵니다. |
Content Type
속성
속성 | 유형 | 설명 |
---|---|---|
CDATA | Enum | XML CDATASection 노드 |
COMMENT | Enum | XML Comment 노드 |
DOCTYPE | Enum | XML Document 노드 |
ELEMENT | Enum | XML Element 노드 |
ENTITYREF | Enum | XML Entity 노드 |
PROCESSINGINSTRUCTION | Enum | XML Processing 노드 |
TEXT | Enum | XML Text 노드 |
Doc Type
메서드
메서드 | 반환 유형 | 간략한 설명 |
---|---|---|
detach() | Content | 노드를 상위 Element 노드에서 분리합니다. |
get | String | Doc 선언에 지정된 루트 Element 노드의 이름을 가져옵니다. |
get | String | Document 노드의 내부 하위 집합 데이터를 가져옵니다. |
get | Element | 노드의 상위 Element 노드를 가져옵니다. |
get | String | Document 노드의 외부 하위 집합 데이터의 공개 ID를 가져옵니다. |
get | String | Document 노드의 외부 하위 집합 데이터의 시스템 ID를 가져옵니다. |
get | String | 노드의 직접 또는 간접 하위 요소인 모든 노드의 텍스트 값을 문서에 표시되는 순서대로 가져옵니다. |
set | Doc | Doc 선언에서 지정할 루트 Element 노드의 이름을 설정합니다. |
set | Doc | Document 노드의 내부 하위 집합 데이터를 설정합니다. |
set | Doc | Document 노드의 외부 하위 집합 데이터의 공개 ID를 설정합니다. |
set | Doc | Document 노드의 외부 하위 집합 데이터의 시스템 ID를 설정합니다. |
Document
메서드
메서드 | 반환 유형 | 간략한 설명 |
---|---|---|
add | Document | 지정된 노드를 문서 끝에 추가합니다. |
add | Document | 문서의 즉각적인 하위 요소인 모든 노드 중에서 지정된 색인에 지정된 노드를 삽입합니다. |
clone | Content[] | 문서의 즉시 하위인 모든 노드의 연결되지 않은 사본을 만듭니다. |
detach | Element | 문서의 루트 Element 노드를 분리하고 반환합니다. |
get | Content[] | 문서의 즉시 하위 요소인 모든 노드를 가져옵니다. |
get | Content | 문서의 즉각적인 하위 요소인 모든 노드 중에서 지정된 색인의 노드를 가져옵니다. |
get | Integer | 문서의 바로 아래 하위 노드인 노드 수를 가져옵니다. |
get | Content[] | 문서의 직접 또는 간접 하위 요소인 모든 노드를 문서에 표시되는 순서대로 가져옵니다. |
get | Doc | 문서의 Doc 선언을 가져옵니다. |
get | Element | 문서의 루트 Element 노드를 가져옵니다. |
has | Boolean | 문서에 루트 Element 노드가 있는지 확인합니다. |
remove | Content[] | 문서의 즉시 하위인 모든 노드를 삭제합니다. |
remove | Boolean | 노드가 문서의 바로 아래 하위 요소인 경우 지정된 노드를 삭제합니다. |
remove | Content | 문서의 바로 아래 하위 요소인 모든 노드 중에서 지정된 색인의 노드를 삭제합니다. |
set | Document | 문서의 Doc 선언을 설정합니다. |
set | Document | 문서의 루트 Element 노드를 설정합니다. |
Element
메서드
메서드 | 반환 유형 | 간략한 설명 |
---|---|---|
add | Element | 지정된 노드를 Element 노드의 마지막 하위 요소로 추가합니다. |
add | Element | Element 노드의 즉시 하위인 모든 노드 중 지정된 색인에 지정된 노드를 삽입합니다. |
clone | Content[] | {@code Element} 노드의 직속 하위 노드인 모든 노드의 연결되지 않은 사본을 만듭니다. |
detach() | Content | 노드를 상위 Element 노드에서 분리합니다. |
get | Content[] | {@code Element} 노드의 직계 하위 노드인 모든 노드를 가져옵니다. |
get | Attribute | 지정된 이름을 가진 이 Element 노드의 속성을 가져옵니다(네임스페이스 없음). |
get | Attribute | 지정된 이름과 네임스페이스를 사용하여 이 Element 노드의 속성을 가져옵니다. |
get | Attribute[] | 이 Element 노드의 모든 속성을 문서에 표시되는 순서대로 가져옵니다. |
get | Element | 지정된 이름을 가진 첫 번째 Element 노드와 이 Element 노드의 즉시 하위 요소인 네임스페이스가 없는 Element 노드를 가져옵니다. |
get | Element | 이 Element 노드의 즉시 하위 요소인 지정된 이름과 네임스페이스를 가진 첫 번째 Element 노드를 가져옵니다. |
get | String | 노드가 Element 노드의 즉시 하위 노드인 경우 지정된 이름과 네임스페이스가 없는 노드의 텍스트 값을 가져옵니다. |
get | String | 노드가 Element 노드의 즉시 하위 노드인 경우 지정된 이름과 네임스페이스가 있는 노드의 텍스트 값을 가져옵니다. |
get | Element[] | 이 Element 노드의 즉시 하위 요소인 모든 Element 노드를 문서에 표시되는 순서대로 가져옵니다. |
get | Element[] | 이 Element 노드의 즉시 하위 요소인 네임스페이스가 없고 지정된 이름을 가진 모든 Element 노드를 문서에 표시되는 순서대로 가져옵니다. |
get | Element[] | 이 Element 노드의 즉시 하위 노드인 지정된 이름과 네임스페이스를 가진 모든 Element 노드를 문서에 표시되는 순서대로 가져옵니다. |
get | Content | {@code Element} 노드의 즉시 하위 요소인 모든 노드 중에서 지정된 색인의 노드를 가져옵니다. |
get | Integer | {@code Element} 노드의 즉시 하위 요소인 노드 수를 가져옵니다. |
get | Content[] | {@code Element} 노드의 직접 또는 간접 하위 노드인 모든 노드를 문서에 표시되는 순서대로 가져옵니다. |
get | Document | {@code Element} 노드가 포함된 XML 문서를 가져옵니다. |
get | String | Element 노드의 로컬 이름을 가져옵니다. |
get | Namespace | Element 노드의 네임스페이스를 가져옵니다. |
get | Namespace | Element 노드의 지정된 접두사가 있는 네임스페이스를 가져옵니다. |
get | Element | 노드의 상위 Element 노드를 가져옵니다. |
get | String | Element 노드의 로컬 이름과 네임스페이스 접두사를 [namespacePrefix]:[localName] 형식으로 가져옵니다. |
get | String | Element 노드의 텍스트 값을 가져옵니다. |
get | String | 노드의 직접 또는 간접 하위 요소인 모든 노드의 텍스트 값을 문서에 표시되는 순서대로 가져옵니다. |
is | Boolean | 이 Element 노드가 지정된 Element 노드의 직접 상위 노드인지 또는 간접 상위 노드인지 확인합니다. |
is | Boolean | Element 노드가 문서의 루트 노드인지 확인합니다. |
remove | Boolean | 이 Element 노드의 지정된 속성을 삭제합니다(해당 속성이 있는 경우). |
remove | Boolean | 지정된 이름의 이 Element 노드의 속성을 삭제합니다(네임스페이스가 없는 경우). |
remove | Boolean | 지정된 이름과 네임스페이스가 있는 이 Element 노드의 속성을 삭제합니다(이러한 속성이 있는 경우). |
remove | Content[] | {@code Element} 노드의 바로 아래 하위 노드인 모든 노드를 삭제합니다. |
remove | Boolean | 노드가 {@code Element} 노드의 바로 아래 하위 요소인 경우 지정된 노드를 삭제합니다. |
remove | Content | {@code Element} 노드의 바로 아래 하위 요소인 모든 노드 중에서 지정된 색인의 노드를 삭제합니다. |
set | Element | 이 Element 노드에 지정된 속성을 설정합니다. |
set | Element | 지정된 이름, 값, 네임스페이스가 없는 이 Element 노드의 속성을 설정합니다. |
set | Element | 지정된 이름, 값, 네임스페이스로 이 Element 노드의 속성을 설정합니다. |
set | Element | Element 노드의 로컬 이름을 설정합니다. |
set | Element | Element 노드의 네임스페이스를 설정합니다. |
set | Element | Element 노드의 텍스트 값을 설정합니다. |
Entity Ref
메서드
메서드 | 반환 유형 | 간략한 설명 |
---|---|---|
detach() | Content | 노드를 상위 Element 노드에서 분리합니다. |
get | String | Entity 노드의 이름을 가져옵니다. |
get | Element | 노드의 상위 Element 노드를 가져옵니다. |
get | String | Entity 노드의 공개 ID를 가져옵니다. |
get | String | Entity 노드의 시스템 ID를 가져옵니다. |
get | String | 노드의 직접 또는 간접 하위 요소인 모든 노드의 텍스트 값을 문서에 표시되는 순서대로 가져옵니다. |
set | Entity | Entity 노드의 이름을 설정합니다. |
set | Entity | Entity 노드의 공개 ID를 설정합니다. |
set | Entity | Entity 노드의 시스템 ID를 설정합니다. |
Format
메서드
메서드 | 반환 유형 | 간략한 설명 |
---|---|---|
format(document) | String | 지정된 Document 를 형식이 지정된 문자열로 출력합니다. |
format(element) | String | 지정된 Element 노드를 형식이 지정된 문자열로 출력합니다. |
set | Format | 형식 지정자가 사용해야 하는 문자 인코딩을 설정합니다. |
set | Format | 상위 요소를 기준으로 하위 요소의 들여쓰기에 사용되는 문자열을 설정합니다. |
set | Format | 형식 지정 도구가 일반적으로 줄바꿈을 삽입할 때마다 삽입할 문자열을 설정합니다. |
set | Format | 형식 지정기에서 XML 선언(예: <?xml version="1.0"
encoding="UTF-8"?> )을 생략할지 여부를 설정합니다. |
set | Format | 형식 지정기에서 XML 선언에서 인코딩(예: <?xml version="1.0" encoding="UTF-8"?> 의 인코딩 필드)을 생략해야 하는지 설정합니다. |
Namespace
메서드
메서드 | 반환 유형 | 간략한 설명 |
---|---|---|
get | String | 네임스페이스의 접두사를 가져옵니다. |
get | String | 네임스페이스의 URI를 가져옵니다. |
Processing Instruction
메서드
메서드 | 반환 유형 | 간략한 설명 |
---|---|---|
detach() | Content | 노드를 상위 Element 노드에서 분리합니다. |
get | String | Processing 노드의 모든 명령어에 대한 원시 데이터를 가져옵니다. |
get | Element | 노드의 상위 Element 노드를 가져옵니다. |
get | String | Processing 노드의 타겟을 가져옵니다. |
get | String | 노드의 직접 또는 간접 하위 요소인 모든 노드의 텍스트 값을 문서에 표시되는 순서대로 가져옵니다. |
Text
메서드
메서드 | 반환 유형 | 간략한 설명 |
---|---|---|
append(text) | Text | 노드에 이미 있는 콘텐츠에 지정된 텍스트를 추가합니다. |
detach() | Content | 노드를 상위 Element 노드에서 분리합니다. |
get | Element | 노드의 상위 Element 노드를 가져옵니다. |
get | String | Text 노드의 텍스트 값을 가져옵니다. |
get | String | 노드의 직접 또는 간접 하위 요소인 모든 노드의 텍스트 값을 문서에 표시되는 순서대로 가져옵니다. |
set | Text | Text 노드의 텍스트 값을 설정합니다. |
Xml Service
속성
속성 | 유형 | 설명 |
---|---|---|
Content | Content | XML 콘텐츠 노드의 유형을 나타내는 열거형입니다. |