/** * Renvoie les r?f?rences des ?l?ments enfants de l'?l?ment dont la r?f?rence est pass?e en * param?tre */ public ArrayList<Element> listeSousElements(final Element refParent) { // ? faire: cache final WXSElement parent = hRefElementVersWXS.get(refParent); if (parent == null) { LOG.error("JaxeWXS: listeSousElements: r?f?rence ?l?ment inconnue: " + refParent); return (null); } final ArrayList<ToutElement> sousElements = parent.listeSousElements(); final ArrayList<Element> liste = new ArrayList<Element>(); for (ToutElement element : sousElements) liste.add(element.getDOMElement()); return (liste); }
/** * Renvoie la r?f?rence du premier ?l?ment du sch?ma avec le nom et l'espace de noms de l'?l?ment * pass? en param?tre, et avec le parent dont la r?f?rence est pass?e en param?tre. */ public Element referenceElement(final Element el, final Element refParent) { if (refParent == null) return (referenceElement(el)); // pour les ?l?ments racine final WXSElement wxsParent = hRefElementVersWXS.get(refParent); if (wxsParent == null) { LOG.error("JaxeWXS: referenceElement: r?f?rence ?l?ment inconnue: " + refParent); return (null); } final ArrayList<ToutElement> liste = wxsParent.listeSousElements(); final String nom = el.getLocalName(); final String espace = el.getNamespaceURI(); for (final ToutElement element : liste) { if (element.getName().equals(nom)) { final String espaceElement = element.getNamespace(); if ((espace == null && espaceElement == null) || (espace != null && espace.equals(espaceElement))) return (element.getDOMElement()); } } return (null); }