// Path: src/org/openddr/simpleapi/oddr/model/vocabulary/Vocabulary.java
// public class Vocabulary {
// 
//     private String[] aspects = null;
//     private Map<String, VocabularyProperty> properties = null;
//     private Map<String, VocabularyVariable> vocabularyVariables = null;
//     private String vocabularyIRI = null;
// 
//     public String[] getAspects() {
//         return aspects;
//     }
// 
//     public void setAspects(String[] aspects) {
//         this.aspects = aspects;
//     }
// 
//     public Map<String, VocabularyProperty> getProperties() {
//         return properties;
//     }
// 
//     public void setProperties(Map<String, VocabularyProperty> properties) {
//         this.properties = properties;
//     }
// 
//     public Map<String, VocabularyVariable> getVocabularyVariables() {
//         return vocabularyVariables;
//     }
// 
//     public void setVocabularyVariables(Map<String, VocabularyVariable> vocabularyVariables) {
//         this.vocabularyVariables = vocabularyVariables;
//     }
// 
//     public String getVocabularyIRI() {
//         return vocabularyIRI;
//     }
// 
//     public void setVocabularyIRI(String vocabularyIRI) {
//         this.vocabularyIRI = vocabularyIRI;
//     }
// }
// 
// Path: src/org/openddr/simpleapi/oddr/model/vocabulary/VocabularyProperty.java
// public class VocabularyProperty {
// 
//     private String[] aspects = null;
//     private String defaultAspect = null;
//     private String expr = null;
//     private String name = null;
//     private String type = null;
// 
//     public String[] getAspects() {
//         return aspects;
//     }
// 
//     public void setAspects(String[] aspects) {
//         this.aspects = aspects;
//     }
// 
//     public String getDefaultAspect() {
//         return defaultAspect;
//     }
// 
//     public void setDefaultAspect(String defaultAspect) {
//         this.defaultAspect = defaultAspect;
//     }
// 
//     public String getExpr() {
//         return expr;
//     }
// 
//     public void setExpr(String expr) {
//         this.expr = expr;
//     }
// 
//     public String getName() {
//         return name;
//     }
// 
//     public void setName(String name) {
//         this.name = name;
//     }
// 
//     public String getType() {
//         return type;
//     }
// 
//     public void setType(String type) {
//         this.type = type;
//     }
// }
// 
// Path: src/org/openddr/simpleapi/oddr/model/vocabulary/VocabularyVariable.java
// public class VocabularyVariable {
// 
//     private String aspect = null;
//     private String id = null;
//     private String name = null;
//     private String vocabulary = null;
// 
//     public String getAspect() {
//         return aspect;
//     }
// 
//     public void setAspect(String aspect) {
//         this.aspect = aspect;
//     }
// 
//     public String getId() {
//         return id;
//     }
// 
//     public void setId(String id) {
//         this.id = id;
//     }
// 
//     public String getName() {
//         return name;
//     }
// 
//     public void setName(String name) {
//         this.name = name;
//     }
// 
//     public String getVocabulary() {
//         return vocabulary;
//     }
// 
//     public void setVocabulary(String vocabulary) {
//         this.vocabulary = vocabulary;
//     }
// 
//     @Override
//     public String toString() {
//         return "VocabularyVariable {" + " aspect=" + aspect + " id=" + id + " name=" + name + " vocabulary=" + vocabulary + '}';
//     }
// }


import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import org.openddr.simpleapi.oddr.model.vocabulary.Vocabulary;
import org.openddr.simpleapi.oddr.model.vocabulary.VocabularyProperty;
import org.openddr.simpleapi.oddr.model.vocabulary.VocabularyVariable;
import org.xml.sax.Attributes;
import org.xml.sax.SAXException;
import org.xml.sax.helpers.DefaultHandler;
/**
 * Copyright 2011 OpenDDR LLC
 * This software is distributed under the terms of the GNU Lesser General Public License.
 *
 *
 * This file is part of OpenDDR Simple APIs.
 * OpenDDR Simple APIs is free software: you can redistribute it and/or modify
 * it under the terms of the GNU Lesser General Public License as published by
 * the Free Software Foundation, version 3 of the License.
 *
 * OpenDDR Simple APIs is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 *
 * GNU Lesser General Public License for more details.
 *
 * You should have received a copy of the GNU Lesser General Public License
 * along with Simple APIs.  If not, see <http://www.gnu.org/licenses/>.
 *
 */
package org.openddr.simpleapi.oddr.documenthandler;


public class VocabularyHandler extends DefaultHandler {

    private static final String ELEMENT_VOCABULARY_DESCRIPTION = "VocabularyDescription";
    private static final String ELEMENT_ASPECTS = "Aspects";
    private static final String ELEMENT_ASPECT = "Aspect";
    private static final String ELEMENT_VARIABLES = "Variables";
    private static final String ELEMENT_VARIABLE = "Variable";
    private static final String ELEMENT_PROPERTIES = "Properties";
    private static final String ELEMENT_PROPERTY = "Property";
    private static final String ATTRIBUTE_PROPERTY_TARGET = "target";
    private static final String ATTRIBUTE_PROPERTY_ASPECT_NAME = "name";
    private static final String ATTRIBUTE_PROPERTY_ASPECT = "aspect";
    private static final String ATTRIBUTE_PROPERTY_NAME = "name";
    private static final String ATTRIBUTE_PROPERTY_VOCABULARY = "vocabulary";
    private static final String ATTRIBUTE_PROPERTY_ID = "id";
    private static final String ATTRIBUTE_PROPERTY_DATA_TYPE = "datatype";
    private static final String ATTRIBUTE_PROPERTY_EXPR = "expr";
    private static final String ATTRIBUTE_PROPERTY_ASPECTS = "aspects";
    private static final String ATTRIBUTE_PROPERTY_DEFAULT_ASPECT = "defaultAspect";
    private Vocabulary vocabulary = null;
    private String aspect = null;
    private List<String> aspects = null;
// Path: src/org/openddr/simpleapi/oddr/model/vocabulary/Vocabulary.java
// public class Vocabulary {
// 
//     private String[] aspects = null;
//     private Map<String, VocabularyProperty> properties = null;
//     private Map<String, VocabularyVariable> vocabularyVariables = null;
//     private String vocabularyIRI = null;
// 
//     public String[] getAspects() {
//         return aspects;
//     }
// 
//     public void setAspects(String[] aspects) {
//         this.aspects = aspects;
//     }
// 
//     public Map<String, VocabularyProperty> getProperties() {
//         return properties;
//     }
// 
//     public void setProperties(Map<String, VocabularyProperty> properties) {
//         this.properties = properties;
//     }
// 
//     public Map<String, VocabularyVariable> getVocabularyVariables() {
//         return vocabularyVariables;
//     }
// 
//     public void setVocabularyVariables(Map<String, VocabularyVariable> vocabularyVariables) {
//         this.vocabularyVariables = vocabularyVariables;
//     }
// 
//     public String getVocabularyIRI() {
//         return vocabularyIRI;
//     }
// 
//     public void setVocabularyIRI(String vocabularyIRI) {
//         this.vocabularyIRI = vocabularyIRI;
//     }
// }
// 
// Path: src/org/openddr/simpleapi/oddr/model/vocabulary/VocabularyProperty.java
// public class VocabularyProperty {
// 
//     private String[] aspects = null;
//     private String defaultAspect = null;
//     private String expr = null;
//     private String name = null;
//     private String type = null;
// 
//     public String[] getAspects() {
//         return aspects;
//     }
// 
//     public void setAspects(String[] aspects) {
//         this.aspects = aspects;
//     }
// 
//     public String getDefaultAspect() {
//         return defaultAspect;
//     }
// 
//     public void setDefaultAspect(String defaultAspect) {
//         this.defaultAspect = defaultAspect;
//     }
// 
//     public String getExpr() {
//         return expr;
//     }
// 
//     public void setExpr(String expr) {
//         this.expr = expr;
//     }
// 
//     public String getName() {
//         return name;
//     }
// 
//     public void setName(String name) {
//         this.name = name;
//     }
// 
//     public String getType() {
//         return type;
//     }
// 
//     public void setType(String type) {
//         this.type = type;
//     }
// }
// 
// Path: src/org/openddr/simpleapi/oddr/model/vocabulary/VocabularyVariable.java
// public class VocabularyVariable {
// 
//     private String aspect = null;
//     private String id = null;
//     private String name = null;
//     private String vocabulary = null;
// 
//     public String getAspect() {
//         return aspect;
//     }
// 
//     public void setAspect(String aspect) {
//         this.aspect = aspect;
//     }
// 
//     public String getId() {
//         return id;
//     }
// 
//     public void setId(String id) {
//         this.id = id;
//     }
// 
//     public String getName() {
//         return name;
//     }
// 
//     public void setName(String name) {
//         this.name = name;
//     }
// 
//     public String getVocabulary() {
//         return vocabulary;
//     }
// 
//     public void setVocabulary(String vocabulary) {
//         this.vocabulary = vocabulary;
//     }
// 
//     @Override
//     public String toString() {
//         return "VocabularyVariable {" + " aspect=" + aspect + " id=" + id + " name=" + name + " vocabulary=" + vocabulary + '}';
//     }
// }


// Path: src/org/openddr/simpleapi/oddr/documenthandler/VocabularyHandler.java
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import org.openddr.simpleapi.oddr.model.vocabulary.Vocabulary;
import org.openddr.simpleapi.oddr.model.vocabulary.VocabularyProperty;
import org.openddr.simpleapi.oddr.model.vocabulary.VocabularyVariable;
import org.xml.sax.Attributes;
import org.xml.sax.SAXException;
import org.xml.sax.helpers.DefaultHandler;

/**
 * Copyright 2011 OpenDDR LLC
 * This software is distributed under the terms of the GNU Lesser General Public License.
 *
 *
 * This file is part of OpenDDR Simple APIs.
 * OpenDDR Simple APIs is free software: you can redistribute it and/or modify
 * it under the terms of the GNU Lesser General Public License as published by
 * the Free Software Foundation, version 3 of the License.
 *
 * OpenDDR Simple APIs is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 *
 * GNU Lesser General Public License for more details.
 *
 * You should have received a copy of the GNU Lesser General Public License
 * along with Simple APIs.  If not, see <http://www.gnu.org/licenses/>.
 *
 */
package org.openddr.simpleapi.oddr.documenthandler;


public class VocabularyHandler extends DefaultHandler {

    private static final String ELEMENT_VOCABULARY_DESCRIPTION = "VocabularyDescription";
    private static final String ELEMENT_ASPECTS = "Aspects";
    private static final String ELEMENT_ASPECT = "Aspect";
    private static final String ELEMENT_VARIABLES = "Variables";
    private static final String ELEMENT_VARIABLE = "Variable";
    private static final String ELEMENT_PROPERTIES = "Properties";
    private static final String ELEMENT_PROPERTY = "Property";
    private static final String ATTRIBUTE_PROPERTY_TARGET = "target";
    private static final String ATTRIBUTE_PROPERTY_ASPECT_NAME = "name";
    private static final String ATTRIBUTE_PROPERTY_ASPECT = "aspect";
    private static final String ATTRIBUTE_PROPERTY_NAME = "name";
    private static final String ATTRIBUTE_PROPERTY_VOCABULARY = "vocabulary";
    private static final String ATTRIBUTE_PROPERTY_ID = "id";
    private static final String ATTRIBUTE_PROPERTY_DATA_TYPE = "datatype";
    private static final String ATTRIBUTE_PROPERTY_EXPR = "expr";
    private static final String ATTRIBUTE_PROPERTY_ASPECTS = "aspects";
    private static final String ATTRIBUTE_PROPERTY_DEFAULT_ASPECT = "defaultAspect";
    private Vocabulary vocabulary = null;
    private String aspect = null;
    private List<String> aspects = null;
    private VocabularyProperty vocabularyProperty = null;