mirror of
https://github.com/google/nomulus
synced 2026-10-22 06:12:41 +00:00
Split XJC code into separate eppbindings subproject (#3244)
The generated XML / XJC code pretty much never changes but because everything is lumped together in one compile task, we had to recompile this every time anything else in core/ changes. It's technically possible to use a separate source set for the XJC code while having it remain in core/, but splitting it into a separate subproject gives better separation and makes the caching / dependency graph clearer. Pretty much all, except for the caching configuration, of the new xjc/build.gradle is taken from the previous core/build.gradle.
This commit is contained in:
+5
-90
@@ -21,9 +21,6 @@ plugins {
|
||||
id 'maven-publish'
|
||||
}
|
||||
|
||||
// Path to code generated by ad hoc tasks in this project. A separate path is
|
||||
// used for easy inspection.
|
||||
def generatedDir = "${project.buildDir}/generated/sources/custom/java/main"
|
||||
def resourcesDir = "${project.buildDir}/resources/main"
|
||||
def screenshotsDir = "${project.buildDir}/screenshots"
|
||||
def screenshotsForGoldensDir = "${project.buildDir}/screenshots_for_goldens"
|
||||
@@ -56,14 +53,6 @@ def dockerIncompatibleTestPatterns = [
|
||||
def fragileTestPatterns = dockerIncompatibleTestPatterns
|
||||
|
||||
sourceSets {
|
||||
main {
|
||||
java {
|
||||
srcDirs += generatedDir
|
||||
}
|
||||
resources {
|
||||
exclude '**/*.xjb'
|
||||
}
|
||||
}
|
||||
nonprod {
|
||||
java {
|
||||
compileClasspath += main.output
|
||||
@@ -75,9 +64,6 @@ sourceSets {
|
||||
compileClasspath += nonprod.output
|
||||
runtimeClasspath += nonprod.output
|
||||
}
|
||||
resources {
|
||||
exclude '**/*.xjb', '**/*.xsd'
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -86,7 +72,6 @@ processTestResources {
|
||||
}
|
||||
|
||||
configurations {
|
||||
jaxb
|
||||
devtool
|
||||
|
||||
nonprodImplementation.extendsFrom implementation
|
||||
@@ -232,15 +217,16 @@ dependencies {
|
||||
implementation deps['us.fatehi:schemacrawler-postgresql']
|
||||
implementation deps['xerces:xmlParserAPIs']
|
||||
implementation deps['org.ogce:xpp3']
|
||||
// Known issue: nebula-lint misses inherited dependency.
|
||||
implementation project(':common')
|
||||
testImplementation project(':testing')
|
||||
implementation project(':util')
|
||||
implementation project(':networking')
|
||||
// Import NomulusPostreSql from ':db' for implementation but exclude dependencies.
|
||||
implementation project(path: ':db', configuration: 'implementationApi')
|
||||
nonprodRuntimeOnly project(':db')
|
||||
testRuntimeOnly project(':db')
|
||||
implementation project(':eppbindings')
|
||||
implementation project(':networking')
|
||||
// Known issue: nebula-lint misses inherited dependency.
|
||||
testImplementation project(':testing')
|
||||
implementation project(':util')
|
||||
|
||||
annotationProcessor deps['com.google.auto.service:auto-service']
|
||||
annotationProcessor deps['com.google.auto.value:auto-value']
|
||||
@@ -285,82 +271,11 @@ dependencies {
|
||||
// dependencies to avoid overriding them accidentally.
|
||||
implementation deps['com.google.oauth-client:google-oauth-client-java6']
|
||||
|
||||
// Dependencies needed for jaxb compilation.
|
||||
jaxb deps['jakarta.xml.bind:jakarta.xml.bind-api']
|
||||
jaxb deps['org.glassfish.jaxb:jaxb-runtime']
|
||||
jaxb deps['org.glassfish.jaxb:jaxb-xjc']
|
||||
|
||||
// Flyway classes needed to generate the golden file.
|
||||
implementation deps['org.flywaydb:flyway-core']
|
||||
implementation deps['org.flywaydb:flyway-database-postgresql']
|
||||
}
|
||||
|
||||
task jaxbToJava {
|
||||
def xsdFilesDir = "${javaDir}/google/registry/xml/xsd"
|
||||
def bindingsFile = "${javaDir}/google/registry/xjc/bindings.xjb"
|
||||
def pkgInfoTemplate = "${javaDir}/google/registry/xjc/package-info.java.in"
|
||||
def pkgInfoMap = "${javaDir}/google/registry/xjc/package-info.map"
|
||||
def outputDir = "${generatedDir}/google/registry/xjc"
|
||||
|
||||
inputs.dir xsdFilesDir
|
||||
inputs.files bindingsFile, pkgInfoTemplate, pkgInfoMap
|
||||
outputs.dir outputDir
|
||||
|
||||
doLast {
|
||||
file(generatedDir).mkdirs()
|
||||
|
||||
// Temp dir to hold schema and bindings files. Files must be in the same
|
||||
// directory because the bindings (.xjb) file does not declare relative
|
||||
// paths to schema (.xsd) files.
|
||||
def xjcTempSourceDir = file("${temporaryDir}/xjc")
|
||||
xjcTempSourceDir.mkdirs()
|
||||
ant.copy(
|
||||
todir: "${xjcTempSourceDir}",
|
||||
overwrite: true) {
|
||||
fileSet(
|
||||
dir: xsdFilesDir,
|
||||
includes: '**.xsd')
|
||||
}
|
||||
ant.copy(
|
||||
todir: "${xjcTempSourceDir}",
|
||||
overwrite: true,
|
||||
file: bindingsFile)
|
||||
ant.taskdef(
|
||||
name: 'xjc',
|
||||
classname: 'com.sun.tools.xjc.XJCTask',
|
||||
classpath: configurations.jaxb.asPath)
|
||||
ant.xjc(
|
||||
destdir: "${generatedDir}",
|
||||
binding: "${xjcTempSourceDir}/bindings.xjb",
|
||||
removeOldOutput: 'yes', extension: 'true') {
|
||||
fileTree(
|
||||
dir: new File("$xjcTempSourceDir"),
|
||||
include: ['**/*.xsd'])
|
||||
.addToAntBuilder(ant, 'schema', FileCollection.AntType.FileSet)
|
||||
// -npa: do not generate package-info.java files. They will be generated
|
||||
// below.
|
||||
arg(line: '-npa -quiet -extension')
|
||||
}
|
||||
new File(pkgInfoMap).eachLine { line ->
|
||||
def (packageName, namespace) = line.split()
|
||||
ant.copy(
|
||||
tofile: "${outputDir}/${packageName}/package-info.java",
|
||||
overwrite: true,
|
||||
file: "${pkgInfoTemplate}") {
|
||||
filterSet() {
|
||||
filter(token: 'PACKAGE', value: packageName)
|
||||
filter(token: 'NAMESPACE', value: namespace)
|
||||
}
|
||||
}
|
||||
}
|
||||
execInBash(
|
||||
"find . -name *.java -exec sed -i -e '/" + /\* <p>$/ + "/d' {} +",
|
||||
generatedDir)
|
||||
}
|
||||
}
|
||||
|
||||
compileJava.dependsOn jaxbToJava
|
||||
|
||||
task findGoldenImages(type: JavaExec) {
|
||||
classpath = sourceSets.test.runtimeClasspath
|
||||
mainClass = 'google.registry.webdriver.GoldenImageFinder'
|
||||
|
||||
+104
-122
@@ -34,45 +34,44 @@ com.google.api-client:google-api-client-servlet:2.7.0=deploy_jar,nonprodRuntimeC
|
||||
com.google.api-client:google-api-client-servlet:2.9.1=compileClasspath,nonprodCompileClasspath,testCompileClasspath
|
||||
com.google.api-client:google-api-client:2.9.0=deploy_jar,nonprodRuntimeClasspath,runtimeClasspath,testRuntimeClasspath
|
||||
com.google.api-client:google-api-client:2.9.1=compileClasspath,nonprodCompileClasspath,testCompileClasspath
|
||||
com.google.api.grpc:gapic-google-cloud-storage-v2:2.70.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testRuntimeClasspath
|
||||
com.google.api.grpc:gapic-google-cloud-storage-v2:2.72.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testRuntimeClasspath
|
||||
com.google.api.grpc:gapic-google-cloud-storage-v2:2.75.0=testCompileClasspath
|
||||
com.google.api.grpc:grpc-google-cloud-bigquerystorage-v1:3.30.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.api.grpc:grpc-google-cloud-bigquerystorage-v1beta1:3.30.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.api.grpc:grpc-google-cloud-bigquerystorage-v1beta2:3.30.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.api.grpc:grpc-google-cloud-bigtable-v2:2.80.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.api.grpc:grpc-google-cloud-pubsub-v1:1.152.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.api.grpc:grpc-google-cloud-spanner-admin-database-v1:6.119.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.api.grpc:grpc-google-cloud-spanner-admin-instance-v1:6.119.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.api.grpc:grpc-google-cloud-spanner-v1:6.119.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.api.grpc:grpc-google-cloud-bigquerystorage-v1:3.32.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.api.grpc:grpc-google-cloud-bigquerystorage-v1beta1:3.32.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.api.grpc:grpc-google-cloud-bigquerystorage-v1beta2:3.32.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.api.grpc:grpc-google-cloud-bigtable-v2:2.82.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.api.grpc:grpc-google-cloud-pubsub-v1:1.154.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.api.grpc:grpc-google-cloud-spanner-admin-database-v1:6.121.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.api.grpc:grpc-google-cloud-spanner-admin-instance-v1:6.121.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.api.grpc:grpc-google-cloud-spanner-v1:6.121.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.api.grpc:grpc-google-cloud-storage-control-v2:2.49.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.api.grpc:grpc-google-cloud-storage-v2:2.70.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testRuntimeClasspath
|
||||
com.google.api.grpc:grpc-google-cloud-storage-v2:2.72.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testRuntimeClasspath
|
||||
com.google.api.grpc:grpc-google-cloud-storage-v2:2.75.0=testCompileClasspath
|
||||
com.google.api.grpc:grpc-google-common-protos:2.73.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.api.grpc:proto-google-cloud-bigquerystorage-v1:3.30.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.api.grpc:proto-google-cloud-bigquerystorage-v1alpha:3.30.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.api.grpc:proto-google-cloud-bigquerystorage-v1beta1:3.30.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.api.grpc:proto-google-cloud-bigquerystorage-v1beta2:3.30.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.api.grpc:proto-google-cloud-bigquerystorage-v1beta:3.30.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.api.grpc:proto-google-cloud-bigtable-admin-v2:2.80.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.api.grpc:proto-google-cloud-bigtable-v2:2.80.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.api.grpc:grpc-google-common-protos:2.75.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.api.grpc:proto-google-cloud-bigquerystorage-v1:3.32.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.api.grpc:proto-google-cloud-bigquerystorage-v1alpha:3.32.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.api.grpc:proto-google-cloud-bigquerystorage-v1beta1:3.32.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.api.grpc:proto-google-cloud-bigquerystorage-v1beta2:3.32.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.api.grpc:proto-google-cloud-bigquerystorage-v1beta:3.32.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.api.grpc:proto-google-cloud-bigtable-admin-v2:2.82.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.api.grpc:proto-google-cloud-bigtable-v2:2.82.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.api.grpc:proto-google-cloud-compute-v1:1.109.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.api.grpc:proto-google-cloud-datastore-v1:3.2.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.api.grpc:proto-google-cloud-firestore-v1:3.44.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.api.grpc:proto-google-cloud-logging-v2:3.35.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.api.grpc:proto-google-cloud-monitoring-v3:3.95.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.api.grpc:proto-google-cloud-pubsub-v1:1.152.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.api.grpc:proto-google-cloud-secretmanager-v1:2.51.0=deploy_jar,nonprodRuntimeClasspath,runtimeClasspath,testRuntimeClasspath
|
||||
com.google.api.grpc:proto-google-cloud-secretmanager-v1:2.99.0=compileClasspath,nonprodCompileClasspath,testCompileClasspath
|
||||
com.google.api.grpc:proto-google-cloud-secretmanager-v1beta1:2.99.0=compileClasspath,nonprodCompileClasspath,testCompileClasspath
|
||||
com.google.api.grpc:proto-google-cloud-secretmanager-v1beta2:2.51.0=deploy_jar,nonprodRuntimeClasspath,runtimeClasspath,testRuntimeClasspath
|
||||
com.google.api.grpc:proto-google-cloud-secretmanager-v1beta2:2.99.0=compileClasspath,nonprodCompileClasspath,testCompileClasspath
|
||||
com.google.api.grpc:proto-google-cloud-spanner-admin-database-v1:6.119.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.api.grpc:proto-google-cloud-spanner-admin-instance-v1:6.119.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.api.grpc:proto-google-cloud-spanner-v1:6.119.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.api.grpc:proto-google-cloud-datastore-v1:3.4.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.api.grpc:proto-google-cloud-firestore-v1:3.46.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.api.grpc:proto-google-cloud-kms-v1:2.99.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.api.grpc:proto-google-cloud-logging-v2:3.37.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.api.grpc:proto-google-cloud-monitoring-v3:3.97.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.api.grpc:proto-google-cloud-pubsub-v1:1.154.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.api.grpc:proto-google-cloud-secretmanager-v1:2.96.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.api.grpc:proto-google-cloud-secretmanager-v1beta1:2.96.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.api.grpc:proto-google-cloud-secretmanager-v1beta2:2.96.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.api.grpc:proto-google-cloud-spanner-admin-database-v1:6.121.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.api.grpc:proto-google-cloud-spanner-admin-instance-v1:6.121.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.api.grpc:proto-google-cloud-spanner-v1:6.121.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.api.grpc:proto-google-cloud-sql-v1:0.1.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.api.grpc:proto-google-cloud-sql-v1beta4:0.1.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.api.grpc:proto-google-cloud-storage-control-v2:2.49.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.api.grpc:proto-google-cloud-storage-v2:2.70.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath
|
||||
com.google.api.grpc:proto-google-cloud-storage-v2:2.72.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath
|
||||
com.google.api.grpc:proto-google-cloud-storage-v2:2.75.0=testCompileClasspath,testRuntimeClasspath
|
||||
com.google.api.grpc:proto-google-cloud-tasks-v2:2.51.0=deploy_jar,nonprodRuntimeClasspath,runtimeClasspath,testRuntimeClasspath
|
||||
com.google.api.grpc:proto-google-cloud-tasks-v2:2.99.0=compileClasspath,nonprodCompileClasspath,testCompileClasspath
|
||||
@@ -81,14 +80,14 @@ com.google.api.grpc:proto-google-cloud-tasks-v2beta2:2.99.0=compileClasspath,non
|
||||
com.google.api.grpc:proto-google-cloud-tasks-v2beta3:0.141.0=deploy_jar,nonprodRuntimeClasspath,runtimeClasspath,testRuntimeClasspath
|
||||
com.google.api.grpc:proto-google-cloud-tasks-v2beta3:2.99.0=compileClasspath,nonprodCompileClasspath,testCompileClasspath
|
||||
com.google.api.grpc:proto-google-common-protos:2.78.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.api.grpc:proto-google-iam-v1:1.69.0=deploy_jar,nonprodRuntimeClasspath,runtimeClasspath
|
||||
com.google.api.grpc:proto-google-iam-v1:1.70.0=deploy_jar,nonprodRuntimeClasspath,runtimeClasspath
|
||||
com.google.api.grpc:proto-google-iam-v1:1.73.0=compileClasspath,nonprodCompileClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.api:api-common:2.70.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.api:gax-grpc:2.87.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.api:gax-httpjson:2.87.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.api:gax:2.87.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.apis:google-api-services-admin-directory:directory_v1-rev20260914-2.0.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.apis:google-api-services-bigquery:v2-rev20260612-2.0.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.apis:google-api-services-bigquery:v2-rev20260731-2.0.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.apis:google-api-services-cloudkms:v1-rev20260917-2.0.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.apis:google-api-services-cloudresourcemanager:v1-rev20250606-2.0.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.apis:google-api-services-dataflow:v1b3-rev20260825-2.0.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
@@ -101,7 +100,7 @@ com.google.apis:google-api-services-iam:v2-rev20250502-2.0.0=compileClasspath,de
|
||||
com.google.apis:google-api-services-iamcredentials:v1-rev20211203-2.0.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.apis:google-api-services-monitoring:v3-rev20260129-2.0.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.apis:google-api-services-pubsub:v1-rev20220904-2.0.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.apis:google-api-services-sheets:v4-rev20260921-2.0.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.apis:google-api-services-sheets:v4-rev20260930-2.0.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.apis:google-api-services-sqladmin:v1beta4-rev20260722-2.0.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.apis:google-api-services-storage:v1-rev20260524-2.0.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.auth:google-auth-library-credentials:1.54.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
@@ -116,43 +115,43 @@ com.google.auto:auto-common:1.2.2=annotationProcessor,nonprodAnnotationProcessor
|
||||
com.google.cloud.bigdataoss:gcsio:3.1.16=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.cloud.bigdataoss:util:3.1.16=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.cloud.bigtable:bigtable-client-core-config:1.28.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.cloud.datastore:datastore-v1-proto-client:3.2.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.cloud.opentelemetry:detector-resources-support:0.33.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.cloud.datastore:datastore-v1-proto-client:3.4.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.cloud.opentelemetry:detector-resources-support:0.33.0=deploy_jar,nonprodRuntimeClasspath,runtimeClasspath,testRuntimeClasspath
|
||||
com.google.cloud.opentelemetry:exporter-metrics:0.33.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.cloud.opentelemetry:shared-resourcemapping:0.33.0=deploy_jar,nonprodRuntimeClasspath,runtimeClasspath,testRuntimeClasspath
|
||||
com.google.cloud.sql:jdbc-socket-factory-core:1.30.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.cloud.sql:postgres-socket-factory:1.30.0=deploy_jar,nonprodRuntimeClasspath,runtimeClasspath,testRuntimeClasspath
|
||||
com.google.cloud.sql:schemas:1.30.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.cloud:google-cloud-bigquerystorage:3.30.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.cloud:google-cloud-bigtable:2.80.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.cloud:google-cloud-bigquerystorage:3.32.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.cloud:google-cloud-bigtable:2.82.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.cloud:google-cloud-compute:1.109.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.cloud:google-cloud-core-grpc:2.72.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath
|
||||
com.google.cloud:google-cloud-core-grpc:2.74.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath
|
||||
com.google.cloud:google-cloud-core-grpc:2.77.0=testCompileClasspath,testRuntimeClasspath
|
||||
com.google.cloud:google-cloud-core-http:2.72.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testRuntimeClasspath
|
||||
com.google.cloud:google-cloud-core-http:2.74.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testRuntimeClasspath
|
||||
com.google.cloud:google-cloud-core-http:2.77.0=testCompileClasspath
|
||||
com.google.cloud:google-cloud-core:2.72.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath
|
||||
com.google.cloud:google-cloud-core:2.74.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath
|
||||
com.google.cloud:google-cloud-core:2.77.0=testCompileClasspath,testRuntimeClasspath
|
||||
com.google.cloud:google-cloud-firestore:3.44.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.cloud:google-cloud-logging:3.35.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.cloud:google-cloud-monitoring:3.95.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.cloud:google-cloud-firestore:3.46.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.cloud:google-cloud-kms:2.99.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.cloud:google-cloud-logging:3.37.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.cloud:google-cloud-monitoring:3.97.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.cloud:google-cloud-nio:0.127.24=testRuntimeClasspath
|
||||
com.google.cloud:google-cloud-nio:0.139.0=testCompileClasspath
|
||||
com.google.cloud:google-cloud-pubsub:1.152.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.cloud:google-cloud-secretmanager:2.51.0=deploy_jar,nonprodRuntimeClasspath,runtimeClasspath,testRuntimeClasspath
|
||||
com.google.cloud:google-cloud-secretmanager:2.99.0=compileClasspath,nonprodCompileClasspath,testCompileClasspath
|
||||
com.google.cloud:google-cloud-spanner:6.119.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.cloud:google-cloud-pubsub:1.154.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.cloud:google-cloud-secretmanager:2.96.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.cloud:google-cloud-spanner:6.121.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.cloud:google-cloud-sql:0.1.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.cloud:google-cloud-storage-control:2.49.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.cloud:google-cloud-storage:2.70.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testRuntimeClasspath
|
||||
com.google.cloud:google-cloud-storage:2.72.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testRuntimeClasspath
|
||||
com.google.cloud:google-cloud-storage:2.75.0=testCompileClasspath
|
||||
com.google.cloud:google-cloud-tasks:2.51.0=deploy_jar,nonprodRuntimeClasspath,runtimeClasspath,testRuntimeClasspath
|
||||
com.google.cloud:google-cloud-tasks:2.99.0=compileClasspath,nonprodCompileClasspath,testCompileClasspath
|
||||
com.google.cloud:grpc-gcp:1.12.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.cloud:grpc-gcp:1.14.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.cloud:libraries-bom:26.48.0=deploy_jar,nonprodRuntimeClasspath,runtimeClasspath,testRuntimeClasspath
|
||||
com.google.cloud:proto-google-cloud-firestore-bundle-v1:3.44.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.cloud:proto-google-cloud-firestore-bundle-v1:3.46.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.code.findbugs:jsr305:3.0.2=annotationProcessor,checkstyle,compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testAnnotationProcessor,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.code.gson:gson:2.14.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.crypto.tink:tink:1.16.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.crypto.tink:tink:1.19.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.dagger:dagger-compiler:2.60.1=annotationProcessor,testAnnotationProcessor
|
||||
com.google.dagger:dagger-spi:2.60.1=annotationProcessor,testAnnotationProcessor
|
||||
com.google.dagger:dagger:2.60.1=annotationProcessor,compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testAnnotationProcessor,testCompileClasspath,testRuntimeClasspath
|
||||
@@ -177,14 +176,11 @@ com.google.guava:guava:33.6.0-jre=annotationProcessor,compileClasspath,deploy_ja
|
||||
com.google.guava:guava:33.7.1-jre=testRuntimeClasspath
|
||||
com.google.guava:guava:33.7.2-jre=testCompileClasspath
|
||||
com.google.guava:listenablefuture:9999.0-empty-to-avoid-conflict-with-guava=annotationProcessor,checkstyle,compileClasspath,deploy_jar,nonprodAnnotationProcessor,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testAnnotationProcessor,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.http-client:google-http-client-apache-v2:2.1.1=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testRuntimeClasspath
|
||||
com.google.http-client:google-http-client-apache-v2:2.2.0=testCompileClasspath
|
||||
com.google.http-client:google-http-client-appengine:2.1.1=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testRuntimeClasspath
|
||||
com.google.http-client:google-http-client-appengine:2.2.0=testCompileClasspath
|
||||
com.google.http-client:google-http-client-apache-v2:2.2.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.http-client:google-http-client-appengine:2.2.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.http-client:google-http-client-gson:2.2.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.http-client:google-http-client-jackson2:2.1.1=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testRuntimeClasspath
|
||||
com.google.http-client:google-http-client-jackson2:2.2.0=testCompileClasspath
|
||||
com.google.http-client:google-http-client-protobuf:2.1.1=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.http-client:google-http-client-jackson2:2.2.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.http-client:google-http-client-protobuf:2.2.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.http-client:google-http-client:2.2.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.google.j2objc:j2objc-annotations:3.0.0=checkstyle
|
||||
com.google.j2objc:j2objc-annotations:3.1=annotationProcessor,compileClasspath,deploy_jar,nonprodAnnotationProcessor,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testAnnotationProcessor,testCompileClasspath,testRuntimeClasspath
|
||||
@@ -227,11 +223,7 @@ com.squareup:javapoet:1.13.0=annotationProcessor,compileClasspath,deploy_jar,non
|
||||
com.squareup:kotlinpoet-jvm:1.15.1=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.squareup:kotlinpoet:1.11.0=annotationProcessor,testAnnotationProcessor
|
||||
com.squareup:kotlinpoet:1.15.1=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
com.sun.istack:istack-commons-runtime:4.1.2=deploy_jar,jaxb,nonprodRuntimeClasspath,runtimeClasspath,testRuntimeClasspath
|
||||
com.sun.istack:istack-commons-tools:4.1.2=jaxb
|
||||
com.sun.xml.bind.external:relaxng-datatype:4.0.9=jaxb
|
||||
com.sun.xml.bind.external:rngom:4.0.9=jaxb
|
||||
com.sun.xml.dtd-parser:dtd-parser:1.5.1=jaxb
|
||||
com.sun.istack:istack-commons-runtime:4.1.2=deploy_jar,nonprodRuntimeClasspath,runtimeClasspath,testRuntimeClasspath
|
||||
com.zaxxer:HikariCP:7.0.2=deploy_jar,nonprodRuntimeClasspath,runtimeClasspath,testRuntimeClasspath
|
||||
com.zaxxer:HikariCP:7.1.0=compileClasspath,nonprodCompileClasspath,testCompileClasspath
|
||||
commons-beanutils:commons-beanutils:1.10.1=checkstyle
|
||||
@@ -254,7 +246,7 @@ guru.nidi:graphviz-java:0.18.1=testRuntimeClasspath
|
||||
info.picocli:picocli:4.7.7=checkstyle
|
||||
io.apicurio:apicurio-registry-protobuf-schema-utilities:3.0.0.M2=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
io.envoyproxy.controlplane:api:1.0.49=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
io.github.classgraph:classgraph:4.8.162=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
io.github.classgraph:classgraph:4.8.192=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
io.github.eisop:dataflow-errorprone:3.41.0-eisop1=annotationProcessor,nonprodAnnotationProcessor,testAnnotationProcessor
|
||||
io.github.java-diff-utils:java-diff-utils:4.12=annotationProcessor,nonprodAnnotationProcessor,testAnnotationProcessor
|
||||
io.github.java-diff-utils:java-diff-utils:4.17=testRuntimeClasspath
|
||||
@@ -262,46 +254,46 @@ io.github.ss-bhatt:testcontainers-valkey:1.0.0=testCompileClasspath,testRuntimeC
|
||||
io.grpc:grpc-alts:1.83.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
io.grpc:grpc-api:1.83.1=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
io.grpc:grpc-auth:1.83.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
io.grpc:grpc-census:1.81.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
io.grpc:grpc-census:1.82.4=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
io.grpc:grpc-context:1.83.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
io.grpc:grpc-core:1.83.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
io.grpc:grpc-googleapis:1.83.0=deploy_jar,nonprodRuntimeClasspath,runtimeClasspath,testRuntimeClasspath
|
||||
io.grpc:grpc-grpclb:1.81.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath
|
||||
io.grpc:grpc-grpclb:1.82.4=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath
|
||||
io.grpc:grpc-grpclb:1.83.0=testCompileClasspath,testRuntimeClasspath
|
||||
io.grpc:grpc-inprocess:1.83.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
io.grpc:grpc-netty-shaded:1.83.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
io.grpc:grpc-netty:1.81.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
io.grpc:grpc-opentelemetry:1.81.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath
|
||||
io.grpc:grpc-netty:1.82.4=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
io.grpc:grpc-opentelemetry:1.82.4=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath
|
||||
io.grpc:grpc-opentelemetry:1.83.0=testCompileClasspath,testRuntimeClasspath
|
||||
io.grpc:grpc-protobuf-lite:1.83.0=deploy_jar,nonprodRuntimeClasspath,runtimeClasspath,testRuntimeClasspath
|
||||
io.grpc:grpc-protobuf:1.83.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
io.grpc:grpc-rls:1.81.0=deploy_jar,nonprodRuntimeClasspath,runtimeClasspath
|
||||
io.grpc:grpc-rls:1.82.4=deploy_jar,nonprodRuntimeClasspath,runtimeClasspath
|
||||
io.grpc:grpc-rls:1.83.0=testRuntimeClasspath
|
||||
io.grpc:grpc-services:1.81.0=compileClasspath,nonprodCompileClasspath,testCompileClasspath
|
||||
io.grpc:grpc-services:1.82.4=compileClasspath,nonprodCompileClasspath,testCompileClasspath
|
||||
io.grpc:grpc-services:1.83.0=deploy_jar,nonprodRuntimeClasspath,runtimeClasspath,testRuntimeClasspath
|
||||
io.grpc:grpc-stub:1.83.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
io.grpc:grpc-testing:1.70.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
io.grpc:grpc-util:1.81.0=compileClasspath,nonprodCompileClasspath,testCompileClasspath
|
||||
io.grpc:grpc-util:1.82.4=compileClasspath,nonprodCompileClasspath,testCompileClasspath
|
||||
io.grpc:grpc-util:1.83.0=deploy_jar,nonprodRuntimeClasspath,runtimeClasspath,testRuntimeClasspath
|
||||
io.grpc:grpc-xds:1.81.0=compileClasspath,nonprodCompileClasspath,testCompileClasspath
|
||||
io.grpc:grpc-xds:1.82.4=compileClasspath,nonprodCompileClasspath,testCompileClasspath
|
||||
io.grpc:grpc-xds:1.83.0=deploy_jar,nonprodRuntimeClasspath,runtimeClasspath,testRuntimeClasspath
|
||||
io.netty:netty-buffer:4.2.18.Final=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
io.netty:netty-codec-base:4.2.18.Final=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
io.netty:netty-codec-compression:4.2.18.Final=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
io.netty:netty-codec-http2:4.1.132.Final=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
io.netty:netty-codec-http:4.2.18.Final=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
io.netty:netty-codec-marshalling:4.2.18.Final=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
io.netty:netty-codec-protobuf:4.2.18.Final=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
io.netty:netty-codec-socks:4.1.132.Final=deploy_jar,nonprodRuntimeClasspath,runtimeClasspath,testRuntimeClasspath
|
||||
io.netty:netty-codec:4.2.18.Final=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
io.netty:netty-common:4.2.18.Final=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
io.netty:netty-handler-proxy:4.1.132.Final=deploy_jar,nonprodRuntimeClasspath,runtimeClasspath,testRuntimeClasspath
|
||||
io.netty:netty-handler:4.2.18.Final=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
io.netty:netty-resolver:4.2.18.Final=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
io.netty:netty-buffer:4.2.19.Final=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
io.netty:netty-codec-base:4.2.19.Final=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
io.netty:netty-codec-compression:4.2.19.Final=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
io.netty:netty-codec-http2:4.1.133.Final=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
io.netty:netty-codec-http:4.2.19.Final=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
io.netty:netty-codec-marshalling:4.2.19.Final=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
io.netty:netty-codec-protobuf:4.2.19.Final=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
io.netty:netty-codec-socks:4.1.133.Final=deploy_jar,nonprodRuntimeClasspath,runtimeClasspath,testRuntimeClasspath
|
||||
io.netty:netty-codec:4.2.19.Final=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
io.netty:netty-common:4.2.19.Final=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
io.netty:netty-handler-proxy:4.1.133.Final=deploy_jar,nonprodRuntimeClasspath,runtimeClasspath,testRuntimeClasspath
|
||||
io.netty:netty-handler:4.2.19.Final=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
io.netty:netty-resolver:4.2.19.Final=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
io.netty:netty-tcnative-boringssl-static:2.0.52.Final=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
io.netty:netty-tcnative-classes:2.0.52.Final=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
io.netty:netty-transport-native-unix-common:4.2.18.Final=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
io.netty:netty-transport:4.2.18.Final=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
io.netty:netty-transport-native-unix-common:4.2.19.Final=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
io.netty:netty-transport:4.2.19.Final=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
io.opencensus:opencensus-api:0.31.1=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
io.opencensus:opencensus-contrib-exemplar-util:0.31.1=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
io.opencensus:opencensus-contrib-grpc-metrics:0.31.1=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
@@ -312,8 +304,7 @@ io.opencensus:opencensus-exporter-metrics-util:0.31.1=compileClasspath,deploy_ja
|
||||
io.opencensus:opencensus-exporter-stats-stackdriver:0.31.1=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
io.opencensus:opencensus-impl-core:0.31.1=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
io.opencensus:opencensus-impl:0.31.1=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
io.opentelemetry.contrib:opentelemetry-gcp-resources:1.37.0-alpha=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testRuntimeClasspath
|
||||
io.opentelemetry.contrib:opentelemetry-gcp-resources:1.45.0-alpha=testCompileClasspath
|
||||
io.opentelemetry.contrib:opentelemetry-gcp-resources:1.45.0-alpha=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
io.opentelemetry.instrumentation:opentelemetry-grpc-1.6:2.1.0-alpha=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
io.opentelemetry.instrumentation:opentelemetry-instrumentation-api-incubator:2.1.0-alpha=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
io.opentelemetry.instrumentation:opentelemetry-instrumentation-api:2.1.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
@@ -347,7 +338,6 @@ io.protostuff:protostuff-collectionschema:1.8.0=compileClasspath,deploy_jar,nonp
|
||||
io.protostuff:protostuff-core:1.8.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
io.protostuff:protostuff-runtime:1.8.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
jakarta-regexp:jakarta-regexp:1.4=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
jakarta.activation:jakarta.activation-api:2.1.4=jaxb
|
||||
jakarta.activation:jakarta.activation-api:2.2.0-M1=deploy_jar,nonprodRuntimeClasspath,runtimeClasspath,testRuntimeClasspath
|
||||
jakarta.activation:jakarta.activation-api:2.2.0-M2=compileClasspath,nonprodCompileClasspath,testCompileClasspath
|
||||
jakarta.inject:jakarta.inject-api:2.0.1=annotationProcessor,compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testAnnotationProcessor,testCompileClasspath,testRuntimeClasspath
|
||||
@@ -357,7 +347,6 @@ jakarta.servlet:jakarta.servlet-api:6.0.0=testCompileClasspath,testRuntimeClassp
|
||||
jakarta.servlet:jakarta.servlet-api:6.2.0-M2=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath
|
||||
jakarta.transaction:jakarta.transaction-api:2.0.1=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
jakarta.xml.bind:jakarta.xml.bind-api:4.0.4=deploy_jar,nonprodRuntimeClasspath,runtimeClasspath,testRuntimeClasspath
|
||||
jakarta.xml.bind:jakarta.xml.bind-api:4.0.5=jaxb
|
||||
jakarta.xml.bind:jakarta.xml.bind-api:4.1.0-M1=compileClasspath,nonprodCompileClasspath,testCompileClasspath
|
||||
javax.annotation:javax.annotation-api:1.3.2=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
javax.inject:javax.inject:1=annotationProcessor,compileClasspath,deploy_jar,nonprodAnnotationProcessor,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testAnnotationProcessor,testCompileClasspath,testRuntimeClasspath
|
||||
@@ -381,25 +370,25 @@ org.apache.arrow:arrow-format:17.0.0=compileClasspath,deploy_jar,nonprodCompileC
|
||||
org.apache.arrow:arrow-memory-core:17.0.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
org.apache.arrow:arrow-vector:17.0.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
org.apache.avro:avro:1.12.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
org.apache.beam:beam-model-fn-execution:2.76.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
org.apache.beam:beam-model-job-management:2.76.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
org.apache.beam:beam-model-pipeline:2.76.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
org.apache.beam:beam-model-fn-execution:2.77.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
org.apache.beam:beam-model-job-management:2.77.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
org.apache.beam:beam-model-pipeline:2.77.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
org.apache.beam:beam-runners-core-construction-java:2.54.0=testCompileClasspath,testRuntimeClasspath
|
||||
org.apache.beam:beam-runners-core-java:2.76.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
org.apache.beam:beam-runners-direct-java:2.76.0=testCompileClasspath,testRuntimeClasspath
|
||||
org.apache.beam:beam-runners-google-cloud-dataflow-java:2.76.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
org.apache.beam:beam-runners-java-fn-execution:2.76.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
org.apache.beam:beam-sdks-java-core:2.76.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
org.apache.beam:beam-sdks-java-expansion-service:2.76.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
org.apache.beam:beam-sdks-java-extensions-arrow:2.76.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
org.apache.beam:beam-sdks-java-extensions-avro:2.76.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
org.apache.beam:beam-sdks-java-extensions-google-cloud-platform-core:2.76.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
org.apache.beam:beam-sdks-java-extensions-protobuf:2.76.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
org.apache.beam:beam-runners-core-java:2.77.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
org.apache.beam:beam-runners-direct-java:2.77.0=testCompileClasspath,testRuntimeClasspath
|
||||
org.apache.beam:beam-runners-google-cloud-dataflow-java:2.77.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
org.apache.beam:beam-runners-java-fn-execution:2.77.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
org.apache.beam:beam-sdks-java-core:2.77.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
org.apache.beam:beam-sdks-java-expansion-service:2.77.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
org.apache.beam:beam-sdks-java-extensions-arrow:2.77.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
org.apache.beam:beam-sdks-java-extensions-avro:2.77.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
org.apache.beam:beam-sdks-java-extensions-google-cloud-platform-core:2.77.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
org.apache.beam:beam-sdks-java-extensions-protobuf:2.77.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
org.apache.beam:beam-sdks-java-fn-execution:2.54.0=testCompileClasspath,testRuntimeClasspath
|
||||
org.apache.beam:beam-sdks-java-harness:2.76.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
org.apache.beam:beam-sdks-java-io-components:2.76.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
org.apache.beam:beam-sdks-java-io-google-cloud-platform:2.76.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
org.apache.beam:beam-sdks-java-transform-service-launcher:2.76.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
org.apache.beam:beam-sdks-java-harness:2.77.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
org.apache.beam:beam-sdks-java-io-components:2.77.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
org.apache.beam:beam-sdks-java-io-google-cloud-platform:2.77.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
org.apache.beam:beam-sdks-java-transform-service-launcher:2.77.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
org.apache.beam:beam-vendor-grpc-1_60_1:0.1=testCompileClasspath,testRuntimeClasspath
|
||||
org.apache.beam:beam-vendor-grpc-1_69_0:0.1=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
org.apache.beam:beam-vendor-guava-32_1_2-jre:0.1=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
@@ -450,7 +439,6 @@ org.codehaus.plexus:plexus-container-default:2.1.0=checkstyle
|
||||
org.codehaus.plexus:plexus-utils:3.3.0=checkstyle
|
||||
org.codehaus.woodstox:stax2-api:4.2.2=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
org.conscrypt:conscrypt-openjdk-uber:2.6.2=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
org.eclipse.angus:angus-activation:2.0.3=jaxb
|
||||
org.eclipse.angus:angus-activation:2.1.0-M1=deploy_jar,nonprodRuntimeClasspath,runtimeClasspath,testRuntimeClasspath
|
||||
org.eclipse.angus:jakarta.mail:2.1.0-M1=deploy_jar,nonprodRuntimeClasspath,runtimeClasspath,testRuntimeClasspath
|
||||
org.eclipse.jetty.ee10:jetty-ee10-servlet:12.1.14=testCompileClasspath,testRuntimeClasspath
|
||||
@@ -463,19 +451,13 @@ org.eclipse.jetty:jetty-server:12.1.14=testCompileClasspath,testRuntimeClasspath
|
||||
org.eclipse.jetty:jetty-session:12.1.14=testCompileClasspath,testRuntimeClasspath
|
||||
org.eclipse.jetty:jetty-util:12.1.14=testCompileClasspath,testRuntimeClasspath
|
||||
org.eclipse.jetty:jetty-xml:12.1.14=testCompileClasspath,testRuntimeClasspath
|
||||
org.flywaydb:flyway-core:13.9.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
org.flywaydb:flyway-database-cockroachdb:13.9.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
org.flywaydb:flyway-database-postgresql:13.9.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
org.flywaydb:flyway-core:13.10.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
org.flywaydb:flyway-database-cockroachdb:13.10.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
org.flywaydb:flyway-database-postgresql:13.10.0=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
org.freemarker:freemarker:2.3.35=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
org.glassfish.jaxb:codemodel:4.0.9=jaxb
|
||||
org.glassfish.jaxb:jaxb-core:4.0.6=deploy_jar,nonprodRuntimeClasspath,runtimeClasspath,testRuntimeClasspath
|
||||
org.glassfish.jaxb:jaxb-core:4.0.9=jaxb
|
||||
org.glassfish.jaxb:jaxb-runtime:4.0.6=deploy_jar,nonprodRuntimeClasspath,runtimeClasspath,testRuntimeClasspath
|
||||
org.glassfish.jaxb:jaxb-runtime:4.0.9=jaxb
|
||||
org.glassfish.jaxb:jaxb-xjc:4.0.9=jaxb
|
||||
org.glassfish.jaxb:txw2:4.0.6=deploy_jar,nonprodRuntimeClasspath,runtimeClasspath,testRuntimeClasspath
|
||||
org.glassfish.jaxb:txw2:4.0.9=jaxb
|
||||
org.glassfish.jaxb:xsom:4.0.9=jaxb
|
||||
org.hamcrest:hamcrest-core:1.3=nonprodCompileClasspath,nonprodRuntimeClasspath
|
||||
org.hamcrest:hamcrest-core:3.0=testCompileClasspath,testRuntimeClasspath
|
||||
org.hamcrest:hamcrest-library:3.0=testCompileClasspath,testRuntimeClasspath
|
||||
@@ -511,7 +493,7 @@ org.jetbrains.kotlinx:kotlinx-serialization-core-jvm:1.0.1=deploy_jar,nonprodRun
|
||||
org.jetbrains.kotlinx:kotlinx-serialization-core:1.0.1=deploy_jar,nonprodRuntimeClasspath,runtimeClasspath,testRuntimeClasspath
|
||||
org.jetbrains:annotations:13.0=annotationProcessor,compileClasspath,deploy_jar,runtimeClasspath,testAnnotationProcessor
|
||||
org.jetbrains:annotations:17.0.0=nonprodCompileClasspath,nonprodRuntimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
org.jline:jline:4.4.6=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
org.jline:jline:4.4.7=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
org.joda:joda-money:2.0.3=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
org.json:json:20260814=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
org.jsoup:jsoup:1.23.2=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
@@ -545,7 +527,7 @@ org.ow2.asm:asm-util:9.10.1=compileClasspath,deploy_jar,nonprodCompileClasspath,
|
||||
org.ow2.asm:asm:9.10.1=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
org.ow2.asm:asm:9.9=jacocoAnt
|
||||
org.pcollections:pcollections:4.0.1=annotationProcessor,nonprodAnnotationProcessor,testAnnotationProcessor
|
||||
org.postgresql:postgresql:42.7.13=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
org.postgresql:postgresql:42.7.14=compileClasspath,deploy_jar,nonprodCompileClasspath,nonprodRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
org.reflections:reflections:0.10.2=checkstyle
|
||||
org.rnorth.duct-tape:duct-tape:1.0.8=nonprodCompileClasspath,nonprodRuntimeClasspath,testCompileClasspath,testRuntimeClasspath
|
||||
org.seleniumhq.selenium:selenium-api:4.50.0=testCompileClasspath,testRuntimeClasspath
|
||||
|
||||
@@ -1,7 +0,0 @@
|
||||
You may be wondering where all the source code is for XML classes
|
||||
like XjcEpp.java, XjcRdeDeposit.java, etc. These files are magically
|
||||
generated by JAXB from the XML schemas (.xsd) files.
|
||||
|
||||
Run the command `ant gensrc` and they should be available under:
|
||||
|
||||
build/gensrc/google/registry/xjc/
|
||||
@@ -1,67 +0,0 @@
|
||||
// Copyright 2017 The Nomulus Authors. All Rights Reserved.
|
||||
//
|
||||
// Licensed under the Apache License, Version 2.0 (the "License");
|
||||
// you may not use this file except in compliance with the License.
|
||||
// You may obtain a copy of the License at
|
||||
//
|
||||
// http://www.apache.org/licenses/LICENSE-2.0
|
||||
//
|
||||
// Unless required by applicable law or agreed to in writing, software
|
||||
// distributed under the License is distributed on an "AS IS" BASIS,
|
||||
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
// See the License for the specific language governing permissions and
|
||||
// limitations under the License.
|
||||
|
||||
package google.registry.xjc;
|
||||
|
||||
import google.registry.xml.XmlException;
|
||||
import jakarta.xml.bind.JAXBElement;
|
||||
import jakarta.xml.bind.annotation.XmlRootElement;
|
||||
import jakarta.xml.bind.annotation.XmlTransient;
|
||||
import java.io.OutputStream;
|
||||
import java.io.StringWriter;
|
||||
import java.nio.charset.Charset;
|
||||
import javax.xml.namespace.QName;
|
||||
|
||||
/** The superclass for XML classes generated by JAXB that provides marshalling and validation. */
|
||||
@XmlTransient
|
||||
public abstract class XjcObject {
|
||||
|
||||
/**
|
||||
* Validates and streams {@code this} as formatted XML bytes with XML declaration.
|
||||
*
|
||||
* <p>This object must be annotated with {@link jakarta.xml.bind.annotation.XmlRootElement},
|
||||
* otherwise you should call {@link #toString()}. This method will verify that your object
|
||||
* strictly conforms to the schema defined in {@link XjcXmlTransformer}. Because the output is
|
||||
* streamed, {@link XmlException} will most likely be thrown <i>after</i> output has been written.
|
||||
*
|
||||
* @param out byte-oriented output for writing XML. This method won't close it.
|
||||
* @param encoding should almost always be set to {@code "UTF-8"}.
|
||||
*/
|
||||
public void marshal(OutputStream out, Charset encoding) throws XmlException {
|
||||
XjcXmlTransformer.marshalStrict(this, out, encoding);
|
||||
}
|
||||
|
||||
/**
|
||||
* Turns object into a formatted XML string <i>by any means necessary</i>.
|
||||
*
|
||||
* <p>No validation is performed and the XML declaration is omitted. If the object can't be
|
||||
* marshalled, a string describing the error is returned.
|
||||
*
|
||||
* @see #marshal
|
||||
*/
|
||||
@Override
|
||||
public String toString() {
|
||||
try {
|
||||
StringWriter out = new StringWriter();
|
||||
XjcXmlTransformer.marshalLenient(
|
||||
getClass().isAnnotationPresent(XmlRootElement.class)
|
||||
? this
|
||||
: new JAXBElement<>(new QName(getClass().getSimpleName()), Object.class, this),
|
||||
out);
|
||||
return out.toString();
|
||||
} catch (XmlException e) {
|
||||
return String.format("<!-- Invalid XML: %s -->", e.toString());
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,92 +0,0 @@
|
||||
// Copyright 2017 The Nomulus Authors. All Rights Reserved.
|
||||
//
|
||||
// Licensed under the Apache License, Version 2.0 (the "License");
|
||||
// you may not use this file except in compliance with the License.
|
||||
// You may obtain a copy of the License at
|
||||
//
|
||||
// http://www.apache.org/licenses/LICENSE-2.0
|
||||
//
|
||||
// Unless required by applicable law or agreed to in writing, software
|
||||
// distributed under the License is distributed on an "AS IS" BASIS,
|
||||
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
// See the License for the specific language governing permissions and
|
||||
// limitations under the License.
|
||||
|
||||
package google.registry.xjc;
|
||||
|
||||
import static google.registry.xml.ValidationMode.LENIENT;
|
||||
import static google.registry.xml.ValidationMode.STRICT;
|
||||
|
||||
import com.google.common.collect.ImmutableMap;
|
||||
import google.registry.xml.ValidationMode;
|
||||
import google.registry.xml.XmlException;
|
||||
import google.registry.xml.XmlTransformer;
|
||||
import java.io.InputStream;
|
||||
import java.io.OutputStream;
|
||||
import java.io.Writer;
|
||||
import java.nio.charset.Charset;
|
||||
|
||||
/** Static methods for marshalling to and from the generated classes. */
|
||||
public class XjcXmlTransformer {
|
||||
|
||||
private static final XmlTransformer INSTANCE =
|
||||
new XmlTransformer(
|
||||
XjcXmlTransformer.class.getPackage(),
|
||||
// Hardcoded XML schemas, ordered with respect to dependency.
|
||||
new ImmutableMap.Builder<String, String>()
|
||||
.put("eppcom", "eppcom.xsd")
|
||||
.put("epp", "epp.xsd")
|
||||
.put("host", "host.xsd")
|
||||
.put("domain", "domain.xsd")
|
||||
.put("rgp", "rgp.xsd")
|
||||
.put("secdns", "secdns.xsd")
|
||||
.put("mark", "mark.xsd")
|
||||
.put("dsig", "dsig.xsd")
|
||||
.put("smd", "smd.xsd")
|
||||
.put("fee06", "fee06.xsd")
|
||||
.put("fee11", "fee11.xsd")
|
||||
.put("fee12", "fee12.xsd")
|
||||
.put("fee_1_00", "fee-std-v1.xsd")
|
||||
.put("launch", "launch.xsd")
|
||||
.put("rde", "rde.xsd")
|
||||
.put("rdeheader", "rde-header.xsd")
|
||||
.put("rdereport", "rde-report.xsd")
|
||||
.put("rdehost", "rde-host.xsd")
|
||||
.put("rdeidn", "rde-idn.xsd")
|
||||
.put("rdedomain", "rde-domain.xsd")
|
||||
.put("rdeeppparams", "rde-eppparams.xsd")
|
||||
.put("rdenndn", "rde-nndn.xsd")
|
||||
.put("rdenotification", "rde-notification.xsd")
|
||||
.put("rdepolicy", "rde-policy.xsd")
|
||||
.put("rderegistrar", "rde-registrar.xsd")
|
||||
.put("iirdea", "iirdea.xsd")
|
||||
.build());
|
||||
|
||||
public static XmlTransformer get() {
|
||||
return INSTANCE;
|
||||
}
|
||||
|
||||
public static <T> T unmarshal(Class<T> clazz, InputStream stream) throws XmlException {
|
||||
return INSTANCE.unmarshal(clazz, stream);
|
||||
}
|
||||
|
||||
public static void marshalLenient(Object root, Writer writer) throws XmlException {
|
||||
INSTANCE.marshal(root, writer, LENIENT);
|
||||
}
|
||||
|
||||
public static void marshalLenient(Object root, OutputStream out, Charset charset)
|
||||
throws XmlException {
|
||||
INSTANCE.marshal(root, out, charset, LENIENT);
|
||||
}
|
||||
|
||||
public static void marshalStrict(Object root, OutputStream out, Charset charset)
|
||||
throws XmlException {
|
||||
INSTANCE.marshal(root, out, charset, STRICT);
|
||||
}
|
||||
|
||||
public static void marshal(
|
||||
Object root, OutputStream out, Charset charset, ValidationMode validationMode)
|
||||
throws XmlException {
|
||||
INSTANCE.marshal(root, out, charset, validationMode);
|
||||
}
|
||||
}
|
||||
@@ -1,384 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<bindings xmlns="https://jakarta.ee/xml/ns/jaxb"
|
||||
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xmlns:xjc="http://java.sun.com/xml/ns/jaxb/xjc"
|
||||
xsi:schemaLocation="http://java.sun.com/xml/ns/jaxb
|
||||
http://java.sun.com/xml/ns/jaxb/bindingschema_3_0.xsd"
|
||||
extensionBindingPrefixes="xjc"
|
||||
version="3.0">
|
||||
<globalBindings generateElementClass="true">
|
||||
<xjc:simple/>
|
||||
<xjc:superClass name="google.registry.xjc.XjcObject"/>
|
||||
<xjc:javaType name="java.time.Instant" xmlType="xsd:dateTime"
|
||||
adapter="google.registry.xml.UtcInstantAdapter"/>
|
||||
<xjc:javaType name="java.time.LocalDate" xmlType="xsd:date"
|
||||
adapter="google.registry.xml.DateAdapter"/>
|
||||
</globalBindings>
|
||||
<bindings schemaLocation="epp.xsd" node="/xsd:schema">
|
||||
<schemaBindings>
|
||||
<package name="google.registry.xjc.epp"/>
|
||||
<nameXmlTransform>
|
||||
<elementName prefix="XjcEpp"/>
|
||||
<typeName prefix="XjcEpp"/>
|
||||
</nameXmlTransform>
|
||||
</schemaBindings>
|
||||
<bindings node="//xsd:element[@name='epp']">
|
||||
<class name="XjcEppElement"/>
|
||||
</bindings>
|
||||
<bindings node="//xsd:complexType[@name='eppType']">
|
||||
<class name="XjcEpp"/>
|
||||
</bindings>
|
||||
<bindings node="//xsd:complexType[@name='responseType']">
|
||||
<class name="XjcEppResponse"/>
|
||||
</bindings>
|
||||
</bindings>
|
||||
<bindings schemaLocation="eppcom.xsd" node="/xsd:schema">
|
||||
<schemaBindings>
|
||||
<package name="google.registry.xjc.eppcom"/>
|
||||
<nameXmlTransform>
|
||||
<elementName prefix="XjcEppcom"/>
|
||||
<typeName prefix="XjcEppcom"/>
|
||||
</nameXmlTransform>
|
||||
</schemaBindings>
|
||||
</bindings>
|
||||
<bindings schemaLocation="domain.xsd" node="/xsd:schema">
|
||||
<schemaBindings>
|
||||
<package name="google.registry.xjc.domain"/>
|
||||
<nameXmlTransform>
|
||||
<elementName prefix="XjcDomain"/>
|
||||
<typeName prefix="XjcDomain"/>
|
||||
</nameXmlTransform>
|
||||
</schemaBindings>
|
||||
</bindings>
|
||||
<bindings schemaLocation="host.xsd" node="/xsd:schema">
|
||||
<schemaBindings>
|
||||
<package name="google.registry.xjc.host"/>
|
||||
<nameXmlTransform>
|
||||
<elementName prefix="XjcHost"/>
|
||||
<typeName prefix="XjcHost"/>
|
||||
</nameXmlTransform>
|
||||
</schemaBindings>
|
||||
</bindings>
|
||||
<bindings schemaLocation="rgp.xsd" node="/xsd:schema">
|
||||
<schemaBindings>
|
||||
<package name="google.registry.xjc.rgp"/>
|
||||
<nameXmlTransform>
|
||||
<elementName prefix="XjcRgp"/>
|
||||
<typeName prefix="XjcRgp"/>
|
||||
</nameXmlTransform>
|
||||
</schemaBindings>
|
||||
<bindings node="//xsd:simpleType[@name='rgpOpType']">
|
||||
<typesafeEnumClass name="OpType"/>
|
||||
</bindings>
|
||||
</bindings>
|
||||
<bindings schemaLocation="mark.xsd" node="/xsd:schema">
|
||||
<schemaBindings>
|
||||
<package name="google.registry.xjc.mark"/>
|
||||
<nameXmlTransform>
|
||||
<elementName prefix="XjcMark"/>
|
||||
<typeName prefix="XjcMark"/>
|
||||
</nameXmlTransform>
|
||||
</schemaBindings>
|
||||
</bindings>
|
||||
<bindings schemaLocation="smd.xsd" node="/xsd:schema">
|
||||
<schemaBindings>
|
||||
<package name="google.registry.xjc.smd"/>
|
||||
<nameXmlTransform>
|
||||
<elementName prefix="XjcSmd"/>
|
||||
<typeName prefix="XjcSmd"/>
|
||||
</nameXmlTransform>
|
||||
</schemaBindings>
|
||||
<!-- The 'signedMarkType' type has both an attribute and an element named
|
||||
'id'. We must rename one of them for the generated class to compile.
|
||||
-->
|
||||
<bindings node="//xsd:complexType[@name='signedMarkType']">
|
||||
<bindings node=".//xsd:attribute[@name='id']">
|
||||
<property name="idAttribute"/>
|
||||
</bindings>
|
||||
</bindings>
|
||||
<!-- Rename 'XjcSmdSignedMarkType' to 'XjcSmdSignedMark' -->
|
||||
<bindings node="//xsd:complexType[@name='signedMarkType']">
|
||||
<class name="XjcSmdSignedMark"/>
|
||||
</bindings>
|
||||
<!-- Rename wrapper 'XjcSmdSignedMark' to 'XjcSmdSignedMarkElement' -->
|
||||
<bindings node="//xsd:element[@name='signedMark']">
|
||||
<class name="XjcSmdSignedMarkElement"/>
|
||||
</bindings>
|
||||
<!-- Rename not needed for 'XjcSmdEncodedSignedMark' -->
|
||||
<!-- Rename 'XjcSmdIssuerInfoType' to 'XjcSmdIssuerInfo' -->
|
||||
<bindings node="//xsd:complexType[@name='issuerInfoType']">
|
||||
<class name="XjcSmdIssuerInfo"/>
|
||||
</bindings>
|
||||
<!-- Rename 'XjcAbstractSmdSignedMarkType' to 'XjcAbstractSmdSignedMark' -->
|
||||
<bindings node="//xsd:complexType[@name='abstractSignedMarkType']">
|
||||
<class name="XjcSmdAbstractSignedMark"/>
|
||||
</bindings>
|
||||
<!-- Rename wrapper 'XjcSmdAbstractSignedMark' to 'XjcSmdAbstractSignedMarkElement' -->
|
||||
<bindings node="//xsd:element[@name='abstractSignedMark']">
|
||||
<class name="XjcSmdAbstractSignedMarkElement"/>
|
||||
</bindings>
|
||||
</bindings>
|
||||
<bindings schemaLocation="dsig.xsd" node="/xsd:schema">
|
||||
<schemaBindings>
|
||||
<package name="google.registry.xjc.dsig"/>
|
||||
<nameXmlTransform>
|
||||
<elementName prefix="XjcDsig"/>
|
||||
<typeName prefix="XjcDsig"/>
|
||||
</nameXmlTransform>
|
||||
</schemaBindings>
|
||||
</bindings>
|
||||
<bindings schemaLocation="fee06.xsd" node="/xsd:schema">
|
||||
<schemaBindings>
|
||||
<package name="google.registry.xjc.fee06"/>
|
||||
<nameXmlTransform>
|
||||
<elementName prefix="XjcFee06"/>
|
||||
<typeName prefix="XjcFee06"/>
|
||||
</nameXmlTransform>
|
||||
</schemaBindings>
|
||||
</bindings>
|
||||
<bindings schemaLocation="fee11.xsd" node="/xsd:schema">
|
||||
<schemaBindings>
|
||||
<package name="google.registry.xjc.fee11"/>
|
||||
<nameXmlTransform>
|
||||
<elementName prefix="XjcFee11"/>
|
||||
<typeName prefix="XjcFee11"/>
|
||||
</nameXmlTransform>
|
||||
</schemaBindings>
|
||||
</bindings>
|
||||
<bindings schemaLocation="fee12.xsd" node="/xsd:schema">
|
||||
<schemaBindings>
|
||||
<package name="google.registry.xjc.fee12"/>
|
||||
<nameXmlTransform>
|
||||
<elementName prefix="XjcFee12"/>
|
||||
<typeName prefix="XjcFee12"/>
|
||||
</nameXmlTransform>
|
||||
</schemaBindings>
|
||||
</bindings>
|
||||
<bindings schemaLocation="fee-std-v1.xsd" node="/xsd:schema">
|
||||
<schemaBindings>
|
||||
<package name="google.registry.xjc.fee_1_00"/>
|
||||
<nameXmlTransform>
|
||||
<elementName prefix="XjcFeeStdV1"/>
|
||||
<typeName prefix="XjcFeeStdV1"/>
|
||||
</nameXmlTransform>
|
||||
</schemaBindings>
|
||||
</bindings>
|
||||
<bindings schemaLocation="launch.xsd" node="/xsd:schema">
|
||||
<schemaBindings>
|
||||
<package name="google.registry.xjc.launch"/>
|
||||
<nameXmlTransform>
|
||||
<elementName prefix="XjcLaunch"/>
|
||||
<typeName prefix="XjcLaunch"/>
|
||||
</nameXmlTransform>
|
||||
</schemaBindings>
|
||||
</bindings>
|
||||
<bindings schemaLocation="secdns.xsd" node="/xsd:schema">
|
||||
<schemaBindings>
|
||||
<package name="google.registry.xjc.secdns"/>
|
||||
<nameXmlTransform>
|
||||
<elementName prefix="XjcSecdns"/>
|
||||
<typeName prefix="XjcSecdns"/>
|
||||
</nameXmlTransform>
|
||||
</schemaBindings>
|
||||
</bindings>
|
||||
<bindings schemaLocation="rde.xsd" node="/xsd:schema">
|
||||
<schemaBindings>
|
||||
<package name="google.registry.xjc.rde"/>
|
||||
<nameXmlTransform>
|
||||
<elementName prefix="XjcRde"/>
|
||||
<typeName prefix="XjcRde"/>
|
||||
</nameXmlTransform>
|
||||
</schemaBindings>
|
||||
<bindings node="//xsd:complexType[@name='rdeMenuType']">
|
||||
<class name="XjcRdeMenuType"/>
|
||||
</bindings>
|
||||
</bindings>
|
||||
<bindings schemaLocation="rde-domain.xsd" node="/xsd:schema">
|
||||
<schemaBindings>
|
||||
<package name="google.registry.xjc.rdedomain"/>
|
||||
<nameXmlTransform>
|
||||
<elementName prefix="XjcRdeDomain"/>
|
||||
<typeName prefix="XjcRdeDomain"/>
|
||||
</nameXmlTransform>
|
||||
</schemaBindings>
|
||||
<bindings node="//xsd:complexType[@name='abstractContentType']">
|
||||
<class name="XjcRdeDomain"/>
|
||||
</bindings>
|
||||
<bindings node="//xsd:element[@name='domain']">
|
||||
<class name="XjcRdeDomainElement"/>
|
||||
</bindings>
|
||||
<bindings node="//xsd:element[@name='abstractDomain']">
|
||||
<class name="XjcRdeDomainAbstract"/>
|
||||
</bindings>
|
||||
</bindings>
|
||||
<bindings schemaLocation="rde-eppparams.xsd" node="/xsd:schema">
|
||||
<schemaBindings>
|
||||
<package name="google.registry.xjc.rdeeppparams"/>
|
||||
<nameXmlTransform>
|
||||
<elementName prefix="XjcRdeEppParams"/>
|
||||
<typeName prefix="XjcRdeEppParams"/>
|
||||
</nameXmlTransform>
|
||||
</schemaBindings>
|
||||
<bindings node="//xsd:complexType[@name='abstractContentType']">
|
||||
<class name="XjcRdeEppParams"/>
|
||||
</bindings>
|
||||
<bindings node="//xsd:element[@name='eppParams']">
|
||||
<class name="XjcRdeEppParamsElement"/>
|
||||
</bindings>
|
||||
<bindings node="//xsd:element[@name='abstractEppParams']">
|
||||
<class name="XjcRdeEppParamsAbstract"/>
|
||||
</bindings>
|
||||
</bindings>
|
||||
<bindings schemaLocation="rde-header.xsd" node="/xsd:schema">
|
||||
<schemaBindings>
|
||||
<package name="google.registry.xjc.rdeheader"/>
|
||||
<nameXmlTransform>
|
||||
<elementName prefix="XjcRdeHeader"/>
|
||||
<typeName prefix="XjcRdeHeader"/>
|
||||
</nameXmlTransform>
|
||||
</schemaBindings>
|
||||
<bindings node="//xsd:complexType[@name='contentType']">
|
||||
<class name="XjcRdeHeader"/>
|
||||
</bindings>
|
||||
<bindings node="//xsd:element[@name='header']">
|
||||
<class name="XjcRdeHeaderElement"/>
|
||||
</bindings>
|
||||
<bindings node="//xsd:complexType[@name='countType']">
|
||||
<class name="XjcRdeHeaderCount"/>
|
||||
</bindings>
|
||||
</bindings>
|
||||
<bindings schemaLocation="rde-host.xsd" node="/xsd:schema">
|
||||
<schemaBindings>
|
||||
<package name="google.registry.xjc.rdehost"/>
|
||||
<nameXmlTransform>
|
||||
<elementName prefix="XjcRdeHost"/>
|
||||
<typeName prefix="XjcRdeHost"/>
|
||||
</nameXmlTransform>
|
||||
</schemaBindings>
|
||||
<bindings node="//xsd:complexType[@name='abstractContentType']">
|
||||
<class name="XjcRdeHost"/>
|
||||
</bindings>
|
||||
<bindings node="//xsd:element[@name='host']">
|
||||
<class name="XjcRdeHostElement"/>
|
||||
</bindings>
|
||||
</bindings>
|
||||
<bindings schemaLocation="rde-idn.xsd" node="/xsd:schema">
|
||||
<schemaBindings>
|
||||
<package name="google.registry.xjc.rdeidn"/>
|
||||
<nameXmlTransform>
|
||||
<elementName prefix="XjcRdeIdn"/>
|
||||
<typeName prefix="XjcRdeIdn"/>
|
||||
</nameXmlTransform>
|
||||
</schemaBindings>
|
||||
<bindings node="//xsd:complexType[@name='contentType']">
|
||||
<class name="XjcRdeIdn"/>
|
||||
</bindings>
|
||||
<bindings node="//xsd:element[@name='idnTableRef']">
|
||||
<class name="XjcRdeIdnElement"/>
|
||||
</bindings>
|
||||
</bindings>
|
||||
<bindings schemaLocation="rde-nndn.xsd" node="/xsd:schema">
|
||||
<schemaBindings>
|
||||
<package name="google.registry.xjc.rdenndn"/>
|
||||
<nameXmlTransform>
|
||||
<elementName prefix="XjcRdeNndn"/>
|
||||
<typeName prefix="XjcRdeNndn"/>
|
||||
</nameXmlTransform>
|
||||
</schemaBindings>
|
||||
<bindings node="//xsd:complexType[@name='abstractContentType']">
|
||||
<class name="XjcRdeNndn"/>
|
||||
</bindings>
|
||||
<bindings node="//xsd:element[@name='NNDN']">
|
||||
<class name="XjcRdeNndnElement"/>
|
||||
</bindings>
|
||||
<bindings node="//xsd:element[@name='abstractNNDN']">
|
||||
<class name="XjcRdeNndnAbstract"/>
|
||||
</bindings>
|
||||
</bindings>
|
||||
<bindings schemaLocation="rde-notification.xsd" node="/xsd:schema">
|
||||
<schemaBindings>
|
||||
<package name="google.registry.xjc.rdenotification"/>
|
||||
<nameXmlTransform>
|
||||
<elementName prefix="XjcRdeNotification"/>
|
||||
<typeName prefix="XjcRdeNotification"/>
|
||||
</nameXmlTransform>
|
||||
</schemaBindings>
|
||||
<bindings node="//xsd:complexType[@name='notificationType']">
|
||||
<class name="XjcRdeNotification"/>
|
||||
</bindings>
|
||||
<bindings node="//xsd:element[@name='notification']">
|
||||
<class name="XjcRdeNotificationElement"/>
|
||||
</bindings>
|
||||
<bindings node="//xsd:simpleType[@name='nameType']">
|
||||
<class name="XjcRdeNotificationName"/>
|
||||
</bindings>
|
||||
</bindings>
|
||||
<bindings schemaLocation="rde-policy.xsd" node="/xsd:schema">
|
||||
<schemaBindings>
|
||||
<package name="google.registry.xjc.rdepolicy"/>
|
||||
<nameXmlTransform>
|
||||
<elementName prefix="XjcRdePolicy"/>
|
||||
<typeName prefix="XjcRdePolicy"/>
|
||||
<anonymousTypeName prefix="XjcRdePolicy"/>
|
||||
</nameXmlTransform>
|
||||
</schemaBindings>
|
||||
<bindings node="//xsd:element[@name='policy']">
|
||||
<class name="XjcRdePolicyElement"/>
|
||||
</bindings>
|
||||
<bindings node="//xsd:complexType[@name='policyType']">
|
||||
<class name="XjcRdePolicy"/>
|
||||
</bindings>
|
||||
</bindings>
|
||||
<bindings schemaLocation="rde-registrar.xsd" node="/xsd:schema">
|
||||
<schemaBindings>
|
||||
<package name="google.registry.xjc.rderegistrar"/>
|
||||
<nameXmlTransform>
|
||||
<elementName prefix="XjcRdeRegistrar"/>
|
||||
<typeName prefix="XjcRdeRegistrar"/>
|
||||
</nameXmlTransform>
|
||||
</schemaBindings>
|
||||
<bindings node="//xsd:complexType[@name='abstractContentType']">
|
||||
<class name="XjcRdeRegistrar"/>
|
||||
</bindings>
|
||||
<bindings node="//xsd:element[@name='registrar']">
|
||||
<class name="XjcRdeRegistrarElement"/>
|
||||
</bindings>
|
||||
<bindings node="//xsd:element[@name='abstractRegistrar']">
|
||||
<class name="XjcRdeRegistrarAbstract"/>
|
||||
</bindings>
|
||||
</bindings>
|
||||
<bindings schemaLocation="rde-report.xsd" node="/xsd:schema">
|
||||
<schemaBindings>
|
||||
<package name="google.registry.xjc.rdereport"/>
|
||||
<nameXmlTransform>
|
||||
<elementName prefix="XjcRdeReport"/>
|
||||
<typeName prefix="XjcRdeReport"/>
|
||||
</nameXmlTransform>
|
||||
</schemaBindings>
|
||||
<bindings node="//xsd:element[@name='report']">
|
||||
<class name="XjcRdeReport"/>
|
||||
</bindings>
|
||||
</bindings>
|
||||
<bindings schemaLocation="iirdea.xsd" node="/xsd:schema">
|
||||
<schemaBindings>
|
||||
<package name="google.registry.xjc.iirdea"/>
|
||||
<nameXmlTransform>
|
||||
<elementName prefix="XjcIirdea"/>
|
||||
<typeName prefix="XjcIirdea"/>
|
||||
</nameXmlTransform>
|
||||
</schemaBindings>
|
||||
<bindings node="//xsd:complexType[@name='responseType']">
|
||||
<class name="XjcIirdeaResponse"/>
|
||||
</bindings>
|
||||
<bindings node="//xsd:element[@name='response']">
|
||||
<class name="XjcIirdeaResponseElement"/>
|
||||
</bindings>
|
||||
<bindings node="//xsd:complexType[@name='resultType']">
|
||||
<class name="XjcIirdeaResult"/>
|
||||
</bindings>
|
||||
<bindings node="//xsd:simpleType[@name='codeType']">
|
||||
<class name="XjcIirdeaCode"/>
|
||||
</bindings>
|
||||
</bindings>
|
||||
</bindings>
|
||||
@@ -1,16 +0,0 @@
|
||||
// Copyright 2017 The Nomulus Authors. All Rights Reserved.
|
||||
//
|
||||
// Licensed under the Apache License, Version 2.0 (the "License");
|
||||
// you may not use this file except in compliance with the License.
|
||||
// You may obtain a copy of the License at
|
||||
//
|
||||
// http://www.apache.org/licenses/LICENSE-2.0
|
||||
//
|
||||
// Unless required by applicable law or agreed to in writing, software
|
||||
// distributed under the License is distributed on an "AS IS" BASIS,
|
||||
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
// See the License for the specific language governing permissions and
|
||||
// limitations under the License.
|
||||
|
||||
@javax.annotation.ParametersAreNonnullByDefault
|
||||
package google.registry.xjc;
|
||||
@@ -1,90 +0,0 @@
|
||||
@XmlSchema(
|
||||
elementFormDefault = XmlNsForm.QUALIFIED,
|
||||
namespace = "@NAMESPACE@",
|
||||
xmlns = {
|
||||
@jakarta.xml.bind.annotation.XmlNs(
|
||||
prefix = "epp",
|
||||
namespaceURI = "urn:ietf:params:xml:ns:epp-1.0"),
|
||||
@jakarta.xml.bind.annotation.XmlNs(
|
||||
prefix = "eppcom",
|
||||
namespaceURI = "urn:ietf:params:xml:ns:eppcom-1.0"),
|
||||
@jakarta.xml.bind.annotation.XmlNs(
|
||||
prefix = "domain",
|
||||
namespaceURI = "urn:ietf:params:xml:ns:domain-1.0"),
|
||||
@jakarta.xml.bind.annotation.XmlNs(
|
||||
prefix = "dsig",
|
||||
namespaceURI = "http://www.w3.org/2000/09/xmldsig#"),
|
||||
@jakarta.xml.bind.annotation.XmlNs(
|
||||
prefix = "fee06",
|
||||
namespaceURI = "urn:ietf:params:xml:ns:fee-0.6"),
|
||||
@jakarta.xml.bind.annotation.XmlNs(
|
||||
prefix = "fee11",
|
||||
namespaceURI = "urn:ietf:params:xml:ns:fee-0.11"),
|
||||
@jakarta.xml.bind.annotation.XmlNs(
|
||||
prefix = "fee12",
|
||||
namespaceURI = "urn:ietf:params:xml:ns:fee-0.12"),
|
||||
@jakarta.xml.bind.annotation.XmlNs(
|
||||
prefix = "fee_1_00",
|
||||
namespaceURI = "urn:ietf:params:xml:ns:epp:fee-1.0"),
|
||||
@jakarta.xml.bind.annotation.XmlNs(
|
||||
prefix = "host",
|
||||
namespaceURI = "urn:ietf:params:xml:ns:host-1.0"),
|
||||
@jakarta.xml.bind.annotation.XmlNs(
|
||||
prefix = "iirdea",
|
||||
namespaceURI = "urn:ietf:params:xml:ns:iirdea-1.0"),
|
||||
@jakarta.xml.bind.annotation.XmlNs(
|
||||
prefix = "launch",
|
||||
namespaceURI = "urn:ietf:params:xml:ns:launch-1.0"),
|
||||
@jakarta.xml.bind.annotation.XmlNs(
|
||||
prefix = "mark",
|
||||
namespaceURI = "urn:ietf:params:xml:ns:mark-1.0"),
|
||||
@jakarta.xml.bind.annotation.XmlNs(
|
||||
prefix = "rde",
|
||||
namespaceURI = "urn:ietf:params:xml:ns:rde-1.0"),
|
||||
@jakarta.xml.bind.annotation.XmlNs(
|
||||
prefix = "rdeDomain",
|
||||
namespaceURI = "urn:ietf:params:xml:ns:rdeDomain-1.0"),
|
||||
@jakarta.xml.bind.annotation.XmlNs(
|
||||
prefix = "rdeEppParams",
|
||||
namespaceURI = "urn:ietf:params:xml:ns:rdeEppParams-1.0"),
|
||||
@jakarta.xml.bind.annotation.XmlNs(
|
||||
prefix = "rdeHeader",
|
||||
namespaceURI = "urn:ietf:params:xml:ns:rdeHeader-1.0"),
|
||||
@jakarta.xml.bind.annotation.XmlNs(
|
||||
prefix = "rdeHost",
|
||||
namespaceURI = "urn:ietf:params:xml:ns:rdeHost-1.0"),
|
||||
@jakarta.xml.bind.annotation.XmlNs(
|
||||
prefix = "rdeIDN",
|
||||
namespaceURI = "urn:ietf:params:xml:ns:rdeIDN-1.0"),
|
||||
@jakarta.xml.bind.annotation.XmlNs(
|
||||
prefix = "rdeNNDN",
|
||||
namespaceURI = "urn:ietf:params:xml:ns:rdeNNDN-1.0"),
|
||||
@jakarta.xml.bind.annotation.XmlNs(
|
||||
prefix = "rdeNotification",
|
||||
namespaceURI = "urn:ietf:params:xml:ns:rdeNotification-1.0"),
|
||||
@jakarta.xml.bind.annotation.XmlNs(
|
||||
prefix = "rdePolicy",
|
||||
namespaceURI = "urn:ietf:params:xml:ns:rdePolicy-1.0"),
|
||||
@jakarta.xml.bind.annotation.XmlNs(
|
||||
prefix = "rdeRegistrar",
|
||||
namespaceURI = "urn:ietf:params:xml:ns:rdeRegistrar-1.0"),
|
||||
@jakarta.xml.bind.annotation.XmlNs(
|
||||
prefix = "rdeReport",
|
||||
namespaceURI = "urn:ietf:params:xml:ns:rdeReport-1.0"),
|
||||
@jakarta.xml.bind.annotation.XmlNs(
|
||||
prefix = "rgp",
|
||||
namespaceURI = "urn:ietf:params:xml:ns:rgp-1.0"),
|
||||
@jakarta.xml.bind.annotation.XmlNs(
|
||||
prefix = "secDNS",
|
||||
namespaceURI = "urn:ietf:params:xml:ns:secDNS-1.1"),
|
||||
@jakarta.xml.bind.annotation.XmlNs(
|
||||
prefix = "smd",
|
||||
namespaceURI = "urn:ietf:params:xml:ns:signedMark-1.0"),
|
||||
})
|
||||
@XmlAccessorType(XmlAccessType.FIELD)
|
||||
package google.registry.xjc.@PACKAGE@;
|
||||
|
||||
import jakarta.xml.bind.annotation.XmlAccessType;
|
||||
import jakarta.xml.bind.annotation.XmlAccessorType;
|
||||
import jakarta.xml.bind.annotation.XmlNsForm;
|
||||
import jakarta.xml.bind.annotation.XmlSchema;
|
||||
@@ -1,26 +0,0 @@
|
||||
domain urn:ietf:params:xml:ns:domain-1.0
|
||||
dsig http://www.w3.org/2000/09/xmldsig#
|
||||
epp urn:ietf:params:xml:ns:epp-1.0
|
||||
eppcom urn:ietf:params:xml:ns:eppcom-1.0
|
||||
fee06 urn:ietf:params:xml:ns:fee-0.6
|
||||
fee11 urn:ietf:params:xml:ns:fee-0.11
|
||||
fee12 urn:ietf:params:xml:ns:fee-0.12
|
||||
fee_1_00 urn:ietf:params:xml:ns:epp:fee-1.0
|
||||
host urn:ietf:params:xml:ns:host-1.0
|
||||
iirdea urn:ietf:params:xml:ns:iirdea-1.0
|
||||
launch urn:ietf:params:xml:ns:launch-1.0
|
||||
mark urn:ietf:params:xml:ns:mark-1.0
|
||||
rde urn:ietf:params:xml:ns:rde-1.0
|
||||
rdedomain urn:ietf:params:xml:ns:rdeDomain-1.0
|
||||
rdeeppparams urn:ietf:params:xml:ns:rdeEppParams-1.0
|
||||
rdeheader urn:ietf:params:xml:ns:rdeHeader-1.0
|
||||
rdehost urn:ietf:params:xml:ns:rdeHost-1.0
|
||||
rdeidn urn:ietf:params:xml:ns:rdeIDN-1.0
|
||||
rdenndn urn:ietf:params:xml:ns:rdeNNDN-1.0
|
||||
rdenotification urn:ietf:params:xml:ns:rdeNotification-1.0
|
||||
rdepolicy urn:ietf:params:xml:ns:rdePolicy-1.0
|
||||
rderegistrar urn:ietf:params:xml:ns:rdeRegistrar-1.0
|
||||
rdereport urn:ietf:params:xml:ns:rdeReport-1.0
|
||||
rgp urn:ietf:params:xml:ns:rgp-1.0
|
||||
secdns urn:ietf:params:xml:ns:secDNS-1.1
|
||||
smd urn:ietf:params:xml:ns:signedMark-1.0
|
||||
@@ -1,72 +0,0 @@
|
||||
// Copyright 2017 The Nomulus Authors. All Rights Reserved.
|
||||
//
|
||||
// Licensed under the Apache License, Version 2.0 (the "License");
|
||||
// you may not use this file except in compliance with the License.
|
||||
// You may obtain a copy of the License at
|
||||
//
|
||||
// http://www.apache.org/licenses/LICENSE-2.0
|
||||
//
|
||||
// Unless required by applicable law or agreed to in writing, software
|
||||
// distributed under the License is distributed on an "AS IS" BASIS,
|
||||
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
// See the License for the specific language governing permissions and
|
||||
// limitations under the License.
|
||||
|
||||
package google.registry.xml;
|
||||
|
||||
import static com.google.common.base.Strings.isNullOrEmpty;
|
||||
|
||||
import google.registry.util.DateTimeUtils;
|
||||
import jakarta.xml.bind.annotation.adapters.XmlAdapter;
|
||||
import java.time.LocalDate;
|
||||
import java.time.OffsetDateTime;
|
||||
import java.time.ZoneOffset;
|
||||
import java.time.format.DateTimeFormatter;
|
||||
import javax.annotation.CheckForNull;
|
||||
import javax.annotation.Nullable;
|
||||
|
||||
/**
|
||||
* Adapter to use java.time {@link LocalDate} when marshalling the XML Schema {@code date} type.
|
||||
*
|
||||
* <p>Dates are represented as midnight in UTC. The parser aims to be permissive in what it accepts.
|
||||
* Timestamps are converted to UTC if a zone is specified and then the time section is truncated.
|
||||
*/
|
||||
public class DateAdapter extends XmlAdapter<String, LocalDate> {
|
||||
|
||||
private static final DateTimeFormatter MARSHAL_FORMAT = DateTimeFormatter.ISO_LOCAL_DATE;
|
||||
|
||||
private static final DateTimeFormatter UNMARSHAL_FORMAT =
|
||||
DateTimeFormatter.ISO_DATE_TIME.withZone(ZoneOffset.UTC);
|
||||
|
||||
/**
|
||||
* Parses an ISO timestamp string into a UTC {@link LocalDate} object, converting timezones and
|
||||
* truncating time to midnight if necessary. If {@code timestamp} is empty or {@code null} then
|
||||
* {@code null} is returned.
|
||||
*/
|
||||
@Nullable
|
||||
@CheckForNull
|
||||
@Override
|
||||
public LocalDate unmarshal(@Nullable String timestamp) {
|
||||
if (isNullOrEmpty(timestamp)) {
|
||||
return null;
|
||||
}
|
||||
// If it's already just a date, parse it as such.
|
||||
if (timestamp.length() == 10 && timestamp.chars().filter(c -> c == '-').count() == 2) {
|
||||
return LocalDate.parse(timestamp);
|
||||
}
|
||||
// Otherwise, parse as a date-time and convert to UTC.
|
||||
return DateTimeUtils.toLocalDate(OffsetDateTime.parse(timestamp, UNMARSHAL_FORMAT).toInstant());
|
||||
}
|
||||
|
||||
/**
|
||||
* Converts {@link LocalDate} to UTC and returns it as an RFC3339 string. If {@code timestamp} is
|
||||
* {@code null} then an empty string is returned.
|
||||
*/
|
||||
@Override
|
||||
public String marshal(@Nullable LocalDate date) {
|
||||
if (date == null) {
|
||||
return "";
|
||||
}
|
||||
return MARSHAL_FORMAT.format(date);
|
||||
}
|
||||
}
|
||||
@@ -1,37 +0,0 @@
|
||||
// Copyright 2017 The Nomulus Authors. All Rights Reserved.
|
||||
//
|
||||
// Licensed under the Apache License, Version 2.0 (the "License");
|
||||
// you may not use this file except in compliance with the License.
|
||||
// You may obtain a copy of the License at
|
||||
//
|
||||
// http://www.apache.org/licenses/LICENSE-2.0
|
||||
//
|
||||
// Unless required by applicable law or agreed to in writing, software
|
||||
// distributed under the License is distributed on an "AS IS" BASIS,
|
||||
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
// See the License for the specific language governing permissions and
|
||||
// limitations under the License.
|
||||
|
||||
package google.registry.xml;
|
||||
|
||||
import static com.google.common.base.Strings.isNullOrEmpty;
|
||||
|
||||
import jakarta.xml.bind.annotation.adapters.XmlAdapter;
|
||||
import java.time.Period;
|
||||
import javax.annotation.Nullable;
|
||||
|
||||
/** Adapter to use Joda {@link Period} when marshalling XML. */
|
||||
public class PeriodAdapter extends XmlAdapter<String, Period> {
|
||||
|
||||
@Nullable
|
||||
@Override
|
||||
public Period unmarshal(@Nullable String periodString) {
|
||||
return isNullOrEmpty(periodString) ? null : Period.parse(periodString);
|
||||
}
|
||||
|
||||
@Nullable
|
||||
@Override
|
||||
public String marshal(@Nullable Period period) {
|
||||
return period == null ? null : period.toString();
|
||||
}
|
||||
}
|
||||
@@ -1,48 +0,0 @@
|
||||
// Copyright 2017 The Nomulus Authors. All Rights Reserved.
|
||||
//
|
||||
// Licensed under the Apache License, Version 2.0 (the "License");
|
||||
// you may not use this file except in compliance with the License.
|
||||
// You may obtain a copy of the License at
|
||||
//
|
||||
// http://www.apache.org/licenses/LICENSE-2.0
|
||||
//
|
||||
// Unless required by applicable law or agreed to in writing, software
|
||||
// distributed under the License is distributed on an "AS IS" BASIS,
|
||||
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
// See the License for the specific language governing permissions and
|
||||
// limitations under the License.
|
||||
|
||||
package google.registry.xml;
|
||||
|
||||
import com.google.common.base.CharMatcher;
|
||||
import jakarta.xml.bind.annotation.adapters.XmlAdapter;
|
||||
import javax.annotation.Nullable;
|
||||
|
||||
/**
|
||||
* {@link XmlAdapter} which trims all whitespace surrounding a String.
|
||||
*
|
||||
* <p>This is primarily useful for <code>@XmlValue</code>-annotated fields in JAXB objects, as XML
|
||||
* values can commonly be formatted like so:
|
||||
*
|
||||
* <pre>{@code
|
||||
* <ns:tag>
|
||||
* XML value here.
|
||||
* </ns:tag>
|
||||
* }</pre>
|
||||
*/
|
||||
public class TrimWhitespaceAdapter extends XmlAdapter<String, String> {
|
||||
|
||||
private static final CharMatcher WHITESPACE = CharMatcher.anyOf(" \t\r\n");
|
||||
|
||||
@Override
|
||||
@Nullable
|
||||
public String unmarshal(@Nullable String value) {
|
||||
return (value == null) ? null : WHITESPACE.trimFrom(value);
|
||||
}
|
||||
|
||||
@Override
|
||||
@Nullable
|
||||
public String marshal(@Nullable String str) {
|
||||
return str;
|
||||
}
|
||||
}
|
||||
@@ -1,61 +0,0 @@
|
||||
// Copyright 2017 The Nomulus Authors. All Rights Reserved.
|
||||
//
|
||||
// Licensed under the Apache License, Version 2.0 (the "License");
|
||||
// you may not use this file except in compliance with the License.
|
||||
// You may obtain a copy of the License at
|
||||
//
|
||||
// http://www.apache.org/licenses/LICENSE-2.0
|
||||
//
|
||||
// Unless required by applicable law or agreed to in writing, software
|
||||
// distributed under the License is distributed on an "AS IS" BASIS,
|
||||
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
// See the License for the specific language governing permissions and
|
||||
// limitations under the License.
|
||||
|
||||
package google.registry.xml;
|
||||
|
||||
import static com.google.common.base.Strings.isNullOrEmpty;
|
||||
import static google.registry.util.DateTimeUtils.formatInstant;
|
||||
import static google.registry.util.DateTimeUtils.parseInstant;
|
||||
|
||||
import jakarta.xml.bind.annotation.adapters.XmlAdapter;
|
||||
import java.time.Instant;
|
||||
import javax.annotation.CheckForNull;
|
||||
import javax.annotation.Nullable;
|
||||
|
||||
/**
|
||||
* Adapter to use an {@link Instant} when marshalling XML timestamps.
|
||||
*
|
||||
* <p>These fields shall contain timestamps indicating the date and time in UTC as specified in
|
||||
* RFC3339.
|
||||
*
|
||||
* @see <a href="http://tools.ietf.org/html/rfc3339">RFC3339</a>
|
||||
*/
|
||||
public class UtcInstantAdapter extends XmlAdapter<String, Instant> {
|
||||
|
||||
public static String getFormattedString(@Nullable Instant timestamp) {
|
||||
return (timestamp == null) ? "" : formatInstant(timestamp);
|
||||
}
|
||||
|
||||
/**
|
||||
* Parses an ISO timestamp string into a UTC {@link Instant} object, converting timezones if
|
||||
* necessary. If {@code timestamp} is empty or {@code null} then {@code null} is returned.
|
||||
*/
|
||||
@Override
|
||||
@CheckForNull
|
||||
public Instant unmarshal(@Nullable String timestamp) {
|
||||
if (isNullOrEmpty(timestamp)) {
|
||||
return null;
|
||||
}
|
||||
return parseInstant(timestamp);
|
||||
}
|
||||
|
||||
/**
|
||||
* Converts {@link Instant} to UTC and returns it as an RFC3339 string. If {@code timestamp} is
|
||||
* {@code null} then an empty string is returned.
|
||||
*/
|
||||
@Override
|
||||
public String marshal(@Nullable Instant timestamp) {
|
||||
return getFormattedString(timestamp);
|
||||
}
|
||||
}
|
||||
@@ -1,24 +0,0 @@
|
||||
// Copyright 2017 The Nomulus Authors. All Rights Reserved.
|
||||
//
|
||||
// Licensed under the Apache License, Version 2.0 (the "License");
|
||||
// you may not use this file except in compliance with the License.
|
||||
// You may obtain a copy of the License at
|
||||
//
|
||||
// http://www.apache.org/licenses/LICENSE-2.0
|
||||
//
|
||||
// Unless required by applicable law or agreed to in writing, software
|
||||
// distributed under the License is distributed on an "AS IS" BASIS,
|
||||
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
// See the License for the specific language governing permissions and
|
||||
// limitations under the License.
|
||||
|
||||
package google.registry.xml;
|
||||
|
||||
/** Enum that determines whether xml should be validated against a schema while marshaling. */
|
||||
public enum ValidationMode {
|
||||
/** Validate. */
|
||||
STRICT,
|
||||
|
||||
/** Don't validate. */
|
||||
LENIENT
|
||||
}
|
||||
@@ -1,31 +0,0 @@
|
||||
// Copyright 2017 The Nomulus Authors. All Rights Reserved.
|
||||
//
|
||||
// Licensed under the Apache License, Version 2.0 (the "License");
|
||||
// you may not use this file except in compliance with the License.
|
||||
// You may obtain a copy of the License at
|
||||
//
|
||||
// http://www.apache.org/licenses/LICENSE-2.0
|
||||
//
|
||||
// Unless required by applicable law or agreed to in writing, software
|
||||
// distributed under the License is distributed on an "AS IS" BASIS,
|
||||
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
// See the License for the specific language governing permissions and
|
||||
// limitations under the License.
|
||||
|
||||
package google.registry.xml;
|
||||
|
||||
/**
|
||||
* An exception thrown by {@link XmlTransformer} when marshalling or unmarshalling fails.
|
||||
*
|
||||
* <p>Upstream errors such as {@link jakarta.xml.bind.JAXBException} will be wrapped by this class.
|
||||
*/
|
||||
public class XmlException extends Exception {
|
||||
|
||||
public XmlException(String message) {
|
||||
super(message);
|
||||
}
|
||||
|
||||
public XmlException(Throwable cause) {
|
||||
super(cause);
|
||||
}
|
||||
}
|
||||
@@ -1,95 +0,0 @@
|
||||
// Copyright 2017 The Nomulus Authors. All Rights Reserved.
|
||||
//
|
||||
// Licensed under the Apache License, Version 2.0 (the "License");
|
||||
// you may not use this file except in compliance with the License.
|
||||
// You may obtain a copy of the License at
|
||||
//
|
||||
// http://www.apache.org/licenses/LICENSE-2.0
|
||||
//
|
||||
// Unless required by applicable law or agreed to in writing, software
|
||||
// distributed under the License is distributed on an "AS IS" BASIS,
|
||||
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
// See the License for the specific language governing permissions and
|
||||
// limitations under the License.
|
||||
|
||||
package google.registry.xml;
|
||||
|
||||
import static com.google.common.base.Throwables.throwIfInstanceOf;
|
||||
import static com.google.common.base.Verify.verify;
|
||||
import static google.registry.xml.ValidationMode.LENIENT;
|
||||
import static google.registry.xml.ValidationMode.STRICT;
|
||||
import static java.nio.charset.StandardCharsets.UTF_8;
|
||||
|
||||
import com.google.re2j.Pattern;
|
||||
import jakarta.xml.bind.JAXBContext;
|
||||
import jakarta.xml.bind.JAXBElement;
|
||||
import jakarta.xml.bind.JAXBException;
|
||||
import jakarta.xml.bind.MarshalException;
|
||||
import jakarta.xml.bind.Marshaller;
|
||||
import java.io.ByteArrayOutputStream;
|
||||
import javax.annotation.concurrent.NotThreadSafe;
|
||||
import javax.xml.validation.Schema;
|
||||
|
||||
/** JAXB marshaller for building pieces of XML documents in a single thread. */
|
||||
@NotThreadSafe
|
||||
public final class XmlFragmentMarshaller {
|
||||
|
||||
private static final Pattern XMLNS_PATTERN = Pattern.compile(" xmlns:\\w+=\"[^\"]+\"");
|
||||
|
||||
private final ByteArrayOutputStream os = new ByteArrayOutputStream();
|
||||
private final Marshaller marshaller;
|
||||
private final Schema schema;
|
||||
|
||||
XmlFragmentMarshaller(JAXBContext jaxbContext, Schema schema) {
|
||||
try {
|
||||
marshaller = jaxbContext.createMarshaller();
|
||||
marshaller.setProperty(Marshaller.JAXB_ENCODING, UTF_8.toString());
|
||||
marshaller.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, true);
|
||||
marshaller.setProperty(Marshaller.JAXB_FRAGMENT, true);
|
||||
} catch (JAXBException e) {
|
||||
throw new RuntimeException(e);
|
||||
}
|
||||
this.schema = schema;
|
||||
}
|
||||
|
||||
/**
|
||||
* Turns an individual JAXB element into an XML fragment string.
|
||||
*
|
||||
* @throws MarshalException if schema validation failed
|
||||
*/
|
||||
public String marshal(JAXBElement<?> element) throws MarshalException {
|
||||
return marshal(element, STRICT);
|
||||
}
|
||||
|
||||
/** Turns an individual JAXB element into an XML fragment string. */
|
||||
public String marshalLenient(JAXBElement<?> element) {
|
||||
try {
|
||||
return marshal(element, LENIENT);
|
||||
} catch (MarshalException e) {
|
||||
throw new RuntimeException("MarshalException shouldn't be thrown in lenient mode", e);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Turns an individual JAXB element into an XML fragment string using the given validation mode.
|
||||
*
|
||||
* @throws MarshalException if schema validation failed
|
||||
*/
|
||||
public String marshal(JAXBElement<?> element, ValidationMode validationMode)
|
||||
throws MarshalException {
|
||||
os.reset();
|
||||
marshaller.setSchema((validationMode == STRICT) ? schema : null);
|
||||
try {
|
||||
marshaller.marshal(element, os);
|
||||
} catch (JAXBException e) {
|
||||
throwIfInstanceOf(e, MarshalException.class);
|
||||
throw new RuntimeException("Mysterious XML exception", e);
|
||||
}
|
||||
String fragment = new String(os.toByteArray(), UTF_8);
|
||||
int endOfFirstLine = fragment.indexOf(">\n");
|
||||
verify(endOfFirstLine > 0, "Bad XML fragment:\n%s", fragment);
|
||||
String firstLine = fragment.substring(0, endOfFirstLine + 2);
|
||||
String rest = fragment.substring(firstLine.length());
|
||||
return XMLNS_PATTERN.matcher(firstLine).replaceAll("") + rest;
|
||||
}
|
||||
}
|
||||
@@ -1,322 +0,0 @@
|
||||
// Copyright 2017 The Nomulus Authors. All Rights Reserved.
|
||||
//
|
||||
// Licensed under the Apache License, Version 2.0 (the "License");
|
||||
// you may not use this file except in compliance with the License.
|
||||
// You may obtain a copy of the License at
|
||||
//
|
||||
// http://www.apache.org/licenses/LICENSE-2.0
|
||||
//
|
||||
// Unless required by applicable law or agreed to in writing, software
|
||||
// distributed under the License is distributed on an "AS IS" BASIS,
|
||||
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
// See the License for the specific language governing permissions and
|
||||
// limitations under the License.
|
||||
|
||||
package google.registry.xml;
|
||||
|
||||
import static com.google.common.base.Preconditions.checkNotNull;
|
||||
import static com.google.common.base.Strings.nullToEmpty;
|
||||
import static google.registry.xml.ValidationMode.STRICT;
|
||||
import static java.nio.charset.StandardCharsets.UTF_8;
|
||||
|
||||
import com.google.common.base.Joiner;
|
||||
import com.google.common.collect.ImmutableList;
|
||||
import com.google.common.collect.ImmutableMap;
|
||||
import com.google.common.io.Closer;
|
||||
import com.google.common.io.Resources;
|
||||
import jakarta.xml.bind.JAXBContext;
|
||||
import jakarta.xml.bind.JAXBException;
|
||||
import jakarta.xml.bind.Marshaller;
|
||||
import jakarta.xml.bind.UnmarshalException;
|
||||
import jakarta.xml.bind.Unmarshaller;
|
||||
import jakarta.xml.bind.helpers.DefaultValidationEventHandler;
|
||||
import java.io.IOException;
|
||||
import java.io.InputStream;
|
||||
import java.io.OutputStream;
|
||||
import java.io.StringReader;
|
||||
import java.io.StringWriter;
|
||||
import java.io.Writer;
|
||||
import java.nio.charset.Charset;
|
||||
import java.util.Collection;
|
||||
import java.util.Map;
|
||||
import javax.annotation.Nullable;
|
||||
import javax.xml.XMLConstants;
|
||||
import javax.xml.stream.XMLInputFactory;
|
||||
import javax.xml.stream.XMLStreamException;
|
||||
import javax.xml.transform.OutputKeys;
|
||||
import javax.xml.transform.Transformer;
|
||||
import javax.xml.transform.TransformerConfigurationException;
|
||||
import javax.xml.transform.TransformerException;
|
||||
import javax.xml.transform.TransformerFactory;
|
||||
import javax.xml.transform.stream.StreamResult;
|
||||
import javax.xml.transform.stream.StreamSource;
|
||||
import javax.xml.validation.Schema;
|
||||
import javax.xml.validation.SchemaFactory;
|
||||
import org.xml.sax.SAXException;
|
||||
import org.xml.sax.SAXParseException;
|
||||
|
||||
/** Static methods for marshaling, unmarshaling, and validating XML. */
|
||||
public class XmlTransformer {
|
||||
|
||||
/** Default for {@link StreamSource#setSystemId(String)} so error reporting works. */
|
||||
private static final String SYSTEM_ID = "<default system id>";
|
||||
|
||||
/** A transformer factory for the {@link #prettyPrint} method. */
|
||||
private static final TransformerFactory transformerFactory = createTransformerFactory();
|
||||
|
||||
/** A {@link JAXBContext} (thread-safe) to use for marshaling and unmarshaling. */
|
||||
private final JAXBContext jaxbContext;
|
||||
|
||||
/** A factory for setting flags to disable XXE attacks. */
|
||||
private static final XMLInputFactory XML_INPUT_FACTORY = createXmlInputFactory();
|
||||
|
||||
/** A {@link Schema} to validate XML. */
|
||||
private final Schema schema;
|
||||
|
||||
/**
|
||||
* Create a new XmlTransformer that validates using the given schemas, but uses the given classes
|
||||
* (rather than generated ones) for marshaling and unmarshaling.
|
||||
*
|
||||
* @param schemaFilenames schema files, used only for validating, and relative to this package.
|
||||
* @param recognizedClasses the classes that can be used to marshal to and from
|
||||
*/
|
||||
public XmlTransformer(ImmutableList<String> schemaFilenames, Class<?>... recognizedClasses) {
|
||||
try {
|
||||
this.jaxbContext = JAXBContext.newInstance(recognizedClasses);
|
||||
this.schema = loadXmlSchemas(schemaFilenames);
|
||||
} catch (JAXBException e) {
|
||||
throw new RuntimeException(e);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Create a new XmlTransformer that validates using the given schemas and marshals to and from
|
||||
* classes generated off of those schemas.
|
||||
*
|
||||
* @param schemaNamesToFilenames map of schema names to filenames, immutable because ordering is
|
||||
* significant and ImmutableMap preserves insertion order. The filenames are relative to
|
||||
* this package.
|
||||
*/
|
||||
public XmlTransformer(Package pakkage, ImmutableMap<String, String> schemaNamesToFilenames) {
|
||||
try {
|
||||
this.jaxbContext = initJaxbContext(pakkage, schemaNamesToFilenames.keySet());
|
||||
this.schema = loadXmlSchemas(ImmutableList.copyOf(schemaNamesToFilenames.values()));
|
||||
} catch (JAXBException e) {
|
||||
throw new RuntimeException(e);
|
||||
}
|
||||
}
|
||||
|
||||
public static XMLInputFactory createXmlInputFactory() {
|
||||
XMLInputFactory xmlInputFactory = XMLInputFactory.newDefaultFactory();
|
||||
// Coalesce adjacent data, so that all chars in a string will be grouped as one item.
|
||||
xmlInputFactory.setProperty(XMLInputFactory.IS_COALESCING, true);
|
||||
// Preserve Name Space information.
|
||||
xmlInputFactory.setProperty(XMLInputFactory.IS_NAMESPACE_AWARE, true);
|
||||
// Prevent XXE attacks.
|
||||
xmlInputFactory.setProperty(XMLInputFactory.IS_SUPPORTING_EXTERNAL_ENTITIES, false);
|
||||
xmlInputFactory.setProperty(XMLInputFactory.SUPPORT_DTD, false);
|
||||
xmlInputFactory.setXMLResolver(
|
||||
(publicID, systemID, baseURI, namespace) -> {
|
||||
throw new XMLStreamException("Entity resolution disabled.");
|
||||
});
|
||||
return xmlInputFactory;
|
||||
}
|
||||
|
||||
/**
|
||||
* Validates XML text against {@link #schema} without marshalling.
|
||||
*
|
||||
* <p>You must specify the XML class you expect to receive as the root element. Validation is
|
||||
* performed in accordance with the hard-coded XML schemas.
|
||||
*
|
||||
* @throws XmlException if XML input was invalid or root element doesn't match {@code expect}.
|
||||
*/
|
||||
public void validate(String xml) throws XmlException {
|
||||
try {
|
||||
schema.newValidator().validate(new StreamSource(new StringReader(xml)));
|
||||
} catch (SAXException | IOException e) {
|
||||
throw new XmlException(e);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Turns XML text into an object, validating against hard-coded xml {@link #schema}s.
|
||||
*
|
||||
* @param clazz the XML class you expect to receive as the root element
|
||||
* @throws XmlException if failed to read from {@code bytes}, XML input is invalid, or root
|
||||
* element doesn't match {@code expect}.
|
||||
* @see com.google.common.io.Files#asByteSource
|
||||
* @see com.google.common.io.Resources#asByteSource
|
||||
* @see <a href="https://errorprone.info/bugpattern/TypeParameterUnusedInFormals">TypeParameterUnusedInFormals</a>
|
||||
*/
|
||||
public <T> T unmarshal(Class<T> clazz, InputStream stream) throws XmlException {
|
||||
try (InputStream autoClosingStream = stream) {
|
||||
return clazz.cast(getUnmarshaller().unmarshal(
|
||||
XML_INPUT_FACTORY.createXMLStreamReader(new StreamSource(autoClosingStream, SYSTEM_ID))));
|
||||
} catch (UnmarshalException e) {
|
||||
// Plain old parsing exceptions have a SAXParseException with no further cause.
|
||||
if (e.getLinkedException() instanceof SAXParseException sae
|
||||
&& e.getLinkedException().getCause() == null) {
|
||||
throw new XmlException(
|
||||
String.format(
|
||||
"Syntax error at line %d, column %d: %s",
|
||||
sae.getLineNumber(),
|
||||
sae.getColumnNumber(),
|
||||
nullToEmpty(sae.getMessage()).replace(""", "")));
|
||||
}
|
||||
// These get thrown for attempted XXE attacks.
|
||||
if (e.getLinkedException() instanceof XMLStreamException xse) {
|
||||
throw new XmlException(
|
||||
String.format(
|
||||
"Syntax error at line %d, column %d: %s",
|
||||
xse.getLocation().getLineNumber(),
|
||||
xse.getLocation().getColumnNumber(),
|
||||
nullToEmpty(xse.getMessage())
|
||||
.replaceAll(
|
||||
"^.*\nMessage: ", "") // Strip an ugly prefix from XMLStreamException.
|
||||
.replace(""", "")));
|
||||
}
|
||||
throw new XmlException(e);
|
||||
} catch (JAXBException | XMLStreamException | IOException e) {
|
||||
throw new XmlException(e);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Streams {@code root} without XML declaration, optionally validating against the schema.
|
||||
*
|
||||
* <p>The root object must be annotated with {@link jakarta.xml.bind.annotation.XmlRootElement}.
|
||||
* If the validation parameter is set to {@link ValidationMode#STRICT} this method will verify
|
||||
* that your object strictly conforms to {@link #schema}. Because the output is streamed, {@link
|
||||
* XmlException} will most likely be thrown <i>after</i> output has been written.
|
||||
*
|
||||
* @param root the object to write
|
||||
* @param writer to write the output to
|
||||
* @param validation whether to validate while marshaling
|
||||
* @throws XmlException to rethrow {@link JAXBException}.
|
||||
*/
|
||||
public void marshal(Object root, Writer writer, ValidationMode validation) throws XmlException {
|
||||
try {
|
||||
// Omit XML declaration because character-oriented output prevents us from knowing.
|
||||
getMarshaller(
|
||||
STRICT.equals(validation) ? schema : null,
|
||||
ImmutableMap.of(Marshaller.JAXB_FRAGMENT, true)).marshal(
|
||||
checkNotNull(root, "root"), checkNotNull(writer, "writer"));
|
||||
} catch (JAXBException e) {
|
||||
throw new XmlException(e);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Validates and streams {@code root} as formatted XML bytes with XML declaration.
|
||||
*
|
||||
* <p>The root object must be annotated with {@link jakarta.xml.bind.annotation.XmlRootElement}.
|
||||
* If the validation parameter is set to {@link ValidationMode#STRICT} this method will verify
|
||||
* that your object strictly conforms to {@link #schema}. Because the output is streamed, {@link
|
||||
* XmlException} will most likely be thrown <i>after</i> output has been written.
|
||||
*
|
||||
* @param root the object to write
|
||||
* @param out byte-oriented output for writing XML. This method won't close it.
|
||||
* @param charset should almost always be set to {@code "utf-8"}.
|
||||
* @param validation whether to validate while marshaling
|
||||
* @throws XmlException to rethrow {@link JAXBException}.
|
||||
* @see #unmarshal
|
||||
*/
|
||||
public void marshal(Object root, OutputStream out, Charset charset, ValidationMode validation)
|
||||
throws XmlException {
|
||||
try {
|
||||
getMarshaller(
|
||||
STRICT.equals(validation) ? schema : null,
|
||||
ImmutableMap.of(Marshaller.JAXB_ENCODING, charset.toString())).marshal(
|
||||
checkNotNull(root, "root"), checkNotNull(out, "out"));
|
||||
} catch (JAXBException e) {
|
||||
throw new XmlException(e);
|
||||
}
|
||||
}
|
||||
|
||||
/** Returns new instance of {@link XmlFragmentMarshaller}. */
|
||||
public XmlFragmentMarshaller createFragmentMarshaller() {
|
||||
return new XmlFragmentMarshaller(jaxbContext, schema);
|
||||
}
|
||||
|
||||
/** Creates a single {@link Schema} from multiple {@code .xsd} files. */
|
||||
public static Schema loadXmlSchemas(ImmutableList<String> schemaFilenames) {
|
||||
try (Closer closer = Closer.create()) {
|
||||
StreamSource[] sources = new StreamSource[schemaFilenames.size()];
|
||||
for (int i = 0; i < schemaFilenames.size(); ++i) {
|
||||
sources[i] = new StreamSource(closer.register(
|
||||
Resources.asByteSource(Resources.getResource(
|
||||
XmlTransformer.class, "xsd/" + schemaFilenames.get(i))).openStream()));
|
||||
}
|
||||
return SchemaFactory.newInstance(XMLConstants.W3C_XML_SCHEMA_NS_URI).newSchema(sources);
|
||||
} catch (IOException | SAXException e) {
|
||||
throw new RuntimeException(e);
|
||||
}
|
||||
}
|
||||
|
||||
/** Creates a {@link JAXBContext} from multiple schema names. */
|
||||
private static JAXBContext initJaxbContext(
|
||||
Package pakkage, Collection<String> schemaNames) throws JAXBException {
|
||||
String prefix = pakkage.getName() + ".";
|
||||
return JAXBContext.newInstance(prefix + Joiner.on(':' + prefix).join(schemaNames));
|
||||
}
|
||||
|
||||
/** Get a {@link Unmarshaller} instance with the default configuration. */
|
||||
private Unmarshaller getUnmarshaller() throws JAXBException {
|
||||
Unmarshaller unmarshaller = jaxbContext.createUnmarshaller();
|
||||
unmarshaller.setSchema(schema);
|
||||
// This handler was the default in JAXB 1.0. It fails on any exception thrown while
|
||||
// unmarshalling. In JAXB 2.0 some errors are considered recoverable and are ignored, which is
|
||||
// not what we want, so we have to set this explicitly.
|
||||
unmarshaller.setEventHandler(new DefaultValidationEventHandler());
|
||||
return unmarshaller;
|
||||
}
|
||||
|
||||
/** Get a {@link Marshaller} instance with the given configuration. */
|
||||
private Marshaller getMarshaller(@Nullable Schema schemaParam, Map<String, ?> properties)
|
||||
throws JAXBException {
|
||||
Marshaller marshaller = jaxbContext.createMarshaller();
|
||||
for (Map.Entry<String, ?> entry : properties.entrySet()) {
|
||||
marshaller.setProperty(entry.getKey(), entry.getValue());
|
||||
}
|
||||
marshaller.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, true);
|
||||
marshaller.setSchema(schemaParam);
|
||||
return marshaller;
|
||||
}
|
||||
|
||||
/** Pretty print XML. */
|
||||
public static String prettyPrint(String xmlString) {
|
||||
StringWriter prettyXml = new StringWriter();
|
||||
try {
|
||||
Transformer transformer = transformerFactory.newTransformer();
|
||||
transformer.setOutputProperty(OutputKeys.INDENT, "yes");
|
||||
transformer.setOutputProperty(OutputKeys.STANDALONE, "yes");
|
||||
transformer.setOutputProperty("{http://xml.apache.org/xslt}indent-amount", "2");
|
||||
transformer.transform(
|
||||
new StreamSource(new StringReader(xmlString)),
|
||||
new StreamResult(prettyXml));
|
||||
|
||||
// Remove whitespace-only/blank lines (which the XMLTransformer in Java 9 and up sometimes
|
||||
// adds depending on input format). Surprisingly, this is the least bad solution. See:
|
||||
// https://stackoverflow.com/questions/58478632/how-to-avoid-extra-blank-lines-in-xml-generation-with-java
|
||||
// Note that a simple regex replace is waaaaay more performant than using an XSLT.
|
||||
return prettyXml.toString().replaceAll("\\n\\s*\\n", "\n");
|
||||
} catch (TransformerException e) {
|
||||
return xmlString; // We couldn't prettify it, but that's ok; fail gracefully.
|
||||
}
|
||||
}
|
||||
|
||||
/** Pretty print XML bytes. */
|
||||
public static String prettyPrint(byte[] xmlBytes) {
|
||||
return prettyPrint(new String(xmlBytes, UTF_8));
|
||||
}
|
||||
|
||||
private static TransformerFactory createTransformerFactory() {
|
||||
TransformerFactory transformerFactory = TransformerFactory.newInstance();
|
||||
try {
|
||||
transformerFactory.setFeature(XMLConstants.FEATURE_SECURE_PROCESSING, true);
|
||||
} catch (TransformerConfigurationException e) {
|
||||
throw new RuntimeException(e); // this should never happen
|
||||
}
|
||||
return transformerFactory;
|
||||
}
|
||||
}
|
||||
@@ -1,16 +0,0 @@
|
||||
// Copyright 2017 The Nomulus Authors. All Rights Reserved.
|
||||
//
|
||||
// Licensed under the Apache License, Version 2.0 (the "License");
|
||||
// you may not use this file except in compliance with the License.
|
||||
// You may obtain a copy of the License at
|
||||
//
|
||||
// http://www.apache.org/licenses/LICENSE-2.0
|
||||
//
|
||||
// Unless required by applicable law or agreed to in writing, software
|
||||
// distributed under the License is distributed on an "AS IS" BASIS,
|
||||
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
// See the License for the specific language governing permissions and
|
||||
// limitations under the License.
|
||||
|
||||
@javax.annotation.ParametersAreNonnullByDefault
|
||||
package google.registry.xml;
|
||||
@@ -1,39 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<schema targetNamespace="urn:google:params:xml:ns:allocate-1.0"
|
||||
xmlns:allocate="urn:google:params:xml:ns:allocate-1.0"
|
||||
xmlns:eppcom="urn:ietf:params:xml:ns:eppcom-1.0"
|
||||
xmlns:mark="urn:ietf:params:xml:ns:mark-1.0"
|
||||
xmlns:launch="urn:ietf:params:xml:ns:launch-1.0"
|
||||
xmlns="http://www.w3.org/2001/XMLSchema"
|
||||
elementFormDefault="qualified">
|
||||
|
||||
<!-- Import common element types. -->
|
||||
<import namespace="urn:ietf:params:xml:ns:eppcom-1.0" schemaLocation="eppcom.xsd" />
|
||||
|
||||
<import namespace="urn:ietf:params:xml:ns:mark-1.0" schemaLocation="mark.xsd" />
|
||||
|
||||
<import namespace="urn:ietf:params:xml:ns:launch-1.0" schemaLocation="launch.xsd" />
|
||||
|
||||
<annotation>
|
||||
<documentation>
|
||||
Extensible Provisioning Protocol v1.0
|
||||
domain name extension schema for allocating domains from applications.
|
||||
This is a proprietary, internal-only, non-public extension only for use
|
||||
inside the Google registry.
|
||||
</documentation>
|
||||
</annotation>
|
||||
|
||||
<!-- Child elements found in EPP commands. -->
|
||||
<element name="create" type="allocate:createType" />
|
||||
|
||||
<!-- Child elements for the create command -->
|
||||
<complexType name="createType">
|
||||
<sequence>
|
||||
<element name="applicationRoid" type="eppcom:roidType" />
|
||||
<element name="applicationTime" type="dateTime" />
|
||||
<element name="smdId" minOccurs="0" type="mark:idType" />
|
||||
<element name="notice" minOccurs="0" type="launch:createNoticeType" />
|
||||
</sequence>
|
||||
</complexType>
|
||||
|
||||
</schema>
|
||||
@@ -1,30 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<schema targetNamespace="urn:ietf:params:xml:ns:allocationToken-1.0"
|
||||
xmlns:allocationToken="urn:ietf:params:xml:ns:allocationToken-1.0"
|
||||
xmlns="http://www.w3.org/2001/XMLSchema"
|
||||
elementFormDefault="qualified">
|
||||
|
||||
<annotation>
|
||||
<documentation>
|
||||
Extensible Provisioning Protocol v1.0
|
||||
Allocation Token Extension.
|
||||
</documentation>
|
||||
</annotation>
|
||||
|
||||
<!-- Element used in info command to get allocation token. -->
|
||||
<element name="info"/>
|
||||
|
||||
<!-- Allocation Token used in transform
|
||||
commands and info response -->
|
||||
<element name="allocationToken"
|
||||
type="allocationToken:allocationTokenType"/>
|
||||
|
||||
<complexType name="allocationTokenType">
|
||||
<simpleContent>
|
||||
<extension base="token"/>
|
||||
</simpleContent>
|
||||
</complexType>
|
||||
|
||||
<!-- End of schema.-->
|
||||
</schema>
|
||||
@@ -1,38 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<schema targetNamespace="urn:google:params:xml:ns:bulkToken-1.0"
|
||||
xmlns:bulkToken="urn:google:params:xml:ns:bulkToken-1.0"
|
||||
xmlns="http://www.w3.org/2001/XMLSchema"
|
||||
elementFormDefault="qualified">
|
||||
|
||||
<annotation>
|
||||
<documentation>
|
||||
Extensible Provisioning Protocol v1.0
|
||||
Bulk Token Extension.
|
||||
</documentation>
|
||||
</annotation>
|
||||
|
||||
<!-- Element used in info command request to get a bulk pricing token for a domain. -->
|
||||
<element name="info"
|
||||
type="bulkToken:infoType"/>
|
||||
|
||||
<complexType name="infoType"/>
|
||||
|
||||
<!-- Element returned in an info command response with a bulk token for a domain with bulk pricing. -->
|
||||
<element name="bulkData"
|
||||
type="bulkToken:bulkDataType"/>
|
||||
|
||||
<complexType name="bulkDataType">
|
||||
<sequence>
|
||||
<element name="token" type="bulkToken:tokenType" maxOccurs="unbounded"/>
|
||||
</sequence>
|
||||
</complexType>
|
||||
|
||||
<simpleType name="tokenType">
|
||||
<restriction base="string">
|
||||
</restriction>
|
||||
</simpleType>
|
||||
|
||||
|
||||
<!-- End of schema.-->
|
||||
</schema>
|
||||
@@ -1,434 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<schema targetNamespace="urn:ietf:params:xml:ns:domain-1.0"
|
||||
xmlns:domain="urn:ietf:params:xml:ns:domain-1.0"
|
||||
xmlns:host="urn:ietf:params:xml:ns:host-1.0"
|
||||
xmlns:epp="urn:ietf:params:xml:ns:epp-1.0"
|
||||
xmlns:eppcom="urn:ietf:params:xml:ns:eppcom-1.0"
|
||||
xmlns="http://www.w3.org/2001/XMLSchema"
|
||||
elementFormDefault="qualified">
|
||||
|
||||
<!--
|
||||
Import common element types.
|
||||
-->
|
||||
<import namespace="urn:ietf:params:xml:ns:eppcom-1.0"
|
||||
schemaLocation="eppcom.xsd"/>
|
||||
<import namespace="urn:ietf:params:xml:ns:epp-1.0"
|
||||
schemaLocation="epp.xsd"/>
|
||||
<import namespace="urn:ietf:params:xml:ns:host-1.0"
|
||||
schemaLocation="host.xsd"/>
|
||||
|
||||
<annotation>
|
||||
<documentation>
|
||||
Extensible Provisioning Protocol v1.0
|
||||
domain provisioning schema.
|
||||
</documentation>
|
||||
</annotation>
|
||||
|
||||
<!--
|
||||
Child elements found in EPP commands.
|
||||
-->
|
||||
<element name="check" type="domain:mNameType"/>
|
||||
<element name="create" type="domain:createType"/>
|
||||
<element name="delete" type="domain:sNameType"/>
|
||||
<element name="info" type="domain:infoType"/>
|
||||
<element name="renew" type="domain:renewType"/>
|
||||
<element name="transfer" type="domain:transferType"/>
|
||||
<element name="update" type="domain:updateType"/>
|
||||
<!--
|
||||
Child elements of the <create> command.
|
||||
-->
|
||||
<complexType name="createType">
|
||||
<sequence>
|
||||
<element name="name" type="eppcom:labelType"/>
|
||||
<element name="period" type="domain:periodType"
|
||||
minOccurs="0"/>
|
||||
<element name="ns" type="domain:nsType"
|
||||
minOccurs="0"/>
|
||||
<element name="registrant" type="eppcom:clIDType"
|
||||
minOccurs="0"/>
|
||||
<element name="contact" type="domain:contactType"
|
||||
minOccurs="0" maxOccurs="unbounded"/>
|
||||
<element name="authInfo" type="domain:authInfoType"/>
|
||||
</sequence>
|
||||
</complexType>
|
||||
|
||||
<complexType name="periodType">
|
||||
<simpleContent>
|
||||
<extension base="domain:pLimitType">
|
||||
<attribute name="unit" type="domain:pUnitType"
|
||||
use="required"/>
|
||||
</extension>
|
||||
</simpleContent>
|
||||
</complexType>
|
||||
|
||||
<simpleType name="pLimitType">
|
||||
<restriction base="unsignedShort">
|
||||
<minInclusive value="1"/>
|
||||
<maxInclusive value="99"/>
|
||||
</restriction>
|
||||
</simpleType>
|
||||
|
||||
<simpleType name="pUnitType">
|
||||
<restriction base="token">
|
||||
<enumeration value="y"/>
|
||||
<enumeration value="m"/>
|
||||
</restriction>
|
||||
</simpleType>
|
||||
|
||||
<complexType name="nsType">
|
||||
<choice>
|
||||
<element name="hostObj" type="eppcom:labelType"
|
||||
maxOccurs="unbounded"/>
|
||||
<element name="hostAttr" type="domain:hostAttrType"
|
||||
maxOccurs="unbounded"/>
|
||||
</choice>
|
||||
</complexType>
|
||||
<!--
|
||||
Name servers are either host objects or attributes.
|
||||
-->
|
||||
|
||||
<complexType name="hostAttrType">
|
||||
<sequence>
|
||||
<element name="hostName" type="eppcom:labelType"/>
|
||||
<element name="hostAddr" type="host:addrType"
|
||||
minOccurs="0" maxOccurs="unbounded"/>
|
||||
</sequence>
|
||||
</complexType>
|
||||
<!--
|
||||
If attributes, addresses are optional and follow the
|
||||
structure defined in the host mapping.
|
||||
-->
|
||||
|
||||
<complexType name="contactType">
|
||||
<simpleContent>
|
||||
<extension base="eppcom:clIDType">
|
||||
<attribute name="type" type="domain:contactAttrType"/>
|
||||
</extension>
|
||||
</simpleContent>
|
||||
</complexType>
|
||||
|
||||
<simpleType name="contactAttrType">
|
||||
<restriction base="token">
|
||||
<enumeration value="admin"/>
|
||||
<enumeration value="billing"/>
|
||||
<enumeration value="tech"/>
|
||||
</restriction>
|
||||
</simpleType>
|
||||
|
||||
<complexType name="authInfoType">
|
||||
<choice>
|
||||
<element name="pw" type="eppcom:pwAuthInfoType"/>
|
||||
<element name="ext" type="eppcom:extAuthInfoType"/>
|
||||
</choice>
|
||||
</complexType>
|
||||
|
||||
<!--
|
||||
Child element of commands that require a single name.
|
||||
-->
|
||||
<complexType name="sNameType">
|
||||
<sequence>
|
||||
<element name="name" type="eppcom:labelType"/>
|
||||
</sequence>
|
||||
</complexType>
|
||||
<!--
|
||||
Child element of commands that accept multiple names.
|
||||
-->
|
||||
<complexType name="mNameType">
|
||||
<sequence>
|
||||
<element name="name" type="eppcom:labelType"
|
||||
maxOccurs="unbounded"/>
|
||||
</sequence>
|
||||
</complexType>
|
||||
<!--
|
||||
Child elements of the <info> command.
|
||||
-->
|
||||
<complexType name="infoType">
|
||||
<sequence>
|
||||
<element name="name" type="domain:infoNameType"/>
|
||||
<element name="authInfo" type="domain:authInfoType"
|
||||
minOccurs="0"/>
|
||||
</sequence>
|
||||
</complexType>
|
||||
|
||||
<complexType name="infoNameType">
|
||||
<simpleContent>
|
||||
<extension base = "eppcom:labelType">
|
||||
<attribute name="hosts" type="domain:hostsType"
|
||||
default="all"/>
|
||||
</extension>
|
||||
</simpleContent>
|
||||
</complexType>
|
||||
|
||||
<simpleType name="hostsType">
|
||||
<restriction base="token">
|
||||
<enumeration value="all"/>
|
||||
<enumeration value="del"/>
|
||||
<enumeration value="none"/>
|
||||
<enumeration value="sub"/>
|
||||
</restriction>
|
||||
</simpleType>
|
||||
|
||||
<!--
|
||||
Child elements of the <renew> command.
|
||||
-->
|
||||
<complexType name="renewType">
|
||||
<sequence>
|
||||
<element name="name" type="eppcom:labelType"/>
|
||||
<element name="curExpDate" type="date"/>
|
||||
<element name="period" type="domain:periodType"
|
||||
minOccurs="0"/>
|
||||
</sequence>
|
||||
</complexType>
|
||||
|
||||
<!--
|
||||
Child elements of the <transfer> command.
|
||||
-->
|
||||
<complexType name="transferType">
|
||||
<sequence>
|
||||
<element name="name" type="eppcom:labelType"/>
|
||||
<element name="period" type="domain:periodType"
|
||||
minOccurs="0"/>
|
||||
<element name="authInfo" type="domain:authInfoType"
|
||||
minOccurs="0"/>
|
||||
</sequence>
|
||||
</complexType>
|
||||
|
||||
<!--
|
||||
Child elements of the <update> command.
|
||||
-->
|
||||
<complexType name="updateType">
|
||||
<sequence>
|
||||
<element name="name" type="eppcom:labelType"/>
|
||||
<element name="add" type="domain:addRemType"
|
||||
minOccurs="0"/>
|
||||
<element name="rem" type="domain:addRemType"
|
||||
minOccurs="0"/>
|
||||
<element name="chg" type="domain:chgType"
|
||||
minOccurs="0"/>
|
||||
</sequence>
|
||||
</complexType>
|
||||
|
||||
<!--
|
||||
Data elements that can be added or removed.
|
||||
-->
|
||||
<complexType name="addRemType">
|
||||
<sequence>
|
||||
<element name="ns" type="domain:nsType"
|
||||
minOccurs="0"/>
|
||||
<element name="contact" type="domain:contactType"
|
||||
minOccurs="0" maxOccurs="unbounded"/>
|
||||
<element name="status" type="domain:statusType"
|
||||
minOccurs="0" maxOccurs="11"/>
|
||||
</sequence>
|
||||
</complexType>
|
||||
|
||||
<!--
|
||||
Data elements that can be changed.
|
||||
-->
|
||||
<complexType name="chgType">
|
||||
<sequence>
|
||||
<element name="registrant" type="domain:clIDChgType"
|
||||
minOccurs="0"/>
|
||||
<element name="authInfo" type="domain:authInfoChgType"
|
||||
minOccurs="0"/>
|
||||
</sequence>
|
||||
</complexType>
|
||||
|
||||
<!--
|
||||
Allow the registrant value to be nullified by changing the
|
||||
minLength restriction to "0".
|
||||
-->
|
||||
<simpleType name="clIDChgType">
|
||||
<restriction base="token">
|
||||
<minLength value="0"/>
|
||||
<maxLength value="16"/>
|
||||
</restriction>
|
||||
</simpleType>
|
||||
|
||||
<!--
|
||||
Allow the authInfo value to be nullified by including an
|
||||
empty element within the choice.
|
||||
-->
|
||||
<complexType name="authInfoChgType">
|
||||
<choice>
|
||||
<element name="pw" type="eppcom:pwAuthInfoType"/>
|
||||
<element name="ext" type="eppcom:extAuthInfoType"/>
|
||||
<element name="null"/>
|
||||
</choice>
|
||||
</complexType>
|
||||
|
||||
<!--
|
||||
Child response elements.
|
||||
-->
|
||||
<element name="chkData" type="domain:chkDataType"/>
|
||||
<element name="creData" type="domain:creDataType"/>
|
||||
<element name="infData" type="domain:infDataType"/>
|
||||
<element name="panData" type="domain:panDataType"/>
|
||||
<element name="renData" type="domain:renDataType"/>
|
||||
<element name="trnData" type="domain:trnDataType"/>
|
||||
|
||||
<!--
|
||||
<check> response elements.
|
||||
-->
|
||||
<complexType name="chkDataType">
|
||||
<sequence>
|
||||
<element name="cd" type="domain:checkType"
|
||||
maxOccurs="unbounded"/>
|
||||
</sequence>
|
||||
</complexType>
|
||||
|
||||
<complexType name="checkType">
|
||||
<sequence>
|
||||
<element name="name" type="domain:checkNameType"/>
|
||||
<element name="reason" type="eppcom:reasonType"
|
||||
minOccurs="0"/>
|
||||
</sequence>
|
||||
</complexType>
|
||||
|
||||
<complexType name="checkNameType">
|
||||
<simpleContent>
|
||||
<extension base="eppcom:labelType">
|
||||
<attribute name="avail" type="boolean"
|
||||
use="required"/>
|
||||
</extension>
|
||||
</simpleContent>
|
||||
</complexType>
|
||||
|
||||
<!--
|
||||
<create> response elements.
|
||||
-->
|
||||
<complexType name="creDataType">
|
||||
<sequence>
|
||||
<element name="name" type="eppcom:labelType"/>
|
||||
<element name="crDate" type="dateTime"/>
|
||||
<element name="exDate" type="dateTime"
|
||||
minOccurs="0"/>
|
||||
</sequence>
|
||||
</complexType>
|
||||
|
||||
<!--
|
||||
<info> response elements.
|
||||
-->
|
||||
|
||||
<complexType name="infDataType">
|
||||
<sequence>
|
||||
<element name="name" type="eppcom:labelType"/>
|
||||
<element name="roid" type="eppcom:roidType"/>
|
||||
<element name="status" type="domain:statusType"
|
||||
minOccurs="0" maxOccurs="11"/>
|
||||
<element name="registrant" type="eppcom:clIDType"
|
||||
minOccurs="0"/>
|
||||
<element name="contact" type="domain:contactType"
|
||||
minOccurs="0" maxOccurs="unbounded"/>
|
||||
<element name="ns" type="domain:nsType"
|
||||
minOccurs="0"/>
|
||||
<element name="host" type="eppcom:labelType"
|
||||
minOccurs="0" maxOccurs="unbounded"/>
|
||||
<element name="clID" type="eppcom:clIDType"/>
|
||||
<element name="crID" type="eppcom:clIDType"
|
||||
minOccurs="0"/>
|
||||
<element name="crDate" type="dateTime"
|
||||
minOccurs="0"/>
|
||||
<element name="upID" type="eppcom:clIDType"
|
||||
minOccurs="0"/>
|
||||
<element name="upDate" type="dateTime"
|
||||
minOccurs="0"/>
|
||||
<element name="exDate" type="dateTime"
|
||||
minOccurs="0"/>
|
||||
<element name="trDate" type="dateTime"
|
||||
minOccurs="0"/>
|
||||
<element name="authInfo" type="domain:authInfoType"
|
||||
minOccurs="0"/>
|
||||
</sequence>
|
||||
</complexType>
|
||||
|
||||
<!--
|
||||
Status is a combination of attributes and an optional
|
||||
human-readable message that may be expressed in languages other
|
||||
than English.
|
||||
-->
|
||||
<complexType name="statusType">
|
||||
<simpleContent>
|
||||
<extension base="normalizedString">
|
||||
<attribute name="s" type="domain:statusValueType"
|
||||
use="required"/>
|
||||
<attribute name="lang" type="language"
|
||||
default="en"/>
|
||||
</extension>
|
||||
</simpleContent>
|
||||
</complexType>
|
||||
|
||||
<simpleType name="statusValueType">
|
||||
<restriction base="token">
|
||||
<enumeration value="clientDeleteProhibited"/>
|
||||
<enumeration value="clientHold"/>
|
||||
<enumeration value="clientRenewProhibited"/>
|
||||
<enumeration value="clientTransferProhibited"/>
|
||||
<enumeration value="clientUpdateProhibited"/>
|
||||
<enumeration value="inactive"/>
|
||||
<enumeration value="ok"/>
|
||||
<enumeration value="pendingCreate"/>
|
||||
<enumeration value="pendingDelete"/>
|
||||
<enumeration value="pendingRenew"/>
|
||||
<enumeration value="pendingTransfer"/>
|
||||
<enumeration value="pendingUpdate"/>
|
||||
<enumeration value="serverDeleteProhibited"/>
|
||||
<enumeration value="serverHold"/>
|
||||
<enumeration value="serverRenewProhibited"/>
|
||||
<enumeration value="serverTransferProhibited"/>
|
||||
<enumeration value="serverUpdateProhibited"/>
|
||||
</restriction>
|
||||
</simpleType>
|
||||
|
||||
<!--
|
||||
Pending action notification response elements.
|
||||
-->
|
||||
<complexType name="panDataType">
|
||||
<sequence>
|
||||
<element name="name" type="domain:paNameType"/>
|
||||
<element name="paTRID" type="epp:trIDType"/>
|
||||
<element name="paDate" type="dateTime"/>
|
||||
</sequence>
|
||||
</complexType>
|
||||
|
||||
<complexType name="paNameType">
|
||||
<simpleContent>
|
||||
<extension base="eppcom:labelType">
|
||||
<attribute name="paResult" type="boolean"
|
||||
use="required"/>
|
||||
</extension>
|
||||
</simpleContent>
|
||||
</complexType>
|
||||
|
||||
<!--
|
||||
<renew> response elements.
|
||||
-->
|
||||
<complexType name="renDataType">
|
||||
<sequence>
|
||||
<element name="name" type="eppcom:labelType"/>
|
||||
<element name="exDate" type="dateTime"
|
||||
minOccurs="0"/>
|
||||
</sequence>
|
||||
</complexType>
|
||||
|
||||
<!--
|
||||
<transfer> response elements.
|
||||
-->
|
||||
<complexType name="trnDataType">
|
||||
<sequence>
|
||||
<element name="name" type="eppcom:labelType"/>
|
||||
<element name="trStatus" type="eppcom:trStatusType"/>
|
||||
<element name="reID" type="eppcom:clIDType"/>
|
||||
<element name="reDate" type="dateTime"/>
|
||||
<element name="acID" type="eppcom:clIDType"/>
|
||||
<element name="acDate" type="dateTime"/>
|
||||
<element name="exDate" type="dateTime"
|
||||
minOccurs="0"/>
|
||||
</sequence>
|
||||
</complexType>
|
||||
|
||||
<!--
|
||||
End of schema.
|
||||
-->
|
||||
</schema>
|
||||
@@ -1,292 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!-- Schema extracted from http://www.w3.org/2000/09/xmldsig# -->
|
||||
<schema xmlns="http://www.w3.org/2001/XMLSchema"
|
||||
xmlns:ds="http://www.w3.org/2000/09/xmldsig#"
|
||||
targetNamespace="http://www.w3.org/2000/09/xmldsig#"
|
||||
version="0.1" elementFormDefault="qualified">
|
||||
|
||||
<!-- Basic Types Defined for Signatures -->
|
||||
|
||||
<simpleType name="CryptoBinary">
|
||||
<restriction base="base64Binary">
|
||||
</restriction>
|
||||
</simpleType>
|
||||
|
||||
<!-- Start Signature -->
|
||||
|
||||
<element name="Signature" type="ds:SignatureType"/>
|
||||
<complexType name="SignatureType">
|
||||
<sequence>
|
||||
<element ref="ds:SignedInfo"/>
|
||||
<element ref="ds:SignatureValue"/>
|
||||
<element ref="ds:KeyInfo" minOccurs="0"/>
|
||||
<element ref="ds:Object" minOccurs="0" maxOccurs="unbounded"/>
|
||||
</sequence>
|
||||
<attribute name="Id" type="ID" use="optional"/>
|
||||
</complexType>
|
||||
|
||||
<element name="SignatureValue" type="ds:SignatureValueType"/>
|
||||
<complexType name="SignatureValueType">
|
||||
<simpleContent>
|
||||
<extension base="base64Binary">
|
||||
<attribute name="Id" type="ID" use="optional"/>
|
||||
</extension>
|
||||
</simpleContent>
|
||||
</complexType>
|
||||
|
||||
<!-- Start SignedInfo -->
|
||||
|
||||
<element name="SignedInfo" type="ds:SignedInfoType"/>
|
||||
<complexType name="SignedInfoType">
|
||||
<sequence>
|
||||
<element ref="ds:CanonicalizationMethod"/>
|
||||
<element ref="ds:SignatureMethod"/>
|
||||
<element ref="ds:Reference" maxOccurs="unbounded"/>
|
||||
</sequence>
|
||||
<attribute name="Id" type="ID" use="optional"/>
|
||||
</complexType>
|
||||
|
||||
<element name="CanonicalizationMethod" type="ds:CanonicalizationMethodType"/>
|
||||
<complexType name="CanonicalizationMethodType" mixed="true">
|
||||
<sequence>
|
||||
<any namespace="##any" minOccurs="0" maxOccurs="unbounded"/>
|
||||
<!-- (0,unbounded) elements from (1,1) namespace -->
|
||||
</sequence>
|
||||
<attribute name="Algorithm" type="anyURI" use="required"/>
|
||||
</complexType>
|
||||
|
||||
<element name="SignatureMethod" type="ds:SignatureMethodType"/>
|
||||
<complexType name="SignatureMethodType" mixed="true">
|
||||
<sequence>
|
||||
<element name="HMACOutputLength" minOccurs="0" type="ds:HMACOutputLengthType"/>
|
||||
<any namespace="##other" minOccurs="0" maxOccurs="unbounded"/>
|
||||
<!-- (0,unbounded) elements from (1,1) external namespace -->
|
||||
</sequence>
|
||||
<attribute name="Algorithm" type="anyURI" use="required"/>
|
||||
</complexType>
|
||||
|
||||
<!-- Start Reference -->
|
||||
|
||||
<element name="Reference" type="ds:ReferenceType"/>
|
||||
<complexType name="ReferenceType">
|
||||
<sequence>
|
||||
<element ref="ds:Transforms" minOccurs="0"/>
|
||||
<element ref="ds:DigestMethod"/>
|
||||
<element ref="ds:DigestValue"/>
|
||||
</sequence>
|
||||
<attribute name="Id" type="ID" use="optional"/>
|
||||
<attribute name="URI" type="anyURI" use="optional"/>
|
||||
<attribute name="Type" type="anyURI" use="optional"/>
|
||||
</complexType>
|
||||
|
||||
<element name="Transforms" type="ds:TransformsType"/>
|
||||
<complexType name="TransformsType">
|
||||
<sequence>
|
||||
<element ref="ds:Transform" maxOccurs="unbounded"/>
|
||||
</sequence>
|
||||
</complexType>
|
||||
|
||||
<element name="Transform" type="ds:TransformType"/>
|
||||
<complexType name="TransformType" mixed="true">
|
||||
<choice minOccurs="0" maxOccurs="unbounded">
|
||||
<any namespace="##other" processContents="lax"/>
|
||||
<!-- (1,1) elements from (0,unbounded) namespaces -->
|
||||
<element name="XPath" type="string"/>
|
||||
</choice>
|
||||
<attribute name="Algorithm" type="anyURI" use="required"/>
|
||||
</complexType>
|
||||
|
||||
<!-- End Reference -->
|
||||
|
||||
<element name="DigestMethod" type="ds:DigestMethodType"/>
|
||||
<complexType name="DigestMethodType" mixed="true">
|
||||
<sequence>
|
||||
<any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
|
||||
</sequence>
|
||||
<attribute name="Algorithm" type="anyURI" use="required"/>
|
||||
</complexType>
|
||||
|
||||
<element name="DigestValue" type="ds:DigestValueType"/>
|
||||
<simpleType name="DigestValueType">
|
||||
<restriction base="base64Binary"/>
|
||||
</simpleType>
|
||||
|
||||
<!-- End SignedInfo -->
|
||||
|
||||
<!-- Start KeyInfo -->
|
||||
|
||||
<element name="KeyInfo" type="ds:KeyInfoType"/>
|
||||
<complexType name="KeyInfoType" mixed="true">
|
||||
<choice maxOccurs="unbounded">
|
||||
<element ref="ds:KeyName"/>
|
||||
<element ref="ds:KeyValue"/>
|
||||
<element ref="ds:RetrievalMethod"/>
|
||||
<element ref="ds:X509Data"/>
|
||||
<element ref="ds:PGPData"/>
|
||||
<element ref="ds:SPKIData"/>
|
||||
<element ref="ds:MgmtData"/>
|
||||
<any processContents="lax" namespace="##other"/>
|
||||
<!-- (1,1) elements from (0,unbounded) namespaces -->
|
||||
</choice>
|
||||
<attribute name="Id" type="ID" use="optional"/>
|
||||
</complexType>
|
||||
|
||||
<element name="KeyName" type="string"/>
|
||||
<element name="MgmtData" type="string"/>
|
||||
|
||||
<element name="KeyValue" type="ds:KeyValueType"/>
|
||||
<complexType name="KeyValueType" mixed="true">
|
||||
<choice>
|
||||
<element ref="ds:DSAKeyValue"/>
|
||||
<element ref="ds:RSAKeyValue"/>
|
||||
<any namespace="##other" processContents="lax"/>
|
||||
</choice>
|
||||
</complexType>
|
||||
|
||||
<element name="RetrievalMethod" type="ds:RetrievalMethodType"/>
|
||||
<complexType name="RetrievalMethodType">
|
||||
<sequence>
|
||||
<element ref="ds:Transforms" minOccurs="0"/>
|
||||
</sequence>
|
||||
<attribute name="URI" type="anyURI"/>
|
||||
<attribute name="Type" type="anyURI" use="optional"/>
|
||||
</complexType>
|
||||
|
||||
<!-- Start X509Data -->
|
||||
|
||||
<element name="X509Data" type="ds:X509DataType"/>
|
||||
<complexType name="X509DataType">
|
||||
<sequence maxOccurs="unbounded">
|
||||
<choice>
|
||||
<element name="X509IssuerSerial" type="ds:X509IssuerSerialType"/>
|
||||
<element name="X509SKI" type="base64Binary"/>
|
||||
<element name="X509SubjectName" type="string"/>
|
||||
<element name="X509Certificate" type="base64Binary"/>
|
||||
<element name="X509CRL" type="base64Binary"/>
|
||||
<any namespace="##other" processContents="lax"/>
|
||||
</choice>
|
||||
</sequence>
|
||||
</complexType>
|
||||
|
||||
<complexType name="X509IssuerSerialType">
|
||||
<sequence>
|
||||
<element name="X509IssuerName" type="string"/>
|
||||
<element name="X509SerialNumber" type="integer"/>
|
||||
</sequence>
|
||||
</complexType>
|
||||
|
||||
<!-- End X509Data -->
|
||||
|
||||
<!-- Begin PGPData -->
|
||||
|
||||
<element name="PGPData" type="ds:PGPDataType"/>
|
||||
<complexType name="PGPDataType">
|
||||
<choice>
|
||||
<sequence>
|
||||
<element name="PGPKeyID" type="base64Binary"/>
|
||||
<element name="PGPKeyPacket" type="base64Binary" minOccurs="0"/>
|
||||
<any namespace="##other" processContents="lax" minOccurs="0"
|
||||
maxOccurs="unbounded"/>
|
||||
</sequence>
|
||||
<sequence>
|
||||
<element name="PGPKeyPacket" type="base64Binary"/>
|
||||
<any namespace="##other" processContents="lax" minOccurs="0"
|
||||
maxOccurs="unbounded"/>
|
||||
</sequence>
|
||||
</choice>
|
||||
</complexType>
|
||||
|
||||
<!-- End PGPData -->
|
||||
|
||||
<!-- Begin SPKIData -->
|
||||
|
||||
<element name="SPKIData" type="ds:SPKIDataType"/>
|
||||
<complexType name="SPKIDataType">
|
||||
<sequence maxOccurs="unbounded">
|
||||
<element name="SPKISexp" type="base64Binary"/>
|
||||
<any namespace="##other" processContents="lax" minOccurs="0"/>
|
||||
</sequence>
|
||||
</complexType>
|
||||
|
||||
<!-- End SPKIData -->
|
||||
|
||||
<!-- End KeyInfo -->
|
||||
|
||||
<!-- Start Object (Manifest, SignatureProperty) -->
|
||||
|
||||
<element name="Object" type="ds:ObjectType"/>
|
||||
<complexType name="ObjectType" mixed="true">
|
||||
<sequence minOccurs="0" maxOccurs="unbounded">
|
||||
<any namespace="##any" processContents="lax"/>
|
||||
</sequence>
|
||||
<attribute name="Id" type="ID" use="optional"/>
|
||||
<attribute name="MimeType" type="string" use="optional"/> <!-- add a grep facet -->
|
||||
<attribute name="Encoding" type="anyURI" use="optional"/>
|
||||
</complexType>
|
||||
|
||||
<element name="Manifest" type="ds:ManifestType"/>
|
||||
<complexType name="ManifestType">
|
||||
<sequence>
|
||||
<element ref="ds:Reference" maxOccurs="unbounded"/>
|
||||
</sequence>
|
||||
<attribute name="Id" type="ID" use="optional"/>
|
||||
</complexType>
|
||||
|
||||
<element name="SignatureProperties" type="ds:SignaturePropertiesType"/>
|
||||
<complexType name="SignaturePropertiesType">
|
||||
<sequence>
|
||||
<element ref="ds:SignatureProperty" maxOccurs="unbounded"/>
|
||||
</sequence>
|
||||
<attribute name="Id" type="ID" use="optional"/>
|
||||
</complexType>
|
||||
|
||||
<element name="SignatureProperty" type="ds:SignaturePropertyType"/>
|
||||
<complexType name="SignaturePropertyType" mixed="true">
|
||||
<choice maxOccurs="unbounded">
|
||||
<any namespace="##other" processContents="lax"/>
|
||||
<!-- (1,1) elements from (1,unbounded) namespaces -->
|
||||
</choice>
|
||||
<attribute name="Target" type="anyURI" use="required"/>
|
||||
<attribute name="Id" type="ID" use="optional"/>
|
||||
</complexType>
|
||||
|
||||
<!-- End Object (Manifest, SignatureProperty) -->
|
||||
|
||||
<!-- Start Algorithm Parameters -->
|
||||
|
||||
<simpleType name="HMACOutputLengthType">
|
||||
<restriction base="integer"/>
|
||||
</simpleType>
|
||||
|
||||
<!-- Start KeyValue Element-types -->
|
||||
|
||||
<element name="DSAKeyValue" type="ds:DSAKeyValueType"/>
|
||||
<complexType name="DSAKeyValueType">
|
||||
<sequence>
|
||||
<sequence minOccurs="0">
|
||||
<element name="P" type="ds:CryptoBinary"/>
|
||||
<element name="Q" type="ds:CryptoBinary"/>
|
||||
</sequence>
|
||||
<element name="G" type="ds:CryptoBinary" minOccurs="0"/>
|
||||
<element name="Y" type="ds:CryptoBinary"/>
|
||||
<element name="J" type="ds:CryptoBinary" minOccurs="0"/>
|
||||
<sequence minOccurs="0">
|
||||
<element name="Seed" type="ds:CryptoBinary"/>
|
||||
<element name="PgenCounter" type="ds:CryptoBinary"/>
|
||||
</sequence>
|
||||
</sequence>
|
||||
</complexType>
|
||||
|
||||
<element name="RSAKeyValue" type="ds:RSAKeyValueType"/>
|
||||
<complexType name="RSAKeyValueType">
|
||||
<sequence>
|
||||
<element name="Modulus" type="ds:CryptoBinary"/>
|
||||
<element name="Exponent" type="ds:CryptoBinary"/>
|
||||
</sequence>
|
||||
</complexType>
|
||||
|
||||
<!-- End KeyValue Element-types -->
|
||||
|
||||
<!-- End Signature -->
|
||||
|
||||
</schema>
|
||||
@@ -1,446 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<schema targetNamespace="urn:ietf:params:xml:ns:epp-1.0"
|
||||
xmlns:epp="urn:ietf:params:xml:ns:epp-1.0"
|
||||
xmlns:eppcom="urn:ietf:params:xml:ns:eppcom-1.0"
|
||||
xmlns="http://www.w3.org/2001/XMLSchema"
|
||||
elementFormDefault="qualified">
|
||||
|
||||
<!--
|
||||
Import common element types.
|
||||
-->
|
||||
<import namespace="urn:ietf:params:xml:ns:eppcom-1.0"
|
||||
schemaLocation="eppcom.xsd"/>
|
||||
|
||||
<annotation>
|
||||
<documentation>
|
||||
Extensible Provisioning Protocol v1.0 schema.
|
||||
</documentation>
|
||||
</annotation>
|
||||
|
||||
<!--
|
||||
Every EPP XML instance must begin with this element.
|
||||
-->
|
||||
<element name="epp" type="epp:eppType"/>
|
||||
|
||||
<!--
|
||||
An EPP XML instance must contain a greeting, hello, command,
|
||||
response, or extension.
|
||||
-->
|
||||
<complexType name="eppType">
|
||||
<choice>
|
||||
<element name="greeting" type="epp:greetingType"/>
|
||||
<element name="hello"/>
|
||||
<element name="command" type="epp:commandType"/>
|
||||
<element name="response" type="epp:responseType"/>
|
||||
<element name="extension" type="epp:extAnyType"/>
|
||||
</choice>
|
||||
</complexType>
|
||||
|
||||
<!--
|
||||
A greeting is sent by a server in response to a client connection
|
||||
or <hello>.
|
||||
-->
|
||||
<complexType name="greetingType">
|
||||
<sequence>
|
||||
<element name="svID" type="epp:sIDType"/>
|
||||
<element name="svDate" type="dateTime"/>
|
||||
<element name="svcMenu" type="epp:svcMenuType"/>
|
||||
<element name="dcp" type="epp:dcpType"/>
|
||||
</sequence>
|
||||
</complexType>
|
||||
|
||||
<!--
|
||||
Server IDs are strings with minimum and maximum length restrictions.
|
||||
-->
|
||||
<simpleType name="sIDType">
|
||||
<restriction base="normalizedString">
|
||||
<minLength value="3"/>
|
||||
<maxLength value="64"/>
|
||||
</restriction>
|
||||
</simpleType>
|
||||
|
||||
<!--
|
||||
A server greeting identifies available object services.
|
||||
-->
|
||||
<complexType name="svcMenuType">
|
||||
<sequence>
|
||||
<element name="version" type="epp:versionType"
|
||||
maxOccurs="unbounded"/>
|
||||
<element name="lang" type="language"
|
||||
maxOccurs="unbounded"/>
|
||||
<element name="objURI" type="anyURI"
|
||||
maxOccurs="unbounded"/>
|
||||
<element name="svcExtension" type="epp:extURIType"
|
||||
minOccurs="0"/>
|
||||
</sequence>
|
||||
</complexType>
|
||||
|
||||
<!--
|
||||
Data Collection Policy types.
|
||||
-->
|
||||
<complexType name="dcpType">
|
||||
<sequence>
|
||||
<element name="access" type="epp:dcpAccessType"/>
|
||||
<element name="statement" type="epp:dcpStatementType"
|
||||
maxOccurs="unbounded"/>
|
||||
<element name="expiry" type="epp:dcpExpiryType"
|
||||
minOccurs="0"/>
|
||||
</sequence>
|
||||
</complexType>
|
||||
|
||||
<complexType name="dcpAccessType">
|
||||
<choice>
|
||||
<element name="all"><complexType/></element>
|
||||
<element name="none"><complexType/></element>
|
||||
<element name="null"><complexType/></element>
|
||||
<element name="other"><complexType/></element>
|
||||
<element name="personal"><complexType/></element>
|
||||
<element name="personalAndOther"><complexType/></element>
|
||||
</choice>
|
||||
</complexType>
|
||||
|
||||
<complexType name="dcpStatementType">
|
||||
<sequence>
|
||||
<element name="purpose" type="epp:dcpPurposeType"/>
|
||||
<element name="recipient" type="epp:dcpRecipientType"/>
|
||||
<element name="retention" type="epp:dcpRetentionType"/>
|
||||
</sequence>
|
||||
</complexType>
|
||||
|
||||
<complexType name="dcpPurposeType">
|
||||
<sequence>
|
||||
<element name="admin"
|
||||
minOccurs="0"><complexType/></element>
|
||||
<element name="contact"
|
||||
minOccurs="0"><complexType/></element>
|
||||
<element name="other"
|
||||
minOccurs="0"><complexType/></element>
|
||||
<element name="prov"
|
||||
minOccurs="0"><complexType/></element>
|
||||
</sequence>
|
||||
</complexType>
|
||||
|
||||
<complexType name="dcpRecipientType">
|
||||
<sequence>
|
||||
<element name="other"
|
||||
minOccurs="0"><complexType/></element>
|
||||
<element name="ours" type="epp:dcpOursType"
|
||||
minOccurs="0" maxOccurs="unbounded"/>
|
||||
<element name="public"
|
||||
minOccurs="0"><complexType/></element>
|
||||
<element name="same"
|
||||
minOccurs="0"><complexType/></element>
|
||||
<element name="unrelated"
|
||||
minOccurs="0"><complexType/></element>
|
||||
|
||||
</sequence>
|
||||
</complexType>
|
||||
|
||||
<complexType name="dcpOursType">
|
||||
<sequence>
|
||||
<element name="recDesc" type="epp:dcpRecDescType"
|
||||
minOccurs="0"/>
|
||||
</sequence>
|
||||
</complexType>
|
||||
|
||||
<simpleType name="dcpRecDescType">
|
||||
<restriction base="token">
|
||||
<minLength value="1"/>
|
||||
<maxLength value="255"/>
|
||||
</restriction>
|
||||
</simpleType>
|
||||
|
||||
<complexType name="dcpRetentionType">
|
||||
<choice>
|
||||
<element name="business"><complexType/></element>
|
||||
<element name="indefinite"><complexType/></element>
|
||||
<element name="legal"><complexType/></element>
|
||||
<element name="none"><complexType/></element>
|
||||
<element name="stated"><complexType/></element>
|
||||
</choice>
|
||||
</complexType>
|
||||
|
||||
<complexType name="dcpExpiryType">
|
||||
<choice>
|
||||
<element name="absolute" type="dateTime"/>
|
||||
<element name="relative" type="duration"/>
|
||||
</choice>
|
||||
</complexType>
|
||||
|
||||
<!--
|
||||
Extension framework types.
|
||||
-->
|
||||
<complexType name="extAnyType">
|
||||
<sequence>
|
||||
<any namespace="##other"
|
||||
maxOccurs="unbounded"/>
|
||||
</sequence>
|
||||
</complexType>
|
||||
|
||||
<complexType name="extURIType">
|
||||
<sequence>
|
||||
<element name="extURI" type="anyURI"
|
||||
maxOccurs="unbounded"/>
|
||||
</sequence>
|
||||
</complexType>
|
||||
|
||||
<!--
|
||||
An EPP version number is a dotted pair of decimal numbers.
|
||||
-->
|
||||
<simpleType name="versionType">
|
||||
<restriction base="token">
|
||||
<pattern value="[1-9]+\.[0-9]+"/>
|
||||
<enumeration value="1.0"/>
|
||||
</restriction>
|
||||
</simpleType>
|
||||
|
||||
<!--
|
||||
Command types.
|
||||
-->
|
||||
<complexType name="commandType">
|
||||
<sequence>
|
||||
<choice>
|
||||
<element name="check" type="epp:readWriteType"/>
|
||||
<element name="create" type="epp:readWriteType"/>
|
||||
<element name="delete" type="epp:readWriteType"/>
|
||||
<element name="info" type="epp:readWriteType"/>
|
||||
<element name="login" type="epp:loginType"/>
|
||||
<element name="logout"/>
|
||||
<element name="poll" type="epp:pollType"/>
|
||||
<element name="renew" type="epp:readWriteType"/>
|
||||
<element name="transfer" type="epp:transferType"/>
|
||||
<element name="update" type="epp:readWriteType"/>
|
||||
</choice>
|
||||
<element name="extension" type="epp:extAnyType"
|
||||
minOccurs="0"/>
|
||||
<element name="clTRID" type="epp:trIDStringType"
|
||||
minOccurs="0"/>
|
||||
</sequence>
|
||||
</complexType>
|
||||
|
||||
<!--
|
||||
The <login> command.
|
||||
-->
|
||||
<complexType name="loginType">
|
||||
<sequence>
|
||||
<element name="clID" type="eppcom:clIDType"/>
|
||||
<element name="pw" type="epp:pwType"/>
|
||||
<element name="newPW" type="epp:pwType"
|
||||
minOccurs="0"/>
|
||||
<element name="options" type="epp:credsOptionsType"/>
|
||||
<element name="svcs" type="epp:loginSvcType"/>
|
||||
</sequence>
|
||||
</complexType>
|
||||
|
||||
<complexType name="credsOptionsType">
|
||||
<sequence>
|
||||
<element name="version" type="epp:versionType"/>
|
||||
<element name="lang" type="language"/>
|
||||
</sequence>
|
||||
</complexType>
|
||||
|
||||
<simpleType name="pwType">
|
||||
<restriction base="token">
|
||||
<minLength value="6"/>
|
||||
<maxLength value="16"/>
|
||||
</restriction>
|
||||
</simpleType>
|
||||
|
||||
<complexType name="loginSvcType">
|
||||
<sequence>
|
||||
<element name="objURI" type="anyURI"
|
||||
maxOccurs="unbounded"/>
|
||||
<element name="svcExtension" type="epp:extURIType"
|
||||
minOccurs="0"/>
|
||||
</sequence>
|
||||
</complexType>
|
||||
|
||||
<!--
|
||||
The <poll> command.
|
||||
-->
|
||||
<complexType name="pollType">
|
||||
<attribute name="op" type="epp:pollOpType"
|
||||
use="required"/>
|
||||
<attribute name="msgID" type="token"/>
|
||||
</complexType>
|
||||
|
||||
<simpleType name="pollOpType">
|
||||
<restriction base="token">
|
||||
<enumeration value="ack"/>
|
||||
<enumeration value="req"/>
|
||||
</restriction>
|
||||
</simpleType>
|
||||
|
||||
<!--
|
||||
The <transfer> command. This is object-specific, and uses attributes
|
||||
to identify the requested operation.
|
||||
-->
|
||||
<complexType name="transferType">
|
||||
<sequence>
|
||||
<any namespace="##other"/>
|
||||
</sequence>
|
||||
<attribute name="op" type="epp:transferOpType"
|
||||
use="required"/>
|
||||
</complexType>
|
||||
|
||||
<simpleType name="transferOpType">
|
||||
<restriction base="token">
|
||||
<enumeration value="approve"/>
|
||||
<enumeration value="cancel"/>
|
||||
<enumeration value="query"/>
|
||||
<enumeration value="reject"/>
|
||||
<enumeration value="request"/>
|
||||
</restriction>
|
||||
</simpleType>
|
||||
|
||||
<!--
|
||||
All other object-centric commands. EPP doesn't specify the syntax or
|
||||
semantics of object-centric command elements. The elements MUST be
|
||||
described in detail in another schema specific to the object.
|
||||
-->
|
||||
<complexType name="readWriteType">
|
||||
<sequence>
|
||||
<any namespace="##other"/>
|
||||
</sequence>
|
||||
</complexType>
|
||||
|
||||
<complexType name="trIDType">
|
||||
<sequence>
|
||||
<element name="clTRID" type="epp:trIDStringType"
|
||||
minOccurs="0"/>
|
||||
<element name="svTRID" type="epp:trIDStringType"/>
|
||||
</sequence>
|
||||
</complexType>
|
||||
|
||||
<simpleType name="trIDStringType">
|
||||
<restriction base="token">
|
||||
<minLength value="3"/>
|
||||
<maxLength value="64"/>
|
||||
</restriction>
|
||||
</simpleType>
|
||||
|
||||
<!--
|
||||
Response types.
|
||||
-->
|
||||
<complexType name="responseType">
|
||||
<sequence>
|
||||
<element name="result" type="epp:resultType"
|
||||
maxOccurs="unbounded"/>
|
||||
<element name="msgQ" type="epp:msgQType"
|
||||
minOccurs="0"/>
|
||||
|
||||
<element name="resData" type="epp:extAnyType"
|
||||
minOccurs="0"/>
|
||||
<element name="extension" type="epp:extAnyType"
|
||||
minOccurs="0"/>
|
||||
<element name="trID" type="epp:trIDType"/>
|
||||
</sequence>
|
||||
</complexType>
|
||||
|
||||
<complexType name="resultType">
|
||||
<sequence>
|
||||
<element name="msg" type="epp:msgType"/>
|
||||
<choice minOccurs="0" maxOccurs="unbounded">
|
||||
<element name="value" type="epp:errValueType"/>
|
||||
<element name="extValue" type="epp:extErrValueType"/>
|
||||
</choice>
|
||||
</sequence>
|
||||
<attribute name="code" type="epp:resultCodeType"
|
||||
use="required"/>
|
||||
</complexType>
|
||||
|
||||
<complexType name="errValueType" mixed="true">
|
||||
<sequence>
|
||||
<any namespace="##any" processContents="skip"/>
|
||||
</sequence>
|
||||
<anyAttribute namespace="##any" processContents="skip"/>
|
||||
</complexType>
|
||||
|
||||
<complexType name="extErrValueType">
|
||||
<sequence>
|
||||
<element name="value" type="epp:errValueType"/>
|
||||
<element name="reason" type="epp:msgType"/>
|
||||
</sequence>
|
||||
</complexType>
|
||||
|
||||
<complexType name="msgQType">
|
||||
<sequence>
|
||||
<element name="qDate" type="dateTime"
|
||||
minOccurs="0"/>
|
||||
<element name="msg" type="epp:mixedMsgType"
|
||||
minOccurs="0"/>
|
||||
</sequence>
|
||||
<attribute name="count" type="unsignedLong"
|
||||
use="required"/>
|
||||
<attribute name="id" type="eppcom:minTokenType"
|
||||
use="required"/>
|
||||
</complexType>
|
||||
|
||||
<complexType name="mixedMsgType" mixed="true">
|
||||
<sequence>
|
||||
<any processContents="skip"
|
||||
minOccurs="0" maxOccurs="unbounded"/>
|
||||
</sequence>
|
||||
<attribute name="lang" type="language"
|
||||
default="en"/>
|
||||
</complexType>
|
||||
|
||||
<!--
|
||||
Human-readable text may be expressed in languages other than English.
|
||||
-->
|
||||
<complexType name="msgType">
|
||||
<simpleContent>
|
||||
<extension base="normalizedString">
|
||||
<attribute name="lang" type="language"
|
||||
default="en"/>
|
||||
</extension>
|
||||
</simpleContent>
|
||||
</complexType>
|
||||
|
||||
<!--
|
||||
EPP result codes.
|
||||
-->
|
||||
<simpleType name="resultCodeType">
|
||||
<restriction base="unsignedShort">
|
||||
<enumeration value="1000"/>
|
||||
<enumeration value="1001"/>
|
||||
<enumeration value="1300"/>
|
||||
<enumeration value="1301"/>
|
||||
<enumeration value="1500"/>
|
||||
<enumeration value="2000"/>
|
||||
<enumeration value="2001"/>
|
||||
<enumeration value="2002"/>
|
||||
<enumeration value="2003"/>
|
||||
<enumeration value="2004"/>
|
||||
<enumeration value="2005"/>
|
||||
<enumeration value="2100"/>
|
||||
<enumeration value="2101"/>
|
||||
<enumeration value="2102"/>
|
||||
<enumeration value="2103"/>
|
||||
<enumeration value="2104"/>
|
||||
<enumeration value="2105"/>
|
||||
<enumeration value="2106"/>
|
||||
<enumeration value="2200"/>
|
||||
<enumeration value="2201"/>
|
||||
<enumeration value="2202"/>
|
||||
<enumeration value="2300"/>
|
||||
<enumeration value="2301"/>
|
||||
<enumeration value="2302"/>
|
||||
<enumeration value="2303"/>
|
||||
<enumeration value="2304"/>
|
||||
<enumeration value="2305"/>
|
||||
<enumeration value="2306"/>
|
||||
<enumeration value="2307"/>
|
||||
<enumeration value="2308"/>
|
||||
<enumeration value="2400"/>
|
||||
<enumeration value="2500"/>
|
||||
<enumeration value="2501"/>
|
||||
<enumeration value="2502"/>
|
||||
</restriction>
|
||||
</simpleType>
|
||||
|
||||
<!--
|
||||
End of schema.
|
||||
-->
|
||||
</schema>
|
||||
@@ -1,125 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<schema targetNamespace="urn:ietf:params:xml:ns:eppcom-1.0"
|
||||
xmlns:eppcom="urn:ietf:params:xml:ns:eppcom-1.0"
|
||||
xmlns="http://www.w3.org/2001/XMLSchema"
|
||||
elementFormDefault="qualified">
|
||||
|
||||
<annotation>
|
||||
<documentation>
|
||||
Extensible Provisioning Protocol v1.0
|
||||
shared structures schema.
|
||||
</documentation>
|
||||
</annotation>
|
||||
|
||||
<!--
|
||||
Object authorization information types.
|
||||
-->
|
||||
<complexType name="pwAuthInfoType">
|
||||
<simpleContent>
|
||||
<extension base="normalizedString">
|
||||
<attribute name="roid" type="eppcom:roidType"/>
|
||||
</extension>
|
||||
</simpleContent>
|
||||
</complexType>
|
||||
|
||||
<complexType name="extAuthInfoType">
|
||||
<sequence>
|
||||
<any namespace="##other"/>
|
||||
</sequence>
|
||||
</complexType>
|
||||
|
||||
<!--
|
||||
<check> response types.
|
||||
-->
|
||||
<complexType name="reasonType">
|
||||
<simpleContent>
|
||||
<extension base="eppcom:reasonBaseType">
|
||||
<attribute name="lang" type="language"/>
|
||||
</extension>
|
||||
</simpleContent>
|
||||
</complexType>
|
||||
|
||||
<simpleType name="reasonBaseType">
|
||||
<restriction base="token">
|
||||
<minLength value="1"/>
|
||||
<maxLength value="32"/>
|
||||
</restriction>
|
||||
</simpleType>
|
||||
|
||||
<!--
|
||||
Abstract client and object identifier type.
|
||||
-->
|
||||
<simpleType name="clIDType">
|
||||
<restriction base="token">
|
||||
<minLength value="3"/>
|
||||
<maxLength value="16"/>
|
||||
</restriction>
|
||||
</simpleType>
|
||||
|
||||
<!--
|
||||
DNS label type.
|
||||
-->
|
||||
|
||||
<simpleType name="labelType">
|
||||
<restriction base="token">
|
||||
<minLength value="1"/>
|
||||
<maxLength value="255"/>
|
||||
</restriction>
|
||||
</simpleType>
|
||||
|
||||
<!--
|
||||
Non-empty token type.
|
||||
-->
|
||||
<simpleType name="minTokenType">
|
||||
<restriction base="token">
|
||||
<minLength value="1"/>
|
||||
</restriction>
|
||||
</simpleType>
|
||||
|
||||
<!--
|
||||
Repository Object IDentifier type.
|
||||
-->
|
||||
<simpleType name="roidType">
|
||||
<restriction base="token">
|
||||
<pattern value="(\w|_){1,80}-\w{1,8}"/>
|
||||
</restriction>
|
||||
</simpleType>
|
||||
|
||||
<!--
|
||||
Transfer status identifiers.
|
||||
-->
|
||||
|
||||
<simpleType name="trStatusType">
|
||||
<restriction base="token">
|
||||
<enumeration value="clientApproved"/>
|
||||
<enumeration value="clientCancelled"/>
|
||||
<enumeration value="clientRejected"/>
|
||||
<enumeration value="pending"/>
|
||||
<enumeration value="serverApproved"/>
|
||||
<enumeration value="serverCancelled"/>
|
||||
</restriction>
|
||||
</simpleType>
|
||||
|
||||
<!--
|
||||
Phone number types
|
||||
-->
|
||||
<complexType name="e164Type">
|
||||
<simpleContent>
|
||||
<extension base="eppcom:e164StringType">
|
||||
<attribute name="x" type="token"/>
|
||||
</extension>
|
||||
</simpleContent>
|
||||
</complexType>
|
||||
|
||||
<simpleType name="e164StringType">
|
||||
<restriction base="token">
|
||||
<pattern value="(\+[0-9]{1,3}\.[0-9]{1,14})?"/>
|
||||
<maxLength value="17"/>
|
||||
</restriction>
|
||||
</simpleType>
|
||||
|
||||
<!--
|
||||
End of schema.
|
||||
-->
|
||||
</schema>
|
||||
@@ -1,202 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<schema xmlns="http://www.w3.org/2001/XMLSchema"
|
||||
xmlns:fee="urn:ietf:params:xml:ns:epp:fee-1.0"
|
||||
xmlns:eppcom="urn:ietf:params:xml:ns:eppcom-1.0"
|
||||
xmlns:domain="urn:ietf:params:xml:ns:domain-1.0"
|
||||
targetNamespace="urn:ietf:params:xml:ns:epp:fee-1.0"
|
||||
elementFormDefault="qualified">
|
||||
|
||||
<import namespace="urn:ietf:params:xml:ns:eppcom-1.0" />
|
||||
<import namespace="urn:ietf:params:xml:ns:domain-1.0" />
|
||||
|
||||
<annotation>
|
||||
<documentation>
|
||||
Extensible Provisioning Protocol v1.0 Fee Extension
|
||||
</documentation>
|
||||
</annotation>
|
||||
|
||||
<!-- Child elements found in EPP commands and responses -->
|
||||
<element name="check" type="fee:checkType" />
|
||||
<element name="chkData" type="fee:chkDataType" />
|
||||
<element name="create" type="fee:transformCommandType" />
|
||||
<element name="creData" type="fee:transformResultType" />
|
||||
<element name="renew" type="fee:transformCommandType" />
|
||||
<element name="renData" type="fee:transformResultType" />
|
||||
<element name="transfer" type="fee:transformCommandType" />
|
||||
<element name="trnData" type="fee:transformResultType" />
|
||||
<element name="update" type="fee:transformCommandType" />
|
||||
<element name="updData" type="fee:transformResultType" />
|
||||
<element name="delData" type="fee:transformResultType" />
|
||||
|
||||
<!-- client <check> command -->
|
||||
<complexType name="checkType">
|
||||
<sequence>
|
||||
<element name="currency" type="fee:currencyType"
|
||||
minOccurs="0" />
|
||||
<element name="command" type="fee:commandType"
|
||||
minOccurs="1" maxOccurs="unbounded" />
|
||||
</sequence>
|
||||
</complexType>
|
||||
|
||||
<complexType name="objectIdentifierType">
|
||||
<simpleContent>
|
||||
<extension base="eppcom:labelType">
|
||||
<attribute name="element"
|
||||
type="NMTOKEN" default="name" />
|
||||
</extension>
|
||||
</simpleContent>
|
||||
</complexType>
|
||||
|
||||
<!-- server <check> result -->
|
||||
<complexType name="chkDataType">
|
||||
<sequence>
|
||||
<element name="currency" type="fee:currencyType" />
|
||||
<element name="cd" type="fee:objectCDType"
|
||||
maxOccurs="unbounded" />
|
||||
</sequence>
|
||||
</complexType>
|
||||
|
||||
<complexType name="objectCDType">
|
||||
<sequence>
|
||||
<element name="objID" type="fee:objectIdentifierType" />
|
||||
<element name="class" type="token" minOccurs="0" />
|
||||
<element name="command" type="fee:commandDataType"
|
||||
minOccurs="0" maxOccurs="unbounded" />
|
||||
<element name="reason" type="fee:reasonType" minOccurs="0" />
|
||||
</sequence>
|
||||
<attribute name="avail" type="boolean" default="1" />
|
||||
</complexType>
|
||||
|
||||
<!-- general transform (create, renew, update, transfer) command-->
|
||||
<complexType name="transformCommandType">
|
||||
<sequence>
|
||||
<element name="currency" type="fee:currencyType"
|
||||
minOccurs="0" />
|
||||
<element name="fee" type="fee:feeType"
|
||||
maxOccurs="unbounded" />
|
||||
<element name="credit" type="fee:creditType"
|
||||
minOccurs="0" maxOccurs="unbounded" />
|
||||
</sequence>
|
||||
</complexType>
|
||||
|
||||
<!-- general transform (create, renew, update) result -->
|
||||
<complexType name="transformResultType">
|
||||
<sequence>
|
||||
<element name="currency" type="fee:currencyType"
|
||||
minOccurs="0" />
|
||||
<element name="period" type="domain:periodType"
|
||||
minOccurs="0" />
|
||||
<element name="fee" type="fee:feeType"
|
||||
minOccurs="0" maxOccurs="unbounded" />
|
||||
<element name="credit" type="fee:creditType"
|
||||
minOccurs="0" maxOccurs="unbounded" />
|
||||
<element name="balance" type="fee:balanceType"
|
||||
minOccurs="0" />
|
||||
<element name="creditLimit" type="fee:creditLimitType"
|
||||
minOccurs="0" />
|
||||
</sequence>
|
||||
</complexType>
|
||||
|
||||
<!-- common types -->
|
||||
<simpleType name="currencyType">
|
||||
<restriction base="string">
|
||||
<pattern value="[A-Z]{3}" />
|
||||
</restriction>
|
||||
</simpleType>
|
||||
|
||||
<complexType name="commandType">
|
||||
<sequence>
|
||||
<element name="period" type="domain:periodType"
|
||||
minOccurs="0" maxOccurs="1" />
|
||||
</sequence>
|
||||
<attribute name="name" type="fee:commandEnum" use="required"/>
|
||||
<attribute name="customName" type="token"/>
|
||||
<attribute name="phase" type="token" />
|
||||
<attribute name="subphase" type="token" />
|
||||
</complexType>
|
||||
|
||||
<complexType name="commandDataType">
|
||||
<complexContent>
|
||||
<extension base="fee:commandType">
|
||||
<sequence>
|
||||
<element name="fee" type="fee:feeType"
|
||||
minOccurs="0" maxOccurs="unbounded" />
|
||||
<element name="credit" type="fee:creditType"
|
||||
minOccurs="0" maxOccurs="unbounded" />
|
||||
<element name="reason" type="fee:reasonType"
|
||||
minOccurs="0" />
|
||||
</sequence>
|
||||
<attribute name="standard" type="boolean" default="0" />
|
||||
</extension>
|
||||
</complexContent>
|
||||
</complexType>
|
||||
|
||||
<complexType name="reasonType">
|
||||
<simpleContent>
|
||||
<extension base="token">
|
||||
<attribute name="lang" type="language" default="en"/>
|
||||
</extension>
|
||||
</simpleContent>
|
||||
</complexType>
|
||||
|
||||
<simpleType name="commandEnum">
|
||||
<restriction base="token">
|
||||
<enumeration value="create"/>
|
||||
<enumeration value="delete"/>
|
||||
<enumeration value="renew"/>
|
||||
<enumeration value="update"/>
|
||||
<enumeration value="transfer"/>
|
||||
<enumeration value="restore"/>
|
||||
<enumeration value="custom"/>
|
||||
</restriction>
|
||||
</simpleType>
|
||||
|
||||
<simpleType name="nonNegativeDecimal">
|
||||
<restriction base="decimal">
|
||||
<minInclusive value="0" />
|
||||
</restriction>
|
||||
</simpleType>
|
||||
|
||||
<simpleType name="negativeDecimal">
|
||||
<restriction base="decimal">
|
||||
<maxInclusive value="0" />
|
||||
</restriction>
|
||||
</simpleType>
|
||||
|
||||
<complexType name="feeType">
|
||||
<simpleContent>
|
||||
<extension base="fee:nonNegativeDecimal">
|
||||
<attribute name="description"/>
|
||||
<attribute name="lang" type="language" default="en"/>
|
||||
<attribute name="refundable" type="boolean" />
|
||||
<attribute name="grace-period" type="duration" />
|
||||
<attribute name="applied">
|
||||
<simpleType>
|
||||
<restriction base="token">
|
||||
<enumeration value="immediate" />
|
||||
<enumeration value="delayed" />
|
||||
</restriction>
|
||||
</simpleType>
|
||||
</attribute>
|
||||
</extension>
|
||||
</simpleContent>
|
||||
</complexType>
|
||||
|
||||
<complexType name="creditType">
|
||||
<simpleContent>
|
||||
<extension base="fee:negativeDecimal">
|
||||
<attribute name="description"/>
|
||||
<attribute name="lang" type="language" default="en"/>
|
||||
</extension>
|
||||
</simpleContent>
|
||||
</complexType>
|
||||
|
||||
<simpleType name="balanceType">
|
||||
<restriction base="decimal" />
|
||||
</simpleType>
|
||||
|
||||
<simpleType name="creditLimitType">
|
||||
<restriction base="decimal" />
|
||||
</simpleType>
|
||||
|
||||
</schema>
|
||||
@@ -1,239 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<schema xmlns="http://www.w3.org/2001/XMLSchema"
|
||||
xmlns:fee="urn:ietf:params:xml:ns:fee-0.6"
|
||||
xmlns:eppcom="urn:ietf:params:xml:ns:eppcom-1.0"
|
||||
xmlns:domain="urn:ietf:params:xml:ns:domain-1.0"
|
||||
targetNamespace="urn:ietf:params:xml:ns:fee-0.6"
|
||||
elementFormDefault="qualified">
|
||||
|
||||
<import namespace="urn:ietf:params:xml:ns:eppcom-1.0" />
|
||||
<import namespace="urn:ietf:params:xml:ns:domain-1.0" />
|
||||
|
||||
<annotation>
|
||||
<documentation>
|
||||
Extensible Provisioning Protocol v1.0 domain name extension schema for fee information.
|
||||
Downloaded from https://raw.githubusercontent.com/centralnic/epp-fee-extension/master/fee.xsd.
|
||||
</documentation>
|
||||
</annotation>
|
||||
|
||||
<!--
|
||||
Child elements found in EPP commands and responses
|
||||
-->
|
||||
<element name="check" type="fee:checkType" />
|
||||
<element name="chkData" type="fee:chkDataType" />
|
||||
<element name="info" type="fee:infoType" />
|
||||
<element name="infData" type="fee:infDataType" />
|
||||
<element name="create" type="fee:transformCommandType" />
|
||||
<element name="creData" type="fee:transformResultType" />
|
||||
<element name="renew" type="fee:transformCommandType" />
|
||||
<element name="renData" type="fee:transformResultType" />
|
||||
<element name="transfer" type="fee:transformCommandType" />
|
||||
<element name="trnData" type="fee:transferResultType" />
|
||||
<element name="update" type="fee:transformCommandType" />
|
||||
<element name="updData" type="fee:transformResultType" />
|
||||
<element name="delData" type="fee:deleteDataType" />
|
||||
|
||||
<!--
|
||||
client <check> command
|
||||
-->
|
||||
<complexType name="checkType">
|
||||
<sequence>
|
||||
<element name="domain" type="fee:domainCheckType"
|
||||
maxOccurs="unbounded" />
|
||||
</sequence>
|
||||
</complexType>
|
||||
|
||||
<complexType name="domainCheckType">
|
||||
<sequence>
|
||||
<element name="name" type="eppcom:labelType" />
|
||||
<element name="currency" type="fee:currencyType"
|
||||
minOccurs="0" />
|
||||
<element name="command" type="fee:commandType" />
|
||||
<element name="period" type="domain:periodType"
|
||||
minOccurs="0" />
|
||||
</sequence>
|
||||
</complexType>
|
||||
|
||||
|
||||
<!--
|
||||
server <check> result
|
||||
-->
|
||||
<complexType name="chkDataType">
|
||||
<sequence>
|
||||
<element name="cd" type="fee:domainCDType"
|
||||
maxOccurs="unbounded" />
|
||||
</sequence>
|
||||
</complexType>
|
||||
|
||||
<complexType name="domainCDType">
|
||||
<sequence>
|
||||
<element name="name" type="eppcom:labelType" />
|
||||
<element name="currency" type="fee:currencyType" />
|
||||
<element name="command" type="fee:commandType" />
|
||||
<element name="period" type="domain:periodType" />
|
||||
<element name="fee" type="fee:feeType"
|
||||
minOccurs="0" maxOccurs="unbounded" />
|
||||
<element name="class" type="token" minOccurs="0" />
|
||||
</sequence>
|
||||
</complexType>
|
||||
|
||||
<!--
|
||||
client <info> command
|
||||
-->
|
||||
<complexType name="infoType">
|
||||
<sequence>
|
||||
<element name="currency" type="fee:currencyType" />
|
||||
<element name="command" type="fee:commandType" />
|
||||
<element name="period" type="domain:periodType" />
|
||||
</sequence>
|
||||
</complexType>
|
||||
|
||||
<!--
|
||||
server <info> result
|
||||
-->
|
||||
<complexType name="infDataType">
|
||||
<sequence>
|
||||
<element name="currency" type="fee:currencyType" />
|
||||
<element name="command" type="fee:commandType" />
|
||||
<element name="period" type="domain:periodType" />
|
||||
<element name="fee" type="fee:feeType"
|
||||
maxOccurs="unbounded" />
|
||||
<element name="class" type="token" minOccurs="0" />
|
||||
</sequence>
|
||||
</complexType>
|
||||
|
||||
<!--
|
||||
general transform (create, renew, update, transfer) command
|
||||
-->
|
||||
<complexType name="transformCommandType">
|
||||
<sequence>
|
||||
<element name="currency" type="fee:currencyType" />
|
||||
<element name="fee" type="fee:feeType"
|
||||
maxOccurs="unbounded" />
|
||||
</sequence>
|
||||
</complexType>
|
||||
|
||||
<!--
|
||||
general transform (create, renew, update) result
|
||||
-->
|
||||
<complexType name="transformResultType">
|
||||
<sequence>
|
||||
<element name="currency" type="fee:currencyType" />
|
||||
<element name="fee" type="fee:feeType"
|
||||
maxOccurs="unbounded" />
|
||||
<element name="balance" type="fee:balanceType"
|
||||
minOccurs="0" />
|
||||
<element name="creditLimit" type="fee:creditLimitType"
|
||||
minOccurs="0" />
|
||||
</sequence>
|
||||
</complexType>
|
||||
|
||||
<!--
|
||||
transfer result
|
||||
-->
|
||||
<complexType name="transferResultType">
|
||||
<sequence>
|
||||
<element name="currency" type="fee:currencyType" />
|
||||
|
||||
<!-- only used op="query" responses -->
|
||||
<element name="period" type="domain:periodType"
|
||||
minOccurs="0" />
|
||||
|
||||
<element name="fee" type="fee:feeType"
|
||||
maxOccurs="unbounded" />
|
||||
<element name="balance" type="fee:balanceType"
|
||||
minOccurs="0" />
|
||||
<element name="creditLimit" type="fee:creditLimitType"
|
||||
minOccurs="0" />
|
||||
</sequence>
|
||||
</complexType>
|
||||
|
||||
<!--
|
||||
delete result
|
||||
-->
|
||||
<complexType name="deleteDataType">
|
||||
<sequence>
|
||||
<element name="currency" type="fee:currencyType" />
|
||||
<element name="credit" type="fee:creditType"
|
||||
maxOccurs="unbounded" />
|
||||
<element name="balance" type="fee:balanceType"
|
||||
minOccurs="0" />
|
||||
<element name="creditLimit" type="fee:creditLimitType"
|
||||
minOccurs="0" />
|
||||
</sequence>
|
||||
</complexType>
|
||||
|
||||
<!--
|
||||
common types
|
||||
-->
|
||||
<simpleType name="currencyType">
|
||||
<restriction base="string">
|
||||
<pattern value="[A-Z]{3}" />
|
||||
</restriction>
|
||||
</simpleType>
|
||||
|
||||
<complexType name="commandType">
|
||||
<simpleContent>
|
||||
<extension base="fee:commandTypeValue">
|
||||
<attribute name="phase" type="token" />
|
||||
<attribute name="subphase" type="token" />
|
||||
</extension>
|
||||
</simpleContent>
|
||||
</complexType>
|
||||
|
||||
<simpleType name="commandTypeValue">
|
||||
<restriction base="token">
|
||||
<minLength value="3"/>
|
||||
<maxLength value="16"/>
|
||||
</restriction>
|
||||
</simpleType>
|
||||
|
||||
<simpleType name="nonNegativeDecimal">
|
||||
<restriction base="decimal">
|
||||
<minInclusive value="0" />
|
||||
</restriction>
|
||||
</simpleType>
|
||||
|
||||
<simpleType name="negativeDecimal">
|
||||
<restriction base="decimal">
|
||||
<maxInclusive value="0" />
|
||||
</restriction>
|
||||
</simpleType>
|
||||
|
||||
<complexType name="feeType">
|
||||
<simpleContent>
|
||||
<extension base="fee:nonNegativeDecimal">
|
||||
<attribute name="description"/>
|
||||
<attribute name="refundable" type="boolean"
|
||||
default="1" />
|
||||
<attribute name="grace-period" type="duration"
|
||||
default="P0D" />
|
||||
<attribute name="applied" default="immediate">
|
||||
<simpleType>
|
||||
<restriction base="token">
|
||||
<enumeration value="immediate" />
|
||||
<enumeration value="delayed" />
|
||||
</restriction>
|
||||
</simpleType>
|
||||
</attribute>
|
||||
</extension>
|
||||
</simpleContent>
|
||||
</complexType>
|
||||
|
||||
<complexType name="creditType">
|
||||
<simpleContent>
|
||||
<extension base="fee:negativeDecimal">
|
||||
<attribute name="description"/>
|
||||
</extension>
|
||||
</simpleContent>
|
||||
</complexType>
|
||||
|
||||
<simpleType name="balanceType">
|
||||
<restriction base="decimal" />
|
||||
</simpleType>
|
||||
|
||||
<simpleType name="creditLimitType">
|
||||
<restriction base="decimal" />
|
||||
</simpleType>
|
||||
|
||||
</schema>
|
||||
@@ -1,211 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<schema xmlns="http://www.w3.org/2001/XMLSchema"
|
||||
xmlns:fee="urn:ietf:params:xml:ns:fee-0.11"
|
||||
xmlns:eppcom="urn:ietf:params:xml:ns:eppcom-1.0"
|
||||
xmlns:domain="urn:ietf:params:xml:ns:domain-1.0"
|
||||
targetNamespace="urn:ietf:params:xml:ns:fee-0.11"
|
||||
elementFormDefault="qualified">
|
||||
|
||||
<import namespace="urn:ietf:params:xml:ns:eppcom-1.0" />
|
||||
<import namespace="urn:ietf:params:xml:ns:domain-1.0" />
|
||||
|
||||
<annotation>
|
||||
<documentation>Extensible Provisioning Protocol
|
||||
v1.0 extension schema for fee
|
||||
information.</documentation>
|
||||
</annotation>
|
||||
|
||||
<!--
|
||||
Child elements found in EPP commands and responses
|
||||
-->
|
||||
<element name="check" type="fee:checkType" />
|
||||
<element name="chkData" type="fee:chkDataType" />
|
||||
<element name="create" type="fee:transformCommandType" />
|
||||
<element name="creData" type="fee:transformResultType" />
|
||||
<element name="renew" type="fee:transformCommandType" />
|
||||
<element name="renData" type="fee:transformResultType" />
|
||||
<element name="transfer" type="fee:transformCommandType" />
|
||||
<element name="trnData" type="fee:transferResultType" />
|
||||
<element name="update" type="fee:transformCommandType" />
|
||||
<element name="updData" type="fee:transformResultType" />
|
||||
<element name="delData" type="fee:deleteDataType" />
|
||||
|
||||
<!--
|
||||
client <check> command
|
||||
-->
|
||||
<complexType name="checkType">
|
||||
<sequence>
|
||||
<element name="command" type="fee:commandType" />
|
||||
<element name="currency" type="fee:currencyType"
|
||||
minOccurs="0" />
|
||||
<element name="period" type="domain:periodType"
|
||||
minOccurs="0" />
|
||||
<element name="class" type="token"
|
||||
minOccurs="0" />
|
||||
</sequence>
|
||||
</complexType>
|
||||
|
||||
<!--
|
||||
server <check> result
|
||||
-->
|
||||
<complexType name="chkDataType">
|
||||
<sequence>
|
||||
<element name="cd" type="fee:objectCDType"
|
||||
maxOccurs="unbounded" />
|
||||
</sequence>
|
||||
</complexType>
|
||||
|
||||
<complexType name="objectCDType">
|
||||
<sequence>
|
||||
<element name="object">
|
||||
<complexType>
|
||||
<sequence>
|
||||
<any namespace="##other" processContents="lax"/>
|
||||
</sequence>
|
||||
</complexType>
|
||||
</element>
|
||||
<element name="command" type="fee:commandType" />
|
||||
<element name="currency" type="fee:currencyType" />
|
||||
<element name="period" type="domain:periodType"
|
||||
minOccurs="0" maxOccurs="1" />
|
||||
<element name="fee" type="fee:feeType"
|
||||
minOccurs="0" maxOccurs="unbounded" />
|
||||
<element name="credit" type="fee:creditType"
|
||||
minOccurs="0" maxOccurs="unbounded" />
|
||||
<element name="class" type="token" minOccurs="0" />
|
||||
<element name="reason" type="token" minOccurs="0" />
|
||||
</sequence>
|
||||
<attribute name="avail" type="boolean" default="1" />
|
||||
</complexType>
|
||||
|
||||
<!--
|
||||
general transform (create, renew, update, transfer) command
|
||||
-->
|
||||
<complexType name="transformCommandType">
|
||||
<sequence>
|
||||
<element name="currency" type="fee:currencyType"
|
||||
minOccurs="0" />
|
||||
<element name="fee" type="fee:feeType"
|
||||
maxOccurs="unbounded" />
|
||||
<element name="credit" type="fee:creditType"
|
||||
minOccurs="0" maxOccurs="unbounded" />
|
||||
</sequence>
|
||||
</complexType>
|
||||
|
||||
<!--
|
||||
general transform (create, renew, update) result
|
||||
-->
|
||||
<complexType name="transformResultType">
|
||||
<sequence>
|
||||
<element name="currency" type="fee:currencyType" />
|
||||
<element name="fee" type="fee:feeType"
|
||||
minOccurs="0" maxOccurs="unbounded" />
|
||||
<element name="credit" type="fee:creditType"
|
||||
minOccurs="0" maxOccurs="unbounded" />
|
||||
<element name="balance" type="fee:balanceType"
|
||||
minOccurs="0" />
|
||||
<element name="creditLimit" type="fee:creditLimitType"
|
||||
minOccurs="0" />
|
||||
</sequence>
|
||||
</complexType>
|
||||
|
||||
<!--
|
||||
transfer result
|
||||
-->
|
||||
<complexType name="transferResultType">
|
||||
<sequence>
|
||||
<element name="currency" type="fee:currencyType" />
|
||||
|
||||
<!-- only used op="query" responses -->
|
||||
<element name="period" type="domain:periodType"
|
||||
minOccurs="0" />
|
||||
|
||||
<element name="fee" type="fee:feeType"
|
||||
maxOccurs="unbounded" />
|
||||
<element name="credit" type="fee:creditType"
|
||||
minOccurs="0" maxOccurs="unbounded" />
|
||||
</sequence>
|
||||
</complexType>
|
||||
|
||||
<!--
|
||||
delete result
|
||||
-->
|
||||
<complexType name="deleteDataType">
|
||||
<sequence>
|
||||
<element name="currency" type="fee:currencyType" />
|
||||
<element name="credit" type="fee:creditType"
|
||||
minOccurs="0" maxOccurs="unbounded" />
|
||||
<element name="balance" type="fee:balanceType"
|
||||
minOccurs="0" />
|
||||
<element name="creditLimit" type="fee:creditLimitType"
|
||||
minOccurs="0" />
|
||||
</sequence>
|
||||
</complexType>
|
||||
|
||||
<!--
|
||||
common types
|
||||
-->
|
||||
<simpleType name="currencyType">
|
||||
<restriction base="string">
|
||||
<pattern value="[A-Z]{3}" />
|
||||
</restriction>
|
||||
</simpleType>
|
||||
|
||||
<complexType name="commandType">
|
||||
<simpleContent>
|
||||
<extension base="fee:commandTypeValue">
|
||||
<attribute name="phase" type="token" />
|
||||
<attribute name="subphase" type="token" />
|
||||
</extension>
|
||||
</simpleContent>
|
||||
</complexType>
|
||||
|
||||
<simpleType name="commandTypeValue">
|
||||
<restriction base="token">
|
||||
<minLength value="3"/>
|
||||
<maxLength value="16"/>
|
||||
</restriction>
|
||||
</simpleType>
|
||||
|
||||
<simpleType name="nonNegativeDecimal">
|
||||
<restriction base="decimal">
|
||||
<minInclusive value="0" />
|
||||
</restriction>
|
||||
</simpleType>
|
||||
|
||||
<simpleType name="negativeDecimal">
|
||||
<restriction base="decimal">
|
||||
<maxInclusive value="0" />
|
||||
</restriction>
|
||||
</simpleType>
|
||||
<complexType name="feeType">
|
||||
<simpleContent>
|
||||
<extension base="fee:nonNegativeDecimal">
|
||||
<attribute name="description"/>
|
||||
<attribute name="refundable" type="boolean" />
|
||||
<attribute name="grace-period" type="duration" />
|
||||
<attribute name="applied" default="immediate">
|
||||
<simpleType>
|
||||
<restriction base="token">
|
||||
<enumeration value="immediate" />
|
||||
<enumeration value="delayed" />
|
||||
</restriction>
|
||||
</simpleType>
|
||||
</attribute>
|
||||
</extension>
|
||||
</simpleContent>
|
||||
</complexType>
|
||||
<complexType name="creditType">
|
||||
<simpleContent>
|
||||
<extension base="fee:negativeDecimal">
|
||||
<attribute name="description"/>
|
||||
</extension>
|
||||
</simpleContent>
|
||||
</complexType>
|
||||
<simpleType name="balanceType">
|
||||
<restriction base="decimal" />
|
||||
</simpleType>
|
||||
<simpleType name="creditLimitType">
|
||||
<restriction base="decimal" />
|
||||
</simpleType>
|
||||
</schema>
|
||||
@@ -1,242 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<schema xmlns="http://www.w3.org/2001/XMLSchema"
|
||||
xmlns:fee="urn:ietf:params:xml:ns:fee-0.12"
|
||||
xmlns:eppcom="urn:ietf:params:xml:ns:eppcom-1.0"
|
||||
xmlns:domain="urn:ietf:params:xml:ns:domain-1.0"
|
||||
targetNamespace="urn:ietf:params:xml:ns:fee-0.12"
|
||||
elementFormDefault="qualified">
|
||||
|
||||
<import namespace="urn:ietf:params:xml:ns:eppcom-1.0" />
|
||||
<import namespace="urn:ietf:params:xml:ns:domain-1.0" />
|
||||
|
||||
<annotation>
|
||||
<documentation>Extensible Provisioning Protocol
|
||||
v1.0 extension schema for fee
|
||||
information.</documentation>
|
||||
</annotation>
|
||||
|
||||
<!--
|
||||
Child elements found in EPP commands and responses
|
||||
-->
|
||||
<element name="check" type="fee:checkType" />
|
||||
<element name="chkData" type="fee:chkDataType" />
|
||||
<element name="create" type="fee:transformCommandType" />
|
||||
<element name="creData" type="fee:transformResultType" />
|
||||
<element name="renew" type="fee:transformCommandType" />
|
||||
<element name="renData" type="fee:transformResultType" />
|
||||
<element name="transfer" type="fee:transformCommandType" />
|
||||
<element name="trnData" type="fee:transferResultType" />
|
||||
<element name="update" type="fee:transformCommandType" />
|
||||
<element name="updData" type="fee:transformResultType" />
|
||||
<element name="delData" type="fee:transformResultType" />
|
||||
|
||||
<!--
|
||||
client <check> command
|
||||
-->
|
||||
<complexType name="checkType">
|
||||
<sequence>
|
||||
<element name="currency"
|
||||
type="fee:currencyType"
|
||||
minOccurs="0" />
|
||||
<element name="command"
|
||||
type="fee:commandCheckType"
|
||||
maxOccurs="unbounded" />
|
||||
</sequence>
|
||||
</complexType>
|
||||
|
||||
<complexType name="commandCheckType">
|
||||
<sequence>
|
||||
<element name="period"
|
||||
type="domain:periodType"
|
||||
minOccurs="0" />
|
||||
<element name="class"
|
||||
type="token"
|
||||
minOccurs="0" />
|
||||
<element name="date"
|
||||
type="dateTime"
|
||||
minOccurs="0" />
|
||||
</sequence>
|
||||
<attribute name="name" type="fee:commandTypeValue" />
|
||||
<attribute name="phase" type="token" />
|
||||
<attribute name="subphase" type="token" />
|
||||
</complexType>
|
||||
|
||||
<!--
|
||||
server <check> result
|
||||
-->
|
||||
<complexType name="chkDataType">
|
||||
<sequence>
|
||||
<!--
|
||||
Dialog is ongoing with Gavin Brown about this. His XSD has a
|
||||
mandatory currency field. But what if the different domains being
|
||||
checked have different currencies? I am trying to figure out what
|
||||
he intends here. - Brian
|
||||
-->
|
||||
<element name="currency" type="fee:currencyType" minOccurs="0"/>
|
||||
<element name="cd" type="fee:objectCDType"
|
||||
maxOccurs="unbounded" />
|
||||
</sequence>
|
||||
</complexType>
|
||||
|
||||
<complexType name="objectCDType">
|
||||
<sequence>
|
||||
<element name="object">
|
||||
<complexType>
|
||||
<sequence>
|
||||
<any namespace="##other" processContents="lax"/>
|
||||
</sequence>
|
||||
</complexType>
|
||||
</element>
|
||||
<element name="command"
|
||||
type="fee:commandCDType"
|
||||
maxOccurs="unbounded" />
|
||||
</sequence>
|
||||
</complexType>
|
||||
|
||||
<complexType name="commandCDType">
|
||||
<sequence>
|
||||
<element name="period"
|
||||
type="domain:periodType"
|
||||
minOccurs="0" maxOccurs="1" />
|
||||
<element name="fee"
|
||||
type="fee:feeType"
|
||||
minOccurs="0" maxOccurs="unbounded" />
|
||||
<element name="credit"
|
||||
type="fee:creditType"
|
||||
minOccurs="0" maxOccurs="unbounded" />
|
||||
<element name="class"
|
||||
type="token"
|
||||
minOccurs="0" />
|
||||
<element name="reason"
|
||||
type="token"
|
||||
minOccurs="0" />
|
||||
<element name="date"
|
||||
type="dateTime"
|
||||
minOccurs="0" />
|
||||
<element name="notAfter"
|
||||
type="dateTime"
|
||||
minOccurs="0" />
|
||||
</sequence>
|
||||
<attribute name="avail" type="boolean" default="1" />
|
||||
<attribute name="name" type="fee:commandTypeValue" />
|
||||
<attribute name="phase" type="token" />
|
||||
<attribute name="subphase" type="token" />
|
||||
</complexType>
|
||||
|
||||
<!--
|
||||
general transform (create, renew, update, transfer) command
|
||||
-->
|
||||
<complexType name="transformCommandType">
|
||||
<sequence>
|
||||
<element name="currency" type="fee:currencyType"
|
||||
minOccurs="0" />
|
||||
<element name="fee" type="fee:feeType"
|
||||
maxOccurs="unbounded" />
|
||||
<element name="credit" type="fee:creditType"
|
||||
minOccurs="0" maxOccurs="unbounded" />
|
||||
</sequence>
|
||||
</complexType>
|
||||
|
||||
<!--
|
||||
general transform (create, renew, update, delete) result
|
||||
-->
|
||||
<complexType name="transformResultType">
|
||||
<sequence>
|
||||
<element name="currency" type="fee:currencyType" />
|
||||
<element name="fee" type="fee:feeType"
|
||||
minOccurs="0" maxOccurs="unbounded" />
|
||||
<element name="credit" type="fee:creditType"
|
||||
minOccurs="0" maxOccurs="unbounded" />
|
||||
<element name="balance" type="fee:balanceType"
|
||||
minOccurs="0" />
|
||||
<element name="creditLimit" type="fee:creditLimitType"
|
||||
minOccurs="0" />
|
||||
</sequence>
|
||||
</complexType>
|
||||
|
||||
<!--
|
||||
transfer result
|
||||
-->
|
||||
<complexType name="transferResultType">
|
||||
<sequence>
|
||||
<element name="currency" type="fee:currencyType" />
|
||||
|
||||
<!-- only used op="query" responses -->
|
||||
<element name="period" type="domain:periodType"
|
||||
minOccurs="0" />
|
||||
|
||||
<element name="fee" type="fee:feeType"
|
||||
maxOccurs="unbounded" />
|
||||
<element name="credit" type="fee:creditType"
|
||||
minOccurs="0" maxOccurs="unbounded" />
|
||||
|
||||
<element name="balance" type="fee:balanceType"
|
||||
minOccurs="0" />
|
||||
<element name="creditLimit" type="fee:creditLimitType"
|
||||
minOccurs="0" />
|
||||
</sequence>
|
||||
</complexType>
|
||||
|
||||
<!--
|
||||
common types
|
||||
-->
|
||||
<simpleType name="currencyType">
|
||||
<restriction base="string">
|
||||
<pattern value="[A-Z]{3}" />
|
||||
</restriction>
|
||||
</simpleType>
|
||||
|
||||
<simpleType name="commandTypeValue">
|
||||
<restriction base="token">
|
||||
<minLength value="3"/>
|
||||
<maxLength value="16"/>
|
||||
</restriction>
|
||||
</simpleType>
|
||||
|
||||
<simpleType name="nonNegativeDecimal">
|
||||
<restriction base="decimal">
|
||||
<minInclusive value="0" />
|
||||
</restriction>
|
||||
</simpleType>
|
||||
|
||||
<simpleType name="negativeDecimal">
|
||||
<restriction base="decimal">
|
||||
<maxInclusive value="0" />
|
||||
</restriction>
|
||||
</simpleType>
|
||||
|
||||
<complexType name="feeType">
|
||||
<simpleContent>
|
||||
<extension base="fee:nonNegativeDecimal">
|
||||
<attribute name="description"/>
|
||||
<attribute name="refundable" type="boolean" />
|
||||
<attribute name="grace-period" type="duration" />
|
||||
<attribute name="applied" default="immediate">
|
||||
<simpleType>
|
||||
<restriction base="token">
|
||||
<enumeration value="immediate" />
|
||||
<enumeration value="delayed" />
|
||||
</restriction>
|
||||
</simpleType>
|
||||
</attribute>
|
||||
</extension>
|
||||
</simpleContent>
|
||||
</complexType>
|
||||
|
||||
<complexType name="creditType">
|
||||
<simpleContent>
|
||||
<extension base="fee:negativeDecimal">
|
||||
<attribute name="description"/>
|
||||
</extension>
|
||||
</simpleContent>
|
||||
</complexType>
|
||||
|
||||
<simpleType name="balanceType">
|
||||
<restriction base="decimal" />
|
||||
</simpleType>
|
||||
|
||||
<simpleType name="creditLimitType">
|
||||
<restriction base="decimal" />
|
||||
</simpleType>
|
||||
|
||||
</schema>
|
||||
@@ -1,242 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<schema targetNamespace="urn:ietf:params:xml:ns:host-1.0"
|
||||
xmlns:host="urn:ietf:params:xml:ns:host-1.0"
|
||||
xmlns:epp="urn:ietf:params:xml:ns:epp-1.0"
|
||||
xmlns:eppcom="urn:ietf:params:xml:ns:eppcom-1.0"
|
||||
xmlns="http://www.w3.org/2001/XMLSchema"
|
||||
elementFormDefault="qualified">
|
||||
|
||||
<!--
|
||||
Import common element types.
|
||||
-->
|
||||
<import namespace="urn:ietf:params:xml:ns:eppcom-1.0"
|
||||
schemaLocation="eppcom.xsd"/>
|
||||
<import namespace="urn:ietf:params:xml:ns:epp-1.0"
|
||||
schemaLocation="epp.xsd"/>
|
||||
|
||||
<annotation>
|
||||
<documentation>
|
||||
Extensible Provisioning Protocol v1.0
|
||||
host provisioning schema.
|
||||
</documentation>
|
||||
</annotation>
|
||||
|
||||
<!--
|
||||
Child elements found in EPP commands.
|
||||
-->
|
||||
<element name="check" type="host:mNameType"/>
|
||||
<element name="create" type="host:createType"/>
|
||||
<element name="delete" type="host:sNameType"/>
|
||||
<element name="info" type="host:sNameType"/>
|
||||
<element name="update" type="host:updateType"/>
|
||||
|
||||
<!--
|
||||
Child elements of the <create> command.
|
||||
-->
|
||||
<complexType name="createType">
|
||||
<sequence>
|
||||
<element name="name" type="eppcom:labelType"/>
|
||||
<element name="addr" type="host:addrType"
|
||||
minOccurs="0" maxOccurs="unbounded"/>
|
||||
</sequence>
|
||||
</complexType>
|
||||
|
||||
<complexType name="addrType">
|
||||
<simpleContent>
|
||||
<extension base="host:addrStringType">
|
||||
<attribute name="ip" type="host:ipType"
|
||||
default="v4"/>
|
||||
</extension>
|
||||
</simpleContent>
|
||||
</complexType>
|
||||
|
||||
<simpleType name="addrStringType">
|
||||
<restriction base="token">
|
||||
<minLength value="3"/>
|
||||
<maxLength value="45"/>
|
||||
</restriction>
|
||||
</simpleType>
|
||||
|
||||
<simpleType name="ipType">
|
||||
<restriction base="token">
|
||||
<enumeration value="v4"/>
|
||||
<enumeration value="v6"/>
|
||||
</restriction>
|
||||
</simpleType>
|
||||
|
||||
<!--
|
||||
Child elements of the <delete> and <info> commands.
|
||||
-->
|
||||
<complexType name="sNameType">
|
||||
<sequence>
|
||||
<element name="name" type="eppcom:labelType"/>
|
||||
</sequence>
|
||||
</complexType>
|
||||
|
||||
<!--
|
||||
Child element of commands that accept multiple names.
|
||||
-->
|
||||
<complexType name="mNameType">
|
||||
<sequence>
|
||||
<element name="name" type="eppcom:labelType"
|
||||
maxOccurs="unbounded"/>
|
||||
</sequence>
|
||||
</complexType>
|
||||
<!--
|
||||
Child elements of the <update> command.
|
||||
-->
|
||||
<complexType name="updateType">
|
||||
<sequence>
|
||||
<element name="name" type="eppcom:labelType"/>
|
||||
<element name="add" type="host:addRemType"
|
||||
minOccurs="0"/>
|
||||
<element name="rem" type="host:addRemType"
|
||||
minOccurs="0"/>
|
||||
<element name="chg" type="host:chgType"
|
||||
minOccurs="0"/>
|
||||
</sequence>
|
||||
</complexType>
|
||||
|
||||
<!--
|
||||
Data elements that can be added or removed.
|
||||
-->
|
||||
<complexType name="addRemType">
|
||||
<sequence>
|
||||
<element name="addr" type="host:addrType"
|
||||
minOccurs="0" maxOccurs="unbounded"/>
|
||||
<element name="status" type="host:statusType"
|
||||
minOccurs="0" maxOccurs="7"/>
|
||||
</sequence>
|
||||
</complexType>
|
||||
|
||||
<!--
|
||||
Data elements that can be changed.
|
||||
-->
|
||||
<complexType name="chgType">
|
||||
<sequence>
|
||||
<element name="name" type="eppcom:labelType"/>
|
||||
</sequence>
|
||||
</complexType>
|
||||
|
||||
<!--
|
||||
Child response elements.
|
||||
-->
|
||||
<element name="chkData" type="host:chkDataType"/>
|
||||
<element name="creData" type="host:creDataType"/>
|
||||
<element name="infData" type="host:infDataType"/>
|
||||
<element name="panData" type="host:panDataType"/>
|
||||
|
||||
<!--
|
||||
<check> response elements.
|
||||
-->
|
||||
<complexType name="chkDataType">
|
||||
<sequence>
|
||||
<element name="cd" type="host:checkType"
|
||||
maxOccurs="unbounded"/>
|
||||
</sequence>
|
||||
</complexType>
|
||||
|
||||
<complexType name="checkType">
|
||||
<sequence>
|
||||
<element name="name" type="host:checkNameType"/>
|
||||
<element name="reason" type="eppcom:reasonType"
|
||||
minOccurs="0"/>
|
||||
</sequence>
|
||||
</complexType>
|
||||
|
||||
<complexType name="checkNameType">
|
||||
<simpleContent>
|
||||
<extension base="eppcom:labelType">
|
||||
<attribute name="avail" type="boolean"
|
||||
use="required"/>
|
||||
</extension>
|
||||
</simpleContent>
|
||||
</complexType>
|
||||
|
||||
<!--
|
||||
<create> response elements.
|
||||
-->
|
||||
<complexType name="creDataType">
|
||||
<sequence>
|
||||
<element name="name" type="eppcom:labelType"/>
|
||||
<element name="crDate" type="dateTime"/>
|
||||
</sequence>
|
||||
</complexType>
|
||||
|
||||
<!--
|
||||
<info> response elements.
|
||||
-->
|
||||
<complexType name="infDataType">
|
||||
<sequence>
|
||||
<element name="name" type="eppcom:labelType"/>
|
||||
<element name="roid" type="eppcom:roidType"/>
|
||||
<element name="status" type="host:statusType"
|
||||
maxOccurs="7"/>
|
||||
<element name="addr" type="host:addrType"
|
||||
minOccurs="0" maxOccurs="unbounded"/>
|
||||
<element name="clID" type="eppcom:clIDType"/>
|
||||
<element name="crID" type="eppcom:clIDType"/>
|
||||
<element name="crDate" type="dateTime"/>
|
||||
<element name="upID" type="eppcom:clIDType"
|
||||
minOccurs="0"/>
|
||||
<element name="upDate" type="dateTime"
|
||||
minOccurs="0"/>
|
||||
<element name="trDate" type="dateTime"
|
||||
minOccurs="0"/>
|
||||
</sequence>
|
||||
</complexType>
|
||||
|
||||
<!--
|
||||
Status is a combination of attributes and an optional human-readable
|
||||
message that may be expressed in languages other than English.
|
||||
-->
|
||||
<complexType name="statusType">
|
||||
<simpleContent>
|
||||
<extension base="normalizedString">
|
||||
<attribute name="s" type="host:statusValueType"
|
||||
use="required"/>
|
||||
<attribute name="lang" type="language"
|
||||
default="en"/>
|
||||
</extension>
|
||||
</simpleContent>
|
||||
</complexType>
|
||||
|
||||
<simpleType name="statusValueType">
|
||||
<restriction base="token">
|
||||
<enumeration value="clientDeleteProhibited"/>
|
||||
<enumeration value="clientUpdateProhibited"/>
|
||||
<enumeration value="linked"/>
|
||||
<enumeration value="ok"/>
|
||||
<enumeration value="pendingCreate"/>
|
||||
<enumeration value="pendingDelete"/>
|
||||
<enumeration value="pendingTransfer"/>
|
||||
<enumeration value="pendingUpdate"/>
|
||||
<enumeration value="serverDeleteProhibited"/>
|
||||
<enumeration value="serverUpdateProhibited"/>
|
||||
</restriction>
|
||||
</simpleType>
|
||||
|
||||
<!--
|
||||
Pending action notification response elements.
|
||||
-->
|
||||
<complexType name="panDataType">
|
||||
<sequence>
|
||||
<element name="name" type="host:paNameType"/>
|
||||
<element name="paTRID" type="epp:trIDType"/>
|
||||
<element name="paDate" type="dateTime"/>
|
||||
</sequence>
|
||||
</complexType>
|
||||
<complexType name="paNameType">
|
||||
<simpleContent>
|
||||
<extension base="eppcom:labelType">
|
||||
<attribute name="paResult" type="boolean"
|
||||
use="required"/>
|
||||
</extension>
|
||||
</simpleContent>
|
||||
</complexType>
|
||||
|
||||
<!--
|
||||
End of schema.
|
||||
-->
|
||||
</schema>
|
||||
@@ -1,35 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<schema targetNamespace="urn:ietf:params:xml:ns:iirdea-1.0"
|
||||
xmlns:iirdea="urn:ietf:params:xml:ns:iirdea-1.0"
|
||||
xmlns="http://www.w3.org/2001/XMLSchema"
|
||||
elementFormDefault="qualified">
|
||||
|
||||
<annotation>
|
||||
<documentation>
|
||||
ICANN interfaces for registries and data escrow agents
|
||||
</documentation>
|
||||
</annotation>
|
||||
|
||||
<element name="response" type="iirdea:responseType"/>
|
||||
|
||||
<complexType name="responseType">
|
||||
<sequence>
|
||||
<element name="result" type="iirdea:resultType"/>
|
||||
</sequence>
|
||||
</complexType>
|
||||
|
||||
<complexType name="resultType">
|
||||
<sequence>
|
||||
<element name="msg" type="token"/>
|
||||
<element name="description" type="string" minOccurs="0"/>
|
||||
</sequence>
|
||||
<attribute name="code" type="iirdea:codeType" use="required"/>
|
||||
</complexType>
|
||||
|
||||
<simpleType name="codeType">
|
||||
<restriction base="unsignedShort">
|
||||
<minInclusive value="1000"/>
|
||||
<maxInclusive value="9999"/>
|
||||
</restriction>
|
||||
</simpleType>
|
||||
</schema>
|
||||
@@ -1,246 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<schema targetNamespace="urn:ietf:params:xml:ns:launch-1.0" xmlns:launch="urn:ietf:params:xml:ns:launch-1.0"
|
||||
xmlns:eppcom="urn:ietf:params:xml:ns:eppcom-1.0" xmlns:mark="urn:ietf:params:xml:ns:mark-1.0"
|
||||
xmlns:smd="urn:ietf:params:xml:ns:signedMark-1.0" xmlns="http://www.w3.org/2001/XMLSchema"
|
||||
elementFormDefault="qualified">
|
||||
|
||||
<!-- Import common element types. -->
|
||||
<import namespace="urn:ietf:params:xml:ns:eppcom-1.0" schemaLocation="eppcom.xsd" />
|
||||
|
||||
<import namespace="urn:ietf:params:xml:ns:mark-1.0" schemaLocation="mark.xsd" />
|
||||
|
||||
<import namespace="urn:ietf:params:xml:ns:signedMark-1.0" schemaLocation="smd.xsd" />
|
||||
|
||||
<annotation>
|
||||
<documentation>
|
||||
Extensible Provisioning Protocol v1.0
|
||||
domain name extension
|
||||
schema
|
||||
for the launch phase processing.
|
||||
</documentation>
|
||||
</annotation>
|
||||
|
||||
<!-- Child elements found in EPP commands. -->
|
||||
<element name="check" type="launch:checkType" />
|
||||
<element name="info" type="launch:infoType" />
|
||||
<element name="create" type="launch:createType" />
|
||||
<element name="update" type="launch:idContainerType" />
|
||||
<element name="delete" type="launch:idContainerType" />
|
||||
|
||||
<!-- Common container of id (identifier) element -->
|
||||
<complexType name="idContainerType">
|
||||
<sequence>
|
||||
<element name="phase" type="launch:phaseType" />
|
||||
<element name="applicationID" type="launch:applicationIDType" />
|
||||
</sequence>
|
||||
</complexType>
|
||||
|
||||
<!-- Definition for application identifier -->
|
||||
<simpleType name="applicationIDType">
|
||||
<restriction base="token" />
|
||||
</simpleType>
|
||||
|
||||
<!-- Definition for launch phase. Name is an optional attribute used to extend
|
||||
the phase type. For example, when using the phase type value of &qt;custom>, the
|
||||
name can be used to specify the custom phase. -->
|
||||
<complexType name="phaseType">
|
||||
<simpleContent>
|
||||
<extension base="launch:phaseTypeValue">
|
||||
<attribute name="name" type="token" />
|
||||
</extension>
|
||||
</simpleContent>
|
||||
</complexType>
|
||||
|
||||
<!-- Enumeration of for launch phase values. -->
|
||||
<simpleType name="phaseTypeValue">
|
||||
<restriction base="token">
|
||||
<enumeration value="sunrise" />
|
||||
<enumeration value="landrush" />
|
||||
<enumeration value="claims" />
|
||||
<enumeration value="open" />
|
||||
<enumeration value="custom" />
|
||||
</restriction>
|
||||
</simpleType>
|
||||
|
||||
|
||||
<!-- Definition for the sunrise code -->
|
||||
<simpleType name="codeValue">
|
||||
<restriction base="token">
|
||||
<minLength value="1" />
|
||||
</restriction>
|
||||
</simpleType>
|
||||
|
||||
<complexType name="codeType">
|
||||
<simpleContent>
|
||||
<extension base="launch:codeValue">
|
||||
<attribute name="validatorID" type="launch:validatorIDType"
|
||||
use="optional" />
|
||||
</extension>
|
||||
</simpleContent>
|
||||
</complexType>
|
||||
|
||||
<!-- Definition for the notice identifier -->
|
||||
<simpleType name="noticeIDValue">
|
||||
<restriction base="token">
|
||||
<minLength value="1" />
|
||||
</restriction>
|
||||
</simpleType>
|
||||
|
||||
<complexType name="noticeIDType">
|
||||
<simpleContent>
|
||||
<extension base="launch:noticeIDValue">
|
||||
<attribute name="validatorID" type="launch:validatorIDType"
|
||||
use="optional" />
|
||||
</extension>
|
||||
</simpleContent>
|
||||
</complexType>
|
||||
|
||||
<!-- Definition for the validator identifier -->
|
||||
<simpleType name="validatorIDType">
|
||||
<restriction base="token">
|
||||
<minLength value="1" />
|
||||
</restriction>
|
||||
</simpleType>
|
||||
|
||||
<!-- Possible status values for sunrise application -->
|
||||
<simpleType name="statusValueType">
|
||||
<restriction base="token">
|
||||
<enumeration value="pendingValidation" />
|
||||
<enumeration value="validated" />
|
||||
<enumeration value="invalid" />
|
||||
<enumeration value="pendingAllocation" />
|
||||
<enumeration value="allocated" />
|
||||
<enumeration value="rejected" />
|
||||
<enumeration value="custom" />
|
||||
</restriction>
|
||||
</simpleType>
|
||||
|
||||
<!-- Status type definition -->
|
||||
<complexType name="statusType">
|
||||
<simpleContent>
|
||||
<extension base="normalizedString">
|
||||
<attribute name="s" type="launch:statusValueType" use="required" />
|
||||
<attribute name="lang" type="language" default="en" />
|
||||
<attribute name="name" type="token" />
|
||||
</extension>
|
||||
</simpleContent>
|
||||
</complexType>
|
||||
|
||||
<!-- codeMark Type that contains an optional code with mark information. -->
|
||||
<complexType name="codeMarkType">
|
||||
<sequence>
|
||||
<element name="code" type="launch:codeType" minOccurs="0" />
|
||||
<element ref="mark:abstractMark" minOccurs="0" />
|
||||
</sequence>
|
||||
</complexType>
|
||||
|
||||
<!-- Child elements for the create command -->
|
||||
<complexType name="createType">
|
||||
<sequence>
|
||||
<element name="phase" type="launch:phaseType" />
|
||||
<choice minOccurs="0">
|
||||
<element name="codeMark" type="launch:codeMarkType" maxOccurs="unbounded" />
|
||||
<element ref="smd:abstractSignedMark" maxOccurs="unbounded" />
|
||||
<element ref="smd:encodedSignedMark" maxOccurs="unbounded" />
|
||||
</choice>
|
||||
<element name="notice" minOccurs="0" type="launch:createNoticeType" />
|
||||
</sequence>
|
||||
<attribute name="type" type="launch:objectType" />
|
||||
</complexType>
|
||||
|
||||
<!-- Type of launch object -->
|
||||
<simpleType name="objectType">
|
||||
<restriction base="token">
|
||||
<enumeration value="application" />
|
||||
<enumeration value="registration" />
|
||||
</restriction>
|
||||
</simpleType>
|
||||
|
||||
|
||||
<!-- Child elements of the create notice element. -->
|
||||
<complexType name="createNoticeType">
|
||||
<sequence>
|
||||
<element name="noticeID" type="launch:noticeIDType" />
|
||||
<element name="notAfter" type="dateTime" />
|
||||
<element name="acceptedDate" type="dateTime" />
|
||||
</sequence>
|
||||
</complexType>
|
||||
|
||||
|
||||
<!-- Child elements of check (Claims Check Command). -->
|
||||
<complexType name="checkType">
|
||||
<sequence>
|
||||
<element name="phase" type="launch:phaseType" />
|
||||
</sequence>
|
||||
<attribute name="type" type="launch:checkFormType" default="claims" />
|
||||
</complexType>
|
||||
|
||||
|
||||
<!-- Type of check form (claims check or availability check) -->
|
||||
<simpleType name="checkFormType">
|
||||
<restriction base="token">
|
||||
<enumeration value="claims" />
|
||||
<enumeration value="avail" />
|
||||
</restriction>
|
||||
</simpleType>
|
||||
|
||||
|
||||
<!-- Child elements of info command. -->
|
||||
<complexType name="infoType">
|
||||
<sequence>
|
||||
<element name="phase" type="launch:phaseType" />
|
||||
<element name="applicationID" type="launch:applicationIDType"
|
||||
minOccurs="0" />
|
||||
</sequence>
|
||||
<attribute name="includeMark" type="boolean" default="false" />
|
||||
</complexType>
|
||||
|
||||
<!-- Child response elements. -->
|
||||
<element name="chkData" type="launch:chkDataType" />
|
||||
<element name="creData" type="launch:idContainerType" />
|
||||
<element name="infData" type="launch:infDataType" />
|
||||
|
||||
<!-- <check> response elements. -->
|
||||
<complexType name="chkDataType">
|
||||
<sequence>
|
||||
<element name="phase" type="launch:phaseType" />
|
||||
<element name="cd" type="launch:cdType" maxOccurs="unbounded" />
|
||||
</sequence>
|
||||
</complexType>
|
||||
|
||||
<complexType name="cdType">
|
||||
<sequence>
|
||||
<element name="name" type="launch:cdNameType" />
|
||||
<element name="claimKey" type="launch:claimKeyType" minOccurs="0" />
|
||||
</sequence>
|
||||
</complexType>
|
||||
|
||||
<complexType name="cdNameType">
|
||||
<simpleContent>
|
||||
<extension base="eppcom:labelType">
|
||||
<attribute name="exists" type="boolean" use="required" />
|
||||
</extension>
|
||||
</simpleContent>
|
||||
</complexType>
|
||||
|
||||
<complexType name="claimKeyType">
|
||||
<simpleContent>
|
||||
<extension base="token">
|
||||
<attribute name="validatorID" type="launch:validatorIDType"
|
||||
use="optional" />
|
||||
</extension>
|
||||
</simpleContent>
|
||||
</complexType>
|
||||
|
||||
<!-- <info> response elements -->
|
||||
<complexType name="infDataType">
|
||||
<sequence>
|
||||
<element name="phase" type="launch:phaseType" />
|
||||
<element name="applicationID" type="launch:applicationIDType"
|
||||
minOccurs="0" />
|
||||
<element name="status" type="launch:statusType" minOccurs="0" />
|
||||
<element ref="mark:abstractMark" minOccurs="0" maxOccurs="unbounded" />
|
||||
</sequence>
|
||||
</complexType>
|
||||
|
||||
</schema>
|
||||
@@ -1,246 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!-- Schema extracted from http://tools.ietf.org/html/draft-lozano-tmch-smd -->
|
||||
<schema
|
||||
targetNamespace="urn:ietf:params:xml:ns:mark-1.0"
|
||||
xmlns:mark="urn:ietf:params:xml:ns:mark-1.0"
|
||||
xmlns="http://www.w3.org/2001/XMLSchema"
|
||||
elementFormDefault="qualified">
|
||||
|
||||
<annotation>
|
||||
<documentation>
|
||||
Schema for representing a Trademark, also referred to
|
||||
as Mark.
|
||||
</documentation>
|
||||
</annotation>
|
||||
|
||||
<!--
|
||||
Abstract mark for replacement via substitution.
|
||||
-->
|
||||
<element name="abstractMark" type="mark:abstractMarkType"
|
||||
abstract="true"/>
|
||||
|
||||
<!--
|
||||
<mark:mark> element definition
|
||||
-->
|
||||
<element name="mark" type="mark:markType"
|
||||
substitutionGroup="mark:abstractMark"/>
|
||||
|
||||
<!--
|
||||
Empty type for use in extending for a mark
|
||||
-->
|
||||
<complexType name="abstractMarkType"/>
|
||||
|
||||
<!--
|
||||
<mark:mark> child elements
|
||||
-->
|
||||
<complexType name="markType">
|
||||
<complexContent>
|
||||
<extension base="mark:abstractMarkType">
|
||||
<sequence>
|
||||
<element name="trademark" type="mark:trademarkType"
|
||||
minOccurs="0" maxOccurs="unbounded"/>
|
||||
<element name="treatyOrStatute"
|
||||
type="mark:treatyOrStatuteType" minOccurs="0"
|
||||
maxOccurs="unbounded"/>
|
||||
<element name="court" type="mark:courtType" minOccurs="0"
|
||||
maxOccurs="unbounded"/>
|
||||
</sequence>
|
||||
</extension>
|
||||
</complexContent>
|
||||
</complexType>
|
||||
|
||||
<complexType name="holderType">
|
||||
<sequence>
|
||||
<element name="name" type="token" minOccurs="0"/>
|
||||
<element name="org" type="token" minOccurs="0"/>
|
||||
<element name="addr" type="mark:addrType"/>
|
||||
<element name="voice" type="mark:e164Type" minOccurs="0"/>
|
||||
<element name="fax" type="mark:e164Type" minOccurs="0"/>
|
||||
<element name="email" type="mark:minTokenType" minOccurs="0"/>
|
||||
</sequence>
|
||||
<attribute name="entitlement" type="mark:entitlementType"/>
|
||||
</complexType>
|
||||
|
||||
<complexType name="contactType">
|
||||
<sequence>
|
||||
<element name="name" type="token"/>
|
||||
<element name="org" type="token" minOccurs="0"/>
|
||||
<element name="addr" type="mark:addrType"/>
|
||||
<element name="voice" type="mark:e164Type"/>
|
||||
<element name="fax" type="mark:e164Type" minOccurs="0"/>
|
||||
<element name="email" type="mark:minTokenType"/>
|
||||
</sequence>
|
||||
<attribute name="type" type="mark:contactTypeType"/>
|
||||
</complexType>
|
||||
|
||||
<complexType name="trademarkType">
|
||||
<sequence>
|
||||
<element name="id" type="mark:idType"/>
|
||||
<element name="markName" type="token"/>
|
||||
<element name="holder" type="mark:holderType"
|
||||
maxOccurs="unbounded" />
|
||||
<element name="contact" type="mark:contactType" minOccurs="0"
|
||||
maxOccurs="unbounded"/>
|
||||
<element name="jurisdiction" type="mark:ccType"/>
|
||||
<element name="class" type="integer" minOccurs="0"
|
||||
maxOccurs="unbounded"/>
|
||||
<element name="label" type="mark:labelType" minOccurs="0"
|
||||
maxOccurs="unbounded"/>
|
||||
<element name="goodsAndServices" type="token" />
|
||||
<element name="apId" type="token" minOccurs="0"/>
|
||||
<element name="apDate" type="dateTime" minOccurs="0"/>
|
||||
<element name="regNum" type="token"/>
|
||||
<element name="regDate" type="dateTime"/>
|
||||
<element name="exDate" type="dateTime" minOccurs="0"/>
|
||||
</sequence>
|
||||
</complexType>
|
||||
|
||||
<complexType name="treatyOrStatuteType">
|
||||
<sequence>
|
||||
<element name="id" type="mark:idType"/>
|
||||
<element name="markName" type="token"/>
|
||||
<element name="holder" type="mark:holderType"
|
||||
maxOccurs="unbounded" />
|
||||
<element name="contact" type="mark:contactType" minOccurs="0"
|
||||
maxOccurs="unbounded"/>
|
||||
<element name="protection" type="mark:protectionType"
|
||||
maxOccurs="unbounded"/>
|
||||
<element name="label" type="mark:labelType" minOccurs="0"
|
||||
maxOccurs="unbounded"/>
|
||||
<element name="goodsAndServices" type="token" />
|
||||
<element name="refNum" type="token"/>
|
||||
<element name="proDate" type="dateTime"/>
|
||||
<element name="title" type="token"/>
|
||||
<element name="execDate" type="dateTime"/>
|
||||
</sequence>
|
||||
</complexType>
|
||||
|
||||
<complexType name="courtType">
|
||||
<sequence>
|
||||
<element name="id" type="mark:idType"/>
|
||||
<element name="markName" type="token"/>
|
||||
<element name="holder" type="mark:holderType"
|
||||
maxOccurs="unbounded" />
|
||||
<element name="contact" type="mark:contactType" minOccurs="0"
|
||||
maxOccurs="unbounded"/>
|
||||
<element name="label" type="mark:labelType" minOccurs="0"
|
||||
maxOccurs="unbounded"/>
|
||||
<element name="goodsAndServices" type="token" />
|
||||
<element name="refNum" type="token"/>
|
||||
<element name="proDate" type="dateTime"/>
|
||||
<element name="cc" type="mark:ccType"/>
|
||||
<element name="region" type="token" minOccurs="0"
|
||||
maxOccurs="unbounded"/>
|
||||
<element name="courtName" type="token"/>
|
||||
</sequence>
|
||||
</complexType>
|
||||
|
||||
<!--
|
||||
Address (<mark:addr>) child elements
|
||||
-->
|
||||
<complexType name="addrType">
|
||||
<sequence>
|
||||
<element name="street" type="token" minOccurs="1" maxOccurs="3"/>
|
||||
<element name="city" type="token"/>
|
||||
<element name="sp" type="token" minOccurs="0"/>
|
||||
<element name="pc" type="mark:pcType" minOccurs="0"/>
|
||||
<element name="cc" type="mark:ccType"/>
|
||||
</sequence>
|
||||
</complexType>
|
||||
|
||||
<!--
|
||||
<mark:protection> child elements
|
||||
-->
|
||||
<complexType name="protectionType">
|
||||
<sequence>
|
||||
<element name="cc" type="mark:ccType"/>
|
||||
<element name="region" type="token" minOccurs="0"/>
|
||||
<element name="ruling" type="mark:ccType"
|
||||
minOccurs="0" maxOccurs="unbounded"/>
|
||||
</sequence>
|
||||
</complexType>
|
||||
|
||||
<!--
|
||||
Postal code definition
|
||||
-->
|
||||
<simpleType name="pcType">
|
||||
<restriction base="token">
|
||||
<maxLength value="16"/>
|
||||
</restriction>
|
||||
</simpleType>
|
||||
|
||||
<!--
|
||||
Country code definition
|
||||
-->
|
||||
<simpleType name="ccType">
|
||||
<restriction base="token">
|
||||
<length value="2"/>
|
||||
</restriction>
|
||||
</simpleType>
|
||||
|
||||
<!--
|
||||
Phone number with extension definition
|
||||
-->
|
||||
<complexType name="e164Type">
|
||||
<simpleContent>
|
||||
<extension base="mark:e164StringType">
|
||||
<attribute name="x" type="token"/>
|
||||
</extension>
|
||||
</simpleContent>
|
||||
</complexType>
|
||||
|
||||
<!--
|
||||
Phone number with extension definition
|
||||
-->
|
||||
<simpleType name="e164StringType">
|
||||
<restriction base="token">
|
||||
<pattern value="(\+[0-9]{1,3}\.[0-9]{1,14})?"/>
|
||||
<maxLength value="17"/>
|
||||
</restriction>
|
||||
</simpleType>
|
||||
|
||||
<!--
|
||||
Id type definition
|
||||
-->
|
||||
<simpleType name="idType">
|
||||
<restriction base="token">
|
||||
<pattern value="\d+-\d+"/>
|
||||
</restriction>
|
||||
</simpleType>
|
||||
|
||||
<!--
|
||||
DNS label type definition
|
||||
-->
|
||||
<simpleType name="labelType">
|
||||
<restriction base="token">
|
||||
<minLength value="1"/>
|
||||
<maxLength value="63"/>
|
||||
<pattern value="[a-zA-Z0-9]([a-zA-Z0-9\-]*[a-zA-Z0-9])?"/>
|
||||
</restriction>
|
||||
</simpleType>
|
||||
|
||||
<!--
|
||||
Type used for email addresses
|
||||
-->
|
||||
<simpleType name="minTokenType">
|
||||
<restriction base="token">
|
||||
<minLength value="1"/>
|
||||
</restriction>
|
||||
</simpleType>
|
||||
|
||||
<simpleType name="entitlementType">
|
||||
<restriction base="token">
|
||||
<enumeration value="owner"/>
|
||||
<enumeration value="assignee"/>
|
||||
<enumeration value="licensee"/>
|
||||
</restriction>
|
||||
</simpleType>
|
||||
|
||||
<simpleType name="contactTypeType">
|
||||
<restriction base="token">
|
||||
<enumeration value="owner"/>
|
||||
<enumeration value="agent"/>
|
||||
<enumeration value="thirdparty"/>
|
||||
</restriction>
|
||||
</simpleType>
|
||||
</schema>
|
||||
@@ -1,26 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<schema xmlns="http://www.w3.org/2001/XMLSchema" xmlns:metadata="urn:google:params:xml:ns:metadata-1.0"
|
||||
targetNamespace="urn:google:params:xml:ns:metadata-1.0" elementFormDefault="qualified">
|
||||
|
||||
<annotation>
|
||||
<documentation>
|
||||
Extensible Provisioning Protocol v1.0
|
||||
Domain name extension schema for annotating EPP operations with metadata.
|
||||
This is a proprietary, internal-only, non-public extension only for use
|
||||
inside the Google registry.
|
||||
</documentation>
|
||||
</annotation>
|
||||
|
||||
<!-- Child elements found in EPP commands. -->
|
||||
<element name="metadata" type="metadata:metadata" />
|
||||
|
||||
<!-- Child elements for all commands -->
|
||||
<complexType name="metadata">
|
||||
<all>
|
||||
<element name="reason" type="string" minOccurs="0" />
|
||||
<element name="requestedByRegistrar" type="boolean" minOccurs="1" />
|
||||
<element name="anchorTenant" type="boolean" minOccurs="0" default="false" />
|
||||
</all>
|
||||
</complexType>
|
||||
|
||||
</schema>
|
||||
@@ -1,121 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<schema targetNamespace="urn:ietf:params:xml:ns:rdeDomain-1.0"
|
||||
xmlns:rdeDomain="urn:ietf:params:xml:ns:rdeDomain-1.0"
|
||||
xmlns:rde="urn:ietf:params:xml:ns:rde-1.0"
|
||||
xmlns:rdeIDN="urn:ietf:params:xml:ns:rdeIDN-1.0"
|
||||
xmlns:rgp="urn:ietf:params:xml:ns:rgp-1.0"
|
||||
xmlns:secDNS="urn:ietf:params:xml:ns:secDNS-1.1"
|
||||
xmlns:domain="urn:ietf:params:xml:ns:domain-1.0"
|
||||
xmlns:eppcom="urn:ietf:params:xml:ns:eppcom-1.0"
|
||||
xmlns="http://www.w3.org/2001/XMLSchema"
|
||||
elementFormDefault="qualified">
|
||||
|
||||
<import namespace="urn:ietf:params:xml:ns:eppcom-1.0"
|
||||
schemaLocation="eppcom.xsd"/>
|
||||
<import namespace="urn:ietf:params:xml:ns:domain-1.0"
|
||||
schemaLocation="domain.xsd"/>
|
||||
<import namespace="urn:ietf:params:xml:ns:secDNS-1.1"
|
||||
schemaLocation="secdns.xsd"/>
|
||||
<import namespace="urn:ietf:params:xml:ns:rgp-1.0"
|
||||
schemaLocation="rgp.xsd"/>
|
||||
<import namespace="urn:ietf:params:xml:ns:rde-1.0"
|
||||
schemaLocation="rde.xsd"/>
|
||||
<import namespace="urn:ietf:params:xml:ns:rdeIDN-1.0"
|
||||
schemaLocation="rde-idn.xsd"/>
|
||||
|
||||
<annotation>
|
||||
<documentation>
|
||||
Registry Data Escrow Domain provisioning schema
|
||||
</documentation>
|
||||
</annotation>
|
||||
|
||||
<element name="abstractDomain"
|
||||
type="rdeDomain:abstractContentType"
|
||||
substitutionGroup="rde:content" abstract="true"/>
|
||||
<element name="domain"
|
||||
substitutionGroup="rdeDomain:abstractDomain"/>
|
||||
<element name="delete"
|
||||
type="rdeDomain:deleteType"
|
||||
substitutionGroup="rde:delete"/>
|
||||
|
||||
<!-- Content Type -->
|
||||
<complexType name="abstractContentType">
|
||||
<complexContent>
|
||||
<extension base="rde:contentType">
|
||||
<sequence>
|
||||
<element name="name"
|
||||
type="eppcom:labelType"/>
|
||||
<element name="roid"
|
||||
type="eppcom:roidType"/>
|
||||
<element name="uName"
|
||||
type="eppcom:labelType" minOccurs="0"/>
|
||||
<element name="idnTableId"
|
||||
type="rdeIDN:idType" minOccurs="0"/>
|
||||
<element name="originalName"
|
||||
type="eppcom:labelType" minOccurs="0"/>
|
||||
<element name="status"
|
||||
type="domain:statusType" maxOccurs="11"/>
|
||||
<element name="rgpStatus"
|
||||
type="rgp:statusType" minOccurs="0"
|
||||
maxOccurs="unbounded"/>
|
||||
<element name="registrant"
|
||||
type="eppcom:clIDType" minOccurs="0"/>
|
||||
<element name="contact"
|
||||
type="domain:contactType"
|
||||
minOccurs="0" maxOccurs="unbounded"/>
|
||||
<element name="ns"
|
||||
type="domain:nsType" minOccurs="0"/>
|
||||
<element name="clID"
|
||||
type="eppcom:clIDType"/>
|
||||
<element name="crRr"
|
||||
type="rde:rrType"/>
|
||||
<element name="crDate"
|
||||
type="dateTime" minOccurs="0"/>
|
||||
<element name="exDate"
|
||||
type="dateTime" minOccurs="0"/>
|
||||
<element name="upRr"
|
||||
type="rde:rrType" minOccurs="0"/>
|
||||
<element name="upDate"
|
||||
type="dateTime" minOccurs="0"/>
|
||||
<element name="secDNS"
|
||||
type="secDNS:dsOrKeyType" minOccurs="0"/>
|
||||
<element name="trDate"
|
||||
type="dateTime" minOccurs="0"/>
|
||||
<element name="trnData"
|
||||
type="rdeDomain:transferDataType"
|
||||
minOccurs="0"/>
|
||||
</sequence>
|
||||
</extension>
|
||||
</complexContent>
|
||||
</complexType>
|
||||
|
||||
<complexType name="transferDataType">
|
||||
<sequence>
|
||||
<element name="trStatus"
|
||||
type="eppcom:trStatusType"/>
|
||||
<element name="reRr"
|
||||
type="rde:rrType"/>
|
||||
<element name="reDate"
|
||||
type="dateTime"/>
|
||||
<element name="acRr"
|
||||
type="rde:rrType"/>
|
||||
<element name="acDate"
|
||||
type="dateTime"/>
|
||||
<element name="exDate"
|
||||
type="dateTime" minOccurs="0"/>
|
||||
</sequence>
|
||||
</complexType>
|
||||
|
||||
<!-- Delete Type -->
|
||||
<complexType name="deleteType">
|
||||
<complexContent>
|
||||
<extension base="rde:deleteType">
|
||||
<sequence>
|
||||
<element name="name"
|
||||
type="eppcom:labelType" minOccurs="0"
|
||||
maxOccurs="unbounded"/>
|
||||
</sequence>
|
||||
</extension>
|
||||
</complexContent>
|
||||
</complexType>
|
||||
</schema>
|
||||
@@ -1,50 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<schema targetNamespace="urn:ietf:params:xml:ns:rdeEppParams-1.0"
|
||||
xmlns:rdeEppParams="urn:ietf:params:xml:ns:rdeEppParams-1.0"
|
||||
xmlns:rde="urn:ietf:params:xml:ns:rde-1.0"
|
||||
xmlns:epp="urn:ietf:params:xml:ns:epp-1.0"
|
||||
xmlns:eppcom="urn:ietf:params:xml:ns:eppcom-1.0"
|
||||
xmlns="http://www.w3.org/2001/XMLSchema"
|
||||
elementFormDefault="qualified">
|
||||
|
||||
<import namespace="urn:ietf:params:xml:ns:epp-1.0"
|
||||
schemaLocation="epp.xsd"/>
|
||||
<import namespace="urn:ietf:params:xml:ns:eppcom-1.0"
|
||||
schemaLocation="eppcom.xsd"/>
|
||||
<import namespace="urn:ietf:params:xml:ns:rde-1.0"
|
||||
schemaLocation="rde.xsd"/>
|
||||
|
||||
<annotation>
|
||||
<documentation>
|
||||
Registry Data Escrow EPP Parameters schema
|
||||
</documentation>
|
||||
</annotation>
|
||||
|
||||
<!-- Content Type -->
|
||||
<element name="eppParams"
|
||||
substitutionGroup="rdeEppParams:abstractEppParams"/>
|
||||
|
||||
<!-- Abstract Content Type -->
|
||||
<element name="abstractEppParams"
|
||||
type="rdeEppParams:abstractContentType"
|
||||
substitutionGroup="rde:content" abstract="true"/>
|
||||
<complexType name="abstractContentType">
|
||||
<complexContent>
|
||||
<extension base="rde:contentType">
|
||||
<sequence>
|
||||
<element name="version" type="epp:versionType"
|
||||
maxOccurs="unbounded"/>
|
||||
<element name="lang"
|
||||
type="language" maxOccurs="unbounded"/>
|
||||
<element name="objURI"
|
||||
type="anyURI" maxOccurs="unbounded"/>
|
||||
<element name="svcExtension"
|
||||
type="epp:extURIType"
|
||||
minOccurs="0"/>
|
||||
<element name="dcp"
|
||||
type="epp:dcpType"/>
|
||||
</sequence>
|
||||
</extension>
|
||||
</complexContent>
|
||||
</complexType>
|
||||
</schema>
|
||||
@@ -1,44 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<schema targetNamespace="urn:ietf:params:xml:ns:rdeHeader-1.0"
|
||||
xmlns:rdeHeader="urn:ietf:params:xml:ns:rdeHeader-1.0"
|
||||
xmlns:rde="urn:ietf:params:xml:ns:rde-1.0"
|
||||
xmlns:eppcom="urn:ietf:params:xml:ns:eppcom-1.0"
|
||||
xmlns="http://www.w3.org/2001/XMLSchema"
|
||||
elementFormDefault="qualified">
|
||||
|
||||
<import namespace="urn:ietf:params:xml:ns:eppcom-1.0"
|
||||
schemaLocation="eppcom.xsd"/>
|
||||
<import namespace="urn:ietf:params:xml:ns:rde-1.0"
|
||||
schemaLocation="rde.xsd"/>
|
||||
|
||||
<annotation>
|
||||
<documentation>
|
||||
Registry Data Escrow Header schema
|
||||
</documentation>
|
||||
</annotation>
|
||||
|
||||
<!-- Root Element -->
|
||||
<element name="header" type="rdeHeader:contentType"
|
||||
substitutionGroup="rde:content"/>
|
||||
|
||||
<!-- Content Type -->
|
||||
<complexType name="contentType">
|
||||
<complexContent>
|
||||
<extension base="rde:contentType">
|
||||
<sequence>
|
||||
<element name="tld" type="eppcom:labelType"/>
|
||||
<element name="count" type="rdeHeader:countType"
|
||||
maxOccurs="unbounded"/>
|
||||
</sequence>
|
||||
</extension>
|
||||
</complexContent>
|
||||
</complexType>
|
||||
|
||||
<complexType name="countType">
|
||||
<simpleContent>
|
||||
<extension base="long">
|
||||
<attribute name="uri" type="anyURI"/>
|
||||
</extension>
|
||||
</simpleContent>
|
||||
</complexType>
|
||||
</schema>
|
||||
@@ -1,73 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<schema targetNamespace="urn:ietf:params:xml:ns:rdeHost-1.0"
|
||||
xmlns:rdeHost="urn:ietf:params:xml:ns:rdeHost-1.0"
|
||||
xmlns:rde="urn:ietf:params:xml:ns:rde-1.0"
|
||||
xmlns:host="urn:ietf:params:xml:ns:host-1.0"
|
||||
xmlns:eppcom="urn:ietf:params:xml:ns:eppcom-1.0"
|
||||
xmlns="http://www.w3.org/2001/XMLSchema"
|
||||
elementFormDefault="qualified">
|
||||
|
||||
<import namespace="urn:ietf:params:xml:ns:eppcom-1.0"
|
||||
schemaLocation="eppcom.xsd"/>
|
||||
<import namespace="urn:ietf:params:xml:ns:host-1.0"
|
||||
schemaLocation="host.xsd"/>
|
||||
<import namespace="urn:ietf:params:xml:ns:rde-1.0"
|
||||
schemaLocation="rde.xsd"/>
|
||||
|
||||
<annotation>
|
||||
<documentation>
|
||||
Registry Data Escrow Host provisioning schema
|
||||
</documentation>
|
||||
</annotation>
|
||||
|
||||
<element name="abstractHost" type="rdeHost:abstractContentType"
|
||||
substitutionGroup="rde:content" abstract="true"/>
|
||||
<element name="host" substitutionGroup="rdeHost:abstractHost" />
|
||||
<element name="delete" type="rdeHost:deleteType"
|
||||
substitutionGroup="rde:delete"/>
|
||||
|
||||
<!-- Content Type -->
|
||||
<complexType name="abstractContentType">
|
||||
<complexContent>
|
||||
<extension base="rde:contentType">
|
||||
<sequence>
|
||||
<element name="name"
|
||||
type="eppcom:labelType"/>
|
||||
<element name="roid"
|
||||
type="eppcom:roidType"/>
|
||||
<element name="status"
|
||||
type="host:statusType" maxOccurs="7"/>
|
||||
<element name="addr"
|
||||
type="host:addrType" minOccurs="0"
|
||||
maxOccurs="unbounded"/>
|
||||
<element name="clID"
|
||||
type="eppcom:clIDType"/>
|
||||
<element name="crRr"
|
||||
type="rde:rrType"/>
|
||||
<element name="crDate"
|
||||
type="dateTime"/>
|
||||
<element name="upRr"
|
||||
type="rde:rrType" minOccurs="0"/>
|
||||
<element name="upDate"
|
||||
type="dateTime" minOccurs="0"/>
|
||||
<element name="trDate"
|
||||
type="dateTime" minOccurs="0"/>
|
||||
</sequence>
|
||||
</extension>
|
||||
</complexContent>
|
||||
</complexType>
|
||||
|
||||
<!-- Delete Type -->
|
||||
<complexType name="deleteType">
|
||||
<complexContent>
|
||||
<extension base="rde:deleteType">
|
||||
<choice minOccurs="0" maxOccurs="unbounded">
|
||||
<element name="name"
|
||||
type="eppcom:labelType"/>
|
||||
<element name="roid"
|
||||
type="eppcom:roidType"/>
|
||||
</choice>
|
||||
</extension>
|
||||
</complexContent>
|
||||
</complexType>
|
||||
</schema>
|
||||
@@ -1,53 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<schema targetNamespace="urn:ietf:params:xml:ns:rdeIDN-1.0"
|
||||
xmlns:rdeIDN="urn:ietf:params:xml:ns:rdeIDN-1.0"
|
||||
xmlns:rde="urn:ietf:params:xml:ns:rde-1.0"
|
||||
xmlns="http://www.w3.org/2001/XMLSchema"
|
||||
elementFormDefault="qualified">
|
||||
|
||||
<import namespace="urn:ietf:params:xml:ns:rde-1.0"
|
||||
schemaLocation="rde.xsd"/>
|
||||
|
||||
<annotation>
|
||||
<documentation>
|
||||
Registry Data Escrow IDN provisioning schema
|
||||
</documentation>
|
||||
</annotation>
|
||||
|
||||
<element name="idnTableRef" type="rdeIDN:contentType"
|
||||
substitutionGroup="rde:content"/>
|
||||
<element name="delete" type="rdeIDN:deleteType"
|
||||
substitutionGroup="rde:delete"/>
|
||||
|
||||
<!-- Content Types -->
|
||||
<complexType name="contentType">
|
||||
<complexContent>
|
||||
<extension base="rde:contentType">
|
||||
<sequence>
|
||||
<element name="url" type="anyURI"/>
|
||||
<element name="urlPolicy" type="anyURI"/>
|
||||
</sequence>
|
||||
<attribute name="id" type="rdeIDN:idType" use="required"/>
|
||||
</extension>
|
||||
</complexContent>
|
||||
</complexType>
|
||||
|
||||
<complexType name="deleteType">
|
||||
<complexContent>
|
||||
<extension base="rde:deleteType">
|
||||
<sequence>
|
||||
<element name="id" type="rdeIDN:idType"/>
|
||||
</sequence>
|
||||
</extension>
|
||||
</complexContent>
|
||||
</complexType>
|
||||
|
||||
<!-- Simple Types -->
|
||||
<simpleType name="idType">
|
||||
<restriction base="token">
|
||||
<minLength value="1"/>
|
||||
<maxLength value="64"/>
|
||||
</restriction>
|
||||
</simpleType>
|
||||
|
||||
</schema>
|
||||
@@ -1,80 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<schema targetNamespace="urn:ietf:params:xml:ns:rdeNNDN-1.0"
|
||||
xmlns:rdeNNDN="urn:ietf:params:xml:ns:rdeNNDN-1.0"
|
||||
xmlns:rde="urn:ietf:params:xml:ns:rde-1.0"
|
||||
xmlns:rdeIDN="urn:ietf:params:xml:ns:rdeIDN-1.0"
|
||||
xmlns:eppcom="urn:ietf:params:xml:ns:eppcom-1.0"
|
||||
xmlns="http://www.w3.org/2001/XMLSchema"
|
||||
elementFormDefault="qualified">
|
||||
|
||||
<import namespace="urn:ietf:params:xml:ns:eppcom-1.0"
|
||||
schemaLocation="eppcom.xsd"/>
|
||||
<import namespace="urn:ietf:params:xml:ns:rde-1.0"
|
||||
schemaLocation="rde.xsd"/>
|
||||
<import namespace="urn:ietf:params:xml:ns:rdeIDN-1.0"
|
||||
schemaLocation="rde-idn.xsd"/>
|
||||
|
||||
<annotation>
|
||||
<documentation>
|
||||
Registry Data Escrow NNDN provisioning schema
|
||||
</documentation>
|
||||
</annotation>
|
||||
|
||||
<element name="abstractNNDN" type="rdeNNDN:abstractContentType"
|
||||
substitutionGroup="rde:content" abstract="true"/>
|
||||
<element name="NNDN" substitutionGroup="rdeNNDN:abstractNNDN"/>
|
||||
<element name="delete" type="rdeNNDN:deleteType"
|
||||
substitutionGroup="rde:delete"/>
|
||||
|
||||
<!-- Content Type -->
|
||||
<complexType name="abstractContentType">
|
||||
<complexContent>
|
||||
<extension base="rde:contentType">
|
||||
<sequence>
|
||||
<element name="aName"
|
||||
type="eppcom:labelType"/>
|
||||
<element name="uName"
|
||||
type="eppcom:labelType" minOccurs="0"/>
|
||||
<element name="idnTableId"
|
||||
type="rdeIDN:idType" minOccurs="0"/>
|
||||
<element name="originalName"
|
||||
type="eppcom:labelType" minOccurs="0"/>
|
||||
<element name="nameState"
|
||||
type="rdeNNDN:nameState"/>
|
||||
<element name="crDate"
|
||||
type="dateTime"/>
|
||||
</sequence>
|
||||
</extension>
|
||||
</complexContent>
|
||||
</complexType>
|
||||
|
||||
<simpleType name="nameStateValue">
|
||||
<restriction base="token">
|
||||
<enumeration value="withheld" />
|
||||
<enumeration value="blocked" />
|
||||
<enumeration value="mirrored" />
|
||||
</restriction>
|
||||
</simpleType>
|
||||
|
||||
<complexType name="nameState">
|
||||
<simpleContent>
|
||||
<extension base="rdeNNDN:nameStateValue">
|
||||
<attribute name="mirroringNS"
|
||||
type="boolean" default="true"/>
|
||||
</extension>
|
||||
</simpleContent>
|
||||
</complexType>
|
||||
|
||||
<!-- Delete Type -->
|
||||
<complexType name="deleteType">
|
||||
<complexContent>
|
||||
<extension base="rde:deleteType">
|
||||
<sequence>
|
||||
<element name="aName"
|
||||
type="eppcom:labelType" minOccurs="0"
|
||||
maxOccurs="unbounded"/>
|
||||
</sequence>
|
||||
</extension>
|
||||
</complexContent>
|
||||
</complexType>
|
||||
</schema>
|
||||
@@ -1,48 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<schema targetNamespace="urn:ietf:params:xml:ns:rdeNotification-1.0"
|
||||
xmlns:rdeNotification="urn:ietf:params:xml:ns:rdeNotification-1.0"
|
||||
xmlns:rdeReport="urn:ietf:params:xml:ns:rdeReport-1.0"
|
||||
xmlns="http://www.w3.org/2001/XMLSchema"
|
||||
elementFormDefault="qualified">
|
||||
|
||||
<import namespace="urn:ietf:params:xml:ns:rdeReport-1.0"
|
||||
schemaLocation="rde-report.xsd"/>
|
||||
|
||||
<annotation>
|
||||
<documentation>
|
||||
Registry Data Escrow Notification schema
|
||||
</documentation>
|
||||
</annotation>
|
||||
|
||||
<!-- Root Element -->
|
||||
<element name="notification" type="rdeNotification:notificationType"/>
|
||||
|
||||
<!-- Notification -->
|
||||
<complexType name="notificationType">
|
||||
<sequence>
|
||||
<element name="deaName" type="rdeNotification:nameType"/>
|
||||
<element name="version" type="unsignedShort"/>
|
||||
<element name="repDate" type="date"/>
|
||||
<element name="status" type="rdeNotification:statusType"/>
|
||||
<element name="reDate" type="dateTime" minOccurs="0"/>
|
||||
<element name="vaDate" type="dateTime" minOccurs="0"/>
|
||||
<element name="lastFullDate" type="date" minOccurs="0"/>
|
||||
<element ref="rdeReport:report" minOccurs="0"/>
|
||||
</sequence>
|
||||
</complexType>
|
||||
|
||||
<simpleType name="nameType">
|
||||
<restriction base="normalizedString">
|
||||
<minLength value="1" />
|
||||
<maxLength value="255" />
|
||||
</restriction>
|
||||
</simpleType>
|
||||
|
||||
<simpleType name="statusType">
|
||||
<restriction base="token">
|
||||
<enumeration value="DVPN"/>
|
||||
<enumeration value="DVFN"/>
|
||||
<enumeration value="DRFN"/>
|
||||
</restriction>
|
||||
</simpleType>
|
||||
</schema>
|
||||
@@ -1,28 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<schema targetNamespace="urn:ietf:params:xml:ns:rdePolicy-1.0"
|
||||
xmlns:rdePolicy="urn:ietf:params:xml:ns:rdePolicy-1.0"
|
||||
xmlns:rde="urn:ietf:params:xml:ns:rde-1.0"
|
||||
xmlns="http://www.w3.org/2001/XMLSchema"
|
||||
elementFormDefault="qualified">
|
||||
|
||||
<import namespace="urn:ietf:params:xml:ns:rde-1.0"
|
||||
schemaLocation="rde.xsd"/>
|
||||
|
||||
<annotation>
|
||||
<documentation>
|
||||
Registry Data Escrow Policy schema
|
||||
</documentation>
|
||||
</annotation>
|
||||
|
||||
<element name="policy" type="rdePolicy:policyType"
|
||||
substitutionGroup="rde:content"/>
|
||||
|
||||
<complexType name="policyType">
|
||||
<complexContent>
|
||||
<extension base="rde:contentType">
|
||||
<attribute name="scope" type="token" use="required"/>
|
||||
<attribute name="element" type="anyURI" use="required"/>
|
||||
</extension>
|
||||
</complexContent>
|
||||
</complexType>
|
||||
</schema>
|
||||
@@ -1,162 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<schema targetNamespace="urn:ietf:params:xml:ns:rdeRegistrar-1.0"
|
||||
xmlns:rdeRegistrar="urn:ietf:params:xml:ns:rdeRegistrar-1.0"
|
||||
xmlns:rde="urn:ietf:params:xml:ns:rde-1.0"
|
||||
xmlns:domain="urn:ietf:params:xml:ns:domain-1.0"
|
||||
xmlns:eppcom="urn:ietf:params:xml:ns:eppcom-1.0"
|
||||
xmlns="http://www.w3.org/2001/XMLSchema"
|
||||
elementFormDefault="qualified">
|
||||
|
||||
<!-- Import common element types. -->
|
||||
<import namespace="urn:ietf:params:xml:ns:eppcom-1.0"
|
||||
schemaLocation="eppcom.xsd"/>
|
||||
<import namespace="urn:ietf:params:xml:ns:domain-1.0"
|
||||
schemaLocation="domain.xsd"/>
|
||||
<import namespace="urn:ietf:params:xml:ns:rde-1.0"
|
||||
schemaLocation="rde.xsd"/>
|
||||
|
||||
<annotation>
|
||||
<documentation>
|
||||
Registry Data Escrow registrar provisioning schema
|
||||
</documentation>
|
||||
</annotation>
|
||||
|
||||
<element name="abstractRegistrar"
|
||||
type="rdeRegistrar:abstractContentType"
|
||||
substitutionGroup="rde:content" abstract="true"/>
|
||||
<element name="registrar"
|
||||
substitutionGroup="rdeRegistrar:abstractRegistrar"/>
|
||||
<element name="delete" type="rdeRegistrar:deleteType"
|
||||
substitutionGroup="rde:delete"/>
|
||||
|
||||
<!-- Content Type -->
|
||||
<complexType name="abstractContentType">
|
||||
<complexContent>
|
||||
<extension base="rde:contentType">
|
||||
<sequence>
|
||||
<element name="id"
|
||||
type="eppcom:clIDType"/>
|
||||
<element name="name"
|
||||
type="rdeRegistrar:nameType"/>
|
||||
<element name="gurid"
|
||||
type="positiveInteger" minOccurs="0"/>
|
||||
<element name="status"
|
||||
type="rdeRegistrar:statusType"/>
|
||||
<element name="postalInfo"
|
||||
type="rdeRegistrar:postalInfoType"
|
||||
maxOccurs="2"/>
|
||||
<element name="voice"
|
||||
type="eppcom:e164Type" minOccurs="0"/>
|
||||
<element name="fax"
|
||||
type="eppcom:e164Type" minOccurs="0"/>
|
||||
<element name="email"
|
||||
type="eppcom:minTokenType"/>
|
||||
<element name="url"
|
||||
type="anyURI" minOccurs="0"/>
|
||||
<element name="whoisInfo"
|
||||
type="rdeRegistrar:whoisInfoType" minOccurs="0"/>
|
||||
<element name="crDate"
|
||||
type="dateTime"/>
|
||||
<element name="upDate"
|
||||
type="dateTime" minOccurs="0"/>
|
||||
</sequence>
|
||||
</extension>
|
||||
</complexContent>
|
||||
</complexType>
|
||||
|
||||
<simpleType name="nameType">
|
||||
<restriction base="normalizedString">
|
||||
<minLength value="1" />
|
||||
<maxLength value="255" />
|
||||
</restriction>
|
||||
</simpleType>
|
||||
|
||||
<simpleType name="statusType">
|
||||
<restriction base="token">
|
||||
<enumeration value="ok"/>
|
||||
<enumeration value="readonly"/>
|
||||
<enumeration value="terminated"/>
|
||||
</restriction>
|
||||
</simpleType>
|
||||
|
||||
<complexType name="postalInfoType">
|
||||
<sequence>
|
||||
<element name="addr"
|
||||
type="rdeRegistrar:addrType" />
|
||||
</sequence>
|
||||
<attribute name="type"
|
||||
type="rdeRegistrar:postalInfoEnumType"
|
||||
use="required" />
|
||||
</complexType>
|
||||
|
||||
<simpleType name="postalInfoEnumType">
|
||||
<restriction base="token">
|
||||
<enumeration value="loc" />
|
||||
<enumeration value="int" />
|
||||
</restriction>
|
||||
</simpleType>
|
||||
|
||||
<complexType name="addrType">
|
||||
<sequence>
|
||||
<element name="street"
|
||||
type="rdeRegistrar:optPostalLineType"
|
||||
minOccurs="0" maxOccurs="3" />
|
||||
<element name="city"
|
||||
type="rdeRegistrar:postalLineType" />
|
||||
<element name="sp"
|
||||
type="rdeRegistrar:optPostalLineType"
|
||||
minOccurs="0" />
|
||||
<element name="pc"
|
||||
type="rdeRegistrar:pcType" minOccurs="0" />
|
||||
<element name="cc"
|
||||
type="rdeRegistrar:ccType" />
|
||||
</sequence>
|
||||
</complexType>
|
||||
|
||||
<simpleType name="postalLineType">
|
||||
<restriction base="normalizedString">
|
||||
<minLength value="1" />
|
||||
<maxLength value="255" />
|
||||
</restriction>
|
||||
</simpleType>
|
||||
|
||||
<simpleType name="optPostalLineType">
|
||||
<restriction base="normalizedString">
|
||||
<maxLength value="255" />
|
||||
</restriction>
|
||||
</simpleType>
|
||||
|
||||
<simpleType name="pcType">
|
||||
<restriction base="token">
|
||||
<maxLength value="16" />
|
||||
</restriction>
|
||||
</simpleType>
|
||||
|
||||
<simpleType name="ccType">
|
||||
<restriction base="token">
|
||||
<length value="2" />
|
||||
</restriction>
|
||||
</simpleType>
|
||||
|
||||
<complexType name="whoisInfoType">
|
||||
<sequence>
|
||||
<element name="name"
|
||||
type="eppcom:labelType" minOccurs="0"/>
|
||||
<element name="url"
|
||||
type="anyURI" minOccurs="0"/>
|
||||
</sequence>
|
||||
</complexType>
|
||||
|
||||
<!-- Delete Type -->
|
||||
<complexType name="deleteType">
|
||||
<complexContent>
|
||||
<extension base="rde:deleteType">
|
||||
<sequence>
|
||||
<element name="id"
|
||||
type="eppcom:clIDType" minOccurs="0"
|
||||
maxOccurs="unbounded"/>
|
||||
</sequence>
|
||||
</extension>
|
||||
</complexContent>
|
||||
</complexType>
|
||||
</schema>
|
||||
@@ -1,37 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<schema targetNamespace="urn:ietf:params:xml:ns:rdeReport-1.0"
|
||||
xmlns:rdeReport="urn:ietf:params:xml:ns:rdeReport-1.0"
|
||||
xmlns:rdeHeader="urn:ietf:params:xml:ns:rdeHeader-1.0"
|
||||
xmlns:rde="urn:ietf:params:xml:ns:rde-1.0"
|
||||
xmlns="http://www.w3.org/2001/XMLSchema"
|
||||
elementFormDefault="qualified">
|
||||
|
||||
<import namespace="urn:ietf:params:xml:ns:rde-1.0"
|
||||
schemaLocation="rde.xsd"/>
|
||||
<import namespace="urn:ietf:params:xml:ns:rdeHeader-1.0"
|
||||
schemaLocation="rde-header.xsd" />
|
||||
|
||||
<annotation>
|
||||
<documentation>
|
||||
Registry Data Escrow Report schema
|
||||
</documentation>
|
||||
</annotation>
|
||||
|
||||
<!-- Root Element -->
|
||||
<element name="report" type="rdeReport:reportType"/>
|
||||
|
||||
<!-- Report Type -->
|
||||
<complexType name="reportType">
|
||||
<sequence>
|
||||
<element name="id" type="rde:depositIdType"/>
|
||||
<element name="version" type="unsignedShort"/>
|
||||
<element name="rydeSpecEscrow" type="token"/>
|
||||
<element name="rydeSpecMapping" type="token"/>
|
||||
<element name="resend" type="unsignedShort"/>
|
||||
<element name="crDate" type="dateTime"/>
|
||||
<element name="kind" type="rde:depositTypeType"/>
|
||||
<element name="watermark" type="dateTime"/>
|
||||
<element ref="rdeHeader:header"/>
|
||||
</sequence>
|
||||
</complexType>
|
||||
</schema>
|
||||
@@ -1,100 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<schema targetNamespace="urn:ietf:params:xml:ns:rde-1.0"
|
||||
xmlns:rde="urn:ietf:params:xml:ns:rde-1.0"
|
||||
xmlns:eppcom="urn:ietf:params:xml:ns:eppcom-1.0"
|
||||
xmlns="http://www.w3.org/2001/XMLSchema"
|
||||
elementFormDefault="qualified">
|
||||
|
||||
<annotation>
|
||||
<documentation>
|
||||
Registry Data Escrow schema
|
||||
</documentation>
|
||||
</annotation>
|
||||
|
||||
<import namespace="urn:ietf:params:xml:ns:eppcom-1.0" schemaLocation="eppcom.xsd"/>
|
||||
|
||||
<!-- Root element -->
|
||||
<element name="deposit" type="rde:escrowDepositType"/>
|
||||
|
||||
<!-- RDE types -->
|
||||
<complexType name="escrowDepositType">
|
||||
<sequence>
|
||||
<element name="watermark" type="dateTime"/>
|
||||
<element name="rdeMenu" type="rde:rdeMenuType"/>
|
||||
<element name="deletes" type="rde:deletesType" minOccurs="0"/>
|
||||
<element name="contents" type="rde:contentsType"/>
|
||||
</sequence>
|
||||
<attribute name="type" type="rde:depositTypeType" use="required"/>
|
||||
<attribute name="id" type="rde:depositIdType" use="required"/>
|
||||
<attribute name="prevId" type="rde:depositIdType"/>
|
||||
<attribute name="resend" type="unsignedShort" default="0"/>
|
||||
</complexType>
|
||||
|
||||
<!-- Menu type -->
|
||||
<complexType name="rdeMenuType">
|
||||
<sequence>
|
||||
<element name="version" type="rde:versionType"/>
|
||||
<element name="objURI" type="anyURI" maxOccurs="unbounded"/>
|
||||
</sequence>
|
||||
</complexType>
|
||||
|
||||
<!-- Deletes Type -->
|
||||
<complexType name="deletesType">
|
||||
<sequence minOccurs="0" maxOccurs="unbounded">
|
||||
<element ref="rde:delete"/>
|
||||
</sequence>
|
||||
</complexType>
|
||||
|
||||
<element name="delete" type="rde:deleteType" abstract="true"/>
|
||||
<complexType name="deleteType">
|
||||
<complexContent>
|
||||
<restriction base="anyType"/>
|
||||
</complexContent>
|
||||
</complexType>
|
||||
|
||||
<!-- Contents Type -->
|
||||
<complexType name="contentsType">
|
||||
<sequence maxOccurs="unbounded">
|
||||
<element ref="rde:content"/>
|
||||
</sequence>
|
||||
</complexType>
|
||||
|
||||
<element name="content" type="rde:contentType" abstract="true"/>
|
||||
<complexType name="contentType">
|
||||
<complexContent>
|
||||
<restriction base="anyType"/>
|
||||
</complexContent>
|
||||
</complexType>
|
||||
|
||||
<!-- Type of deposit -->
|
||||
<simpleType name="depositTypeType">
|
||||
<restriction base="token">
|
||||
<enumeration value="FULL"/>
|
||||
<enumeration value="INCR"/>
|
||||
<enumeration value="DIFF"/>
|
||||
</restriction>
|
||||
</simpleType>
|
||||
|
||||
<!-- Deposit identifier type -->
|
||||
<simpleType name="depositIdType">
|
||||
<restriction base="token">
|
||||
<pattern value="\w{1,13}"/>
|
||||
</restriction>
|
||||
</simpleType>
|
||||
|
||||
<!-- A RDE version number is a dotted pair of decimal numbers -->
|
||||
<simpleType name="versionType">
|
||||
<restriction base="token">
|
||||
<pattern value="[1-9]+\.[0-9]+"/>
|
||||
<enumeration value="1.0"/>
|
||||
</restriction>
|
||||
</simpleType>
|
||||
|
||||
<complexType name="rrType">
|
||||
<simpleContent>
|
||||
<extension base="eppcom:clIDType">
|
||||
<attribute name="client" type="eppcom:clIDType"/>
|
||||
</extension>
|
||||
</simpleContent>
|
||||
</complexType>
|
||||
</schema>
|
||||
@@ -1,133 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<schema targetNamespace="urn:ietf:params:xml:ns:rgp-1.0"
|
||||
xmlns:rgp="urn:ietf:params:xml:ns:rgp-1.0"
|
||||
xmlns="http://www.w3.org/2001/XMLSchema"
|
||||
elementFormDefault="qualified">
|
||||
|
||||
<annotation>
|
||||
<documentation>
|
||||
Extensible Provisioning Protocol v1.0
|
||||
domain name extension schema for registry grace period
|
||||
processing.
|
||||
</documentation>
|
||||
</annotation>
|
||||
|
||||
<!--
|
||||
Child elements found in EPP commands.
|
||||
-->
|
||||
<element name="update" type="rgp:updateType"/>
|
||||
|
||||
<!--
|
||||
Child elements of the <update> command for the
|
||||
redemption grace period.
|
||||
-->
|
||||
<complexType name="updateType">
|
||||
<sequence>
|
||||
<element name="restore" type="rgp:restoreType"/>
|
||||
</sequence>
|
||||
</complexType>
|
||||
|
||||
<complexType name="restoreType">
|
||||
<sequence>
|
||||
<element name="report" type="rgp:reportType"
|
||||
minOccurs="0"/>
|
||||
</sequence>
|
||||
<attribute name="op" type="rgp:rgpOpType" use="required"/>
|
||||
</complexType>
|
||||
|
||||
<!--
|
||||
New redemption grace period operations can be defined
|
||||
by adding to this enumeration.
|
||||
-->
|
||||
<simpleType name="rgpOpType">
|
||||
<restriction base="token">
|
||||
<enumeration value="request"/>
|
||||
<enumeration value="report"/>
|
||||
</restriction>
|
||||
</simpleType>
|
||||
|
||||
<complexType name="reportType">
|
||||
<sequence>
|
||||
<element name="preData" type="rgp:mixedType"/>
|
||||
<element name="postData" type="rgp:mixedType"/>
|
||||
<element name="delTime" type="dateTime"/>
|
||||
<element name="resTime" type="dateTime"/>
|
||||
<element name="resReason" type="rgp:reportTextType"/>
|
||||
<element name="statement" type="rgp:reportTextType"
|
||||
maxOccurs="2"/>
|
||||
<element name="other" type="rgp:mixedType"
|
||||
minOccurs="0"/>
|
||||
</sequence>
|
||||
</complexType>
|
||||
|
||||
<complexType name="mixedType">
|
||||
<complexContent mixed="true">
|
||||
<restriction base="anyType">
|
||||
<sequence>
|
||||
<any processContents="lax"
|
||||
minOccurs="0" maxOccurs="unbounded"/>
|
||||
</sequence>
|
||||
</restriction>
|
||||
</complexContent>
|
||||
</complexType>
|
||||
|
||||
<complexType name="reportTextType">
|
||||
<complexContent mixed="true">
|
||||
<restriction base="anyType">
|
||||
<sequence>
|
||||
<any processContents="lax"
|
||||
minOccurs="0" maxOccurs="unbounded"/>
|
||||
</sequence>
|
||||
<attribute name="lang" type="language" default="en"/>
|
||||
</restriction>
|
||||
</complexContent>
|
||||
</complexType>
|
||||
|
||||
<!--
|
||||
Child response elements.
|
||||
-->
|
||||
<element name="infData" type="rgp:respDataType"/>
|
||||
<element name="upData" type="rgp:respDataType"/>
|
||||
|
||||
<!--
|
||||
Response elements.
|
||||
-->
|
||||
<complexType name="respDataType">
|
||||
<sequence>
|
||||
<element name="rgpStatus" type="rgp:statusType"
|
||||
maxOccurs="unbounded"/>
|
||||
</sequence>
|
||||
</complexType>
|
||||
|
||||
<!--
|
||||
Status is a combination of attributes and an optional
|
||||
human-readable message that may be expressed in languages
|
||||
other than English.
|
||||
-->
|
||||
<complexType name="statusType">
|
||||
<simpleContent>
|
||||
<extension base="normalizedString">
|
||||
<attribute name="s" type="rgp:statusValueType"
|
||||
use="required"/>
|
||||
<attribute name="lang" type="language" default="en"/>
|
||||
</extension>
|
||||
</simpleContent>
|
||||
</complexType>
|
||||
|
||||
<simpleType name="statusValueType">
|
||||
<restriction base="token">
|
||||
<enumeration value="addPeriod"/>
|
||||
<enumeration value="autoRenewPeriod"/>
|
||||
<enumeration value="renewPeriod"/>
|
||||
<enumeration value="transferPeriod"/>
|
||||
<enumeration value="pendingDelete"/>
|
||||
<enumeration value="pendingRestore"/>
|
||||
<enumeration value="redemptionPeriod"/>
|
||||
</restriction>
|
||||
</simpleType>
|
||||
|
||||
<!--
|
||||
End of schema.
|
||||
-->
|
||||
</schema>
|
||||
@@ -1,95 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<schema targetNamespace="urn:ietf:params:xml:ns:secDNS-1.1"
|
||||
xmlns:secDNS="urn:ietf:params:xml:ns:secDNS-1.1"
|
||||
xmlns="http://www.w3.org/2001/XMLSchema"
|
||||
elementFormDefault="qualified">
|
||||
|
||||
<annotation>
|
||||
<documentation>
|
||||
Extensible Provisioning Protocol v1.0
|
||||
domain name extension schema for provisioning
|
||||
DNS security (DNSSEC) extensions.
|
||||
</documentation>
|
||||
</annotation>
|
||||
|
||||
<!-- Child elements found in EPP commands. -->
|
||||
<element name="create" type="secDNS:dsOrKeyType"/>
|
||||
<element name="update" type="secDNS:updateType"/>
|
||||
|
||||
<!-- Child elements supporting either the dsData or the keyData interface. -->
|
||||
<complexType name="dsOrKeyType">
|
||||
<sequence>
|
||||
<element name="maxSigLife" type="secDNS:maxSigLifeType" minOccurs="0"/>
|
||||
<choice>
|
||||
<element name="dsData" type="secDNS:dsDataType" maxOccurs="unbounded"/>
|
||||
<element name="keyData" type="secDNS:keyDataType" maxOccurs="unbounded"/>
|
||||
</choice>
|
||||
</sequence>
|
||||
</complexType>
|
||||
|
||||
<!-- Definition for the maximum signature life (maxSigLife) -->
|
||||
<simpleType name="maxSigLifeType">
|
||||
<restriction base="int">
|
||||
<minInclusive value="1"/>
|
||||
</restriction>
|
||||
</simpleType>
|
||||
|
||||
<!-- Child elements of dsData used for dsData interface -->
|
||||
<complexType name="dsDataType">
|
||||
<sequence>
|
||||
<element name="keyTag" type="unsignedShort"/>
|
||||
<element name="alg" type="unsignedByte"/>
|
||||
<element name="digestType" type="unsignedByte"/>
|
||||
<element name="digest" type="hexBinary"/>
|
||||
<element name="keyData" type="secDNS:keyDataType" minOccurs="0"/>
|
||||
</sequence>
|
||||
</complexType>
|
||||
|
||||
<!-- Child elements of keyData used for keyData interface and optionally with dsData
|
||||
interface -->
|
||||
<complexType name="keyDataType">
|
||||
<sequence>
|
||||
<element name="flags" type="unsignedShort"/>
|
||||
<element name="protocol" type="unsignedByte"/>
|
||||
<element name="alg" type="unsignedByte"/>
|
||||
<element name="pubKey" type="secDNS:keyType"/>
|
||||
</sequence>
|
||||
</complexType>
|
||||
|
||||
<!-- Definition for the public key -->
|
||||
<simpleType name="keyType">
|
||||
<restriction base="base64Binary">
|
||||
<minLength value="1"/>
|
||||
</restriction>
|
||||
</simpleType>
|
||||
|
||||
<!-- Child elements of the <update> element. -->
|
||||
<complexType name="updateType">
|
||||
<sequence>
|
||||
<element name="rem" type="secDNS:remType" minOccurs="0"/>
|
||||
<element name="add" type="secDNS:dsOrKeyType" minOccurs="0"/>
|
||||
<element name="chg" type="secDNS:chgType" minOccurs="0"/>
|
||||
</sequence>
|
||||
<attribute name="urgent" type="boolean" default="false"/>
|
||||
</complexType>
|
||||
|
||||
|
||||
<!-- Child elements of the <rem> command. -->
|
||||
<complexType name="remType">
|
||||
<choice>
|
||||
<element name="all" type="boolean"/>
|
||||
<element name="dsData" type="secDNS:dsDataType" maxOccurs="unbounded"/>
|
||||
<element name="keyData" type="secDNS:keyDataType" maxOccurs="unbounded"/>
|
||||
</choice>
|
||||
</complexType>
|
||||
|
||||
<!-- Child elements supporting the <chg> element. -->
|
||||
<complexType name="chgType">
|
||||
<sequence>
|
||||
<element name="maxSigLife" type="secDNS:maxSigLifeType" minOccurs="0"/>
|
||||
</sequence>
|
||||
</complexType>
|
||||
|
||||
<!-- Child response elements. -->
|
||||
<element name="infData" type="secDNS:dsOrKeyType"/>
|
||||
</schema>
|
||||
@@ -1,71 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!-- Schema extracted from http://tools.ietf.org/html/draft-lozano-tmch-smd -->
|
||||
<schema
|
||||
targetNamespace="urn:ietf:params:xml:ns:signedMark-1.0"
|
||||
xmlns:smd="urn:ietf:params:xml:ns:signedMark-1.0"
|
||||
xmlns:mark="urn:ietf:params:xml:ns:mark-1.0"
|
||||
xmlns:dsig="http://www.w3.org/2000/09/xmldsig#"
|
||||
xmlns="http://www.w3.org/2001/XMLSchema"
|
||||
elementFormDefault="qualified">
|
||||
|
||||
<annotation>
|
||||
<documentation>
|
||||
Schema for representing a Signed Trademark.
|
||||
</documentation>
|
||||
</annotation>
|
||||
|
||||
<import namespace="urn:ietf:params:xml:ns:mark-1.0"
|
||||
schemaLocation="mark.xsd" />
|
||||
<import namespace="http://www.w3.org/2000/09/xmldsig#"
|
||||
schemaLocation="dsig.xsd"/>
|
||||
|
||||
<!--
|
||||
Abstract signed mark for replacement via substitution.
|
||||
-->
|
||||
<element name="abstractSignedMark" type="smd:abstractSignedMarkType"
|
||||
abstract="true"/>
|
||||
|
||||
<!--
|
||||
Empty type for use in extending for a signed mark
|
||||
-->
|
||||
<complexType name="abstractSignedMarkType"/>
|
||||
|
||||
<element name="signedMark" type="smd:signedMarkType"
|
||||
substitutionGroup="smd:abstractSignedMark"/>
|
||||
|
||||
<element name="encodedSignedMark" type="smd:encodedSignedMarkType"/>
|
||||
|
||||
<complexType name="signedMarkType">
|
||||
<complexContent>
|
||||
<extension base="smd:abstractSignedMarkType">
|
||||
<sequence>
|
||||
<element name="id" type="mark:idType"/>
|
||||
<element name="issuerInfo" type="smd:issuerInfoType"/>
|
||||
<element name="notBefore" type="dateTime"/>
|
||||
<element name="notAfter" type="dateTime"/>
|
||||
<element ref="mark:abstractMark"/>
|
||||
<element ref="dsig:Signature"/>
|
||||
</sequence>
|
||||
<attribute name="id" type="ID" use="required"/>
|
||||
</extension>
|
||||
</complexContent>
|
||||
</complexType>
|
||||
|
||||
<complexType name="issuerInfoType">
|
||||
<sequence>
|
||||
<element name="org" type="token"/>
|
||||
<element name="email" type="mark:minTokenType"/>
|
||||
<element name="url" type="token" minOccurs="0"/>
|
||||
<element name="voice" type="mark:e164Type" minOccurs="0"/>
|
||||
</sequence>
|
||||
<attribute name="issuerID" type="token" use="required"/>
|
||||
</complexType>
|
||||
|
||||
<complexType name="encodedSignedMarkType">
|
||||
<simpleContent>
|
||||
<extension base="token">
|
||||
<attribute name="encoding" default="base64"/>
|
||||
</extension>
|
||||
</simpleContent>
|
||||
</complexType>
|
||||
</schema>
|
||||
@@ -1,58 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<schema
|
||||
xmlns="http://www.w3.org/2001/XMLSchema"
|
||||
xmlns:superuser="urn:google:params:xml:ns:superuser-1.0"
|
||||
targetNamespace="urn:google:params:xml:ns:superuser-1.0"
|
||||
elementFormDefault="qualified">
|
||||
|
||||
<element name="domainTransferRequest"
|
||||
type="superuser:domainTransferRequest" />
|
||||
|
||||
<complexType name="domainTransferRequest">
|
||||
<all>
|
||||
<element name="renewalPeriod" type="superuser:periodType" />
|
||||
<element name="automaticTransferLength" type="nonNegativeInteger" />
|
||||
</all>
|
||||
</complexType>
|
||||
|
||||
<complexType name="periodType">
|
||||
<simpleContent>
|
||||
<extension base="superuser:pLimitType">
|
||||
<attribute name="unit" type="superuser:pUnitType"
|
||||
use="required"/>
|
||||
</extension>
|
||||
</simpleContent>
|
||||
</complexType>
|
||||
|
||||
<simpleType name="pLimitType">
|
||||
<restriction base="unsignedShort">
|
||||
<minInclusive value="0"/>
|
||||
<maxInclusive value="99"/>
|
||||
</restriction>
|
||||
</simpleType>
|
||||
|
||||
<simpleType name="pUnitType">
|
||||
<restriction base="token">
|
||||
<enumeration value="y"/>
|
||||
<enumeration value="m"/>
|
||||
</restriction>
|
||||
</simpleType>
|
||||
|
||||
<element name="domainDelete" type="superuser:domainDeleteType" />
|
||||
|
||||
<complexType name="domainDeleteType">
|
||||
<all>
|
||||
<element name="redemptionGracePeriodDays" type="nonNegativeInteger" />
|
||||
<element name="pendingDeleteDays" type="nonNegativeInteger" />
|
||||
</all>
|
||||
</complexType>
|
||||
|
||||
<element name="domainUpdate" type="superuser:domainUpdateType" />
|
||||
|
||||
<complexType name="domainUpdateType">
|
||||
<all>
|
||||
<element name="autorenews" minOccurs="0" type="boolean" />
|
||||
</all>
|
||||
</complexType>
|
||||
|
||||
</schema>
|
||||
@@ -1,131 +0,0 @@
|
||||
// Copyright 2017 The Nomulus Authors. All Rights Reserved.
|
||||
//
|
||||
// Licensed under the Apache License, Version 2.0 (the "License");
|
||||
// you may not use this file except in compliance with the License.
|
||||
// You may obtain a copy of the License at
|
||||
//
|
||||
// http://www.apache.org/licenses/LICENSE-2.0
|
||||
//
|
||||
// Unless required by applicable law or agreed to in writing, software
|
||||
// distributed under the License is distributed on an "AS IS" BASIS,
|
||||
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
// See the License for the specific language governing permissions and
|
||||
// limitations under the License.
|
||||
|
||||
package google.registry.xjc;
|
||||
|
||||
import static com.google.common.truth.Truth.assertThat;
|
||||
import static com.google.common.truth.Truth.assertWithMessage;
|
||||
import static google.registry.testing.TestDataHelper.loadBytes;
|
||||
import static google.registry.testing.TestDataHelper.loadFile;
|
||||
import static google.registry.xjc.XjcXmlTransformer.unmarshal;
|
||||
import static java.nio.charset.StandardCharsets.UTF_16;
|
||||
import static java.nio.charset.StandardCharsets.UTF_8;
|
||||
import static org.junit.jupiter.api.Assertions.assertThrows;
|
||||
|
||||
import com.google.re2j.Pattern;
|
||||
import google.registry.xjc.rde.XjcRdeDeposit;
|
||||
import google.registry.xjc.rde.XjcRdeDepositTypeType;
|
||||
import google.registry.xjc.rdedomain.XjcRdeDomain;
|
||||
import java.io.ByteArrayInputStream;
|
||||
import java.io.ByteArrayOutputStream;
|
||||
import org.junit.jupiter.api.Test;
|
||||
|
||||
/** Unit tests for {@code XjcObject}. */
|
||||
class XjcObjectTest {
|
||||
|
||||
private static final String RDE_DEPOSIT_FULL =
|
||||
loadFile(XjcObjectTest.class, "rde_deposit_full.xml");
|
||||
|
||||
@Test
|
||||
void testMarshalUtf8() throws Exception {
|
||||
XjcRdeDeposit deposit = unmarshalFullDeposit();
|
||||
ByteArrayOutputStream out = new ByteArrayOutputStream();
|
||||
deposit.marshal(out, UTF_8);
|
||||
String xml = out.toString(UTF_8);
|
||||
Pattern pat = Pattern.compile("^<\\?xml version=\"1\\.0\" encoding=\"UTF[-_]?8\"");
|
||||
assertWithMessage("bad xml declaration: %s", xml).that(pat.matcher(xml).find()).isTrue();
|
||||
assertWithMessage("encode/decode didn't work: %s", xml).that(xml).contains("jdoe@example.test");
|
||||
}
|
||||
|
||||
@Test
|
||||
void testMarshalUtf16() throws Exception {
|
||||
XjcRdeDeposit deposit = unmarshalFullDeposit();
|
||||
ByteArrayOutputStream out = new ByteArrayOutputStream();
|
||||
deposit.marshal(out, UTF_16);
|
||||
String xml = out.toString(UTF_16);
|
||||
Pattern pat = Pattern.compile("^<\\?xml version=\"1\\.0\" encoding=\"UTF[-_]?16\"");
|
||||
assertWithMessage(xml).that(pat.matcher(xml).find()).isTrue();
|
||||
assertWithMessage("encode/decode didn't work: %s", xml).that(xml).contains("jdoe@example.test");
|
||||
}
|
||||
|
||||
@Test
|
||||
void testMarshalValidation() throws Exception {
|
||||
XjcRdeDeposit deposit = unmarshalFullDeposit();
|
||||
deposit.setId("");
|
||||
Throwable thrown =
|
||||
assertThrows(Throwable.class, () -> deposit.marshal(new ByteArrayOutputStream(), UTF_8));
|
||||
assertThat(thrown).hasMessageThat().contains("pattern '\\w{1,13}' for type 'depositIdType'");
|
||||
}
|
||||
|
||||
@Test
|
||||
void testUnmarshalUTF8() throws Exception {
|
||||
XjcRdeDeposit deposit = unmarshalFullDeposit();
|
||||
assertThat(deposit).isNotNull();
|
||||
assertThat(deposit.getType()).isEqualTo(XjcRdeDepositTypeType.FULL);
|
||||
assertThat(deposit.getRdeMenu().getVersion()).isEqualTo("1.0");
|
||||
}
|
||||
|
||||
@Test
|
||||
void testUnmarshalUTF16() throws Exception {
|
||||
XjcRdeDeposit deposit = unmarshal(XjcRdeDeposit.class, new ByteArrayInputStream(
|
||||
RDE_DEPOSIT_FULL.replaceFirst("UTF-8", "UTF-16").getBytes(UTF_16)));
|
||||
assertThat(deposit).isNotNull();
|
||||
assertThat(deposit.getType()).isEqualTo(XjcRdeDepositTypeType.FULL);
|
||||
assertThat(deposit.getRdeMenu().getVersion()).isEqualTo("1.0");
|
||||
}
|
||||
|
||||
@Test
|
||||
void testUnmarshalValidation() {
|
||||
Throwable thrown =
|
||||
assertThrows(
|
||||
Throwable.class,
|
||||
() ->
|
||||
unmarshal(
|
||||
XjcRdeDeposit.class,
|
||||
new ByteArrayInputStream(
|
||||
RDE_DEPOSIT_FULL
|
||||
.replaceFirst("id=\"[^\"]+\"", "id=\"\"")
|
||||
.getBytes(UTF_8))));
|
||||
assertThat(thrown).hasMessageThat().contains("pattern '\\w{1,13}' for type 'depositIdType'");
|
||||
}
|
||||
|
||||
@Test
|
||||
void testToString() throws Exception {
|
||||
String xml = unmarshalFullDeposit().toString();
|
||||
assertWithMessage(xml).that(xml).startsWith("<rde:deposit ");
|
||||
assertWithMessage(xml).that(xml.length()).isGreaterThan(1000);
|
||||
}
|
||||
|
||||
@Test
|
||||
void testToStringNoValidation() {
|
||||
String xml = new XjcRdeDomain().toString();
|
||||
assertWithMessage(xml).that(xml).startsWith("<XjcRdeDomain ");
|
||||
}
|
||||
|
||||
@Test
|
||||
void testNamespaceEpp() throws Exception {
|
||||
String xml =
|
||||
unmarshal(XjcObject.class, loadBytes(XjcObjectTest.class, "greeting.xml").openStream())
|
||||
.toString();
|
||||
assertWithMessage(xml).that(xml).startsWith("<epp:epp ");
|
||||
assertWithMessage(xml).that(xml).contains("\"urn:ietf:params:xml:ns:epp-1.0\"");
|
||||
assertWithMessage(xml).that(xml).contains("<epp:greeting>");
|
||||
}
|
||||
|
||||
/** Unmarshals XML assuming UTF-8 encoding. */
|
||||
private static XjcRdeDeposit unmarshalFullDeposit() throws Exception {
|
||||
return unmarshal(
|
||||
XjcRdeDeposit.class, new ByteArrayInputStream(RDE_DEPOSIT_FULL.getBytes(UTF_8)));
|
||||
}
|
||||
}
|
||||
@@ -1,110 +0,0 @@
|
||||
// Copyright 2017 The Nomulus Authors. All Rights Reserved.
|
||||
//
|
||||
// Licensed under the Apache License, Version 2.0 (the "License");
|
||||
// you may not use this file except in compliance with the License.
|
||||
// You may obtain a copy of the License at
|
||||
//
|
||||
// http://www.apache.org/licenses/LICENSE-2.0
|
||||
//
|
||||
// Unless required by applicable law or agreed to in writing, software
|
||||
// distributed under the License is distributed on an "AS IS" BASIS,
|
||||
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
// See the License for the specific language governing permissions and
|
||||
// limitations under the License.
|
||||
|
||||
package google.registry.xjc;
|
||||
|
||||
import static com.google.common.truth.Truth.assertThat;
|
||||
import static google.registry.testing.TestDataHelper.loadFile;
|
||||
import static google.registry.xjc.XjcXmlTransformer.unmarshal;
|
||||
import static java.nio.charset.StandardCharsets.UTF_8;
|
||||
import static org.junit.jupiter.api.Assertions.assertThrows;
|
||||
|
||||
import google.registry.xjc.epp.XjcEpp;
|
||||
import google.registry.xjc.rde.XjcRdeDeposit;
|
||||
import google.registry.xml.XmlException;
|
||||
import java.io.ByteArrayInputStream;
|
||||
import java.util.stream.Stream;
|
||||
import org.junit.jupiter.api.Test;
|
||||
import org.junit.jupiter.params.ParameterizedTest;
|
||||
import org.junit.jupiter.params.provider.Arguments;
|
||||
import org.junit.jupiter.params.provider.MethodSource;
|
||||
|
||||
/**
|
||||
* Unit tests that ensure {@link XjcObject} is able to unmarshal XML in {@code testdata/} and ensure
|
||||
* they conform to the XML schema definitions.
|
||||
*/
|
||||
class XmlTestdataTest {
|
||||
|
||||
@ParameterizedTest
|
||||
@MethodSource("provideTestCombinations")
|
||||
void testValid(String filename, Class<? extends XjcObject> expectedClazz) throws Exception {
|
||||
XjcObject xml = unmarshal(XjcObject.class, loadAsStream(filename));
|
||||
assertThat(xml).isInstanceOf(expectedClazz);
|
||||
}
|
||||
|
||||
@Test
|
||||
void testInvalid() {
|
||||
ByteArrayInputStream badData = loadAsStream("invalid_greeting.xml");
|
||||
XmlException thrown =
|
||||
assertThrows(XmlException.class, () -> unmarshal(XjcObject.class, badData));
|
||||
assertThat(thrown).hasMessageThat().contains("dcp}' is expected");
|
||||
}
|
||||
|
||||
@SuppressWarnings("unused")
|
||||
static Stream<Arguments> provideTestCombinations() {
|
||||
return Stream.of(
|
||||
Arguments.of("domain_check_response.xml", XjcEpp.class),
|
||||
Arguments.of("domain_check.xml", XjcEpp.class),
|
||||
Arguments.of("domain_create_response_offline_review_completed.xml", XjcEpp.class),
|
||||
Arguments.of("domain_create_response_offline_review.xml", XjcEpp.class),
|
||||
Arguments.of("domain_create_response.xml", XjcEpp.class),
|
||||
Arguments.of("domain_create.xml", XjcEpp.class),
|
||||
Arguments.of("domain_delete.xml", XjcEpp.class),
|
||||
Arguments.of("domain_info_response_addperiod.xml", XjcEpp.class),
|
||||
Arguments.of("domain_info_response_pendingdelete.xml", XjcEpp.class),
|
||||
Arguments.of("domain_info_response_pendingrestore.xml", XjcEpp.class),
|
||||
Arguments.of("domain_info_response_redemptionperiod.xml", XjcEpp.class),
|
||||
Arguments.of("domain_info_response_unauthorized.xml", XjcEpp.class),
|
||||
Arguments.of("domain_info_response.xml", XjcEpp.class),
|
||||
Arguments.of("domain_info_with_auth.xml", XjcEpp.class),
|
||||
Arguments.of("domain_info.xml", XjcEpp.class),
|
||||
Arguments.of("domain_renew_response.xml", XjcEpp.class),
|
||||
Arguments.of("domain_renew.xml", XjcEpp.class),
|
||||
Arguments.of("domain_transfer_query_response.xml", XjcEpp.class),
|
||||
Arguments.of("domain_transfer_query.xml", XjcEpp.class),
|
||||
Arguments.of("domain_transfer_request_response.xml", XjcEpp.class),
|
||||
Arguments.of("domain_transfer_request.xml", XjcEpp.class),
|
||||
Arguments.of("domain_update_restore_report.xml", XjcEpp.class),
|
||||
Arguments.of("domain_update_restore_request.xml", XjcEpp.class),
|
||||
Arguments.of("domain_update.xml", XjcEpp.class),
|
||||
Arguments.of("generic_success_response.xml", XjcEpp.class),
|
||||
Arguments.of("greeting.xml", XjcEpp.class),
|
||||
Arguments.of("host_check_response.xml", XjcEpp.class),
|
||||
Arguments.of("host_check.xml", XjcEpp.class),
|
||||
Arguments.of("host_create_response_offline_review_complete.xml", XjcEpp.class),
|
||||
Arguments.of("host_create_response_offline_review.xml", XjcEpp.class),
|
||||
Arguments.of("host_create_response.xml", XjcEpp.class),
|
||||
Arguments.of("host_create.xml", XjcEpp.class),
|
||||
Arguments.of("host_delete_response.xml", XjcEpp.class),
|
||||
Arguments.of("host_delete.xml", XjcEpp.class),
|
||||
Arguments.of("host_info_response.xml", XjcEpp.class),
|
||||
Arguments.of("host_info.xml", XjcEpp.class),
|
||||
Arguments.of("host_update.xml", XjcEpp.class),
|
||||
Arguments.of("login.xml", XjcEpp.class),
|
||||
Arguments.of("logout_response.xml", XjcEpp.class),
|
||||
Arguments.of("logout.xml", XjcEpp.class),
|
||||
Arguments.of("poll_ack_response.xml", XjcEpp.class),
|
||||
Arguments.of("poll_ack.xml", XjcEpp.class),
|
||||
Arguments.of("poll_response_empty.xml", XjcEpp.class),
|
||||
Arguments.of("poll_response_mixed.xml", XjcEpp.class),
|
||||
Arguments.of("poll.xml", XjcEpp.class),
|
||||
Arguments.of("rde_deposit_differential.xml", XjcRdeDeposit.class),
|
||||
Arguments.of("rde_deposit_full.xml", XjcRdeDeposit.class),
|
||||
Arguments.of("restore_request_response.xml", XjcEpp.class));
|
||||
}
|
||||
|
||||
private static ByteArrayInputStream loadAsStream(String filename) {
|
||||
return new ByteArrayInputStream(loadFile(XmlTestdataTest.class, filename).getBytes(UTF_8));
|
||||
}
|
||||
}
|
||||
@@ -1,61 +0,0 @@
|
||||
// Copyright 2017 The Nomulus Authors. All Rights Reserved.
|
||||
//
|
||||
// Licensed under the Apache License, Version 2.0 (the "License");
|
||||
// you may not use this file except in compliance with the License.
|
||||
// You may obtain a copy of the License at
|
||||
//
|
||||
// http://www.apache.org/licenses/LICENSE-2.0
|
||||
//
|
||||
// Unless required by applicable law or agreed to in writing, software
|
||||
// distributed under the License is distributed on an "AS IS" BASIS,
|
||||
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
// See the License for the specific language governing permissions and
|
||||
// limitations under the License.
|
||||
|
||||
package google.registry.xml;
|
||||
|
||||
import static com.google.common.truth.Truth.assertThat;
|
||||
import static org.junit.jupiter.api.Assertions.assertThrows;
|
||||
|
||||
import java.time.LocalDate;
|
||||
import java.time.format.DateTimeParseException;
|
||||
import org.junit.jupiter.api.Test;
|
||||
|
||||
/** Unit tests for {@link DateAdapter}. */
|
||||
class DateAdapterTest {
|
||||
|
||||
@Test
|
||||
void testMarshal() {
|
||||
assertThat(new DateAdapter().marshal(LocalDate.of(2010, 10, 17))).isEqualTo("2010-10-17");
|
||||
}
|
||||
|
||||
@Test
|
||||
void testMarshalEmpty() {
|
||||
assertThat(new DateAdapter().marshal(null)).isEmpty();
|
||||
}
|
||||
|
||||
@Test
|
||||
void testUnmarshal() {
|
||||
assertThat(new DateAdapter().unmarshal("2010-10-17T04:20:00Z"))
|
||||
.isEqualTo(LocalDate.of(2010, 10, 17));
|
||||
}
|
||||
|
||||
@Test
|
||||
void testUnmarshalConvertsToZuluTime() {
|
||||
assertThat(new DateAdapter().unmarshal("2010-10-17T23:23:23-04:00"))
|
||||
.isEqualTo(LocalDate.of(2010, 10, 18));
|
||||
}
|
||||
|
||||
@Test
|
||||
void testUnmarshalEmpty() {
|
||||
assertThat(new DateAdapter().unmarshal(null)).isNull();
|
||||
assertThat(new DateAdapter().unmarshal("")).isNull();
|
||||
}
|
||||
|
||||
@Test
|
||||
void testUnmarshalInvalid() {
|
||||
assertThrows(
|
||||
DateTimeParseException.class,
|
||||
() -> assertThat(new DateAdapter().unmarshal("oh my goth")).isNull());
|
||||
}
|
||||
}
|
||||
@@ -1,42 +0,0 @@
|
||||
// Copyright 2017 The Nomulus Authors. All Rights Reserved.
|
||||
//
|
||||
// Licensed under the Apache License, Version 2.0 (the "License");
|
||||
// you may not use this file except in compliance with the License.
|
||||
// You may obtain a copy of the License at
|
||||
//
|
||||
// http://www.apache.org/licenses/LICENSE-2.0
|
||||
//
|
||||
// Unless required by applicable law or agreed to in writing, software
|
||||
// distributed under the License is distributed on an "AS IS" BASIS,
|
||||
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
// See the License for the specific language governing permissions and
|
||||
// limitations under the License.
|
||||
|
||||
package google.registry.xml;
|
||||
|
||||
import static com.google.common.truth.Truth.assertThat;
|
||||
|
||||
import org.junit.jupiter.api.Test;
|
||||
|
||||
/** Unit tests for {@link TrimWhitespaceAdapter}. */
|
||||
class TrimWhitespaceAdapterTest {
|
||||
|
||||
@Test
|
||||
void testUnmarshal() {
|
||||
TrimWhitespaceAdapter adapter = new TrimWhitespaceAdapter();
|
||||
assertThat(adapter.unmarshal("blah")).isEqualTo("blah");
|
||||
assertThat(adapter.unmarshal("")).isEmpty();
|
||||
assertThat(adapter.unmarshal(null)).isNull();
|
||||
assertThat(adapter.unmarshal("\n test foo bar \n \r")).isEqualTo("test foo bar");
|
||||
}
|
||||
|
||||
@Test
|
||||
void testMarshal() {
|
||||
TrimWhitespaceAdapter adapter = new TrimWhitespaceAdapter();
|
||||
assertThat(adapter.marshal("blah")).isEqualTo("blah");
|
||||
assertThat(adapter.marshal("")).isEmpty();
|
||||
assertThat(adapter.marshal(null)).isNull();
|
||||
assertThat(adapter.marshal("\n test foo bar \n \r"))
|
||||
.isEqualTo("\n test foo bar \n \r");
|
||||
}
|
||||
}
|
||||
@@ -1,68 +0,0 @@
|
||||
// Copyright 2017 The Nomulus Authors. All Rights Reserved.
|
||||
//
|
||||
// Licensed under the Apache License, Version 2.0 (the "License");
|
||||
// you may not use this file except in compliance with the License.
|
||||
// You may obtain a copy of the License at
|
||||
//
|
||||
// http://www.apache.org/licenses/LICENSE-2.0
|
||||
//
|
||||
// Unless required by applicable law or agreed to in writing, software
|
||||
// distributed under the License is distributed on an "AS IS" BASIS,
|
||||
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
// See the License for the specific language governing permissions and
|
||||
// limitations under the License.
|
||||
|
||||
package google.registry.xml;
|
||||
|
||||
import static com.google.common.truth.Truth.assertThat;
|
||||
import static org.junit.jupiter.api.Assertions.assertThrows;
|
||||
|
||||
import java.time.Instant;
|
||||
import java.time.format.DateTimeParseException;
|
||||
import org.junit.jupiter.api.Test;
|
||||
|
||||
/** Unit tests for {@link UtcInstantAdapter}. */
|
||||
class UtcInstantAdapterTest {
|
||||
|
||||
@Test
|
||||
void testMarshal() {
|
||||
assertThat(new UtcInstantAdapter().marshal(Instant.parse("2010-10-17T04:20:00Z")))
|
||||
.isEqualTo("2010-10-17T04:20:00.000Z");
|
||||
}
|
||||
|
||||
@Test
|
||||
void testMarshalConvertsToZuluTime() {
|
||||
assertThat(new UtcInstantAdapter().marshal(Instant.parse("2010-10-17T00:20:00-04:00")))
|
||||
.isEqualTo("2010-10-17T04:20:00.000Z");
|
||||
}
|
||||
|
||||
@Test
|
||||
void testMarshalEmpty() {
|
||||
assertThat(new UtcInstantAdapter().marshal(null)).isEmpty();
|
||||
}
|
||||
|
||||
@Test
|
||||
void testUnmarshal() {
|
||||
assertThat(new UtcInstantAdapter().unmarshal("2010-10-17T04:20:00Z"))
|
||||
.isEqualTo(Instant.parse("2010-10-17T04:20:00Z"));
|
||||
}
|
||||
|
||||
@Test
|
||||
void testUnmarshalConvertsToZuluTime() {
|
||||
assertThat(new UtcInstantAdapter().unmarshal("2010-10-17T00:20:00-04:00"))
|
||||
.isEqualTo(Instant.parse("2010-10-17T04:20:00Z"));
|
||||
}
|
||||
|
||||
@Test
|
||||
void testUnmarshalEmpty() {
|
||||
assertThat(new UtcInstantAdapter().unmarshal(null)).isNull();
|
||||
assertThat(new UtcInstantAdapter().unmarshal("")).isNull();
|
||||
}
|
||||
|
||||
@Test
|
||||
void testUnmarshalInvalid() {
|
||||
assertThrows(
|
||||
DateTimeParseException.class,
|
||||
() -> assertThat(new UtcInstantAdapter().unmarshal("oh my goth")).isNull());
|
||||
}
|
||||
}
|
||||
@@ -1,12 +0,0 @@
|
||||
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
|
||||
<command>
|
||||
<check>
|
||||
<domain:check xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
|
||||
<domain:name>example.com</domain:name>
|
||||
<domain:name>example.net</domain:name>
|
||||
<domain:name>example.org</domain:name>
|
||||
</domain:check>
|
||||
</check>
|
||||
<clTRID>ABC-12345</clTRID>
|
||||
</command>
|
||||
</epp>
|
||||
@@ -1,26 +0,0 @@
|
||||
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
|
||||
<response>
|
||||
<result code="1000">
|
||||
<msg>Command completed successfully</msg>
|
||||
</result>
|
||||
<resData>
|
||||
<domain:chkData
|
||||
xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
|
||||
<domain:cd>
|
||||
<domain:name avail="1">example.com</domain:name>
|
||||
</domain:cd>
|
||||
<domain:cd>
|
||||
<domain:name avail="0">example.net</domain:name>
|
||||
<domain:reason>In use</domain:reason>
|
||||
</domain:cd>
|
||||
<domain:cd>
|
||||
<domain:name avail="1">example.org</domain:name>
|
||||
</domain:cd>
|
||||
</domain:chkData>
|
||||
</resData>
|
||||
<trID>
|
||||
<clTRID>ABC-12345</clTRID>
|
||||
<svTRID>server-trid</svTRID>
|
||||
</trID>
|
||||
</response>
|
||||
</epp>
|
||||
@@ -1,20 +0,0 @@
|
||||
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
|
||||
<command>
|
||||
<create>
|
||||
<domain:create
|
||||
xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
|
||||
<domain:name>example.com</domain:name>
|
||||
<domain:period unit="y">2</domain:period>
|
||||
<domain:ns>
|
||||
<domain:hostObj>ns1.example.net</domain:hostObj>
|
||||
<domain:hostObj>ns2.example.net</domain:hostObj>
|
||||
</domain:ns>
|
||||
<domain:registrant>jd1234</domain:registrant>
|
||||
<domain:authInfo>
|
||||
<domain:pw>2fooBAR</domain:pw>
|
||||
</domain:authInfo>
|
||||
</domain:create>
|
||||
</create>
|
||||
<clTRID>ABC-12345</clTRID>
|
||||
</command>
|
||||
</epp>
|
||||
@@ -1,19 +0,0 @@
|
||||
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
|
||||
<response>
|
||||
<result code="1000">
|
||||
<msg>Command completed successfully</msg>
|
||||
</result>
|
||||
<resData>
|
||||
<domain:creData
|
||||
xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
|
||||
<domain:name>example.com</domain:name>
|
||||
<domain:crDate>1999-04-03T22:00:00.0Z</domain:crDate>
|
||||
<domain:exDate>2001-04-03T22:00:00.0Z</domain:exDate>
|
||||
</domain:creData>
|
||||
</resData>
|
||||
<trID>
|
||||
<clTRID>ABC-12345</clTRID>
|
||||
<svTRID>server-trid</svTRID>
|
||||
</trID>
|
||||
</response>
|
||||
</epp>
|
||||
@@ -1,19 +0,0 @@
|
||||
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
|
||||
<response>
|
||||
<result code="1001">
|
||||
<msg>Command completed successfully; action pending</msg>
|
||||
</result>
|
||||
<resData>
|
||||
<domain:creData
|
||||
xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
|
||||
<domain:name>example.com</domain:name>
|
||||
<domain:crDate>1999-04-03T22:00:00.0Z</domain:crDate>
|
||||
<domain:exDate>2001-04-03T22:00:00.0Z</domain:exDate>
|
||||
</domain:creData>
|
||||
</resData>
|
||||
<trID>
|
||||
<clTRID>ABC-12345</clTRID>
|
||||
<svTRID>server-trid</svTRID>
|
||||
</trID>
|
||||
</response>
|
||||
</epp>
|
||||
-26
@@ -1,26 +0,0 @@
|
||||
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
|
||||
<response>
|
||||
<result code="1301">
|
||||
<msg>Command completed successfully; ack to dequeue</msg>
|
||||
</result>
|
||||
<msgQ count="5" id="12345">
|
||||
<qDate>1999-04-04T22:01:00.0Z</qDate>
|
||||
<msg>Pending action completed successfully.</msg>
|
||||
</msgQ>
|
||||
<resData>
|
||||
<domain:panData
|
||||
xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
|
||||
<domain:name paResult="1">example.com</domain:name>
|
||||
<domain:paTRID>
|
||||
<clTRID>ABC-12345</clTRID>
|
||||
<svTRID>server-trid</svTRID>
|
||||
</domain:paTRID>
|
||||
<domain:paDate>1999-04-04T22:00:00.0Z</domain:paDate>
|
||||
</domain:panData>
|
||||
</resData>
|
||||
<trID>
|
||||
<clTRID>BCD-23456</clTRID>
|
||||
<svTRID>65432-WXY</svTRID>
|
||||
</trID>
|
||||
</response>
|
||||
</epp>
|
||||
@@ -1,11 +0,0 @@
|
||||
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
|
||||
<command>
|
||||
<delete>
|
||||
<domain:delete
|
||||
xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
|
||||
<domain:name>example.com</domain:name>
|
||||
</domain:delete>
|
||||
</delete>
|
||||
<clTRID>ABC-12345</clTRID>
|
||||
</command>
|
||||
</epp>
|
||||
@@ -1,11 +0,0 @@
|
||||
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
|
||||
<command>
|
||||
<info>
|
||||
<domain:info
|
||||
xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
|
||||
<domain:name hosts="all">example.com</domain:name>
|
||||
</domain:info>
|
||||
</info>
|
||||
<clTRID>ABC-12345</clTRID>
|
||||
</command>
|
||||
</epp>
|
||||
@@ -1,36 +0,0 @@
|
||||
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
|
||||
<response>
|
||||
<result code="1000">
|
||||
<msg>Command completed successfully</msg>
|
||||
</result>
|
||||
<resData>
|
||||
<domain:infData
|
||||
xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
|
||||
<domain:name>example.com</domain:name>
|
||||
<domain:roid>EXAMPLE1-REP</domain:roid>
|
||||
<domain:status s="ok"/>
|
||||
<domain:registrant>jd1234</domain:registrant>
|
||||
<domain:ns>
|
||||
<domain:hostObj>ns1.example.com</domain:hostObj>
|
||||
<domain:hostObj>ns1.example.net</domain:hostObj>
|
||||
</domain:ns>
|
||||
<domain:host>ns1.example.com</domain:host>
|
||||
<domain:host>ns2.example.com</domain:host>
|
||||
<domain:clID>NewRegistrar</domain:clID>
|
||||
<domain:crID>TheRegistrar</domain:crID>
|
||||
<domain:crDate>1999-04-03T22:00:00.0Z</domain:crDate>
|
||||
<domain:upID>NewRegistrar</domain:upID>
|
||||
<domain:upDate>1999-12-03T09:00:00.0Z</domain:upDate>
|
||||
<domain:exDate>2005-04-03T22:00:00.0Z</domain:exDate>
|
||||
<domain:trDate>2000-04-08T09:00:00.0Z</domain:trDate>
|
||||
<domain:authInfo>
|
||||
<domain:pw>2fooBAR</domain:pw>
|
||||
</domain:authInfo>
|
||||
</domain:infData>
|
||||
</resData>
|
||||
<trID>
|
||||
<clTRID>ABC-12345</clTRID>
|
||||
<svTRID>server-trid</svTRID>
|
||||
</trID>
|
||||
</response>
|
||||
</epp>
|
||||
@@ -1,39 +0,0 @@
|
||||
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
||||
<response>
|
||||
<result code="1000">
|
||||
<msg>Command completed successfully</msg>
|
||||
</result>
|
||||
<resData>
|
||||
<domain:infData
|
||||
xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
|
||||
<domain:name>example.com</domain:name>
|
||||
<domain:roid>EXAMPLE1-REP</domain:roid>
|
||||
<domain:status s="ok"/>
|
||||
<domain:registrant>jd1234</domain:registrant>
|
||||
<domain:ns>
|
||||
<domain:hostObj>ns1.example.com</domain:hostObj>
|
||||
<domain:hostObj>ns1.example.net</domain:hostObj>
|
||||
</domain:ns>
|
||||
<domain:host>ns1.example.com</domain:host>
|
||||
<domain:host>ns2.example.com</domain:host>
|
||||
<domain:clID>NewRegistrar</domain:clID>
|
||||
<domain:crID>NewRegistrar</domain:crID>
|
||||
<domain:crDate>2003-11-26T22:00:00.0Z</domain:crDate>
|
||||
<domain:exDate>2005-11-26T22:00:00.0Z</domain:exDate>
|
||||
<domain:authInfo>
|
||||
<domain:pw>2fooBAR</domain:pw>
|
||||
</domain:authInfo>
|
||||
</domain:infData>
|
||||
</resData>
|
||||
<extension>
|
||||
<rgp:infData xmlns:rgp="urn:ietf:params:xml:ns:rgp-1.0">
|
||||
<rgp:rgpStatus s="addPeriod"/>
|
||||
</rgp:infData>
|
||||
</extension>
|
||||
<trID>
|
||||
<clTRID>ABC-12345</clTRID>
|
||||
<svTRID>server-trid</svTRID>
|
||||
</trID>
|
||||
</response>
|
||||
</epp>
|
||||
@@ -1,42 +0,0 @@
|
||||
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
||||
<response>
|
||||
<result code="1000">
|
||||
<msg>Command completed successfully</msg>
|
||||
</result>
|
||||
<resData>
|
||||
<domain:infData
|
||||
xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
|
||||
<domain:name>example.com</domain:name>
|
||||
<domain:roid>EXAMPLE1-REP</domain:roid>
|
||||
<domain:status s="pendingDelete"/>
|
||||
<domain:registrant>jd1234</domain:registrant>
|
||||
<domain:ns>
|
||||
<domain:hostObj>ns1.example.com</domain:hostObj>
|
||||
<domain:hostObj>ns1.example.net</domain:hostObj>
|
||||
</domain:ns>
|
||||
<domain:host>ns1.example.com</domain:host>
|
||||
<domain:host>ns2.example.com</domain:host>
|
||||
<domain:clID>NewRegistrar</domain:clID>
|
||||
<domain:crID>TheRegistrar</domain:crID>
|
||||
<domain:crDate>1999-04-03T22:00:00.0Z</domain:crDate>
|
||||
<domain:upID>NewRegistrar</domain:upID>
|
||||
<domain:upDate>1999-12-03T09:00:00.0Z</domain:upDate>
|
||||
<domain:exDate>2005-04-03T22:00:00.0Z</domain:exDate>
|
||||
<domain:trDate>2000-04-08T09:00:00.0Z</domain:trDate>
|
||||
<domain:authInfo>
|
||||
<domain:pw>2fooBAR</domain:pw>
|
||||
</domain:authInfo>
|
||||
</domain:infData>
|
||||
</resData>
|
||||
<extension>
|
||||
<rgp:infData xmlns:rgp="urn:ietf:params:xml:ns:rgp-1.0">
|
||||
<rgp:rgpStatus s="pendingDelete"/>
|
||||
</rgp:infData>
|
||||
</extension>
|
||||
<trID>
|
||||
<clTRID>ABC-12345</clTRID>
|
||||
<svTRID>server-trid</svTRID>
|
||||
</trID>
|
||||
</response>
|
||||
</epp>
|
||||
@@ -1,48 +0,0 @@
|
||||
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="urn:ietf:params:xml:ns:epp-1.0
|
||||
epp-1.0.xsd">
|
||||
<response>
|
||||
<result code="1000">
|
||||
<msg>Command completed successfully</msg>
|
||||
</result>
|
||||
<resData>
|
||||
<domain:infData
|
||||
xmlns:domain="urn:ietf:params:xml:ns:domain-1.0"
|
||||
xsi:schemaLocation="urn:ietf:params:xml:ns:domain-1.0
|
||||
domain-1.0.xsd">
|
||||
<domain:name>example.com</domain:name>
|
||||
<domain:roid>EXAMPLE1-REP</domain:roid>
|
||||
<domain:status s="pendingDelete"/>
|
||||
<domain:registrant>jd1234</domain:registrant>
|
||||
<domain:ns>
|
||||
<domain:hostObj>ns1.example.com</domain:hostObj>
|
||||
<domain:hostObj>ns1.example.net</domain:hostObj>
|
||||
</domain:ns>
|
||||
<domain:host>ns1.example.com</domain:host>
|
||||
<domain:host>ns2.example.com</domain:host>
|
||||
<domain:clID>NewRegistrar</domain:clID>
|
||||
<domain:crID>TheRegistrar</domain:crID>
|
||||
<domain:crDate>1999-04-03T22:00:00.0Z</domain:crDate>
|
||||
<domain:upID>NewRegistrar</domain:upID>
|
||||
<domain:upDate>1999-12-03T09:00:00.0Z</domain:upDate>
|
||||
<domain:exDate>2005-04-03T22:00:00.0Z</domain:exDate>
|
||||
<domain:trDate>2000-04-08T09:00:00.0Z</domain:trDate>
|
||||
<domain:authInfo>
|
||||
<domain:pw>2fooBAR</domain:pw>
|
||||
</domain:authInfo>
|
||||
</domain:infData>
|
||||
</resData>
|
||||
<extension>
|
||||
<rgp:infData xmlns:rgp="urn:ietf:params:xml:ns:rgp-1.0"
|
||||
xsi:schemaLocation="urn:ietf:params:xml:ns:rgp-1.0
|
||||
rgp-1.0.xsd">
|
||||
<rgp:rgpStatus s="pendingRestore"/>
|
||||
</rgp:infData>
|
||||
</extension>
|
||||
<trID>
|
||||
<clTRID>ABC-12345</clTRID>
|
||||
<svTRID>server-trid</svTRID>
|
||||
</trID>
|
||||
</response>
|
||||
</epp>
|
||||
@@ -1,42 +0,0 @@
|
||||
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
||||
<response>
|
||||
<result code="1000">
|
||||
<msg>Command completed successfully</msg>
|
||||
</result>
|
||||
<resData>
|
||||
<domain:infData
|
||||
xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
|
||||
<domain:name>example.com</domain:name>
|
||||
<domain:roid>EXAMPLE1-REP</domain:roid>
|
||||
<domain:status s="pendingDelete"/>
|
||||
<domain:registrant>jd1234</domain:registrant>
|
||||
<domain:ns>
|
||||
<domain:hostObj>ns1.example.com</domain:hostObj>
|
||||
<domain:hostObj>ns1.example.net</domain:hostObj>
|
||||
</domain:ns>
|
||||
<domain:host>ns1.example.com</domain:host>
|
||||
<domain:host>ns2.example.com</domain:host>
|
||||
<domain:clID>NewRegistrar</domain:clID>
|
||||
<domain:crID>TheRegistrar</domain:crID>
|
||||
<domain:crDate>1999-04-03T22:00:00.0Z</domain:crDate>
|
||||
<domain:upID>NewRegistrar</domain:upID>
|
||||
<domain:upDate>1999-12-03T09:00:00.0Z</domain:upDate>
|
||||
<domain:exDate>2005-04-03T22:00:00.0Z</domain:exDate>
|
||||
<domain:trDate>2000-04-08T09:00:00.0Z</domain:trDate>
|
||||
<domain:authInfo>
|
||||
<domain:pw>2fooBAR</domain:pw>
|
||||
</domain:authInfo>
|
||||
</domain:infData>
|
||||
</resData>
|
||||
<extension>
|
||||
<rgp:infData xmlns:rgp="urn:ietf:params:xml:ns:rgp-1.0">
|
||||
<rgp:rgpStatus s="redemptionPeriod"/>
|
||||
</rgp:infData>
|
||||
</extension>
|
||||
<trID>
|
||||
<clTRID>ABC-12345</clTRID>
|
||||
<svTRID>server-trid</svTRID>
|
||||
</trID>
|
||||
</response>
|
||||
</epp>
|
||||
@@ -1,19 +0,0 @@
|
||||
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
|
||||
<response>
|
||||
<result code="1000">
|
||||
<msg>Command completed successfully</msg>
|
||||
</result>
|
||||
<resData>
|
||||
<domain:infData
|
||||
xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
|
||||
<domain:name>example.com</domain:name>
|
||||
<domain:roid>EXAMPLE1-REP</domain:roid>
|
||||
<domain:clID>NewRegistrar</domain:clID>
|
||||
</domain:infData>
|
||||
</resData>
|
||||
<trID>
|
||||
<clTRID>ABC-12345</clTRID>
|
||||
<svTRID>server-trid</svTRID>
|
||||
</trID>
|
||||
</response>
|
||||
</epp>
|
||||
@@ -1,14 +0,0 @@
|
||||
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
|
||||
<command>
|
||||
<info>
|
||||
<domain:info
|
||||
xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
|
||||
<domain:name hosts="all">example.com</domain:name>
|
||||
<domain:authInfo>
|
||||
<domain:pw>2fooBAR</domain:pw>
|
||||
</domain:authInfo>
|
||||
</domain:info>
|
||||
</info>
|
||||
<clTRID>ABC-12345</clTRID>
|
||||
</command>
|
||||
</epp>
|
||||
@@ -1,13 +0,0 @@
|
||||
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
|
||||
<command>
|
||||
<renew>
|
||||
<domain:renew
|
||||
xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
|
||||
<domain:name>example.com</domain:name>
|
||||
<domain:curExpDate>2000-04-03</domain:curExpDate>
|
||||
<domain:period unit="y">5</domain:period>
|
||||
</domain:renew>
|
||||
</renew>
|
||||
<clTRID>ABC-12345</clTRID>
|
||||
</command>
|
||||
</epp>
|
||||
@@ -1,18 +0,0 @@
|
||||
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
|
||||
<response>
|
||||
<result code="1000">
|
||||
<msg>Command completed successfully</msg>
|
||||
</result>
|
||||
<resData>
|
||||
<domain:renData
|
||||
xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
|
||||
<domain:name>example.com</domain:name>
|
||||
<domain:exDate>2005-04-03T22:00:00.0Z</domain:exDate>
|
||||
</domain:renData>
|
||||
</resData>
|
||||
<trID>
|
||||
<clTRID>ABC-12345</clTRID>
|
||||
<svTRID>server-trid</svTRID>
|
||||
</trID>
|
||||
</response>
|
||||
</epp>
|
||||
@@ -1,11 +0,0 @@
|
||||
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
|
||||
<command>
|
||||
<transfer op="query">
|
||||
<domain:transfer
|
||||
xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
|
||||
<domain:name>example.com</domain:name>
|
||||
</domain:transfer>
|
||||
</transfer>
|
||||
<clTRID>ABC-12345</clTRID>
|
||||
</command>
|
||||
</epp>
|
||||
@@ -1,23 +0,0 @@
|
||||
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
|
||||
<response>
|
||||
<result code="1000">
|
||||
<msg>Command completed successfully</msg>
|
||||
</result>
|
||||
<resData>
|
||||
<domain:trnData
|
||||
xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
|
||||
<domain:name>example.com</domain:name>
|
||||
<domain:trStatus>pending</domain:trStatus>
|
||||
<domain:reID>NewRegistrar</domain:reID>
|
||||
<domain:reDate>2000-06-06T22:00:00.0Z</domain:reDate>
|
||||
<domain:acID>TheRegistrar</domain:acID>
|
||||
<domain:acDate>2000-06-11T22:00:00.0Z</domain:acDate>
|
||||
<domain:exDate>2002-09-08T22:00:00.0Z</domain:exDate>
|
||||
</domain:trnData>
|
||||
</resData>
|
||||
<trID>
|
||||
<clTRID>ABC-12345</clTRID>
|
||||
<svTRID>server-trid</svTRID>
|
||||
</trID>
|
||||
</response>
|
||||
</epp>
|
||||
@@ -1,15 +0,0 @@
|
||||
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
|
||||
<command>
|
||||
<transfer op="request">
|
||||
<domain:transfer
|
||||
xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
|
||||
<domain:name>example.com</domain:name>
|
||||
<domain:period unit="y">1</domain:period>
|
||||
<domain:authInfo>
|
||||
<domain:pw roid="JD1234-REP">2fooBAR</domain:pw>
|
||||
</domain:authInfo>
|
||||
</domain:transfer>
|
||||
</transfer>
|
||||
<clTRID>ABC-12345</clTRID>
|
||||
</command>
|
||||
</epp>
|
||||
@@ -1,23 +0,0 @@
|
||||
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
|
||||
<response>
|
||||
<result code="1001">
|
||||
<msg>Command completed successfully; action pending</msg>
|
||||
</result>
|
||||
<resData>
|
||||
<domain:trnData
|
||||
xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
|
||||
<domain:name>example.com</domain:name>
|
||||
<domain:trStatus>pending</domain:trStatus>
|
||||
<domain:reID>NewRegistrar</domain:reID>
|
||||
<domain:reDate>2000-06-09T22:00:00.0Z</domain:reDate>
|
||||
<domain:acID>TheRegistrar</domain:acID>
|
||||
<domain:acDate>2000-06-14T22:00:00.0Z</domain:acDate>
|
||||
<domain:exDate>2002-09-08T22:00:00.0Z</domain:exDate>
|
||||
</domain:trnData>
|
||||
</resData>
|
||||
<trID>
|
||||
<clTRID>ABC-12345</clTRID>
|
||||
<svTRID>server-trid</svTRID>
|
||||
</trID>
|
||||
</response>
|
||||
</epp>
|
||||
@@ -1,30 +0,0 @@
|
||||
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
|
||||
<command>
|
||||
<update>
|
||||
<domain:update
|
||||
xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
|
||||
<domain:name>example.com</domain:name>
|
||||
<domain:add>
|
||||
<domain:ns>
|
||||
<domain:hostObj>ns2.example.com</domain:hostObj>
|
||||
</domain:ns>
|
||||
<domain:status s="clientHold"
|
||||
lang="en">Payment overdue.</domain:status>
|
||||
</domain:add>
|
||||
<domain:rem>
|
||||
<domain:ns>
|
||||
<domain:hostObj>ns1.example.com</domain:hostObj>
|
||||
</domain:ns>
|
||||
<domain:status s="clientUpdateProhibited"/>
|
||||
</domain:rem>
|
||||
<domain:chg>
|
||||
<domain:registrant>sh8013</domain:registrant>
|
||||
<domain:authInfo>
|
||||
<domain:pw>2BARfoo</domain:pw>
|
||||
</domain:authInfo>
|
||||
</domain:chg>
|
||||
</domain:update>
|
||||
</update>
|
||||
<clTRID>ABC-12345</clTRID>
|
||||
</command>
|
||||
</epp>
|
||||
@@ -1,46 +0,0 @@
|
||||
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="urn:ietf:params:xml:ns:epp-1.0
|
||||
epp-1.0.xsd">
|
||||
<command>
|
||||
<update>
|
||||
<domain:update
|
||||
xmlns:domain="urn:ietf:params:xml:ns:domain-1.0"
|
||||
xsi:schemaLocation="urn:ietf:params:xml:ns:domain-1.0
|
||||
domain-1.0.xsd">
|
||||
<domain:name>example.com</domain:name>
|
||||
<domain:chg/>
|
||||
</domain:update>
|
||||
</update>
|
||||
<extension>
|
||||
<rgp:update xmlns:rgp="urn:ietf:params:xml:ns:rgp-1.0"
|
||||
xsi:schemaLocation="urn:ietf:params:xml:ns:rgp-1.0
|
||||
rgp-1.0.xsd">
|
||||
<rgp:restore op="report">
|
||||
<rgp:report>
|
||||
<rgp:preData>Pre-delete registration data goes here.
|
||||
Both XML and free text are allowed.</rgp:preData>
|
||||
<rgp:postData>Post-restore registration data goes here.
|
||||
Both XML and free text are allowed.</rgp:postData>
|
||||
<rgp:delTime>2003-07-10T22:00:00.0Z</rgp:delTime>
|
||||
<rgp:resTime>2003-07-20T22:00:00.0Z</rgp:resTime>
|
||||
<rgp:resReason>Registrant error.</rgp:resReason>
|
||||
<rgp:statement>This registrar has not restored the
|
||||
Registered Name in order to assume the rights to use
|
||||
or sell the Registered Name for itself or for any
|
||||
third party.</rgp:statement>
|
||||
<rgp:statement>The information in this report is
|
||||
true to best of this registrar's knowledge, and this
|
||||
registrar acknowledges that intentionally supplying
|
||||
false information in this report shall constitute an
|
||||
incurable material breach of the
|
||||
Registry-Registrar Agreement.</rgp:statement>
|
||||
<rgp:other>Supporting information goes
|
||||
here.</rgp:other>
|
||||
</rgp:report>
|
||||
</rgp:restore>
|
||||
</rgp:update>
|
||||
</extension>
|
||||
<clTRID>ABC-12345</clTRID>
|
||||
</command>
|
||||
</epp>
|
||||
@@ -1,17 +0,0 @@
|
||||
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
|
||||
<command>
|
||||
<update>
|
||||
<domain:update
|
||||
xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
|
||||
<domain:name>example.com</domain:name>
|
||||
<domain:chg/>
|
||||
</domain:update>
|
||||
</update>
|
||||
<extension>
|
||||
<rgp:update xmlns:rgp="urn:ietf:params:xml:ns:rgp-1.0">
|
||||
<rgp:restore op="request"/>
|
||||
</rgp:update>
|
||||
</extension>
|
||||
<clTRID>ABC-12345</clTRID>
|
||||
</command>
|
||||
</epp>
|
||||
@@ -1,11 +0,0 @@
|
||||
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
|
||||
<response>
|
||||
<result code="1000">
|
||||
<msg>Command completed successfully</msg>
|
||||
</result>
|
||||
<trID>
|
||||
<clTRID>ABC-12345</clTRID>
|
||||
<svTRID>server-trid</svTRID>
|
||||
</trID>
|
||||
</response>
|
||||
</epp>
|
||||
@@ -1,25 +0,0 @@
|
||||
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
|
||||
<greeting>
|
||||
<svID>Example EPP server epp.example.com</svID>
|
||||
<svDate>2000-06-08T22:00:00.0Z</svDate>
|
||||
<svcMenu>
|
||||
<version>1.0</version>
|
||||
<lang>en</lang>
|
||||
<lang>fr</lang>
|
||||
<objURI>urn:ietf:params:xml:ns:obj1</objURI>
|
||||
<objURI>urn:ietf:params:xml:ns:obj2</objURI>
|
||||
<objURI>urn:ietf:params:xml:ns:obj3</objURI>
|
||||
<svcExtension>
|
||||
<extURI>http://custom/obj1ext-1.0</extURI>
|
||||
</svcExtension>
|
||||
</svcMenu>
|
||||
<dcp>
|
||||
<access><all/></access>
|
||||
<statement>
|
||||
<purpose><admin/><prov/></purpose>
|
||||
<recipient><ours/><public/></recipient>
|
||||
<retention><stated/></retention>
|
||||
</statement>
|
||||
</dcp>
|
||||
</greeting>
|
||||
</epp>
|
||||
@@ -1,13 +0,0 @@
|
||||
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
|
||||
<command>
|
||||
<check>
|
||||
<host:check
|
||||
xmlns:host="urn:ietf:params:xml:ns:host-1.0">
|
||||
<host:name>ns1.example.com</host:name>
|
||||
<host:name>ns2.example.com</host:name>
|
||||
<host:name>ns3.example.com</host:name>
|
||||
</host:check>
|
||||
</check>
|
||||
<clTRID>ABC-12345</clTRID>
|
||||
</command>
|
||||
</epp>
|
||||
@@ -1,28 +0,0 @@
|
||||
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
|
||||
<response>
|
||||
<result code="1000">
|
||||
<msg>Command completed successfully</msg>
|
||||
</result>
|
||||
<resData>
|
||||
<host:chkData
|
||||
xmlns:host="urn:ietf:params:xml:ns:host-1.0">
|
||||
<host:cd>
|
||||
<host:name avail="1">ns1.example.com</host:name>
|
||||
</host:cd>
|
||||
<host:cd>
|
||||
<!-- The RFC uses ns2.example2.com here; it's clearly a typo. -->
|
||||
<host:name avail="0">ns2.example.com</host:name>
|
||||
<host:reason>In use</host:reason>
|
||||
</host:cd>
|
||||
<host:cd>
|
||||
<!-- The RFC uses ns3.example3.com here; it's clearly a typo. -->
|
||||
<host:name avail="1">ns3.example.com</host:name>
|
||||
</host:cd>
|
||||
</host:chkData>
|
||||
</resData>
|
||||
<trID>
|
||||
<clTRID>ABC-12345</clTRID>
|
||||
<svTRID>server-trid</svTRID>
|
||||
</trID>
|
||||
</response>
|
||||
</epp>
|
||||
@@ -1,14 +0,0 @@
|
||||
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
|
||||
<command>
|
||||
<create>
|
||||
<host:create
|
||||
xmlns:host="urn:ietf:params:xml:ns:host-1.0">
|
||||
<host:name>ns1.example.com</host:name>
|
||||
<host:addr ip="v4">192.0.2.2</host:addr>
|
||||
<host:addr ip="v4">192.0.2.29</host:addr>
|
||||
<host:addr ip="v6">1080:0:0:0:8:800:200C:417A</host:addr>
|
||||
</host:create>
|
||||
</create>
|
||||
<clTRID>ABC-12345</clTRID>
|
||||
</command>
|
||||
</epp>
|
||||
@@ -1,18 +0,0 @@
|
||||
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
|
||||
<response>
|
||||
<result code="1000">
|
||||
<msg>Command completed successfully</msg>
|
||||
</result>
|
||||
<resData>
|
||||
<host:creData
|
||||
xmlns:host="urn:ietf:params:xml:ns:host-1.0">
|
||||
<host:name>ns1.example.com</host:name>
|
||||
<host:crDate>1999-04-03T22:00:00.0Z</host:crDate>
|
||||
</host:creData>
|
||||
</resData>
|
||||
<trID>
|
||||
<clTRID>ABC-12345</clTRID>
|
||||
<svTRID>server-trid</svTRID>
|
||||
</trID>
|
||||
</response>
|
||||
</epp>
|
||||
@@ -1,18 +0,0 @@
|
||||
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
|
||||
<response>
|
||||
<result code="1001">
|
||||
<msg>Command completed successfully; action pending</msg>
|
||||
</result>
|
||||
<resData>
|
||||
<host:creData
|
||||
xmlns:host="urn:ietf:params:xml:ns:host-1.0">
|
||||
<host:name>ns1.example.com</host:name>
|
||||
<host:crDate>1999-04-03T22:00:00.0Z</host:crDate>
|
||||
</host:creData>
|
||||
</resData>
|
||||
<trID>
|
||||
<clTRID>ABC-12345</clTRID>
|
||||
<svTRID>server-trid</svTRID>
|
||||
</trID>
|
||||
</response>
|
||||
</epp>
|
||||
-26
@@ -1,26 +0,0 @@
|
||||
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
|
||||
<response>
|
||||
<result code="1301">
|
||||
<msg>Command completed successfully; ack to dequeue</msg>
|
||||
</result>
|
||||
<msgQ count="5" id="12345">
|
||||
<qDate>1999-04-04T22:01:00.0Z</qDate>
|
||||
<msg>Pending action completed successfully.</msg>
|
||||
</msgQ>
|
||||
<resData>
|
||||
<host:panData
|
||||
xmlns:host="urn:ietf:params:xml:ns:host-1.0">
|
||||
<host:name paResult="1">ns1.example.com</host:name>
|
||||
<host:paTRID>
|
||||
<clTRID>ABC-12345</clTRID>
|
||||
<svTRID>server-trid</svTRID>
|
||||
</host:paTRID>
|
||||
<host:paDate>1999-04-04T22:00:00.0Z</host:paDate>
|
||||
</host:panData>
|
||||
</resData>
|
||||
<trID>
|
||||
<clTRID>BCD-23456</clTRID>
|
||||
<svTRID>65432-WXY</svTRID>
|
||||
</trID>
|
||||
</response>
|
||||
</epp>
|
||||
@@ -1,11 +0,0 @@
|
||||
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
|
||||
<command>
|
||||
<delete>
|
||||
<host:delete
|
||||
xmlns:host="urn:ietf:params:xml:ns:host-1.0">
|
||||
<host:name>ns1.example.com</host:name>
|
||||
</host:delete>
|
||||
</delete>
|
||||
<clTRID>ABC-12345</clTRID>
|
||||
</command>
|
||||
</epp>
|
||||
@@ -1,11 +0,0 @@
|
||||
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
|
||||
<response>
|
||||
<result code="1001">
|
||||
<msg>Command completed successfully; action pending</msg>
|
||||
</result>
|
||||
<trID>
|
||||
<clTRID>ABC-12345</clTRID>
|
||||
<svTRID>server-trid</svTRID>
|
||||
</trID>
|
||||
</response>
|
||||
</epp>
|
||||
@@ -1,15 +0,0 @@
|
||||
<rdeHost:host xmlns:rdeHost="urn:ietf:params:xml:ns:rdeHost-1.0">
|
||||
<rdeHost:name>ns1.example1.test</rdeHost:name>
|
||||
<rdeHost:roid>Hns1_example1_test-TEST</rdeHost:roid>
|
||||
<rdeHost:status s="ok"/>
|
||||
<rdeHost:status s="linked"/>
|
||||
<rdeHost:addr ip="v4">192.0.2.2</rdeHost:addr>
|
||||
<rdeHost:addr ip="v4">192.0.2.29</rdeHost:addr>
|
||||
<rdeHost:addr ip="v6">1080:0:0:0:8:800:200C:417A</rdeHost:addr>
|
||||
<rdeHost:clID>RegistrarX</rdeHost:clID>
|
||||
<rdeHost:crRr>RegistrarX</rdeHost:crRr>
|
||||
<rdeHost:crDate>1999-05-08T12:10:00.0Z</rdeHost:crDate>
|
||||
<rdeHost:upRr>RegistrarX</rdeHost:upRr>
|
||||
<rdeHost:upDate>2009-10-03T09:34:00.0Z</rdeHost:upDate>
|
||||
<rdeHost:trDate>2008-10-03T09:34:00.0Z</rdeHost:trDate>
|
||||
</rdeHost:host>
|
||||
@@ -1,11 +0,0 @@
|
||||
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
|
||||
<command>
|
||||
<info>
|
||||
<host:info
|
||||
xmlns:host="urn:ietf:params:xml:ns:host-1.0">
|
||||
<host:name>ns1.example.com</host:name>
|
||||
</host:info>
|
||||
</info>
|
||||
<clTRID>ABC-12345</clTRID>
|
||||
</command>
|
||||
</epp>
|
||||
@@ -1,29 +0,0 @@
|
||||
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
|
||||
<response>
|
||||
<result code="1000">
|
||||
<msg>Command completed successfully</msg>
|
||||
</result>
|
||||
<resData>
|
||||
<host:infData
|
||||
xmlns:host="urn:ietf:params:xml:ns:host-1.0">
|
||||
<host:name>ns1.example.com</host:name>
|
||||
<host:roid>NS1_EXAMPLE1-REP</host:roid>
|
||||
<host:status s="linked"/>
|
||||
<host:status s="clientUpdateProhibited"/>
|
||||
<host:addr ip="v4">192.0.2.2</host:addr>
|
||||
<host:addr ip="v4">192.0.2.29</host:addr>
|
||||
<host:addr ip="v6">1080:0:0:0:8:800:200C:417A</host:addr>
|
||||
<host:clID>TheRegistrar</host:clID>
|
||||
<host:crID>NewRegistrar</host:crID>
|
||||
<host:crDate>1999-04-03T22:00:00.0Z</host:crDate>
|
||||
<host:upID>NewRegistrar</host:upID>
|
||||
<host:upDate>1999-12-03T09:00:00.0Z</host:upDate>
|
||||
<host:trDate>2000-04-08T09:00:00.0Z</host:trDate>
|
||||
</host:infData>
|
||||
</resData>
|
||||
<trID>
|
||||
<clTRID>ABC-12345</clTRID>
|
||||
<svTRID>server-trid</svTRID>
|
||||
</trID>
|
||||
</response>
|
||||
</epp>
|
||||
@@ -1,21 +0,0 @@
|
||||
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
|
||||
<command>
|
||||
<update>
|
||||
<host:update
|
||||
xmlns:host="urn:ietf:params:xml:ns:host-1.0">
|
||||
<host:name>ns1.example.com</host:name>
|
||||
<host:add>
|
||||
<host:addr ip="v4">192.0.2.22</host:addr>
|
||||
<host:status s="clientUpdateProhibited"/>
|
||||
</host:add>
|
||||
<host:rem>
|
||||
<host:addr ip="v6">1080:0:0:0:8:800:200C:417A</host:addr>
|
||||
</host:rem>
|
||||
<host:chg>
|
||||
<host:name>ns2.example.com</host:name>
|
||||
</host:chg>
|
||||
</host:update>
|
||||
</update>
|
||||
<clTRID>ABC-12345</clTRID>
|
||||
</command>
|
||||
</epp>
|
||||
@@ -1,25 +0,0 @@
|
||||
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
|
||||
<greeting>
|
||||
<svID>Example EPP server epp.example.com</svID>
|
||||
<svDate>2000-06-08T22:00:00.0Z</svDate>
|
||||
<svcMenu>
|
||||
<version>1.0</version>
|
||||
<lang>en</lang>
|
||||
<lang>fr</lang>
|
||||
<objURI>urn:ietf:params:xml:ns:obj1</objURI>
|
||||
<objURI>urn:ietf:params:xml:ns:obj2</objURI>
|
||||
<objURI>urn:ietf:params:xml:ns:obj3</objURI>
|
||||
<svcExtension>
|
||||
<extURI>http://custom/obj1ext-1.0</extURI>
|
||||
</svcExtension>
|
||||
</svcMenu>
|
||||
</greeting>
|
||||
<dcp>
|
||||
<access><all/></access>
|
||||
<statement>
|
||||
<purpose><admin/><prov/></purpose>
|
||||
<recipient><ours/><public/></recipient>
|
||||
<retention><stated/></retention>
|
||||
</statement>
|
||||
</dcp>
|
||||
</epp>
|
||||
@@ -1,23 +0,0 @@
|
||||
<!-- This sample is not valid for EPP since it doesn't use the EPP objURIs. -->
|
||||
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
|
||||
<command>
|
||||
<login>
|
||||
<clID>NewRegistrar</clID>
|
||||
<pw>foo-BAR2</pw>
|
||||
<newPW>bar-FOO2</newPW>
|
||||
<options>
|
||||
<version>1.0</version>
|
||||
<lang>en</lang>
|
||||
</options>
|
||||
<svcs>
|
||||
<objURI>urn:ietf:params:xml:ns:obj1</objURI>
|
||||
<objURI>urn:ietf:params:xml:ns:obj2</objURI>
|
||||
<objURI>urn:ietf:params:xml:ns:obj3</objURI>
|
||||
<svcExtension>
|
||||
<extURI>http://custom/obj1ext-1.0</extURI>
|
||||
</svcExtension>
|
||||
</svcs>
|
||||
</login>
|
||||
<clTRID>ABC-12345</clTRID>
|
||||
</command>
|
||||
</epp>
|
||||
@@ -1,6 +0,0 @@
|
||||
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
|
||||
<command>
|
||||
<logout/>
|
||||
<clTRID>ABC-12345</clTRID>
|
||||
</command>
|
||||
</epp>
|
||||
@@ -1,11 +0,0 @@
|
||||
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
|
||||
<response>
|
||||
<result code="1500">
|
||||
<msg>Command completed successfully; ending session</msg>
|
||||
</result>
|
||||
<trID>
|
||||
<clTRID>ABC-12345</clTRID>
|
||||
<svTRID>server-trid</svTRID>
|
||||
</trID>
|
||||
</response>
|
||||
</epp>
|
||||
@@ -1,6 +0,0 @@
|
||||
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
|
||||
<command>
|
||||
<poll op="req"/>
|
||||
<clTRID>ABC-12345</clTRID>
|
||||
</command>
|
||||
</epp>
|
||||
@@ -1,6 +0,0 @@
|
||||
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
|
||||
<command>
|
||||
<poll op="ack" msgID="1-1-1-3"/>
|
||||
<clTRID>ABC-12346</clTRID>
|
||||
</command>
|
||||
</epp>
|
||||
@@ -1,12 +0,0 @@
|
||||
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
|
||||
<response>
|
||||
<result code="1000">
|
||||
<msg>Command completed successfully</msg>
|
||||
</result>
|
||||
<msgQ count="4" id="3"/>
|
||||
<trID>
|
||||
<clTRID>ABC-12346</clTRID>
|
||||
<svTRID>server-trid</svTRID>
|
||||
</trID>
|
||||
</response>
|
||||
</epp>
|
||||
@@ -1,11 +0,0 @@
|
||||
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
|
||||
<response>
|
||||
<result code="1300">
|
||||
<msg>Command completed successfully; no messages</msg>
|
||||
</result>
|
||||
<trID>
|
||||
<clTRID>ABC-12345</clTRID>
|
||||
<svTRID>server-trid</svTRID>
|
||||
</trID>
|
||||
</response>
|
||||
</epp>
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user