A api do dom

Disponível somente no TrabalhosFeitos
  • Páginas : 5 (1185 palavras )
  • Download(s) : 0
  • Publicado : 12 de outubro de 2012
Ler documento completo
Amostra do texto
A interface DOM
DOM é uma interface de programação, baseada no modelo de objetos, que permite a manipulação e transformação de documentos em XML. A interface DOM manipula documentos XML na forma de uma estrutura em árvore. Quando um documento é carregado na memória do computador, suas estruturas podem ser lidas e manipuladas através do objeto DOM.
A interface DOM faz a representação dodocumento XML na forma de uma árvore de objetos, onde cada nó da árvore representa um componente do documento. Após o processamento completo do documento XML, a memória deverá conter a árvore de objetos DOM, a qual disponibiliza para as aplicações qualquer informação relacionada à estrutura e ao conteúdo do documento.
O modelo implementado pela interface DOM é a forma mais flexível para manipulação doconteúdo de um documento XML. Este modelo não é limitado pela ordem em que as estruturas do documento são processadas, logo é possível navegar pelo documento em qualquer ordem. Contudo, como utilização do objeto DOM requer a leitura de toda estrutura XML em uma árvore na memória, pode acontecer um alto consumo de recursos da máquina.
O modelo DOM define classes de objetos para representar cadafragmento de um documento XML. Existem objetos para representação de elementos, atributos, entidades, texto, entre outros. O objeto básico do DOM é o nó (Node). Existem especializações para os diversos tipos de nó. O nó é um objeto genérico na árvore e, portanto, a maioria dos objetos DOM herdam dele. O elemento mais alto de uma árvore DOM é representado pelo objeto Document, que também herda doobjeto Node. Conceitualmente, este elemento é a raiz da árvore e a partir dele é possível acessar a árvore completa do documento XML.
A figura abaixo representa o mapa DOM:

Agora você já sabe que a interface DOM é baseada em uma estrutura em forma de árvore; sabe que a árvore Dom contém um número de nós (Node). Do ponto de vista da linguagem java, um Node é uma interface. O Node é um tipo de dadobase do DOM. Tudo na árvore DOM é um Node de um tipo ou de algum outro tipo.
Observe algumas interfaces importantes da API DOM:

O DOM define algumas subinterfaces da interface Node:
• Element: representa um elemento XML
• Attr: representa um atributo do elemento XML
• Text: é o conteúdo de um elemento. Isso significa que um elemento com informação do tipo texto contém um filho do tipo nóde texto
• Document: represente todo o documento XML. Apenas um objeto Document existe em cada XML que você faz o parse. Dado um objeto Document, você pode saber qual o elemento raiz da árvore DOM; a partir da raiz, você pode usar as funções da interface DOM para ler a manipular a árvore XML.
Alguns outros tipos: Comment, que representa um comentário no arquivo XML; ProcessingInstruction, querepresenta uma instrução de processamento; CDATASection, que representa uma seção CDATA.
É um pouco raro utilizar esses tipos, mas agora você já sabem que eles também existem.
Métodos
Quando se trabalha com DOM, você geralmente irá chamar os métodos listados abaixo:
• Document,getDocumentElement(): retorna o elemento raiz da árvore DOM.
• Node.getFirstChild() e Node.getLastChild(): retorna oprimeiro elemento filho ou o último elemento filho de um determinado nó.
• Element.getAttribute(String attrName): para um dado Elemento (Element), retorna o valor do atributo cujo nome foi passado como parâmetro. Se você quiser saber qual é o vlaor do atributo ‘id’, use Element.getAttribute(“id”). Se o atributo não existe, retorna uma String vazia (“”).
Exemplo XML e DOM
Vamos pegar o XML abaixocomo exemplo:


Apesar da interface DOM não especificar como se deve parsear um documento XML, especifica a sintaxe do documento e como os elementos estão estruturados como objetos DOM. Um documento XML é armazenado numa estrutura hierárquica em forma de árvore, e para cada elemento da árvore, é feita a conexão com seu pai ou filho, ou ainda informação (dado...
tracking img