บริการนี้อนุญาตให้สคริปต์แยกวิเคราะห์ ไปยังส่วนต่างๆ และสร้างด้วยโปรแกรม เอกสาร 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 ทั่วไป |
ContentType | การแจกแจงที่แสดงถึงประเภทของโหนดเนื้อหา XML |
DocType | การแสดงโหนด XML DocumentType |
Document | การนำเสนอเอกสาร XML |
Element | การแสดงโหนด XML Element |
EntityRef | การแสดงโหนด XML EntityReference |
Format | ตัวจัดรูปแบบสำหรับการแสดงเอกสาร XML โดยมีรูปแบบที่กำหนดไว้ล่วงหน้าสามรูปแบบ ซึ่งสามารถขยาย แบบกำหนดเอง |
Namespace | การแสดงเนมสเปซ XML |
ProcessingInstruction | การแสดงโหนด XML ProcessingInstruction |
Text | การแสดงโหนด XML Text |
XmlService | บริการนี้อนุญาตให้สคริปต์แยกวิเคราะห์ ไปยังส่วนต่างๆ และสร้างเอกสาร XML แบบเป็นโปรแกรมได้ |
Attribute
เมธอด
วิธีการ | ประเภทการแสดงผล | รายละเอียดแบบย่อ |
---|---|---|
getName() | String | รับชื่อท้องถิ่นของแอตทริบิวต์ |
getNamespace() | Namespace | รับเนมสเปซสำหรับแอตทริบิวต์ |
getValue() | String | รับค่าของแอตทริบิวต์ |
setName(name) | Attribute | ตั้งชื่อภายในของแอตทริบิวต์ |
setNamespace(namespace) | Attribute | ตั้งค่าเนมสเปซสำหรับแอตทริบิวต์ |
setValue(value) | Attribute | ตั้งค่าของแอตทริบิวต์ |
Cdata
เมธอด
วิธีการ | ประเภทการแสดงผล | รายละเอียดแบบย่อ |
---|---|---|
append(text) | Text | เพิ่มข้อความต่อท้ายเนื้อหาที่มีอยู่แล้วในโหนด |
detach() | Content | ปลดโหนดออกจากโหนด Element ระดับบนสุด |
getParentElement() | Element | รับโหนดหลักของโหนด Element |
getText() | String | ดึงค่าข้อความของโหนด Text |
getValue() | String | ดึงค่าข้อความของโหนดทั้งหมดที่เป็นโหนดย่อยโดยตรงหรือโดยอ้อมของโหนดตามลำดับ ปรากฏในเอกสาร |
setText(text) | Text | ตั้งค่าข้อความของโหนด Text |
Comment
เมธอด
วิธีการ | ประเภทการแสดงผล | รายละเอียดแบบย่อ |
---|---|---|
detach() | Content | ปลดโหนดออกจากโหนด Element ระดับบนสุด |
getParentElement() | Element | รับโหนดหลักของโหนด Element |
getText() | String | ดึงค่าข้อความของโหนด Comment |
getValue() | String | ดึงค่าข้อความของโหนดทั้งหมดที่เป็นโหนดย่อยโดยตรงหรือโดยอ้อมของโหนดตามลำดับ ปรากฏในเอกสาร |
setText(text) | Comment | ตั้งค่าข้อความของโหนด Comment |
Content
เมธอด
วิธีการ | ประเภทการแสดงผล | รายละเอียดแบบย่อ |
---|---|---|
asCdata() | Cdata | แคสต์โหนดเป็นโหนด CDATASection เพื่อเติมข้อความอัตโนมัติ |
asComment() | Comment | แคสต์โหนดเป็นโหนด Comment เพื่อเติมข้อความอัตโนมัติ |
asDocType() | DocType | แคสต์โหนดเป็นโหนด DocumentType เพื่อเติมข้อความอัตโนมัติ |
asElement() | Element | แคสต์โหนดเป็นโหนด Element เพื่อเติมข้อความอัตโนมัติ |
asEntityRef() | EntityRef | แคสต์โหนดเป็นโหนด EntityReference เพื่อเติมข้อความอัตโนมัติ |
asProcessingInstruction() | ProcessingInstruction | แคสต์โหนดเป็นโหนด ProcessingInstruction เพื่อเติมข้อความอัตโนมัติ |
asText() | Text | แคสต์โหนดเป็นโหนด Text เพื่อเติมข้อความอัตโนมัติ |
detach() | Content | ปลดโหนดออกจากโหนด Element ระดับบนสุด |
getParentElement() | Element | รับโหนดหลักของโหนด Element |
getType() | ContentType | รับประเภทเนื้อหาของโหนด |
getValue() | String | ดึงค่าข้อความของโหนดทั้งหมดที่เป็นโหนดย่อยโดยตรงหรือโดยอ้อมของโหนดตามลำดับ ปรากฏในเอกสาร |
ContentType
พร็อพเพอร์ตี้
พร็อพเพอร์ตี้ | ประเภท | คำอธิบาย |
---|---|---|
CDATA | Enum | โหนด XML CDATASection |
COMMENT | Enum | โหนด XML Comment |
DOCTYPE | Enum | โหนด XML DocumentType |
ELEMENT | Enum | โหนด XML Element |
ENTITYREF | Enum | โหนด XML EntityReference |
PROCESSINGINSTRUCTION | Enum | โหนด XML ProcessingInstruction |
TEXT | Enum | โหนด XML Text |
DocType
เมธอด
วิธีการ | ประเภทการแสดงผล | รายละเอียดแบบย่อ |
---|---|---|
detach() | Content | ปลดโหนดออกจากโหนด Element ระดับบนสุด |
getElementName() | String | ดึงชื่อของโหนด Element รูทที่ระบุไว้ในการประกาศ DocType |
getInternalSubset() | String | รับข้อมูลย่อยภายในสำหรับโหนด DocumentType |
getParentElement() | Element | รับโหนดหลักของโหนด Element |
getPublicId() | String | รับรหัสสาธารณะของข้อมูลชุดย่อยภายนอกสำหรับโหนด DocumentType |
getSystemId() | String | รับรหัสระบบของข้อมูลชุดย่อยภายนอกสำหรับโหนด DocumentType |
getValue() | String | ดึงค่าข้อความของโหนดทั้งหมดที่เป็นโหนดย่อยโดยตรงหรือโดยอ้อมของโหนดตามลำดับ ปรากฏในเอกสาร |
setElementName(name) | DocType | ตั้งชื่อของโหนด Element รากเพื่อระบุใน DocType
ประกาศ |
setInternalSubset(data) | DocType | ตั้งค่าข้อมูลย่อยภายในสำหรับโหนด DocumentType |
setPublicId(id) | DocType | ตั้งค่ารหัสสาธารณะของข้อมูลชุดย่อยภายนอกสำหรับโหนด DocumentType |
setSystemId(id) | DocType | ตั้งค่ารหัสระบบของข้อมูลชุดย่อยภายนอกสำหรับโหนด DocumentType |
Document
เมธอด
วิธีการ | ประเภทการแสดงผล | รายละเอียดแบบย่อ |
---|---|---|
addContent(content) | Document | เพิ่มโหนดที่ระบุต่อท้ายเอกสาร |
addContent(index, content) | Document | แทรกโหนดที่ระบุที่ดัชนีที่ระบุระหว่างโหนดทั้งหมดที่เป็นโหนดย่อยของ เอกสาร |
cloneContent() | Content[] | สร้างสำเนาที่ไม่ได้แนบกับโหนดทั้งหมดที่เป็นรายการย่อยทันทีของเอกสาร |
detachRootElement() | Element | ปลดและแสดงผลโหนด Element รากของเอกสาร |
getAllContent() | Content[] | รับโหนดทั้งหมดที่เป็นโหนดย่อยทันทีของเอกสาร |
getContent(index) | Content | รับโหนดที่ดัชนีที่ระบุจากโหนดทั้งหมดที่เป็นโหนดย่อยของ เอกสาร |
getContentSize() | Integer | รับจำนวนโหนดที่เป็นรายการย่อยทันทีของเอกสาร |
getDescendants() | Content[] | รับโหนดทั้งหมดที่เป็นโหนดย่อยโดยตรงหรือโดยอ้อมของเอกสารตามลำดับ ปรากฏในเอกสาร |
getDocType() | DocType | รับการประกาศDocType ของเอกสาร |
getRootElement() | Element | รับโหนดราก Element ของเอกสาร |
hasRootElement() | Boolean | กำหนดว่าเอกสารมีโหนด Element รากหรือไม่ |
removeContent() | Content[] | นำโหนดทั้งหมดที่เป็นรายการย่อยทันทีของเอกสารออก |
removeContent(content) | Boolean | นำโหนดที่ระบุออก ถ้าโหนดเป็นโหนดย่อยทันทีของเอกสาร |
removeContent(index) | Content | ลบโหนดที่ดัชนีที่ระบุออกจากโหนดทั้งหมดที่เป็นโหนดย่อยของ เอกสาร |
setDocType(docType) | Document | ตั้งค่าการประกาศDocType ของเอกสาร |
setRootElement(element) | Document | ตั้งค่าโหนดราก Element ของเอกสาร |
Element
เมธอด
วิธีการ | ประเภทการแสดงผล | รายละเอียดแบบย่อ |
---|---|---|
addContent(content) | Element | เพิ่มโหนดที่ระบุเป็นโหนดย่อยสุดท้ายของโหนด Element |
addContent(index, content) | Element | แทรกโหนดที่ระบุที่ดัชนีที่ระบุระหว่างโหนดทั้งหมดที่เป็นโหนดย่อยของ
Element โหนด |
cloneContent() | Content[] | สร้างสำเนาที่ไม่ได้แนบกับโหนดทั้งหมดที่เป็นโหนดย่อยของโหนด {@code Element} |
detach() | Content | ปลดโหนดออกจากโหนด Element ระดับบนสุด |
getAllContent() | Content[] | รับโหนดทั้งหมดที่เป็นโหนดย่อยของโหนด {@code Element} |
getAttribute(name) | Attribute | รับแอตทริบิวต์ของโหนด Element นี้ที่มีชื่อที่ระบุและไม่มีเนมสเปซ |
getAttribute(name, namespace) | Attribute | รับแอตทริบิวต์ของโหนด Element นี้ที่มีชื่อและเนมสเปซที่ระบุ |
getAttributes() | Attribute[] | รับแอตทริบิวต์ทั้งหมดของโหนด Element นี้ตามลำดับที่ปรากฏในเอกสาร |
getChild(name) | Element | รับโหนด Element แรกที่มีชื่อตามที่ระบุ และไม่มีเนมสเปซที่เป็นรายการโดยทันที
ย่อยของโหนด Element นี้ |
getChild(name, namespace) | Element | รับโหนด Element แรกที่มีชื่อและเนมสเปซที่ระบุทันที
ย่อยของโหนด Element นี้ |
getChildText(name) | String | รับค่าข้อความของโหนดที่มีชื่อที่ระบุและไม่มีเนมสเปซ ถ้าโหนดเป็นโหนด
ย่อยของโหนด Element |
getChildText(name, namespace) | String | รับค่าข้อความของโหนดที่มีชื่อและเนมสเปซที่ระบุ หากโหนดเป็นโหนดทันที
ลูกของโหนด Element |
getChildren() | Element[] | รับโหนด Element ทั้งหมดที่เป็นโหนดย่อยโดยตรงของโหนด Element นี้ ใน
ลำดับที่ปรากฏในเอกสาร |
getChildren(name) | Element[] | รับโหนด Element ทั้งหมดที่มีชื่อที่ระบุ และไม่มีเนมสเปซที่เป็นย่อยทันที
ของโหนด Element นี้ตามลำดับที่ปรากฏในเอกสาร |
getChildren(name, namespace) | Element[] | รับโหนด Element ทั้งหมดที่มีชื่อและเนมสเปซที่ระบุซึ่งเป็นรายการย่อยของ
โหนด Element นี้ตามลำดับที่ปรากฏในเอกสาร |
getContent(index) | Content | รับโหนดที่ดัชนีที่ระบุจากโหนดทั้งหมดที่เป็นโหนดย่อยของ โหนด {@code Element} |
getContentSize() | Integer | รับจำนวนโหนดที่เป็นโหนดย่อยของโหนด {@code Element} |
getDescendants() | Content[] | รับโหนดทั้งหมดที่เป็นโหนดย่อยโดยตรงหรือโดยอ้อมของโหนด {@code Element} ตามลำดับ ปรากฏในเอกสาร |
getDocument() | Document | รับเอกสาร XML ที่มีโหนด {@code Element} |
getName() | String | รับชื่อในเครื่องของโหนด Element |
getNamespace() | Namespace | รับเนมสเปซสำหรับโหนด Element |
getNamespace(prefix) | Namespace | รับเนมสเปซที่มีคำนำหน้าที่ระบุสำหรับโหนด Element |
getParentElement() | Element | รับโหนดหลักของโหนด Element |
getQualifiedName() | String | รับชื่อในเครื่องและคำนำหน้าเนมสเปซของโหนด Element ในรูปแบบ [namespacePrefix]:[localName] |
getText() | String | ดึงค่าข้อความของโหนด Element |
getValue() | String | ดึงค่าข้อความของโหนดทั้งหมดที่เป็นโหนดย่อยโดยตรงหรือโดยอ้อมของโหนดตามลำดับ ปรากฏในเอกสาร |
isAncestorOf(other) | Boolean | กำหนดว่าโหนด Element นี้เป็นโหนดหลักโดยตรงหรือโดยอ้อมของโหนด Element ที่ระบุ |
isRootElement() | Boolean | กำหนดว่าโหนด Element เป็นโหนดรากของเอกสารหรือไม่ |
removeAttribute(attribute) | Boolean | นำแอตทริบิวต์ที่ระบุสำหรับโหนด Element นี้ออก หากมีแอตทริบิวต์ดังกล่าว |
removeAttribute(attributeName) | Boolean | นำแอตทริบิวต์ของโหนด Element ที่มีชื่อที่ระบุออกและไม่มีเนมสเปซ
แอตทริบิวต์ดังกล่าวมีอยู่ |
removeAttribute(attributeName, namespace) | Boolean | นำแอตทริบิวต์ของโหนด Element ที่มีชื่อและเนมสเปซที่ระบุออก หากมี
มีแอตทริบิวต์อยู่ |
removeContent() | Content[] | นำโหนดทั้งหมดที่เป็นโหนดย่อยของโหนด {@code Element} ออก |
removeContent(content) | Boolean | นำโหนดที่ระบุออก ถ้าโหนดเป็นโหนดย่อยที่อยู่ทันทีของโหนด {@code Element} |
removeContent(index) | Content | ลบโหนดที่ดัชนีที่ระบุออกจากโหนดทั้งหมดที่เป็นโหนดย่อยของ โหนด {@code Element} |
setAttribute(attribute) | Element | ตั้งค่าแอตทริบิวต์ที่ระบุสำหรับโหนด Element นี้ |
setAttribute(name, value) | Element | ตั้งค่าแอตทริบิวต์สำหรับโหนด Element นี้โดยใช้ชื่อ ค่า และไม่มีเนมสเปซ |
setAttribute(name, value, namespace) | Element | ตั้งค่าแอตทริบิวต์สำหรับโหนด Element นี้โดยใช้ชื่อ ค่า และเนมสเปซที่ระบุ |
setName(name) | Element | ตั้งชื่อภายในของโหนด Element |
setNamespace(namespace) | Element | ตั้งค่าเนมสเปซสำหรับโหนด Element |
setText(text) | Element | ตั้งค่าข้อความของโหนด Element |
EntityRef
เมธอด
วิธีการ | ประเภทการแสดงผล | รายละเอียดแบบย่อ |
---|---|---|
detach() | Content | ปลดโหนดออกจากโหนด Element ระดับบนสุด |
getName() | String | ดึงชื่อของโหนด EntityReference |
getParentElement() | Element | รับโหนดหลักของโหนด Element |
getPublicId() | String | รับรหัสสาธารณะของโหนด EntityReference |
getSystemId() | String | รับรหัสระบบของโหนด EntityReference |
getValue() | String | ดึงค่าข้อความของโหนดทั้งหมดที่เป็นโหนดย่อยโดยตรงหรือโดยอ้อมของโหนดตามลำดับ ปรากฏในเอกสาร |
setName(name) | EntityRef | ตั้งชื่อโหนด EntityReference |
setPublicId(id) | EntityRef | ตั้งค่ารหัสสาธารณะของโหนด EntityReference |
setSystemId(id) | EntityRef | ตั้งค่ารหัสระบบของโหนด EntityReference |
Format
เมธอด
วิธีการ | ประเภทการแสดงผล | รายละเอียดแบบย่อ |
---|---|---|
format(document) | String | แสดงผล Document ที่ระบุเป็นสตริงที่มีการจัดรูปแบบ |
format(element) | String | แสดงผลโหนด Element ที่ระบุเป็นสตริงที่มีการจัดรูปแบบ |
setEncoding(encoding) | Format | ตั้งค่าการเข้ารหัสอักขระที่ตัวจัดรูปแบบควรใช้ |
setIndent(indent) | Format | ตั้งค่าสตริงที่ใช้เพื่อเยื้องโหนดย่อยที่เกี่ยวข้องกับโหนดระดับบนสุด |
setLineSeparator(separator) | Format | ตั้งค่าสตริงให้แทรกเมื่อโดยปกติแล้วตัวจัดรูปแบบจะแทรกตัวแบ่งบรรทัด |
setOmitDeclaration(omitDeclaration) | Format | ตั้งค่าว่าตัวจัดรูปแบบควรละเว้นการประกาศ XML เช่น <?xml version="1.0"
encoding="UTF-8"?> หรือไม่ |
setOmitEncoding(omitEncoding) | Format | ตั้งค่าว่าตัวจัดรูปแบบควรละเว้นการเข้ารหัสในการประกาศ XML หรือไม่ เช่น
ฟิลด์การเข้ารหัสใน <?xml version="1.0" encoding="UTF-8"?> |
Namespace
เมธอด
วิธีการ | ประเภทการแสดงผล | รายละเอียดแบบย่อ |
---|---|---|
getPrefix() | String | รับคำนำหน้าสำหรับเนมสเปซ |
getURI() | String | รับ URI สำหรับเนมสเปซ |
ProcessingInstruction
เมธอด
วิธีการ | ประเภทการแสดงผล | รายละเอียดแบบย่อ |
---|---|---|
detach() | Content | ปลดโหนดออกจากโหนด Element ระดับบนสุด |
getData() | String | รับข้อมูลดิบสำหรับทุกคำสั่งในโหนด ProcessingInstruction |
getParentElement() | Element | รับโหนดหลักของโหนด Element |
getTarget() | String | รับเป้าหมายสำหรับโหนด ProcessingInstruction |
getValue() | String | ดึงค่าข้อความของโหนดทั้งหมดที่เป็นโหนดย่อยโดยตรงหรือโดยอ้อมของโหนดตามลำดับ ปรากฏในเอกสาร |
Text
เมธอด
วิธีการ | ประเภทการแสดงผล | รายละเอียดแบบย่อ |
---|---|---|
append(text) | Text | เพิ่มข้อความต่อท้ายเนื้อหาที่มีอยู่แล้วในโหนด |
detach() | Content | ปลดโหนดออกจากโหนด Element ระดับบนสุด |
getParentElement() | Element | รับโหนดหลักของโหนด Element |
getText() | String | ดึงค่าข้อความของโหนด Text |
getValue() | String | ดึงค่าข้อความของโหนดทั้งหมดที่เป็นโหนดย่อยโดยตรงหรือโดยอ้อมของโหนดตามลำดับ ปรากฏในเอกสาร |
setText(text) | Text | ตั้งค่าข้อความของโหนด Text |
XmlService
พร็อพเพอร์ตี้
พร็อพเพอร์ตี้ | ประเภท | คำอธิบาย |
---|---|---|
ContentTypes | ContentType | การแจกแจงที่แสดงถึงประเภทของโหนดเนื้อหา XML |
เมธอด
วิธีการ | ประเภทการแสดงผล | รายละเอียดแบบย่อ |
---|---|---|
createCdata(text) | Cdata | สร้างโหนด CDATASection ที่ไม่ได้แนบกับค่าที่กำหนด |
createComment(text) | Comment | สร้างโหนด Comment ที่ไม่ได้แนบกับค่าที่กำหนด |
createDocType(elementName) | DocType | สร้างโหนด DocumentType ที่ไม่ได้แนบสำหรับโหนดราก Element
ด้วยชื่อที่ตั้งไว้ |
createDocType(elementName, systemId) | DocType | สร้างโหนด DocumentType ที่ไม่ได้แนบสำหรับโหนดราก Element
และรหัสระบบที่กำหนดสำหรับข้อมูลย่อยภายนอก |
createDocType(elementName, publicId, systemId) | DocType | สร้างโหนด DocumentType ที่ไม่ได้แนบสำหรับโหนดราก Element
ที่มีชื่อเฉพาะ รวมถึงรหัสสาธารณะและรหัสระบบสำหรับข้อมูลย่อยภายนอก |
createDocument() | Document | สร้างเอกสาร XML ที่ว่างเปล่า |
createDocument(rootElement) | Document | สร้างเอกสาร XML ที่มีโหนดรูท Element ที่ระบุ |
createElement(name) | Element | สร้างโหนด Element ที่ไม่ได้แนบที่มีชื่อในเครื่องที่ระบุและไม่มีเนมสเปซ |
createElement(name, namespace) | Element | สร้างโหนด Element ที่ไม่ได้แนบที่มีชื่อในเครื่องและเนมสเปซที่ระบุ |
createText(text) | Text | สร้างโหนด Text ที่ไม่ได้แนบกับค่าที่กำหนด |
getCompactFormat() | Format | สร้างออบเจ็กต์ Format สำหรับเอาต์พุตเอกสาร XML แบบกะทัดรัด |
getNamespace(uri) | Namespace | สร้าง Namespace ด้วย URI ที่กำหนด |
getNamespace(prefix, uri) | Namespace | สร้าง Namespace ที่มีคำนำหน้าและ URI ที่กำหนด |
getNoNamespace() | Namespace | สร้าง Namespace ที่แทนเนมสเปซจริง |
getPrettyFormat() | Format | สร้างออบเจ็กต์ Format สำหรับเอาต์พุตเอกสาร XML ที่มนุษย์อ่านได้ |
getRawFormat() | Format | สร้างออบเจ็กต์ Format สำหรับเอาต์พุตเอกสาร XML แบบ Raw |
getXmlNamespace() | Namespace | สร้าง Namespace ที่มีคำนำหน้า xml มาตรฐาน |
parse(xml) | Document | สร้าง Document จาก XML ที่ระบุโดยไม่ต้องตรวจสอบความถูกต้องของ XML |