From 824e24da5cfab839fa6b0ba34565dba74e3c258d Mon Sep 17 00:00:00 2001
From: clemenso <clemenso@8a26b1a7-26f0-462f-b9ef-d0e30c41f5a4>
Date: Mon, 1 Dec 2008 13:32:39 +0000
Subject: CardChannel schema

git-svn-id: https://joinup.ec.europa.eu/svn/mocca/trunk@228 8a26b1a7-26f0-462f-b9ef-d0e30c41f5a4
---
 .../java/at/gv/egiz/stal/cardchannel/ATRType.java  | 100 ++++++++
 .../at/gv/egiz/stal/cardchannel/AttributeList.java |  71 ++++++
 .../at/gv/egiz/stal/cardchannel/AttributeType.java | 264 ++++++++++++++++++++
 .../gv/egiz/stal/cardchannel/CommandAPDUType.java  | 154 ++++++++++++
 .../at/gv/egiz/stal/cardchannel/ObjectFactory.java | 170 +++++++++++++
 .../at/gv/egiz/stal/cardchannel/ResetType.java     |  64 +++++
 .../gv/egiz/stal/cardchannel/ResponseAPDUType.java | 161 +++++++++++++
 .../at/gv/egiz/stal/cardchannel/ResponseType.java  |  78 ++++++
 .../at/gv/egiz/stal/cardchannel/ScriptType.java    |  80 +++++++
 .../gv/egiz/stal/cardchannel/VerifyAPDUType.java   | 266 +++++++++++++++++++++
 10 files changed, 1408 insertions(+)
 create mode 100644 utils/src/main/java/at/gv/egiz/stal/cardchannel/ATRType.java
 create mode 100644 utils/src/main/java/at/gv/egiz/stal/cardchannel/AttributeList.java
 create mode 100644 utils/src/main/java/at/gv/egiz/stal/cardchannel/AttributeType.java
 create mode 100644 utils/src/main/java/at/gv/egiz/stal/cardchannel/CommandAPDUType.java
 create mode 100644 utils/src/main/java/at/gv/egiz/stal/cardchannel/ObjectFactory.java
 create mode 100644 utils/src/main/java/at/gv/egiz/stal/cardchannel/ResetType.java
 create mode 100644 utils/src/main/java/at/gv/egiz/stal/cardchannel/ResponseAPDUType.java
 create mode 100644 utils/src/main/java/at/gv/egiz/stal/cardchannel/ResponseType.java
 create mode 100644 utils/src/main/java/at/gv/egiz/stal/cardchannel/ScriptType.java
 create mode 100644 utils/src/main/java/at/gv/egiz/stal/cardchannel/VerifyAPDUType.java

(limited to 'utils')

diff --git a/utils/src/main/java/at/gv/egiz/stal/cardchannel/ATRType.java b/utils/src/main/java/at/gv/egiz/stal/cardchannel/ATRType.java
new file mode 100644
index 00000000..d9f2b8a7
--- /dev/null
+++ b/utils/src/main/java/at/gv/egiz/stal/cardchannel/ATRType.java
@@ -0,0 +1,100 @@
+
+package at.gv.egiz.stal.cardchannel;
+
+import java.math.BigInteger;
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlSchemaType;
+import javax.xml.bind.annotation.XmlType;
+import javax.xml.bind.annotation.XmlValue;
+import javax.xml.bind.annotation.adapters.HexBinaryAdapter;
+import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
+
+
+/**
+ * Contains the ATR received as reponse to a Reset
+ *                 command
+ * 
+ * <p>Java class for ATRType complex type.
+ * 
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ * 
+ * <pre>
+ * &lt;complexType name="ATRType">
+ *   &lt;simpleContent>
+ *     &lt;extension base="&lt;http://www.w3.org/2001/XMLSchema>hexBinary">
+ *       &lt;attribute name="rc" type="{http://www.w3.org/2001/XMLSchema}integer" default="0" />
+ *     &lt;/extension>
+ *   &lt;/simpleContent>
+ * &lt;/complexType>
+ * </pre>
+ * 
+ * 
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "ATRType", propOrder = {
+    "value"
+})
+public class ATRType {
+
+    @XmlValue
+    @XmlJavaTypeAdapter(HexBinaryAdapter.class)
+    @XmlSchemaType(name = "hexBinary")
+    protected byte[] value;
+    @XmlAttribute
+    protected BigInteger rc;
+
+    /**
+     * Gets the value of the value property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public byte[] getValue() {
+        return value;
+    }
+
+    /**
+     * Sets the value of the value property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setValue(byte[] value) {
+        this.value = ((byte[]) value);
+    }
+
+    /**
+     * Gets the value of the rc property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link BigInteger }
+     *     
+     */
+    public BigInteger getRc() {
+        if (rc == null) {
+            return new BigInteger("0");
+        } else {
+            return rc;
+        }
+    }
+
+    /**
+     * Sets the value of the rc property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link BigInteger }
+     *     
+     */
+    public void setRc(BigInteger value) {
+        this.rc = value;
+    }
+
+}
diff --git a/utils/src/main/java/at/gv/egiz/stal/cardchannel/AttributeList.java b/utils/src/main/java/at/gv/egiz/stal/cardchannel/AttributeList.java
new file mode 100644
index 00000000..da0ac66c
--- /dev/null
+++ b/utils/src/main/java/at/gv/egiz/stal/cardchannel/AttributeList.java
@@ -0,0 +1,71 @@
+
+package at.gv.egiz.stal.cardchannel;
+
+import java.util.ArrayList;
+import java.util.List;
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * Contains a list of attributes
+ * 
+ * <p>Java class for AttributeList complex type.
+ * 
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ * 
+ * <pre>
+ * &lt;complexType name="AttributeList">
+ *   &lt;complexContent>
+ *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       &lt;sequence>
+ *         &lt;element name="Attribute" type="{}AttributeType" maxOccurs="unbounded" minOccurs="0"/>
+ *       &lt;/sequence>
+ *     &lt;/restriction>
+ *   &lt;/complexContent>
+ * &lt;/complexType>
+ * </pre>
+ * 
+ * 
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "AttributeList", propOrder = {
+    "attribute"
+})
+public class AttributeList {
+
+    @XmlElement(name = "Attribute")
+    protected List<AttributeType> attribute;
+
+    /**
+     * Gets the value of the attribute property.
+     * 
+     * <p>
+     * This accessor method returns a reference to the live list,
+     * not a snapshot. Therefore any modification you make to the
+     * returned list will be present inside the JAXB object.
+     * This is why there is not a <CODE>set</CODE> method for the attribute property.
+     * 
+     * <p>
+     * For example, to add a new item, do as follows:
+     * <pre>
+     *    getAttribute().add(newItem);
+     * </pre>
+     * 
+     * 
+     * <p>
+     * Objects of the following type(s) are allowed in the list
+     * {@link AttributeType }
+     * 
+     * 
+     */
+    public List<AttributeType> getAttribute() {
+        if (attribute == null) {
+            attribute = new ArrayList<AttributeType>();
+        }
+        return this.attribute;
+    }
+
+}
diff --git a/utils/src/main/java/at/gv/egiz/stal/cardchannel/AttributeType.java b/utils/src/main/java/at/gv/egiz/stal/cardchannel/AttributeType.java
new file mode 100644
index 00000000..3666c92b
--- /dev/null
+++ b/utils/src/main/java/at/gv/egiz/stal/cardchannel/AttributeType.java
@@ -0,0 +1,264 @@
+
+package at.gv.egiz.stal.cardchannel;
+
+import java.math.BigInteger;
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlSchemaType;
+import javax.xml.bind.annotation.XmlType;
+import javax.xml.datatype.XMLGregorianCalendar;
+
+
+/**
+ * Contains an attribute converted from ASN.1
+ * 
+ * <p>Java class for AttributeType complex type.
+ * 
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ * 
+ * <pre>
+ * &lt;complexType name="AttributeType">
+ *   &lt;complexContent>
+ *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       &lt;sequence>
+ *         &lt;element name="Integer" type="{http://www.w3.org/2001/XMLSchema}integer" minOccurs="0"/>
+ *         &lt;element name="Latin1String" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
+ *         &lt;element name="UTF8String" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
+ *         &lt;element name="NumericString" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
+ *         &lt;element name="PrintableString" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
+ *         &lt;element name="GeneralizedTime" type="{http://www.w3.org/2001/XMLSchema}dateTime" minOccurs="0"/>
+ *         &lt;element name="Date" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
+ *       &lt;/sequence>
+ *       &lt;attribute name="oid" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *     &lt;/restriction>
+ *   &lt;/complexContent>
+ * &lt;/complexType>
+ * </pre>
+ * 
+ * 
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "AttributeType", propOrder = {
+    "integer",
+    "latin1String",
+    "utf8String",
+    "numericString",
+    "printableString",
+    "generalizedTime",
+    "date"
+})
+public class AttributeType {
+
+    @XmlElement(name = "Integer")
+    protected BigInteger integer;
+    @XmlElement(name = "Latin1String")
+    protected String latin1String;
+    @XmlElement(name = "UTF8String")
+    protected String utf8String;
+    @XmlElement(name = "NumericString")
+    protected String numericString;
+    @XmlElement(name = "PrintableString")
+    protected String printableString;
+    @XmlElement(name = "GeneralizedTime")
+    @XmlSchemaType(name = "dateTime")
+    protected XMLGregorianCalendar generalizedTime;
+    @XmlElement(name = "Date")
+    protected String date;
+    @XmlAttribute(required = true)
+    protected String oid;
+
+    /**
+     * Gets the value of the integer property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link BigInteger }
+     *     
+     */
+    public BigInteger getInteger() {
+        return integer;
+    }
+
+    /**
+     * Sets the value of the integer property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link BigInteger }
+     *     
+     */
+    public void setInteger(BigInteger value) {
+        this.integer = value;
+    }
+
+    /**
+     * Gets the value of the latin1String property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getLatin1String() {
+        return latin1String;
+    }
+
+    /**
+     * Sets the value of the latin1String property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setLatin1String(String value) {
+        this.latin1String = value;
+    }
+
+    /**
+     * Gets the value of the utf8String property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getUTF8String() {
+        return utf8String;
+    }
+
+    /**
+     * Sets the value of the utf8String property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setUTF8String(String value) {
+        this.utf8String = value;
+    }
+
+    /**
+     * Gets the value of the numericString property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getNumericString() {
+        return numericString;
+    }
+
+    /**
+     * Sets the value of the numericString property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setNumericString(String value) {
+        this.numericString = value;
+    }
+
+    /**
+     * Gets the value of the printableString property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getPrintableString() {
+        return printableString;
+    }
+
+    /**
+     * Sets the value of the printableString property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setPrintableString(String value) {
+        this.printableString = value;
+    }
+
+    /**
+     * Gets the value of the generalizedTime property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link XMLGregorianCalendar }
+     *     
+     */
+    public XMLGregorianCalendar getGeneralizedTime() {
+        return generalizedTime;
+    }
+
+    /**
+     * Sets the value of the generalizedTime property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link XMLGregorianCalendar }
+     *     
+     */
+    public void setGeneralizedTime(XMLGregorianCalendar value) {
+        this.generalizedTime = value;
+    }
+
+    /**
+     * Gets the value of the date property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getDate() {
+        return date;
+    }
+
+    /**
+     * Sets the value of the date property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setDate(String value) {
+        this.date = value;
+    }
+
+    /**
+     * Gets the value of the oid property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getOid() {
+        return oid;
+    }
+
+    /**
+     * Sets the value of the oid property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setOid(String value) {
+        this.oid = value;
+    }
+
+}
diff --git a/utils/src/main/java/at/gv/egiz/stal/cardchannel/CommandAPDUType.java b/utils/src/main/java/at/gv/egiz/stal/cardchannel/CommandAPDUType.java
new file mode 100644
index 00000000..d835ef11
--- /dev/null
+++ b/utils/src/main/java/at/gv/egiz/stal/cardchannel/CommandAPDUType.java
@@ -0,0 +1,154 @@
+
+package at.gv.egiz.stal.cardchannel;
+
+import java.math.BigInteger;
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlSchemaType;
+import javax.xml.bind.annotation.XmlType;
+import javax.xml.bind.annotation.XmlValue;
+import javax.xml.bind.annotation.adapters.HexBinaryAdapter;
+import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
+
+
+/**
+ * Contains a sequence of bytes send as command APDU to the
+ *                 icc
+ * 
+ * <p>Java class for CommandAPDUType complex type.
+ * 
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ * 
+ * <pre>
+ * &lt;complexType name="CommandAPDUType">
+ *   &lt;simpleContent>
+ *     &lt;extension base="&lt;http://www.w3.org/2001/XMLSchema>hexBinary">
+ *       &lt;attribute name="sequence" use="required" type="{http://www.w3.org/2001/XMLSchema}positiveInteger" />
+ *       &lt;attribute name="of" use="required" type="{http://www.w3.org/2001/XMLSchema}positiveInteger" />
+ *       &lt;attribute name="expectedSW" type="{http://www.w3.org/2001/XMLSchema}hexBinary" />
+ *     &lt;/extension>
+ *   &lt;/simpleContent>
+ * &lt;/complexType>
+ * </pre>
+ * 
+ * 
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "CommandAPDUType", propOrder = {
+    "value"
+})
+public class CommandAPDUType {
+
+    @XmlValue
+    @XmlJavaTypeAdapter(HexBinaryAdapter.class)
+    @XmlSchemaType(name = "hexBinary")
+    protected byte[] value;
+    @XmlAttribute(required = true)
+    @XmlSchemaType(name = "positiveInteger")
+    protected BigInteger sequence;
+    @XmlAttribute(required = true)
+    @XmlSchemaType(name = "positiveInteger")
+    protected BigInteger of;
+    @XmlAttribute
+    @XmlJavaTypeAdapter(HexBinaryAdapter.class)
+    @XmlSchemaType(name = "hexBinary")
+    protected byte[] expectedSW;
+
+    /**
+     * Gets the value of the value property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public byte[] getValue() {
+        return value;
+    }
+
+    /**
+     * Sets the value of the value property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setValue(byte[] value) {
+        this.value = ((byte[]) value);
+    }
+
+    /**
+     * Gets the value of the sequence property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link BigInteger }
+     *     
+     */
+    public BigInteger getSequence() {
+        return sequence;
+    }
+
+    /**
+     * Sets the value of the sequence property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link BigInteger }
+     *     
+     */
+    public void setSequence(BigInteger value) {
+        this.sequence = value;
+    }
+
+    /**
+     * Gets the value of the of property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link BigInteger }
+     *     
+     */
+    public BigInteger getOf() {
+        return of;
+    }
+
+    /**
+     * Sets the value of the of property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link BigInteger }
+     *     
+     */
+    public void setOf(BigInteger value) {
+        this.of = value;
+    }
+
+    /**
+     * Gets the value of the expectedSW property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public byte[] getExpectedSW() {
+        return expectedSW;
+    }
+
+    /**
+     * Sets the value of the expectedSW property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setExpectedSW(byte[] value) {
+        this.expectedSW = ((byte[]) value);
+    }
+
+}
diff --git a/utils/src/main/java/at/gv/egiz/stal/cardchannel/ObjectFactory.java b/utils/src/main/java/at/gv/egiz/stal/cardchannel/ObjectFactory.java
new file mode 100644
index 00000000..7738bfdd
--- /dev/null
+++ b/utils/src/main/java/at/gv/egiz/stal/cardchannel/ObjectFactory.java
@@ -0,0 +1,170 @@
+
+package at.gv.egiz.stal.cardchannel;
+
+import javax.xml.bind.JAXBElement;
+import javax.xml.bind.annotation.XmlElementDecl;
+import javax.xml.bind.annotation.XmlRegistry;
+import javax.xml.bind.annotation.adapters.HexBinaryAdapter;
+import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
+import javax.xml.namespace.QName;
+
+
+/**
+ * This object contains factory methods for each 
+ * Java content interface and Java element interface 
+ * generated in the at.gv.egiz.stal.cardchannel package. 
+ * <p>An ObjectFactory allows you to programatically 
+ * construct new instances of the Java representation 
+ * for XML content. The Java representation of XML 
+ * content can consist of schema derived interfaces 
+ * and classes representing the binding of schema 
+ * type definitions, element declarations and model 
+ * groups.  Factory methods for each of these are 
+ * provided in this class.
+ * 
+ */
+@XmlRegistry
+public class ObjectFactory {
+
+    private final static QName _Grunddaten_QNAME = new QName("", "Grunddaten");
+    private final static QName _Script_QNAME = new QName("", "Script");
+    private final static QName _Response_QNAME = new QName("", "Response");
+    private final static QName _SVPersonenbindung_QNAME = new QName("", "SV-Personenbindung");
+    private final static QName _Status_QNAME = new QName("", "Status");
+    private final static QName _EHIC_QNAME = new QName("", "EHIC");
+
+    /**
+     * Create a new ObjectFactory that can be used to create new instances of schema derived classes for package: at.gv.egiz.stal.cardchannel
+     * 
+     */
+    public ObjectFactory() {
+    }
+
+    /**
+     * Create an instance of {@link VerifyAPDUType }
+     * 
+     */
+    public VerifyAPDUType createVerifyAPDUType() {
+        return new VerifyAPDUType();
+    }
+
+    /**
+     * Create an instance of {@link ResponseType }
+     * 
+     */
+    public ResponseType createResponseType() {
+        return new ResponseType();
+    }
+
+    /**
+     * Create an instance of {@link ResponseAPDUType }
+     * 
+     */
+    public ResponseAPDUType createResponseAPDUType() {
+        return new ResponseAPDUType();
+    }
+
+    /**
+     * Create an instance of {@link CommandAPDUType }
+     * 
+     */
+    public CommandAPDUType createCommandAPDUType() {
+        return new CommandAPDUType();
+    }
+
+    /**
+     * Create an instance of {@link ATRType }
+     * 
+     */
+    public ATRType createATRType() {
+        return new ATRType();
+    }
+
+    /**
+     * Create an instance of {@link ScriptType }
+     * 
+     */
+    public ScriptType createScriptType() {
+        return new ScriptType();
+    }
+
+    /**
+     * Create an instance of {@link ResetType }
+     * 
+     */
+    public ResetType createResetType() {
+        return new ResetType();
+    }
+
+    /**
+     * Create an instance of {@link AttributeType }
+     * 
+     */
+    public AttributeType createAttributeType() {
+        return new AttributeType();
+    }
+
+    /**
+     * Create an instance of {@link AttributeList }
+     * 
+     */
+    public AttributeList createAttributeList() {
+        return new AttributeList();
+    }
+
+    /**
+     * Create an instance of {@link JAXBElement }{@code <}{@link AttributeList }{@code >}}
+     * 
+     */
+    @XmlElementDecl(namespace = "", name = "Grunddaten")
+    public JAXBElement<AttributeList> createGrunddaten(AttributeList value) {
+        return new JAXBElement<AttributeList>(_Grunddaten_QNAME, AttributeList.class, null, value);
+    }
+
+    /**
+     * Create an instance of {@link JAXBElement }{@code <}{@link ScriptType }{@code >}}
+     * 
+     */
+    @XmlElementDecl(namespace = "", name = "Script")
+    public JAXBElement<ScriptType> createScript(ScriptType value) {
+        return new JAXBElement<ScriptType>(_Script_QNAME, ScriptType.class, null, value);
+    }
+
+    /**
+     * Create an instance of {@link JAXBElement }{@code <}{@link ResponseType }{@code >}}
+     * 
+     */
+    @XmlElementDecl(namespace = "", name = "Response")
+    public JAXBElement<ResponseType> createResponse(ResponseType value) {
+        return new JAXBElement<ResponseType>(_Response_QNAME, ResponseType.class, null, value);
+    }
+
+    /**
+     * Create an instance of {@link JAXBElement }{@code <}{@link byte[]}{@code >}}
+     * 
+     */
+    @XmlElementDecl(namespace = "", name = "SV-Personenbindung")
+    @XmlJavaTypeAdapter(HexBinaryAdapter.class)
+    public JAXBElement<byte[]> createSVPersonenbindung(byte[] value) {
+        return new JAXBElement<byte[]>(_SVPersonenbindung_QNAME, byte[].class, null, ((byte[]) value));
+    }
+
+    /**
+     * Create an instance of {@link JAXBElement }{@code <}{@link AttributeList }{@code >}}
+     * 
+     */
+    @XmlElementDecl(namespace = "", name = "Status")
+    public JAXBElement<AttributeList> createStatus(AttributeList value) {
+        return new JAXBElement<AttributeList>(_Status_QNAME, AttributeList.class, null, value);
+    }
+
+    /**
+     * Create an instance of {@link JAXBElement }{@code <}{@link AttributeList }{@code >}}
+     * 
+     */
+    @XmlElementDecl(namespace = "", name = "EHIC")
+    public JAXBElement<AttributeList> createEHIC(AttributeList value) {
+        return new JAXBElement<AttributeList>(_EHIC_QNAME, AttributeList.class, null, value);
+    }
+
+}
diff --git a/utils/src/main/java/at/gv/egiz/stal/cardchannel/ResetType.java b/utils/src/main/java/at/gv/egiz/stal/cardchannel/ResetType.java
new file mode 100644
index 00000000..9918473e
--- /dev/null
+++ b/utils/src/main/java/at/gv/egiz/stal/cardchannel/ResetType.java
@@ -0,0 +1,64 @@
+
+package at.gv.egiz.stal.cardchannel;
+
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * Reset the icc and sequence counter
+ * 
+ * <p>Java class for ResetType complex type.
+ * 
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ * 
+ * <pre>
+ * &lt;complexType name="ResetType">
+ *   &lt;complexContent>
+ *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       &lt;attribute name="cold" type="{http://www.w3.org/2001/XMLSchema}boolean" default="true" />
+ *     &lt;/restriction>
+ *   &lt;/complexContent>
+ * &lt;/complexType>
+ * </pre>
+ * 
+ * 
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "ResetType")
+public class ResetType {
+
+    @XmlAttribute
+    protected Boolean cold;
+
+    /**
+     * Gets the value of the cold property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link Boolean }
+     *     
+     */
+    public boolean isCold() {
+        if (cold == null) {
+            return true;
+        } else {
+            return cold;
+        }
+    }
+
+    /**
+     * Sets the value of the cold property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link Boolean }
+     *     
+     */
+    public void setCold(Boolean value) {
+        this.cold = value;
+    }
+
+}
diff --git a/utils/src/main/java/at/gv/egiz/stal/cardchannel/ResponseAPDUType.java b/utils/src/main/java/at/gv/egiz/stal/cardchannel/ResponseAPDUType.java
new file mode 100644
index 00000000..1e7b19d5
--- /dev/null
+++ b/utils/src/main/java/at/gv/egiz/stal/cardchannel/ResponseAPDUType.java
@@ -0,0 +1,161 @@
+
+package at.gv.egiz.stal.cardchannel;
+
+import java.math.BigInteger;
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlSchemaType;
+import javax.xml.bind.annotation.XmlType;
+import javax.xml.bind.annotation.XmlValue;
+import javax.xml.bind.annotation.adapters.HexBinaryAdapter;
+import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
+
+
+/**
+ * Contains a sequence of bytes received from the card as response
+ *                 APDU
+ * 
+ * <p>Java class for ResponseAPDUType complex type.
+ * 
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ * 
+ * <pre>
+ * &lt;complexType name="ResponseAPDUType">
+ *   &lt;simpleContent>
+ *     &lt;extension base="&lt;http://www.w3.org/2001/XMLSchema>hexBinary">
+ *       &lt;attribute name="sequence" use="required" type="{http://www.w3.org/2001/XMLSchema}positiveInteger" />
+ *       &lt;attribute name="rc" type="{http://www.w3.org/2001/XMLSchema}integer" default="0" />
+ *       &lt;attribute name="sw" type="{http://www.w3.org/2001/XMLSchema}hexBinary" default="9000" />
+ *     &lt;/extension>
+ *   &lt;/simpleContent>
+ * &lt;/complexType>
+ * </pre>
+ * 
+ * 
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "ResponseAPDUType", propOrder = {
+    "value"
+})
+public class ResponseAPDUType {
+
+    @XmlValue
+    @XmlJavaTypeAdapter(HexBinaryAdapter.class)
+    @XmlSchemaType(name = "hexBinary")
+    protected byte[] value;
+    @XmlAttribute(required = true)
+    @XmlSchemaType(name = "positiveInteger")
+    protected BigInteger sequence;
+    @XmlAttribute
+    protected BigInteger rc;
+    @XmlAttribute
+    @XmlJavaTypeAdapter(HexBinaryAdapter.class)
+    @XmlSchemaType(name = "hexBinary")
+    protected byte[] sw;
+
+    /**
+     * Gets the value of the value property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public byte[] getValue() {
+        return value;
+    }
+
+    /**
+     * Sets the value of the value property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setValue(byte[] value) {
+        this.value = ((byte[]) value);
+    }
+
+    /**
+     * Gets the value of the sequence property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link BigInteger }
+     *     
+     */
+    public BigInteger getSequence() {
+        return sequence;
+    }
+
+    /**
+     * Sets the value of the sequence property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link BigInteger }
+     *     
+     */
+    public void setSequence(BigInteger value) {
+        this.sequence = value;
+    }
+
+    /**
+     * Gets the value of the rc property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link BigInteger }
+     *     
+     */
+    public BigInteger getRc() {
+        if (rc == null) {
+            return new BigInteger("0");
+        } else {
+            return rc;
+        }
+    }
+
+    /**
+     * Sets the value of the rc property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link BigInteger }
+     *     
+     */
+    public void setRc(BigInteger value) {
+        this.rc = value;
+    }
+
+    /**
+     * Gets the value of the sw property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public byte[] getSw() {
+        if (sw == null) {
+            return new HexBinaryAdapter().unmarshal("9000");
+        } else {
+            return sw;
+        }
+    }
+
+    /**
+     * Sets the value of the sw property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setSw(byte[] value) {
+        this.sw = ((byte[]) value);
+    }
+
+}
diff --git a/utils/src/main/java/at/gv/egiz/stal/cardchannel/ResponseType.java b/utils/src/main/java/at/gv/egiz/stal/cardchannel/ResponseType.java
new file mode 100644
index 00000000..ee25550f
--- /dev/null
+++ b/utils/src/main/java/at/gv/egiz/stal/cardchannel/ResponseType.java
@@ -0,0 +1,78 @@
+
+package at.gv.egiz.stal.cardchannel;
+
+import java.util.ArrayList;
+import java.util.List;
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlElements;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * Contains the result of the script executed by the
+ *                 BKU
+ * 
+ * <p>Java class for ResponseType complex type.
+ * 
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ * 
+ * <pre>
+ * &lt;complexType name="ResponseType">
+ *   &lt;complexContent>
+ *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       &lt;choice maxOccurs="unbounded">
+ *         &lt;element name="ATR" type="{}ATRType"/>
+ *         &lt;element name="ResponseAPDU" type="{}ResponseAPDUType"/>
+ *       &lt;/choice>
+ *     &lt;/restriction>
+ *   &lt;/complexContent>
+ * &lt;/complexType>
+ * </pre>
+ * 
+ * 
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "ResponseType", propOrder = {
+    "atrOrResponseAPDU"
+})
+public class ResponseType {
+
+    @XmlElements({
+        @XmlElement(name = "ATR", type = ATRType.class),
+        @XmlElement(name = "ResponseAPDU", type = ResponseAPDUType.class)
+    })
+    protected List<Object> atrOrResponseAPDU;
+
+    /**
+     * Gets the value of the atrOrResponseAPDU property.
+     * 
+     * <p>
+     * This accessor method returns a reference to the live list,
+     * not a snapshot. Therefore any modification you make to the
+     * returned list will be present inside the JAXB object.
+     * This is why there is not a <CODE>set</CODE> method for the atrOrResponseAPDU property.
+     * 
+     * <p>
+     * For example, to add a new item, do as follows:
+     * <pre>
+     *    getATROrResponseAPDU().add(newItem);
+     * </pre>
+     * 
+     * 
+     * <p>
+     * Objects of the following type(s) are allowed in the list
+     * {@link ATRType }
+     * {@link ResponseAPDUType }
+     * 
+     * 
+     */
+    public List<Object> getATROrResponseAPDU() {
+        if (atrOrResponseAPDU == null) {
+            atrOrResponseAPDU = new ArrayList<Object>();
+        }
+        return this.atrOrResponseAPDU;
+    }
+
+}
diff --git a/utils/src/main/java/at/gv/egiz/stal/cardchannel/ScriptType.java b/utils/src/main/java/at/gv/egiz/stal/cardchannel/ScriptType.java
new file mode 100644
index 00000000..326791e3
--- /dev/null
+++ b/utils/src/main/java/at/gv/egiz/stal/cardchannel/ScriptType.java
@@ -0,0 +1,80 @@
+
+package at.gv.egiz.stal.cardchannel;
+
+import java.util.ArrayList;
+import java.util.List;
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlElements;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * Contains the script to be executed by the BKU
+ * 
+ * <p>Java class for ScriptType complex type.
+ * 
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ * 
+ * <pre>
+ * &lt;complexType name="ScriptType">
+ *   &lt;complexContent>
+ *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       &lt;choice maxOccurs="unbounded">
+ *         &lt;element name="Reset" type="{}ResetType"/>
+ *         &lt;element name="CommandAPDU" type="{}CommandAPDUType"/>
+ *         &lt;element name="VerifyAPDU" type="{}VerifyAPDUType"/>
+ *       &lt;/choice>
+ *     &lt;/restriction>
+ *   &lt;/complexContent>
+ * &lt;/complexType>
+ * </pre>
+ * 
+ * 
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "ScriptType", propOrder = {
+    "resetOrCommandAPDUOrVerifyAPDU"
+})
+public class ScriptType {
+
+    @XmlElements({
+        @XmlElement(name = "CommandAPDU", type = CommandAPDUType.class),
+        @XmlElement(name = "VerifyAPDU", type = VerifyAPDUType.class),
+        @XmlElement(name = "Reset", type = ResetType.class)
+    })
+    protected List<Object> resetOrCommandAPDUOrVerifyAPDU;
+
+    /**
+     * Gets the value of the resetOrCommandAPDUOrVerifyAPDU property.
+     * 
+     * <p>
+     * This accessor method returns a reference to the live list,
+     * not a snapshot. Therefore any modification you make to the
+     * returned list will be present inside the JAXB object.
+     * This is why there is not a <CODE>set</CODE> method for the resetOrCommandAPDUOrVerifyAPDU property.
+     * 
+     * <p>
+     * For example, to add a new item, do as follows:
+     * <pre>
+     *    getResetOrCommandAPDUOrVerifyAPDU().add(newItem);
+     * </pre>
+     * 
+     * 
+     * <p>
+     * Objects of the following type(s) are allowed in the list
+     * {@link CommandAPDUType }
+     * {@link VerifyAPDUType }
+     * {@link ResetType }
+     * 
+     * 
+     */
+    public List<Object> getResetOrCommandAPDUOrVerifyAPDU() {
+        if (resetOrCommandAPDUOrVerifyAPDU == null) {
+            resetOrCommandAPDUOrVerifyAPDU = new ArrayList<Object>();
+        }
+        return this.resetOrCommandAPDUOrVerifyAPDU;
+    }
+
+}
diff --git a/utils/src/main/java/at/gv/egiz/stal/cardchannel/VerifyAPDUType.java b/utils/src/main/java/at/gv/egiz/stal/cardchannel/VerifyAPDUType.java
new file mode 100644
index 00000000..d5f1dba0
--- /dev/null
+++ b/utils/src/main/java/at/gv/egiz/stal/cardchannel/VerifyAPDUType.java
@@ -0,0 +1,266 @@
+
+package at.gv.egiz.stal.cardchannel;
+
+import java.math.BigInteger;
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlSchemaType;
+import javax.xml.bind.annotation.XmlType;
+import javax.xml.bind.annotation.XmlValue;
+import javax.xml.bind.annotation.adapters.HexBinaryAdapter;
+import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
+
+
+/**
+ * Contains a sequence of bytes send as command APDU to the icc after a
+ *                 PIN entered by the user has been incorporated into the APDU
+ * 
+ * <p>Java class for VerifyAPDUType complex type.
+ * 
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ * 
+ * <pre>
+ * &lt;complexType name="VerifyAPDUType">
+ *   &lt;simpleContent>
+ *     &lt;extension base="&lt;http://www.w3.org/2001/XMLSchema>hexBinary">
+ *       &lt;attribute name="sequence" use="required" type="{http://www.w3.org/2001/XMLSchema}positiveInteger" />
+ *       &lt;attribute name="of" use="required" type="{http://www.w3.org/2001/XMLSchema}positiveInteger" />
+ *       &lt;attribute name="expectedSW" type="{http://www.w3.org/2001/XMLSchema}hexBinary" />
+ *       &lt;attribute name="message" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *       &lt;attribute name="format" use="required" type="{http://www.w3.org/2001/XMLSchema}hexBinary" />
+ *       &lt;attribute name="offset" use="required" type="{http://www.w3.org/2001/XMLSchema}nonNegativeInteger" />
+ *       &lt;attribute name="timeout" use="required" type="{http://www.w3.org/2001/XMLSchema}nonNegativeInteger" />
+ *     &lt;/extension>
+ *   &lt;/simpleContent>
+ * &lt;/complexType>
+ * </pre>
+ * 
+ * 
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "VerifyAPDUType", propOrder = {
+    "value"
+})
+public class VerifyAPDUType {
+
+    @XmlValue
+    @XmlJavaTypeAdapter(HexBinaryAdapter.class)
+    @XmlSchemaType(name = "hexBinary")
+    protected byte[] value;
+    @XmlAttribute(required = true)
+    @XmlSchemaType(name = "positiveInteger")
+    protected BigInteger sequence;
+    @XmlAttribute(required = true)
+    @XmlSchemaType(name = "positiveInteger")
+    protected BigInteger of;
+    @XmlAttribute
+    @XmlJavaTypeAdapter(HexBinaryAdapter.class)
+    @XmlSchemaType(name = "hexBinary")
+    protected byte[] expectedSW;
+    @XmlAttribute(required = true)
+    protected String message;
+    @XmlAttribute(required = true)
+    @XmlJavaTypeAdapter(HexBinaryAdapter.class)
+    @XmlSchemaType(name = "hexBinary")
+    protected byte[] format;
+    @XmlAttribute(required = true)
+    @XmlSchemaType(name = "nonNegativeInteger")
+    protected BigInteger offset;
+    @XmlAttribute(required = true)
+    @XmlSchemaType(name = "nonNegativeInteger")
+    protected BigInteger timeout;
+
+    /**
+     * Gets the value of the value property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public byte[] getValue() {
+        return value;
+    }
+
+    /**
+     * Sets the value of the value property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setValue(byte[] value) {
+        this.value = ((byte[]) value);
+    }
+
+    /**
+     * Gets the value of the sequence property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link BigInteger }
+     *     
+     */
+    public BigInteger getSequence() {
+        return sequence;
+    }
+
+    /**
+     * Sets the value of the sequence property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link BigInteger }
+     *     
+     */
+    public void setSequence(BigInteger value) {
+        this.sequence = value;
+    }
+
+    /**
+     * Gets the value of the of property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link BigInteger }
+     *     
+     */
+    public BigInteger getOf() {
+        return of;
+    }
+
+    /**
+     * Sets the value of the of property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link BigInteger }
+     *     
+     */
+    public void setOf(BigInteger value) {
+        this.of = value;
+    }
+
+    /**
+     * Gets the value of the expectedSW property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public byte[] getExpectedSW() {
+        return expectedSW;
+    }
+
+    /**
+     * Sets the value of the expectedSW property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setExpectedSW(byte[] value) {
+        this.expectedSW = ((byte[]) value);
+    }
+
+    /**
+     * Gets the value of the message property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getMessage() {
+        return message;
+    }
+
+    /**
+     * Sets the value of the message property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setMessage(String value) {
+        this.message = value;
+    }
+
+    /**
+     * Gets the value of the format property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public byte[] getFormat() {
+        return format;
+    }
+
+    /**
+     * Sets the value of the format property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setFormat(byte[] value) {
+        this.format = ((byte[]) value);
+    }
+
+    /**
+     * Gets the value of the offset property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link BigInteger }
+     *     
+     */
+    public BigInteger getOffset() {
+        return offset;
+    }
+
+    /**
+     * Sets the value of the offset property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link BigInteger }
+     *     
+     */
+    public void setOffset(BigInteger value) {
+        this.offset = value;
+    }
+
+    /**
+     * Gets the value of the timeout property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link BigInteger }
+     *     
+     */
+    public BigInteger getTimeout() {
+        return timeout;
+    }
+
+    /**
+     * Sets the value of the timeout property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link BigInteger }
+     *     
+     */
+    public void setTimeout(BigInteger value) {
+        this.timeout = value;
+    }
+
+}
-- 
cgit v1.2.3