XML에서 요소와 노드의 차이점은 무엇입니까?
XML로 자바를 작업하고 있는데, 요소와 노드의 차이점이 무엇인지 궁금합니다.
Node 개체는 전체 DOM의 기본 데이터 유형입니다.
노드는 요소 노드, 속성 노드, 텍스트 노드 또는 "노드 유형" 장에서 설명한 다른 노드 유형일 수 있습니다.
XML 요소는 요소의 시작 태그부터 요소의 끝 태그까지(포함) 모든 것입니다.
W3C 규격에 따라 다양한 "노드" 유형 집합이 정의됩니다.
따라서 DOM dom은 다음과 같은 유형의 노드를 정의합니다.
Document
--Element
대 1개),ProcessingInstruction
,Comment
,DocumentType
DocumentFragment
--Element
,ProcessingInstruction
,Comment
,Text
,CDATASection
,EntityReference
DocumentType
없음 ---EntityReference
--Element
,ProcessingInstruction
,Comment
,Text
,CDATASection
,EntityReference
Element
--Element
,Text
,Comment
,ProcessingInstruction
,CDATASection
,EntityReference
Attr
--Text
,EntityReference
ProcessingInstruction
없음 ---Comment
없음 ---Text
없음 ---CDATASection
없음 ---Entity
--Element
,ProcessingInstruction
,Comment
,Text
,CDATASection
,EntityReference
Notation
없음 ---
XML Infoset(XPath에서 사용)에는 다음과 같은 작은 노드 집합이 있습니다.
XPath에는 다음과 같은 노드 유형이 있습니다.
- 루트 노드들
- 요소 노드
- 텍스트 노드
- 속성 노드
- 네임스페이스 노드
- 프로세싱 명령어 노드
- 주석 노드
"요소와 노드의 차이점은 무엇입니까?"라는 질문에 대한 답은 다음과 같습니다.
An element is a type of node. Many other types of nodes exist and serve different purposes.
노드는 DOM 트리의 일부이며 요소는 노드의 특정 유형입니다.
를 들면 <foo> This is Text </foo>
fooElement(Element가 노드에서 상속되므로 노드이기도 함)와 fooElement/Node의 자식인 TextNode 'This is Text'가 있습니다.
노드는 텍스트, 주석, 요소, 개체 등 여러 가지 다른 종류의 것이 될 수 있습니다.요소는 특정한 종류의 노드입니다.
다양한 XML 사양에서 설명된 바와 같이,element
시작 태그, 종료 태그, 그리고 그 사이의 내용으로 구성되거나, 또는 빈 요소 태그(내용 또는 종료 태그가 없음)로 구성됩니다. 이것들은 모두다, 요소들입니다
<foo> stuff </foo>
<foo bar="baz"></foo>
<foo baz="qux" />
거의 동일한 의미로 사용되는 "노드"라고 들리기는 하지만 XML 사양별로 정확한 정의는 없습니다.이것은 보통 XML과 밀접한 관련이 있거나 표현을 위해 XML을 사용할 수 있는 DOM과 같은 것의 노드를 지칭하는 데 사용됩니다.
xml 문서는 중첩된 요소로 구성됩니다.요소는 여는 태그에서 시작하여 닫는 태그에서 끝납니다.당신은 아마 보였을 겁니다.<body>
그리고.</body>
html로열림 태그와 닫힘 태그 사이의 모든 것이 요소의 내용입니다.요소가 자기 닫힘 태그로 정의되는 경우(예:<br/>
내용이 비어 있습니다.
태그를 여는 것은 속성을 지정할 수도 있습니다.<p class="rant">
. 이 예제에서는 특성 이름이 'class'이고 값이 'rant'입니다.
XML 언어에는 '노드'와 같은 것이 없습니다.스펙을 읽어보세요, 단어는 발생하지 않습니다.
어떤 사람들은 요소를 의미하기 위해 '노드'라는 단어를 비공식적으로 사용하는데, 이것은 어떤 파서들이 기술적인 의미('텍스트 노드'와 '요소 노드'를 식별)를 부여하기 때문에 혼란스럽습니다.정확한 의미는 구문 분석기에 따라 다르므로 사용하는 구문 분석기를 지정하지 않으면 단어가 잘못 정의됩니다.element를 의미한다면 element라고 말합니다.
노드는 요소와 특성(기본적으로 다른 모든 XML 표현) 모두의 기본 클래스입니다.
요소는 자식 노드 및 특성을 가질 수 있는 유일한 노드 유형입니다.
문서에 자식 노드도 있지만
속성, 텍스트, 자식 요소 하나만 포함할 수 있습니다.
노드는 다음과 같이 정의됩니다.
문서에서 유효한 완전한 구조의 최소 단위.
또는 다음과 같이:
트리 보기에서 관련 개체를 보관하는 컨테이너 역할을 하는 개체입니다.
이제 요소 노드, 속성 노드 등으로 다양한 종류의 노드가 있습니다.
이제 알아요, 그 요소는 노드 중 하나입니다.
여기 "http://www.w3schools.com/dom/dom_nodetype.asp "에 있는 모든 노드 유형
요소가 시작 태그와 끝 태그 사이에 있습니다.
따라서 텍스트 노드는 노드이지만 요소는 아닙니다.
요소는 속성, 텍스트 등의 노드 유형입니다.
XML 요소는 XML 노드이지만 속성과 같은 추가 요소가 있습니다.
<a>Lorem Ipsum</a> //This is a node
<a id="sample">Lorem Ipsum</a> //This is an element
노드와 요소가 같습니다.모든 요소는 노드이지만 모든 노드가 하나의 요소여야 하는 것은 아닙니다.
언급URL : https://stackoverflow.com/questions/132564/whats-the-difference-between-an-element-and-a-node-in-xml
'itsource' 카테고리의 다른 글
목록에서 임의로 MYSQL 삽입 (0) | 2023.10.04 |
---|---|
jQuery divas 특정 인덱스로 삽입 (0) | 2023.09.24 |
봄에 추상적="true"가 의미하는 바는 무엇입니까? (0) | 2023.09.24 |
C에서 64비트 변수 선언 (0) | 2023.09.24 |
클릭 시 다중 선택 상자의 모든 옵션을 선택하려면 어떻게 해야 합니까? (0) | 2023.09.24 |