mirror of
https://github.com/apache/poi.git
synced 2026-02-27 12:30:08 +08:00
Convert some files to unix newlines
Otherwise these can cause issues when checking out sources on Windows
This commit is contained in:
parent
2dd124eb42
commit
338882ac88
188
gradlew.bat
vendored
188
gradlew.bat
vendored
@ -1,94 +1,94 @@
|
|||||||
@rem
|
@rem
|
||||||
@rem Copyright 2015 the original author or authors.
|
@rem Copyright 2015 the original author or authors.
|
||||||
@rem
|
@rem
|
||||||
@rem Licensed under the Apache License, Version 2.0 (the "License");
|
@rem Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
@rem you may not use this file except in compliance with the License.
|
@rem you may not use this file except in compliance with the License.
|
||||||
@rem You may obtain a copy of the License at
|
@rem You may obtain a copy of the License at
|
||||||
@rem
|
@rem
|
||||||
@rem https://www.apache.org/licenses/LICENSE-2.0
|
@rem https://www.apache.org/licenses/LICENSE-2.0
|
||||||
@rem
|
@rem
|
||||||
@rem Unless required by applicable law or agreed to in writing, software
|
@rem Unless required by applicable law or agreed to in writing, software
|
||||||
@rem distributed under the License is distributed on an "AS IS" BASIS,
|
@rem distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
@rem See the License for the specific language governing permissions and
|
@rem See the License for the specific language governing permissions and
|
||||||
@rem limitations under the License.
|
@rem limitations under the License.
|
||||||
@rem
|
@rem
|
||||||
@rem SPDX-License-Identifier: Apache-2.0
|
@rem SPDX-License-Identifier: Apache-2.0
|
||||||
@rem
|
@rem
|
||||||
|
|
||||||
@if "%DEBUG%"=="" @echo off
|
@if "%DEBUG%"=="" @echo off
|
||||||
@rem ##########################################################################
|
@rem ##########################################################################
|
||||||
@rem
|
@rem
|
||||||
@rem Gradle startup script for Windows
|
@rem Gradle startup script for Windows
|
||||||
@rem
|
@rem
|
||||||
@rem ##########################################################################
|
@rem ##########################################################################
|
||||||
|
|
||||||
@rem Set local scope for the variables with windows NT shell
|
@rem Set local scope for the variables with windows NT shell
|
||||||
if "%OS%"=="Windows_NT" setlocal
|
if "%OS%"=="Windows_NT" setlocal
|
||||||
|
|
||||||
set DIRNAME=%~dp0
|
set DIRNAME=%~dp0
|
||||||
if "%DIRNAME%"=="" set DIRNAME=.
|
if "%DIRNAME%"=="" set DIRNAME=.
|
||||||
@rem This is normally unused
|
@rem This is normally unused
|
||||||
set APP_BASE_NAME=%~n0
|
set APP_BASE_NAME=%~n0
|
||||||
set APP_HOME=%DIRNAME%
|
set APP_HOME=%DIRNAME%
|
||||||
|
|
||||||
@rem Resolve any "." and ".." in APP_HOME to make it shorter.
|
@rem Resolve any "." and ".." in APP_HOME to make it shorter.
|
||||||
for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi
|
for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi
|
||||||
|
|
||||||
@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
|
@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
|
||||||
set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m"
|
set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m"
|
||||||
|
|
||||||
@rem Find java.exe
|
@rem Find java.exe
|
||||||
if defined JAVA_HOME goto findJavaFromJavaHome
|
if defined JAVA_HOME goto findJavaFromJavaHome
|
||||||
|
|
||||||
set JAVA_EXE=java.exe
|
set JAVA_EXE=java.exe
|
||||||
%JAVA_EXE% -version >NUL 2>&1
|
%JAVA_EXE% -version >NUL 2>&1
|
||||||
if %ERRORLEVEL% equ 0 goto execute
|
if %ERRORLEVEL% equ 0 goto execute
|
||||||
|
|
||||||
echo. 1>&2
|
echo. 1>&2
|
||||||
echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. 1>&2
|
echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. 1>&2
|
||||||
echo. 1>&2
|
echo. 1>&2
|
||||||
echo Please set the JAVA_HOME variable in your environment to match the 1>&2
|
echo Please set the JAVA_HOME variable in your environment to match the 1>&2
|
||||||
echo location of your Java installation. 1>&2
|
echo location of your Java installation. 1>&2
|
||||||
|
|
||||||
goto fail
|
goto fail
|
||||||
|
|
||||||
:findJavaFromJavaHome
|
:findJavaFromJavaHome
|
||||||
set JAVA_HOME=%JAVA_HOME:"=%
|
set JAVA_HOME=%JAVA_HOME:"=%
|
||||||
set JAVA_EXE=%JAVA_HOME%/bin/java.exe
|
set JAVA_EXE=%JAVA_HOME%/bin/java.exe
|
||||||
|
|
||||||
if exist "%JAVA_EXE%" goto execute
|
if exist "%JAVA_EXE%" goto execute
|
||||||
|
|
||||||
echo. 1>&2
|
echo. 1>&2
|
||||||
echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% 1>&2
|
echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% 1>&2
|
||||||
echo. 1>&2
|
echo. 1>&2
|
||||||
echo Please set the JAVA_HOME variable in your environment to match the 1>&2
|
echo Please set the JAVA_HOME variable in your environment to match the 1>&2
|
||||||
echo location of your Java installation. 1>&2
|
echo location of your Java installation. 1>&2
|
||||||
|
|
||||||
goto fail
|
goto fail
|
||||||
|
|
||||||
:execute
|
:execute
|
||||||
@rem Setup the command line
|
@rem Setup the command line
|
||||||
|
|
||||||
set CLASSPATH=
|
set CLASSPATH=
|
||||||
|
|
||||||
|
|
||||||
@rem Execute Gradle
|
@rem Execute Gradle
|
||||||
"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" -jar "%APP_HOME%\gradle\wrapper\gradle-wrapper.jar" %*
|
"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" -jar "%APP_HOME%\gradle\wrapper\gradle-wrapper.jar" %*
|
||||||
|
|
||||||
:end
|
:end
|
||||||
@rem End local scope for the variables with windows NT shell
|
@rem End local scope for the variables with windows NT shell
|
||||||
if %ERRORLEVEL% equ 0 goto mainEnd
|
if %ERRORLEVEL% equ 0 goto mainEnd
|
||||||
|
|
||||||
:fail
|
:fail
|
||||||
rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of
|
rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of
|
||||||
rem the _cmd.exe /c_ return code!
|
rem the _cmd.exe /c_ return code!
|
||||||
set EXIT_CODE=%ERRORLEVEL%
|
set EXIT_CODE=%ERRORLEVEL%
|
||||||
if %EXIT_CODE% equ 0 set EXIT_CODE=1
|
if %EXIT_CODE% equ 0 set EXIT_CODE=1
|
||||||
if not ""=="%GRADLE_EXIT_CONSOLE%" exit %EXIT_CODE%
|
if not ""=="%GRADLE_EXIT_CONSOLE%" exit %EXIT_CODE%
|
||||||
exit /b %EXIT_CODE%
|
exit /b %EXIT_CODE%
|
||||||
|
|
||||||
:mainEnd
|
:mainEnd
|
||||||
if "%OS%"=="Windows_NT" endlocal
|
if "%OS%"=="Windows_NT" endlocal
|
||||||
|
|
||||||
:omega
|
:omega
|
||||||
|
|||||||
@ -1,251 +1,251 @@
|
|||||||
/*
|
/*
|
||||||
* ====================================================================
|
* ====================================================================
|
||||||
* Licensed to the Apache Software Foundation (ASF) under one or more
|
* Licensed to the Apache Software Foundation (ASF) under one or more
|
||||||
* contributor license agreements. See the NOTICE file distributed with
|
* contributor license agreements. See the NOTICE file distributed with
|
||||||
* this work for additional information regarding copyright ownership.
|
* this work for additional information regarding copyright ownership.
|
||||||
* The ASF licenses this file to You under the Apache License, Version 2.0
|
* The ASF licenses this file to You under the Apache License, Version 2.0
|
||||||
* (the "License"); you may not use this file except in compliance with
|
* (the "License"); you may not use this file except in compliance with
|
||||||
* the License. You may obtain a copy of the License at
|
* the License. You may obtain a copy of the License at
|
||||||
*
|
*
|
||||||
* http://www.apache.org/licenses/LICENSE-2.0
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||||||
*
|
*
|
||||||
* Unless required by applicable law or agreed to in writing, software
|
* Unless required by applicable law or agreed to in writing, software
|
||||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
* See the License for the specific language governing permissions and
|
* See the License for the specific language governing permissions and
|
||||||
* limitations under the License.
|
* limitations under the License.
|
||||||
* ====================================================================
|
* ====================================================================
|
||||||
*/
|
*/
|
||||||
|
|
||||||
package org.apache.poi.xslf.usermodel;
|
package org.apache.poi.xslf.usermodel;
|
||||||
|
|
||||||
import java.awt.Rectangle;
|
import java.awt.Rectangle;
|
||||||
import java.awt.image.BufferedImage;
|
import java.awt.image.BufferedImage;
|
||||||
import java.io.ByteArrayOutputStream;
|
import java.io.ByteArrayOutputStream;
|
||||||
import java.io.FileOutputStream;
|
import java.io.FileOutputStream;
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
import java.io.InputStream;
|
import java.io.InputStream;
|
||||||
import java.io.OutputStream;
|
import java.io.OutputStream;
|
||||||
import java.net.URL;
|
import java.net.URL;
|
||||||
import java.text.DecimalFormat;
|
import java.text.DecimalFormat;
|
||||||
|
|
||||||
import javax.imageio.ImageIO;
|
import javax.imageio.ImageIO;
|
||||||
import javax.xml.namespace.QName;
|
import javax.xml.namespace.QName;
|
||||||
|
|
||||||
import org.apache.poi.openxml4j.opc.PackagePart;
|
import org.apache.poi.openxml4j.opc.PackagePart;
|
||||||
import org.apache.poi.openxml4j.opc.PackagePartName;
|
import org.apache.poi.openxml4j.opc.PackagePartName;
|
||||||
import org.apache.poi.openxml4j.opc.PackageRelationship;
|
import org.apache.poi.openxml4j.opc.PackageRelationship;
|
||||||
import org.apache.poi.openxml4j.opc.PackagingURIHelper;
|
import org.apache.poi.openxml4j.opc.PackagingURIHelper;
|
||||||
import org.apache.poi.openxml4j.opc.TargetMode;
|
import org.apache.poi.openxml4j.opc.TargetMode;
|
||||||
import org.apache.poi.sl.usermodel.PictureData.PictureType;
|
import org.apache.poi.sl.usermodel.PictureData.PictureType;
|
||||||
import org.apache.xmlbeans.XmlCursor;
|
import org.apache.xmlbeans.XmlCursor;
|
||||||
import org.openxmlformats.schemas.drawingml.x2006.main.CTHyperlink;
|
import org.openxmlformats.schemas.drawingml.x2006.main.CTHyperlink;
|
||||||
import org.openxmlformats.schemas.officeDocument.x2006.relationships.STRelationshipId;
|
import org.openxmlformats.schemas.officeDocument.x2006.relationships.STRelationshipId;
|
||||||
import org.openxmlformats.schemas.presentationml.x2006.main.CTApplicationNonVisualDrawingProps;
|
import org.openxmlformats.schemas.presentationml.x2006.main.CTApplicationNonVisualDrawingProps;
|
||||||
import org.openxmlformats.schemas.presentationml.x2006.main.CTExtension;
|
import org.openxmlformats.schemas.presentationml.x2006.main.CTExtension;
|
||||||
import org.openxmlformats.schemas.presentationml.x2006.main.CTPicture;
|
import org.openxmlformats.schemas.presentationml.x2006.main.CTPicture;
|
||||||
import org.openxmlformats.schemas.presentationml.x2006.main.CTSlide;
|
import org.openxmlformats.schemas.presentationml.x2006.main.CTSlide;
|
||||||
import org.openxmlformats.schemas.presentationml.x2006.main.CTTLCommonMediaNodeData;
|
import org.openxmlformats.schemas.presentationml.x2006.main.CTTLCommonMediaNodeData;
|
||||||
import org.openxmlformats.schemas.presentationml.x2006.main.CTTLCommonTimeNodeData;
|
import org.openxmlformats.schemas.presentationml.x2006.main.CTTLCommonTimeNodeData;
|
||||||
import org.openxmlformats.schemas.presentationml.x2006.main.CTTimeNodeList;
|
import org.openxmlformats.schemas.presentationml.x2006.main.CTTimeNodeList;
|
||||||
import org.openxmlformats.schemas.presentationml.x2006.main.STTLTimeIndefinite;
|
import org.openxmlformats.schemas.presentationml.x2006.main.STTLTimeIndefinite;
|
||||||
import org.openxmlformats.schemas.presentationml.x2006.main.STTLTimeNodeFillType;
|
import org.openxmlformats.schemas.presentationml.x2006.main.STTLTimeNodeFillType;
|
||||||
import org.openxmlformats.schemas.presentationml.x2006.main.STTLTimeNodeRestartType;
|
import org.openxmlformats.schemas.presentationml.x2006.main.STTLTimeNodeRestartType;
|
||||||
import org.openxmlformats.schemas.presentationml.x2006.main.STTLTimeNodeType;
|
import org.openxmlformats.schemas.presentationml.x2006.main.STTLTimeNodeType;
|
||||||
|
|
||||||
import com.xuggle.mediatool.IMediaReader;
|
import com.xuggle.mediatool.IMediaReader;
|
||||||
import com.xuggle.mediatool.MediaListenerAdapter;
|
import com.xuggle.mediatool.MediaListenerAdapter;
|
||||||
import com.xuggle.mediatool.ToolFactory;
|
import com.xuggle.mediatool.ToolFactory;
|
||||||
import com.xuggle.mediatool.event.IVideoPictureEvent;
|
import com.xuggle.mediatool.event.IVideoPictureEvent;
|
||||||
import com.xuggle.xuggler.Global;
|
import com.xuggle.xuggler.Global;
|
||||||
import com.xuggle.xuggler.IContainer;
|
import com.xuggle.xuggler.IContainer;
|
||||||
import com.xuggle.xuggler.io.InputOutputStreamHandler;
|
import com.xuggle.xuggler.io.InputOutputStreamHandler;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Adding multiple videos to a slide
|
* Adding multiple videos to a slide
|
||||||
*
|
*
|
||||||
* need the Xuggler 5.4 jars:
|
* need the Xuggler 5.4 jars:
|
||||||
* <repositories>
|
* <repositories>
|
||||||
* <repository>
|
* <repository>
|
||||||
* <id>xuggle repo</id>
|
* <id>xuggle repo</id>
|
||||||
* <url>http://xuggle.googlecode.com/svn/trunk/repo/share/java/</url>
|
* <url>http://xuggle.googlecode.com/svn/trunk/repo/share/java/</url>
|
||||||
* </repository>
|
* </repository>
|
||||||
* </repositories>
|
* </repositories>
|
||||||
* ...
|
* ...
|
||||||
* <dependency>
|
* <dependency>
|
||||||
* <groupId>xuggle</groupId>
|
* <groupId>xuggle</groupId>
|
||||||
* <artifactId>xuggle-xuggler</artifactId>
|
* <artifactId>xuggle-xuggler</artifactId>
|
||||||
* <version>5.4</version>
|
* <version>5.4</version>
|
||||||
* </dependency>
|
* </dependency>
|
||||||
*
|
*
|
||||||
* @see <a href="http://stackoverflow.com/questions/15197300/apache-poi-xslf-adding-movie-to-the-slide">Apache POI XSLF Adding movie to the slide</a>
|
* @see <a href="http://stackoverflow.com/questions/15197300/apache-poi-xslf-adding-movie-to-the-slide">Apache POI XSLF Adding movie to the slide</a>
|
||||||
* @see <a href="http://apache-poi.1045710.n5.nabble.com/Question-about-embedded-video-in-PPTX-files-tt5718461.html">Question about embedded video in PPTX files</a>
|
* @see <a href="http://apache-poi.1045710.n5.nabble.com/Question-about-embedded-video-in-PPTX-files-tt5718461.html">Question about embedded video in PPTX files</a>
|
||||||
*/
|
*/
|
||||||
public class AddVideoToPptx {
|
public class AddVideoToPptx {
|
||||||
static DecimalFormat df_time = new DecimalFormat("0.####");
|
static DecimalFormat df_time = new DecimalFormat("0.####");
|
||||||
|
|
||||||
public static void main(String[] args) throws Exception {
|
public static void main(String[] args) throws Exception {
|
||||||
URL video = new URL("http://archive.org/download/test-mpeg/test-mpeg.mpg");
|
URL video = new URL("http://archive.org/download/test-mpeg/test-mpeg.mpg");
|
||||||
// URL video = new URL("file:test-mpeg.mpg");
|
// URL video = new URL("file:test-mpeg.mpg");
|
||||||
|
|
||||||
XMLSlideShow pptx = new XMLSlideShow();
|
XMLSlideShow pptx = new XMLSlideShow();
|
||||||
|
|
||||||
// add video file
|
// add video file
|
||||||
String videoFileName = video.getPath().substring(video.getPath().lastIndexOf('/')+1);
|
String videoFileName = video.getPath().substring(video.getPath().lastIndexOf('/')+1);
|
||||||
PackagePartName partName = PackagingURIHelper.createPartName("/ppt/media/"+videoFileName);
|
PackagePartName partName = PackagingURIHelper.createPartName("/ppt/media/"+videoFileName);
|
||||||
PackagePart part = pptx.getPackage().createPart(partName, "video/mpeg");
|
PackagePart part = pptx.getPackage().createPart(partName, "video/mpeg");
|
||||||
OutputStream partOs = part.getOutputStream();
|
OutputStream partOs = part.getOutputStream();
|
||||||
InputStream fis = video.openStream();
|
InputStream fis = video.openStream();
|
||||||
byte buf[] = new byte[1024];
|
byte buf[] = new byte[1024];
|
||||||
for (int readBytes; (readBytes = fis.read(buf)) != -1; partOs.write(buf, 0, readBytes));
|
for (int readBytes; (readBytes = fis.read(buf)) != -1; partOs.write(buf, 0, readBytes));
|
||||||
fis.close();
|
fis.close();
|
||||||
partOs.close();
|
partOs.close();
|
||||||
|
|
||||||
XSLFSlide slide1 = pptx.createSlide();
|
XSLFSlide slide1 = pptx.createSlide();
|
||||||
XSLFPictureShape pv1 = addPreview(pptx, slide1, part, 5, 50, 50);
|
XSLFPictureShape pv1 = addPreview(pptx, slide1, part, 5, 50, 50);
|
||||||
addVideo(pptx, slide1, part, pv1, 5);
|
addVideo(pptx, slide1, part, pv1, 5);
|
||||||
addTimingInfo(slide1, pv1);
|
addTimingInfo(slide1, pv1);
|
||||||
XSLFPictureShape pv2 = addPreview(pptx, slide1, part, 9, 50, 250);
|
XSLFPictureShape pv2 = addPreview(pptx, slide1, part, 9, 50, 250);
|
||||||
addVideo(pptx, slide1, part, pv2, 9);
|
addVideo(pptx, slide1, part, pv2, 9);
|
||||||
addTimingInfo(slide1, pv2);
|
addTimingInfo(slide1, pv2);
|
||||||
|
|
||||||
FileOutputStream fos = new FileOutputStream("pptx-with-video.pptx");
|
FileOutputStream fos = new FileOutputStream("pptx-with-video.pptx");
|
||||||
pptx.write(fos);
|
pptx.write(fos);
|
||||||
fos.close();
|
fos.close();
|
||||||
|
|
||||||
pptx.close();
|
pptx.close();
|
||||||
}
|
}
|
||||||
|
|
||||||
static XSLFPictureShape addPreview(XMLSlideShow pptx, XSLFSlide slide1, PackagePart videoPart, double seconds, int x, int y) throws IOException {
|
static XSLFPictureShape addPreview(XMLSlideShow pptx, XSLFSlide slide1, PackagePart videoPart, double seconds, int x, int y) throws IOException {
|
||||||
// get preview after 5 sec.
|
// get preview after 5 sec.
|
||||||
IContainer ic = IContainer.make();
|
IContainer ic = IContainer.make();
|
||||||
InputOutputStreamHandler iosh = new InputOutputStreamHandler(videoPart.getInputStream());
|
InputOutputStreamHandler iosh = new InputOutputStreamHandler(videoPart.getInputStream());
|
||||||
if (ic.open(iosh, IContainer.Type.READ, null) < 0) return null;
|
if (ic.open(iosh, IContainer.Type.READ, null) < 0) return null;
|
||||||
|
|
||||||
IMediaReader mediaReader = ToolFactory.makeReader(ic);
|
IMediaReader mediaReader = ToolFactory.makeReader(ic);
|
||||||
|
|
||||||
// stipulate that we want BufferedImages created in BGR 24bit color space
|
// stipulate that we want BufferedImages created in BGR 24bit color space
|
||||||
mediaReader.setBufferedImageTypeToGenerate(BufferedImage.TYPE_3BYTE_BGR);
|
mediaReader.setBufferedImageTypeToGenerate(BufferedImage.TYPE_3BYTE_BGR);
|
||||||
|
|
||||||
ImageSnapListener isl = new ImageSnapListener(seconds);
|
ImageSnapListener isl = new ImageSnapListener(seconds);
|
||||||
mediaReader.addListener(isl);
|
mediaReader.addListener(isl);
|
||||||
|
|
||||||
// read out the contents of the media file and
|
// read out the contents of the media file and
|
||||||
// dispatch events to the attached listener
|
// dispatch events to the attached listener
|
||||||
while (!isl.hasFired && mediaReader.readPacket() == null) ;
|
while (!isl.hasFired && mediaReader.readPacket() == null) ;
|
||||||
|
|
||||||
mediaReader.close();
|
mediaReader.close();
|
||||||
ic.close();
|
ic.close();
|
||||||
|
|
||||||
// add snapshot
|
// add snapshot
|
||||||
BufferedImage image1 = isl.image;
|
BufferedImage image1 = isl.image;
|
||||||
ByteArrayOutputStream bos = new ByteArrayOutputStream();
|
ByteArrayOutputStream bos = new ByteArrayOutputStream();
|
||||||
ImageIO.write(image1, "jpeg", bos);
|
ImageIO.write(image1, "jpeg", bos);
|
||||||
XSLFPictureData snap = pptx.addPicture(bos.toByteArray(), PictureType.JPEG);
|
XSLFPictureData snap = pptx.addPicture(bos.toByteArray(), PictureType.JPEG);
|
||||||
XSLFPictureShape pic1 = slide1.createPicture(snap);
|
XSLFPictureShape pic1 = slide1.createPicture(snap);
|
||||||
pic1.setAnchor(new Rectangle(x, y, image1.getWidth(), image1.getHeight()));
|
pic1.setAnchor(new Rectangle(x, y, image1.getWidth(), image1.getHeight()));
|
||||||
return pic1;
|
return pic1;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void addVideo(XMLSlideShow pptx, XSLFSlide slide1, PackagePart videoPart, XSLFPictureShape pic1, double seconds) throws IOException {
|
static void addVideo(XMLSlideShow pptx, XSLFSlide slide1, PackagePart videoPart, XSLFPictureShape pic1, double seconds) throws IOException {
|
||||||
|
|
||||||
// add video shape
|
// add video shape
|
||||||
PackagePartName partName = videoPart.getPartName();
|
PackagePartName partName = videoPart.getPartName();
|
||||||
PackageRelationship prsEmbed1 = slide1.getPackagePart().addRelationship(partName, TargetMode.INTERNAL, "http://schemas.microsoft.com/office/2007/relationships/media");
|
PackageRelationship prsEmbed1 = slide1.getPackagePart().addRelationship(partName, TargetMode.INTERNAL, "http://schemas.microsoft.com/office/2007/relationships/media");
|
||||||
PackageRelationship prsExec1 = slide1.getPackagePart().addRelationship(partName, TargetMode.INTERNAL, "http://schemas.openxmlformats.org/officeDocument/2006/relationships/video");
|
PackageRelationship prsExec1 = slide1.getPackagePart().addRelationship(partName, TargetMode.INTERNAL, "http://schemas.openxmlformats.org/officeDocument/2006/relationships/video");
|
||||||
CTPicture xpic1 = (CTPicture)pic1.getXmlObject();
|
CTPicture xpic1 = (CTPicture)pic1.getXmlObject();
|
||||||
CTHyperlink link1 = xpic1.getNvPicPr().getCNvPr().addNewHlinkClick();
|
CTHyperlink link1 = xpic1.getNvPicPr().getCNvPr().addNewHlinkClick();
|
||||||
link1.setId("");
|
link1.setId("");
|
||||||
link1.setAction("ppaction://media");
|
link1.setAction("ppaction://media");
|
||||||
|
|
||||||
// add video relation
|
// add video relation
|
||||||
CTApplicationNonVisualDrawingProps nvPr = xpic1.getNvPicPr().getNvPr();
|
CTApplicationNonVisualDrawingProps nvPr = xpic1.getNvPicPr().getNvPr();
|
||||||
nvPr.addNewVideoFile().setLink(prsExec1.getId());
|
nvPr.addNewVideoFile().setLink(prsExec1.getId());
|
||||||
CTExtension ext = nvPr.addNewExtLst().addNewExt();
|
CTExtension ext = nvPr.addNewExtLst().addNewExt();
|
||||||
// see http://msdn.microsoft.com/en-us/library/dd950140(v=office.12).aspx
|
// see http://msdn.microsoft.com/en-us/library/dd950140(v=office.12).aspx
|
||||||
ext.setUri("{DAA4B4D4-6D71-4841-9C94-3DE7FCFB9230}");
|
ext.setUri("{DAA4B4D4-6D71-4841-9C94-3DE7FCFB9230}");
|
||||||
String p14Ns = "http://schemas.microsoft.com/office/powerpoint/2010/main";
|
String p14Ns = "http://schemas.microsoft.com/office/powerpoint/2010/main";
|
||||||
|
|
||||||
try (XmlCursor cur = ext.newCursor()) {
|
try (XmlCursor cur = ext.newCursor()) {
|
||||||
cur.toEndToken();
|
cur.toEndToken();
|
||||||
cur.beginElement(new QName(p14Ns, "media", "p14"));
|
cur.beginElement(new QName(p14Ns, "media", "p14"));
|
||||||
cur.insertNamespace("p14", p14Ns);
|
cur.insertNamespace("p14", p14Ns);
|
||||||
cur.insertAttributeWithValue(new QName(STRelationshipId.type.getName().getNamespaceURI(), "embed"), prsEmbed1.getId());
|
cur.insertAttributeWithValue(new QName(STRelationshipId.type.getName().getNamespaceURI(), "embed"), prsEmbed1.getId());
|
||||||
cur.beginElement(new QName(p14Ns, "trim", "p14"));
|
cur.beginElement(new QName(p14Ns, "trim", "p14"));
|
||||||
cur.insertAttributeWithValue("st", df_time.format(seconds*1000.0));
|
cur.insertAttributeWithValue("st", df_time.format(seconds*1000.0));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static void addTimingInfo(XSLFSlide slide1, XSLFPictureShape pic1) {
|
static void addTimingInfo(XSLFSlide slide1, XSLFPictureShape pic1) {
|
||||||
// add slide timing information, so video can be controlled
|
// add slide timing information, so video can be controlled
|
||||||
CTSlide xslide = slide1.getXmlObject();
|
CTSlide xslide = slide1.getXmlObject();
|
||||||
CTTimeNodeList ctnl;
|
CTTimeNodeList ctnl;
|
||||||
if (!xslide.isSetTiming()) {
|
if (!xslide.isSetTiming()) {
|
||||||
CTTLCommonTimeNodeData ctn = xslide.addNewTiming().addNewTnLst().addNewPar().addNewCTn();
|
CTTLCommonTimeNodeData ctn = xslide.addNewTiming().addNewTnLst().addNewPar().addNewCTn();
|
||||||
ctn.setDur(STTLTimeIndefinite.INDEFINITE);
|
ctn.setDur(STTLTimeIndefinite.INDEFINITE);
|
||||||
ctn.setRestart(STTLTimeNodeRestartType.NEVER);
|
ctn.setRestart(STTLTimeNodeRestartType.NEVER);
|
||||||
ctn.setNodeType(STTLTimeNodeType.TM_ROOT);
|
ctn.setNodeType(STTLTimeNodeType.TM_ROOT);
|
||||||
ctnl = ctn.addNewChildTnLst();
|
ctnl = ctn.addNewChildTnLst();
|
||||||
} else {
|
} else {
|
||||||
ctnl = xslide.getTiming().getTnLst().getParArray(0).getCTn().getChildTnLst();
|
ctnl = xslide.getTiming().getTnLst().getParArray(0).getCTn().getChildTnLst();
|
||||||
}
|
}
|
||||||
|
|
||||||
CTTLCommonMediaNodeData cmedia = ctnl.addNewVideo().addNewCMediaNode();
|
CTTLCommonMediaNodeData cmedia = ctnl.addNewVideo().addNewCMediaNode();
|
||||||
cmedia.setVol(80000);
|
cmedia.setVol(80000);
|
||||||
CTTLCommonTimeNodeData ctn = cmedia.addNewCTn();
|
CTTLCommonTimeNodeData ctn = cmedia.addNewCTn();
|
||||||
ctn.setFill(STTLTimeNodeFillType.HOLD);
|
ctn.setFill(STTLTimeNodeFillType.HOLD);
|
||||||
ctn.setDisplay(false);
|
ctn.setDisplay(false);
|
||||||
ctn.addNewStCondLst().addNewCond().setDelay(STTLTimeIndefinite.INDEFINITE);
|
ctn.addNewStCondLst().addNewCond().setDelay(STTLTimeIndefinite.INDEFINITE);
|
||||||
cmedia.addNewTgtEl().addNewSpTgt().setSpid(""+pic1.getShapeId());
|
cmedia.addNewTgtEl().addNewSpTgt().setSpid(""+pic1.getShapeId());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
static class ImageSnapListener extends MediaListenerAdapter {
|
static class ImageSnapListener extends MediaListenerAdapter {
|
||||||
final double SECONDS_BETWEEN_FRAMES;
|
final double SECONDS_BETWEEN_FRAMES;
|
||||||
final long MICRO_SECONDS_BETWEEN_FRAMES;
|
final long MICRO_SECONDS_BETWEEN_FRAMES;
|
||||||
boolean hasFired = false;
|
boolean hasFired = false;
|
||||||
BufferedImage image = null;
|
BufferedImage image = null;
|
||||||
|
|
||||||
// The video stream index, used to ensure we display frames from one and
|
// The video stream index, used to ensure we display frames from one and
|
||||||
// only one video stream from the media container.
|
// only one video stream from the media container.
|
||||||
int mVideoStreamIndex = -1;
|
int mVideoStreamIndex = -1;
|
||||||
|
|
||||||
// Time of last frame write
|
// Time of last frame write
|
||||||
long mLastPtsWrite = Global.NO_PTS;
|
long mLastPtsWrite = Global.NO_PTS;
|
||||||
|
|
||||||
public ImageSnapListener(double seconds) {
|
public ImageSnapListener(double seconds) {
|
||||||
SECONDS_BETWEEN_FRAMES = seconds;
|
SECONDS_BETWEEN_FRAMES = seconds;
|
||||||
MICRO_SECONDS_BETWEEN_FRAMES =
|
MICRO_SECONDS_BETWEEN_FRAMES =
|
||||||
(long)(Global.DEFAULT_PTS_PER_SECOND * SECONDS_BETWEEN_FRAMES);
|
(long)(Global.DEFAULT_PTS_PER_SECOND * SECONDS_BETWEEN_FRAMES);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onVideoPicture(IVideoPictureEvent event) {
|
public void onVideoPicture(IVideoPictureEvent event) {
|
||||||
|
|
||||||
if (event.getStreamIndex() != mVideoStreamIndex) {
|
if (event.getStreamIndex() != mVideoStreamIndex) {
|
||||||
// if the selected video stream id is not yet set, go ahead an
|
// if the selected video stream id is not yet set, go ahead an
|
||||||
// select this lucky video stream
|
// select this lucky video stream
|
||||||
if (mVideoStreamIndex != -1) return;
|
if (mVideoStreamIndex != -1) return;
|
||||||
mVideoStreamIndex = event.getStreamIndex();
|
mVideoStreamIndex = event.getStreamIndex();
|
||||||
}
|
}
|
||||||
|
|
||||||
long evtTS = event.getTimeStamp();
|
long evtTS = event.getTimeStamp();
|
||||||
|
|
||||||
// if uninitialized, back date mLastPtsWrite to get the very first frame
|
// if uninitialized, back date mLastPtsWrite to get the very first frame
|
||||||
if (mLastPtsWrite == Global.NO_PTS)
|
if (mLastPtsWrite == Global.NO_PTS)
|
||||||
mLastPtsWrite = Math.max(0, evtTS - MICRO_SECONDS_BETWEEN_FRAMES);
|
mLastPtsWrite = Math.max(0, evtTS - MICRO_SECONDS_BETWEEN_FRAMES);
|
||||||
|
|
||||||
// if its time to write the next frame
|
// if its time to write the next frame
|
||||||
if (evtTS - mLastPtsWrite >= MICRO_SECONDS_BETWEEN_FRAMES) {
|
if (evtTS - mLastPtsWrite >= MICRO_SECONDS_BETWEEN_FRAMES) {
|
||||||
if (!hasFired) {
|
if (!hasFired) {
|
||||||
image = event.getImage();
|
image = event.getImage();
|
||||||
hasFired = true;
|
hasFired = true;
|
||||||
}
|
}
|
||||||
// update last write time
|
// update last write time
|
||||||
mLastPtsWrite += MICRO_SECONDS_BETWEEN_FRAMES;
|
mLastPtsWrite += MICRO_SECONDS_BETWEEN_FRAMES;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1,12 +1,12 @@
|
|||||||
10 languages with most speakers as first language
|
10 languages with most speakers as first language
|
||||||
countries,speakers,language
|
countries,speakers,language
|
||||||
58,315,العربية
|
58,315,العربية
|
||||||
4,243,বাংলা
|
4,243,বাংলা
|
||||||
38,1299,中文
|
38,1299,中文
|
||||||
118,378,English
|
118,378,English
|
||||||
4,260,हिन्दी
|
4,260,हिन्दी
|
||||||
2,128,日本語
|
2,128,日本語
|
||||||
15,223,português
|
15,223,português
|
||||||
6,119,ਪੰਜਾਬੀ
|
6,119,ਪੰਜਾਬੀ
|
||||||
18,154,Русский язык
|
18,154,Русский язык
|
||||||
31,442,español
|
31,442,español
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
My Chart
|
My Chart
|
||||||
First 1.0
|
First 1.0
|
||||||
Second 3.0
|
Second 3.0
|
||||||
Third 4.0
|
Third 4.0
|
||||||
@ -1,12 +1,12 @@
|
|||||||
10 languages with most speakers as first language
|
10 languages with most speakers as first language
|
||||||
countries,speakers,language
|
countries,speakers,language
|
||||||
58,315,العربية
|
58,315,العربية
|
||||||
4,243,বাংলা
|
4,243,বাংলা
|
||||||
38,1299,中文
|
38,1299,中文
|
||||||
118,378,English
|
118,378,English
|
||||||
4,260,हिन्दी
|
4,260,हिन्दी
|
||||||
2,128,日本語
|
2,128,日本語
|
||||||
15,223,português
|
15,223,português
|
||||||
6,119,ਪੰਜਾਬੀ
|
6,119,ਪੰਜਾਬੀ
|
||||||
18,154,Русский язык
|
18,154,Русский язык
|
||||||
31,442,español
|
31,442,español
|
||||||
|
|||||||
@ -1,39 +1,39 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<!--
|
<!--
|
||||||
====================================================================
|
====================================================================
|
||||||
Licensed to the Apache Software Foundation (ASF) under one or more
|
Licensed to the Apache Software Foundation (ASF) under one or more
|
||||||
contributor license agreements. See the NOTICE file distributed with
|
contributor license agreements. See the NOTICE file distributed with
|
||||||
this work for additional information regarding copyright ownership.
|
this work for additional information regarding copyright ownership.
|
||||||
The ASF licenses this file to You under the Apache License, Version 2.0
|
The ASF licenses this file to You under the Apache License, Version 2.0
|
||||||
(the "License"); you may not use this file except in compliance with
|
(the "License"); you may not use this file except in compliance with
|
||||||
the License. You may obtain a copy of the License at
|
the License. You may obtain a copy of the License at
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
Unless required by applicable law or agreed to in writing, software
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
See the License for the specific language governing permissions and
|
See the License for the specific language governing permissions and
|
||||||
limitations under the License.
|
limitations under the License.
|
||||||
====================================================================
|
====================================================================
|
||||||
-->
|
-->
|
||||||
<xs:schema xmlns="http://schemas.microsoft.com/office/2006/keyEncryptor/certificate" xmlns:e="http://schemas.microsoft.com/office/2006/encryption" xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="http://schemas.microsoft.com/office/2006/keyEncryptor/certificate" elementFormDefault="qualified" attributeFormDefault="unqualified">
|
<xs:schema xmlns="http://schemas.microsoft.com/office/2006/keyEncryptor/certificate" xmlns:e="http://schemas.microsoft.com/office/2006/encryption" xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="http://schemas.microsoft.com/office/2006/keyEncryptor/certificate" elementFormDefault="qualified" attributeFormDefault="unqualified">
|
||||||
<xs:import namespace="http://schemas.microsoft.com/office/2006/encryption" schemaLocation="encryptionInfo.xsd"/>
|
<xs:import namespace="http://schemas.microsoft.com/office/2006/encryption" schemaLocation="encryptionInfo.xsd"/>
|
||||||
<xs:simpleType name="ST_PasswordKeyEncryptorUri">
|
<xs:simpleType name="ST_PasswordKeyEncryptorUri">
|
||||||
<xs:restriction base="xs:token">
|
<xs:restriction base="xs:token">
|
||||||
<xs:enumeration value="http://schemas.microsoft.com/office/2006/keyEncryptor/certificate"/>
|
<xs:enumeration value="http://schemas.microsoft.com/office/2006/keyEncryptor/certificate"/>
|
||||||
</xs:restriction>
|
</xs:restriction>
|
||||||
</xs:simpleType>
|
</xs:simpleType>
|
||||||
<xs:complexType name="CT_CertificateKeyEncryptor">
|
<xs:complexType name="CT_CertificateKeyEncryptor">
|
||||||
<xs:attribute name="encryptedKeyValue" type="xs:base64Binary" use="required">
|
<xs:attribute name="encryptedKeyValue" type="xs:base64Binary" use="required">
|
||||||
<xs:annotation><xs:documentation>A base64-encoded value that specifies the encrypted form of the intermediate key, which is encrypted with the public key contained within the X509Certificate attribute.</xs:documentation></xs:annotation>
|
<xs:annotation><xs:documentation>A base64-encoded value that specifies the encrypted form of the intermediate key, which is encrypted with the public key contained within the X509Certificate attribute.</xs:documentation></xs:annotation>
|
||||||
</xs:attribute>
|
</xs:attribute>
|
||||||
<xs:attribute name="X509Certificate" type="xs:base64Binary" use="required">
|
<xs:attribute name="X509Certificate" type="xs:base64Binary" use="required">
|
||||||
<xs:annotation><xs:documentation>A base64-encoded value that specifies a DER-encoded X.509 certificate (1) used to encrypt the intermediate key. The certificate (1) MUST contain only the public portion of the public-private key pair.</xs:documentation></xs:annotation>
|
<xs:annotation><xs:documentation>A base64-encoded value that specifies a DER-encoded X.509 certificate (1) used to encrypt the intermediate key. The certificate (1) MUST contain only the public portion of the public-private key pair.</xs:documentation></xs:annotation>
|
||||||
</xs:attribute>
|
</xs:attribute>
|
||||||
<xs:attribute name="certVerifier" type="xs:base64Binary" use="required">
|
<xs:attribute name="certVerifier" type="xs:base64Binary" use="required">
|
||||||
<xs:annotation><xs:documentation>A base64-encoded value that specifies the HMAC of the binary data obtained by base64-decoding the X509Certificate attribute. The hashing algorithm used to derive the HMAC MUST be the hashing algorithm specified for the Encryption.keyData element. The secret key used to derive the HMAC MUST be the intermediate key. If the intermediate key is reset, any CertificateKeyEncryptor elements are also reset to contain the new intermediate key, except that the certVerifier attribute MUST match the value calculated using the current intermediate key, to verify that the CertificateKeyEncryptor element actually encrypted the current intermediate key. If a CertificateKeyEncryptor element does not have a correct certVerifier attribute, it MUST be discarded.</xs:documentation></xs:annotation>
|
<xs:annotation><xs:documentation>A base64-encoded value that specifies the HMAC of the binary data obtained by base64-decoding the X509Certificate attribute. The hashing algorithm used to derive the HMAC MUST be the hashing algorithm specified for the Encryption.keyData element. The secret key used to derive the HMAC MUST be the intermediate key. If the intermediate key is reset, any CertificateKeyEncryptor elements are also reset to contain the new intermediate key, except that the certVerifier attribute MUST match the value calculated using the current intermediate key, to verify that the CertificateKeyEncryptor element actually encrypted the current intermediate key. If a CertificateKeyEncryptor element does not have a correct certVerifier attribute, it MUST be discarded.</xs:documentation></xs:annotation>
|
||||||
</xs:attribute>
|
</xs:attribute>
|
||||||
</xs:complexType>
|
</xs:complexType>
|
||||||
<xs:element name="encryptedKey" type="CT_CertificateKeyEncryptor"/>
|
<xs:element name="encryptedKey" type="CT_CertificateKeyEncryptor"/>
|
||||||
</xs:schema>
|
</xs:schema>
|
||||||
|
|||||||
@ -1,24 +1,24 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<!--
|
<!--
|
||||||
====================================================================
|
====================================================================
|
||||||
Licensed to the Apache Software Foundation (ASF) under one or more
|
Licensed to the Apache Software Foundation (ASF) under one or more
|
||||||
contributor license agreements. See the NOTICE file distributed with
|
contributor license agreements. See the NOTICE file distributed with
|
||||||
this work for additional information regarding copyright ownership.
|
this work for additional information regarding copyright ownership.
|
||||||
The ASF licenses this file to You under the Apache License, Version 2.0
|
The ASF licenses this file to You under the Apache License, Version 2.0
|
||||||
(the "License"); you may not use this file except in compliance with
|
(the "License"); you may not use this file except in compliance with
|
||||||
the License. You may obtain a copy of the License at
|
the License. You may obtain a copy of the License at
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
Unless required by applicable law or agreed to in writing, software
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
See the License for the specific language governing permissions and
|
See the License for the specific language governing permissions and
|
||||||
limitations under the License.
|
limitations under the License.
|
||||||
====================================================================
|
====================================================================
|
||||||
-->
|
-->
|
||||||
<xb:config xmlns:xb="http://xml.apache.org/xmlbeans/2004/02/xbean/config" xmlns:c="http://schemas.microsoft.com/office/2006/keyEncryptor/certificate">
|
<xb:config xmlns:xb="http://xml.apache.org/xmlbeans/2004/02/xbean/config" xmlns:c="http://schemas.microsoft.com/office/2006/keyEncryptor/certificate">
|
||||||
|
|
||||||
<xb:qname name="c:encryptedKey" javaname="EncryptedCertificateKey"/>
|
<xb:qname name="c:encryptedKey" javaname="EncryptedCertificateKey"/>
|
||||||
|
|
||||||
</xb:config>
|
</xb:config>
|
||||||
@ -1,259 +1,259 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<!--
|
<!--
|
||||||
====================================================================
|
====================================================================
|
||||||
Licensed to the Apache Software Foundation (ASF) under one or more
|
Licensed to the Apache Software Foundation (ASF) under one or more
|
||||||
contributor license agreements. See the NOTICE file distributed with
|
contributor license agreements. See the NOTICE file distributed with
|
||||||
this work for additional information regarding copyright ownership.
|
this work for additional information regarding copyright ownership.
|
||||||
The ASF licenses this file to You under the Apache License, Version 2.0
|
The ASF licenses this file to You under the Apache License, Version 2.0
|
||||||
(the "License"); you may not use this file except in compliance with
|
(the "License"); you may not use this file except in compliance with
|
||||||
the License. You may obtain a copy of the License at
|
the License. You may obtain a copy of the License at
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
Unless required by applicable law or agreed to in writing, software
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
See the License for the specific language governing permissions and
|
See the License for the specific language governing permissions and
|
||||||
limitations under the License.
|
limitations under the License.
|
||||||
====================================================================
|
====================================================================
|
||||||
-->
|
-->
|
||||||
<xs:schema xmlns="http://schemas.microsoft.com/office/2006/encryption" xmlns:p="http://schemas.microsoft.com/office/2006/keyEncryptor/password" xmlns:c="http://schemas.microsoft.com/office/2006/keyEncryptor/certificate" xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="http://schemas.microsoft.com/office/2006/encryption" elementFormDefault="qualified" attributeFormDefault="unqualified">
|
<xs:schema xmlns="http://schemas.microsoft.com/office/2006/encryption" xmlns:p="http://schemas.microsoft.com/office/2006/keyEncryptor/password" xmlns:c="http://schemas.microsoft.com/office/2006/keyEncryptor/certificate" xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="http://schemas.microsoft.com/office/2006/encryption" elementFormDefault="qualified" attributeFormDefault="unqualified">
|
||||||
<xs:import namespace="http://schemas.microsoft.com/office/2006/keyEncryptor/password" schemaLocation="encryptionPassword.xsd"/>
|
<xs:import namespace="http://schemas.microsoft.com/office/2006/keyEncryptor/password" schemaLocation="encryptionPassword.xsd"/>
|
||||||
<xs:import namespace="http://schemas.microsoft.com/office/2006/keyEncryptor/certificate" schemaLocation="encryptionCertificate.xsd"/>
|
<xs:import namespace="http://schemas.microsoft.com/office/2006/keyEncryptor/certificate" schemaLocation="encryptionCertificate.xsd"/>
|
||||||
<xs:simpleType name="ST_SaltSize">
|
<xs:simpleType name="ST_SaltSize">
|
||||||
<xs:annotation>
|
<xs:annotation>
|
||||||
<xs:documentation>An unsigned integer that specifies the number of bytes used by a salt. It MUST be at least 1 and no greater than 65,536.</xs:documentation>
|
<xs:documentation>An unsigned integer that specifies the number of bytes used by a salt. It MUST be at least 1 and no greater than 65,536.</xs:documentation>
|
||||||
</xs:annotation>
|
</xs:annotation>
|
||||||
<xs:restriction base="xs:unsignedInt">
|
<xs:restriction base="xs:unsignedInt">
|
||||||
<xs:minInclusive value="1"/>
|
<xs:minInclusive value="1"/>
|
||||||
<xs:maxInclusive value="65536"/>
|
<xs:maxInclusive value="65536"/>
|
||||||
</xs:restriction>
|
</xs:restriction>
|
||||||
</xs:simpleType>
|
</xs:simpleType>
|
||||||
<xs:simpleType name="ST_BlockSize">
|
<xs:simpleType name="ST_BlockSize">
|
||||||
<xs:annotation>
|
<xs:annotation>
|
||||||
<xs:documentation>An unsigned integer that specifies the number of bytes used to encrypt one block of data. It MUST be at least 2, no greater than 4096, and a multiple of 2.</xs:documentation>
|
<xs:documentation>An unsigned integer that specifies the number of bytes used to encrypt one block of data. It MUST be at least 2, no greater than 4096, and a multiple of 2.</xs:documentation>
|
||||||
</xs:annotation>
|
</xs:annotation>
|
||||||
<xs:restriction base="xs:unsignedInt">
|
<xs:restriction base="xs:unsignedInt">
|
||||||
<xs:minInclusive value="2"/>
|
<xs:minInclusive value="2"/>
|
||||||
<xs:maxInclusive value="4096"/>
|
<xs:maxInclusive value="4096"/>
|
||||||
</xs:restriction>
|
</xs:restriction>
|
||||||
</xs:simpleType>
|
</xs:simpleType>
|
||||||
<xs:simpleType name="ST_KeyBits">
|
<xs:simpleType name="ST_KeyBits">
|
||||||
<xs:annotation>
|
<xs:annotation>
|
||||||
<xs:documentation>An unsigned integer that specifies the number of bits used by an encryption algorithm. It MUST be at least 8 and a multiple of 8.</xs:documentation>
|
<xs:documentation>An unsigned integer that specifies the number of bits used by an encryption algorithm. It MUST be at least 8 and a multiple of 8.</xs:documentation>
|
||||||
</xs:annotation>
|
</xs:annotation>
|
||||||
<xs:restriction base="xs:unsignedInt">
|
<xs:restriction base="xs:unsignedInt">
|
||||||
<xs:minInclusive value="8"/>
|
<xs:minInclusive value="8"/>
|
||||||
</xs:restriction>
|
</xs:restriction>
|
||||||
</xs:simpleType>
|
</xs:simpleType>
|
||||||
<xs:simpleType name="ST_HashSize">
|
<xs:simpleType name="ST_HashSize">
|
||||||
<xs:annotation>
|
<xs:annotation>
|
||||||
<xs:documentation>An unsigned integer that specifies the number of bytes used by a hash value. It MUST be at least 1, no greater than 65,536, and the same number of bytes as the hash algorithm emits.</xs:documentation>
|
<xs:documentation>An unsigned integer that specifies the number of bytes used by a hash value. It MUST be at least 1, no greater than 65,536, and the same number of bytes as the hash algorithm emits.</xs:documentation>
|
||||||
</xs:annotation>
|
</xs:annotation>
|
||||||
<xs:restriction base="xs:unsignedInt">
|
<xs:restriction base="xs:unsignedInt">
|
||||||
<xs:minInclusive value="1"/>
|
<xs:minInclusive value="1"/>
|
||||||
<xs:maxInclusive value="65536"/>
|
<xs:maxInclusive value="65536"/>
|
||||||
</xs:restriction>
|
</xs:restriction>
|
||||||
</xs:simpleType>
|
</xs:simpleType>
|
||||||
<xs:simpleType name="ST_SpinCount">
|
<xs:simpleType name="ST_SpinCount">
|
||||||
<xs:annotation>
|
<xs:annotation>
|
||||||
<xs:documentation>An unsigned integer that specifies the number of times to iterate on a hash of a password. It MUST NOT be greater than 10,000,000.</xs:documentation>
|
<xs:documentation>An unsigned integer that specifies the number of times to iterate on a hash of a password. It MUST NOT be greater than 10,000,000.</xs:documentation>
|
||||||
</xs:annotation>
|
</xs:annotation>
|
||||||
<xs:restriction base="xs:unsignedInt">
|
<xs:restriction base="xs:unsignedInt">
|
||||||
<xs:minInclusive value="0"/>
|
<xs:minInclusive value="0"/>
|
||||||
<xs:maxInclusive value="10000000"/>
|
<xs:maxInclusive value="10000000"/>
|
||||||
</xs:restriction>
|
</xs:restriction>
|
||||||
</xs:simpleType>
|
</xs:simpleType>
|
||||||
<xs:simpleType name="ST_CipherAlgorithm">
|
<xs:simpleType name="ST_CipherAlgorithm">
|
||||||
<xs:annotation>
|
<xs:annotation>
|
||||||
<xs:appinfo>modified for poi - list is restricted to given list in [ms-offcrypto]</xs:appinfo>
|
<xs:appinfo>modified for poi - list is restricted to given list in [ms-offcrypto]</xs:appinfo>
|
||||||
<xs:documentation>A string that specifies the cipher algorithm. Values that are not defined MAY be used, and a compliant implementation is not required to support all defined values. Any algorithm that can be resolved by name by the underlying operating system can be used for hashing or encryption. Only block algorithms are supported for encryption. AES-128 is the default encryption algorithm, and SHA-1 is the default hashing algorithm if no other algorithms have been configured.</xs:documentation>
|
<xs:documentation>A string that specifies the cipher algorithm. Values that are not defined MAY be used, and a compliant implementation is not required to support all defined values. Any algorithm that can be resolved by name by the underlying operating system can be used for hashing or encryption. Only block algorithms are supported for encryption. AES-128 is the default encryption algorithm, and SHA-1 is the default hashing algorithm if no other algorithms have been configured.</xs:documentation>
|
||||||
</xs:annotation>
|
</xs:annotation>
|
||||||
<xs:restriction base="xs:token">
|
<xs:restriction base="xs:token">
|
||||||
<xs:enumeration value="AES">
|
<xs:enumeration value="AES">
|
||||||
<xs:annotation>
|
<xs:annotation>
|
||||||
<xs:documentation>MUST conform to the AES algorithm.</xs:documentation>
|
<xs:documentation>MUST conform to the AES algorithm.</xs:documentation>
|
||||||
</xs:annotation>
|
</xs:annotation>
|
||||||
</xs:enumeration>
|
</xs:enumeration>
|
||||||
<xs:enumeration value="RC2">
|
<xs:enumeration value="RC2">
|
||||||
<xs:annotation>
|
<xs:annotation>
|
||||||
<xs:documentation>MUST conform to the algorithm as specified in [RFC2268] (http://tools.ietf.org/html/rfc2268). The use of RC2 is not recommended. If RC2 is used with a key length of less than 128 bits, documents could interoperate incorrectly across different versions of Windows.</xs:documentation>
|
<xs:documentation>MUST conform to the algorithm as specified in [RFC2268] (http://tools.ietf.org/html/rfc2268). The use of RC2 is not recommended. If RC2 is used with a key length of less than 128 bits, documents could interoperate incorrectly across different versions of Windows.</xs:documentation>
|
||||||
</xs:annotation>
|
</xs:annotation>
|
||||||
</xs:enumeration>
|
</xs:enumeration>
|
||||||
<xs:enumeration value="RC4">
|
<xs:enumeration value="RC4">
|
||||||
<xs:annotation>
|
<xs:annotation>
|
||||||
<xs:documentation>MUST NOT be used.</xs:documentation>
|
<xs:documentation>MUST NOT be used.</xs:documentation>
|
||||||
</xs:annotation>
|
</xs:annotation>
|
||||||
</xs:enumeration>
|
</xs:enumeration>
|
||||||
<xs:enumeration value="DES">
|
<xs:enumeration value="DES">
|
||||||
<xs:annotation>
|
<xs:annotation>
|
||||||
<xs:documentation>MUST conform to the DES algorithm. The use of DES is not recommended. If DES is used, the key length specified in the KeyBits element is required to be set to 64 for 56-bit encryption, and the key decrypted from encryptedKeyValue of KeyEncryptor is required to include the DES parity bits.</xs:documentation>
|
<xs:documentation>MUST conform to the DES algorithm. The use of DES is not recommended. If DES is used, the key length specified in the KeyBits element is required to be set to 64 for 56-bit encryption, and the key decrypted from encryptedKeyValue of KeyEncryptor is required to include the DES parity bits.</xs:documentation>
|
||||||
</xs:annotation>
|
</xs:annotation>
|
||||||
</xs:enumeration>
|
</xs:enumeration>
|
||||||
<xs:enumeration value="DESX">
|
<xs:enumeration value="DESX">
|
||||||
<xs:annotation>
|
<xs:annotation>
|
||||||
<xs:documentation>MUST conform to the algorithm as specified in [DRAFT-DESX] (http://tools.ietf.org/html/draft-ietf-ipsec-ciph-desx-00). The use of DESX is not recommended. If DESX is used, documents could interoperate incorrectly across different versions of Windows.</xs:documentation>
|
<xs:documentation>MUST conform to the algorithm as specified in [DRAFT-DESX] (http://tools.ietf.org/html/draft-ietf-ipsec-ciph-desx-00). The use of DESX is not recommended. If DESX is used, documents could interoperate incorrectly across different versions of Windows.</xs:documentation>
|
||||||
</xs:annotation>
|
</xs:annotation>
|
||||||
</xs:enumeration>
|
</xs:enumeration>
|
||||||
<xs:enumeration value="3DES">
|
<xs:enumeration value="3DES">
|
||||||
<xs:annotation>
|
<xs:annotation>
|
||||||
<xs:documentation>MUST conform to the algorithm as specified in [RFC1851] (http://tools.ietf.org/html/rfc1851). If 3DES or 3DES_112 is used, the key length specified in the KeyBits element is required to be set to 192 for 168-bit encryption and 128 for 112-bit encryption, and the key decrypted from encryptedKeyValue of KeyEncryptor is required to include the DES parity bits.</xs:documentation>
|
<xs:documentation>MUST conform to the algorithm as specified in [RFC1851] (http://tools.ietf.org/html/rfc1851). If 3DES or 3DES_112 is used, the key length specified in the KeyBits element is required to be set to 192 for 168-bit encryption and 128 for 112-bit encryption, and the key decrypted from encryptedKeyValue of KeyEncryptor is required to include the DES parity bits.</xs:documentation>
|
||||||
</xs:annotation>
|
</xs:annotation>
|
||||||
</xs:enumeration>
|
</xs:enumeration>
|
||||||
<xs:enumeration value="3DES_112">
|
<xs:enumeration value="3DES_112">
|
||||||
<xs:annotation>
|
<xs:annotation>
|
||||||
<xs:documentation>see 3DES</xs:documentation>
|
<xs:documentation>see 3DES</xs:documentation>
|
||||||
</xs:annotation>
|
</xs:annotation>
|
||||||
</xs:enumeration>
|
</xs:enumeration>
|
||||||
</xs:restriction>
|
</xs:restriction>
|
||||||
</xs:simpleType>
|
</xs:simpleType>
|
||||||
<xs:simpleType name="ST_CipherChaining">
|
<xs:simpleType name="ST_CipherChaining">
|
||||||
<xs:annotation>
|
<xs:annotation>
|
||||||
<xs:documentation>A string that specifies the chaining mode used by CipherAlgorithm. For more details about chaining modes, see [BCMO800-38A] (http://csrc.nist.gov/publications/nistpubs/800-38a/sp800-38a.pdf).</xs:documentation>
|
<xs:documentation>A string that specifies the chaining mode used by CipherAlgorithm. For more details about chaining modes, see [BCMO800-38A] (http://csrc.nist.gov/publications/nistpubs/800-38a/sp800-38a.pdf).</xs:documentation>
|
||||||
</xs:annotation>
|
</xs:annotation>
|
||||||
<xs:restriction base="xs:token">
|
<xs:restriction base="xs:token">
|
||||||
<xs:enumeration value="ChainingModeCBC">
|
<xs:enumeration value="ChainingModeCBC">
|
||||||
<xs:annotation>
|
<xs:annotation>
|
||||||
<xs:documentation>block chaining (CBC)</xs:documentation>
|
<xs:documentation>block chaining (CBC)</xs:documentation>
|
||||||
</xs:annotation>
|
</xs:annotation>
|
||||||
</xs:enumeration>
|
</xs:enumeration>
|
||||||
<xs:enumeration value="ChainingModeCFB">
|
<xs:enumeration value="ChainingModeCFB">
|
||||||
<xs:annotation>
|
<xs:annotation>
|
||||||
<xs:documentation>Cipher feedback chaining (CFB), with an 8-bit window</xs:documentation>
|
<xs:documentation>Cipher feedback chaining (CFB), with an 8-bit window</xs:documentation>
|
||||||
</xs:annotation>
|
</xs:annotation>
|
||||||
</xs:enumeration>
|
</xs:enumeration>
|
||||||
</xs:restriction>
|
</xs:restriction>
|
||||||
</xs:simpleType>
|
</xs:simpleType>
|
||||||
<xs:simpleType name="ST_HashAlgorithm">
|
<xs:simpleType name="ST_HashAlgorithm">
|
||||||
<xs:annotation>
|
<xs:annotation>
|
||||||
<xs:appinfo>modified for poi - list is restricted to given list in [ms-offcrypto]</xs:appinfo>
|
<xs:appinfo>modified for poi - list is restricted to given list in [ms-offcrypto]</xs:appinfo>
|
||||||
<xs:documentation>A string specifying a hashing algorithm. Values that are not defined MAY be used, and a compliant implementation is not required to support all defined values.</xs:documentation>
|
<xs:documentation>A string specifying a hashing algorithm. Values that are not defined MAY be used, and a compliant implementation is not required to support all defined values.</xs:documentation>
|
||||||
</xs:annotation>
|
</xs:annotation>
|
||||||
<xs:restriction base="xs:token">
|
<xs:restriction base="xs:token">
|
||||||
<xs:enumeration value="SHA1">
|
<xs:enumeration value="SHA1">
|
||||||
<xs:annotation>
|
<xs:annotation>
|
||||||
<xs:documentation>MUST conform to the algorithm as specified in [RFC4634] (http://tools.ietf.org/html/rfc4634).</xs:documentation>
|
<xs:documentation>MUST conform to the algorithm as specified in [RFC4634] (http://tools.ietf.org/html/rfc4634).</xs:documentation>
|
||||||
</xs:annotation>
|
</xs:annotation>
|
||||||
</xs:enumeration>
|
</xs:enumeration>
|
||||||
<xs:enumeration value="SHA256">
|
<xs:enumeration value="SHA256">
|
||||||
<xs:annotation>
|
<xs:annotation>
|
||||||
<xs:documentation>see SHA1</xs:documentation>
|
<xs:documentation>see SHA1</xs:documentation>
|
||||||
</xs:annotation>
|
</xs:annotation>
|
||||||
</xs:enumeration>
|
</xs:enumeration>
|
||||||
<xs:enumeration value="SHA384">
|
<xs:enumeration value="SHA384">
|
||||||
<xs:annotation>
|
<xs:annotation>
|
||||||
<xs:documentation>see SHA1</xs:documentation>
|
<xs:documentation>see SHA1</xs:documentation>
|
||||||
</xs:annotation>
|
</xs:annotation>
|
||||||
</xs:enumeration>
|
</xs:enumeration>
|
||||||
<xs:enumeration value="SHA512">
|
<xs:enumeration value="SHA512">
|
||||||
<xs:annotation>
|
<xs:annotation>
|
||||||
<xs:documentation>see SHA1</xs:documentation>
|
<xs:documentation>see SHA1</xs:documentation>
|
||||||
</xs:annotation>
|
</xs:annotation>
|
||||||
</xs:enumeration>
|
</xs:enumeration>
|
||||||
<xs:enumeration value="MD5">
|
<xs:enumeration value="MD5">
|
||||||
<xs:annotation>
|
<xs:annotation>
|
||||||
<xs:documentation>MUST conform to MD5.</xs:documentation>
|
<xs:documentation>MUST conform to MD5.</xs:documentation>
|
||||||
</xs:annotation>
|
</xs:annotation>
|
||||||
</xs:enumeration>
|
</xs:enumeration>
|
||||||
<xs:enumeration value="MD4">
|
<xs:enumeration value="MD4">
|
||||||
<xs:annotation>
|
<xs:annotation>
|
||||||
<xs:documentation>MUST conform to the algorithm as specified in [RFC1320] (http://tools.ietf.org/html/rfc1320).</xs:documentation>
|
<xs:documentation>MUST conform to the algorithm as specified in [RFC1320] (http://tools.ietf.org/html/rfc1320).</xs:documentation>
|
||||||
</xs:annotation>
|
</xs:annotation>
|
||||||
</xs:enumeration>
|
</xs:enumeration>
|
||||||
<xs:enumeration value="MD2">
|
<xs:enumeration value="MD2">
|
||||||
<xs:annotation>
|
<xs:annotation>
|
||||||
<xs:documentation>MUST conform to the algorithm as specified in [RFC1319] (http://tools.ietf.org/html/rfc1319).</xs:documentation>
|
<xs:documentation>MUST conform to the algorithm as specified in [RFC1319] (http://tools.ietf.org/html/rfc1319).</xs:documentation>
|
||||||
</xs:annotation>
|
</xs:annotation>
|
||||||
</xs:enumeration>
|
</xs:enumeration>
|
||||||
<xs:enumeration value="RIPEMD-128">
|
<xs:enumeration value="RIPEMD-128">
|
||||||
<xs:annotation>
|
<xs:annotation>
|
||||||
<xs:documentation>MUST conform to the hash functions specified in [ISO/IEC 10118]. (https://en.wikipedia.org/wiki/RIPEMD)</xs:documentation>
|
<xs:documentation>MUST conform to the hash functions specified in [ISO/IEC 10118]. (https://en.wikipedia.org/wiki/RIPEMD)</xs:documentation>
|
||||||
</xs:annotation>
|
</xs:annotation>
|
||||||
</xs:enumeration>
|
</xs:enumeration>
|
||||||
<xs:enumeration value="RIPEMD-160">
|
<xs:enumeration value="RIPEMD-160">
|
||||||
<xs:annotation>
|
<xs:annotation>
|
||||||
<xs:documentation>see RIPEMD-128 (https://en.wikipedia.org/wiki/RIPEMD)</xs:documentation>
|
<xs:documentation>see RIPEMD-128 (https://en.wikipedia.org/wiki/RIPEMD)</xs:documentation>
|
||||||
</xs:annotation>
|
</xs:annotation>
|
||||||
</xs:enumeration>
|
</xs:enumeration>
|
||||||
<xs:enumeration value="WHIRLPOOL">
|
<xs:enumeration value="WHIRLPOOL">
|
||||||
<xs:annotation>
|
<xs:annotation>
|
||||||
<xs:documentation>see RIPEMD-128 (https://en.wikipedia.org/wiki/ISO/IEC_10118-3)</xs:documentation>
|
<xs:documentation>see RIPEMD-128 (https://en.wikipedia.org/wiki/ISO/IEC_10118-3)</xs:documentation>
|
||||||
</xs:annotation>
|
</xs:annotation>
|
||||||
</xs:enumeration>
|
</xs:enumeration>
|
||||||
</xs:restriction>
|
</xs:restriction>
|
||||||
</xs:simpleType>
|
</xs:simpleType>
|
||||||
<xs:complexType name="CT_KeyData">
|
<xs:complexType name="CT_KeyData">
|
||||||
<xs:annotation>
|
<xs:annotation>
|
||||||
<xs:documentation>A complex type that specifies the encryption used within this element. The saltValue attribute is a base64-encoded binary value that is randomly generated. The number of bytes required to decode the saltValue attribute MUST be equal to the value of the saltSize attribute.</xs:documentation>
|
<xs:documentation>A complex type that specifies the encryption used within this element. The saltValue attribute is a base64-encoded binary value that is randomly generated. The number of bytes required to decode the saltValue attribute MUST be equal to the value of the saltSize attribute.</xs:documentation>
|
||||||
</xs:annotation>
|
</xs:annotation>
|
||||||
<xs:attribute name="saltSize" type="ST_SaltSize" use="required"/>
|
<xs:attribute name="saltSize" type="ST_SaltSize" use="required"/>
|
||||||
<xs:attribute name="blockSize" type="ST_BlockSize" use="required"/>
|
<xs:attribute name="blockSize" type="ST_BlockSize" use="required"/>
|
||||||
<xs:attribute name="keyBits" type="ST_KeyBits" use="required"/>
|
<xs:attribute name="keyBits" type="ST_KeyBits" use="required"/>
|
||||||
<xs:attribute name="hashSize" type="ST_HashSize" use="required"/>
|
<xs:attribute name="hashSize" type="ST_HashSize" use="required"/>
|
||||||
<xs:attribute name="cipherAlgorithm" type="ST_CipherAlgorithm" use="required"/>
|
<xs:attribute name="cipherAlgorithm" type="ST_CipherAlgorithm" use="required"/>
|
||||||
<xs:attribute name="cipherChaining" type="ST_CipherChaining" use="required"/>
|
<xs:attribute name="cipherChaining" type="ST_CipherChaining" use="required"/>
|
||||||
<xs:attribute name="hashAlgorithm" type="ST_HashAlgorithm" use="required"/>
|
<xs:attribute name="hashAlgorithm" type="ST_HashAlgorithm" use="required"/>
|
||||||
<xs:attribute name="saltValue" type="xs:base64Binary" use="required"/>
|
<xs:attribute name="saltValue" type="xs:base64Binary" use="required"/>
|
||||||
</xs:complexType>
|
</xs:complexType>
|
||||||
<xs:complexType name="CT_DataIntegrity">
|
<xs:complexType name="CT_DataIntegrity">
|
||||||
<xs:annotation>
|
<xs:annotation>
|
||||||
<xs:documentation>A complex type that specifies data used to verify whether the encrypted data passes an integrity check. It MUST be generated using the method specified in section 2.3.4.14 (http://msdn.microsoft.com/en-us/library/dd924068(v=office.12).aspx).</xs:documentation>
|
<xs:documentation>A complex type that specifies data used to verify whether the encrypted data passes an integrity check. It MUST be generated using the method specified in section 2.3.4.14 (http://msdn.microsoft.com/en-us/library/dd924068(v=office.12).aspx).</xs:documentation>
|
||||||
</xs:annotation>
|
</xs:annotation>
|
||||||
<xs:attribute name="encryptedHmacKey" type="xs:base64Binary" use="required">
|
<xs:attribute name="encryptedHmacKey" type="xs:base64Binary" use="required">
|
||||||
<xs:annotation>
|
<xs:annotation>
|
||||||
<xs:documentation>A base64-encoded value that specifies an encrypted key used in calculating the encryptedHmacValue.</xs:documentation>
|
<xs:documentation>A base64-encoded value that specifies an encrypted key used in calculating the encryptedHmacValue.</xs:documentation>
|
||||||
</xs:annotation>
|
</xs:annotation>
|
||||||
</xs:attribute>
|
</xs:attribute>
|
||||||
<xs:attribute name="encryptedHmacValue" type="xs:base64Binary" use="required">
|
<xs:attribute name="encryptedHmacValue" type="xs:base64Binary" use="required">
|
||||||
<xs:annotation>
|
<xs:annotation>
|
||||||
<xs:documentation>A base64-encoded value that specifies an HMAC derived from encryptedHmacKey and the encrypted data.</xs:documentation>
|
<xs:documentation>A base64-encoded value that specifies an HMAC derived from encryptedHmacKey and the encrypted data.</xs:documentation>
|
||||||
</xs:annotation>
|
</xs:annotation>
|
||||||
</xs:attribute>
|
</xs:attribute>
|
||||||
</xs:complexType>
|
</xs:complexType>
|
||||||
<xs:complexType name="CT_KeyEncryptor">
|
<xs:complexType name="CT_KeyEncryptor">
|
||||||
<xs:annotation>
|
<xs:annotation>
|
||||||
<xs:appinfo>modified for POI</xs:appinfo>
|
<xs:appinfo>modified for POI</xs:appinfo>
|
||||||
<xs:documentation>A complex type that specifies the parameters used to encrypt an intermediate key, which is used to perform the final encryption of the document. To ensure extensibility, arbitrary elements can be defined to encrypt the intermediate key. The intermediate key MUST be the same for all KeyEncryptor elements.</xs:documentation>
|
<xs:documentation>A complex type that specifies the parameters used to encrypt an intermediate key, which is used to perform the final encryption of the document. To ensure extensibility, arbitrary elements can be defined to encrypt the intermediate key. The intermediate key MUST be the same for all KeyEncryptor elements.</xs:documentation>
|
||||||
</xs:annotation>
|
</xs:annotation>
|
||||||
<xs:choice>
|
<xs:choice>
|
||||||
<xs:element ref="p:encryptedKey"/>
|
<xs:element ref="p:encryptedKey"/>
|
||||||
<xs:element ref="c:encryptedKey"/>
|
<xs:element ref="c:encryptedKey"/>
|
||||||
</xs:choice>
|
</xs:choice>
|
||||||
<xs:attribute name="uri">
|
<xs:attribute name="uri">
|
||||||
<xs:annotation>
|
<xs:annotation>
|
||||||
<xs:appinfo>modified for POI</xs:appinfo>
|
<xs:appinfo>modified for POI</xs:appinfo>
|
||||||
</xs:annotation>
|
</xs:annotation>
|
||||||
<xs:simpleType>
|
<xs:simpleType>
|
||||||
<xs:restriction base="xs:token">
|
<xs:restriction base="xs:token">
|
||||||
<xs:enumeration value="http://schemas.microsoft.com/office/2006/keyEncryptor/password"/>
|
<xs:enumeration value="http://schemas.microsoft.com/office/2006/keyEncryptor/password"/>
|
||||||
<xs:enumeration value="http://schemas.microsoft.com/office/2006/keyEncryptor/certificate"/>
|
<xs:enumeration value="http://schemas.microsoft.com/office/2006/keyEncryptor/certificate"/>
|
||||||
</xs:restriction>
|
</xs:restriction>
|
||||||
</xs:simpleType>
|
</xs:simpleType>
|
||||||
</xs:attribute>
|
</xs:attribute>
|
||||||
</xs:complexType>
|
</xs:complexType>
|
||||||
<xs:complexType name="CT_KeyEncryptors">
|
<xs:complexType name="CT_KeyEncryptors">
|
||||||
<xs:annotation>
|
<xs:annotation>
|
||||||
<xs:documentation>A sequence of KeyEncryptor elements. Exactly one KeyEncryptors element MUST be present, and the KeyEncryptors element MUST contain at least one KeyEncryptor.</xs:documentation>
|
<xs:documentation>A sequence of KeyEncryptor elements. Exactly one KeyEncryptors element MUST be present, and the KeyEncryptors element MUST contain at least one KeyEncryptor.</xs:documentation>
|
||||||
</xs:annotation>
|
</xs:annotation>
|
||||||
<xs:sequence>
|
<xs:sequence>
|
||||||
<xs:element name="keyEncryptor" type="CT_KeyEncryptor" maxOccurs="unbounded"/>
|
<xs:element name="keyEncryptor" type="CT_KeyEncryptor" maxOccurs="unbounded"/>
|
||||||
</xs:sequence>
|
</xs:sequence>
|
||||||
</xs:complexType>
|
</xs:complexType>
|
||||||
<xs:complexType name="CT_Encryption">
|
<xs:complexType name="CT_Encryption">
|
||||||
<xs:sequence>
|
<xs:sequence>
|
||||||
<xs:element name="keyData" type="CT_KeyData"/>
|
<xs:element name="keyData" type="CT_KeyData"/>
|
||||||
<xs:element name="dataIntegrity" type="CT_DataIntegrity">
|
<xs:element name="dataIntegrity" type="CT_DataIntegrity">
|
||||||
<xs:annotation>
|
<xs:annotation>
|
||||||
<xs:appinfo>modified for POI</xs:appinfo>
|
<xs:appinfo>modified for POI</xs:appinfo>
|
||||||
<xs:documentation>All ECMA-376 documents [ECMA-376] encrypted by Microsoft Office using agile encryption will have a DataIntegrity element present. The schema allows for a DataIntegrity element to not be present because the encryption schema can be used by applications that do not create ECMA-376 documents [ECMA-376].</xs:documentation>
|
<xs:documentation>All ECMA-376 documents [ECMA-376] encrypted by Microsoft Office using agile encryption will have a DataIntegrity element present. The schema allows for a DataIntegrity element to not be present because the encryption schema can be used by applications that do not create ECMA-376 documents [ECMA-376].</xs:documentation>
|
||||||
</xs:annotation>
|
</xs:annotation>
|
||||||
</xs:element>
|
</xs:element>
|
||||||
<xs:element name="keyEncryptors" type="CT_KeyEncryptors">
|
<xs:element name="keyEncryptors" type="CT_KeyEncryptors">
|
||||||
<xs:annotation>
|
<xs:annotation>
|
||||||
<xs:documentation>The KeyEncryptor element, which MUST be used when encrypting password-protected agile encryption documents, is either a PasswordKeyEncryptor or a CertificateKeyEncryptor. Exactly one PasswordKeyEncryptor MUST be present. Zero or more CertificateKeyEncryptor elements are contained within the KeyEncryptors element.</xs:documentation>
|
<xs:documentation>The KeyEncryptor element, which MUST be used when encrypting password-protected agile encryption documents, is either a PasswordKeyEncryptor or a CertificateKeyEncryptor. Exactly one PasswordKeyEncryptor MUST be present. Zero or more CertificateKeyEncryptor elements are contained within the KeyEncryptors element.</xs:documentation>
|
||||||
</xs:annotation>
|
</xs:annotation>
|
||||||
</xs:element>
|
</xs:element>
|
||||||
</xs:sequence>
|
</xs:sequence>
|
||||||
</xs:complexType>
|
</xs:complexType>
|
||||||
<xs:element name="encryption" type="CT_Encryption"/>
|
<xs:element name="encryption" type="CT_Encryption"/>
|
||||||
</xs:schema>
|
</xs:schema>
|
||||||
|
|||||||
@ -1,25 +1,25 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<!--
|
<!--
|
||||||
====================================================================
|
====================================================================
|
||||||
Licensed to the Apache Software Foundation (ASF) under one or more
|
Licensed to the Apache Software Foundation (ASF) under one or more
|
||||||
contributor license agreements. See the NOTICE file distributed with
|
contributor license agreements. See the NOTICE file distributed with
|
||||||
this work for additional information regarding copyright ownership.
|
this work for additional information regarding copyright ownership.
|
||||||
The ASF licenses this file to You under the Apache License, Version 2.0
|
The ASF licenses this file to You under the Apache License, Version 2.0
|
||||||
(the "License"); you may not use this file except in compliance with
|
(the "License"); you may not use this file except in compliance with
|
||||||
the License. You may obtain a copy of the License at
|
the License. You may obtain a copy of the License at
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
Unless required by applicable law or agreed to in writing, software
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
See the License for the specific language governing permissions and
|
See the License for the specific language governing permissions and
|
||||||
limitations under the License.
|
limitations under the License.
|
||||||
====================================================================
|
====================================================================
|
||||||
-->
|
-->
|
||||||
<xb:config xmlns:xb="http://xml.apache.org/xmlbeans/2004/02/xbean/config" xmlns:c="http://schemas.microsoft.com/office/2006/keyEncryptor/certificate" xmlns:p="http://schemas.microsoft.com/office/2006/keyEncryptor/password">
|
<xb:config xmlns:xb="http://xml.apache.org/xmlbeans/2004/02/xbean/config" xmlns:c="http://schemas.microsoft.com/office/2006/keyEncryptor/certificate" xmlns:p="http://schemas.microsoft.com/office/2006/keyEncryptor/password">
|
||||||
|
|
||||||
<xb:qname name="c:encryptedKey" javaname="EncryptedCertificateKey"/>
|
<xb:qname name="c:encryptedKey" javaname="EncryptedCertificateKey"/>
|
||||||
<xb:qname name="p:encryptedKey" javaname="EncryptedPasswordKey"/>
|
<xb:qname name="p:encryptedKey" javaname="EncryptedPasswordKey"/>
|
||||||
|
|
||||||
</xb:config>
|
</xb:config>
|
||||||
@ -1,66 +1,66 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<!--
|
<!--
|
||||||
====================================================================
|
====================================================================
|
||||||
Licensed to the Apache Software Foundation (ASF) under one or more
|
Licensed to the Apache Software Foundation (ASF) under one or more
|
||||||
contributor license agreements. See the NOTICE file distributed with
|
contributor license agreements. See the NOTICE file distributed with
|
||||||
this work for additional information regarding copyright ownership.
|
this work for additional information regarding copyright ownership.
|
||||||
The ASF licenses this file to You under the Apache License, Version 2.0
|
The ASF licenses this file to You under the Apache License, Version 2.0
|
||||||
(the "License"); you may not use this file except in compliance with
|
(the "License"); you may not use this file except in compliance with
|
||||||
the License. You may obtain a copy of the License at
|
the License. You may obtain a copy of the License at
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
Unless required by applicable law or agreed to in writing, software
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
See the License for the specific language governing permissions and
|
See the License for the specific language governing permissions and
|
||||||
limitations under the License.
|
limitations under the License.
|
||||||
====================================================================
|
====================================================================
|
||||||
-->
|
-->
|
||||||
<xs:schema xmlns="http://schemas.microsoft.com/office/2006/keyEncryptor/password" xmlns:e="http://schemas.microsoft.com/office/2006/encryption" xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="http://schemas.microsoft.com/office/2006/keyEncryptor/password" elementFormDefault="qualified" attributeFormDefault="unqualified">
|
<xs:schema xmlns="http://schemas.microsoft.com/office/2006/keyEncryptor/password" xmlns:e="http://schemas.microsoft.com/office/2006/encryption" xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="http://schemas.microsoft.com/office/2006/keyEncryptor/password" elementFormDefault="qualified" attributeFormDefault="unqualified">
|
||||||
<xs:import namespace="http://schemas.microsoft.com/office/2006/encryption" schemaLocation="encryptionInfo.xsd"/>
|
<xs:import namespace="http://schemas.microsoft.com/office/2006/encryption" schemaLocation="encryptionInfo.xsd"/>
|
||||||
<xs:simpleType name="ST_PasswordKeyEncryptorUri">
|
<xs:simpleType name="ST_PasswordKeyEncryptorUri">
|
||||||
<xs:restriction base="xs:token">
|
<xs:restriction base="xs:token">
|
||||||
<xs:enumeration value="http://schemas.microsoft.com/office/2006/keyEncryptor/password"/>
|
<xs:enumeration value="http://schemas.microsoft.com/office/2006/keyEncryptor/password"/>
|
||||||
</xs:restriction>
|
</xs:restriction>
|
||||||
</xs:simpleType>
|
</xs:simpleType>
|
||||||
<xs:complexType name="CT_PasswordKeyEncryptor">
|
<xs:complexType name="CT_PasswordKeyEncryptor">
|
||||||
<xs:attribute name="saltSize" type="e:ST_SaltSize" use="required">
|
<xs:attribute name="saltSize" type="e:ST_SaltSize" use="required">
|
||||||
<xs:annotation><xs:documentation>A SaltSize that specifies the size of the salt for a PasswordKeyEncryptor.</xs:documentation></xs:annotation>
|
<xs:annotation><xs:documentation>A SaltSize that specifies the size of the salt for a PasswordKeyEncryptor.</xs:documentation></xs:annotation>
|
||||||
</xs:attribute>
|
</xs:attribute>
|
||||||
<xs:attribute name="blockSize" type="e:ST_BlockSize" use="required">
|
<xs:attribute name="blockSize" type="e:ST_BlockSize" use="required">
|
||||||
<xs:annotation><xs:documentation>A BlockSize that specifies the block size for a PasswordKeyEncryptor.</xs:documentation></xs:annotation>
|
<xs:annotation><xs:documentation>A BlockSize that specifies the block size for a PasswordKeyEncryptor.</xs:documentation></xs:annotation>
|
||||||
</xs:attribute>
|
</xs:attribute>
|
||||||
<xs:attribute name="keyBits" type="e:ST_KeyBits" use="required">
|
<xs:attribute name="keyBits" type="e:ST_KeyBits" use="required">
|
||||||
<xs:annotation><xs:documentation>A KeyBits that specifies the number of bits for a PasswordKeyEncryptor.</xs:documentation></xs:annotation>
|
<xs:annotation><xs:documentation>A KeyBits that specifies the number of bits for a PasswordKeyEncryptor.</xs:documentation></xs:annotation>
|
||||||
</xs:attribute>
|
</xs:attribute>
|
||||||
<xs:attribute name="hashSize" type="e:ST_HashSize" use="required">
|
<xs:attribute name="hashSize" type="e:ST_HashSize" use="required">
|
||||||
<xs:annotation><xs:documentation>A HashSize that specifies the size of the binary form of the hash for a PasswordKeyEncryptor.</xs:documentation></xs:annotation>
|
<xs:annotation><xs:documentation>A HashSize that specifies the size of the binary form of the hash for a PasswordKeyEncryptor.</xs:documentation></xs:annotation>
|
||||||
</xs:attribute>
|
</xs:attribute>
|
||||||
<xs:attribute name="cipherAlgorithm" type="e:ST_CipherAlgorithm" use="required">
|
<xs:attribute name="cipherAlgorithm" type="e:ST_CipherAlgorithm" use="required">
|
||||||
<xs:annotation><xs:documentation>A CipherAlgorithm that specifies the cipher algorithm for a PasswordKeyEncryptor. The cipher algorithm specified MUST be the same as the cipher algorithm specified for the Encryption.keyData element.</xs:documentation></xs:annotation>
|
<xs:annotation><xs:documentation>A CipherAlgorithm that specifies the cipher algorithm for a PasswordKeyEncryptor. The cipher algorithm specified MUST be the same as the cipher algorithm specified for the Encryption.keyData element.</xs:documentation></xs:annotation>
|
||||||
</xs:attribute>
|
</xs:attribute>
|
||||||
<xs:attribute name="cipherChaining" type="e:ST_CipherChaining" use="required">
|
<xs:attribute name="cipherChaining" type="e:ST_CipherChaining" use="required">
|
||||||
<xs:annotation><xs:documentation>A CipherChaining that specifies the cipher chaining mode for a PasswordKeyEncryptor.</xs:documentation></xs:annotation>
|
<xs:annotation><xs:documentation>A CipherChaining that specifies the cipher chaining mode for a PasswordKeyEncryptor.</xs:documentation></xs:annotation>
|
||||||
</xs:attribute>
|
</xs:attribute>
|
||||||
<xs:attribute name="hashAlgorithm" type="e:ST_HashAlgorithm" use="required">
|
<xs:attribute name="hashAlgorithm" type="e:ST_HashAlgorithm" use="required">
|
||||||
<xs:annotation><xs:documentation>A HashAlgorithm that specifies the hashing algorithm for a PasswordKeyEncryptor. The hashing algorithm specified MUST be the same as the hashing algorithm specified for the Encryption.keyData element.</xs:documentation></xs:annotation>
|
<xs:annotation><xs:documentation>A HashAlgorithm that specifies the hashing algorithm for a PasswordKeyEncryptor. The hashing algorithm specified MUST be the same as the hashing algorithm specified for the Encryption.keyData element.</xs:documentation></xs:annotation>
|
||||||
</xs:attribute>
|
</xs:attribute>
|
||||||
<xs:attribute name="saltValue" type="xs:base64Binary" use="required">
|
<xs:attribute name="saltValue" type="xs:base64Binary" use="required">
|
||||||
<xs:annotation><xs:documentation>A base64-encoded binary byte array that specifies the salt value for a PasswordKeyEncryptor. The number of bytes required by the decoded form of this element MUST be saltSize.</xs:documentation></xs:annotation>
|
<xs:annotation><xs:documentation>A base64-encoded binary byte array that specifies the salt value for a PasswordKeyEncryptor. The number of bytes required by the decoded form of this element MUST be saltSize.</xs:documentation></xs:annotation>
|
||||||
</xs:attribute>
|
</xs:attribute>
|
||||||
<xs:attribute name="spinCount" type="e:ST_SpinCount" use="required">
|
<xs:attribute name="spinCount" type="e:ST_SpinCount" use="required">
|
||||||
<xs:annotation><xs:documentation>A SpinCount that specifies the spin count for a PasswordKeyEncryptor.</xs:documentation></xs:annotation>
|
<xs:annotation><xs:documentation>A SpinCount that specifies the spin count for a PasswordKeyEncryptor.</xs:documentation></xs:annotation>
|
||||||
</xs:attribute>
|
</xs:attribute>
|
||||||
<xs:attribute name="encryptedVerifierHashInput" type="xs:base64Binary" use="required">
|
<xs:attribute name="encryptedVerifierHashInput" type="xs:base64Binary" use="required">
|
||||||
<xs:annotation><xs:documentation>A base64-encoded value that specifies the encrypted verifier hash input for a PasswordKeyEncryptor used in password verification.</xs:documentation></xs:annotation>
|
<xs:annotation><xs:documentation>A base64-encoded value that specifies the encrypted verifier hash input for a PasswordKeyEncryptor used in password verification.</xs:documentation></xs:annotation>
|
||||||
</xs:attribute>
|
</xs:attribute>
|
||||||
<xs:attribute name="encryptedVerifierHashValue" type="xs:base64Binary" use="required">
|
<xs:attribute name="encryptedVerifierHashValue" type="xs:base64Binary" use="required">
|
||||||
<xs:annotation><xs:documentation>A base64-encoded value that specifies the encrypted verifier hash value for a PasswordKeyEncryptor used in password verification.</xs:documentation></xs:annotation>
|
<xs:annotation><xs:documentation>A base64-encoded value that specifies the encrypted verifier hash value for a PasswordKeyEncryptor used in password verification.</xs:documentation></xs:annotation>
|
||||||
</xs:attribute>
|
</xs:attribute>
|
||||||
<xs:attribute name="encryptedKeyValue" type="xs:base64Binary" use="required">
|
<xs:attribute name="encryptedKeyValue" type="xs:base64Binary" use="required">
|
||||||
<xs:annotation><xs:documentation>A base64-encoded value that specifies the encrypted form of the intermediate key.</xs:documentation></xs:annotation>
|
<xs:annotation><xs:documentation>A base64-encoded value that specifies the encrypted form of the intermediate key.</xs:documentation></xs:annotation>
|
||||||
</xs:attribute>
|
</xs:attribute>
|
||||||
</xs:complexType>
|
</xs:complexType>
|
||||||
<xs:element name="encryptedKey" type="CT_PasswordKeyEncryptor"/>
|
<xs:element name="encryptedKey" type="CT_PasswordKeyEncryptor"/>
|
||||||
</xs:schema>
|
</xs:schema>
|
||||||
|
|||||||
@ -1,24 +1,24 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<!--
|
<!--
|
||||||
====================================================================
|
====================================================================
|
||||||
Licensed to the Apache Software Foundation (ASF) under one or more
|
Licensed to the Apache Software Foundation (ASF) under one or more
|
||||||
contributor license agreements. See the NOTICE file distributed with
|
contributor license agreements. See the NOTICE file distributed with
|
||||||
this work for additional information regarding copyright ownership.
|
this work for additional information regarding copyright ownership.
|
||||||
The ASF licenses this file to You under the Apache License, Version 2.0
|
The ASF licenses this file to You under the Apache License, Version 2.0
|
||||||
(the "License"); you may not use this file except in compliance with
|
(the "License"); you may not use this file except in compliance with
|
||||||
the License. You may obtain a copy of the License at
|
the License. You may obtain a copy of the License at
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
Unless required by applicable law or agreed to in writing, software
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
See the License for the specific language governing permissions and
|
See the License for the specific language governing permissions and
|
||||||
limitations under the License.
|
limitations under the License.
|
||||||
====================================================================
|
====================================================================
|
||||||
-->
|
-->
|
||||||
<xb:config xmlns:xb="http://xml.apache.org/xmlbeans/2004/02/xbean/config" xmlns:p="http://schemas.microsoft.com/office/2006/keyEncryptor/password">
|
<xb:config xmlns:xb="http://xml.apache.org/xmlbeans/2004/02/xbean/config" xmlns:p="http://schemas.microsoft.com/office/2006/keyEncryptor/password">
|
||||||
|
|
||||||
<xb:qname name="p:encryptedKey" javaname="EncryptedPasswordKey"/>
|
<xb:qname name="p:encryptedKey" javaname="EncryptedPasswordKey"/>
|
||||||
|
|
||||||
</xb:config>
|
</xb:config>
|
||||||
@ -1,103 +1,103 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<!--
|
<!--
|
||||||
====================================================================
|
====================================================================
|
||||||
Licensed to the Apache Software Foundation (ASF) under one or more
|
Licensed to the Apache Software Foundation (ASF) under one or more
|
||||||
contributor license agreements. See the NOTICE file distributed with
|
contributor license agreements. See the NOTICE file distributed with
|
||||||
this work for additional information regarding copyright ownership.
|
this work for additional information regarding copyright ownership.
|
||||||
The ASF licenses this file to You under the Apache License, Version 2.0
|
The ASF licenses this file to You under the Apache License, Version 2.0
|
||||||
(the "License"); you may not use this file except in compliance with
|
(the "License"); you may not use this file except in compliance with
|
||||||
the License. You may obtain a copy of the License at
|
the License. You may obtain a copy of the License at
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
Unless required by applicable law or agreed to in writing, software
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
See the License for the specific language governing permissions and
|
See the License for the specific language governing permissions and
|
||||||
limitations under the License.
|
limitations under the License.
|
||||||
====================================================================
|
====================================================================
|
||||||
-->
|
-->
|
||||||
<xsd:schema targetNamespace="http://schemas.microsoft.com/office/2006/digsig" elementFormDefault="qualified" xmlns="http://schemas.microsoft.com/office/2006/digsig" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
|
<xsd:schema targetNamespace="http://schemas.microsoft.com/office/2006/digsig" elementFormDefault="qualified" xmlns="http://schemas.microsoft.com/office/2006/digsig" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
|
||||||
<xsd:simpleType name="ST_PositiveInteger">
|
<xsd:simpleType name="ST_PositiveInteger">
|
||||||
<xsd:restriction base="xsd:int">
|
<xsd:restriction base="xsd:int">
|
||||||
<xsd:minExclusive value="0"/>
|
<xsd:minExclusive value="0"/>
|
||||||
</xsd:restriction>
|
</xsd:restriction>
|
||||||
</xsd:simpleType>
|
</xsd:simpleType>
|
||||||
<xsd:simpleType name="ST_SignatureComments">
|
<xsd:simpleType name="ST_SignatureComments">
|
||||||
<xsd:restriction base="xsd:string">
|
<xsd:restriction base="xsd:string">
|
||||||
<xsd:maxLength value="255"/>
|
<xsd:maxLength value="255"/>
|
||||||
</xsd:restriction>
|
</xsd:restriction>
|
||||||
</xsd:simpleType>
|
</xsd:simpleType>
|
||||||
<xsd:simpleType name="ST_SignatureProviderUrl">
|
<xsd:simpleType name="ST_SignatureProviderUrl">
|
||||||
<xsd:restriction base="xsd:string">
|
<xsd:restriction base="xsd:string">
|
||||||
<xsd:maxLength value="2083"/>
|
<xsd:maxLength value="2083"/>
|
||||||
</xsd:restriction>
|
</xsd:restriction>
|
||||||
</xsd:simpleType>
|
</xsd:simpleType>
|
||||||
<xsd:simpleType name="ST_SignatureText">
|
<xsd:simpleType name="ST_SignatureText">
|
||||||
<xsd:restriction base="xsd:string">
|
<xsd:restriction base="xsd:string">
|
||||||
<xsd:maxLength value="100"/>
|
<xsd:maxLength value="100"/>
|
||||||
</xsd:restriction>
|
</xsd:restriction>
|
||||||
</xsd:simpleType>
|
</xsd:simpleType>
|
||||||
<xsd:simpleType name="ST_SignatureType">
|
<xsd:simpleType name="ST_SignatureType">
|
||||||
<xsd:restriction base="xsd:int">
|
<xsd:restriction base="xsd:int">
|
||||||
<xsd:enumeration value="1"/>
|
<xsd:enumeration value="1"/>
|
||||||
<xsd:enumeration value="2"/>
|
<xsd:enumeration value="2"/>
|
||||||
</xsd:restriction>
|
</xsd:restriction>
|
||||||
</xsd:simpleType>
|
</xsd:simpleType>
|
||||||
<xsd:simpleType name="ST_Version">
|
<xsd:simpleType name="ST_Version">
|
||||||
<xsd:restriction base="xsd:string">
|
<xsd:restriction base="xsd:string">
|
||||||
<xsd:maxLength value="64"/>
|
<xsd:maxLength value="64"/>
|
||||||
</xsd:restriction>
|
</xsd:restriction>
|
||||||
</xsd:simpleType>
|
</xsd:simpleType>
|
||||||
<xsd:simpleType name="ST_UniqueIdentifierWithBraces">
|
<xsd:simpleType name="ST_UniqueIdentifierWithBraces">
|
||||||
<xsd:restriction base="xsd:string">
|
<xsd:restriction base="xsd:string">
|
||||||
<xsd:pattern value="\{[0-9a-fA-F]{8}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{12}\}|"/>
|
<xsd:pattern value="\{[0-9a-fA-F]{8}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{12}\}|"/>
|
||||||
</xsd:restriction>
|
</xsd:restriction>
|
||||||
</xsd:simpleType>
|
</xsd:simpleType>
|
||||||
<xsd:group name="EG_RequiredChildren">
|
<xsd:group name="EG_RequiredChildren">
|
||||||
<xsd:sequence>
|
<xsd:sequence>
|
||||||
<xsd:element name="SetupID" type="ST_UniqueIdentifierWithBraces"/>
|
<xsd:element name="SetupID" type="ST_UniqueIdentifierWithBraces"/>
|
||||||
<xsd:element name="SignatureText" type="ST_SignatureText"/>
|
<xsd:element name="SignatureText" type="ST_SignatureText"/>
|
||||||
<xsd:element name="SignatureImage" type="xsd:base64Binary"/>
|
<xsd:element name="SignatureImage" type="xsd:base64Binary"/>
|
||||||
<xsd:element name="SignatureComments" type="ST_SignatureComments"/>
|
<xsd:element name="SignatureComments" type="ST_SignatureComments"/>
|
||||||
<xsd:element name="WindowsVersion" type="ST_Version"/>
|
<xsd:element name="WindowsVersion" type="ST_Version"/>
|
||||||
<xsd:element name="OfficeVersion" type="ST_Version"/>
|
<xsd:element name="OfficeVersion" type="ST_Version"/>
|
||||||
<xsd:element name="ApplicationVersion" type="ST_Version"/>
|
<xsd:element name="ApplicationVersion" type="ST_Version"/>
|
||||||
<xsd:element name="Monitors" type="ST_PositiveInteger"/>
|
<xsd:element name="Monitors" type="ST_PositiveInteger"/>
|
||||||
<xsd:element name="HorizontalResolution" type="ST_PositiveInteger"/>
|
<xsd:element name="HorizontalResolution" type="ST_PositiveInteger"/>
|
||||||
<xsd:element name="VerticalResolution" type="ST_PositiveInteger"/>
|
<xsd:element name="VerticalResolution" type="ST_PositiveInteger"/>
|
||||||
<xsd:element name="ColorDepth" type="ST_PositiveInteger"/>
|
<xsd:element name="ColorDepth" type="ST_PositiveInteger"/>
|
||||||
<xsd:element name="SignatureProviderId" type="ST_UniqueIdentifierWithBraces"/>
|
<xsd:element name="SignatureProviderId" type="ST_UniqueIdentifierWithBraces"/>
|
||||||
<xsd:element name="SignatureProviderUrl" type="ST_SignatureProviderUrl"/>
|
<xsd:element name="SignatureProviderUrl" type="ST_SignatureProviderUrl"/>
|
||||||
<xsd:element name="SignatureProviderDetails" type="xsd:int"/>
|
<xsd:element name="SignatureProviderDetails" type="xsd:int"/>
|
||||||
<xsd:element name="SignatureType" type="ST_SignatureType"/>
|
<xsd:element name="SignatureType" type="ST_SignatureType"/>
|
||||||
</xsd:sequence>
|
</xsd:sequence>
|
||||||
</xsd:group>
|
</xsd:group>
|
||||||
<xsd:group name="EG_OptionalChildren">
|
<xsd:group name="EG_OptionalChildren">
|
||||||
<xsd:sequence>
|
<xsd:sequence>
|
||||||
<xsd:element name="DelegateSuggestedSigner" type="xsd:string"/>
|
<xsd:element name="DelegateSuggestedSigner" type="xsd:string"/>
|
||||||
<xsd:element name="DelegateSuggestedSigner2" type="xsd:string"/>
|
<xsd:element name="DelegateSuggestedSigner2" type="xsd:string"/>
|
||||||
<xsd:element name="DelegateSuggestedSignerEmail" type="xsd:string"/>
|
<xsd:element name="DelegateSuggestedSignerEmail" type="xsd:string"/>
|
||||||
<xsd:element name="ManifestHashAlgorithm" type="xsd:anyURI" minOccurs="0"/>
|
<xsd:element name="ManifestHashAlgorithm" type="xsd:anyURI" minOccurs="0"/>
|
||||||
</xsd:sequence>
|
</xsd:sequence>
|
||||||
</xsd:group>
|
</xsd:group>
|
||||||
<xsd:group name="EG_OptionalChildrenV2">
|
<xsd:group name="EG_OptionalChildrenV2">
|
||||||
<xsd:sequence>
|
<xsd:sequence>
|
||||||
<xsd:element name="Address1" type="xsd:string"/>
|
<xsd:element name="Address1" type="xsd:string"/>
|
||||||
<xsd:element name="Address2" type="xsd:string"/>
|
<xsd:element name="Address2" type="xsd:string"/>
|
||||||
</xsd:sequence>
|
</xsd:sequence>
|
||||||
</xsd:group>
|
</xsd:group>
|
||||||
<xsd:complexType name="CT_SignatureInfoV1">
|
<xsd:complexType name="CT_SignatureInfoV1">
|
||||||
<xsd:sequence>
|
<xsd:sequence>
|
||||||
<xsd:group ref="EG_RequiredChildren"/>
|
<xsd:group ref="EG_RequiredChildren"/>
|
||||||
<xsd:group ref="EG_OptionalChildren" minOccurs="0"/>
|
<xsd:group ref="EG_OptionalChildren" minOccurs="0"/>
|
||||||
</xsd:sequence>
|
</xsd:sequence>
|
||||||
</xsd:complexType>
|
</xsd:complexType>
|
||||||
<xsd:complexType name="CT_SignatureInfoV2">
|
<xsd:complexType name="CT_SignatureInfoV2">
|
||||||
<xsd:sequence>
|
<xsd:sequence>
|
||||||
<xsd:group ref="EG_OptionalChildrenV2" minOccurs="0"/>
|
<xsd:group ref="EG_OptionalChildrenV2" minOccurs="0"/>
|
||||||
</xsd:sequence>
|
</xsd:sequence>
|
||||||
</xsd:complexType>
|
</xsd:complexType>
|
||||||
<xsd:element name="SignatureInfoV1" type="CT_SignatureInfoV1"/>
|
<xsd:element name="SignatureInfoV1" type="CT_SignatureInfoV1"/>
|
||||||
<xsd:element name="SignatureInfoV2" type="CT_SignatureInfoV2"/>
|
<xsd:element name="SignatureInfoV2" type="CT_SignatureInfoV2"/>
|
||||||
</xsd:schema>
|
</xsd:schema>
|
||||||
@ -1,466 +1,466 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<xsd:schema targetNamespace="http://uri.etsi.org/01903/v1.3.2#" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://uri.etsi.org/01903/v1.3.2#" xmlns:ds="http://www.w3.org/2000/09/xmldsig#" elementFormDefault="qualified">
|
<xsd:schema targetNamespace="http://uri.etsi.org/01903/v1.3.2#" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://uri.etsi.org/01903/v1.3.2#" xmlns:ds="http://www.w3.org/2000/09/xmldsig#" elementFormDefault="qualified">
|
||||||
<xsd:import namespace="http://www.w3.org/2000/09/xmldsig#" schemaLocation="http://www.w3.org/TR/2002/REC-xmldsig-core-20020212/xmldsig-core-schema.xsd"/>
|
<xsd:import namespace="http://www.w3.org/2000/09/xmldsig#" schemaLocation="http://www.w3.org/TR/2002/REC-xmldsig-core-20020212/xmldsig-core-schema.xsd"/>
|
||||||
<!-- Start auxiliary types definitions: AnyType, ObjectIdentifierType,
|
<!-- Start auxiliary types definitions: AnyType, ObjectIdentifierType,
|
||||||
EncapsulatedPKIDataType and containers for time-stamp tokens -->
|
EncapsulatedPKIDataType and containers for time-stamp tokens -->
|
||||||
<!-- Start AnyType -->
|
<!-- Start AnyType -->
|
||||||
<xsd:element name="Any" type="AnyType"/>
|
<xsd:element name="Any" type="AnyType"/>
|
||||||
<xsd:complexType name="AnyType" mixed="true">
|
<xsd:complexType name="AnyType" mixed="true">
|
||||||
<xsd:sequence minOccurs="0" maxOccurs="unbounded">
|
<xsd:sequence minOccurs="0" maxOccurs="unbounded">
|
||||||
<xsd:any namespace="##any" processContents="lax"/>
|
<xsd:any namespace="##any" processContents="lax"/>
|
||||||
</xsd:sequence>
|
</xsd:sequence>
|
||||||
<xsd:anyAttribute namespace="##any"/>
|
<xsd:anyAttribute namespace="##any"/>
|
||||||
</xsd:complexType>
|
</xsd:complexType>
|
||||||
<!-- End AnyType -->
|
<!-- End AnyType -->
|
||||||
<!-- Start ObjectIdentifierType-->
|
<!-- Start ObjectIdentifierType-->
|
||||||
<xsd:element name="ObjectIdentifier" type="ObjectIdentifierType"/>
|
<xsd:element name="ObjectIdentifier" type="ObjectIdentifierType"/>
|
||||||
<xsd:complexType name="ObjectIdentifierType">
|
<xsd:complexType name="ObjectIdentifierType">
|
||||||
<xsd:sequence>
|
<xsd:sequence>
|
||||||
<xsd:element name="Identifier" type="IdentifierType"/>
|
<xsd:element name="Identifier" type="IdentifierType"/>
|
||||||
<xsd:element name="Description" type="xsd:string" minOccurs="0"/>
|
<xsd:element name="Description" type="xsd:string" minOccurs="0"/>
|
||||||
<xsd:element name="DocumentationReferences" type="DocumentationReferencesType" minOccurs="0"/>
|
<xsd:element name="DocumentationReferences" type="DocumentationReferencesType" minOccurs="0"/>
|
||||||
</xsd:sequence>
|
</xsd:sequence>
|
||||||
</xsd:complexType>
|
</xsd:complexType>
|
||||||
<xsd:complexType name="IdentifierType">
|
<xsd:complexType name="IdentifierType">
|
||||||
<xsd:simpleContent>
|
<xsd:simpleContent>
|
||||||
<xsd:extension base="xsd:anyURI">
|
<xsd:extension base="xsd:anyURI">
|
||||||
<xsd:attribute name="Qualifier" type="QualifierType" use="optional"/>
|
<xsd:attribute name="Qualifier" type="QualifierType" use="optional"/>
|
||||||
</xsd:extension>
|
</xsd:extension>
|
||||||
</xsd:simpleContent>
|
</xsd:simpleContent>
|
||||||
</xsd:complexType>
|
</xsd:complexType>
|
||||||
<xsd:simpleType name="QualifierType">
|
<xsd:simpleType name="QualifierType">
|
||||||
<xsd:restriction base="xsd:string">
|
<xsd:restriction base="xsd:string">
|
||||||
<xsd:enumeration value="OIDAsURI"/>
|
<xsd:enumeration value="OIDAsURI"/>
|
||||||
<xsd:enumeration value="OIDAsURN"/>
|
<xsd:enumeration value="OIDAsURN"/>
|
||||||
</xsd:restriction>
|
</xsd:restriction>
|
||||||
</xsd:simpleType>
|
</xsd:simpleType>
|
||||||
<xsd:complexType name="DocumentationReferencesType">
|
<xsd:complexType name="DocumentationReferencesType">
|
||||||
<xsd:sequence maxOccurs="unbounded">
|
<xsd:sequence maxOccurs="unbounded">
|
||||||
<xsd:element name="DocumentationReference" type="xsd:anyURI"/>
|
<xsd:element name="DocumentationReference" type="xsd:anyURI"/>
|
||||||
</xsd:sequence>
|
</xsd:sequence>
|
||||||
</xsd:complexType>
|
</xsd:complexType>
|
||||||
<!-- End ObjectIdentifierType-->
|
<!-- End ObjectIdentifierType-->
|
||||||
<!-- Start EncapsulatedPKIDataType-->
|
<!-- Start EncapsulatedPKIDataType-->
|
||||||
<xsd:element name="EncapsulatedPKIData" type="EncapsulatedPKIDataType"/>
|
<xsd:element name="EncapsulatedPKIData" type="EncapsulatedPKIDataType"/>
|
||||||
<xsd:complexType name="EncapsulatedPKIDataType">
|
<xsd:complexType name="EncapsulatedPKIDataType">
|
||||||
<xsd:simpleContent>
|
<xsd:simpleContent>
|
||||||
<xsd:extension base="xsd:base64Binary">
|
<xsd:extension base="xsd:base64Binary">
|
||||||
<xsd:attribute name="Id" type="xsd:ID" use="optional"/>
|
<xsd:attribute name="Id" type="xsd:ID" use="optional"/>
|
||||||
<xsd:attribute name="Encoding" type="xsd:anyURI" use="optional"/>
|
<xsd:attribute name="Encoding" type="xsd:anyURI" use="optional"/>
|
||||||
</xsd:extension>
|
</xsd:extension>
|
||||||
</xsd:simpleContent>
|
</xsd:simpleContent>
|
||||||
</xsd:complexType>
|
</xsd:complexType>
|
||||||
<!-- End EncapsulatedPKIDataType -->
|
<!-- End EncapsulatedPKIDataType -->
|
||||||
<!-- Start time-stamp containers types -->
|
<!-- Start time-stamp containers types -->
|
||||||
<!-- Start GenericTimeStampType -->
|
<!-- Start GenericTimeStampType -->
|
||||||
<xsd:element name="Include" type="IncludeType"/>
|
<xsd:element name="Include" type="IncludeType"/>
|
||||||
<xsd:complexType name="IncludeType">
|
<xsd:complexType name="IncludeType">
|
||||||
<xsd:attribute name="URI" type="xsd:anyURI" use="required"/>
|
<xsd:attribute name="URI" type="xsd:anyURI" use="required"/>
|
||||||
<xsd:attribute name="referencedData" type="xsd:boolean" use="optional"/>
|
<xsd:attribute name="referencedData" type="xsd:boolean" use="optional"/>
|
||||||
</xsd:complexType>
|
</xsd:complexType>
|
||||||
<xsd:element name="ReferenceInfo" type="ReferenceInfoType"/>
|
<xsd:element name="ReferenceInfo" type="ReferenceInfoType"/>
|
||||||
<xsd:complexType name="ReferenceInfoType">
|
<xsd:complexType name="ReferenceInfoType">
|
||||||
<xsd:sequence>
|
<xsd:sequence>
|
||||||
<xsd:element ref="ds:DigestMethod"/>
|
<xsd:element ref="ds:DigestMethod"/>
|
||||||
<xsd:element ref="ds:DigestValue"/>
|
<xsd:element ref="ds:DigestValue"/>
|
||||||
</xsd:sequence>
|
</xsd:sequence>
|
||||||
<xsd:attribute name="Id" type="xsd:ID" use="optional"/>
|
<xsd:attribute name="Id" type="xsd:ID" use="optional"/>
|
||||||
<xsd:attribute name="URI" type="xsd:anyURI" use="optional"/>
|
<xsd:attribute name="URI" type="xsd:anyURI" use="optional"/>
|
||||||
</xsd:complexType>
|
</xsd:complexType>
|
||||||
<xsd:complexType name="GenericTimeStampType" abstract="true">
|
<xsd:complexType name="GenericTimeStampType" abstract="true">
|
||||||
<xsd:sequence>
|
<xsd:sequence>
|
||||||
<xsd:choice minOccurs="0">
|
<xsd:choice minOccurs="0">
|
||||||
<xsd:element ref="Include" minOccurs="0" maxOccurs="unbounded"/>
|
<xsd:element ref="Include" minOccurs="0" maxOccurs="unbounded"/>
|
||||||
<xsd:element ref="ReferenceInfo" maxOccurs="unbounded"/>
|
<xsd:element ref="ReferenceInfo" maxOccurs="unbounded"/>
|
||||||
</xsd:choice>
|
</xsd:choice>
|
||||||
<xsd:element ref="ds:CanonicalizationMethod" minOccurs="0"/>
|
<xsd:element ref="ds:CanonicalizationMethod" minOccurs="0"/>
|
||||||
<xsd:choice maxOccurs="unbounded">
|
<xsd:choice maxOccurs="unbounded">
|
||||||
<xsd:element name="EncapsulatedTimeStamp" type="EncapsulatedPKIDataType"/>
|
<xsd:element name="EncapsulatedTimeStamp" type="EncapsulatedPKIDataType"/>
|
||||||
<xsd:element name="XMLTimeStamp" type="AnyType"/>
|
<xsd:element name="XMLTimeStamp" type="AnyType"/>
|
||||||
</xsd:choice>
|
</xsd:choice>
|
||||||
</xsd:sequence>
|
</xsd:sequence>
|
||||||
<xsd:attribute name="Id" type="xsd:ID" use="optional"/>
|
<xsd:attribute name="Id" type="xsd:ID" use="optional"/>
|
||||||
</xsd:complexType>
|
</xsd:complexType>
|
||||||
<!-- End GenericTimeStampType -->
|
<!-- End GenericTimeStampType -->
|
||||||
<!-- Start XAdESTimeStampType -->
|
<!-- Start XAdESTimeStampType -->
|
||||||
<xsd:element name="XAdESTimeStamp" type="XAdESTimeStampType"/>
|
<xsd:element name="XAdESTimeStamp" type="XAdESTimeStampType"/>
|
||||||
<xsd:complexType name="XAdESTimeStampType">
|
<xsd:complexType name="XAdESTimeStampType">
|
||||||
<xsd:complexContent>
|
<xsd:complexContent>
|
||||||
<xsd:restriction base="GenericTimeStampType">
|
<xsd:restriction base="GenericTimeStampType">
|
||||||
<xsd:sequence>
|
<xsd:sequence>
|
||||||
<xsd:element ref="Include" minOccurs="0" maxOccurs="unbounded"/>
|
<xsd:element ref="Include" minOccurs="0" maxOccurs="unbounded"/>
|
||||||
<xsd:element ref="ds:CanonicalizationMethod" minOccurs="0"/>
|
<xsd:element ref="ds:CanonicalizationMethod" minOccurs="0"/>
|
||||||
<xsd:choice maxOccurs="unbounded">
|
<xsd:choice maxOccurs="unbounded">
|
||||||
<xsd:element name="EncapsulatedTimeStamp" type="EncapsulatedPKIDataType"/>
|
<xsd:element name="EncapsulatedTimeStamp" type="EncapsulatedPKIDataType"/>
|
||||||
<xsd:element name="XMLTimeStamp" type="AnyType"/>
|
<xsd:element name="XMLTimeStamp" type="AnyType"/>
|
||||||
</xsd:choice>
|
</xsd:choice>
|
||||||
</xsd:sequence>
|
</xsd:sequence>
|
||||||
<xsd:attribute name="Id" type="xsd:ID" use="optional"/>
|
<xsd:attribute name="Id" type="xsd:ID" use="optional"/>
|
||||||
</xsd:restriction>
|
</xsd:restriction>
|
||||||
</xsd:complexContent>
|
</xsd:complexContent>
|
||||||
</xsd:complexType>
|
</xsd:complexType>
|
||||||
<!-- End XAdESTimeStampType -->
|
<!-- End XAdESTimeStampType -->
|
||||||
<!-- Start OtherTimeStampType -->
|
<!-- Start OtherTimeStampType -->
|
||||||
<xsd:element name="OtherTimeStamp" type="OtherTimeStampType"/>
|
<xsd:element name="OtherTimeStamp" type="OtherTimeStampType"/>
|
||||||
<xsd:complexType name="OtherTimeStampType">
|
<xsd:complexType name="OtherTimeStampType">
|
||||||
<xsd:complexContent>
|
<xsd:complexContent>
|
||||||
<xsd:restriction base="GenericTimeStampType">
|
<xsd:restriction base="GenericTimeStampType">
|
||||||
<xsd:sequence>
|
<xsd:sequence>
|
||||||
<xsd:element ref="ReferenceInfo" maxOccurs="unbounded"/>
|
<xsd:element ref="ReferenceInfo" maxOccurs="unbounded"/>
|
||||||
<xsd:element ref="ds:CanonicalizationMethod" minOccurs="0"/>
|
<xsd:element ref="ds:CanonicalizationMethod" minOccurs="0"/>
|
||||||
<xsd:choice>
|
<xsd:choice>
|
||||||
<xsd:element name="EncapsulatedTimeStamp" type="EncapsulatedPKIDataType"/>
|
<xsd:element name="EncapsulatedTimeStamp" type="EncapsulatedPKIDataType"/>
|
||||||
<xsd:element name="XMLTimeStamp" type="AnyType"/>
|
<xsd:element name="XMLTimeStamp" type="AnyType"/>
|
||||||
</xsd:choice>
|
</xsd:choice>
|
||||||
</xsd:sequence>
|
</xsd:sequence>
|
||||||
<xsd:attribute name="Id" type="xsd:ID" use="optional"/>
|
<xsd:attribute name="Id" type="xsd:ID" use="optional"/>
|
||||||
</xsd:restriction>
|
</xsd:restriction>
|
||||||
</xsd:complexContent>
|
</xsd:complexContent>
|
||||||
</xsd:complexType>
|
</xsd:complexType>
|
||||||
<!-- End OtherTimeStampType -->
|
<!-- End OtherTimeStampType -->
|
||||||
<!-- End time-stamp containers types -->
|
<!-- End time-stamp containers types -->
|
||||||
<!-- End auxiliary types definitions-->
|
<!-- End auxiliary types definitions-->
|
||||||
<!-- Start container types -->
|
<!-- Start container types -->
|
||||||
<!-- Start QualifyingProperties -->
|
<!-- Start QualifyingProperties -->
|
||||||
<xsd:element name="QualifyingProperties" type="QualifyingPropertiesType"/>
|
<xsd:element name="QualifyingProperties" type="QualifyingPropertiesType"/>
|
||||||
<xsd:complexType name="QualifyingPropertiesType">
|
<xsd:complexType name="QualifyingPropertiesType">
|
||||||
<xsd:sequence>
|
<xsd:sequence>
|
||||||
<xsd:element name="SignedProperties" type="SignedPropertiesType" minOccurs="0"/>
|
<xsd:element name="SignedProperties" type="SignedPropertiesType" minOccurs="0"/>
|
||||||
<xsd:element name="UnsignedProperties" type="UnsignedPropertiesType" minOccurs="0"/>
|
<xsd:element name="UnsignedProperties" type="UnsignedPropertiesType" minOccurs="0"/>
|
||||||
</xsd:sequence>
|
</xsd:sequence>
|
||||||
<xsd:attribute name="Target" type="xsd:anyURI" use="required"/>
|
<xsd:attribute name="Target" type="xsd:anyURI" use="required"/>
|
||||||
<xsd:attribute name="Id" type="xsd:ID" use="optional"/>
|
<xsd:attribute name="Id" type="xsd:ID" use="optional"/>
|
||||||
</xsd:complexType>
|
</xsd:complexType>
|
||||||
<!-- End QualifyingProperties -->
|
<!-- End QualifyingProperties -->
|
||||||
<!-- Start SignedProperties-->
|
<!-- Start SignedProperties-->
|
||||||
<xsd:element name="SignedProperties" type="SignedPropertiesType"/>
|
<xsd:element name="SignedProperties" type="SignedPropertiesType"/>
|
||||||
<xsd:complexType name="SignedPropertiesType">
|
<xsd:complexType name="SignedPropertiesType">
|
||||||
<xsd:sequence>
|
<xsd:sequence>
|
||||||
<xsd:element name="SignedSignatureProperties" type="SignedSignaturePropertiesType" minOccurs="0"/>
|
<xsd:element name="SignedSignatureProperties" type="SignedSignaturePropertiesType" minOccurs="0"/>
|
||||||
<xsd:element name="SignedDataObjectProperties" type="SignedDataObjectPropertiesType" minOccurs="0"/>
|
<xsd:element name="SignedDataObjectProperties" type="SignedDataObjectPropertiesType" minOccurs="0"/>
|
||||||
</xsd:sequence>
|
</xsd:sequence>
|
||||||
<xsd:attribute name="Id" type="xsd:ID" use="optional"/>
|
<xsd:attribute name="Id" type="xsd:ID" use="optional"/>
|
||||||
</xsd:complexType>
|
</xsd:complexType>
|
||||||
<!-- End SignedProperties-->
|
<!-- End SignedProperties-->
|
||||||
<!-- Start UnsignedProperties-->
|
<!-- Start UnsignedProperties-->
|
||||||
<xsd:element name="UnsignedProperties" type="UnsignedPropertiesType"/>
|
<xsd:element name="UnsignedProperties" type="UnsignedPropertiesType"/>
|
||||||
<xsd:complexType name="UnsignedPropertiesType">
|
<xsd:complexType name="UnsignedPropertiesType">
|
||||||
<xsd:sequence>
|
<xsd:sequence>
|
||||||
<xsd:element name="UnsignedSignatureProperties" type="UnsignedSignaturePropertiesType" minOccurs="0"/>
|
<xsd:element name="UnsignedSignatureProperties" type="UnsignedSignaturePropertiesType" minOccurs="0"/>
|
||||||
<xsd:element name="UnsignedDataObjectProperties" type="UnsignedDataObjectPropertiesType" minOccurs="0"/>
|
<xsd:element name="UnsignedDataObjectProperties" type="UnsignedDataObjectPropertiesType" minOccurs="0"/>
|
||||||
</xsd:sequence>
|
</xsd:sequence>
|
||||||
<xsd:attribute name="Id" type="xsd:ID" use="optional"/>
|
<xsd:attribute name="Id" type="xsd:ID" use="optional"/>
|
||||||
</xsd:complexType>
|
</xsd:complexType>
|
||||||
<!-- End UnsignedProperties-->
|
<!-- End UnsignedProperties-->
|
||||||
<!-- Start SignedSignatureProperties-->
|
<!-- Start SignedSignatureProperties-->
|
||||||
<xsd:element name="SignedSignatureProperties" type="SignedSignaturePropertiesType"/>
|
<xsd:element name="SignedSignatureProperties" type="SignedSignaturePropertiesType"/>
|
||||||
<xsd:complexType name="SignedSignaturePropertiesType">
|
<xsd:complexType name="SignedSignaturePropertiesType">
|
||||||
<xsd:sequence>
|
<xsd:sequence>
|
||||||
<xsd:element name="SigningTime" type="xsd:dateTime" minOccurs="0"/>
|
<xsd:element name="SigningTime" type="xsd:dateTime" minOccurs="0"/>
|
||||||
<xsd:element name="SigningCertificate" type="CertIDListType" minOccurs="0"/>
|
<xsd:element name="SigningCertificate" type="CertIDListType" minOccurs="0"/>
|
||||||
<xsd:element name="SignaturePolicyIdentifier" type="SignaturePolicyIdentifierType" minOccurs="0"/>
|
<xsd:element name="SignaturePolicyIdentifier" type="SignaturePolicyIdentifierType" minOccurs="0"/>
|
||||||
<xsd:element name="SignatureProductionPlace" type="SignatureProductionPlaceType" minOccurs="0"/>
|
<xsd:element name="SignatureProductionPlace" type="SignatureProductionPlaceType" minOccurs="0"/>
|
||||||
<xsd:element name="SignerRole" type="SignerRoleType" minOccurs="0"/>
|
<xsd:element name="SignerRole" type="SignerRoleType" minOccurs="0"/>
|
||||||
</xsd:sequence>
|
</xsd:sequence>
|
||||||
<xsd:attribute name="Id" type="xsd:ID" use="optional"/>
|
<xsd:attribute name="Id" type="xsd:ID" use="optional"/>
|
||||||
</xsd:complexType>
|
</xsd:complexType>
|
||||||
<!-- End SignedSignatureProperties-->
|
<!-- End SignedSignatureProperties-->
|
||||||
<!-- Start SignedDataObjectProperties-->
|
<!-- Start SignedDataObjectProperties-->
|
||||||
<xsd:element name="SignedDataObjectProperties" type="SignedDataObjectPropertiesType"/>
|
<xsd:element name="SignedDataObjectProperties" type="SignedDataObjectPropertiesType"/>
|
||||||
<xsd:complexType name="SignedDataObjectPropertiesType">
|
<xsd:complexType name="SignedDataObjectPropertiesType">
|
||||||
<xsd:sequence>
|
<xsd:sequence>
|
||||||
<xsd:element name="DataObjectFormat" type="DataObjectFormatType" minOccurs="0" maxOccurs="unbounded"/>
|
<xsd:element name="DataObjectFormat" type="DataObjectFormatType" minOccurs="0" maxOccurs="unbounded"/>
|
||||||
<xsd:element name="CommitmentTypeIndication" type="CommitmentTypeIndicationType" minOccurs="0" maxOccurs="unbounded"/>
|
<xsd:element name="CommitmentTypeIndication" type="CommitmentTypeIndicationType" minOccurs="0" maxOccurs="unbounded"/>
|
||||||
<xsd:element name="AllDataObjectsTimeStamp" type="XAdESTimeStampType" minOccurs="0" maxOccurs="unbounded"/>
|
<xsd:element name="AllDataObjectsTimeStamp" type="XAdESTimeStampType" minOccurs="0" maxOccurs="unbounded"/>
|
||||||
<xsd:element name="IndividualDataObjectsTimeStamp" type="XAdESTimeStampType" minOccurs="0" maxOccurs="unbounded"/>
|
<xsd:element name="IndividualDataObjectsTimeStamp" type="XAdESTimeStampType" minOccurs="0" maxOccurs="unbounded"/>
|
||||||
</xsd:sequence>
|
</xsd:sequence>
|
||||||
<xsd:attribute name="Id" type="xsd:ID" use="optional"/>
|
<xsd:attribute name="Id" type="xsd:ID" use="optional"/>
|
||||||
</xsd:complexType>
|
</xsd:complexType>
|
||||||
<!-- End SignedDataObjectProperties-->
|
<!-- End SignedDataObjectProperties-->
|
||||||
<!-- Start UnsignedSignatureProperties-->
|
<!-- Start UnsignedSignatureProperties-->
|
||||||
<xsd:element name="UnsignedSignatureProperties" type="UnsignedSignaturePropertiesType"/>
|
<xsd:element name="UnsignedSignatureProperties" type="UnsignedSignaturePropertiesType"/>
|
||||||
<xsd:complexType name="UnsignedSignaturePropertiesType">
|
<xsd:complexType name="UnsignedSignaturePropertiesType">
|
||||||
<xsd:choice maxOccurs="unbounded">
|
<xsd:choice maxOccurs="unbounded">
|
||||||
<xsd:element name="CounterSignature" type="CounterSignatureType"/>
|
<xsd:element name="CounterSignature" type="CounterSignatureType"/>
|
||||||
<xsd:element name="SignatureTimeStamp" type="XAdESTimeStampType"/>
|
<xsd:element name="SignatureTimeStamp" type="XAdESTimeStampType"/>
|
||||||
<xsd:element name="CompleteCertificateRefs" type="CompleteCertificateRefsType"/>
|
<xsd:element name="CompleteCertificateRefs" type="CompleteCertificateRefsType"/>
|
||||||
<xsd:element name="CompleteRevocationRefs" type="CompleteRevocationRefsType"/>
|
<xsd:element name="CompleteRevocationRefs" type="CompleteRevocationRefsType"/>
|
||||||
<xsd:element name="AttributeCertificateRefs" type="CompleteCertificateRefsType"/>
|
<xsd:element name="AttributeCertificateRefs" type="CompleteCertificateRefsType"/>
|
||||||
<xsd:element name="AttributeRevocationRefs" type="CompleteRevocationRefsType"/>
|
<xsd:element name="AttributeRevocationRefs" type="CompleteRevocationRefsType"/>
|
||||||
<xsd:element name="SigAndRefsTimeStamp" type="XAdESTimeStampType"/>
|
<xsd:element name="SigAndRefsTimeStamp" type="XAdESTimeStampType"/>
|
||||||
<xsd:element name="RefsOnlyTimeStamp" type="XAdESTimeStampType"/>
|
<xsd:element name="RefsOnlyTimeStamp" type="XAdESTimeStampType"/>
|
||||||
<xsd:element name="CertificateValues" type="CertificateValuesType"/>
|
<xsd:element name="CertificateValues" type="CertificateValuesType"/>
|
||||||
<xsd:element name="RevocationValues" type="RevocationValuesType"/>
|
<xsd:element name="RevocationValues" type="RevocationValuesType"/>
|
||||||
<xsd:element name="AttrAuthoritiesCertValues" type="CertificateValuesType"/>
|
<xsd:element name="AttrAuthoritiesCertValues" type="CertificateValuesType"/>
|
||||||
<xsd:element name="AttributeRevocationValues" type="RevocationValuesType"/>
|
<xsd:element name="AttributeRevocationValues" type="RevocationValuesType"/>
|
||||||
<xsd:element name="ArchiveTimeStamp" type="XAdESTimeStampType"/>
|
<xsd:element name="ArchiveTimeStamp" type="XAdESTimeStampType"/>
|
||||||
<xsd:any namespace="##other"/>
|
<xsd:any namespace="##other"/>
|
||||||
</xsd:choice>
|
</xsd:choice>
|
||||||
<xsd:attribute name="Id" type="xsd:ID" use="optional"/>
|
<xsd:attribute name="Id" type="xsd:ID" use="optional"/>
|
||||||
</xsd:complexType>
|
</xsd:complexType>
|
||||||
<!-- End UnsignedSignatureProperties-->
|
<!-- End UnsignedSignatureProperties-->
|
||||||
<!-- Start UnsignedDataObjectProperties-->
|
<!-- Start UnsignedDataObjectProperties-->
|
||||||
<xsd:element name="UnsignedDataObjectProperties" type="UnsignedDataObjectPropertiesType"/>
|
<xsd:element name="UnsignedDataObjectProperties" type="UnsignedDataObjectPropertiesType"/>
|
||||||
<xsd:complexType name="UnsignedDataObjectPropertiesType">
|
<xsd:complexType name="UnsignedDataObjectPropertiesType">
|
||||||
<xsd:sequence>
|
<xsd:sequence>
|
||||||
<xsd:element name="UnsignedDataObjectProperty" type="AnyType" maxOccurs="unbounded"/>
|
<xsd:element name="UnsignedDataObjectProperty" type="AnyType" maxOccurs="unbounded"/>
|
||||||
</xsd:sequence>
|
</xsd:sequence>
|
||||||
<xsd:attribute name="Id" type="xsd:ID" use="optional"/>
|
<xsd:attribute name="Id" type="xsd:ID" use="optional"/>
|
||||||
</xsd:complexType>
|
</xsd:complexType>
|
||||||
<!-- End UnsignedDataObjectProperties-->
|
<!-- End UnsignedDataObjectProperties-->
|
||||||
<!-- Start QualifyingPropertiesReference-->
|
<!-- Start QualifyingPropertiesReference-->
|
||||||
<xsd:element name="QualifyingPropertiesReference" type="QualifyingPropertiesReferenceType"/>
|
<xsd:element name="QualifyingPropertiesReference" type="QualifyingPropertiesReferenceType"/>
|
||||||
<xsd:complexType name="QualifyingPropertiesReferenceType">
|
<xsd:complexType name="QualifyingPropertiesReferenceType">
|
||||||
<xsd:attribute name="URI" type="xsd:anyURI" use="required"/>
|
<xsd:attribute name="URI" type="xsd:anyURI" use="required"/>
|
||||||
<xsd:attribute name="Id" type="xsd:ID" use="optional"/>
|
<xsd:attribute name="Id" type="xsd:ID" use="optional"/>
|
||||||
</xsd:complexType>
|
</xsd:complexType>
|
||||||
<!-- End QualifyingPropertiesReference-->
|
<!-- End QualifyingPropertiesReference-->
|
||||||
<!-- End container types -->
|
<!-- End container types -->
|
||||||
<!-- Start SigningTime element -->
|
<!-- Start SigningTime element -->
|
||||||
<xsd:element name="SigningTime" type="xsd:dateTime"/>
|
<xsd:element name="SigningTime" type="xsd:dateTime"/>
|
||||||
<!-- End SigningTime element -->
|
<!-- End SigningTime element -->
|
||||||
<!-- Start SigningCertificate -->
|
<!-- Start SigningCertificate -->
|
||||||
<xsd:element name="SigningCertificate" type="CertIDListType"/>
|
<xsd:element name="SigningCertificate" type="CertIDListType"/>
|
||||||
<xsd:complexType name="CertIDListType">
|
<xsd:complexType name="CertIDListType">
|
||||||
<xsd:sequence>
|
<xsd:sequence>
|
||||||
<xsd:element name="Cert" type="CertIDType" maxOccurs="unbounded"/>
|
<xsd:element name="Cert" type="CertIDType" maxOccurs="unbounded"/>
|
||||||
</xsd:sequence>
|
</xsd:sequence>
|
||||||
</xsd:complexType>
|
</xsd:complexType>
|
||||||
<xsd:complexType name="CertIDType">
|
<xsd:complexType name="CertIDType">
|
||||||
<xsd:sequence>
|
<xsd:sequence>
|
||||||
<xsd:element name="CertDigest" type="DigestAlgAndValueType"/>
|
<xsd:element name="CertDigest" type="DigestAlgAndValueType"/>
|
||||||
<xsd:element name="IssuerSerial" type="ds:X509IssuerSerialType"/>
|
<xsd:element name="IssuerSerial" type="ds:X509IssuerSerialType"/>
|
||||||
</xsd:sequence>
|
</xsd:sequence>
|
||||||
<xsd:attribute name="URI" type="xsd:anyURI" use="optional"/>
|
<xsd:attribute name="URI" type="xsd:anyURI" use="optional"/>
|
||||||
</xsd:complexType>
|
</xsd:complexType>
|
||||||
<xsd:complexType name="DigestAlgAndValueType">
|
<xsd:complexType name="DigestAlgAndValueType">
|
||||||
<xsd:sequence>
|
<xsd:sequence>
|
||||||
<xsd:element ref="ds:DigestMethod"/>
|
<xsd:element ref="ds:DigestMethod"/>
|
||||||
<xsd:element ref="ds:DigestValue"/>
|
<xsd:element ref="ds:DigestValue"/>
|
||||||
</xsd:sequence>
|
</xsd:sequence>
|
||||||
</xsd:complexType>
|
</xsd:complexType>
|
||||||
<!-- End SigningCertificate -->
|
<!-- End SigningCertificate -->
|
||||||
<!-- Start SignaturePolicyIdentifier -->
|
<!-- Start SignaturePolicyIdentifier -->
|
||||||
<xsd:element name="SignaturePolicyIdentifier" type="SignaturePolicyIdentifierType"/>
|
<xsd:element name="SignaturePolicyIdentifier" type="SignaturePolicyIdentifierType"/>
|
||||||
<xsd:complexType name="SignaturePolicyIdentifierType">
|
<xsd:complexType name="SignaturePolicyIdentifierType">
|
||||||
<xsd:choice>
|
<xsd:choice>
|
||||||
<xsd:element name="SignaturePolicyId" type="SignaturePolicyIdType"/>
|
<xsd:element name="SignaturePolicyId" type="SignaturePolicyIdType"/>
|
||||||
<xsd:element name="SignaturePolicyImplied"/>
|
<xsd:element name="SignaturePolicyImplied"/>
|
||||||
</xsd:choice>
|
</xsd:choice>
|
||||||
</xsd:complexType>
|
</xsd:complexType>
|
||||||
<xsd:complexType name="SignaturePolicyIdType">
|
<xsd:complexType name="SignaturePolicyIdType">
|
||||||
<xsd:sequence>
|
<xsd:sequence>
|
||||||
<xsd:element name="SigPolicyId" type="ObjectIdentifierType"/>
|
<xsd:element name="SigPolicyId" type="ObjectIdentifierType"/>
|
||||||
<xsd:element ref="ds:Transforms" minOccurs="0"/>
|
<xsd:element ref="ds:Transforms" minOccurs="0"/>
|
||||||
<xsd:element name="SigPolicyHash" type="DigestAlgAndValueType"/>
|
<xsd:element name="SigPolicyHash" type="DigestAlgAndValueType"/>
|
||||||
<xsd:element name="SigPolicyQualifiers" type="SigPolicyQualifiersListType" minOccurs="0"/>
|
<xsd:element name="SigPolicyQualifiers" type="SigPolicyQualifiersListType" minOccurs="0"/>
|
||||||
</xsd:sequence>
|
</xsd:sequence>
|
||||||
</xsd:complexType>
|
</xsd:complexType>
|
||||||
<xsd:complexType name="SigPolicyQualifiersListType">
|
<xsd:complexType name="SigPolicyQualifiersListType">
|
||||||
<xsd:sequence>
|
<xsd:sequence>
|
||||||
<xsd:element name="SigPolicyQualifier" type="AnyType" maxOccurs="unbounded"/>
|
<xsd:element name="SigPolicyQualifier" type="AnyType" maxOccurs="unbounded"/>
|
||||||
</xsd:sequence>
|
</xsd:sequence>
|
||||||
</xsd:complexType>
|
</xsd:complexType>
|
||||||
<xsd:element name="SPURI" type="xsd:anyURI"/>
|
<xsd:element name="SPURI" type="xsd:anyURI"/>
|
||||||
<xsd:element name="SPUserNotice" type="SPUserNoticeType"/>
|
<xsd:element name="SPUserNotice" type="SPUserNoticeType"/>
|
||||||
<xsd:complexType name="SPUserNoticeType">
|
<xsd:complexType name="SPUserNoticeType">
|
||||||
<xsd:sequence>
|
<xsd:sequence>
|
||||||
<xsd:element name="NoticeRef" type="NoticeReferenceType" minOccurs="0"/>
|
<xsd:element name="NoticeRef" type="NoticeReferenceType" minOccurs="0"/>
|
||||||
<xsd:element name="ExplicitText" type="xsd:string" minOccurs="0"/>
|
<xsd:element name="ExplicitText" type="xsd:string" minOccurs="0"/>
|
||||||
</xsd:sequence>
|
</xsd:sequence>
|
||||||
</xsd:complexType>
|
</xsd:complexType>
|
||||||
<xsd:complexType name="NoticeReferenceType">
|
<xsd:complexType name="NoticeReferenceType">
|
||||||
<xsd:sequence>
|
<xsd:sequence>
|
||||||
<xsd:element name="Organization" type="xsd:string"/>
|
<xsd:element name="Organization" type="xsd:string"/>
|
||||||
<xsd:element name="NoticeNumbers" type="IntegerListType"/>
|
<xsd:element name="NoticeNumbers" type="IntegerListType"/>
|
||||||
</xsd:sequence>
|
</xsd:sequence>
|
||||||
</xsd:complexType>
|
</xsd:complexType>
|
||||||
<xsd:complexType name="IntegerListType">
|
<xsd:complexType name="IntegerListType">
|
||||||
<xsd:sequence>
|
<xsd:sequence>
|
||||||
<xsd:element name="int" type="xsd:integer" minOccurs="0" maxOccurs="unbounded"/>
|
<xsd:element name="int" type="xsd:integer" minOccurs="0" maxOccurs="unbounded"/>
|
||||||
</xsd:sequence>
|
</xsd:sequence>
|
||||||
</xsd:complexType>
|
</xsd:complexType>
|
||||||
<!-- End SignaturePolicyIdentifier -->
|
<!-- End SignaturePolicyIdentifier -->
|
||||||
<!-- Start CounterSignature -->
|
<!-- Start CounterSignature -->
|
||||||
<xsd:element name="CounterSignature" type="CounterSignatureType"/>
|
<xsd:element name="CounterSignature" type="CounterSignatureType"/>
|
||||||
<xsd:complexType name="CounterSignatureType">
|
<xsd:complexType name="CounterSignatureType">
|
||||||
<xsd:sequence>
|
<xsd:sequence>
|
||||||
<xsd:element ref="ds:Signature"/>
|
<xsd:element ref="ds:Signature"/>
|
||||||
</xsd:sequence>
|
</xsd:sequence>
|
||||||
</xsd:complexType>
|
</xsd:complexType>
|
||||||
<!-- End CounterSignature -->
|
<!-- End CounterSignature -->
|
||||||
<!-- Start DataObjectFormat -->
|
<!-- Start DataObjectFormat -->
|
||||||
<xsd:element name="DataObjectFormat" type="DataObjectFormatType"/>
|
<xsd:element name="DataObjectFormat" type="DataObjectFormatType"/>
|
||||||
<xsd:complexType name="DataObjectFormatType">
|
<xsd:complexType name="DataObjectFormatType">
|
||||||
<xsd:sequence>
|
<xsd:sequence>
|
||||||
<xsd:element name="Description" type="xsd:string" minOccurs="0"/>
|
<xsd:element name="Description" type="xsd:string" minOccurs="0"/>
|
||||||
<xsd:element name="ObjectIdentifier" type="ObjectIdentifierType" minOccurs="0"/>
|
<xsd:element name="ObjectIdentifier" type="ObjectIdentifierType" minOccurs="0"/>
|
||||||
<xsd:element name="MimeType" type="xsd:string" minOccurs="0"/>
|
<xsd:element name="MimeType" type="xsd:string" minOccurs="0"/>
|
||||||
<xsd:element name="Encoding" type="xsd:anyURI" minOccurs="0"/>
|
<xsd:element name="Encoding" type="xsd:anyURI" minOccurs="0"/>
|
||||||
</xsd:sequence>
|
</xsd:sequence>
|
||||||
<xsd:attribute name="ObjectReference" type="xsd:anyURI" use="required"/>
|
<xsd:attribute name="ObjectReference" type="xsd:anyURI" use="required"/>
|
||||||
</xsd:complexType>
|
</xsd:complexType>
|
||||||
<!-- End DataObjectFormat -->
|
<!-- End DataObjectFormat -->
|
||||||
<!-- Start CommitmentTypeIndication -->
|
<!-- Start CommitmentTypeIndication -->
|
||||||
<xsd:element name="CommitmentTypeIndication" type="CommitmentTypeIndicationType"/>
|
<xsd:element name="CommitmentTypeIndication" type="CommitmentTypeIndicationType"/>
|
||||||
<xsd:complexType name="CommitmentTypeIndicationType">
|
<xsd:complexType name="CommitmentTypeIndicationType">
|
||||||
<xsd:sequence>
|
<xsd:sequence>
|
||||||
<xsd:element name="CommitmentTypeId" type="ObjectIdentifierType"/>
|
<xsd:element name="CommitmentTypeId" type="ObjectIdentifierType"/>
|
||||||
<xsd:choice>
|
<xsd:choice>
|
||||||
<xsd:element name="ObjectReference" type="xsd:anyURI" maxOccurs="unbounded"/>
|
<xsd:element name="ObjectReference" type="xsd:anyURI" maxOccurs="unbounded"/>
|
||||||
<xsd:element name="AllSignedDataObjects"/>
|
<xsd:element name="AllSignedDataObjects"/>
|
||||||
</xsd:choice>
|
</xsd:choice>
|
||||||
<xsd:element name="CommitmentTypeQualifiers" type="CommitmentTypeQualifiersListType" minOccurs="0"/>
|
<xsd:element name="CommitmentTypeQualifiers" type="CommitmentTypeQualifiersListType" minOccurs="0"/>
|
||||||
</xsd:sequence>
|
</xsd:sequence>
|
||||||
</xsd:complexType>
|
</xsd:complexType>
|
||||||
<xsd:complexType name="CommitmentTypeQualifiersListType">
|
<xsd:complexType name="CommitmentTypeQualifiersListType">
|
||||||
<xsd:sequence>
|
<xsd:sequence>
|
||||||
<xsd:element name="CommitmentTypeQualifier" type="AnyType" minOccurs="0" maxOccurs="unbounded"/>
|
<xsd:element name="CommitmentTypeQualifier" type="AnyType" minOccurs="0" maxOccurs="unbounded"/>
|
||||||
</xsd:sequence>
|
</xsd:sequence>
|
||||||
</xsd:complexType>
|
</xsd:complexType>
|
||||||
<!-- End CommitmentTypeIndication -->
|
<!-- End CommitmentTypeIndication -->
|
||||||
<!-- Start SignatureProductionPlace -->
|
<!-- Start SignatureProductionPlace -->
|
||||||
<xsd:element name="SignatureProductionPlace" type="SignatureProductionPlaceType"/>
|
<xsd:element name="SignatureProductionPlace" type="SignatureProductionPlaceType"/>
|
||||||
<xsd:complexType name="SignatureProductionPlaceType">
|
<xsd:complexType name="SignatureProductionPlaceType">
|
||||||
<xsd:sequence>
|
<xsd:sequence>
|
||||||
<xsd:element name="City" type="xsd:string" minOccurs="0"/>
|
<xsd:element name="City" type="xsd:string" minOccurs="0"/>
|
||||||
<xsd:element name="StateOrProvince" type="xsd:string" minOccurs="0"/>
|
<xsd:element name="StateOrProvince" type="xsd:string" minOccurs="0"/>
|
||||||
<xsd:element name="PostalCode" type="xsd:string" minOccurs="0"/>
|
<xsd:element name="PostalCode" type="xsd:string" minOccurs="0"/>
|
||||||
<xsd:element name="CountryName" type="xsd:string" minOccurs="0"/>
|
<xsd:element name="CountryName" type="xsd:string" minOccurs="0"/>
|
||||||
</xsd:sequence>
|
</xsd:sequence>
|
||||||
</xsd:complexType>
|
</xsd:complexType>
|
||||||
<!-- End SignatureProductionPlace -->
|
<!-- End SignatureProductionPlace -->
|
||||||
<!-- Start SignerRole -->
|
<!-- Start SignerRole -->
|
||||||
<xsd:element name="SignerRole" type="SignerRoleType"/>
|
<xsd:element name="SignerRole" type="SignerRoleType"/>
|
||||||
<xsd:complexType name="SignerRoleType">
|
<xsd:complexType name="SignerRoleType">
|
||||||
<xsd:sequence>
|
<xsd:sequence>
|
||||||
<xsd:element name="ClaimedRoles" type="ClaimedRolesListType" minOccurs="0"/>
|
<xsd:element name="ClaimedRoles" type="ClaimedRolesListType" minOccurs="0"/>
|
||||||
<xsd:element name="CertifiedRoles" type="CertifiedRolesListType" minOccurs="0"/>
|
<xsd:element name="CertifiedRoles" type="CertifiedRolesListType" minOccurs="0"/>
|
||||||
</xsd:sequence>
|
</xsd:sequence>
|
||||||
</xsd:complexType>
|
</xsd:complexType>
|
||||||
<xsd:complexType name="ClaimedRolesListType">
|
<xsd:complexType name="ClaimedRolesListType">
|
||||||
<xsd:sequence>
|
<xsd:sequence>
|
||||||
<xsd:element name="ClaimedRole" type="AnyType" maxOccurs="unbounded"/>
|
<xsd:element name="ClaimedRole" type="AnyType" maxOccurs="unbounded"/>
|
||||||
</xsd:sequence>
|
</xsd:sequence>
|
||||||
</xsd:complexType>
|
</xsd:complexType>
|
||||||
<xsd:complexType name="CertifiedRolesListType">
|
<xsd:complexType name="CertifiedRolesListType">
|
||||||
<xsd:sequence>
|
<xsd:sequence>
|
||||||
<xsd:element name="CertifiedRole" type="EncapsulatedPKIDataType" maxOccurs="unbounded"/>
|
<xsd:element name="CertifiedRole" type="EncapsulatedPKIDataType" maxOccurs="unbounded"/>
|
||||||
</xsd:sequence>
|
</xsd:sequence>
|
||||||
</xsd:complexType>
|
</xsd:complexType>
|
||||||
<!-- End SignerRole -->
|
<!-- End SignerRole -->
|
||||||
<xsd:element name="AllDataObjectsTimeStamp" type="XAdESTimeStampType"/>
|
<xsd:element name="AllDataObjectsTimeStamp" type="XAdESTimeStampType"/>
|
||||||
<xsd:element name="IndividualDataObjectsTimeStamp" type="XAdESTimeStampType"/>
|
<xsd:element name="IndividualDataObjectsTimeStamp" type="XAdESTimeStampType"/>
|
||||||
<xsd:element name="SignatureTimeStamp" type="XAdESTimeStampType"/>
|
<xsd:element name="SignatureTimeStamp" type="XAdESTimeStampType"/>
|
||||||
<!-- Start CompleteCertificateRefs -->
|
<!-- Start CompleteCertificateRefs -->
|
||||||
<xsd:element name="CompleteCertificateRefs" type="CompleteCertificateRefsType"/>
|
<xsd:element name="CompleteCertificateRefs" type="CompleteCertificateRefsType"/>
|
||||||
<xsd:complexType name="CompleteCertificateRefsType">
|
<xsd:complexType name="CompleteCertificateRefsType">
|
||||||
<xsd:sequence>
|
<xsd:sequence>
|
||||||
<xsd:element name="CertRefs" type="CertIDListType"/>
|
<xsd:element name="CertRefs" type="CertIDListType"/>
|
||||||
</xsd:sequence>
|
</xsd:sequence>
|
||||||
<xsd:attribute name="Id" type="xsd:ID" use="optional"/>
|
<xsd:attribute name="Id" type="xsd:ID" use="optional"/>
|
||||||
</xsd:complexType>
|
</xsd:complexType>
|
||||||
<!-- End CompleteCertificateRefs -->
|
<!-- End CompleteCertificateRefs -->
|
||||||
<!-- Start CompleteRevocationRefs-->
|
<!-- Start CompleteRevocationRefs-->
|
||||||
<xsd:element name="CompleteRevocationRefs" type="CompleteRevocationRefsType"/>
|
<xsd:element name="CompleteRevocationRefs" type="CompleteRevocationRefsType"/>
|
||||||
<xsd:complexType name="CompleteRevocationRefsType">
|
<xsd:complexType name="CompleteRevocationRefsType">
|
||||||
<xsd:sequence>
|
<xsd:sequence>
|
||||||
<xsd:element name="CRLRefs" type="CRLRefsType" minOccurs="0"/>
|
<xsd:element name="CRLRefs" type="CRLRefsType" minOccurs="0"/>
|
||||||
<xsd:element name="OCSPRefs" type="OCSPRefsType" minOccurs="0"/>
|
<xsd:element name="OCSPRefs" type="OCSPRefsType" minOccurs="0"/>
|
||||||
<xsd:element name="OtherRefs" type="OtherCertStatusRefsType" minOccurs="0"/>
|
<xsd:element name="OtherRefs" type="OtherCertStatusRefsType" minOccurs="0"/>
|
||||||
</xsd:sequence>
|
</xsd:sequence>
|
||||||
<xsd:attribute name="Id" type="xsd:ID" use="optional"/>
|
<xsd:attribute name="Id" type="xsd:ID" use="optional"/>
|
||||||
</xsd:complexType>
|
</xsd:complexType>
|
||||||
<xsd:complexType name="CRLRefsType">
|
<xsd:complexType name="CRLRefsType">
|
||||||
<xsd:sequence>
|
<xsd:sequence>
|
||||||
<xsd:element name="CRLRef" type="CRLRefType" maxOccurs="unbounded"/>
|
<xsd:element name="CRLRef" type="CRLRefType" maxOccurs="unbounded"/>
|
||||||
</xsd:sequence>
|
</xsd:sequence>
|
||||||
</xsd:complexType>
|
</xsd:complexType>
|
||||||
<xsd:complexType name="CRLRefType">
|
<xsd:complexType name="CRLRefType">
|
||||||
<xsd:sequence>
|
<xsd:sequence>
|
||||||
<xsd:element name="DigestAlgAndValue" type="DigestAlgAndValueType"/>
|
<xsd:element name="DigestAlgAndValue" type="DigestAlgAndValueType"/>
|
||||||
<xsd:element name="CRLIdentifier" type="CRLIdentifierType" minOccurs="0"/>
|
<xsd:element name="CRLIdentifier" type="CRLIdentifierType" minOccurs="0"/>
|
||||||
</xsd:sequence>
|
</xsd:sequence>
|
||||||
</xsd:complexType>
|
</xsd:complexType>
|
||||||
<xsd:complexType name="CRLIdentifierType">
|
<xsd:complexType name="CRLIdentifierType">
|
||||||
<xsd:sequence>
|
<xsd:sequence>
|
||||||
<xsd:element name="Issuer" type="xsd:string"/>
|
<xsd:element name="Issuer" type="xsd:string"/>
|
||||||
<xsd:element name="IssueTime" type="xsd:dateTime"/>
|
<xsd:element name="IssueTime" type="xsd:dateTime"/>
|
||||||
<xsd:element name="Number" type="xsd:integer" minOccurs="0"/>
|
<xsd:element name="Number" type="xsd:integer" minOccurs="0"/>
|
||||||
</xsd:sequence>
|
</xsd:sequence>
|
||||||
<xsd:attribute name="URI" type="xsd:anyURI" use="optional"/>
|
<xsd:attribute name="URI" type="xsd:anyURI" use="optional"/>
|
||||||
</xsd:complexType>
|
</xsd:complexType>
|
||||||
<xsd:complexType name="OCSPRefsType">
|
<xsd:complexType name="OCSPRefsType">
|
||||||
<xsd:sequence>
|
<xsd:sequence>
|
||||||
<xsd:element name="OCSPRef" type="OCSPRefType" maxOccurs="unbounded"/>
|
<xsd:element name="OCSPRef" type="OCSPRefType" maxOccurs="unbounded"/>
|
||||||
</xsd:sequence>
|
</xsd:sequence>
|
||||||
</xsd:complexType>
|
</xsd:complexType>
|
||||||
<xsd:complexType name="OCSPRefType">
|
<xsd:complexType name="OCSPRefType">
|
||||||
<xsd:sequence>
|
<xsd:sequence>
|
||||||
<xsd:element name="OCSPIdentifier" type="OCSPIdentifierType"/>
|
<xsd:element name="OCSPIdentifier" type="OCSPIdentifierType"/>
|
||||||
<xsd:element name="DigestAlgAndValue" type="DigestAlgAndValueType" minOccurs="0"/>
|
<xsd:element name="DigestAlgAndValue" type="DigestAlgAndValueType" minOccurs="0"/>
|
||||||
</xsd:sequence>
|
</xsd:sequence>
|
||||||
</xsd:complexType>
|
</xsd:complexType>
|
||||||
<xsd:complexType name="ResponderIDType">
|
<xsd:complexType name="ResponderIDType">
|
||||||
<xsd:choice>
|
<xsd:choice>
|
||||||
<xsd:element name="ByName" type="xsd:string"/>
|
<xsd:element name="ByName" type="xsd:string"/>
|
||||||
<xsd:element name="ByKey" type="xsd:base64Binary"/>
|
<xsd:element name="ByKey" type="xsd:base64Binary"/>
|
||||||
</xsd:choice>
|
</xsd:choice>
|
||||||
</xsd:complexType>
|
</xsd:complexType>
|
||||||
<xsd:complexType name="OCSPIdentifierType">
|
<xsd:complexType name="OCSPIdentifierType">
|
||||||
<xsd:sequence>
|
<xsd:sequence>
|
||||||
<xsd:element name="ResponderID" type="ResponderIDType"/>
|
<xsd:element name="ResponderID" type="ResponderIDType"/>
|
||||||
<xsd:element name="ProducedAt" type="xsd:dateTime"/>
|
<xsd:element name="ProducedAt" type="xsd:dateTime"/>
|
||||||
</xsd:sequence>
|
</xsd:sequence>
|
||||||
<xsd:attribute name="URI" type="xsd:anyURI" use="optional"/>
|
<xsd:attribute name="URI" type="xsd:anyURI" use="optional"/>
|
||||||
</xsd:complexType>
|
</xsd:complexType>
|
||||||
<xsd:complexType name="OtherCertStatusRefsType">
|
<xsd:complexType name="OtherCertStatusRefsType">
|
||||||
<xsd:sequence>
|
<xsd:sequence>
|
||||||
<xsd:element name="OtherRef" type="AnyType" maxOccurs="unbounded"/>
|
<xsd:element name="OtherRef" type="AnyType" maxOccurs="unbounded"/>
|
||||||
</xsd:sequence>
|
</xsd:sequence>
|
||||||
</xsd:complexType>
|
</xsd:complexType>
|
||||||
<!-- End CompleteRevocationRefs-->
|
<!-- End CompleteRevocationRefs-->
|
||||||
<xsd:element name="AttributeCertificateRefs" type="CompleteCertificateRefsType"/>
|
<xsd:element name="AttributeCertificateRefs" type="CompleteCertificateRefsType"/>
|
||||||
<xsd:element name="AttributeRevocationRefs" type="CompleteRevocationRefsType"/>
|
<xsd:element name="AttributeRevocationRefs" type="CompleteRevocationRefsType"/>
|
||||||
<xsd:element name="SigAndRefsTimeStamp" type="XAdESTimeStampType"/>
|
<xsd:element name="SigAndRefsTimeStamp" type="XAdESTimeStampType"/>
|
||||||
<xsd:element name="RefsOnlyTimeStamp" type="XAdESTimeStampType"/>
|
<xsd:element name="RefsOnlyTimeStamp" type="XAdESTimeStampType"/>
|
||||||
<!-- Start CertificateValues -->
|
<!-- Start CertificateValues -->
|
||||||
<xsd:element name="CertificateValues" type="CertificateValuesType"/>
|
<xsd:element name="CertificateValues" type="CertificateValuesType"/>
|
||||||
<xsd:complexType name="CertificateValuesType">
|
<xsd:complexType name="CertificateValuesType">
|
||||||
<xsd:choice minOccurs="0" maxOccurs="unbounded">
|
<xsd:choice minOccurs="0" maxOccurs="unbounded">
|
||||||
<xsd:element name="EncapsulatedX509Certificate" type="EncapsulatedPKIDataType"/>
|
<xsd:element name="EncapsulatedX509Certificate" type="EncapsulatedPKIDataType"/>
|
||||||
<xsd:element name="OtherCertificate" type="AnyType"/>
|
<xsd:element name="OtherCertificate" type="AnyType"/>
|
||||||
</xsd:choice>
|
</xsd:choice>
|
||||||
<xsd:attribute name="Id" type="xsd:ID" use="optional"/>
|
<xsd:attribute name="Id" type="xsd:ID" use="optional"/>
|
||||||
</xsd:complexType>
|
</xsd:complexType>
|
||||||
<!-- End CertificateValues -->
|
<!-- End CertificateValues -->
|
||||||
<!-- Start RevocationValues-->
|
<!-- Start RevocationValues-->
|
||||||
<xsd:element name="RevocationValues" type="RevocationValuesType"/>
|
<xsd:element name="RevocationValues" type="RevocationValuesType"/>
|
||||||
<xsd:complexType name="RevocationValuesType">
|
<xsd:complexType name="RevocationValuesType">
|
||||||
<xsd:sequence>
|
<xsd:sequence>
|
||||||
<xsd:element name="CRLValues" type="CRLValuesType" minOccurs="0"/>
|
<xsd:element name="CRLValues" type="CRLValuesType" minOccurs="0"/>
|
||||||
<xsd:element name="OCSPValues" type="OCSPValuesType" minOccurs="0"/>
|
<xsd:element name="OCSPValues" type="OCSPValuesType" minOccurs="0"/>
|
||||||
<xsd:element name="OtherValues" type="OtherCertStatusValuesType" minOccurs="0"/>
|
<xsd:element name="OtherValues" type="OtherCertStatusValuesType" minOccurs="0"/>
|
||||||
</xsd:sequence>
|
</xsd:sequence>
|
||||||
<xsd:attribute name="Id" type="xsd:ID" use="optional"/>
|
<xsd:attribute name="Id" type="xsd:ID" use="optional"/>
|
||||||
</xsd:complexType>
|
</xsd:complexType>
|
||||||
<xsd:complexType name="CRLValuesType">
|
<xsd:complexType name="CRLValuesType">
|
||||||
<xsd:sequence>
|
<xsd:sequence>
|
||||||
<xsd:element name="EncapsulatedCRLValue" type="EncapsulatedPKIDataType" maxOccurs="unbounded"/>
|
<xsd:element name="EncapsulatedCRLValue" type="EncapsulatedPKIDataType" maxOccurs="unbounded"/>
|
||||||
</xsd:sequence>
|
</xsd:sequence>
|
||||||
</xsd:complexType>
|
</xsd:complexType>
|
||||||
<xsd:complexType name="OCSPValuesType">
|
<xsd:complexType name="OCSPValuesType">
|
||||||
<xsd:sequence>
|
<xsd:sequence>
|
||||||
<xsd:element name="EncapsulatedOCSPValue" type="EncapsulatedPKIDataType" maxOccurs="unbounded"/>
|
<xsd:element name="EncapsulatedOCSPValue" type="EncapsulatedPKIDataType" maxOccurs="unbounded"/>
|
||||||
</xsd:sequence>
|
</xsd:sequence>
|
||||||
</xsd:complexType>
|
</xsd:complexType>
|
||||||
<xsd:complexType name="OtherCertStatusValuesType">
|
<xsd:complexType name="OtherCertStatusValuesType">
|
||||||
<xsd:sequence>
|
<xsd:sequence>
|
||||||
<xsd:element name="OtherValue" type="AnyType" maxOccurs="unbounded"/>
|
<xsd:element name="OtherValue" type="AnyType" maxOccurs="unbounded"/>
|
||||||
</xsd:sequence>
|
</xsd:sequence>
|
||||||
</xsd:complexType>
|
</xsd:complexType>
|
||||||
<!-- End RevocationValues-->
|
<!-- End RevocationValues-->
|
||||||
<xsd:element name="AttrAuthoritiesCertValues" type="CertificateValuesType"/>
|
<xsd:element name="AttrAuthoritiesCertValues" type="CertificateValuesType"/>
|
||||||
<xsd:element name="AttributeRevocationValues" type="RevocationValuesType"/>
|
<xsd:element name="AttributeRevocationValues" type="RevocationValuesType"/>
|
||||||
<xsd:element name="ArchiveTimeStamp" type="XAdESTimeStampType"/>
|
<xsd:element name="ArchiveTimeStamp" type="XAdESTimeStampType"/>
|
||||||
</xsd:schema>
|
</xsd:schema>
|
||||||
|
|||||||
@ -1,15 +1,15 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<xsd:schema targetNamespace="http://uri.etsi.org/01903/v1.4.1#" xmlns="http://uri.etsi.org/01903/v1.4.1#" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xades="http://uri.etsi.org/01903/v1.3.2#" elementFormDefault="qualified">
|
<xsd:schema targetNamespace="http://uri.etsi.org/01903/v1.4.1#" xmlns="http://uri.etsi.org/01903/v1.4.1#" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xades="http://uri.etsi.org/01903/v1.3.2#" elementFormDefault="qualified">
|
||||||
<xsd:import namespace="http://uri.etsi.org/01903/v1.3.2#" schemaLocation="http://uri.etsi.org/01903/v1.3.2/XAdES.xsd"/>
|
<xsd:import namespace="http://uri.etsi.org/01903/v1.3.2#" schemaLocation="http://uri.etsi.org/01903/v1.3.2/XAdES.xsd"/>
|
||||||
<!-- Start CertificateValues -->
|
<!-- Start CertificateValues -->
|
||||||
<xsd:element name="TimeStampValidationData" type="ValidationDataType"/>
|
<xsd:element name="TimeStampValidationData" type="ValidationDataType"/>
|
||||||
<xsd:complexType name="ValidationDataType">
|
<xsd:complexType name="ValidationDataType">
|
||||||
<xsd:sequence>
|
<xsd:sequence>
|
||||||
<xsd:element ref="xades:CertificateValues" minOccurs="0"/>
|
<xsd:element ref="xades:CertificateValues" minOccurs="0"/>
|
||||||
<xsd:element ref="xades:RevocationValues" minOccurs="0"/>
|
<xsd:element ref="xades:RevocationValues" minOccurs="0"/>
|
||||||
</xsd:sequence>
|
</xsd:sequence>
|
||||||
<xsd:attribute name="Id" type="xsd:ID" use="optional"/>
|
<xsd:attribute name="Id" type="xsd:ID" use="optional"/>
|
||||||
<xsd:attribute name="URI" type="xsd:anyURI" use="optional"/>
|
<xsd:attribute name="URI" type="xsd:anyURI" use="optional"/>
|
||||||
</xsd:complexType>
|
</xsd:complexType>
|
||||||
<xsd:element name="ArchiveTimeStamp" type="xades:XAdESTimeStampType"/>
|
<xsd:element name="ArchiveTimeStamp" type="xades:XAdESTimeStampType"/>
|
||||||
</xsd:schema>
|
</xsd:schema>
|
||||||
|
|||||||
@ -1,50 +1,50 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<!--
|
<!--
|
||||||
====================================================================
|
====================================================================
|
||||||
Licensed to the Apache Software Foundation (ASF) under one or more
|
Licensed to the Apache Software Foundation (ASF) under one or more
|
||||||
contributor license agreements. See the NOTICE file distributed with
|
contributor license agreements. See the NOTICE file distributed with
|
||||||
this work for additional information regarding copyright ownership.
|
this work for additional information regarding copyright ownership.
|
||||||
The ASF licenses this file to You under the Apache License, Version 2.0
|
The ASF licenses this file to You under the Apache License, Version 2.0
|
||||||
(the "License"); you may not use this file except in compliance with
|
(the "License"); you may not use this file except in compliance with
|
||||||
the License. You may obtain a copy of the License at
|
the License. You may obtain a copy of the License at
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
Unless required by applicable law or agreed to in writing, software
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
See the License for the specific language governing permissions and
|
See the License for the specific language governing permissions and
|
||||||
limitations under the License.
|
limitations under the License.
|
||||||
====================================================================
|
====================================================================
|
||||||
-->
|
-->
|
||||||
<xb:config xmlns:xb="http://xml.apache.org/xmlbeans/2004/02/xbean/config">
|
<xb:config xmlns:xb="http://xml.apache.org/xmlbeans/2004/02/xbean/config">
|
||||||
|
|
||||||
<xb:namespace uri="urn:schemas-microsoft-com:office:office">
|
<xb:namespace uri="urn:schemas-microsoft-com:office:office">
|
||||||
<xb:package>com.microsoft.schemas.office.office</xb:package>
|
<xb:package>com.microsoft.schemas.office.office</xb:package>
|
||||||
</xb:namespace>
|
</xb:namespace>
|
||||||
|
|
||||||
<xb:namespace uri="urn:schemas-microsoft-com:office:excel">
|
<xb:namespace uri="urn:schemas-microsoft-com:office:excel">
|
||||||
<xb:package>com.microsoft.schemas.office.excel</xb:package>
|
<xb:package>com.microsoft.schemas.office.excel</xb:package>
|
||||||
</xb:namespace>
|
</xb:namespace>
|
||||||
|
|
||||||
<xb:namespace uri="urn:schemas-microsoft-com:office:word">
|
<xb:namespace uri="urn:schemas-microsoft-com:office:word">
|
||||||
<xb:package>com.microsoft.schemas.office.word</xb:package>
|
<xb:package>com.microsoft.schemas.office.word</xb:package>
|
||||||
</xb:namespace>
|
</xb:namespace>
|
||||||
|
|
||||||
<xb:namespace uri="urn:schemas-microsoft-com:office:powerpoint">
|
<xb:namespace uri="urn:schemas-microsoft-com:office:powerpoint">
|
||||||
<xb:package>com.microsoft.schemas.office.powerpoint</xb:package>
|
<xb:package>com.microsoft.schemas.office.powerpoint</xb:package>
|
||||||
</xb:namespace>
|
</xb:namespace>
|
||||||
|
|
||||||
<xb:namespace uri="urn:schemas-microsoft-com:vml">
|
<xb:namespace uri="urn:schemas-microsoft-com:vml">
|
||||||
<xb:package>com.microsoft.schemas.vml</xb:package>
|
<xb:package>com.microsoft.schemas.vml</xb:package>
|
||||||
</xb:namespace>
|
</xb:namespace>
|
||||||
|
|
||||||
<xb:namespace uri="http://schemas.openxmlformats.org/markup-compatibility/2006">
|
<xb:namespace uri="http://schemas.openxmlformats.org/markup-compatibility/2006">
|
||||||
<xb:package>com.microsoft.schemas.compatibility</xb:package>
|
<xb:package>com.microsoft.schemas.compatibility</xb:package>
|
||||||
</xb:namespace>
|
</xb:namespace>
|
||||||
|
|
||||||
<xb:namespace uri="urn:schemas-poi-apache-org:vmldrawing">
|
<xb:namespace uri="urn:schemas-poi-apache-org:vmldrawing">
|
||||||
<xb:package>org.apache.poi.schemas.vmldrawing</xb:package>
|
<xb:package>org.apache.poi.schemas.vmldrawing</xb:package>
|
||||||
</xb:namespace>
|
</xb:namespace>
|
||||||
|
|
||||||
</xb:config>
|
</xb:config>
|
||||||
@ -1,44 +1,44 @@
|
|||||||
/* ====================================================================
|
/* ====================================================================
|
||||||
Licensed to the Apache Software Foundation (ASF) under one or more
|
Licensed to the Apache Software Foundation (ASF) under one or more
|
||||||
contributor license agreements. See the NOTICE file distributed with
|
contributor license agreements. See the NOTICE file distributed with
|
||||||
this work for additional information regarding copyright ownership.
|
this work for additional information regarding copyright ownership.
|
||||||
The ASF licenses this file to You under the Apache License, Version 2.0
|
The ASF licenses this file to You under the Apache License, Version 2.0
|
||||||
(the "License"); you may not use this file except in compliance with
|
(the "License"); you may not use this file except in compliance with
|
||||||
the License. You may obtain a copy of the License at
|
the License. You may obtain a copy of the License at
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
Unless required by applicable law or agreed to in writing, software
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
See the License for the specific language governing permissions and
|
See the License for the specific language governing permissions and
|
||||||
limitations under the License.
|
limitations under the License.
|
||||||
==================================================================== */
|
==================================================================== */
|
||||||
package org.apache.poi.ooxml;
|
package org.apache.poi.ooxml;
|
||||||
|
|
||||||
import org.apache.poi.openxml4j.opc.PackageRelationshipTypes;
|
import org.apache.poi.openxml4j.opc.PackageRelationshipTypes;
|
||||||
|
|
||||||
import java.net.URI;
|
import java.net.URI;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Represents a hyperlink relationship.
|
* Represents a hyperlink relationship.
|
||||||
*
|
*
|
||||||
* @since 5.3.0
|
* @since 5.3.0
|
||||||
*/
|
*/
|
||||||
public class HyperlinkRelationship extends ReferenceRelationship {
|
public class HyperlinkRelationship extends ReferenceRelationship {
|
||||||
/**
|
/**
|
||||||
* Initializes a new instance of the HyperlinkRelationship.
|
* Initializes a new instance of the HyperlinkRelationship.
|
||||||
*
|
*
|
||||||
* @param hyperlinkUri The target uri of the hyperlink relationship.
|
* @param hyperlinkUri The target uri of the hyperlink relationship.
|
||||||
* @param isExternal Is the URI external.
|
* @param isExternal Is the URI external.
|
||||||
* @param id The relationship ID.
|
* @param id The relationship ID.
|
||||||
*/
|
*/
|
||||||
protected HyperlinkRelationship(POIXMLDocumentPart container, URI hyperlinkUri, boolean isExternal, String id) {
|
protected HyperlinkRelationship(POIXMLDocumentPart container, URI hyperlinkUri, boolean isExternal, String id) {
|
||||||
super(container, hyperlinkUri, isExternal, PackageRelationshipTypes.HYPERLINK_PART, id);
|
super(container, hyperlinkUri, isExternal, PackageRelationshipTypes.HYPERLINK_PART, id);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String getRelationshipType() {
|
public String getRelationshipType() {
|
||||||
return PackageRelationshipTypes.HYPERLINK_PART;
|
return PackageRelationshipTypes.HYPERLINK_PART;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1,79 +1,79 @@
|
|||||||
/* ====================================================================
|
/* ====================================================================
|
||||||
Licensed to the Apache Software Foundation (ASF) under one or more
|
Licensed to the Apache Software Foundation (ASF) under one or more
|
||||||
contributor license agreements. See the NOTICE file distributed with
|
contributor license agreements. See the NOTICE file distributed with
|
||||||
this work for additional information regarding copyright ownership.
|
this work for additional information regarding copyright ownership.
|
||||||
The ASF licenses this file to You under the Apache License, Version 2.0
|
The ASF licenses this file to You under the Apache License, Version 2.0
|
||||||
(the "License"); you may not use this file except in compliance with
|
(the "License"); you may not use this file except in compliance with
|
||||||
the License. You may obtain a copy of the License at
|
the License. You may obtain a copy of the License at
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
Unless required by applicable law or agreed to in writing, software
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
See the License for the specific language governing permissions and
|
See the License for the specific language governing permissions and
|
||||||
limitations under the License.
|
limitations under the License.
|
||||||
==================================================================== */
|
==================================================================== */
|
||||||
package org.apache.poi.ooxml;
|
package org.apache.poi.ooxml;
|
||||||
|
|
||||||
import org.apache.poi.openxml4j.opc.PackageRelationship;
|
import org.apache.poi.openxml4j.opc.PackageRelationship;
|
||||||
import org.apache.poi.openxml4j.opc.TargetMode;
|
import org.apache.poi.openxml4j.opc.TargetMode;
|
||||||
|
|
||||||
import java.net.URI;
|
import java.net.URI;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Defines a reference relationship. A reference relationship can be internal or external.
|
* Defines a reference relationship. A reference relationship can be internal or external.
|
||||||
*
|
*
|
||||||
* @since 5.3.0
|
* @since 5.3.0
|
||||||
*/
|
*/
|
||||||
public abstract class ReferenceRelationship {
|
public abstract class ReferenceRelationship {
|
||||||
private POIXMLDocumentPart container;
|
private POIXMLDocumentPart container;
|
||||||
private final String relationshipType;
|
private final String relationshipType;
|
||||||
private final boolean external;
|
private final boolean external;
|
||||||
private final String id;
|
private final String id;
|
||||||
private final URI uri;
|
private final URI uri;
|
||||||
|
|
||||||
protected ReferenceRelationship(POIXMLDocumentPart container, PackageRelationship packageRelationship) {
|
protected ReferenceRelationship(POIXMLDocumentPart container, PackageRelationship packageRelationship) {
|
||||||
if (packageRelationship == null) {
|
if (packageRelationship == null) {
|
||||||
throw new IllegalArgumentException("packageRelationship");
|
throw new IllegalArgumentException("packageRelationship");
|
||||||
}
|
}
|
||||||
|
|
||||||
this.container = container;
|
this.container = container;
|
||||||
this.relationshipType = packageRelationship.getRelationshipType();
|
this.relationshipType = packageRelationship.getRelationshipType();
|
||||||
this.uri = packageRelationship.getTargetURI();
|
this.uri = packageRelationship.getTargetURI();
|
||||||
this.external = packageRelationship.getTargetMode() == TargetMode.EXTERNAL;
|
this.external = packageRelationship.getTargetMode() == TargetMode.EXTERNAL;
|
||||||
this.id = packageRelationship.getId();
|
this.id = packageRelationship.getId();
|
||||||
}
|
}
|
||||||
|
|
||||||
protected ReferenceRelationship(POIXMLDocumentPart container, URI targetUri, boolean isExternal, String relationshipType, String id) {
|
protected ReferenceRelationship(POIXMLDocumentPart container, URI targetUri, boolean isExternal, String relationshipType, String id) {
|
||||||
if (targetUri == null) {
|
if (targetUri == null) {
|
||||||
throw new NullPointerException("targetUri cannot be null");
|
throw new NullPointerException("targetUri cannot be null");
|
||||||
}
|
}
|
||||||
|
|
||||||
this.container = container;
|
this.container = container;
|
||||||
this.relationshipType = relationshipType;
|
this.relationshipType = relationshipType;
|
||||||
this.uri = targetUri;
|
this.uri = targetUri;
|
||||||
this.id = id;
|
this.id = id;
|
||||||
this.external = isExternal;
|
this.external = isExternal;
|
||||||
}
|
}
|
||||||
|
|
||||||
public POIXMLDocumentPart getContainer() {
|
public POIXMLDocumentPart getContainer() {
|
||||||
return container;
|
return container;
|
||||||
}
|
}
|
||||||
|
|
||||||
public String getRelationshipType() {
|
public String getRelationshipType() {
|
||||||
return relationshipType;
|
return relationshipType;
|
||||||
}
|
}
|
||||||
|
|
||||||
public boolean isExternal() {
|
public boolean isExternal() {
|
||||||
return external;
|
return external;
|
||||||
}
|
}
|
||||||
|
|
||||||
public String getId() {
|
public String getId() {
|
||||||
return id;
|
return id;
|
||||||
}
|
}
|
||||||
|
|
||||||
public URI getUri() {
|
public URI getUri() {
|
||||||
return uri;
|
return uri;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
File diff suppressed because one or more lines are too long
@ -1,4 +1,4 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<presetTableStyles>
|
<presetTableStyles>
|
||||||
<TableStyleMedium28>
|
<TableStyleMedium28>
|
||||||
<dxfs count="7">
|
<dxfs count="7">
|
||||||
|
|||||||
@ -1,122 +1,122 @@
|
|||||||
/*
|
/*
|
||||||
* ====================================================================
|
* ====================================================================
|
||||||
* Licensed to the Apache Software Foundation (ASF) under one or more
|
* Licensed to the Apache Software Foundation (ASF) under one or more
|
||||||
* contributor license agreements. See the NOTICE file distributed with
|
* contributor license agreements. See the NOTICE file distributed with
|
||||||
* this work for additional information regarding copyright ownership.
|
* this work for additional information regarding copyright ownership.
|
||||||
* The ASF licenses this file to You under the Apache License, Version 2.0
|
* The ASF licenses this file to You under the Apache License, Version 2.0
|
||||||
* (the "License"); you may not use this file except in compliance with
|
* (the "License"); you may not use this file except in compliance with
|
||||||
* the License. You may obtain a copy of the License at
|
* the License. You may obtain a copy of the License at
|
||||||
*
|
*
|
||||||
* http://www.apache.org/licenses/LICENSE-2.0
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||||||
*
|
*
|
||||||
* Unless required by applicable law or agreed to in writing, software
|
* Unless required by applicable law or agreed to in writing, software
|
||||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
* See the License for the specific language governing permissions and
|
* See the License for the specific language governing permissions and
|
||||||
* limitations under the License.
|
* limitations under the License.
|
||||||
* ====================================================================
|
* ====================================================================
|
||||||
*/
|
*/
|
||||||
|
|
||||||
package org.apache.poi.xssf.streaming;
|
package org.apache.poi.xssf.streaming;
|
||||||
|
|
||||||
import static org.junit.jupiter.api.Assertions.assertTrue;
|
import static org.junit.jupiter.api.Assertions.assertTrue;
|
||||||
|
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
import java.io.InputStream;
|
import java.io.InputStream;
|
||||||
|
|
||||||
import org.apache.commons.io.output.UnsynchronizedByteArrayOutputStream;
|
import org.apache.commons.io.output.UnsynchronizedByteArrayOutputStream;
|
||||||
import org.apache.poi.ss.usermodel.Row;
|
import org.apache.poi.ss.usermodel.Row;
|
||||||
import org.apache.poi.ss.usermodel.Sheet;
|
import org.apache.poi.ss.usermodel.Sheet;
|
||||||
import org.apache.poi.xssf.usermodel.XSSFSheet;
|
import org.apache.poi.xssf.usermodel.XSSFSheet;
|
||||||
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
|
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
|
||||||
import org.junit.jupiter.api.Test;
|
import org.junit.jupiter.api.Test;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Test creates cells in reverse column order in XSSF and SXSSF and expects
|
* Test creates cells in reverse column order in XSSF and SXSSF and expects
|
||||||
* saved files to have fixed the order.
|
* saved files to have fixed the order.
|
||||||
*
|
*
|
||||||
* This is necessary because if columns in the saved file are out of order
|
* This is necessary because if columns in the saved file are out of order
|
||||||
* Excel will show a repair dialog when opening the file and removing data.
|
* Excel will show a repair dialog when opening the file and removing data.
|
||||||
*/
|
*/
|
||||||
public final class TestOutOfOrderColumns {
|
public final class TestOutOfOrderColumns {
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
void outOfOrderColumnsXSSF() throws IOException {
|
void outOfOrderColumnsXSSF() throws IOException {
|
||||||
try (
|
try (
|
||||||
XSSFWorkbook wb = new XSSFWorkbook();
|
XSSFWorkbook wb = new XSSFWorkbook();
|
||||||
UnsynchronizedByteArrayOutputStream bos = UnsynchronizedByteArrayOutputStream.builder().get()
|
UnsynchronizedByteArrayOutputStream bos = UnsynchronizedByteArrayOutputStream.builder().get()
|
||||||
) {
|
) {
|
||||||
XSSFSheet sheet = wb.createSheet();
|
XSSFSheet sheet = wb.createSheet();
|
||||||
|
|
||||||
Row row = sheet.createRow(0);
|
Row row = sheet.createRow(0);
|
||||||
// create cells in reverse order
|
// create cells in reverse order
|
||||||
row.createCell(1).setCellValue("def");
|
row.createCell(1).setCellValue("def");
|
||||||
row.createCell(0).setCellValue("abc");
|
row.createCell(0).setCellValue("abc");
|
||||||
|
|
||||||
wb.write(bos);
|
wb.write(bos);
|
||||||
|
|
||||||
validateOrder(bos.toInputStream());
|
validateOrder(bos.toInputStream());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
void outOfOrderColumnsSXSSF() throws IOException {
|
void outOfOrderColumnsSXSSF() throws IOException {
|
||||||
try (
|
try (
|
||||||
SXSSFWorkbook wb = new SXSSFWorkbook();
|
SXSSFWorkbook wb = new SXSSFWorkbook();
|
||||||
UnsynchronizedByteArrayOutputStream bos = UnsynchronizedByteArrayOutputStream.builder().get()
|
UnsynchronizedByteArrayOutputStream bos = UnsynchronizedByteArrayOutputStream.builder().get()
|
||||||
) {
|
) {
|
||||||
Sheet sheet = wb.createSheet();
|
Sheet sheet = wb.createSheet();
|
||||||
|
|
||||||
Row row = sheet.createRow(0);
|
Row row = sheet.createRow(0);
|
||||||
// create cells in reverse order
|
// create cells in reverse order
|
||||||
row.createCell(1).setCellValue("xyz");
|
row.createCell(1).setCellValue("xyz");
|
||||||
row.createCell(0).setCellValue("uvw");
|
row.createCell(0).setCellValue("uvw");
|
||||||
|
|
||||||
wb.write(bos);
|
wb.write(bos);
|
||||||
|
|
||||||
validateOrder(bos.toInputStream());
|
validateOrder(bos.toInputStream());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
/** this is the problematic case, as XSSF column sorting is skipped when saving with SXSSF. */
|
/** this is the problematic case, as XSSF column sorting is skipped when saving with SXSSF. */
|
||||||
void mixOfXSSFAndSXSSF() throws IOException {
|
void mixOfXSSFAndSXSSF() throws IOException {
|
||||||
try (
|
try (
|
||||||
XSSFWorkbook wb = new XSSFWorkbook();
|
XSSFWorkbook wb = new XSSFWorkbook();
|
||||||
UnsynchronizedByteArrayOutputStream bos = UnsynchronizedByteArrayOutputStream.builder().get()
|
UnsynchronizedByteArrayOutputStream bos = UnsynchronizedByteArrayOutputStream.builder().get()
|
||||||
) {
|
) {
|
||||||
XSSFSheet sheet = wb.createSheet();
|
XSSFSheet sheet = wb.createSheet();
|
||||||
|
|
||||||
Row row1 = sheet.createRow(0);
|
Row row1 = sheet.createRow(0);
|
||||||
// create cells in reverse order
|
// create cells in reverse order
|
||||||
row1.createCell(1).setCellValue("def");
|
row1.createCell(1).setCellValue("def");
|
||||||
row1.createCell(0).setCellValue("abc");
|
row1.createCell(0).setCellValue("abc");
|
||||||
|
|
||||||
try (SXSSFWorkbook sxssfWorkbook = new SXSSFWorkbook(wb)) {
|
try (SXSSFWorkbook sxssfWorkbook = new SXSSFWorkbook(wb)) {
|
||||||
Sheet sSheet = sxssfWorkbook.getSheetAt(0);
|
Sheet sSheet = sxssfWorkbook.getSheetAt(0);
|
||||||
Row row2 = sSheet.createRow(1);
|
Row row2 = sSheet.createRow(1);
|
||||||
// create cells in reverse order
|
// create cells in reverse order
|
||||||
row2.createCell(1).setCellValue("xyz");
|
row2.createCell(1).setCellValue("xyz");
|
||||||
row2.createCell(0).setCellValue("uvw");
|
row2.createCell(0).setCellValue("uvw");
|
||||||
|
|
||||||
sxssfWorkbook.write(bos);
|
sxssfWorkbook.write(bos);
|
||||||
|
|
||||||
validateOrder(bos.toInputStream());
|
validateOrder(bos.toInputStream());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void validateOrder(InputStream is) throws IOException {
|
private void validateOrder(InputStream is) throws IOException {
|
||||||
// test if saved cells are in order
|
// test if saved cells are in order
|
||||||
try (XSSFWorkbook xssfWorkbook = new XSSFWorkbook(is)) {
|
try (XSSFWorkbook xssfWorkbook = new XSSFWorkbook(is)) {
|
||||||
XSSFSheet xssfSheet = xssfWorkbook.getSheetAt(0);
|
XSSFSheet xssfSheet = xssfWorkbook.getSheetAt(0);
|
||||||
|
|
||||||
Row resultRow = xssfSheet.getRow(0);
|
Row resultRow = xssfSheet.getRow(0);
|
||||||
// POI doesn't show stored order because _cells TreeMap sorts it automatically.
|
// POI doesn't show stored order because _cells TreeMap sorts it automatically.
|
||||||
// The only way to test is to compare the xml.
|
// The only way to test is to compare the xml.
|
||||||
String s = resultRow.toString();
|
String s = resultRow.toString();
|
||||||
assertTrue(s.matches("(?s).*A1.*B1.*"), "unexpected order: " + s);
|
assertTrue(s.matches("(?s).*A1.*B1.*"), "unexpected order: " + s);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1,50 +1,50 @@
|
|||||||
/* ====================================================================
|
/* ====================================================================
|
||||||
Licensed to the Apache Software Foundation (ASF) under one or more
|
Licensed to the Apache Software Foundation (ASF) under one or more
|
||||||
contributor license agreements. See the NOTICE file distributed with
|
contributor license agreements. See the NOTICE file distributed with
|
||||||
this work for additional information regarding copyright ownership.
|
this work for additional information regarding copyright ownership.
|
||||||
The ASF licenses this file to You under the Apache License, Version 2.0
|
The ASF licenses this file to You under the Apache License, Version 2.0
|
||||||
(the "License"); you may not use this file except in compliance with
|
(the "License"); you may not use this file except in compliance with
|
||||||
the License. You may obtain a copy of the License at
|
the License. You may obtain a copy of the License at
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
Unless required by applicable law or agreed to in writing, software
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
See the License for the specific language governing permissions and
|
See the License for the specific language governing permissions and
|
||||||
limitations under the License.
|
limitations under the License.
|
||||||
==================================================================== */
|
==================================================================== */
|
||||||
|
|
||||||
package org.apache.poi.util;
|
package org.apache.poi.util;
|
||||||
|
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
import java.nio.file.Path;
|
import java.nio.file.Path;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Username-aware subclass of {@link DefaultTempFileCreationStrategy}
|
* Username-aware subclass of {@link DefaultTempFileCreationStrategy}
|
||||||
* that avoids permission issues when deploying applications with multiple users on the same server.
|
* that avoids permission issues when deploying applications with multiple users on the same server.
|
||||||
* Other than adding the username to the temporary directory, all other behavior is the same as the superclass.
|
* Other than adding the username to the temporary directory, all other behavior is the same as the superclass.
|
||||||
*
|
*
|
||||||
* @since 5.4.0
|
* @since 5.4.0
|
||||||
*/
|
*/
|
||||||
public class UserNameAwareTempFileCreationStrategy extends DefaultTempFileCreationStrategy {
|
public class UserNameAwareTempFileCreationStrategy extends DefaultTempFileCreationStrategy {
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* JVM property for the current username.
|
* JVM property for the current username.
|
||||||
*/
|
*/
|
||||||
private static final String JAVA_PROP_USER_NAME = "user.name";
|
private static final String JAVA_PROP_USER_NAME = "user.name";
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected Path getPOIFilesDirectoryPath() throws IOException {
|
protected Path getPOIFilesDirectoryPath() throws IOException {
|
||||||
final String tmpDir = getJavaIoTmpDir();
|
final String tmpDir = getJavaIoTmpDir();
|
||||||
String poifilesDir = POIFILES;
|
String poifilesDir = POIFILES;
|
||||||
// Make the default temporary directory contain the username to avoid permission issues
|
// Make the default temporary directory contain the username to avoid permission issues
|
||||||
// when deploying applications on the same server with multiple users
|
// when deploying applications on the same server with multiple users
|
||||||
String username = System.getProperty(JAVA_PROP_USER_NAME);
|
String username = System.getProperty(JAVA_PROP_USER_NAME);
|
||||||
if (null != username && !username.isEmpty()) {
|
if (null != username && !username.isEmpty()) {
|
||||||
poifilesDir += "_" + username;
|
poifilesDir += "_" + username;
|
||||||
}
|
}
|
||||||
return Path.of(tmpDir, poifilesDir);
|
return Path.of(tmpDir, poifilesDir);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<presetShapeDefinitons>
|
<presetShapeDefinitons>
|
||||||
<accentBorderCallout1>
|
<accentBorderCallout1>
|
||||||
|
|
||||||
|
|||||||
@ -1,42 +1,42 @@
|
|||||||
/* ====================================================================
|
/* ====================================================================
|
||||||
Licensed to the Apache Software Foundation (ASF) under one or more
|
Licensed to the Apache Software Foundation (ASF) under one or more
|
||||||
contributor license agreements. See the NOTICE file distributed with
|
contributor license agreements. See the NOTICE file distributed with
|
||||||
this work for additional information regarding copyright ownership.
|
this work for additional information regarding copyright ownership.
|
||||||
The ASF licenses this file to You under the Apache License, Version 2.0
|
The ASF licenses this file to You under the Apache License, Version 2.0
|
||||||
(the "License"); you may not use this file except in compliance with
|
(the "License"); you may not use this file except in compliance with
|
||||||
the License. You may obtain a copy of the License at
|
the License. You may obtain a copy of the License at
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
Unless required by applicable law or agreed to in writing, software
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
See the License for the specific language governing permissions and
|
See the License for the specific language governing permissions and
|
||||||
limitations under the License.
|
limitations under the License.
|
||||||
==================================================================== */
|
==================================================================== */
|
||||||
|
|
||||||
package org.apache.poi.util;
|
package org.apache.poi.util;
|
||||||
|
|
||||||
import org.junit.jupiter.api.Test;
|
import org.junit.jupiter.api.Test;
|
||||||
|
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
import java.nio.file.Path;
|
import java.nio.file.Path;
|
||||||
|
|
||||||
import static org.apache.poi.util.DefaultTempFileCreationStrategy.POIFILES;
|
import static org.apache.poi.util.DefaultTempFileCreationStrategy.POIFILES;
|
||||||
import static org.junit.jupiter.api.Assertions.assertEquals;
|
import static org.junit.jupiter.api.Assertions.assertEquals;
|
||||||
|
|
||||||
class UserNameAwareTempFileCreationStrategyTest {
|
class UserNameAwareTempFileCreationStrategyTest {
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
void getPOIFilesDirectoryPath() throws IOException {
|
void getPOIFilesDirectoryPath() throws IOException {
|
||||||
UserNameAwareTempFileCreationStrategy strategy = new UserNameAwareTempFileCreationStrategy();
|
UserNameAwareTempFileCreationStrategy strategy = new UserNameAwareTempFileCreationStrategy();
|
||||||
String tmpDir = System.getProperty(TempFile.JAVA_IO_TMPDIR);
|
String tmpDir = System.getProperty(TempFile.JAVA_IO_TMPDIR);
|
||||||
String username = System.getProperty("user.name");
|
String username = System.getProperty("user.name");
|
||||||
String expectedPath = Path.of(tmpDir, POIFILES + "_" + username).toString();
|
String expectedPath = Path.of(tmpDir, POIFILES + "_" + username).toString();
|
||||||
|
|
||||||
Path actualPath = strategy.getPOIFilesDirectoryPath();
|
Path actualPath = strategy.getPOIFilesDirectoryPath();
|
||||||
|
|
||||||
assertEquals(expectedPath, actualPath.toString());
|
assertEquals(expectedPath, actualPath.toString());
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1,86 +1,86 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<!--
|
<!--
|
||||||
====================================================================
|
====================================================================
|
||||||
Licensed to the Apache Software Foundation (ASF) under one or more
|
Licensed to the Apache Software Foundation (ASF) under one or more
|
||||||
contributor license agreements. See the NOTICE file distributed with
|
contributor license agreements. See the NOTICE file distributed with
|
||||||
this work for additional information regarding copyright ownership.
|
this work for additional information regarding copyright ownership.
|
||||||
The ASF licenses this file to You under the Apache License, Version 2.0
|
The ASF licenses this file to You under the Apache License, Version 2.0
|
||||||
(the "License"); you may not use this file except in compliance with
|
(the "License"); you may not use this file except in compliance with
|
||||||
the License. You may obtain a copy of the License at
|
the License. You may obtain a copy of the License at
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
Unless required by applicable law or agreed to in writing, software
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
See the License for the specific language governing permissions and
|
See the License for the specific language governing permissions and
|
||||||
limitations under the License.
|
limitations under the License.
|
||||||
====================================================================
|
====================================================================
|
||||||
-->
|
-->
|
||||||
<!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V2.0//EN" "document-v20.dtd">
|
<!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V2.0//EN" "document-v20.dtd">
|
||||||
|
|
||||||
<document>
|
<document>
|
||||||
<header>
|
<header>
|
||||||
<title>Third Party Contributions</title>
|
<title>Third Party Contributions</title>
|
||||||
<authors>
|
<authors>
|
||||||
<person name="Nicola Ken Barozzi" email="barozzi@nicolaken.com"/>
|
<person name="Nicola Ken Barozzi" email="barozzi@nicolaken.com"/>
|
||||||
</authors>
|
</authors>
|
||||||
</header>
|
</header>
|
||||||
|
|
||||||
<body>
|
<body>
|
||||||
|
|
||||||
<section><title>How to Contribute</title>
|
<section><title>How to Contribute</title>
|
||||||
<p>
|
<p>
|
||||||
See <a href="contrib.xml">How to contribute to Poi</a>.
|
See <a href="contrib.xml">How to contribute to Poi</a>.
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
</section>
|
</section>
|
||||||
|
|
||||||
<section><title>Contributed Components</title>
|
<section><title>Contributed Components</title>
|
||||||
<p>
|
<p>
|
||||||
These are not necessarily deemed to be high enough quality to be included in the
|
These are not necessarily deemed to be high enough quality to be included in the
|
||||||
core distribution, but they have been tested under <a href="contrib.xml">
|
core distribution, but they have been tested under <a href="contrib.xml">
|
||||||
several key environments</a>, they are provided under the same license
|
several key environments</a>, they are provided under the same license
|
||||||
as Poi, and they are included in the POI distribution under the
|
as Poi, and they are included in the POI distribution under the
|
||||||
<code>contrib/</code> directory.
|
<code>contrib/</code> directory.
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
<p>
|
<p>
|
||||||
<strong>None as yet!</strong> - although you can expect that some of the links
|
<strong>None as yet!</strong> - although you can expect that some of the links
|
||||||
listed below will eventually migrate to the "contributed components" level, and
|
listed below will eventually migrate to the "contributed components" level, and
|
||||||
then maybe even into the main distribution.
|
then maybe even into the main distribution.
|
||||||
</p>
|
</p>
|
||||||
</section>
|
</section>
|
||||||
|
|
||||||
<section><title>Patch Queue</title>
|
<section><title>Patch Queue</title>
|
||||||
<p><a href="patches.html">Submissions of modifications</a>
|
<p><a href="patches.html">Submissions of modifications</a>
|
||||||
to POI which are awaiting review. Anyone can
|
to POI which are awaiting review. Anyone can
|
||||||
comment on them on the dev mailing list - code reviewers are needed!
|
comment on them on the dev mailing list - code reviewers are needed!
|
||||||
<strong>Use these at your own risk</strong> - although POI has no guarantee
|
<strong>Use these at your own risk</strong> - although POI has no guarantee
|
||||||
either, these patches have not been reviewed, let alone accepted.
|
either, these patches have not been reviewed, let alone accepted.
|
||||||
</p>
|
</p>
|
||||||
</section>
|
</section>
|
||||||
|
|
||||||
<section><title>Other Extensions</title>
|
<section><title>Other Extensions</title>
|
||||||
<p>The other extensions listed here are <strong>not endorsed</strong> by the POI
|
<p>The other extensions listed here are <strong>not endorsed</strong> by the POI
|
||||||
project either - they are provided as a convenience only. They may or may not work,
|
project either - they are provided as a convenience only. They may or may not work,
|
||||||
they may or may not be open source, etc.
|
they may or may not be open source, etc.
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
<p>To have a link added to this table, see <a href="contrib.xml">How to contribute
|
<p>To have a link added to this table, see <a href="contrib.xml">How to contribute
|
||||||
to POI</a>.</p>
|
to POI</a>.</p>
|
||||||
|
|
||||||
<table>
|
<table>
|
||||||
<tr>
|
<tr>
|
||||||
<th>Name and Link</th>
|
<th>Name and Link</th>
|
||||||
<th>Type</th>
|
<th>Type</th>
|
||||||
<th>Description</th>
|
<th>Description</th>
|
||||||
<th>Status</th>
|
<th>Status</th>
|
||||||
<th>Licensing</th>
|
<th>Licensing</th>
|
||||||
<th>Contact</th>
|
<th>Contact</th>
|
||||||
</tr>
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
|
|
||||||
</section>
|
</section>
|
||||||
</body>
|
</body>
|
||||||
</document>
|
</document>
|
||||||
|
|||||||
@ -1,174 +1,174 @@
|
|||||||
# (C) Copyright Uwe Schindler (Generics Policeman) and others.
|
# (C) Copyright Uwe Schindler (Generics Policeman) and others.
|
||||||
# Parts of this work are licensed to the Apache Software Foundation (ASF)
|
# Parts of this work are licensed to the Apache Software Foundation (ASF)
|
||||||
# under one or more contributor license agreements.
|
# under one or more contributor license agreements.
|
||||||
#
|
#
|
||||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
# you may not use this file except in compliance with the License.
|
# you may not use this file except in compliance with the License.
|
||||||
# You may obtain a copy of the License at
|
# You may obtain a copy of the License at
|
||||||
#
|
#
|
||||||
# http://www.apache.org/licenses/LICENSE-2.0
|
# http://www.apache.org/licenses/LICENSE-2.0
|
||||||
#
|
#
|
||||||
# Unless required by applicable law or agreed to in writing, software
|
# Unless required by applicable law or agreed to in writing, software
|
||||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
# See the License for the specific language governing permissions and
|
# See the License for the specific language governing permissions and
|
||||||
# limitations under the License.
|
# limitations under the License.
|
||||||
#
|
#
|
||||||
# This file contains API signatures which are specific to POI.
|
# This file contains API signatures which are specific to POI.
|
||||||
# The goal is to minimize implicit defaults
|
# The goal is to minimize implicit defaults
|
||||||
|
|
||||||
@ignoreMissingClasses
|
@ignoreMissingClasses
|
||||||
@defaultMessage POI forbidden APIs
|
@defaultMessage POI forbidden APIs
|
||||||
|
|
||||||
# Locale related interfaces which we want to avoid to not have code which depends on the locale of the current machine
|
# Locale related interfaces which we want to avoid to not have code which depends on the locale of the current machine
|
||||||
java.util.Locale#getDefault() @ Do not use methods that depend on the current Locale, either use Locale.ROOT or let the user define the locale, see class LocaleUtil for details
|
java.util.Locale#getDefault() @ Do not use methods that depend on the current Locale, either use Locale.ROOT or let the user define the locale, see class LocaleUtil for details
|
||||||
java.util.Locale#setDefault(java.util.Locale) @ Do not use methods that depend on the current Locale, either use Locale.ROOT or let the user define the locale, see class LocaleUtil for details
|
java.util.Locale#setDefault(java.util.Locale) @ Do not use methods that depend on the current Locale, either use Locale.ROOT or let the user define the locale, see class LocaleUtil for details
|
||||||
java.util.TimeZone#getDefault() @ Do not use methods that depend on the current Locale, either use Locale.ROOT or let the user define the locale, see class LocaleUtil for details
|
java.util.TimeZone#getDefault() @ Do not use methods that depend on the current Locale, either use Locale.ROOT or let the user define the locale, see class LocaleUtil for details
|
||||||
java.util.Date#toString() @ Do not use methods that depend on the current Locale, either use Locale.ROOT or let the user define the locale, see class LocaleUtil for details
|
java.util.Date#toString() @ Do not use methods that depend on the current Locale, either use Locale.ROOT or let the user define the locale, see class LocaleUtil for details
|
||||||
|
|
||||||
java.text.DecimalFormatSymbols#<init>() @ use DecimalFormatSymbols.getInstance()
|
java.text.DecimalFormatSymbols#<init>() @ use DecimalFormatSymbols.getInstance()
|
||||||
java.text.DecimalFormatSymbols#<init>(java.util.Locale) @ use DecimalFormatSymbols.getInstance()
|
java.text.DecimalFormatSymbols#<init>(java.util.Locale) @ use DecimalFormatSymbols.getInstance()
|
||||||
|
|
||||||
# the following are taken from the Elasticsearch source at https://github.com/elastic/elasticsearch/tree/master/buildSrc/src/main/resources/forbidden
|
# the following are taken from the Elasticsearch source at https://github.com/elastic/elasticsearch/tree/master/buildSrc/src/main/resources/forbidden
|
||||||
|
|
||||||
@defaultMessage Convert to URI
|
@defaultMessage Convert to URI
|
||||||
java.net.URL#getPath()
|
java.net.URL#getPath()
|
||||||
java.net.URL#getFile()
|
java.net.URL#getFile()
|
||||||
|
|
||||||
@defaultMessage Usage of getLocalHost is discouraged
|
@defaultMessage Usage of getLocalHost is discouraged
|
||||||
java.net.InetAddress#getLocalHost()
|
java.net.InetAddress#getLocalHost()
|
||||||
|
|
||||||
@defaultMessage Specify a location for the temp file/directory instead.
|
@defaultMessage Specify a location for the temp file/directory instead.
|
||||||
java.nio.file.Files#createTempDirectory(java.lang.String,java.nio.file.attribute.FileAttribute[])
|
java.nio.file.Files#createTempDirectory(java.lang.String,java.nio.file.attribute.FileAttribute[])
|
||||||
java.nio.file.Files#createTempFile(java.lang.String,java.lang.String,java.nio.file.attribute.FileAttribute[])
|
java.nio.file.Files#createTempFile(java.lang.String,java.lang.String,java.nio.file.attribute.FileAttribute[])
|
||||||
|
|
||||||
@defaultMessage Specify a location for the temp file/directory instead.
|
@defaultMessage Specify a location for the temp file/directory instead.
|
||||||
java.nio.file.Files#createTempDirectory(java.lang.String,java.nio.file.attribute.FileAttribute[])
|
java.nio.file.Files#createTempDirectory(java.lang.String,java.nio.file.attribute.FileAttribute[])
|
||||||
java.nio.file.Files#createTempFile(java.lang.String,java.lang.String,java.nio.file.attribute.FileAttribute[])
|
java.nio.file.Files#createTempFile(java.lang.String,java.lang.String,java.nio.file.attribute.FileAttribute[])
|
||||||
|
|
||||||
@defaultMessage Don't use java serialization - this can break BWC without noticing it
|
@defaultMessage Don't use java serialization - this can break BWC without noticing it
|
||||||
java.io.ObjectOutputStream
|
java.io.ObjectOutputStream
|
||||||
java.io.ObjectOutput
|
java.io.ObjectOutput
|
||||||
java.io.ObjectInputStream
|
java.io.ObjectInputStream
|
||||||
java.io.ObjectInput
|
java.io.ObjectInput
|
||||||
|
|
||||||
@defaultMessage Resolve hosts explicitly to the address(es) you want with InetAddress.
|
@defaultMessage Resolve hosts explicitly to the address(es) you want with InetAddress.
|
||||||
java.net.InetSocketAddress#<init>(java.lang.String,int)
|
java.net.InetSocketAddress#<init>(java.lang.String,int)
|
||||||
java.net.Socket#<init>(java.lang.String,int)
|
java.net.Socket#<init>(java.lang.String,int)
|
||||||
java.net.Socket#<init>(java.lang.String,int,java.net.InetAddress,int)
|
java.net.Socket#<init>(java.lang.String,int,java.net.InetAddress,int)
|
||||||
|
|
||||||
@defaultMessage Don't bind to wildcard addresses. Be specific.
|
@defaultMessage Don't bind to wildcard addresses. Be specific.
|
||||||
java.net.DatagramSocket#<init>()
|
java.net.DatagramSocket#<init>()
|
||||||
java.net.DatagramSocket#<init>(int)
|
java.net.DatagramSocket#<init>(int)
|
||||||
java.net.InetSocketAddress#<init>(int)
|
java.net.InetSocketAddress#<init>(int)
|
||||||
java.net.MulticastSocket#<init>()
|
java.net.MulticastSocket#<init>()
|
||||||
java.net.MulticastSocket#<init>(int)
|
java.net.MulticastSocket#<init>(int)
|
||||||
java.net.ServerSocket#<init>(int)
|
java.net.ServerSocket#<init>(int)
|
||||||
java.net.ServerSocket#<init>(int,int)
|
java.net.ServerSocket#<init>(int,int)
|
||||||
|
|
||||||
@defaultMessage use NetworkAddress format/formatAddress to print IP or IP+ports
|
@defaultMessage use NetworkAddress format/formatAddress to print IP or IP+ports
|
||||||
java.net.InetAddress#toString()
|
java.net.InetAddress#toString()
|
||||||
java.net.InetAddress#getHostAddress()
|
java.net.InetAddress#getHostAddress()
|
||||||
java.net.Inet4Address#getHostAddress()
|
java.net.Inet4Address#getHostAddress()
|
||||||
java.net.Inet6Address#getHostAddress()
|
java.net.Inet6Address#getHostAddress()
|
||||||
java.net.InetSocketAddress#toString()
|
java.net.InetSocketAddress#toString()
|
||||||
|
|
||||||
@defaultMessage avoid DNS lookups by accident: if you have a valid reason, then @SuppressWarnings with that reason so its completely clear
|
@defaultMessage avoid DNS lookups by accident: if you have a valid reason, then @SuppressWarnings with that reason so its completely clear
|
||||||
java.net.InetAddress#getHostName()
|
java.net.InetAddress#getHostName()
|
||||||
java.net.InetAddress#getCanonicalHostName()
|
java.net.InetAddress#getCanonicalHostName()
|
||||||
|
|
||||||
java.net.InetSocketAddress#getHostName() @ Use getHostString() instead, which avoids a DNS lookup
|
java.net.InetSocketAddress#getHostName() @ Use getHostString() instead, which avoids a DNS lookup
|
||||||
|
|
||||||
|
|
||||||
java.lang.Thread#getAllStackTraces() @ this method needs special permission
|
java.lang.Thread#getAllStackTraces() @ this method needs special permission
|
||||||
java.lang.Thread#getContextClassLoader() @ use getClass().getClassLoader() instead of getContextClassLoader() (see https://stackoverflow.com/a/36228195/2066598)
|
java.lang.Thread#getContextClassLoader() @ use getClass().getClassLoader() instead of getContextClassLoader() (see https://stackoverflow.com/a/36228195/2066598)
|
||||||
|
|
||||||
@defaultMessage Avoid unchecked warnings by using Collections#empty(List|Map|Set) methods
|
@defaultMessage Avoid unchecked warnings by using Collections#empty(List|Map|Set) methods
|
||||||
java.util.Collections#EMPTY_LIST
|
java.util.Collections#EMPTY_LIST
|
||||||
java.util.Collections#EMPTY_MAP
|
java.util.Collections#EMPTY_MAP
|
||||||
java.util.Collections#EMPTY_SET
|
java.util.Collections#EMPTY_SET
|
||||||
|
|
||||||
|
|
||||||
@defaultMessage spawns threads with vague names; use a custom thread factory and name threads so that you can tell (by its name) which executor it is associated with
|
@defaultMessage spawns threads with vague names; use a custom thread factory and name threads so that you can tell (by its name) which executor it is associated with
|
||||||
java.util.concurrent.Executors#newFixedThreadPool(int)
|
java.util.concurrent.Executors#newFixedThreadPool(int)
|
||||||
java.util.concurrent.Executors#newSingleThreadExecutor()
|
java.util.concurrent.Executors#newSingleThreadExecutor()
|
||||||
java.util.concurrent.Executors#newCachedThreadPool()
|
java.util.concurrent.Executors#newCachedThreadPool()
|
||||||
java.util.concurrent.Executors#newSingleThreadScheduledExecutor()
|
java.util.concurrent.Executors#newSingleThreadScheduledExecutor()
|
||||||
java.util.concurrent.Executors#newScheduledThreadPool(int)
|
java.util.concurrent.Executors#newScheduledThreadPool(int)
|
||||||
java.util.concurrent.Executors#defaultThreadFactory()
|
java.util.concurrent.Executors#defaultThreadFactory()
|
||||||
java.util.concurrent.Executors#privilegedThreadFactory()
|
java.util.concurrent.Executors#privilegedThreadFactory()
|
||||||
|
|
||||||
java.lang.Character#codePointBefore(char[],int) @ Implicit start offset is error-prone when the char[] is a buffer and the first chars are random chars
|
java.lang.Character#codePointBefore(char[],int) @ Implicit start offset is error-prone when the char[] is a buffer and the first chars are random chars
|
||||||
java.lang.Character#codePointAt(char[],int) @ Implicit end offset is error-prone when the char[] is a buffer and the last chars are random chars
|
java.lang.Character#codePointAt(char[],int) @ Implicit end offset is error-prone when the char[] is a buffer and the last chars are random chars
|
||||||
|
|
||||||
@defaultMessage specify a locale when using toUpperCase / to LowerCase
|
@defaultMessage specify a locale when using toUpperCase / to LowerCase
|
||||||
|
|
||||||
java.lang.Character#isLowerCase(char)
|
java.lang.Character#isLowerCase(char)
|
||||||
java.lang.Character#isUpperCase(char)
|
java.lang.Character#isUpperCase(char)
|
||||||
java.lang.Character#toLowerCase(char)
|
java.lang.Character#toLowerCase(char)
|
||||||
java.lang.Character#toUpperCase(char)
|
java.lang.Character#toUpperCase(char)
|
||||||
java.lang.String#toLowerCase()
|
java.lang.String#toLowerCase()
|
||||||
java.lang.String#toUpperCase()
|
java.lang.String#toUpperCase()
|
||||||
|
|
||||||
@defaultMessage Only use wait / notify when really needed try to use concurrency primitives, latches or callbacks instead.
|
@defaultMessage Only use wait / notify when really needed try to use concurrency primitives, latches or callbacks instead.
|
||||||
java.lang.Object#wait()
|
java.lang.Object#wait()
|
||||||
java.lang.Object#wait(long)
|
java.lang.Object#wait(long)
|
||||||
java.lang.Object#wait(long,int)
|
java.lang.Object#wait(long,int)
|
||||||
java.lang.Object#notify()
|
java.lang.Object#notify()
|
||||||
java.lang.Object#notifyAll()
|
java.lang.Object#notifyAll()
|
||||||
|
|
||||||
@defaultMessage Don't interrupt threads use FutureUtils#cancel(Future<T>) instead
|
@defaultMessage Don't interrupt threads use FutureUtils#cancel(Future<T>) instead
|
||||||
java.util.concurrent.Future#cancel(boolean)
|
java.util.concurrent.Future#cancel(boolean)
|
||||||
|
|
||||||
@defaultMessage Don't use ...InputStream.available() as it gives wrong result for certain streams - use IOUtils.toByteArray to read the stream fully and then count the available bytes
|
@defaultMessage Don't use ...InputStream.available() as it gives wrong result for certain streams - use IOUtils.toByteArray to read the stream fully and then count the available bytes
|
||||||
java.io.InputStream#available()
|
java.io.InputStream#available()
|
||||||
|
|
||||||
@defaultMessage Use newInstance, as newFactory does not seem to work on Android - https://github.com/centic9/poi-on-android/issues/44#issuecomment-426517981
|
@defaultMessage Use newInstance, as newFactory does not seem to work on Android - https://github.com/centic9/poi-on-android/issues/44#issuecomment-426517981
|
||||||
javax.xml.stream.XMLEventFactory#newFactory()
|
javax.xml.stream.XMLEventFactory#newFactory()
|
||||||
javax.xml.stream.XMLInputFactory#newFactory()
|
javax.xml.stream.XMLInputFactory#newFactory()
|
||||||
javax.xml.stream.XMLOutputFactory#newFactory()
|
javax.xml.stream.XMLOutputFactory#newFactory()
|
||||||
|
|
||||||
@defaultMessage Unnecessary, inefficient, and confusing conversion of String.toString
|
@defaultMessage Unnecessary, inefficient, and confusing conversion of String.toString
|
||||||
java.lang.String#toString()
|
java.lang.String#toString()
|
||||||
|
|
||||||
#@defaultMessage Deprecated Java APIs
|
#@defaultMessage Deprecated Java APIs
|
||||||
#java.lang.StringBuffer
|
#java.lang.StringBuffer
|
||||||
#java.util.Hashtable
|
#java.util.Hashtable
|
||||||
|
|
||||||
@defaultMessage DatatypeConverter is not available in Java 9+ without adding add-opens - use java.util.Base64
|
@defaultMessage DatatypeConverter is not available in Java 9+ without adding add-opens - use java.util.Base64
|
||||||
javax.xml.bind.DatatypeConverter
|
javax.xml.bind.DatatypeConverter
|
||||||
|
|
||||||
@defaultMessage don't rely on the threads ContextClassLoader - provide the classloader via load(Class, Classloader)
|
@defaultMessage don't rely on the threads ContextClassLoader - provide the classloader via load(Class, Classloader)
|
||||||
java.util.ServiceLoader#load(java.lang.Class)
|
java.util.ServiceLoader#load(java.lang.Class)
|
||||||
|
|
||||||
@defaultMessage Use Log4J classes instead
|
@defaultMessage Use Log4J classes instead
|
||||||
java.util.logging.**
|
java.util.logging.**
|
||||||
|
|
||||||
# taken from https://github.com/apache/solr/blob/main/gradle/validation/forbidden-apis/com.google.guava.guava.all.txt
|
# taken from https://github.com/apache/solr/blob/main/gradle/validation/forbidden-apis/com.google.guava.guava.all.txt
|
||||||
@defaultMessage Use corresponding Java 8 functional/streaming interfaces
|
@defaultMessage Use corresponding Java 8 functional/streaming interfaces
|
||||||
com.google.common.base.Function
|
com.google.common.base.Function
|
||||||
com.google.common.base.Joiner
|
com.google.common.base.Joiner
|
||||||
com.google.common.base.Predicate
|
com.google.common.base.Predicate
|
||||||
com.google.common.base.Supplier
|
com.google.common.base.Supplier
|
||||||
|
|
||||||
@defaultMessage Use java.nio.charset.StandardCharsets instead
|
@defaultMessage Use java.nio.charset.StandardCharsets instead
|
||||||
com.google.common.base.Charsets
|
com.google.common.base.Charsets
|
||||||
|
|
||||||
@defaultMessage Use methods in java.util.Objects instead
|
@defaultMessage Use methods in java.util.Objects instead
|
||||||
com.google.common.base.Objects#equal(java.lang.Object,java.lang.Object)
|
com.google.common.base.Objects#equal(java.lang.Object,java.lang.Object)
|
||||||
com.google.common.base.Objects#hashCode(java.lang.Object[])
|
com.google.common.base.Objects#hashCode(java.lang.Object[])
|
||||||
com.google.common.base.Preconditions#checkNotNull(java.lang.Object)
|
com.google.common.base.Preconditions#checkNotNull(java.lang.Object)
|
||||||
com.google.common.base.Preconditions#checkNotNull(java.lang.Object,java.lang.Object)
|
com.google.common.base.Preconditions#checkNotNull(java.lang.Object,java.lang.Object)
|
||||||
|
|
||||||
@defaultMessage Use methods in java.util.Comparator instead
|
@defaultMessage Use methods in java.util.Comparator instead
|
||||||
com.google.common.collect.Ordering
|
com.google.common.collect.Ordering
|
||||||
|
|
||||||
|
|
||||||
# taken from https://github.com/apache/solr/blob/main/gradle/validation/forbidden-apis/commons-codec.commons-codec.all.txt
|
# taken from https://github.com/apache/solr/blob/main/gradle/validation/forbidden-apis/commons-codec.commons-codec.all.txt
|
||||||
@defaultMessage Use java.nio.charset.StandardCharsets instead
|
@defaultMessage Use java.nio.charset.StandardCharsets instead
|
||||||
org.apache.commons.codec.Charsets
|
org.apache.commons.codec.Charsets
|
||||||
|
|
||||||
@defaultMessage Use java.util.Base64 instead
|
@defaultMessage Use java.util.Base64 instead
|
||||||
org.apache.commons.codec.binary.Base64
|
org.apache.commons.codec.binary.Base64
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -1,374 +1,374 @@
|
|||||||
Numerator Denominator Double 1Digit 2Digit 3Digit Half Quarter Eight Sixteenth Tenth 100th Tika-1132
|
Numerator Denominator Double 1Digit 2Digit 3Digit Half Quarter Eight Sixteenth Tenth 100th Tika-1132
|
||||||
4051 8750153 0.000462963 0 0 0 0 0 0 0 0 0 4051/8750153
|
4051 8750153 0.000462963 0 0 0 0 0 0 0 0 0 4051/8750153
|
||||||
-105 100 -1.05 -1 -1 1/20 -1 1/20 -1 -1 -1 -1 1/16 -1 1/10 -1 5/100 -1 1/20
|
-105 100 -1.05 -1 -1 1/20 -1 1/20 -1 -1 -1 -1 1/16 -1 1/10 -1 5/100 -1 1/20
|
||||||
-104 100 -1.04 -1 -1 1/25 -1 1/25 -1 -1 -1 -1 1/16 -1 -1 4/100 -1 1/25
|
-104 100 -1.04 -1 -1 1/25 -1 1/25 -1 -1 -1 -1 1/16 -1 -1 4/100 -1 1/25
|
||||||
-103 100 -1.03 -1 -1 1/33 -1 3/100 -1 -1 -1 -1 -1 -1 3/100 -1 3/100
|
-103 100 -1.03 -1 -1 1/33 -1 3/100 -1 -1 -1 -1 -1 -1 3/100 -1 3/100
|
||||||
-102 100 -1.02 -1 -1 1/50 -1 1/50 -1 -1 -1 -1 -1 -1 2/100 -1 1/50
|
-102 100 -1.02 -1 -1 1/50 -1 1/50 -1 -1 -1 -1 -1 -1 2/100 -1 1/50
|
||||||
-101 100 -1.01 -1 -1 1/99 -1 1/100 -1 -1 -1 -1 -1 -1 1/100 -1 1/100
|
-101 100 -1.01 -1 -1 1/99 -1 1/100 -1 -1 -1 -1 -1 -1 1/100 -1 1/100
|
||||||
-100 100 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1
|
-100 100 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1
|
||||||
-99 100 -0.99 -1 - 98/99 - 99/100 -1 -1 -1 -1 -1 - 99/100 - 99/100
|
-99 100 -0.99 -1 - 98/99 - 99/100 -1 -1 -1 -1 -1 - 99/100 - 99/100
|
||||||
-98 100 -0.98 -1 - 49/50 - 49/50 -1 -1 -1 -1 -1 - 98/100 - 49/50
|
-98 100 -0.98 -1 - 49/50 - 49/50 -1 -1 -1 -1 -1 - 98/100 - 49/50
|
||||||
-97 100 -0.97 -1 - 32/33 - 97/100 -1 -1 -1 -1 -1 - 97/100 - 97/100
|
-97 100 -0.97 -1 - 32/33 - 97/100 -1 -1 -1 -1 -1 - 97/100 - 97/100
|
||||||
-96 100 -0.96 -1 - 24/25 - 24/25 -1 -1 -1 - 15/16 -1 - 96/100 - 24/25
|
-96 100 -0.96 -1 - 24/25 - 24/25 -1 -1 -1 - 15/16 -1 - 96/100 - 24/25
|
||||||
-95 100 -0.95 -1 - 19/20 - 19/20 -1 -1 -1 - 15/16 -1 - 95/100 - 19/20
|
-95 100 -0.95 -1 - 19/20 - 19/20 -1 -1 -1 - 15/16 -1 - 95/100 - 19/20
|
||||||
-94 100 -0.94 -1 - 47/50 - 47/50 -1 -1 -1 - 15/16 - 9/10 - 94/100 - 47/50
|
-94 100 -0.94 -1 - 47/50 - 47/50 -1 -1 -1 - 15/16 - 9/10 - 94/100 - 47/50
|
||||||
-93 100 -0.93 -1 - 40/43 - 93/100 -1 -1 - 7/8 - 15/16 - 9/10 - 93/100 - 93/100
|
-93 100 -0.93 -1 - 40/43 - 93/100 -1 -1 - 7/8 - 15/16 - 9/10 - 93/100 - 93/100
|
||||||
-92 100 -0.92 -1 - 23/25 - 23/25 -1 -1 - 7/8 - 15/16 - 9/10 - 92/100 - 23/25
|
-92 100 -0.92 -1 - 23/25 - 23/25 -1 -1 - 7/8 - 15/16 - 9/10 - 92/100 - 23/25
|
||||||
-91 100 -0.91 -1 - 81/89 - 91/100 -1 -1 - 7/8 - 15/16 - 9/10 - 91/100 - 91/100
|
-91 100 -0.91 -1 - 81/89 - 91/100 -1 -1 - 7/8 - 15/16 - 9/10 - 91/100 - 91/100
|
||||||
-90 100 -0.9 - 8/9 - 9/10 - 9/10 -1 -1 - 7/8 - 14/16 - 9/10 - 90/100 - 9/10
|
-90 100 -0.9 - 8/9 - 9/10 - 9/10 -1 -1 - 7/8 - 14/16 - 9/10 - 90/100 - 9/10
|
||||||
-89 100 -0.89 - 8/9 - 8/9 - 89/100 -1 -1 - 7/8 - 14/16 - 9/10 - 89/100 - 89/100
|
-89 100 -0.89 - 8/9 - 8/9 - 89/100 -1 -1 - 7/8 - 14/16 - 9/10 - 89/100 - 89/100
|
||||||
-88 100 -0.88 - 7/8 - 22/25 - 22/25 -1 -1 - 7/8 - 14/16 - 9/10 - 88/100 - 22/25
|
-88 100 -0.88 - 7/8 - 22/25 - 22/25 -1 -1 - 7/8 - 14/16 - 9/10 - 88/100 - 22/25
|
||||||
-87 100 -0.87 - 7/8 - 67/77 - 87/100 -1 - 3/4 - 7/8 - 14/16 - 9/10 - 87/100 - 87/100
|
-87 100 -0.87 - 7/8 - 67/77 - 87/100 -1 - 3/4 - 7/8 - 14/16 - 9/10 - 87/100 - 87/100
|
||||||
-86 100 -0.86 - 6/7 - 43/50 - 43/50 -1 - 3/4 - 7/8 - 14/16 - 9/10 - 86/100 - 43/50
|
-86 100 -0.86 - 6/7 - 43/50 - 43/50 -1 - 3/4 - 7/8 - 14/16 - 9/10 - 86/100 - 43/50
|
||||||
-85 100 -0.85 - 6/7 - 17/20 - 17/20 -1 - 3/4 - 7/8 - 14/16 - 9/10 - 85/100 - 17/20
|
-85 100 -0.85 - 6/7 - 17/20 - 17/20 -1 - 3/4 - 7/8 - 14/16 - 9/10 - 85/100 - 17/20
|
||||||
-84 100 -0.84 - 5/6 - 21/25 - 21/25 -1 - 3/4 - 7/8 - 13/16 - 8/10 - 84/100 - 21/25
|
-84 100 -0.84 - 5/6 - 21/25 - 21/25 -1 - 3/4 - 7/8 - 13/16 - 8/10 - 84/100 - 21/25
|
||||||
-83 100 -0.83 - 5/6 - 39/47 - 83/100 -1 - 3/4 - 7/8 - 13/16 - 8/10 - 83/100 - 83/100
|
-83 100 -0.83 - 5/6 - 39/47 - 83/100 -1 - 3/4 - 7/8 - 13/16 - 8/10 - 83/100 - 83/100
|
||||||
-82 100 -0.82 - 5/6 - 41/50 - 41/50 -1 - 3/4 - 7/8 - 13/16 - 8/10 - 82/100 - 41/50
|
-82 100 -0.82 - 5/6 - 41/50 - 41/50 -1 - 3/4 - 7/8 - 13/16 - 8/10 - 82/100 - 41/50
|
||||||
-81 100 -0.81 - 4/5 - 64/79 - 81/100 -1 - 3/4 - 6/8 - 13/16 - 8/10 - 81/100 - 81/100
|
-81 100 -0.81 - 4/5 - 64/79 - 81/100 -1 - 3/4 - 6/8 - 13/16 - 8/10 - 81/100 - 81/100
|
||||||
-80 100 -0.8 - 4/5 - 4/5 - 4/5 -1 - 3/4 - 6/8 - 13/16 - 8/10 - 80/100 - 4/5
|
-80 100 -0.8 - 4/5 - 4/5 - 4/5 -1 - 3/4 - 6/8 - 13/16 - 8/10 - 80/100 - 4/5
|
||||||
-79 100 -0.79 - 4/5 - 64/81 - 79/100 -1 - 3/4 - 6/8 - 13/16 - 8/10 - 79/100 - 79/100
|
-79 100 -0.79 - 4/5 - 64/81 - 79/100 -1 - 3/4 - 6/8 - 13/16 - 8/10 - 79/100 - 79/100
|
||||||
-78 100 -0.78 - 7/9 - 39/50 - 39/50 -1 - 3/4 - 6/8 - 12/16 - 8/10 - 78/100 - 39/50
|
-78 100 -0.78 - 7/9 - 39/50 - 39/50 -1 - 3/4 - 6/8 - 12/16 - 8/10 - 78/100 - 39/50
|
||||||
-77 100 -0.77 - 7/9 - 67/87 - 77/100 -1 - 3/4 - 6/8 - 12/16 - 8/10 - 77/100 - 77/100
|
-77 100 -0.77 - 7/9 - 67/87 - 77/100 -1 - 3/4 - 6/8 - 12/16 - 8/10 - 77/100 - 77/100
|
||||||
-76 100 -0.76 - 3/4 - 19/25 - 19/25 -1 - 3/4 - 6/8 - 12/16 - 8/10 - 76/100 - 19/25
|
-76 100 -0.76 - 3/4 - 19/25 - 19/25 -1 - 3/4 - 6/8 - 12/16 - 8/10 - 76/100 - 19/25
|
||||||
-75 100 -0.75 - 3/4 - 3/4 - 3/4 -1 - 3/4 - 6/8 - 12/16 - 8/10 - 75/100 - 3/4
|
-75 100 -0.75 - 3/4 - 3/4 - 3/4 -1 - 3/4 - 6/8 - 12/16 - 8/10 - 75/100 - 3/4
|
||||||
-74 100 -0.74 - 3/4 - 37/50 - 37/50 - 1/2 - 3/4 - 6/8 - 12/16 - 7/10 - 74/100 - 37/50
|
-74 100 -0.74 - 3/4 - 37/50 - 37/50 - 1/2 - 3/4 - 6/8 - 12/16 - 7/10 - 74/100 - 37/50
|
||||||
-73 100 -0.73 - 3/4 - 46/63 - 73/100 - 1/2 - 3/4 - 6/8 - 12/16 - 7/10 - 73/100 - 73/100
|
-73 100 -0.73 - 3/4 - 46/63 - 73/100 - 1/2 - 3/4 - 6/8 - 12/16 - 7/10 - 73/100 - 73/100
|
||||||
-72 100 -0.72 - 5/7 - 18/25 - 18/25 - 1/2 - 3/4 - 6/8 - 12/16 - 7/10 - 72/100 - 18/25
|
-72 100 -0.72 - 5/7 - 18/25 - 18/25 - 1/2 - 3/4 - 6/8 - 12/16 - 7/10 - 72/100 - 18/25
|
||||||
-71 100 -0.71 - 5/7 - 22/31 - 71/100 - 1/2 - 3/4 - 6/8 - 11/16 - 7/10 - 71/100 - 71/100
|
-71 100 -0.71 - 5/7 - 22/31 - 71/100 - 1/2 - 3/4 - 6/8 - 11/16 - 7/10 - 71/100 - 71/100
|
||||||
-70 100 -0.7 - 2/3 - 7/10 - 7/10 - 1/2 - 3/4 - 6/8 - 11/16 - 7/10 - 70/100 - 7/10
|
-70 100 -0.7 - 2/3 - 7/10 - 7/10 - 1/2 - 3/4 - 6/8 - 11/16 - 7/10 - 70/100 - 7/10
|
||||||
-69 100 -0.69 - 2/3 - 20/29 - 69/100 - 1/2 - 3/4 - 6/8 - 11/16 - 7/10 - 69/100 - 69/100
|
-69 100 -0.69 - 2/3 - 20/29 - 69/100 - 1/2 - 3/4 - 6/8 - 11/16 - 7/10 - 69/100 - 69/100
|
||||||
-68 100 -0.68 - 2/3 - 17/25 - 17/25 - 1/2 - 3/4 - 5/8 - 11/16 - 7/10 - 68/100 - 17/25
|
-68 100 -0.68 - 2/3 - 17/25 - 17/25 - 1/2 - 3/4 - 5/8 - 11/16 - 7/10 - 68/100 - 17/25
|
||||||
-67 100 -0.67 - 2/3 - 65/97 - 67/100 - 1/2 - 3/4 - 5/8 - 11/16 - 7/10 - 67/100 - 67/100
|
-67 100 -0.67 - 2/3 - 65/97 - 67/100 - 1/2 - 3/4 - 5/8 - 11/16 - 7/10 - 67/100 - 67/100
|
||||||
-66 100 -0.66 - 2/3 - 33/50 - 33/50 - 1/2 - 3/4 - 5/8 - 11/16 - 7/10 - 66/100 - 33/50
|
-66 100 -0.66 - 2/3 - 33/50 - 33/50 - 1/2 - 3/4 - 5/8 - 11/16 - 7/10 - 66/100 - 33/50
|
||||||
-65 100 -0.65 - 2/3 - 13/20 - 13/20 - 1/2 - 3/4 - 5/8 - 10/16 - 7/10 - 65/100 - 13/20
|
-65 100 -0.65 - 2/3 - 13/20 - 13/20 - 1/2 - 3/4 - 5/8 - 10/16 - 7/10 - 65/100 - 13/20
|
||||||
-64 100 -0.64 - 2/3 - 16/25 - 16/25 - 1/2 - 3/4 - 5/8 - 10/16 - 6/10 - 64/100 - 16/25
|
-64 100 -0.64 - 2/3 - 16/25 - 16/25 - 1/2 - 3/4 - 5/8 - 10/16 - 6/10 - 64/100 - 16/25
|
||||||
-63 100 -0.63 - 5/8 - 46/73 - 63/100 - 1/2 - 3/4 - 5/8 - 10/16 - 6/10 - 63/100 - 63/100
|
-63 100 -0.63 - 5/8 - 46/73 - 63/100 - 1/2 - 3/4 - 5/8 - 10/16 - 6/10 - 63/100 - 63/100
|
||||||
-62 100 -0.62 - 5/8 - 31/50 - 31/50 - 1/2 - 2/4 - 5/8 - 10/16 - 6/10 - 62/100 - 31/50
|
-62 100 -0.62 - 5/8 - 31/50 - 31/50 - 1/2 - 2/4 - 5/8 - 10/16 - 6/10 - 62/100 - 31/50
|
||||||
-61 100 -0.61 - 3/5 - 36/59 - 61/100 - 1/2 - 2/4 - 5/8 - 10/16 - 6/10 - 61/100 - 61/100
|
-61 100 -0.61 - 3/5 - 36/59 - 61/100 - 1/2 - 2/4 - 5/8 - 10/16 - 6/10 - 61/100 - 61/100
|
||||||
-60 100 -0.6 - 3/5 - 3/5 - 3/5 - 1/2 - 2/4 - 5/8 - 10/16 - 6/10 - 60/100 - 3/5
|
-60 100 -0.6 - 3/5 - 3/5 - 3/5 - 1/2 - 2/4 - 5/8 - 10/16 - 6/10 - 60/100 - 3/5
|
||||||
-59 100 -0.59 - 3/5 - 23/39 - 59/100 - 1/2 - 2/4 - 5/8 - 9/16 - 6/10 - 59/100 - 59/100
|
-59 100 -0.59 - 3/5 - 23/39 - 59/100 - 1/2 - 2/4 - 5/8 - 9/16 - 6/10 - 59/100 - 59/100
|
||||||
-58 100 -0.58 - 4/7 - 29/50 - 29/50 - 1/2 - 2/4 - 5/8 - 9/16 - 6/10 - 58/100 - 29/50
|
-58 100 -0.58 - 4/7 - 29/50 - 29/50 - 1/2 - 2/4 - 5/8 - 9/16 - 6/10 - 58/100 - 29/50
|
||||||
-57 100 -0.57 - 4/7 - 53/93 - 57/100 - 1/2 - 2/4 - 5/8 - 9/16 - 6/10 - 57/100 - 57/100
|
-57 100 -0.57 - 4/7 - 53/93 - 57/100 - 1/2 - 2/4 - 5/8 - 9/16 - 6/10 - 57/100 - 57/100
|
||||||
-56 100 -0.56 - 5/9 - 14/25 - 14/25 - 1/2 - 2/4 - 4/8 - 9/16 - 6/10 - 56/100 - 14/25
|
-56 100 -0.56 - 5/9 - 14/25 - 14/25 - 1/2 - 2/4 - 4/8 - 9/16 - 6/10 - 56/100 - 14/25
|
||||||
-55 100 -0.55 - 5/9 - 11/20 - 11/20 - 1/2 - 2/4 - 4/8 - 9/16 - 6/10 - 55/100 - 11/20
|
-55 100 -0.55 - 5/9 - 11/20 - 11/20 - 1/2 - 2/4 - 4/8 - 9/16 - 6/10 - 55/100 - 11/20
|
||||||
-54 100 -0.54 - 1/2 - 27/50 - 27/50 - 1/2 - 2/4 - 4/8 - 9/16 - 5/10 - 54/100 - 27/50
|
-54 100 -0.54 - 1/2 - 27/50 - 27/50 - 1/2 - 2/4 - 4/8 - 9/16 - 5/10 - 54/100 - 27/50
|
||||||
-53 100 -0.53 - 1/2 - 44/83 - 53/100 - 1/2 - 2/4 - 4/8 - 8/16 - 5/10 - 53/100 - 53/100
|
-53 100 -0.53 - 1/2 - 44/83 - 53/100 - 1/2 - 2/4 - 4/8 - 8/16 - 5/10 - 53/100 - 53/100
|
||||||
-52 100 -0.52 - 1/2 - 13/25 - 13/25 - 1/2 - 2/4 - 4/8 - 8/16 - 5/10 - 52/100 - 13/25
|
-52 100 -0.52 - 1/2 - 13/25 - 13/25 - 1/2 - 2/4 - 4/8 - 8/16 - 5/10 - 52/100 - 13/25
|
||||||
-51 100 -0.51 - 1/2 - 25/49 - 51/100 - 1/2 - 2/4 - 4/8 - 8/16 - 5/10 - 51/100 - 51/100
|
-51 100 -0.51 - 1/2 - 25/49 - 51/100 - 1/2 - 2/4 - 4/8 - 8/16 - 5/10 - 51/100 - 51/100
|
||||||
-50 100 -0.5 - 1/2 - 1/2 - 1/2 - 1/2 - 2/4 - 4/8 - 8/16 - 5/10 - 50/100 - 1/2
|
-50 100 -0.5 - 1/2 - 1/2 - 1/2 - 1/2 - 2/4 - 4/8 - 8/16 - 5/10 - 50/100 - 1/2
|
||||||
-49 100 -0.49 - 1/2 - 24/49 - 49/100 - 1/2 - 2/4 - 4/8 - 8/16 - 5/10 - 49/100 - 49/100
|
-49 100 -0.49 - 1/2 - 24/49 - 49/100 - 1/2 - 2/4 - 4/8 - 8/16 - 5/10 - 49/100 - 49/100
|
||||||
-48 100 -0.48 - 1/2 - 12/25 - 12/25 - 1/2 - 2/4 - 4/8 - 8/16 - 5/10 - 48/100 - 12/25
|
-48 100 -0.48 - 1/2 - 12/25 - 12/25 - 1/2 - 2/4 - 4/8 - 8/16 - 5/10 - 48/100 - 12/25
|
||||||
-47 100 -0.47 - 1/2 - 8/17 - 47/100 - 1/2 - 2/4 - 4/8 - 8/16 - 5/10 - 47/100 - 47/100
|
-47 100 -0.47 - 1/2 - 8/17 - 47/100 - 1/2 - 2/4 - 4/8 - 8/16 - 5/10 - 47/100 - 47/100
|
||||||
-46 100 -0.46 - 1/2 - 23/50 - 23/50 - 1/2 - 2/4 - 4/8 - 7/16 - 5/10 - 46/100 - 23/50
|
-46 100 -0.46 - 1/2 - 23/50 - 23/50 - 1/2 - 2/4 - 4/8 - 7/16 - 5/10 - 46/100 - 23/50
|
||||||
-45 100 -0.45 - 4/9 - 9/20 - 9/20 - 1/2 - 2/4 - 4/8 - 7/16 - 5/10 - 45/100 - 9/20
|
-45 100 -0.45 - 4/9 - 9/20 - 9/20 - 1/2 - 2/4 - 4/8 - 7/16 - 5/10 - 45/100 - 9/20
|
||||||
-44 100 -0.44 - 4/9 - 11/25 - 11/25 - 1/2 - 2/4 - 4/8 - 7/16 - 4/10 - 44/100 - 11/25
|
-44 100 -0.44 - 4/9 - 11/25 - 11/25 - 1/2 - 2/4 - 4/8 - 7/16 - 4/10 - 44/100 - 11/25
|
||||||
-43 100 -0.43 - 3/7 - 3/7 - 43/100 - 1/2 - 2/4 - 3/8 - 7/16 - 4/10 - 43/100 - 43/100
|
-43 100 -0.43 - 3/7 - 3/7 - 43/100 - 1/2 - 2/4 - 3/8 - 7/16 - 4/10 - 43/100 - 43/100
|
||||||
-42 100 -0.42 - 3/7 - 21/50 - 21/50 - 1/2 - 2/4 - 3/8 - 7/16 - 4/10 - 42/100 - 21/50
|
-42 100 -0.42 - 3/7 - 21/50 - 21/50 - 1/2 - 2/4 - 3/8 - 7/16 - 4/10 - 42/100 - 21/50
|
||||||
-41 100 -0.41 - 2/5 - 16/39 - 41/100 - 1/2 - 2/4 - 3/8 - 7/16 - 4/10 - 41/100 - 41/100
|
-41 100 -0.41 - 2/5 - 16/39 - 41/100 - 1/2 - 2/4 - 3/8 - 7/16 - 4/10 - 41/100 - 41/100
|
||||||
-40 100 -0.4 - 2/5 - 2/5 - 2/5 - 1/2 - 2/4 - 3/8 - 6/16 - 4/10 - 40/100 - 2/5
|
-40 100 -0.4 - 2/5 - 2/5 - 2/5 - 1/2 - 2/4 - 3/8 - 6/16 - 4/10 - 40/100 - 2/5
|
||||||
-39 100 -0.39 - 2/5 - 16/41 - 39/100 - 1/2 - 2/4 - 3/8 - 6/16 - 4/10 - 39/100 - 39/100
|
-39 100 -0.39 - 2/5 - 16/41 - 39/100 - 1/2 - 2/4 - 3/8 - 6/16 - 4/10 - 39/100 - 39/100
|
||||||
-38 100 -0.38 - 3/8 - 19/50 - 19/50 - 1/2 - 2/4 - 3/8 - 6/16 - 4/10 - 38/100 - 19/50
|
-38 100 -0.38 - 3/8 - 19/50 - 19/50 - 1/2 - 2/4 - 3/8 - 6/16 - 4/10 - 38/100 - 19/50
|
||||||
-37 100 -0.37 - 3/8 - 10/27 - 37/100 - 1/2 - 1/4 - 3/8 - 6/16 - 4/10 - 37/100 - 37/100
|
-37 100 -0.37 - 3/8 - 10/27 - 37/100 - 1/2 - 1/4 - 3/8 - 6/16 - 4/10 - 37/100 - 37/100
|
||||||
-36 100 -0.36 - 1/3 - 9/25 - 9/25 - 1/2 - 1/4 - 3/8 - 6/16 - 4/10 - 36/100 - 9/25
|
-36 100 -0.36 - 1/3 - 9/25 - 9/25 - 1/2 - 1/4 - 3/8 - 6/16 - 4/10 - 36/100 - 9/25
|
||||||
-35 100 -0.35 - 1/3 - 7/20 - 7/20 - 1/2 - 1/4 - 3/8 - 6/16 - 4/10 - 35/100 - 7/20
|
-35 100 -0.35 - 1/3 - 7/20 - 7/20 - 1/2 - 1/4 - 3/8 - 6/16 - 4/10 - 35/100 - 7/20
|
||||||
-34 100 -0.34 - 1/3 - 17/50 - 17/50 - 1/2 - 1/4 - 3/8 - 5/16 - 3/10 - 34/100 - 17/50
|
-34 100 -0.34 - 1/3 - 17/50 - 17/50 - 1/2 - 1/4 - 3/8 - 5/16 - 3/10 - 34/100 - 17/50
|
||||||
-33 100 -0.33 - 1/3 - 1/3 - 33/100 - 1/2 - 1/4 - 3/8 - 5/16 - 3/10 - 33/100 - 33/100
|
-33 100 -0.33 - 1/3 - 1/3 - 33/100 - 1/2 - 1/4 - 3/8 - 5/16 - 3/10 - 33/100 - 33/100
|
||||||
-32 100 -0.32 - 1/3 - 8/25 - 8/25 - 1/2 - 1/4 - 3/8 - 5/16 - 3/10 - 32/100 - 8/25
|
-32 100 -0.32 - 1/3 - 8/25 - 8/25 - 1/2 - 1/4 - 3/8 - 5/16 - 3/10 - 32/100 - 8/25
|
||||||
-31 100 -0.31 - 1/3 - 22/71 - 31/100 - 1/2 - 1/4 - 2/8 - 5/16 - 3/10 - 31/100 - 31/100
|
-31 100 -0.31 - 1/3 - 22/71 - 31/100 - 1/2 - 1/4 - 2/8 - 5/16 - 3/10 - 31/100 - 31/100
|
||||||
-30 100 -0.3 - 2/7 - 3/10 - 3/10 - 1/2 - 1/4 - 2/8 - 5/16 - 3/10 - 30/100 - 3/10
|
-30 100 -0.3 - 2/7 - 3/10 - 3/10 - 1/2 - 1/4 - 2/8 - 5/16 - 3/10 - 30/100 - 3/10
|
||||||
-29 100 -0.29 - 2/7 - 20/69 - 29/100 - 1/2 - 1/4 - 2/8 - 5/16 - 3/10 - 29/100 - 29/100
|
-29 100 -0.29 - 2/7 - 20/69 - 29/100 - 1/2 - 1/4 - 2/8 - 5/16 - 3/10 - 29/100 - 29/100
|
||||||
-28 100 -0.28 - 2/7 - 7/25 - 7/25 - 1/2 - 1/4 - 2/8 - 4/16 - 3/10 - 28/100 - 7/25
|
-28 100 -0.28 - 2/7 - 7/25 - 7/25 - 1/2 - 1/4 - 2/8 - 4/16 - 3/10 - 28/100 - 7/25
|
||||||
-27 100 -0.27 - 1/4 - 10/37 - 27/100 - 1/2 - 1/4 - 2/8 - 4/16 - 3/10 - 27/100 - 27/100
|
-27 100 -0.27 - 1/4 - 10/37 - 27/100 - 1/2 - 1/4 - 2/8 - 4/16 - 3/10 - 27/100 - 27/100
|
||||||
-26 100 -0.26 - 1/4 - 13/50 - 13/50 - 1/2 - 1/4 - 2/8 - 4/16 - 3/10 - 26/100 - 13/50
|
-26 100 -0.26 - 1/4 - 13/50 - 13/50 - 1/2 - 1/4 - 2/8 - 4/16 - 3/10 - 26/100 - 13/50
|
||||||
-25 100 -0.25 - 1/4 - 1/4 - 1/4 - 1/2 - 1/4 - 2/8 - 4/16 - 3/10 - 25/100 - 1/4
|
-25 100 -0.25 - 1/4 - 1/4 - 1/4 - 1/2 - 1/4 - 2/8 - 4/16 - 3/10 - 25/100 - 1/4
|
||||||
-24 100 -0.24 - 1/4 - 6/25 - 6/25 -0 - 1/4 - 2/8 - 4/16 - 2/10 - 24/100 - 6/25
|
-24 100 -0.24 - 1/4 - 6/25 - 6/25 -0 - 1/4 - 2/8 - 4/16 - 2/10 - 24/100 - 6/25
|
||||||
-23 100 -0.23 - 2/9 - 3/13 - 23/100 -0 - 1/4 - 2/8 - 4/16 - 2/10 - 23/100 - 23/100
|
-23 100 -0.23 - 2/9 - 3/13 - 23/100 -0 - 1/4 - 2/8 - 4/16 - 2/10 - 23/100 - 23/100
|
||||||
-22 100 -0.22 - 2/9 - 11/50 - 11/50 -0 - 1/4 - 2/8 - 4/16 - 2/10 - 22/100 - 11/50
|
-22 100 -0.22 - 2/9 - 11/50 - 11/50 -0 - 1/4 - 2/8 - 4/16 - 2/10 - 22/100 - 11/50
|
||||||
-21 100 -0.21 - 1/5 - 17/81 - 21/100 -0 - 1/4 - 2/8 - 3/16 - 2/10 - 21/100 - 21/100
|
-21 100 -0.21 - 1/5 - 17/81 - 21/100 -0 - 1/4 - 2/8 - 3/16 - 2/10 - 21/100 - 21/100
|
||||||
-20 100 -0.2 - 1/5 - 1/5 - 1/5 -0 - 1/4 - 2/8 - 3/16 - 2/10 - 20/100 - 1/5
|
-20 100 -0.2 - 1/5 - 1/5 - 1/5 -0 - 1/4 - 2/8 - 3/16 - 2/10 - 20/100 - 1/5
|
||||||
-19 100 -0.19 - 1/5 - 15/79 - 19/100 -0 - 1/4 - 2/8 - 3/16 - 2/10 - 19/100 - 19/100
|
-19 100 -0.19 - 1/5 - 15/79 - 19/100 -0 - 1/4 - 2/8 - 3/16 - 2/10 - 19/100 - 19/100
|
||||||
-18 100 -0.18 - 1/6 - 9/50 - 9/50 -0 - 1/4 - 1/8 - 3/16 - 2/10 - 18/100 - 9/50
|
-18 100 -0.18 - 1/6 - 9/50 - 9/50 -0 - 1/4 - 1/8 - 3/16 - 2/10 - 18/100 - 9/50
|
||||||
-17 100 -0.17 - 1/6 - 8/47 - 17/100 -0 - 1/4 - 1/8 - 3/16 - 2/10 - 17/100 - 17/100
|
-17 100 -0.17 - 1/6 - 8/47 - 17/100 -0 - 1/4 - 1/8 - 3/16 - 2/10 - 17/100 - 17/100
|
||||||
-16 100 -0.16 - 1/6 - 4/25 - 4/25 -0 - 1/4 - 1/8 - 3/16 - 2/10 - 16/100 - 4/25
|
-16 100 -0.16 - 1/6 - 4/25 - 4/25 -0 - 1/4 - 1/8 - 3/16 - 2/10 - 16/100 - 4/25
|
||||||
-15 100 -0.15 - 1/7 - 3/20 - 3/20 -0 - 1/4 - 1/8 - 2/16 - 2/10 - 15/100 - 3/20
|
-15 100 -0.15 - 1/7 - 3/20 - 3/20 -0 - 1/4 - 1/8 - 2/16 - 2/10 - 15/100 - 3/20
|
||||||
-14 100 -0.14 - 1/7 - 7/50 - 7/50 -0 - 1/4 - 1/8 - 2/16 - 1/10 - 14/100 - 7/50
|
-14 100 -0.14 - 1/7 - 7/50 - 7/50 -0 - 1/4 - 1/8 - 2/16 - 1/10 - 14/100 - 7/50
|
||||||
-13 100 -0.13 - 1/8 - 3/23 - 13/100 -0 - 1/4 - 1/8 - 2/16 - 1/10 - 13/100 - 13/100
|
-13 100 -0.13 - 1/8 - 3/23 - 13/100 -0 - 1/4 - 1/8 - 2/16 - 1/10 - 13/100 - 13/100
|
||||||
-12 100 -0.12 - 1/8 - 3/25 - 3/25 -0 -0 - 1/8 - 2/16 - 1/10 - 12/100 - 3/25
|
-12 100 -0.12 - 1/8 - 3/25 - 3/25 -0 -0 - 1/8 - 2/16 - 1/10 - 12/100 - 3/25
|
||||||
-11 100 -0.11 - 1/9 - 10/91 - 11/100 -0 -0 - 1/8 - 2/16 - 1/10 - 11/100 - 11/100
|
-11 100 -0.11 - 1/9 - 10/91 - 11/100 -0 -0 - 1/8 - 2/16 - 1/10 - 11/100 - 11/100
|
||||||
-10 100 -0.1 -0 - 1/10 - 1/10 -0 -0 - 1/8 - 2/16 - 1/10 - 10/100 - 1/10
|
-10 100 -0.1 -0 - 1/10 - 1/10 -0 -0 - 1/8 - 2/16 - 1/10 - 10/100 - 1/10
|
||||||
-9 100 -0.09 -0 - 1/11 - 9/100 -0 -0 - 1/8 - 1/16 - 1/10 - 9/100 - 9/100
|
-9 100 -0.09 -0 - 1/11 - 9/100 -0 -0 - 1/8 - 1/16 - 1/10 - 9/100 - 9/100
|
||||||
-8 100 -0.08 -0 - 2/25 - 2/25 -0 -0 - 1/8 - 1/16 - 1/10 - 8/100 - 2/25
|
-8 100 -0.08 -0 - 2/25 - 2/25 -0 -0 - 1/8 - 1/16 - 1/10 - 8/100 - 2/25
|
||||||
-7 100 -0.07 -0 - 4/57 - 7/100 -0 -0 - 1/8 - 1/16 - 1/10 - 7/100 - 7/100
|
-7 100 -0.07 -0 - 4/57 - 7/100 -0 -0 - 1/8 - 1/16 - 1/10 - 7/100 - 7/100
|
||||||
-6 100 -0.06 -0 - 3/50 - 3/50 -0 -0 -0 - 1/16 - 1/10 - 6/100 - 3/50
|
-6 100 -0.06 -0 - 3/50 - 3/50 -0 -0 -0 - 1/16 - 1/10 - 6/100 - 3/50
|
||||||
-5 100 -0.05 -0 - 1/20 - 1/20 -0 -0 -0 - 1/16 - 1/10 - 5/100 - 1/20
|
-5 100 -0.05 -0 - 1/20 - 1/20 -0 -0 -0 - 1/16 - 1/10 - 5/100 - 1/20
|
||||||
-4 100 -0.04 -0 - 1/25 - 1/25 -0 -0 -0 - 1/16 -0 - 4/100 - 1/25
|
-4 100 -0.04 -0 - 1/25 - 1/25 -0 -0 -0 - 1/16 -0 - 4/100 - 1/25
|
||||||
-3 100 -0.03 -0 - 2/67 - 3/100 -0 -0 -0 -0 -0 - 3/100 - 3/100
|
-3 100 -0.03 -0 - 2/67 - 3/100 -0 -0 -0 -0 -0 - 3/100 - 3/100
|
||||||
-2 100 -0.02 -0 - 1/50 - 1/50 -0 -0 -0 -0 -0 - 2/100 - 1/50
|
-2 100 -0.02 -0 - 1/50 - 1/50 -0 -0 -0 -0 -0 - 2/100 - 1/50
|
||||||
-1 100 -0.01 -0 -0 - 1/100 -0 -0 -0 -0 -0 - 1/100 - 1/100
|
-1 100 -0.01 -0 -0 - 1/100 -0 -0 -0 -0 -0 - 1/100 - 1/100
|
||||||
0 100 0 0 0 0 0 0 0 0 0 0 0
|
0 100 0 0 0 0 0 0 0 0 0 0 0
|
||||||
1 100 0.01 0 0 1/100 0 0 0 0 0 1/100 1/100
|
1 100 0.01 0 0 1/100 0 0 0 0 0 1/100 1/100
|
||||||
2 100 0.02 0 1/50 1/50 0 0 0 0 0 2/100 1/50
|
2 100 0.02 0 1/50 1/50 0 0 0 0 0 2/100 1/50
|
||||||
3 100 0.03 0 2/67 3/100 0 0 0 0 0 3/100 3/100
|
3 100 0.03 0 2/67 3/100 0 0 0 0 0 3/100 3/100
|
||||||
4 100 0.04 0 1/25 1/25 0 0 0 1/16 0 4/100 1/25
|
4 100 0.04 0 1/25 1/25 0 0 0 1/16 0 4/100 1/25
|
||||||
5 100 0.05 0 1/20 1/20 0 0 0 1/16 1/10 5/100 1/20
|
5 100 0.05 0 1/20 1/20 0 0 0 1/16 1/10 5/100 1/20
|
||||||
6 100 0.06 0 3/50 3/50 0 0 0 1/16 1/10 6/100 3/50
|
6 100 0.06 0 3/50 3/50 0 0 0 1/16 1/10 6/100 3/50
|
||||||
7 100 0.07 0 4/57 7/100 0 0 1/8 1/16 1/10 7/100 7/100
|
7 100 0.07 0 4/57 7/100 0 0 1/8 1/16 1/10 7/100 7/100
|
||||||
8 100 0.08 0 2/25 2/25 0 0 1/8 1/16 1/10 8/100 2/25
|
8 100 0.08 0 2/25 2/25 0 0 1/8 1/16 1/10 8/100 2/25
|
||||||
9 100 0.09 0 1/11 9/100 0 0 1/8 1/16 1/10 9/100 9/100
|
9 100 0.09 0 1/11 9/100 0 0 1/8 1/16 1/10 9/100 9/100
|
||||||
10 100 0.1 0 1/10 1/10 0 0 1/8 2/16 1/10 10/100 1/10
|
10 100 0.1 0 1/10 1/10 0 0 1/8 2/16 1/10 10/100 1/10
|
||||||
11 100 0.11 1/9 10/91 11/100 0 0 1/8 2/16 1/10 11/100 11/100
|
11 100 0.11 1/9 10/91 11/100 0 0 1/8 2/16 1/10 11/100 11/100
|
||||||
12 100 0.12 1/8 3/25 3/25 0 0 1/8 2/16 1/10 12/100 3/25
|
12 100 0.12 1/8 3/25 3/25 0 0 1/8 2/16 1/10 12/100 3/25
|
||||||
13 100 0.13 1/8 3/23 13/100 0 1/4 1/8 2/16 1/10 13/100 13/100
|
13 100 0.13 1/8 3/23 13/100 0 1/4 1/8 2/16 1/10 13/100 13/100
|
||||||
14 100 0.14 1/7 7/50 7/50 0 1/4 1/8 2/16 1/10 14/100 7/50
|
14 100 0.14 1/7 7/50 7/50 0 1/4 1/8 2/16 1/10 14/100 7/50
|
||||||
15 100 0.15 1/7 3/20 3/20 0 1/4 1/8 2/16 2/10 15/100 3/20
|
15 100 0.15 1/7 3/20 3/20 0 1/4 1/8 2/16 2/10 15/100 3/20
|
||||||
16 100 0.16 1/6 4/25 4/25 0 1/4 1/8 3/16 2/10 16/100 4/25
|
16 100 0.16 1/6 4/25 4/25 0 1/4 1/8 3/16 2/10 16/100 4/25
|
||||||
17 100 0.17 1/6 8/47 17/100 0 1/4 1/8 3/16 2/10 17/100 17/100
|
17 100 0.17 1/6 8/47 17/100 0 1/4 1/8 3/16 2/10 17/100 17/100
|
||||||
18 100 0.18 1/6 9/50 9/50 0 1/4 1/8 3/16 2/10 18/100 9/50
|
18 100 0.18 1/6 9/50 9/50 0 1/4 1/8 3/16 2/10 18/100 9/50
|
||||||
19 100 0.19 1/5 15/79 19/100 0 1/4 2/8 3/16 2/10 19/100 19/100
|
19 100 0.19 1/5 15/79 19/100 0 1/4 2/8 3/16 2/10 19/100 19/100
|
||||||
20 100 0.2 1/5 1/5 1/5 0 1/4 2/8 3/16 2/10 20/100 1/5
|
20 100 0.2 1/5 1/5 1/5 0 1/4 2/8 3/16 2/10 20/100 1/5
|
||||||
21 100 0.21 1/5 17/81 21/100 0 1/4 2/8 3/16 2/10 21/100 21/100
|
21 100 0.21 1/5 17/81 21/100 0 1/4 2/8 3/16 2/10 21/100 21/100
|
||||||
22 100 0.22 2/9 11/50 11/50 0 1/4 2/8 4/16 2/10 22/100 11/50
|
22 100 0.22 2/9 11/50 11/50 0 1/4 2/8 4/16 2/10 22/100 11/50
|
||||||
23 100 0.23 2/9 3/13 23/100 0 1/4 2/8 4/16 2/10 23/100 23/100
|
23 100 0.23 2/9 3/13 23/100 0 1/4 2/8 4/16 2/10 23/100 23/100
|
||||||
24 100 0.24 1/4 6/25 6/25 0 1/4 2/8 4/16 2/10 24/100 6/25
|
24 100 0.24 1/4 6/25 6/25 0 1/4 2/8 4/16 2/10 24/100 6/25
|
||||||
25 100 0.25 1/4 1/4 1/4 1/2 1/4 2/8 4/16 3/10 25/100 1/4
|
25 100 0.25 1/4 1/4 1/4 1/2 1/4 2/8 4/16 3/10 25/100 1/4
|
||||||
26 100 0.26 1/4 13/50 13/50 1/2 1/4 2/8 4/16 3/10 26/100 13/50
|
26 100 0.26 1/4 13/50 13/50 1/2 1/4 2/8 4/16 3/10 26/100 13/50
|
||||||
27 100 0.27 1/4 10/37 27/100 1/2 1/4 2/8 4/16 3/10 27/100 27/100
|
27 100 0.27 1/4 10/37 27/100 1/2 1/4 2/8 4/16 3/10 27/100 27/100
|
||||||
28 100 0.28 2/7 7/25 7/25 1/2 1/4 2/8 4/16 3/10 28/100 7/25
|
28 100 0.28 2/7 7/25 7/25 1/2 1/4 2/8 4/16 3/10 28/100 7/25
|
||||||
29 100 0.29 2/7 20/69 29/100 1/2 1/4 2/8 5/16 3/10 29/100 29/100
|
29 100 0.29 2/7 20/69 29/100 1/2 1/4 2/8 5/16 3/10 29/100 29/100
|
||||||
30 100 0.3 2/7 3/10 3/10 1/2 1/4 2/8 5/16 3/10 30/100 3/10
|
30 100 0.3 2/7 3/10 3/10 1/2 1/4 2/8 5/16 3/10 30/100 3/10
|
||||||
31 100 0.31 1/3 22/71 31/100 1/2 1/4 2/8 5/16 3/10 31/100 31/100
|
31 100 0.31 1/3 22/71 31/100 1/2 1/4 2/8 5/16 3/10 31/100 31/100
|
||||||
32 100 0.32 1/3 8/25 8/25 1/2 1/4 3/8 5/16 3/10 32/100 8/25
|
32 100 0.32 1/3 8/25 8/25 1/2 1/4 3/8 5/16 3/10 32/100 8/25
|
||||||
33 100 0.33 1/3 1/3 33/100 1/2 1/4 3/8 5/16 3/10 33/100 33/100
|
33 100 0.33 1/3 1/3 33/100 1/2 1/4 3/8 5/16 3/10 33/100 33/100
|
||||||
34 100 0.34 1/3 17/50 17/50 1/2 1/4 3/8 5/16 3/10 34/100 17/50
|
34 100 0.34 1/3 17/50 17/50 1/2 1/4 3/8 5/16 3/10 34/100 17/50
|
||||||
35 100 0.35 1/3 7/20 7/20 1/2 1/4 3/8 6/16 4/10 35/100 7/20
|
35 100 0.35 1/3 7/20 7/20 1/2 1/4 3/8 6/16 4/10 35/100 7/20
|
||||||
36 100 0.36 1/3 9/25 9/25 1/2 1/4 3/8 6/16 4/10 36/100 9/25
|
36 100 0.36 1/3 9/25 9/25 1/2 1/4 3/8 6/16 4/10 36/100 9/25
|
||||||
37 100 0.37 3/8 10/27 37/100 1/2 1/4 3/8 6/16 4/10 37/100 37/100
|
37 100 0.37 3/8 10/27 37/100 1/2 1/4 3/8 6/16 4/10 37/100 37/100
|
||||||
38 100 0.38 3/8 19/50 19/50 1/2 2/4 3/8 6/16 4/10 38/100 19/50
|
38 100 0.38 3/8 19/50 19/50 1/2 2/4 3/8 6/16 4/10 38/100 19/50
|
||||||
39 100 0.39 2/5 16/41 39/100 1/2 2/4 3/8 6/16 4/10 39/100 39/100
|
39 100 0.39 2/5 16/41 39/100 1/2 2/4 3/8 6/16 4/10 39/100 39/100
|
||||||
40 100 0.4 2/5 2/5 2/5 1/2 2/4 3/8 6/16 4/10 40/100 2/5
|
40 100 0.4 2/5 2/5 2/5 1/2 2/4 3/8 6/16 4/10 40/100 2/5
|
||||||
41 100 0.41 2/5 16/39 41/100 1/2 2/4 3/8 7/16 4/10 41/100 41/100
|
41 100 0.41 2/5 16/39 41/100 1/2 2/4 3/8 7/16 4/10 41/100 41/100
|
||||||
42 100 0.42 3/7 21/50 21/50 1/2 2/4 3/8 7/16 4/10 42/100 21/50
|
42 100 0.42 3/7 21/50 21/50 1/2 2/4 3/8 7/16 4/10 42/100 21/50
|
||||||
43 100 0.43 3/7 3/7 43/100 1/2 2/4 3/8 7/16 4/10 43/100 43/100
|
43 100 0.43 3/7 3/7 43/100 1/2 2/4 3/8 7/16 4/10 43/100 43/100
|
||||||
44 100 0.44 4/9 11/25 11/25 1/2 2/4 4/8 7/16 4/10 44/100 11/25
|
44 100 0.44 4/9 11/25 11/25 1/2 2/4 4/8 7/16 4/10 44/100 11/25
|
||||||
45 100 0.45 4/9 9/20 9/20 1/2 2/4 4/8 7/16 5/10 45/100 9/20
|
45 100 0.45 4/9 9/20 9/20 1/2 2/4 4/8 7/16 5/10 45/100 9/20
|
||||||
46 100 0.46 1/2 23/50 23/50 1/2 2/4 4/8 7/16 5/10 46/100 23/50
|
46 100 0.46 1/2 23/50 23/50 1/2 2/4 4/8 7/16 5/10 46/100 23/50
|
||||||
47 100 0.47 1/2 8/17 47/100 1/2 2/4 4/8 8/16 5/10 47/100 47/100
|
47 100 0.47 1/2 8/17 47/100 1/2 2/4 4/8 8/16 5/10 47/100 47/100
|
||||||
48 100 0.48 1/2 12/25 12/25 1/2 2/4 4/8 8/16 5/10 48/100 12/25
|
48 100 0.48 1/2 12/25 12/25 1/2 2/4 4/8 8/16 5/10 48/100 12/25
|
||||||
49 100 0.49 1/2 24/49 49/100 1/2 2/4 4/8 8/16 5/10 49/100 49/100
|
49 100 0.49 1/2 24/49 49/100 1/2 2/4 4/8 8/16 5/10 49/100 49/100
|
||||||
50 100 0.5 1/2 1/2 1/2 1/2 2/4 4/8 8/16 5/10 50/100 1/2
|
50 100 0.5 1/2 1/2 1/2 1/2 2/4 4/8 8/16 5/10 50/100 1/2
|
||||||
51 100 0.51 1/2 25/49 51/100 1/2 2/4 4/8 8/16 5/10 51/100 51/100
|
51 100 0.51 1/2 25/49 51/100 1/2 2/4 4/8 8/16 5/10 51/100 51/100
|
||||||
52 100 0.52 1/2 13/25 13/25 1/2 2/4 4/8 8/16 5/10 52/100 13/25
|
52 100 0.52 1/2 13/25 13/25 1/2 2/4 4/8 8/16 5/10 52/100 13/25
|
||||||
53 100 0.53 1/2 44/83 53/100 1/2 2/4 4/8 8/16 5/10 53/100 53/100
|
53 100 0.53 1/2 44/83 53/100 1/2 2/4 4/8 8/16 5/10 53/100 53/100
|
||||||
54 100 0.54 1/2 27/50 27/50 1/2 2/4 4/8 9/16 5/10 54/100 27/50
|
54 100 0.54 1/2 27/50 27/50 1/2 2/4 4/8 9/16 5/10 54/100 27/50
|
||||||
55 100 0.55 5/9 11/20 11/20 1/2 2/4 4/8 9/16 6/10 55/100 11/20
|
55 100 0.55 5/9 11/20 11/20 1/2 2/4 4/8 9/16 6/10 55/100 11/20
|
||||||
56 100 0.56 5/9 14/25 14/25 1/2 2/4 4/8 9/16 6/10 56/100 14/25
|
56 100 0.56 5/9 14/25 14/25 1/2 2/4 4/8 9/16 6/10 56/100 14/25
|
||||||
57 100 0.57 4/7 53/93 57/100 1/2 2/4 5/8 9/16 6/10 57/100 57/100
|
57 100 0.57 4/7 53/93 57/100 1/2 2/4 5/8 9/16 6/10 57/100 57/100
|
||||||
58 100 0.58 4/7 29/50 29/50 1/2 2/4 5/8 9/16 6/10 58/100 29/50
|
58 100 0.58 4/7 29/50 29/50 1/2 2/4 5/8 9/16 6/10 58/100 29/50
|
||||||
59 100 0.59 3/5 23/39 59/100 1/2 2/4 5/8 9/16 6/10 59/100 59/100
|
59 100 0.59 3/5 23/39 59/100 1/2 2/4 5/8 9/16 6/10 59/100 59/100
|
||||||
60 100 0.6 3/5 3/5 3/5 1/2 2/4 5/8 10/16 6/10 60/100 3/5
|
60 100 0.6 3/5 3/5 3/5 1/2 2/4 5/8 10/16 6/10 60/100 3/5
|
||||||
61 100 0.61 3/5 36/59 61/100 1/2 2/4 5/8 10/16 6/10 61/100 61/100
|
61 100 0.61 3/5 36/59 61/100 1/2 2/4 5/8 10/16 6/10 61/100 61/100
|
||||||
62 100 0.62 5/8 31/50 31/50 1/2 2/4 5/8 10/16 6/10 62/100 31/50
|
62 100 0.62 5/8 31/50 31/50 1/2 2/4 5/8 10/16 6/10 62/100 31/50
|
||||||
63 100 0.63 5/8 46/73 63/100 1/2 3/4 5/8 10/16 6/10 63/100 63/100
|
63 100 0.63 5/8 46/73 63/100 1/2 3/4 5/8 10/16 6/10 63/100 63/100
|
||||||
64 100 0.64 2/3 16/25 16/25 1/2 3/4 5/8 10/16 6/10 64/100 16/25
|
64 100 0.64 2/3 16/25 16/25 1/2 3/4 5/8 10/16 6/10 64/100 16/25
|
||||||
65 100 0.65 2/3 13/20 13/20 1/2 3/4 5/8 10/16 7/10 65/100 13/20
|
65 100 0.65 2/3 13/20 13/20 1/2 3/4 5/8 10/16 7/10 65/100 13/20
|
||||||
66 100 0.66 2/3 33/50 33/50 1/2 3/4 5/8 11/16 7/10 66/100 33/50
|
66 100 0.66 2/3 33/50 33/50 1/2 3/4 5/8 11/16 7/10 66/100 33/50
|
||||||
67 100 0.67 2/3 65/97 67/100 1/2 3/4 5/8 11/16 7/10 67/100 67/100
|
67 100 0.67 2/3 65/97 67/100 1/2 3/4 5/8 11/16 7/10 67/100 67/100
|
||||||
68 100 0.68 2/3 17/25 17/25 1/2 3/4 5/8 11/16 7/10 68/100 17/25
|
68 100 0.68 2/3 17/25 17/25 1/2 3/4 5/8 11/16 7/10 68/100 17/25
|
||||||
69 100 0.69 2/3 20/29 69/100 1/2 3/4 6/8 11/16 7/10 69/100 69/100
|
69 100 0.69 2/3 20/29 69/100 1/2 3/4 6/8 11/16 7/10 69/100 69/100
|
||||||
70 100 0.7 2/3 7/10 7/10 1/2 3/4 6/8 11/16 7/10 70/100 7/10
|
70 100 0.7 2/3 7/10 7/10 1/2 3/4 6/8 11/16 7/10 70/100 7/10
|
||||||
71 100 0.71 5/7 22/31 71/100 1/2 3/4 6/8 11/16 7/10 71/100 71/100
|
71 100 0.71 5/7 22/31 71/100 1/2 3/4 6/8 11/16 7/10 71/100 71/100
|
||||||
72 100 0.72 5/7 18/25 18/25 1/2 3/4 6/8 12/16 7/10 72/100 18/25
|
72 100 0.72 5/7 18/25 18/25 1/2 3/4 6/8 12/16 7/10 72/100 18/25
|
||||||
73 100 0.73 3/4 46/63 73/100 1/2 3/4 6/8 12/16 7/10 73/100 73/100
|
73 100 0.73 3/4 46/63 73/100 1/2 3/4 6/8 12/16 7/10 73/100 73/100
|
||||||
74 100 0.74 3/4 37/50 37/50 1/2 3/4 6/8 12/16 7/10 74/100 37/50
|
74 100 0.74 3/4 37/50 37/50 1/2 3/4 6/8 12/16 7/10 74/100 37/50
|
||||||
75 100 0.75 3/4 3/4 3/4 1 3/4 6/8 12/16 8/10 75/100 3/4
|
75 100 0.75 3/4 3/4 3/4 1 3/4 6/8 12/16 8/10 75/100 3/4
|
||||||
76 100 0.76 3/4 19/25 19/25 1 3/4 6/8 12/16 8/10 76/100 19/25
|
76 100 0.76 3/4 19/25 19/25 1 3/4 6/8 12/16 8/10 76/100 19/25
|
||||||
77 100 0.77 7/9 67/87 77/100 1 3/4 6/8 12/16 8/10 77/100 77/100
|
77 100 0.77 7/9 67/87 77/100 1 3/4 6/8 12/16 8/10 77/100 77/100
|
||||||
78 100 0.78 7/9 39/50 39/50 1 3/4 6/8 12/16 8/10 78/100 39/50
|
78 100 0.78 7/9 39/50 39/50 1 3/4 6/8 12/16 8/10 78/100 39/50
|
||||||
79 100 0.79 4/5 64/81 79/100 1 3/4 6/8 13/16 8/10 79/100 79/100
|
79 100 0.79 4/5 64/81 79/100 1 3/4 6/8 13/16 8/10 79/100 79/100
|
||||||
80 100 0.8 4/5 4/5 4/5 1 3/4 6/8 13/16 8/10 80/100 4/5
|
80 100 0.8 4/5 4/5 4/5 1 3/4 6/8 13/16 8/10 80/100 4/5
|
||||||
81 100 0.81 4/5 64/79 81/100 1 3/4 6/8 13/16 8/10 81/100 81/100
|
81 100 0.81 4/5 64/79 81/100 1 3/4 6/8 13/16 8/10 81/100 81/100
|
||||||
82 100 0.82 5/6 41/50 41/50 1 3/4 7/8 13/16 8/10 82/100 41/50
|
82 100 0.82 5/6 41/50 41/50 1 3/4 7/8 13/16 8/10 82/100 41/50
|
||||||
83 100 0.83 5/6 39/47 83/100 1 3/4 7/8 13/16 8/10 83/100 83/100
|
83 100 0.83 5/6 39/47 83/100 1 3/4 7/8 13/16 8/10 83/100 83/100
|
||||||
84 100 0.84 5/6 21/25 21/25 1 3/4 7/8 13/16 8/10 84/100 21/25
|
84 100 0.84 5/6 21/25 21/25 1 3/4 7/8 13/16 8/10 84/100 21/25
|
||||||
85 100 0.85 6/7 17/20 17/20 1 3/4 7/8 14/16 9/10 85/100 17/20
|
85 100 0.85 6/7 17/20 17/20 1 3/4 7/8 14/16 9/10 85/100 17/20
|
||||||
86 100 0.86 6/7 43/50 43/50 1 3/4 7/8 14/16 9/10 86/100 43/50
|
86 100 0.86 6/7 43/50 43/50 1 3/4 7/8 14/16 9/10 86/100 43/50
|
||||||
87 100 0.87 7/8 67/77 87/100 1 3/4 7/8 14/16 9/10 87/100 87/100
|
87 100 0.87 7/8 67/77 87/100 1 3/4 7/8 14/16 9/10 87/100 87/100
|
||||||
88 100 0.88 7/8 22/25 22/25 1 1 7/8 14/16 9/10 88/100 22/25
|
88 100 0.88 7/8 22/25 22/25 1 1 7/8 14/16 9/10 88/100 22/25
|
||||||
89 100 0.89 8/9 8/9 89/100 1 1 7/8 14/16 9/10 89/100 89/100
|
89 100 0.89 8/9 8/9 89/100 1 1 7/8 14/16 9/10 89/100 89/100
|
||||||
90 100 0.9 8/9 9/10 9/10 1 1 7/8 14/16 9/10 90/100 9/10
|
90 100 0.9 8/9 9/10 9/10 1 1 7/8 14/16 9/10 90/100 9/10
|
||||||
91 100 0.91 1 81/89 91/100 1 1 7/8 15/16 9/10 91/100 91/100
|
91 100 0.91 1 81/89 91/100 1 1 7/8 15/16 9/10 91/100 91/100
|
||||||
92 100 0.92 1 23/25 23/25 1 1 7/8 15/16 9/10 92/100 23/25
|
92 100 0.92 1 23/25 23/25 1 1 7/8 15/16 9/10 92/100 23/25
|
||||||
93 100 0.93 1 40/43 93/100 1 1 7/8 15/16 9/10 93/100 93/100
|
93 100 0.93 1 40/43 93/100 1 1 7/8 15/16 9/10 93/100 93/100
|
||||||
94 100 0.94 1 47/50 47/50 1 1 1 15/16 9/10 94/100 47/50
|
94 100 0.94 1 47/50 47/50 1 1 1 15/16 9/10 94/100 47/50
|
||||||
95 100 0.95 1 19/20 19/20 1 1 1 15/16 1 95/100 19/20
|
95 100 0.95 1 19/20 19/20 1 1 1 15/16 1 95/100 19/20
|
||||||
96 100 0.96 1 24/25 24/25 1 1 1 15/16 1 96/100 24/25
|
96 100 0.96 1 24/25 24/25 1 1 1 15/16 1 96/100 24/25
|
||||||
97 100 0.97 1 32/33 97/100 1 1 1 1 1 97/100 97/100
|
97 100 0.97 1 32/33 97/100 1 1 1 1 1 97/100 97/100
|
||||||
98 100 0.98 1 49/50 49/50 1 1 1 1 1 98/100 49/50
|
98 100 0.98 1 49/50 49/50 1 1 1 1 1 98/100 49/50
|
||||||
99 100 0.99 1 98/99 99/100 1 1 1 1 1 99/100 99/100
|
99 100 0.99 1 98/99 99/100 1 1 1 1 1 99/100 99/100
|
||||||
100 100 1 1 1 1 1 1 1 1 1 1 1
|
100 100 1 1 1 1 1 1 1 1 1 1 1
|
||||||
101 100 1.01 1 1 1/99 1 1/100 1 1 1 1 1 1 1/100 1 1/100
|
101 100 1.01 1 1 1/99 1 1/100 1 1 1 1 1 1 1/100 1 1/100
|
||||||
102 100 1.02 1 1 1/50 1 1/50 1 1 1 1 1 1 2/100 1 1/50
|
102 100 1.02 1 1 1/50 1 1/50 1 1 1 1 1 1 2/100 1 1/50
|
||||||
103 100 1.03 1 1 1/33 1 3/100 1 1 1 1 1 1 3/100 1 3/100
|
103 100 1.03 1 1 1/33 1 3/100 1 1 1 1 1 1 3/100 1 3/100
|
||||||
104 100 1.04 1 1 1/25 1 1/25 1 1 1 1 1/16 1 1 4/100 1 1/25
|
104 100 1.04 1 1 1/25 1 1/25 1 1 1 1 1/16 1 1 4/100 1 1/25
|
||||||
105 100 1.05 1 1 1/20 1 1/20 1 1 1 1 1/16 1 1/10 1 5/100 1 1/20
|
105 100 1.05 1 1 1/20 1 1/20 1 1 1 1 1/16 1 1/10 1 5/100 1 1/20
|
||||||
106 100 1.06 1 1 3/50 1 3/50 1 1 1 1 1/16 1 1/10 1 6/100 1 3/50
|
106 100 1.06 1 1 3/50 1 3/50 1 1 1 1 1/16 1 1/10 1 6/100 1 3/50
|
||||||
107 100 1.07 1 1 4/57 1 7/100 1 1 1 1/8 1 1/16 1 1/10 1 7/100 1 7/100
|
107 100 1.07 1 1 4/57 1 7/100 1 1 1 1/8 1 1/16 1 1/10 1 7/100 1 7/100
|
||||||
108 100 1.08 1 1 2/25 1 2/25 1 1 1 1/8 1 1/16 1 1/10 1 8/100 1 2/25
|
108 100 1.08 1 1 2/25 1 2/25 1 1 1 1/8 1 1/16 1 1/10 1 8/100 1 2/25
|
||||||
109 100 1.09 1 1 1/11 1 9/100 1 1 1 1/8 1 1/16 1 1/10 1 9/100 1 9/100
|
109 100 1.09 1 1 1/11 1 9/100 1 1 1 1/8 1 1/16 1 1/10 1 9/100 1 9/100
|
||||||
110 100 1.1 1 1/9 1 1/10 1 1/10 1 1 1 1/8 1 2/16 1 1/10 1 10/100 1 1/10
|
110 100 1.1 1 1/9 1 1/10 1 1/10 1 1 1 1/8 1 2/16 1 1/10 1 10/100 1 1/10
|
||||||
111 100 1.11 1 1/9 1 1/9 1 11/100 1 1 1 1/8 1 2/16 1 1/10 1 11/100 1 11/100
|
111 100 1.11 1 1/9 1 1/9 1 11/100 1 1 1 1/8 1 2/16 1 1/10 1 11/100 1 11/100
|
||||||
112 100 1.12 1 1/8 1 3/25 1 3/25 1 1 1 1/8 1 2/16 1 1/10 1 12/100 1 3/25
|
112 100 1.12 1 1/8 1 3/25 1 3/25 1 1 1 1/8 1 2/16 1 1/10 1 12/100 1 3/25
|
||||||
113 100 1.13 1 1/8 1 10/77 1 13/100 1 1 1/4 1 1/8 1 2/16 1 1/10 1 13/100 1 13/100
|
113 100 1.13 1 1/8 1 10/77 1 13/100 1 1 1/4 1 1/8 1 2/16 1 1/10 1 13/100 1 13/100
|
||||||
114 100 1.14 1 1/7 1 7/50 1 7/50 1 1 1/4 1 1/8 1 2/16 1 1/10 1 14/100 1 7/50
|
114 100 1.14 1 1/7 1 7/50 1 7/50 1 1 1/4 1 1/8 1 2/16 1 1/10 1 14/100 1 7/50
|
||||||
115 100 1.15 1 1/7 1 3/20 1 3/20 1 1 1/4 1 1/8 1 2/16 1 1/10 1 15/100 1 3/20
|
115 100 1.15 1 1/7 1 3/20 1 3/20 1 1 1/4 1 1/8 1 2/16 1 1/10 1 15/100 1 3/20
|
||||||
116 100 1.16 1 1/6 1 4/25 1 4/25 1 1 1/4 1 1/8 1 3/16 1 2/10 1 16/100 1 4/25
|
116 100 1.16 1 1/6 1 4/25 1 4/25 1 1 1/4 1 1/8 1 3/16 1 2/10 1 16/100 1 4/25
|
||||||
117 100 1.17 1 1/6 1 9/53 1 17/100 1 1 1/4 1 1/8 1 3/16 1 2/10 1 17/100 1 17/100
|
117 100 1.17 1 1/6 1 9/53 1 17/100 1 1 1/4 1 1/8 1 3/16 1 2/10 1 17/100 1 17/100
|
||||||
118 100 1.18 1 1/6 1 9/50 1 9/50 1 1 1/4 1 1/8 1 3/16 1 2/10 1 18/100 1 9/50
|
118 100 1.18 1 1/6 1 9/50 1 9/50 1 1 1/4 1 1/8 1 3/16 1 2/10 1 18/100 1 9/50
|
||||||
119 100 1.19 1 1/5 1 15/79 1 19/100 1 1 1/4 1 2/8 1 3/16 1 2/10 1 19/100 1 19/100
|
119 100 1.19 1 1/5 1 15/79 1 19/100 1 1 1/4 1 2/8 1 3/16 1 2/10 1 19/100 1 19/100
|
||||||
120 100 1.2 1 1/5 1 1/5 1 1/5 1 1 1/4 1 2/8 1 3/16 1 2/10 1 20/100 1 1/5
|
120 100 1.2 1 1/5 1 1/5 1 1/5 1 1 1/4 1 2/8 1 3/16 1 2/10 1 20/100 1 1/5
|
||||||
121 100 1.21 1 1/5 1 17/81 1 21/100 1 1 1/4 1 2/8 1 3/16 1 2/10 1 21/100 1 21/100
|
121 100 1.21 1 1/5 1 17/81 1 21/100 1 1 1/4 1 2/8 1 3/16 1 2/10 1 21/100 1 21/100
|
||||||
122 100 1.22 1 2/9 1 11/50 1 11/50 1 1 1/4 1 2/8 1 4/16 1 2/10 1 22/100 1 11/50
|
122 100 1.22 1 2/9 1 11/50 1 11/50 1 1 1/4 1 2/8 1 4/16 1 2/10 1 22/100 1 11/50
|
||||||
123 100 1.23 1 2/9 1 20/87 1 23/100 1 1 1/4 1 2/8 1 4/16 1 2/10 1 23/100 1 23/100
|
123 100 1.23 1 2/9 1 20/87 1 23/100 1 1 1/4 1 2/8 1 4/16 1 2/10 1 23/100 1 23/100
|
||||||
124 100 1.24 1 1/4 1 6/25 1 6/25 1 1 1/4 1 2/8 1 4/16 1 2/10 1 24/100 1 6/25
|
124 100 1.24 1 1/4 1 6/25 1 6/25 1 1 1/4 1 2/8 1 4/16 1 2/10 1 24/100 1 6/25
|
||||||
125 100 1.25 1 1/4 1 1/4 1 1/4 1 1/2 1 1/4 1 2/8 1 4/16 1 3/10 1 25/100 1 1/4
|
125 100 1.25 1 1/4 1 1/4 1 1/4 1 1/2 1 1/4 1 2/8 1 4/16 1 3/10 1 25/100 1 1/4
|
||||||
126 100 1.26 1 1/4 1 13/50 1 13/50 1 1/2 1 1/4 1 2/8 1 4/16 1 3/10 1 26/100 1 13/50
|
126 100 1.26 1 1/4 1 13/50 1 13/50 1 1/2 1 1/4 1 2/8 1 4/16 1 3/10 1 26/100 1 13/50
|
||||||
127 100 1.27 1 1/4 1 10/37 1 27/100 1 1/2 1 1/4 1 2/8 1 4/16 1 3/10 1 27/100 1 27/100
|
127 100 1.27 1 1/4 1 10/37 1 27/100 1 1/2 1 1/4 1 2/8 1 4/16 1 3/10 1 27/100 1 27/100
|
||||||
-103 201 -0.512437811 - 1/2 - 41/80 - 103/201 - 1/2 - 2/4 - 4/8 - 8/16 - 5/10 - 51/100 - 103/201
|
-103 201 -0.512437811 - 1/2 - 41/80 - 103/201 - 1/2 - 2/4 - 4/8 - 8/16 - 5/10 - 51/100 - 103/201
|
||||||
-100 201 -0.497512438 - 1/2 - 1/2 - 100/201 - 1/2 - 2/4 - 4/8 - 8/16 - 5/10 - 50/100 - 100/201
|
-100 201 -0.497512438 - 1/2 - 1/2 - 100/201 - 1/2 - 2/4 - 4/8 - 8/16 - 5/10 - 50/100 - 100/201
|
||||||
-97 201 -0.482587065 - 1/2 - 14/29 - 97/201 - 1/2 - 2/4 - 4/8 - 8/16 - 5/10 - 48/100 - 97/201
|
-97 201 -0.482587065 - 1/2 - 14/29 - 97/201 - 1/2 - 2/4 - 4/8 - 8/16 - 5/10 - 48/100 - 97/201
|
||||||
-94 201 -0.467661692 - 1/2 - 29/62 - 94/201 - 1/2 - 2/4 - 4/8 - 7/16 - 5/10 - 47/100 - 94/201
|
-94 201 -0.467661692 - 1/2 - 29/62 - 94/201 - 1/2 - 2/4 - 4/8 - 7/16 - 5/10 - 47/100 - 94/201
|
||||||
-91 201 -0.452736318 - 4/9 - 24/53 - 91/201 - 1/2 - 2/4 - 4/8 - 7/16 - 5/10 - 45/100 - 91/201
|
-91 201 -0.452736318 - 4/9 - 24/53 - 91/201 - 1/2 - 2/4 - 4/8 - 7/16 - 5/10 - 45/100 - 91/201
|
||||||
-88 201 -0.437810945 - 4/9 - 7/16 - 88/201 - 1/2 - 2/4 - 4/8 - 7/16 - 4/10 - 44/100 - 88/201
|
-88 201 -0.437810945 - 4/9 - 7/16 - 88/201 - 1/2 - 2/4 - 4/8 - 7/16 - 4/10 - 44/100 - 88/201
|
||||||
-85 201 -0.422885572 - 3/7 - 11/26 - 85/201 - 1/2 - 2/4 - 3/8 - 7/16 - 4/10 - 42/100 - 85/201
|
-85 201 -0.422885572 - 3/7 - 11/26 - 85/201 - 1/2 - 2/4 - 3/8 - 7/16 - 4/10 - 42/100 - 85/201
|
||||||
-82 201 -0.407960199 - 2/5 - 31/76 - 82/201 - 1/2 - 2/4 - 3/8 - 7/16 - 4/10 - 41/100 - 82/201
|
-82 201 -0.407960199 - 2/5 - 31/76 - 82/201 - 1/2 - 2/4 - 3/8 - 7/16 - 4/10 - 41/100 - 82/201
|
||||||
-79 201 -0.393034826 - 2/5 - 11/28 - 79/201 - 1/2 - 2/4 - 3/8 - 6/16 - 4/10 - 39/100 - 79/201
|
-79 201 -0.393034826 - 2/5 - 11/28 - 79/201 - 1/2 - 2/4 - 3/8 - 6/16 - 4/10 - 39/100 - 79/201
|
||||||
-76 201 -0.378109453 - 3/8 - 31/82 - 76/201 - 1/2 - 2/4 - 3/8 - 6/16 - 4/10 - 38/100 - 76/201
|
-76 201 -0.378109453 - 3/8 - 31/82 - 76/201 - 1/2 - 2/4 - 3/8 - 6/16 - 4/10 - 38/100 - 76/201
|
||||||
-73 201 -0.36318408 - 1/3 - 4/11 - 73/201 - 1/2 - 1/4 - 3/8 - 6/16 - 4/10 - 36/100 - 73/201
|
-73 201 -0.36318408 - 1/3 - 4/11 - 73/201 - 1/2 - 1/4 - 3/8 - 6/16 - 4/10 - 36/100 - 73/201
|
||||||
-70 201 -0.348258706 - 1/3 - 31/89 - 70/201 - 1/2 - 1/4 - 3/8 - 6/16 - 3/10 - 35/100 - 70/201
|
-70 201 -0.348258706 - 1/3 - 31/89 - 70/201 - 1/2 - 1/4 - 3/8 - 6/16 - 3/10 - 35/100 - 70/201
|
||||||
-67 201 -0.333333333 - 1/3 - 1/3 - 1/3 - 1/2 - 1/4 - 3/8 - 5/16 - 3/10 - 33/100 - 1/3
|
-67 201 -0.333333333 - 1/3 - 1/3 - 1/3 - 1/2 - 1/4 - 3/8 - 5/16 - 3/10 - 33/100 - 1/3
|
||||||
-64 201 -0.31840796 - 1/3 - 7/22 - 64/201 - 1/2 - 1/4 - 3/8 - 5/16 - 3/10 - 32/100 - 64/201
|
-64 201 -0.31840796 - 1/3 - 7/22 - 64/201 - 1/2 - 1/4 - 3/8 - 5/16 - 3/10 - 32/100 - 64/201
|
||||||
-61 201 -0.303482587 - 1/3 - 17/56 - 61/201 - 1/2 - 1/4 - 2/8 - 5/16 - 3/10 - 30/100 - 61/201
|
-61 201 -0.303482587 - 1/3 - 17/56 - 61/201 - 1/2 - 1/4 - 2/8 - 5/16 - 3/10 - 30/100 - 61/201
|
||||||
-58 201 -0.288557214 - 2/7 - 15/52 - 58/201 - 1/2 - 1/4 - 2/8 - 5/16 - 3/10 - 29/100 - 58/201
|
-58 201 -0.288557214 - 2/7 - 15/52 - 58/201 - 1/2 - 1/4 - 2/8 - 5/16 - 3/10 - 29/100 - 58/201
|
||||||
-55 201 -0.273631841 - 2/7 - 26/95 - 55/201 - 1/2 - 1/4 - 2/8 - 4/16 - 3/10 - 27/100 - 55/201
|
-55 201 -0.273631841 - 2/7 - 26/95 - 55/201 - 1/2 - 1/4 - 2/8 - 4/16 - 3/10 - 27/100 - 55/201
|
||||||
-52 201 -0.258706468 - 1/4 - 15/58 - 52/201 - 1/2 - 1/4 - 2/8 - 4/16 - 3/10 - 26/100 - 52/201
|
-52 201 -0.258706468 - 1/4 - 15/58 - 52/201 - 1/2 - 1/4 - 2/8 - 4/16 - 3/10 - 26/100 - 52/201
|
||||||
-49 201 -0.243781095 - 1/4 - 10/41 - 49/201 -0 - 1/4 - 2/8 - 4/16 - 2/10 - 24/100 - 49/201
|
-49 201 -0.243781095 - 1/4 - 10/41 - 49/201 -0 - 1/4 - 2/8 - 4/16 - 2/10 - 24/100 - 49/201
|
||||||
-46 201 -0.228855721 - 2/9 - 19/83 - 46/201 -0 - 1/4 - 2/8 - 4/16 - 2/10 - 23/100 - 46/201
|
-46 201 -0.228855721 - 2/9 - 19/83 - 46/201 -0 - 1/4 - 2/8 - 4/16 - 2/10 - 23/100 - 46/201
|
||||||
-43 201 -0.213930348 - 1/5 - 3/14 - 43/201 -0 - 1/4 - 2/8 - 3/16 - 2/10 - 21/100 - 43/201
|
-43 201 -0.213930348 - 1/5 - 3/14 - 43/201 -0 - 1/4 - 2/8 - 3/16 - 2/10 - 21/100 - 43/201
|
||||||
-40 201 -0.199004975 - 1/5 - 1/5 - 40/201 -0 - 1/4 - 2/8 - 3/16 - 2/10 - 20/100 - 40/201
|
-40 201 -0.199004975 - 1/5 - 1/5 - 40/201 -0 - 1/4 - 2/8 - 3/16 - 2/10 - 20/100 - 40/201
|
||||||
-37 201 -0.184079602 - 1/5 - 7/38 - 37/201 -0 - 1/4 - 1/8 - 3/16 - 2/10 - 18/100 - 37/201
|
-37 201 -0.184079602 - 1/5 - 7/38 - 37/201 -0 - 1/4 - 1/8 - 3/16 - 2/10 - 18/100 - 37/201
|
||||||
-34 201 -0.169154229 - 1/6 - 11/65 - 34/201 -0 - 1/4 - 1/8 - 3/16 - 2/10 - 17/100 - 34/201
|
-34 201 -0.169154229 - 1/6 - 11/65 - 34/201 -0 - 1/4 - 1/8 - 3/16 - 2/10 - 17/100 - 34/201
|
||||||
-31 201 -0.154228856 - 1/6 - 2/13 - 31/201 -0 - 1/4 - 1/8 - 2/16 - 2/10 - 15/100 - 31/201
|
-31 201 -0.154228856 - 1/6 - 2/13 - 31/201 -0 - 1/4 - 1/8 - 2/16 - 2/10 - 15/100 - 31/201
|
||||||
-28 201 -0.139303483 - 1/7 - 11/79 - 28/201 -0 - 1/4 - 1/8 - 2/16 - 1/10 - 14/100 - 28/201
|
-28 201 -0.139303483 - 1/7 - 11/79 - 28/201 -0 - 1/4 - 1/8 - 2/16 - 1/10 - 14/100 - 28/201
|
||||||
-25 201 -0.124378109 - 1/8 - 1/8 - 25/201 -0 -0 - 1/8 - 2/16 - 1/10 - 12/100 - 25/201
|
-25 201 -0.124378109 - 1/8 - 1/8 - 25/201 -0 -0 - 1/8 - 2/16 - 1/10 - 12/100 - 25/201
|
||||||
-22 201 -0.109452736 - 1/9 - 7/64 - 22/201 -0 -0 - 1/8 - 2/16 - 1/10 - 11/100 - 22/201
|
-22 201 -0.109452736 - 1/9 - 7/64 - 22/201 -0 -0 - 1/8 - 2/16 - 1/10 - 11/100 - 22/201
|
||||||
-19 201 -0.094527363 -0 - 7/74 - 19/201 -0 -0 - 1/8 - 2/16 - 1/10 - 9/100 - 19/201
|
-19 201 -0.094527363 -0 - 7/74 - 19/201 -0 -0 - 1/8 - 2/16 - 1/10 - 9/100 - 19/201
|
||||||
-16 201 -0.07960199 -0 - 7/88 - 16/201 -0 -0 - 1/8 - 1/16 - 1/10 - 8/100 - 16/201
|
-16 201 -0.07960199 -0 - 7/88 - 16/201 -0 -0 - 1/8 - 1/16 - 1/10 - 8/100 - 16/201
|
||||||
-13 201 -0.064676617 -0 - 2/31 - 13/201 -0 -0 - 1/8 - 1/16 - 1/10 - 6/100 - 13/201
|
-13 201 -0.064676617 -0 - 2/31 - 13/201 -0 -0 - 1/8 - 1/16 - 1/10 - 6/100 - 13/201
|
||||||
-10 201 -0.049751244 -0 - 1/20 - 10/201 -0 -0 -0 - 1/16 -0 - 5/100 - 10/201
|
-10 201 -0.049751244 -0 - 1/20 - 10/201 -0 -0 -0 - 1/16 -0 - 5/100 - 10/201
|
||||||
-7 201 -0.034825871 -0 - 3/86 - 7/201 -0 -0 -0 - 1/16 -0 - 3/100 - 7/201
|
-7 201 -0.034825871 -0 - 3/86 - 7/201 -0 -0 -0 - 1/16 -0 - 3/100 - 7/201
|
||||||
-4 201 -0.019900498 -0 - 1/50 - 4/201 -0 -0 -0 -0 -0 - 2/100 - 4/201
|
-4 201 -0.019900498 -0 - 1/50 - 4/201 -0 -0 -0 -0 -0 - 2/100 - 4/201
|
||||||
-1 201 -0.004975124 -0 -0 - 1/201 -0 -0 -0 -0 -0 -0 - 1/201
|
-1 201 -0.004975124 -0 -0 - 1/201 -0 -0 -0 -0 -0 -0 - 1/201
|
||||||
2 201 0.009950249 0 0 2/201 0 0 0 0 0 1/100 2/201
|
2 201 0.009950249 0 0 2/201 0 0 0 0 0 1/100 2/201
|
||||||
5 201 0.024875622 0 1/40 5/201 0 0 0 0 0 2/100 5/201
|
5 201 0.024875622 0 1/40 5/201 0 0 0 0 0 2/100 5/201
|
||||||
8 201 0.039800995 0 1/25 8/201 0 0 0 1/16 0 4/100 8/201
|
8 201 0.039800995 0 1/25 8/201 0 0 0 1/16 0 4/100 8/201
|
||||||
11 201 0.054726368 0 4/73 11/201 0 0 0 1/16 1/10 5/100 11/201
|
11 201 0.054726368 0 4/73 11/201 0 0 0 1/16 1/10 5/100 11/201
|
||||||
14 201 0.069651741 0 3/43 14/201 0 0 1/8 1/16 1/10 7/100 14/201
|
14 201 0.069651741 0 3/43 14/201 0 0 1/8 1/16 1/10 7/100 14/201
|
||||||
17 201 0.084577114 0 6/71 17/201 0 0 1/8 1/16 1/10 8/100 17/201
|
17 201 0.084577114 0 6/71 17/201 0 0 1/8 1/16 1/10 8/100 17/201
|
||||||
20 201 0.099502488 0 1/10 20/201 0 0 1/8 2/16 1/10 10/100 20/201
|
20 201 0.099502488 0 1/10 20/201 0 0 1/8 2/16 1/10 10/100 20/201
|
||||||
23 201 0.114427861 1/9 4/35 23/201 0 0 1/8 2/16 1/10 11/100 23/201
|
23 201 0.114427861 1/9 4/35 23/201 0 0 1/8 2/16 1/10 11/100 23/201
|
||||||
26 201 0.129353234 1/8 11/85 26/201 0 1/4 1/8 2/16 1/10 13/100 26/201
|
26 201 0.129353234 1/8 11/85 26/201 0 1/4 1/8 2/16 1/10 13/100 26/201
|
||||||
29 201 0.144278607 1/7 14/97 29/201 0 1/4 1/8 2/16 1/10 14/100 29/201
|
29 201 0.144278607 1/7 14/97 29/201 0 1/4 1/8 2/16 1/10 14/100 29/201
|
||||||
32 201 0.15920398 1/6 7/44 32/201 0 1/4 1/8 3/16 2/10 16/100 32/201
|
32 201 0.15920398 1/6 7/44 32/201 0 1/4 1/8 3/16 2/10 16/100 32/201
|
||||||
35 201 0.174129353 1/6 4/23 35/201 0 1/4 1/8 3/16 2/10 17/100 35/201
|
35 201 0.174129353 1/6 4/23 35/201 0 1/4 1/8 3/16 2/10 17/100 35/201
|
||||||
38 201 0.189054726 1/5 7/37 38/201 0 1/4 2/8 3/16 2/10 19/100 38/201
|
38 201 0.189054726 1/5 7/37 38/201 0 1/4 2/8 3/16 2/10 19/100 38/201
|
||||||
41 201 0.2039801 1/5 10/49 41/201 0 1/4 2/8 3/16 2/10 20/100 41/201
|
41 201 0.2039801 1/5 10/49 41/201 0 1/4 2/8 3/16 2/10 20/100 41/201
|
||||||
44 201 0.218905473 2/9 7/32 44/201 0 1/4 2/8 4/16 2/10 22/100 44/201
|
44 201 0.218905473 2/9 7/32 44/201 0 1/4 2/8 4/16 2/10 22/100 44/201
|
||||||
47 201 0.233830846 1/4 18/77 47/201 0 1/4 2/8 4/16 2/10 23/100 47/201
|
47 201 0.233830846 1/4 18/77 47/201 0 1/4 2/8 4/16 2/10 23/100 47/201
|
||||||
50 201 0.248756219 1/4 1/4 50/201 0 1/4 2/8 4/16 2/10 25/100 50/201
|
50 201 0.248756219 1/4 1/4 50/201 0 1/4 2/8 4/16 2/10 25/100 50/201
|
||||||
53 201 0.263681592 1/4 24/91 53/201 1/2 1/4 2/8 4/16 3/10 26/100 53/201
|
53 201 0.263681592 1/4 24/91 53/201 1/2 1/4 2/8 4/16 3/10 26/100 53/201
|
||||||
56 201 0.278606965 2/7 17/61 56/201 1/2 1/4 2/8 4/16 3/10 28/100 56/201
|
56 201 0.278606965 2/7 17/61 56/201 1/2 1/4 2/8 4/16 3/10 28/100 56/201
|
||||||
59 201 0.293532338 2/7 27/92 59/201 1/2 1/4 2/8 5/16 3/10 29/100 59/201
|
59 201 0.293532338 2/7 27/92 59/201 1/2 1/4 2/8 5/16 3/10 29/100 59/201
|
||||||
62 201 0.308457711 1/3 29/94 62/201 1/2 1/4 2/8 5/16 3/10 31/100 62/201
|
62 201 0.308457711 1/3 29/94 62/201 1/2 1/4 2/8 5/16 3/10 31/100 62/201
|
||||||
65 201 0.323383085 1/3 11/34 65/201 1/2 1/4 3/8 5/16 3/10 32/100 65/201
|
65 201 0.323383085 1/3 11/34 65/201 1/2 1/4 3/8 5/16 3/10 32/100 65/201
|
||||||
68 201 0.338308458 1/3 23/68 68/201 1/2 1/4 3/8 5/16 3/10 34/100 68/201
|
68 201 0.338308458 1/3 23/68 68/201 1/2 1/4 3/8 5/16 3/10 34/100 68/201
|
||||||
71 201 0.353233831 1/3 6/17 71/201 1/2 1/4 3/8 6/16 4/10 35/100 71/201
|
71 201 0.353233831 1/3 6/17 71/201 1/2 1/4 3/8 6/16 4/10 35/100 71/201
|
||||||
74 201 0.368159204 3/8 7/19 74/201 1/2 1/4 3/8 6/16 4/10 37/100 74/201
|
74 201 0.368159204 3/8 7/19 74/201 1/2 1/4 3/8 6/16 4/10 37/100 74/201
|
||||||
77 201 0.383084577 3/8 18/47 77/201 1/2 2/4 3/8 6/16 4/10 38/100 77/201
|
77 201 0.383084577 3/8 18/47 77/201 1/2 2/4 3/8 6/16 4/10 38/100 77/201
|
||||||
80 201 0.39800995 2/5 39/98 80/201 1/2 2/4 3/8 6/16 4/10 40/100 80/201
|
80 201 0.39800995 2/5 39/98 80/201 1/2 2/4 3/8 6/16 4/10 40/100 80/201
|
||||||
83 201 0.412935323 2/5 19/46 83/201 1/2 2/4 3/8 7/16 4/10 41/100 83/201
|
83 201 0.412935323 2/5 19/46 83/201 1/2 2/4 3/8 7/16 4/10 41/100 83/201
|
||||||
86 201 0.427860697 3/7 3/7 86/201 1/2 2/4 3/8 7/16 4/10 43/100 86/201
|
86 201 0.427860697 3/7 3/7 86/201 1/2 2/4 3/8 7/16 4/10 43/100 86/201
|
||||||
89 201 0.44278607 4/9 31/70 89/201 1/2 2/4 4/8 7/16 4/10 44/100 89/201
|
89 201 0.44278607 4/9 31/70 89/201 1/2 2/4 4/8 7/16 4/10 44/100 89/201
|
||||||
92 201 0.457711443 1/2 27/59 92/201 1/2 2/4 4/8 7/16 5/10 46/100 92/201
|
92 201 0.457711443 1/2 27/59 92/201 1/2 2/4 4/8 7/16 5/10 46/100 92/201
|
||||||
95 201 0.472636816 1/2 26/55 95/201 1/2 2/4 4/8 8/16 5/10 47/100 95/201
|
95 201 0.472636816 1/2 26/55 95/201 1/2 2/4 4/8 8/16 5/10 47/100 95/201
|
||||||
98 201 0.487562189 1/2 39/80 98/201 1/2 2/4 4/8 8/16 5/10 49/100 98/201
|
98 201 0.487562189 1/2 39/80 98/201 1/2 2/4 4/8 8/16 5/10 49/100 98/201
|
||||||
101 201 0.502487562 1/2 1/2 101/201 1/2 2/4 4/8 8/16 5/10 50/100 101/201
|
101 201 0.502487562 1/2 1/2 101/201 1/2 2/4 4/8 8/16 5/10 50/100 101/201
|
||||||
104 201 0.517412935 1/2 15/29 104/201 1/2 2/4 4/8 8/16 5/10 52/100 104/201
|
104 201 0.517412935 1/2 15/29 104/201 1/2 2/4 4/8 8/16 5/10 52/100 104/201
|
||||||
107 201 0.532338308 1/2 33/62 107/201 1/2 2/4 4/8 9/16 5/10 53/100 107/201
|
107 201 0.532338308 1/2 33/62 107/201 1/2 2/4 4/8 9/16 5/10 53/100 107/201
|
||||||
110 201 0.547263682 5/9 29/53 110/201 1/2 2/4 4/8 9/16 5/10 55/100 110/201
|
110 201 0.547263682 5/9 29/53 110/201 1/2 2/4 4/8 9/16 5/10 55/100 110/201
|
||||||
113 201 0.562189055 5/9 9/16 113/201 1/2 2/4 4/8 9/16 6/10 56/100 113/201
|
113 201 0.562189055 5/9 9/16 113/201 1/2 2/4 4/8 9/16 6/10 56/100 113/201
|
||||||
116 201 0.577114428 4/7 15/26 116/201 1/2 2/4 5/8 9/16 6/10 58/100 116/201
|
116 201 0.577114428 4/7 15/26 116/201 1/2 2/4 5/8 9/16 6/10 58/100 116/201
|
||||||
119 201 0.592039801 3/5 45/76 119/201 1/2 2/4 5/8 9/16 6/10 59/100 119/201
|
119 201 0.592039801 3/5 45/76 119/201 1/2 2/4 5/8 9/16 6/10 59/100 119/201
|
||||||
122 201 0.606965174 3/5 17/28 122/201 1/2 2/4 5/8 10/16 6/10 61/100 122/201
|
122 201 0.606965174 3/5 17/28 122/201 1/2 2/4 5/8 10/16 6/10 61/100 122/201
|
||||||
125 201 0.621890547 5/8 51/82 125/201 1/2 2/4 5/8 10/16 6/10 62/100 125/201
|
125 201 0.621890547 5/8 51/82 125/201 1/2 2/4 5/8 10/16 6/10 62/100 125/201
|
||||||
128 201 0.63681592 2/3 7/11 128/201 1/2 3/4 5/8 10/16 6/10 64/100 128/201
|
128 201 0.63681592 2/3 7/11 128/201 1/2 3/4 5/8 10/16 6/10 64/100 128/201
|
||||||
131 201 0.651741294 2/3 58/89 131/201 1/2 3/4 5/8 10/16 7/10 65/100 131/201
|
131 201 0.651741294 2/3 58/89 131/201 1/2 3/4 5/8 10/16 7/10 65/100 131/201
|
||||||
134 201 0.666666667 2/3 2/3 2/3 1/2 3/4 5/8 11/16 7/10 67/100 2/3
|
134 201 0.666666667 2/3 2/3 2/3 1/2 3/4 5/8 11/16 7/10 67/100 2/3
|
||||||
137 201 0.68159204 2/3 15/22 137/201 1/2 3/4 5/8 11/16 7/10 68/100 137/201
|
137 201 0.68159204 2/3 15/22 137/201 1/2 3/4 5/8 11/16 7/10 68/100 137/201
|
||||||
140 201 0.696517413 2/3 39/56 140/201 1/2 3/4 6/8 11/16 7/10 70/100 140/201
|
140 201 0.696517413 2/3 39/56 140/201 1/2 3/4 6/8 11/16 7/10 70/100 140/201
|
||||||
143 201 0.711442786 5/7 37/52 143/201 1/2 3/4 6/8 11/16 7/10 71/100 143/201
|
143 201 0.711442786 5/7 37/52 143/201 1/2 3/4 6/8 11/16 7/10 71/100 143/201
|
||||||
146 201 0.726368159 5/7 69/95 146/201 1/2 3/4 6/8 12/16 7/10 73/100 146/201
|
146 201 0.726368159 5/7 69/95 146/201 1/2 3/4 6/8 12/16 7/10 73/100 146/201
|
||||||
149 201 0.741293532 3/4 43/58 149/201 1/2 3/4 6/8 12/16 7/10 74/100 149/201
|
149 201 0.741293532 3/4 43/58 149/201 1/2 3/4 6/8 12/16 7/10 74/100 149/201
|
||||||
152 201 0.756218905 3/4 31/41 152/201 1 3/4 6/8 12/16 8/10 76/100 152/201
|
152 201 0.756218905 3/4 31/41 152/201 1 3/4 6/8 12/16 8/10 76/100 152/201
|
||||||
155 201 0.771144279 7/9 64/83 155/201 1 3/4 6/8 12/16 8/10 77/100 155/201
|
155 201 0.771144279 7/9 64/83 155/201 1 3/4 6/8 12/16 8/10 77/100 155/201
|
||||||
158 201 0.786069652 4/5 11/14 158/201 1 3/4 6/8 13/16 8/10 79/100 158/201
|
158 201 0.786069652 4/5 11/14 158/201 1 3/4 6/8 13/16 8/10 79/100 158/201
|
||||||
161 201 0.800995025 4/5 4/5 161/201 1 3/4 6/8 13/16 8/10 80/100 161/201
|
161 201 0.800995025 4/5 4/5 161/201 1 3/4 6/8 13/16 8/10 80/100 161/201
|
||||||
164 201 0.815920398 4/5 31/38 164/201 1 3/4 7/8 13/16 8/10 82/100 164/201
|
164 201 0.815920398 4/5 31/38 164/201 1 3/4 7/8 13/16 8/10 82/100 164/201
|
||||||
167 201 0.830845771 5/6 54/65 167/201 1 3/4 7/8 13/16 8/10 83/100 167/201
|
167 201 0.830845771 5/6 54/65 167/201 1 3/4 7/8 13/16 8/10 83/100 167/201
|
||||||
170 201 0.845771144 5/6 11/13 170/201 1 3/4 7/8 14/16 8/10 85/100 170/201
|
170 201 0.845771144 5/6 11/13 170/201 1 3/4 7/8 14/16 8/10 85/100 170/201
|
||||||
173 201 0.860696517 6/7 68/79 173/201 1 3/4 7/8 14/16 9/10 86/100 173/201
|
173 201 0.860696517 6/7 68/79 173/201 1 3/4 7/8 14/16 9/10 86/100 173/201
|
||||||
176 201 0.875621891 7/8 7/8 176/201 1 1 7/8 14/16 9/10 88/100 176/201
|
176 201 0.875621891 7/8 7/8 176/201 1 1 7/8 14/16 9/10 88/100 176/201
|
||||||
179 201 0.890547264 8/9 57/64 179/201 1 1 7/8 14/16 9/10 89/100 179/201
|
179 201 0.890547264 8/9 57/64 179/201 1 1 7/8 14/16 9/10 89/100 179/201
|
||||||
182 201 0.905472637 1 67/74 182/201 1 1 7/8 14/16 9/10 91/100 182/201
|
182 201 0.905472637 1 67/74 182/201 1 1 7/8 14/16 9/10 91/100 182/201
|
||||||
185 201 0.92039801 1 81/88 185/201 1 1 7/8 15/16 9/10 92/100 185/201
|
185 201 0.92039801 1 81/88 185/201 1 1 7/8 15/16 9/10 92/100 185/201
|
||||||
188 201 0.935323383 1 29/31 188/201 1 1 7/8 15/16 9/10 94/100 188/201
|
188 201 0.935323383 1 29/31 188/201 1 1 7/8 15/16 9/10 94/100 188/201
|
||||||
191 201 0.950248756 1 19/20 191/201 1 1 1 15/16 1 95/100 191/201
|
191 201 0.950248756 1 19/20 191/201 1 1 1 15/16 1 95/100 191/201
|
||||||
194 201 0.965174129 1 83/86 194/201 1 1 1 15/16 1 97/100 194/201
|
194 201 0.965174129 1 83/86 194/201 1 1 1 15/16 1 97/100 194/201
|
||||||
197 201 0.980099502 1 49/50 197/201 1 1 1 1 1 98/100 197/201
|
197 201 0.980099502 1 49/50 197/201 1 1 1 1 1 98/100 197/201
|
||||||
200 201 0.995024876 1 1 200/201 1 1 1 1 1 1 200/201
|
200 201 0.995024876 1 1 200/201 1 1 1 1 1 1 200/201
|
||||||
203 201 1.009950249 1 1 1 2/201 1 1 1 1 1 1 1/100 1 2/201
|
203 201 1.009950249 1 1 1 2/201 1 1 1 1 1 1 1/100 1 2/201
|
||||||
206 201 1.024875622 1 1 1/40 1 5/201 1 1 1 1 1 1 2/100 1 5/201
|
206 201 1.024875622 1 1 1/40 1 5/201 1 1 1 1 1 1 2/100 1 5/201
|
||||||
209 201 1.039800995 1 1 1/25 1 8/201 1 1 1 1 1/16 1 1 4/100 1 8/201
|
209 201 1.039800995 1 1 1/25 1 8/201 1 1 1 1 1/16 1 1 4/100 1 8/201
|
||||||
212 201 1.054726368 1 1 4/73 1 11/201 1 1 1 1 1/16 1 1/10 1 5/100 1 11/201
|
212 201 1.054726368 1 1 4/73 1 11/201 1 1 1 1 1/16 1 1/10 1 5/100 1 11/201
|
||||||
215 201 1.069651741 1 1 3/43 1 14/201 1 1 1 1/8 1 1/16 1 1/10 1 7/100 1 14/201
|
215 201 1.069651741 1 1 3/43 1 14/201 1 1 1 1/8 1 1/16 1 1/10 1 7/100 1 14/201
|
||||||
218 201 1.084577114 1 1 6/71 1 17/201 1 1 1 1/8 1 1/16 1 1/10 1 8/100 1 17/201
|
218 201 1.084577114 1 1 6/71 1 17/201 1 1 1 1/8 1 1/16 1 1/10 1 8/100 1 17/201
|
||||||
221 201 1.099502488 1 1 1/10 1 20/201 1 1 1 1/8 1 2/16 1 1/10 1 10/100 1 20/201
|
221 201 1.099502488 1 1 1/10 1 20/201 1 1 1 1/8 1 2/16 1 1/10 1 10/100 1 20/201
|
||||||
224 201 1.114427861 1 1/9 1 4/35 1 23/201 1 1 1 1/8 1 2/16 1 1/10 1 11/100 1 23/201
|
224 201 1.114427861 1 1/9 1 4/35 1 23/201 1 1 1 1/8 1 2/16 1 1/10 1 11/100 1 23/201
|
||||||
227 201 1.129353234 1 1/8 1 11/85 1 26/201 1 1 1/4 1 1/8 1 2/16 1 1/10 1 13/100 1 26/201
|
227 201 1.129353234 1 1/8 1 11/85 1 26/201 1 1 1/4 1 1/8 1 2/16 1 1/10 1 13/100 1 26/201
|
||||||
230 201 1.144278607 1 1/7 1 14/97 1 29/201 1 1 1/4 1 1/8 1 2/16 1 1/10 1 14/100 1 29/201
|
230 201 1.144278607 1 1/7 1 14/97 1 29/201 1 1 1/4 1 1/8 1 2/16 1 1/10 1 14/100 1 29/201
|
||||||
233 201 1.15920398 1 1/6 1 7/44 1 32/201 1 1 1/4 1 1/8 1 3/16 1 2/10 1 16/100 1 32/201
|
233 201 1.15920398 1 1/6 1 7/44 1 32/201 1 1 1/4 1 1/8 1 3/16 1 2/10 1 16/100 1 32/201
|
||||||
236 201 1.174129353 1 1/6 1 4/23 1 35/201 1 1 1/4 1 1/8 1 3/16 1 2/10 1 17/100 1 35/201
|
236 201 1.174129353 1 1/6 1 4/23 1 35/201 1 1 1/4 1 1/8 1 3/16 1 2/10 1 17/100 1 35/201
|
||||||
239 201 1.189054726 1 1/5 1 7/37 1 38/201 1 1 1/4 1 2/8 1 3/16 1 2/10 1 19/100 1 38/201
|
239 201 1.189054726 1 1/5 1 7/37 1 38/201 1 1 1/4 1 2/8 1 3/16 1 2/10 1 19/100 1 38/201
|
||||||
242 201 1.2039801 1 1/5 1 10/49 1 41/201 1 1 1/4 1 2/8 1 3/16 1 2/10 1 20/100 1 41/201
|
242 201 1.2039801 1 1/5 1 10/49 1 41/201 1 1 1/4 1 2/8 1 3/16 1 2/10 1 20/100 1 41/201
|
||||||
245 201 1.218905473 1 2/9 1 7/32 1 44/201 1 1 1/4 1 2/8 1 4/16 1 2/10 1 22/100 1 44/201
|
245 201 1.218905473 1 2/9 1 7/32 1 44/201 1 1 1/4 1 2/8 1 4/16 1 2/10 1 22/100 1 44/201
|
||||||
248 201 1.233830846 1 1/4 1 18/77 1 47/201 1 1 1/4 1 2/8 1 4/16 1 2/10 1 23/100 1 47/201
|
248 201 1.233830846 1 1/4 1 18/77 1 47/201 1 1 1/4 1 2/8 1 4/16 1 2/10 1 23/100 1 47/201
|
||||||
251 201 1.248756219 1 1/4 1 1/4 1 50/201 1 1 1/4 1 2/8 1 4/16 1 2/10 1 25/100 1 50/201
|
251 201 1.248756219 1 1/4 1 1/4 1 50/201 1 1 1/4 1 2/8 1 4/16 1 2/10 1 25/100 1 50/201
|
||||||
254 201 1.263681592 1 1/4 1 24/91 1 53/201 1 1/2 1 1/4 1 2/8 1 4/16 1 3/10 1 26/100 1 53/201
|
254 201 1.263681592 1 1/4 1 24/91 1 53/201 1 1/2 1 1/4 1 2/8 1 4/16 1 3/10 1 26/100 1 53/201
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -1,142 +1,142 @@
|
|||||||
<?xml version="1.0"?>
|
<?xml version="1.0"?>
|
||||||
<?mso-application progid="Excel.Sheet"?>
|
<?mso-application progid="Excel.Sheet"?>
|
||||||
<Workbook xmlns="urn:schemas-microsoft-com:office:spreadsheet"
|
<Workbook xmlns="urn:schemas-microsoft-com:office:spreadsheet"
|
||||||
xmlns:o="urn:schemas-microsoft-com:office:office"
|
xmlns:o="urn:schemas-microsoft-com:office:office"
|
||||||
xmlns:x="urn:schemas-microsoft-com:office:excel"
|
xmlns:x="urn:schemas-microsoft-com:office:excel"
|
||||||
xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet"
|
xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet"
|
||||||
xmlns:html="http://www.w3.org/TR/REC-html40">
|
xmlns:html="http://www.w3.org/TR/REC-html40">
|
||||||
<DocumentProperties xmlns="urn:schemas-microsoft-com:office:office">
|
<DocumentProperties xmlns="urn:schemas-microsoft-com:office:office">
|
||||||
<Title>Sample Spreadsheet</Title>
|
<Title>Sample Spreadsheet</Title>
|
||||||
<Subject>Spreadsheet for testing</Subject>
|
<Subject>Spreadsheet for testing</Subject>
|
||||||
<Author>Nick Burch</Author>
|
<Author>Nick Burch</Author>
|
||||||
<Keywords>Testing Sample Formulas</Keywords>
|
<Keywords>Testing Sample Formulas</Keywords>
|
||||||
<Description>This is a sample spreadsheet, for use when testing things</Description>
|
<Description>This is a sample spreadsheet, for use when testing things</Description>
|
||||||
<LastAuthor>Nick Burch</LastAuthor>
|
<LastAuthor>Nick Burch</LastAuthor>
|
||||||
<Created>2008-01-04T11:51:36Z</Created>
|
<Created>2008-01-04T11:51:36Z</Created>
|
||||||
<LastSaved>2008-01-04T11:56:04Z</LastSaved>
|
<LastSaved>2008-01-04T11:56:04Z</LastSaved>
|
||||||
<Version>14.00</Version>
|
<Version>14.00</Version>
|
||||||
</DocumentProperties>
|
</DocumentProperties>
|
||||||
<OfficeDocumentSettings xmlns="urn:schemas-microsoft-com:office:office">
|
<OfficeDocumentSettings xmlns="urn:schemas-microsoft-com:office:office">
|
||||||
<AllowPNG/>
|
<AllowPNG/>
|
||||||
</OfficeDocumentSettings>
|
</OfficeDocumentSettings>
|
||||||
<ExcelWorkbook xmlns="urn:schemas-microsoft-com:office:excel">
|
<ExcelWorkbook xmlns="urn:schemas-microsoft-com:office:excel">
|
||||||
<WindowHeight>5580</WindowHeight>
|
<WindowHeight>5580</WindowHeight>
|
||||||
<WindowWidth>11295</WindowWidth>
|
<WindowWidth>11295</WindowWidth>
|
||||||
<WindowTopX>360</WindowTopX>
|
<WindowTopX>360</WindowTopX>
|
||||||
<WindowTopY>60</WindowTopY>
|
<WindowTopY>60</WindowTopY>
|
||||||
<ActiveSheet>1</ActiveSheet>
|
<ActiveSheet>1</ActiveSheet>
|
||||||
<ProtectStructure>False</ProtectStructure>
|
<ProtectStructure>False</ProtectStructure>
|
||||||
<ProtectWindows>False</ProtectWindows>
|
<ProtectWindows>False</ProtectWindows>
|
||||||
</ExcelWorkbook>
|
</ExcelWorkbook>
|
||||||
<Styles>
|
<Styles>
|
||||||
<Style ss:ID="Default" ss:Name="Normal">
|
<Style ss:ID="Default" ss:Name="Normal">
|
||||||
<Alignment ss:Vertical="Bottom"/>
|
<Alignment ss:Vertical="Bottom"/>
|
||||||
<Borders/>
|
<Borders/>
|
||||||
<Font ss:FontName="Calibri" x:Family="Swiss" ss:Size="11" ss:Color="#000000"/>
|
<Font ss:FontName="Calibri" x:Family="Swiss" ss:Size="11" ss:Color="#000000"/>
|
||||||
<Interior/>
|
<Interior/>
|
||||||
<NumberFormat/>
|
<NumberFormat/>
|
||||||
<Protection/>
|
<Protection/>
|
||||||
</Style>
|
</Style>
|
||||||
<Style ss:ID="s62">
|
<Style ss:ID="s62">
|
||||||
<Font ss:FontName="Calibri" x:Family="Swiss" ss:Size="11" ss:Color="#FF0000"/>
|
<Font ss:FontName="Calibri" x:Family="Swiss" ss:Size="11" ss:Color="#FF0000"/>
|
||||||
</Style>
|
</Style>
|
||||||
<Style ss:ID="s63">
|
<Style ss:ID="s63">
|
||||||
<Font ss:FontName="Calibri" x:Family="Swiss" ss:Size="11" ss:Color="#1F497D"
|
<Font ss:FontName="Calibri" x:Family="Swiss" ss:Size="11" ss:Color="#1F497D"
|
||||||
ss:Bold="1"/>
|
ss:Bold="1"/>
|
||||||
<Interior ss:Color="#FFFF00" ss:Pattern="Solid"/>
|
<Interior ss:Color="#FFFF00" ss:Pattern="Solid"/>
|
||||||
</Style>
|
</Style>
|
||||||
</Styles>
|
</Styles>
|
||||||
<Worksheet ss:Name="First Sheet">
|
<Worksheet ss:Name="First Sheet">
|
||||||
<Table ss:ExpandedColumnCount="2" ss:ExpandedRowCount="4" x:FullColumns="1"
|
<Table ss:ExpandedColumnCount="2" ss:ExpandedRowCount="4" x:FullColumns="1"
|
||||||
x:FullRows="1" ss:DefaultRowHeight="15">
|
x:FullRows="1" ss:DefaultRowHeight="15">
|
||||||
<Row>
|
<Row>
|
||||||
<Cell><Data ss:Type="String">Test spreadsheet</Data></Cell>
|
<Cell><Data ss:Type="String">Test spreadsheet</Data></Cell>
|
||||||
</Row>
|
</Row>
|
||||||
<Row>
|
<Row>
|
||||||
<Cell><Data ss:Type="String">2nd row</Data></Cell>
|
<Cell><Data ss:Type="String">2nd row</Data></Cell>
|
||||||
<Cell><Data ss:Type="String">2nd row 2nd column</Data></Cell>
|
<Cell><Data ss:Type="String">2nd row 2nd column</Data></Cell>
|
||||||
</Row>
|
</Row>
|
||||||
<Row ss:Index="4">
|
<Row ss:Index="4">
|
||||||
<Cell ss:StyleID="s62"><Data ss:Type="String">This one is red</Data></Cell>
|
<Cell ss:StyleID="s62"><Data ss:Type="String">This one is red</Data></Cell>
|
||||||
</Row>
|
</Row>
|
||||||
</Table>
|
</Table>
|
||||||
<WorksheetOptions xmlns="urn:schemas-microsoft-com:office:excel">
|
<WorksheetOptions xmlns="urn:schemas-microsoft-com:office:excel">
|
||||||
<PageSetup>
|
<PageSetup>
|
||||||
<Header x:Margin="0.3"/>
|
<Header x:Margin="0.3"/>
|
||||||
<Footer x:Margin="0.3"/>
|
<Footer x:Margin="0.3"/>
|
||||||
<PageMargins x:Bottom="0.75" x:Left="0.7" x:Right="0.7" x:Top="0.75"/>
|
<PageMargins x:Bottom="0.75" x:Left="0.7" x:Right="0.7" x:Top="0.75"/>
|
||||||
</PageSetup>
|
</PageSetup>
|
||||||
<Print>
|
<Print>
|
||||||
<ValidPrinterInfo/>
|
<ValidPrinterInfo/>
|
||||||
<PaperSizeIndex>0</PaperSizeIndex>
|
<PaperSizeIndex>0</PaperSizeIndex>
|
||||||
<VerticalResolution>0</VerticalResolution>
|
<VerticalResolution>0</VerticalResolution>
|
||||||
<NumberofCopies>0</NumberofCopies>
|
<NumberofCopies>0</NumberofCopies>
|
||||||
</Print>
|
</Print>
|
||||||
<Panes>
|
<Panes>
|
||||||
<Pane>
|
<Pane>
|
||||||
<Number>3</Number>
|
<Number>3</Number>
|
||||||
<RangeSelection>R1C1:R4C2</RangeSelection>
|
<RangeSelection>R1C1:R4C2</RangeSelection>
|
||||||
</Pane>
|
</Pane>
|
||||||
</Panes>
|
</Panes>
|
||||||
<ProtectObjects>False</ProtectObjects>
|
<ProtectObjects>False</ProtectObjects>
|
||||||
<ProtectScenarios>False</ProtectScenarios>
|
<ProtectScenarios>False</ProtectScenarios>
|
||||||
</WorksheetOptions>
|
</WorksheetOptions>
|
||||||
</Worksheet>
|
</Worksheet>
|
||||||
<Worksheet ss:Name="Sheet Number 2">
|
<Worksheet ss:Name="Sheet Number 2">
|
||||||
<Table ss:ExpandedColumnCount="4" ss:ExpandedRowCount="7" x:FullColumns="1"
|
<Table ss:ExpandedColumnCount="4" ss:ExpandedRowCount="7" x:FullColumns="1"
|
||||||
x:FullRows="1" ss:DefaultRowHeight="15">
|
x:FullRows="1" ss:DefaultRowHeight="15">
|
||||||
<Row>
|
<Row>
|
||||||
<Cell><Data ss:Type="String">Start of 2nd sheet</Data></Cell>
|
<Cell><Data ss:Type="String">Start of 2nd sheet</Data></Cell>
|
||||||
</Row>
|
</Row>
|
||||||
<Row>
|
<Row>
|
||||||
<Cell><Data ss:Type="String">Sheet 2 row 2</Data></Cell>
|
<Cell><Data ss:Type="String">Sheet 2 row 2</Data></Cell>
|
||||||
</Row>
|
</Row>
|
||||||
<Row ss:Index="4">
|
<Row ss:Index="4">
|
||||||
<Cell ss:StyleID="s63"><Data ss:Type="String">I'm in bold blue, on a yellow background</Data></Cell>
|
<Cell ss:StyleID="s63"><Data ss:Type="String">I'm in bold blue, on a yellow background</Data></Cell>
|
||||||
</Row>
|
</Row>
|
||||||
<Row ss:Index="6">
|
<Row ss:Index="6">
|
||||||
<Cell><Data ss:Type="String">cb=1</Data></Cell>
|
<Cell><Data ss:Type="String">cb=1</Data></Cell>
|
||||||
<Cell><Data ss:Type="String">cb=10</Data></Cell>
|
<Cell><Data ss:Type="String">cb=10</Data></Cell>
|
||||||
<Cell><Data ss:Type="String">cb=2</Data></Cell>
|
<Cell><Data ss:Type="String">cb=2</Data></Cell>
|
||||||
<Cell><Data ss:Type="String">cb=sum</Data></Cell>
|
<Cell><Data ss:Type="String">cb=sum</Data></Cell>
|
||||||
</Row>
|
</Row>
|
||||||
<Row>
|
<Row>
|
||||||
<Cell><Data ss:Type="Number">1</Data></Cell>
|
<Cell><Data ss:Type="Number">1</Data></Cell>
|
||||||
<Cell><Data ss:Type="Number">10</Data></Cell>
|
<Cell><Data ss:Type="Number">10</Data></Cell>
|
||||||
<Cell><Data ss:Type="Number">2</Data></Cell>
|
<Cell><Data ss:Type="Number">2</Data></Cell>
|
||||||
<Cell ss:Formula="=SUM(RC[-3]:RC[-1])"><Data ss:Type="Number">13</Data></Cell>
|
<Cell ss:Formula="=SUM(RC[-3]:RC[-1])"><Data ss:Type="Number">13</Data></Cell>
|
||||||
</Row>
|
</Row>
|
||||||
</Table>
|
</Table>
|
||||||
<WorksheetOptions xmlns="urn:schemas-microsoft-com:office:excel">
|
<WorksheetOptions xmlns="urn:schemas-microsoft-com:office:excel">
|
||||||
<PageSetup>
|
<PageSetup>
|
||||||
<Header x:Margin="0.3"/>
|
<Header x:Margin="0.3"/>
|
||||||
<Footer x:Margin="0.3"/>
|
<Footer x:Margin="0.3"/>
|
||||||
<PageMargins x:Bottom="0.75" x:Left="0.7" x:Right="0.7" x:Top="0.75"/>
|
<PageMargins x:Bottom="0.75" x:Left="0.7" x:Right="0.7" x:Top="0.75"/>
|
||||||
</PageSetup>
|
</PageSetup>
|
||||||
<Selected/>
|
<Selected/>
|
||||||
<Panes>
|
<Panes>
|
||||||
<Pane>
|
<Pane>
|
||||||
<Number>3</Number>
|
<Number>3</Number>
|
||||||
<ActiveRow>6</ActiveRow>
|
<ActiveRow>6</ActiveRow>
|
||||||
<ActiveCol>3</ActiveCol>
|
<ActiveCol>3</ActiveCol>
|
||||||
</Pane>
|
</Pane>
|
||||||
</Panes>
|
</Panes>
|
||||||
<ProtectObjects>False</ProtectObjects>
|
<ProtectObjects>False</ProtectObjects>
|
||||||
<ProtectScenarios>False</ProtectScenarios>
|
<ProtectScenarios>False</ProtectScenarios>
|
||||||
</WorksheetOptions>
|
</WorksheetOptions>
|
||||||
</Worksheet>
|
</Worksheet>
|
||||||
<Worksheet ss:Name="Sheet3">
|
<Worksheet ss:Name="Sheet3">
|
||||||
<Table ss:ExpandedColumnCount="1" ss:ExpandedRowCount="1" x:FullColumns="1"
|
<Table ss:ExpandedColumnCount="1" ss:ExpandedRowCount="1" x:FullColumns="1"
|
||||||
x:FullRows="1" ss:DefaultRowHeight="15">
|
x:FullRows="1" ss:DefaultRowHeight="15">
|
||||||
</Table>
|
</Table>
|
||||||
<WorksheetOptions xmlns="urn:schemas-microsoft-com:office:excel">
|
<WorksheetOptions xmlns="urn:schemas-microsoft-com:office:excel">
|
||||||
<PageSetup>
|
<PageSetup>
|
||||||
<Header x:Margin="0.3"/>
|
<Header x:Margin="0.3"/>
|
||||||
<Footer x:Margin="0.3"/>
|
<Footer x:Margin="0.3"/>
|
||||||
<PageMargins x:Bottom="0.75" x:Left="0.7" x:Right="0.7" x:Top="0.75"/>
|
<PageMargins x:Bottom="0.75" x:Left="0.7" x:Right="0.7" x:Top="0.75"/>
|
||||||
</PageSetup>
|
</PageSetup>
|
||||||
<ProtectObjects>False</ProtectObjects>
|
<ProtectObjects>False</ProtectObjects>
|
||||||
<ProtectScenarios>False</ProtectScenarios>
|
<ProtectScenarios>False</ProtectScenarios>
|
||||||
</WorksheetOptions>
|
</WorksheetOptions>
|
||||||
</Worksheet>
|
</Worksheet>
|
||||||
</Workbook>
|
</Workbook>
|
||||||
|
|||||||
@ -1,42 +1,42 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<xml xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:x="urn:schemas-microsoft-com:office:excel">
|
<xml xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:x="urn:schemas-microsoft-com:office:excel">
|
||||||
<o:shapelayout v:ext="edit">
|
<o:shapelayout v:ext="edit">
|
||||||
<o:idmap v:ext="edit" data="1"/>
|
<o:idmap v:ext="edit" data="1"/>
|
||||||
</o:shapelayout>
|
</o:shapelayout>
|
||||||
<v:shapetype id="_x0000_t202" coordsize="21600,21600" o:spt="202" path="m,l,21600r21600,l21600,xe">
|
<v:shapetype id="_x0000_t202" coordsize="21600,21600" o:spt="202" path="m,l,21600r21600,l21600,xe">
|
||||||
<v:stroke joinstyle="miter"/>
|
<v:stroke joinstyle="miter"/>
|
||||||
<v:path gradientshapeok="t" o:connecttype="rect"/>
|
<v:path gradientshapeok="t" o:connecttype="rect"/>
|
||||||
</v:shapetype>
|
</v:shapetype>
|
||||||
<v:shape id="_x0000_s1025" type="#_x0000_t202" style="position:absolute; margin-left:59.25pt;margin-top:1.5pt;width:96pt;height:55.5pt;z-index:1; visibility:hidden" fillcolor="#ffffe1" o:insetmode="auto">
|
<v:shape id="_x0000_s1025" type="#_x0000_t202" style="position:absolute; margin-left:59.25pt;margin-top:1.5pt;width:96pt;height:55.5pt;z-index:1; visibility:hidden" fillcolor="#ffffe1" o:insetmode="auto">
|
||||||
<v:fill color2="#ffffe1"/>
|
<v:fill color2="#ffffe1"/>
|
||||||
<v:shadow on="t" color="black" obscured="t"/>
|
<v:shadow on="t" color="black" obscured="t"/>
|
||||||
<v:path o:connecttype="none"/>
|
<v:path o:connecttype="none"/>
|
||||||
<v:textbox style="mso-direction-alt:auto">
|
<v:textbox style="mso-direction-alt:auto">
|
||||||
<div style="text-align:left"/>
|
<div style="text-align:left"/>
|
||||||
</v:textbox>
|
</v:textbox>
|
||||||
<x:ClientData ObjectType="Note">
|
<x:ClientData ObjectType="Note">
|
||||||
<x:MoveWithCells/>
|
<x:MoveWithCells/>
|
||||||
<x:SizeWithCells/>
|
<x:SizeWithCells/>
|
||||||
<x:Anchor>1, 15, 0, 2, 3, 15, 3, 16</x:Anchor>
|
<x:Anchor>1, 15, 0, 2, 3, 15, 3, 16</x:Anchor>
|
||||||
<x:AutoFill>False</x:AutoFill>
|
<x:AutoFill>False</x:AutoFill>
|
||||||
<x:Row>0</x:Row>
|
<x:Row>0</x:Row>
|
||||||
<x:Column>0</x:Column>
|
<x:Column>0</x:Column>
|
||||||
</x:ClientData>
|
</x:ClientData>
|
||||||
</v:shape>
|
</v:shape>
|
||||||
<v:shape id="_x0000_s1026" type="#_x0000_t202" style="position:absolute; visibility:hidden" fillcolor="#ffffe1" o:insetmode="auto">
|
<v:shape id="_x0000_s1026" type="#_x0000_t202" style="position:absolute; visibility:hidden" fillcolor="#ffffe1" o:insetmode="auto">
|
||||||
<v:fill color2="#ffffe1"/>
|
<v:fill color2="#ffffe1"/>
|
||||||
<v:shadow on="t" color="black" obscured="t"/>
|
<v:shadow on="t" color="black" obscured="t"/>
|
||||||
<v:path o:connecttype="none"/>
|
<v:path o:connecttype="none"/>
|
||||||
<v:textbox style="mso-direction-alt:auto">
|
<v:textbox style="mso-direction-alt:auto">
|
||||||
<div style="text-align:left"/>
|
<div style="text-align:left"/>
|
||||||
</v:textbox>
|
</v:textbox>
|
||||||
<x:ClientData ObjectType="Note">
|
<x:ClientData ObjectType="Note">
|
||||||
<x:MoveWithCells/>
|
<x:MoveWithCells/>
|
||||||
<x:SizeWithCells/>
|
<x:SizeWithCells/>
|
||||||
<x:Anchor>1, 15, 0, 2, 3, 15, 3, 16</x:Anchor>
|
<x:Anchor>1, 15, 0, 2, 3, 15, 3, 16</x:Anchor>
|
||||||
<x:AutoFill>False</x:AutoFill>
|
<x:AutoFill>False</x:AutoFill>
|
||||||
<x:Row>0</x:Row>
|
<x:Row>0</x:Row>
|
||||||
<x:Column>1</x:Column>
|
<x:Column>1</x:Column>
|
||||||
</x:ClientData>
|
</x:ClientData>
|
||||||
</v:shape>
|
</v:shape>
|
||||||
</xml>
|
</xml>
|
||||||
Loading…
x
Reference in New Issue
Block a user