aboutsummaryrefslogtreecommitdiff
path: root/common
diff options
context:
space:
mode:
Diffstat (limited to 'common')
-rw-r--r--common/src/at/gv/egovernment/moa/util/Constants.java35
-rw-r--r--common/src/at/gv/egovernment/moa/util/DOMUtils.java22
-rw-r--r--common/src/at/gv/egovernment/moa/util/XPathUtils.java1
3 files changed, 56 insertions, 2 deletions
diff --git a/common/src/at/gv/egovernment/moa/util/Constants.java b/common/src/at/gv/egovernment/moa/util/Constants.java
index 48b633b94..99fe81065 100644
--- a/common/src/at/gv/egovernment/moa/util/Constants.java
+++ b/common/src/at/gv/egovernment/moa/util/Constants.java
@@ -43,7 +43,7 @@ public interface Constants {
/** Local location of the MOA ID configuration XML schema definition. */
public static final String MOA_ID_CONFIG_SCHEMA_LOCATION =
- SCHEMA_ROOT + "MOA-ID-Configuration-1.2.xsd";
+ SCHEMA_ROOT + "MOA-ID-Configuration-1.3.xsd";
/** URI of the Security Layer 1.0 namespace. */
public static final String SL10_NS_URI =
@@ -66,7 +66,18 @@ public interface Constants {
/** Local location of the Security Layer 1.1 XML schema definition */
public static final String SL11_SCHEMA_LOCATION =
SCHEMA_ROOT + "Core.20020831.xsd";
+
+ /** URI of the Security Layer 1.2 XML namespace */
+ public static final String SL12_NS_URI =
+ "http://www.buergerkarte.at/namespaces/securitylayer/1.2#";
+
+ /** Prefix used for the Security Layer 1.2 XML namespace */
+ public static final String SL12_PREFIX = "sl";
+ /** Local location of the Security Layer 1.2 XML schema definition */
+ public static final String SL12_SCHEMA_LOCATION =
+ SCHEMA_ROOT + "Core-1.2.xsd";
+
/** URI of the ECDSA XML namespace */
public static final String ECDSA_NS_URI =
"http://www.w3.org/2001/04/xmldsig-more#";
@@ -101,9 +112,13 @@ public interface Constants {
/** Prefix used for the PersonData XML namespace */
public static final String PD_PREFIX = "pr";
+// /** Local location of the PersonData XML schema definition */
+// public static final String PD_SCHEMA_LOCATION =
+// SCHEMA_ROOT + "PersonData.xsd";
+
/** Local location of the PersonData XML schema definition */
public static final String PD_SCHEMA_LOCATION =
- SCHEMA_ROOT + "PersonData.xsd";
+ SCHEMA_ROOT + "PersonData_20_en.xsd";
/** URI of the SAML namespace. */
public static final String SAML_NS_URI =
@@ -208,6 +223,7 @@ public interface Constants {
+ (MOA_ID_CONFIG_NS_URI + " " + MOA_ID_CONFIG_SCHEMA_LOCATION + " ")
+ (SL10_NS_URI + " " + SL10_SCHEMA_LOCATION + " ")
+ (SL11_NS_URI + " " + SL11_SCHEMA_LOCATION + " ")
+ + (SL12_NS_URI + " " + SL12_SCHEMA_LOCATION + " ")
+ (ECDSA_NS_URI + " " + ECDSA_SCHEMA_LOCATION + " ")
+ (ECDSA_NS_URI_ANCIENT + " " + ECDSA_SCHEMA_LOCATION_ANCIENT + " ")
+ (ECDSA_NS_URI_WRONG + " " + ECDSA_SCHEMA_LOCATION_WRONG + " ") // TODO Entfernen, sobald ZMR umgestellt hat
@@ -221,6 +237,21 @@ public interface Constants {
+ (DSIG_EC_NS_URI + " " + DSIG_EC_SCHEMA_LOCATION + " ")
+ (XMLLPR_NS_URI + " " + XMLLPR_SCHEMA_LOCATION);
+ /** URN prefix for bPK and wbPK. */
+ public static final String URN_PREFIX = "urn:publicid:gv.at";
+
+ /** URN prefix for context dependent id. */
+ public static final String URN_PREFIX_CDID = URN_PREFIX + ":cdid";
+
+ /** URN prefix for context dependent id (bPK). */
+ public static final String URN_PREFIX_BPK = URN_PREFIX_CDID + "+bpk";
+
+ /** URN prefix for context dependent id (wbPK). */
+ public static final String URN_PREFIX_WBPK = URN_PREFIX + ":wbpk";
+
+ /** URN prefix for context dependent id. */
+ public static final String URN_PREFIX_BASEID = URN_PREFIX + ":baseid";
+
/** Security Layer manifest type URI. */
public static final String SL_MANIFEST_TYPE_URI =
"http://www.buergerkarte.at/specifications/Security-Layer/20020225#SignatureManifest";
diff --git a/common/src/at/gv/egovernment/moa/util/DOMUtils.java b/common/src/at/gv/egovernment/moa/util/DOMUtils.java
index 53b1a0e48..52f6554d5 100644
--- a/common/src/at/gv/egovernment/moa/util/DOMUtils.java
+++ b/common/src/at/gv/egovernment/moa/util/DOMUtils.java
@@ -41,6 +41,7 @@ import org.xml.sax.ErrorHandler;
import org.xml.sax.InputSource;
import org.xml.sax.SAXException;
+
import at.gv.egovernment.moa.logging.Logger;
/**
@@ -832,5 +833,26 @@ public class DOMUtils {
}
return false;
}
+
+ /**
+ * Selects the (first) element from a node list and returns it.
+ *
+ * @param nl The NodeList to get the element from.
+ * @return The (first) element included in the node list or <code>null</code>
+ * if the node list is <code>null</code> or empty or no element is
+ * included in the list.
+ */
+ public static Element getElementFromNodeList (NodeList nl) {
+ if ((nl == null) || (nl.getLength() == 0)) {
+ return null;
+ }
+ for (int i=0; i<nl.getLength(); i++) {
+ Node node = nl.item(i);
+ if (node.getNodeType() == Node.ELEMENT_NODE) {
+ return (Element)node;
+ }
+ }
+ return null;
+ }
}
diff --git a/common/src/at/gv/egovernment/moa/util/XPathUtils.java b/common/src/at/gv/egovernment/moa/util/XPathUtils.java
index 0ed4fcda3..4ee160476 100644
--- a/common/src/at/gv/egovernment/moa/util/XPathUtils.java
+++ b/common/src/at/gv/egovernment/moa/util/XPathUtils.java
@@ -45,6 +45,7 @@ public class XPathUtils {
Constants.MOA_ID_CONFIG_NS_URI);
ctx.addNamespace(Constants.SL10_PREFIX, Constants.SL10_NS_URI);
ctx.addNamespace(Constants.SL11_PREFIX, Constants.SL11_NS_URI);
+ ctx.addNamespace(Constants.SL12_PREFIX, Constants.SL12_NS_URI);
ctx.addNamespace(Constants.ECDSA_PREFIX, Constants.ECDSA_NS_URI);
ctx.addNamespace(Constants.PD_PREFIX, Constants.PD_NS_URI);
ctx.addNamespace(Constants.SAML_PREFIX, Constants.SAML_NS_URI);