diff --git a/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/classification/model/Page.java b/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/classification/model/Page.java index ec7297eb..333d1539 100644 --- a/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/classification/model/Page.java +++ b/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/classification/model/Page.java @@ -1,16 +1,18 @@ package com.iqser.red.service.redaction.v1.server.classification.model; +import java.util.ArrayList; +import java.util.List; + +import org.apache.pdfbox.pdmodel.common.PDRectangle; + +import com.iqser.red.service.redaction.v1.model.Rectangle; import com.iqser.red.service.redaction.v1.server.redaction.model.PdfImage; import com.iqser.red.service.redaction.v1.server.tableextraction.model.AbstractTextContainer; -import com.iqser.red.service.redaction.v1.server.tableextraction.model.Rectangle; import lombok.Data; import lombok.NonNull; import lombok.RequiredArgsConstructor; -import java.util.ArrayList; -import java.util.List; - @Data @RequiredArgsConstructor public class Page { @@ -32,7 +34,8 @@ public class Page { private StringFrequencyCounter fontCounter = new StringFrequencyCounter(); private StringFrequencyCounter fontStyleCounter = new StringFrequencyCounter(); - private double cropBoxArea; + private float pageWidth; + private float pageHeight; public boolean isRotated() { diff --git a/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/classification/model/TextBlock.java b/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/classification/model/TextBlock.java index d6e14564..436fd7e5 100644 --- a/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/classification/model/TextBlock.java +++ b/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/classification/model/TextBlock.java @@ -1,8 +1,12 @@ package com.iqser.red.service.redaction.v1.server.classification.model; +import java.util.ArrayList; +import java.util.List; + import com.dslplatform.json.CompiledJson; import com.dslplatform.json.JsonAttribute; import com.fasterxml.jackson.annotation.JsonIgnore; +import com.iqser.red.service.redaction.v1.server.parsing.model.TextDirection; import com.iqser.red.service.redaction.v1.server.parsing.model.TextPositionSequence; import com.iqser.red.service.redaction.v1.server.redaction.utils.TextNormalizationUtilities; import com.iqser.red.service.redaction.v1.server.tableextraction.model.AbstractTextContainer; @@ -12,9 +16,6 @@ import lombok.Builder; import lombok.Data; import lombok.NoArgsConstructor; -import java.util.ArrayList; -import java.util.List; - @AllArgsConstructor @Builder @Data @@ -50,6 +51,139 @@ public class TextBlock extends AbstractTextContainer { private String classification; + @JsonIgnore + @JsonAttribute(ignore = true) + public TextDirection getDir() { + + return sequences.get(0).getDir(); + } + + + @JsonIgnore + @JsonAttribute(ignore = true) + private float getPageHeight() { + + return sequences.get(0).getPageHeight(); + } + + + @JsonIgnore + @JsonAttribute(ignore = true) + private float getPageWidth() { + + return sequences.get(0).getPageWidth(); + } + + + /** + * Returns the minX value in pdf coordinate system. + * Note: This needs to use Pdf Coordinate System where {0,0} rotated with the page rotation. + * 0 -> LowerLeft + * 90 -> UpperLeft + * 180 -> UpperRight + * 270 -> LowerRight + * + * @return the minX value in pdf coordinate system + */ + @JsonIgnore + @JsonAttribute(ignore = true) + public float getPdfMinX() { + + if (getDir().getDegrees() == 90) { + return minY; + } else if (getDir().getDegrees() == 180) { + return getPageWidth() - maxX; + + } else if (getDir().getDegrees() == 270) { + + return getPageWidth() - maxY; + } else { + return minX; + } + } + + /** + * Returns the maxX value in pdf coordinate system. + * Note: This needs to use Pdf Coordinate System where {0,0} rotated with the page rotation. + * 0 -> LowerLeft + * 90 -> UpperLeft + * 180 -> UpperRight + * 270 -> LowerRight + * + * @return the maxX value in pdf coordinate system + */ + @JsonIgnore + @JsonAttribute(ignore = true) + public float getPdfMaxX() { + + if (getDir().getDegrees() == 90) { + return maxY; + } else if (getDir().getDegrees() == 180) { + return getPageWidth() - minX; + } else if (getDir().getDegrees() == 270) { + return getPageWidth() - minY; + + } else { + return maxX; + } + } + + + /** + * Returns the minY value in pdf coordinate system. + * Note: This needs to use Pdf Coordinate System where {0,0} rotated with the page rotation. + * 0 -> LowerLeft + * 90 -> UpperLeft + * 180 -> UpperRight + * 270 -> LowerRight + * + * @return the minY value in pdf coordinate system + */ + @JsonIgnore + @JsonAttribute(ignore = true) + public float getPdfMinY() { + + if (getDir().getDegrees() == 90) { + return minX; + } else if (getDir().getDegrees() == 180) { + return maxY; + + } else if (getDir().getDegrees() == 270) { + return getPageHeight() - maxX; + + } else { + return getPageHeight() - maxY; + } + } + + + /** + * Returns the maxY value in pdf coordinate system. + * Note: This needs to use Pdf Coordinate System where {0,0} rotated with the page rotation. + * 0 -> LowerLeft + * 90 -> UpperLeft + * 180 -> UpperRight + * 270 -> LowerRight + * + * @return the maxY value in pdf coordinate system + */ + @JsonIgnore + @JsonAttribute(ignore = true) + public float getPdfMaxY() { + + if (getDir().getDegrees() == 90) { + return maxX; + } else if (getDir().getDegrees() == 180) { + + return minY; + } else if (getDir().getDegrees() == 270) { + return getPageHeight() - minX; + } else { + return getPageHeight() - minY; + } + } + + public TextBlock(float minX, float maxX, float minY, float maxY, List sequences, int rotation) { this.minX = minX; @@ -97,17 +231,17 @@ public class TextBlock extends AbstractTextContainer { public void add(TextPositionSequence r) { - if (r.getX1() < minX) { - minX = r.getX1(); + if (r.getMinXDirAdj() < minX) { + minX = r.getMinXDirAdj(); } - if (r.getX2() > maxX) { - maxX = r.getX2(); + if (r.getMaxXDirAdj() > maxX) { + maxX = r.getMaxXDirAdj(); } - if (r.getY1() < minY) { - minY = r.getY1(); + if (r.getMinYDirAdj() < minY) { + minY = r.getMinYDirAdj(); } - if (r.getY2() > maxY) { - maxY = r.getY2(); + if (r.getMaxYDirAdj() > maxY) { + maxY = r.getMaxYDirAdj(); } } @@ -162,7 +296,7 @@ public class TextBlock extends AbstractTextContainer { TextPositionSequence previous = null; for (TextPositionSequence word : sequences) { if (previous != null) { - if (Math.abs(previous.getRotationAdjustedY() - word.getRotationAdjustedY()) > word.getTextHeight()) { + if (Math.abs(previous.getMaxYDirAdj() - word.getMaxYDirAdj()) > word.getTextHeight()) { sb.append('\n'); } else { sb.append(' '); diff --git a/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/classification/service/BlockificationService.java b/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/classification/service/BlockificationService.java index 1ba8be2f..028be48b 100644 --- a/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/classification/service/BlockificationService.java +++ b/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/classification/service/BlockificationService.java @@ -14,13 +14,10 @@ import com.iqser.red.service.redaction.v1.server.classification.model.Orientatio import com.iqser.red.service.redaction.v1.server.classification.model.Page; import com.iqser.red.service.redaction.v1.server.classification.model.StringFrequencyCounter; import com.iqser.red.service.redaction.v1.server.classification.model.TextBlock; -import com.iqser.red.service.redaction.v1.server.classification.utils.PositionUtils; +import com.iqser.red.service.redaction.v1.server.classification.utils.RulingTextDirAdjustUtil; import com.iqser.red.service.redaction.v1.server.parsing.model.TextPositionSequence; import com.iqser.red.service.redaction.v1.server.tableextraction.model.AbstractTextContainer; -import com.iqser.red.service.redaction.v1.server.tableextraction.model.Cell; -import com.iqser.red.service.redaction.v1.server.tableextraction.model.Rectangle; import com.iqser.red.service.redaction.v1.server.tableextraction.model.Ruling; -import com.iqser.red.service.redaction.v1.server.tableextraction.model.Table; @Service @SuppressWarnings("all") @@ -29,10 +26,17 @@ public class BlockificationService { static final float THRESHOLD = 1f; + /** + * This method is building blocks by expanding the minX/maxX and minY/maxY value on each word that is not split by the conditions. + * This method must use text direction adjusted postions (DirAdj). Where {0,0} is on the upper left. Never try to change this! + * Rulings (Table lines) must be adjusted to the text directions as well, when checking if a block is split by a ruling. + * @param textPositions The words of a page. + * @param horizontalRulingLines Horizontal table lines. + * @param verticalRulingLines Vertical table lines. + * @return Page object that contains the Textblock and text statistics. + */ public Page blockify(List textPositions, List horizontalRulingLines, List verticalRulingLines) { - sortRotatedSequences(textPositions); - List chunkWords = new ArrayList<>(); List chunkBlockList1 = new ArrayList<>(); @@ -43,23 +47,15 @@ public class BlockificationService { Float splitX1 = null; for (TextPositionSequence word : textPositions) { - boolean lineSeparation = minY - word.getY2() > word.getHeight() * 1.25; - boolean startFromTop = word.getY1() > maxY + word.getHeight(); - boolean splitByX = prev != null && maxX + 50 < word.getX1() && prev.getY1() == word.getY1(); - boolean newLineAfterSplit = prev != null && word.getY1() != prev.getY1() && wasSplitted && splitX1 != word.getX1(); - boolean splittedByRuling = isSplittedByRuling(maxX, minY, word.getX1(), word.getY1(), verticalRulingLines) || isSplittedByRuling(minX, - minY, - word.getX1(), - word.getY2(), - horizontalRulingLines) + boolean lineSeparation = word.getMinYDirAdj() - maxY > word.getHeight() * 1.25; + boolean startFromTop = prev != null && word.getMinYDirAdj() < prev.getMinYDirAdj() - prev.getTextHeight(); + boolean splitByX = prev != null && maxX + 50 < word.getMinXDirAdj() && prev.getMinYDirAdj() == word.getMinYDirAdj(); + boolean xIsBeforeFirstX = prev != null && word.getMinXDirAdj() < minX; + boolean newLineAfterSplit = prev != null && word.getMinYDirAdj() != prev.getMinYDirAdj() && wasSplitted && splitX1 != word.getMinXDirAdj(); + boolean isSpitByRuling = isSpitByRuling(minX, minY, maxX, maxY, word, horizontalRulingLines, verticalRulingLines); + boolean splitByDir = prev != null && !prev.getDir().equals(word.getDir()); - || isSplittedByRuling(maxX, minY, word.getX1(), word.getY1(), horizontalRulingLines) || isSplittedByRuling(minX, - minY, - word.getX1(), - word.getY2(), - verticalRulingLines); - - if (prev != null && (lineSeparation || startFromTop || splitByX || newLineAfterSplit || splittedByRuling)) { + if (prev != null && (lineSeparation || startFromTop || splitByX || splitByDir || isSpitByRuling)) { Orientation prevOrientation = null; if (!chunkBlockList1.isEmpty()) { @@ -70,15 +66,15 @@ public class BlockificationService { chunkBlockList1.add(cb1); chunkWords = new ArrayList<>(); - if (splitByX && !splittedByRuling) { + if (splitByX && !isSpitByRuling) { wasSplitted = true; cb1.setOrientation(Orientation.LEFT); - splitX1 = word.getX1(); - } else if (newLineAfterSplit && !splittedByRuling) { + splitX1 = word.getMinXDirAdj(); + } else if (newLineAfterSplit && !isSpitByRuling) { wasSplitted = false; cb1.setOrientation(Orientation.RIGHT); splitX1 = null; - } else if (prevOrientation != null && prevOrientation.equals(Orientation.RIGHT) && (lineSeparation || !startFromTop || !splitByX || !newLineAfterSplit || !splittedByRuling)) { + } else if (prevOrientation != null && prevOrientation.equals(Orientation.RIGHT) && (lineSeparation || !startFromTop || !splitByX || !newLineAfterSplit || !isSpitByRuling)) { cb1.setOrientation(Orientation.LEFT); } @@ -92,17 +88,17 @@ public class BlockificationService { chunkWords.add(word); prev = word; - if (word.getX1() < minX) { - minX = word.getX1(); + if (word.getMinXDirAdj() < minX) { + minX = word.getMinXDirAdj(); } - if (word.getX2() > maxX) { - maxX = word.getX2(); + if (word.getMaxXDirAdj() > maxX) { + maxX = word.getMaxXDirAdj(); } - if (word.getY1() < minY) { - minY = word.getY1(); + if (word.getMinYDirAdj() < minY) { + minY = word.getMinYDirAdj(); } - if (word.getY2() > maxY) { - maxY = word.getY2(); + if (word.getMaxYDirAdj() > maxY) { + maxY = word.getMaxYDirAdj(); } } @@ -186,7 +182,7 @@ public class BlockificationService { styleFrequencyCounter.add(wordBlock.getFontStyle()); if (textBlock == null) { - textBlock = new TextBlock(wordBlock.getX1(), wordBlock.getX2(), wordBlock.getY1(), wordBlock.getY2(), wordBlockList, wordBlock.getRotation()); + textBlock = new TextBlock(wordBlock.getMinXDirAdj(), wordBlock.getMaxXDirAdj(), wordBlock.getMinYDirAdj(), wordBlock.getMaxYDirAdj(), wordBlockList, wordBlock.getRotation()); } else { TextBlock spatialEntity = textBlock.union(wordBlock); textBlock.resize(spatialEntity.getMinX(), spatialEntity.getMinY(), spatialEntity.getWidth(), spatialEntity.getHeight()); @@ -202,17 +198,58 @@ public class BlockificationService { textBlock.setHighestFontSize(fontSizeFrequencyCounter.getHighest()); } - if (textBlock != null && textBlock.getSequences() != null && textBlock.getSequences().stream().map(t -> round(t.getY1(), 3)).collect(toSet()).size() == 1) { - textBlock.getSequences().sort(Comparator.comparing(TextPositionSequence::getX1)); + if (textBlock != null && textBlock.getSequences() != null && textBlock.getSequences().stream().map(t -> round(t.getMinYDirAdj(), 3)).collect(toSet()).size() == 1) { + textBlock.getSequences().sort(Comparator.comparing(TextPositionSequence::getMinXDirAdj)); } return textBlock; } - private boolean isSplittedByRuling(float previousX2, float previousY1, float currentX1, float currentY1, List rulingLines) { + private boolean isSpitByRuling(float minX, + float minY, + float maxX, + float maxY, + TextPositionSequence word, + List horizontalRulingLines, + List verticalRulingLines) { + + return isSplitByRuling(maxX, + minY, + word.getMinXDirAdj(), + word.getMinYDirAdj(), + verticalRulingLines, + word.getDir().getDegrees(), + word.getPageWidth(), + word.getPageHeight()) || isSplitByRuling(minX, + minY, + word.getMinXDirAdj(), + word.getMaxYDirAdj(), + horizontalRulingLines, + word.getDir().getDegrees(), + word.getPageWidth(), + word.getPageHeight()) || isSplitByRuling(maxX, + minY, + word.getMinXDirAdj(), + word.getMinYDirAdj(), + horizontalRulingLines, + word.getDir().getDegrees(), + word.getPageWidth(), + word.getPageHeight()) || isSplitByRuling(minX, + minY, + word.getMinXDirAdj(), + word.getMaxYDirAdj(), + verticalRulingLines, + word.getDir().getDegrees(), + word.getPageWidth(), + word.getPageHeight()); + } + + + private boolean isSplitByRuling(float previousX2, float previousY1, float currentX1, float currentY1, List rulingLines, float dir, float pageWidth, float pageHeight) { for (Ruling ruling : rulingLines) { - if (ruling.intersectsLine(previousX2, previousY1, currentX1, currentY1)) { + var line = RulingTextDirAdjustUtil.convertToDirAdj(ruling, dir, pageWidth, pageHeight); + if (line.intersectsLine(previousX2, previousY1, currentX1, currentY1)) { return true; } } @@ -220,103 +257,6 @@ public class BlockificationService { } - public Rectangle calculateBodyTextFrame(List pages, FloatFrequencyCounter documentFontSizeCounter, boolean landscape) { - - float minX = 10000; - float maxX = -100; - float minY = 10000; - float maxY = -100; - - for (Page page : pages) { - - if (page.getTextBlocks().isEmpty() || landscape != page.isLandscape()) { - continue; - } - - for (AbstractTextContainer container : page.getTextBlocks()) { - - if (container instanceof TextBlock) { - TextBlock textBlock = (TextBlock) container; - if (textBlock.getMostPopularWordFont() == null || textBlock.getMostPopularWordStyle() == null) { - continue; - } - - float approxLineCount = PositionUtils.getApproxLineCount(textBlock); - if (approxLineCount < 2.9f) { - continue; - } - - if (documentFontSizeCounter.getMostPopular() != null) { - if (textBlock.getMostPopularWordFontSize() >= documentFontSizeCounter.getMostPopular()) { - - if (textBlock.getMinX() < minX) { - minX = textBlock.getMinX(); - } - if (textBlock.getMaxX() > maxX) { - maxX = textBlock.getMaxX(); - } - if (textBlock.getMinY() < minY) { - minY = textBlock.getMinY(); - } - if (textBlock.getMaxY() > maxY) { - maxY = textBlock.getMaxY(); - } - - } - } - } - - if (container instanceof Table) { - Table table = (Table) container; - for (List row : table.getRows()) { - for (Cell cell : row) { - - if (cell == null || cell.getTextBlocks() == null) { - continue; - } - for (TextBlock textBlock : cell.getTextBlocks()) { - if (textBlock.getMinX() < minX) { - minX = textBlock.getMinX(); - } - if (textBlock.getMaxX() > maxX) { - maxX = textBlock.getMaxX(); - } - if (textBlock.getMinY() < minY) { - minY = textBlock.getMinY(); - } - if (textBlock.getMaxY() > maxY) { - maxY = textBlock.getMaxY(); - } - } - } - } - } - } - - } - return new Rectangle(minY, minX, maxX - minX, maxY - minY); - } - - - private void sortRotatedSequences(List sequences) { - - List rotatedWords = new ArrayList<>(); - Iterator itty = sequences.iterator(); - while (itty.hasNext()) { - var pos = itty.next(); - if (pos.getTextPositions().get(0).getDir() == 270) { - rotatedWords.add(pos); - itty.remove(); - } - } - - if (!rotatedWords.isEmpty() && !sequences.isEmpty()) { - rotatedWords.sort(Comparator.comparing(TextPositionSequence::getX1)); - } - sequences.addAll(rotatedWords); - } - - private double round(float value, int decimalPoints) { var d = Math.pow(10, decimalPoints); diff --git a/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/classification/service/BodyTextFrameService.java b/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/classification/service/BodyTextFrameService.java new file mode 100644 index 00000000..05b8b825 --- /dev/null +++ b/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/classification/service/BodyTextFrameService.java @@ -0,0 +1,171 @@ +package com.iqser.red.service.redaction.v1.server.classification.service; + +import java.util.List; + +import org.springframework.stereotype.Service; + +import com.iqser.red.service.redaction.v1.model.Point; +import com.iqser.red.service.redaction.v1.model.Rectangle; +import com.iqser.red.service.redaction.v1.server.classification.model.FloatFrequencyCounter; +import com.iqser.red.service.redaction.v1.server.classification.model.Page; +import com.iqser.red.service.redaction.v1.server.classification.model.TextBlock; +import com.iqser.red.service.redaction.v1.server.classification.utils.PositionUtils; +import com.iqser.red.service.redaction.v1.server.tableextraction.model.AbstractTextContainer; +import com.iqser.red.service.redaction.v1.server.tableextraction.model.Cell; +import com.iqser.red.service.redaction.v1.server.tableextraction.model.Table; + +@Service +public class BodyTextFrameService { + + /** + * Adjusts and sets the body text frame to a page. + * Note: This needs to use Pdf Coordinate System where {0,0} rotated with the page rotation. + * 0 -> LowerLeft + * 90 -> UpperLeft + * 180 -> UpperRight + * 270 -> LowerRight + * The aspect ratio of the page is also regarded. + * + * @param page The page + * @param bodyTextFrame frame that contains the main text on portrait pages + * @param landscapeBodyTextFrame frame that contains the main text on landscape pages + */ + public void setBodyTextFrameAdjustedToPage(Page page, Rectangle bodyTextFrame, Rectangle landscapeBodyTextFrame) { + + Rectangle textFrame = page.isLandscape() ? landscapeBodyTextFrame : bodyTextFrame; + + if (page.getPageWidth() > page.getPageHeight() && page.getRotation() == 270) { + textFrame = new Rectangle(new Point(textFrame.getTopLeft().getY(), page.getPageHeight() - textFrame.getTopLeft().getX() - textFrame.getWidth()), + textFrame.getHeight(), + textFrame.getWidth(), + 0); + } else if (page.getPageWidth() > page.getPageHeight() && page.getRotation() != 0) { + textFrame = new Rectangle(new Point(textFrame.getTopLeft().getY(), textFrame.getTopLeft().getX()), textFrame.getHeight(), textFrame.getWidth(), page.getPageNumber()); + } else if (page.getRotation() == 180) { + textFrame = new Rectangle(new Point(textFrame.getTopLeft().getX(), page.getPageHeight() - textFrame.getTopLeft().getY() - textFrame.getHeight()), + textFrame.getWidth(), + textFrame.getHeight(), + 0); + } + page.setBodyTextFrame(textFrame); + } + + + /** + * Calculates the frame that contains the main text, text outside the frame will be e.g. headers or footers. + * Note: This needs to use Pdf Coordinate System where {0,0} rotated with the page rotation. + * 0 -> LowerLeft + * 90 -> UpperLeft + * 180 -> UpperRight + * 270 -> LowerRight + * The aspect ratio of the page is also regarded. + * + * @param pages List of all pages + * @param documentFontSizeCounter Statistics of the document + * @param landscape Calculate for landscape or portrait + * @return Rectangle of the text frame + */ + public Rectangle calculateBodyTextFrame(List pages, FloatFrequencyCounter documentFontSizeCounter, boolean landscape) { + + float minX = 10000; + float maxX = -100; + float minY = 10000; + float maxY = -100; + + for (Page page : pages) { + + if (page.getTextBlocks().isEmpty() || landscape != page.isLandscape()) { + continue; + } + + for (AbstractTextContainer container : page.getTextBlocks()) { + + if (container instanceof TextBlock) { + TextBlock textBlock = (TextBlock) container; + if (textBlock.getMostPopularWordFont() == null || textBlock.getMostPopularWordStyle() == null) { + continue; + } + + float approxLineCount = PositionUtils.getApproxLineCount(textBlock); + if (approxLineCount < 2.9f) { + continue; + } + + if (documentFontSizeCounter.getMostPopular() != null && textBlock.getMostPopularWordFontSize() >= documentFontSizeCounter.getMostPopular()) { + + if (page.getPageWidth() > page.getPageHeight() && page.getRotation() != 0) { + if (textBlock.getPdfMinY() < minX) { + minX = textBlock.getPdfMinY(); + } + if (textBlock.getPdfMaxY() > maxX) { + maxX = textBlock.getPdfMaxY(); + } + if (textBlock.getPdfMinX() < minY) { + minY = textBlock.getPdfMinX(); + } + if (textBlock.getPdfMaxX() > maxY) { + maxY = textBlock.getPdfMaxX(); + } + } else { + if (textBlock.getPdfMinX() < minX) { + minX = textBlock.getPdfMinX(); + } + if (textBlock.getPdfMaxX() > maxX) { + maxX = textBlock.getPdfMaxX(); + } + if (textBlock.getPdfMinY() < minY) { + minY = textBlock.getPdfMinY(); + } + if (textBlock.getPdfMaxY() > maxY) { + maxY = textBlock.getPdfMaxY(); + } + } + } + } + + if (container instanceof Table) { + Table table = (Table) container; + for (List row : table.getRows()) { + for (Cell cell : row) { + + if (cell == null || cell.getTextBlocks() == null) { + continue; + } + for (TextBlock textBlock : cell.getTextBlocks()) { + if (page.getPageWidth() > page.getPageHeight() && page.getRotation() != 0) { + if (textBlock.getPdfMinY() < minX) { + minX = textBlock.getMinY(); + } + if (textBlock.getPdfMaxY() > maxX) { + maxX = textBlock.getPdfMaxY(); + } + if (textBlock.getPdfMinX() < minY) { + minY = textBlock.getPdfMinX(); + } + if (textBlock.getPdfMaxX() > maxY) { + maxY = textBlock.getPdfMaxX(); + } + } else { + if (textBlock.getPdfMinX() < minX) { + minX = textBlock.getPdfMinX(); + } + if (textBlock.getPdfMaxX() > maxX) { + maxX = textBlock.getPdfMaxX(); + } + if (textBlock.getPdfMinY() < minY) { + minY = textBlock.getPdfMinY(); + } + if (textBlock.getPdfMaxY() > maxY) { + maxY = textBlock.getPdfMaxY(); + } + } + } + } + } + } + } + } + return new Rectangle(new Point(minX, minY), maxX - minX, maxY - minY, 0); + } + +} diff --git a/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/classification/service/ClassificationService.java b/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/classification/service/ClassificationService.java index 1ef01707..35381230 100644 --- a/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/classification/service/ClassificationService.java +++ b/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/classification/service/ClassificationService.java @@ -1,76 +1,75 @@ package com.iqser.red.service.redaction.v1.server.classification.service; +import java.util.List; +import java.util.regex.Pattern; + +import org.springframework.stereotype.Service; + +import com.iqser.red.service.redaction.v1.model.Rectangle; import com.iqser.red.service.redaction.v1.server.classification.model.Document; import com.iqser.red.service.redaction.v1.server.classification.model.Page; import com.iqser.red.service.redaction.v1.server.classification.model.TextBlock; import com.iqser.red.service.redaction.v1.server.classification.utils.PositionUtils; import com.iqser.red.service.redaction.v1.server.tableextraction.model.AbstractTextContainer; -import com.iqser.red.service.redaction.v1.server.tableextraction.model.Rectangle; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; -import org.springframework.stereotype.Service; - -import java.util.List; -import java.util.regex.Pattern; - @Slf4j @Service @RequiredArgsConstructor public class ClassificationService { - private final BlockificationService blockificationService; + private final BodyTextFrameService bodyTextFrameService; public void classifyDocument(Document document) { - Rectangle bodyTextFrame = blockificationService.calculateBodyTextFrame(document.getPages(), document.getFontSizeCounter(), false); - Rectangle landscapeBodyTextFrame = blockificationService.calculateBodyTextFrame(document.getPages(), document.getFontSizeCounter(), true); - + Rectangle bodyTextFrame = bodyTextFrameService.calculateBodyTextFrame(document.getPages(), document.getFontSizeCounter(), false); + Rectangle landscapeBodyTextFrame = bodyTextFrameService.calculateBodyTextFrame(document.getPages(), document.getFontSizeCounter(), true); List headlineFontSizes = document.getFontSizeCounter().getHighterThanMostPopular(); log.debug("Document FontSize counters are: {}", document.getFontSizeCounter().getCountPerValue()); for (Page page : document.getPages()) { - Rectangle btf = page.isLandscape() ? landscapeBodyTextFrame : bodyTextFrame; - page.setBodyTextFrame(btf); - classifyPage(btf, page, document, headlineFontSizes); + bodyTextFrameService.setBodyTextFrameAdjustedToPage(page, bodyTextFrame, landscapeBodyTextFrame); + classifyPage(page, document, headlineFontSizes); } } - public void classifyPage(Rectangle bodyTextFrame, Page page, Document document, List headlineFontSizes) { + public void classifyPage(Page page, Document document, List headlineFontSizes) { for (AbstractTextContainer textBlock : page.getTextBlocks()) { if (textBlock instanceof TextBlock) { - classifyBlock((TextBlock) textBlock, bodyTextFrame, page, document, headlineFontSizes); + classifyBlock((TextBlock) textBlock, page, document, headlineFontSizes); } } } - public void classifyBlock(TextBlock textBlock, Rectangle bodyTextFrame, Page page, Document document, List headlineFontSizes) { + public void classifyBlock(TextBlock textBlock, Page page, Document document, List headlineFontSizes) { + + var bodyTextFrame = page.getBodyTextFrame(); if (document.getFontSizeCounter().getMostPopular() == null) { textBlock.setClassification("Other"); return; } - if (PositionUtils.isOverBodyTextFrame(bodyTextFrame, textBlock, page.isRotated()) && (document.getFontSizeCounter() + if (PositionUtils.isOverBodyTextFrame(bodyTextFrame, textBlock, page.getRotation()) && (document.getFontSizeCounter() .getMostPopular() == null || textBlock.getHighestFontSize() <= document.getFontSizeCounter().getMostPopular())) { textBlock.setClassification("Header"); - } else if (PositionUtils.isUnderBodyTextFrame(bodyTextFrame, textBlock) && (document.getFontSizeCounter() + } else if (PositionUtils.isUnderBodyTextFrame(bodyTextFrame, textBlock, page.getRotation()) && (document.getFontSizeCounter() .getMostPopular() == null || textBlock.getHighestFontSize() <= document.getFontSizeCounter().getMostPopular())) { textBlock.setClassification("Footer"); - } else if (page.getPageNumber() == 1 && (!PositionUtils.isTouchingUnderBodyTextFrame(bodyTextFrame, - textBlock) && PositionUtils.getHeightDifferenceBetweenChunkWordAndDocumentWord(textBlock, + } else if (page.getPageNumber() == 1 && (PositionUtils.getHeightDifferenceBetweenChunkWordAndDocumentWord(textBlock, document.getTextHeightCounter().getMostPopular()) > 2.5 && textBlock.getHighestFontSize() > document.getFontSizeCounter().getMostPopular() || page.getTextBlocks() .size() == 1)) { if (!Pattern.matches("[0-9]+", textBlock.toString())) { textBlock.setClassification("Title"); } - } else if (PositionUtils.isWithinBodyTextFrame(bodyTextFrame, textBlock) && textBlock.getMostPopularWordFontSize() > document.getFontSizeCounter() + } else if (textBlock.getMostPopularWordFontSize() > document.getFontSizeCounter() .getMostPopular() && PositionUtils.getApproxLineCount(textBlock) < 4.9 && (textBlock.getMostPopularWordStyle().equals("bold") || !document.getFontStyleCounter() .getCountPerValue() .containsKey("bold") && textBlock.getMostPopularWordFontSize() > document.getFontSizeCounter().getMostPopular() + 1) && textBlock.getSequences() diff --git a/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/classification/utils/PositionUtils.java b/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/classification/utils/PositionUtils.java index ce8ee104..37316f2a 100644 --- a/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/classification/utils/PositionUtils.java +++ b/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/classification/utils/PositionUtils.java @@ -1,7 +1,7 @@ package com.iqser.red.service.redaction.v1.server.classification.utils; +import com.iqser.red.service.redaction.v1.model.Rectangle; import com.iqser.red.service.redaction.v1.server.classification.model.TextBlock; -import com.iqser.red.service.redaction.v1.server.tableextraction.model.Rectangle; import lombok.experimental.UtilityClass; @@ -9,17 +9,19 @@ import lombok.experimental.UtilityClass; @SuppressWarnings("all") public class PositionUtils { + // TODO This currently uses pdf coord system. In the futher this should use java coord system. + // Note: DirAdj (TextDirection Adjusted) can not be user for this. public boolean isWithinBodyTextFrame(Rectangle btf, TextBlock textBlock) { - //TODO Currently this is not working for rotated pages. - if (btf == null || textBlock == null) { return false; } double threshold = textBlock.getMostPopularWordHeight() * 3; - if (textBlock.getMinX() + threshold > btf.getX() && textBlock.getMaxX() - threshold < btf.getX() + btf.getWidth() && textBlock.getMinY() + threshold > btf.getY() && textBlock.getMaxY() - threshold < btf.getY() + btf.getHeight()) { + if (textBlock.getPdfMinX() + threshold > btf.getTopLeft().getX() && textBlock.getPdfMaxX() - threshold < btf.getTopLeft() + .getX() + btf.getWidth() && textBlock.getPdfMinY() + threshold > btf.getTopLeft().getY() && textBlock.getPdfMaxY() - threshold < btf.getTopLeft() + .getY() + btf.getHeight()) { return true; } else { return false; @@ -28,16 +30,27 @@ public class PositionUtils { } - public boolean isOverBodyTextFrame(Rectangle btf, TextBlock textBlock, boolean rotated) { + // TODO This currently uses pdf coord system. In the futher this should use java coord system. + // Note: DirAdj (TextDirection Adjusted) can not be user for this. + public boolean isOverBodyTextFrame(Rectangle btf, TextBlock textBlock, int rotation) { if (btf == null || textBlock == null) { return false; } - if (rotated && textBlock.getMinX() < btf.getX()) { - // Its very strange, P{0,0} is on top left in this case, instead of lower left. + if (rotation == 90 && textBlock.getPdfMaxX() < btf.getTopLeft().getX()) { return true; - } else if (!rotated && textBlock.getMinY() > btf.getY() + btf.getHeight()) { + } + + if (rotation == 180 && textBlock.getPdfMaxY() < btf.getTopLeft().getY()) { + return true; + } + + if (rotation == 270 && textBlock.getPdfMinX() > btf.getTopLeft().getX() + btf.getWidth()) { + return true; + } + + if (rotation == 0 && textBlock.getPdfMinY() > btf.getTopLeft().getY() + btf.getHeight()) { return true; } else { return false; @@ -45,16 +58,27 @@ public class PositionUtils { } - - public boolean isUnderBodyTextFrame(Rectangle btf, TextBlock textBlock) { - - //TODO Currently this is not working for rotated pages. + // TODO This currently uses pdf coord system. In the futher this should use java coord system. + // Note: DirAdj (TextDirection Adjusted) can not be user for this. + public boolean isUnderBodyTextFrame(Rectangle btf, TextBlock textBlock, int rotation) { if (btf == null || textBlock == null) { return false; } - if (textBlock.getMaxY() < btf.getY()) { + if (rotation == 90 && textBlock.getPdfMinX() > btf.getTopLeft().getX() + btf.getWidth()) { + return true; + } + + if (rotation == 180 && textBlock.getPdfMinY() > btf.getTopLeft().getY() + btf.getHeight()) { + return true; + } + + if (rotation == 270 && textBlock.getPdfMaxX() < btf.getTopLeft().getX()) { + return true; + } + + if (rotation == 0 && textBlock.getPdfMaxY() < btf.getTopLeft().getY()) { return true; } else { return false; @@ -62,7 +86,8 @@ public class PositionUtils { } - + // TODO This currently uses pdf coord system. In the futher this should use java coord system. + // Note: DirAdj (TextDirection Adjusted) can not be user for this. public boolean isTouchingUnderBodyTextFrame(Rectangle btf, TextBlock textBlock) { //TODO Currently this is not working for rotated pages. @@ -71,7 +96,7 @@ public class PositionUtils { return false; } - if (textBlock.getMinY() < btf.getY()) { + if (textBlock.getMinY() < btf.getTopLeft().getY()) { return true; } else { return false; diff --git a/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/classification/utils/RulingTextDirAdjustUtil.java b/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/classification/utils/RulingTextDirAdjustUtil.java new file mode 100644 index 00000000..3fe5a7f6 --- /dev/null +++ b/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/classification/utils/RulingTextDirAdjustUtil.java @@ -0,0 +1,67 @@ +package com.iqser.red.service.redaction.v1.server.classification.utils; + +import java.awt.geom.Line2D; +import java.awt.geom.Point2D; + +import com.iqser.red.service.redaction.v1.server.tableextraction.model.Ruling; + +import lombok.experimental.UtilityClass; + +@UtilityClass +public class RulingTextDirAdjustUtil { + + /** + * Converts a ruling (line of a table) the same way TextPositions are converted in PDFBox. + * This will get the y position of the text, adjusted so that 0,0 is upper left and it is adjusted based on the text direction. + * + * See org.apache.pdfbox.text.TextPosition + */ + public Line2D.Float convertToDirAdj(Ruling ruling, float dir, float pageWidth, float pageHeight) { + + return new Line2D.Float(convertPoint(ruling.x1, ruling.y1, dir, pageWidth, pageHeight), convertPoint(ruling.x2, ruling.y2, dir, pageWidth, pageHeight)); + } + + + private Point2D convertPoint(float x, float y, float dir, float pageWidth, float pageHeight) { + + var xAdj = getXRot(x, y, dir, pageWidth, pageHeight); + var yAdj = 0f; + if (dir == 0 || dir == 180) { + yAdj = pageHeight - getYLowerLeftRot(x, y, dir, pageWidth, pageHeight); + } else { + yAdj = pageWidth - getYLowerLeftRot(x, y, dir, pageWidth, pageHeight); + } + return new Point2D.Float(xAdj, yAdj); + } + + + private float getXRot(float x, float y, float dir, float pageWidth, float pageHeight) { + + if (dir == 0) { + return x; + } else if (dir == 90) { + return y; + } else if (dir == 180) { + return pageWidth - x; + } else if (dir == 270) { + return pageHeight - y; + } + return 0; + } + + + private float getYLowerLeftRot(float x, float y, float dir, float pageWidth, float pageHeight) { + + if (dir == 0) { + return y; + } else if (dir == 90) { + return pageWidth - x; + } else if (dir == 180) { + return pageHeight - y; + } else if (dir == 270) { + return x; + } + return 0; + } + +} diff --git a/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/parsing/model/TextPositionSequence.java b/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/parsing/model/TextPositionSequence.java index 0bfc219f..0ea72b66 100644 --- a/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/parsing/model/TextPositionSequence.java +++ b/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/parsing/model/TextPositionSequence.java @@ -47,16 +47,6 @@ public class TextPositionSequence implements CharSequence { } - public TextPositionSequence fromData(List textPositions, int page) { - - var textPositionSequence = new TextPositionSequence(); - textPositionSequence.textPositions = textPositions; - textPositionSequence.page = page; - - return textPositionSequence; - } - - public TextPositionSequence(List textPositions, int page) { this.textPositions = textPositions.stream().map(RedTextPosition::fromTextPosition).collect(Collectors.toList()); @@ -147,59 +137,63 @@ public class TextPositionSequence implements CharSequence { } + /** + * This value is adjusted so that 0,0 is upper left and it is adjusted based on the text direction. + * This method ignores the page rotation but takes the text rotation and adjusts the coordinates to awt. + * + * @return the text direction adjusted minX value + */ @JsonIgnore @JsonAttribute(ignore = true) - public float getX1() { + public float getMinXDirAdj() { + + return textPositions.get(0).getXDirAdj(); - if (rotation == 90) { - return textPositions.get(0).getYDirAdj() - getTextHeight(); - } else { - return textPositions.get(0).getXDirAdj(); - } } + /** + * This value is adjusted so that 0,0 is upper left and it is adjusted based on the text direction. + * This method ignores the page rotation but takes the text rotation and adjusts the coordinates to awt. + * + * @return the text direction adjusted maxX value + */ @JsonIgnore @JsonAttribute(ignore = true) - public float getX2() { + public float getMaxXDirAdj() { + + return textPositions.get(textPositions.size() - 1).getXDirAdj() + textPositions.get(textPositions.size() - 1).getWidthDirAdj() + HEIGHT_PADDING; - if (rotation == 90) { - return textPositions.get(0).getYDirAdj(); - } else { - return textPositions.get(textPositions.size() - 1).getXDirAdj() + textPositions.get(textPositions.size() - 1).getWidthDirAdj() + HEIGHT_PADDING; - } } + /** + * This value is adjusted so that 0,0 is upper left and it is adjusted based on the text direction. + * This method ignores the page rotation but takes the text rotation and adjusts the coordinates to awt. + * + * @return the text direction adjusted minY value. The upper border of the bounding box of the word. + */ @JsonIgnore @JsonAttribute(ignore = true) - public float getRotationAdjustedY() { + public float getMinYDirAdj() { + + return textPositions.get(0).getYDirAdj() - getTextHeight(); + + } + + + /** + * This value is adjusted so that 0,0 is upper left and it is adjusted based on the text direction. + * This method ignores the page rotation but takes the text rotation and adjusts the coordinates to awt. + * + * @return the text direction adjusted maxY value. The lower border of the bounding box of the word. + */ + @JsonIgnore + @JsonAttribute(ignore = true) + public float getMaxYDirAdj() { return textPositions.get(0).getYDirAdj(); - } - - @JsonIgnore - @JsonAttribute(ignore = true) - public float getY1() { - - if (rotation == 90) { - return textPositions.get(0).getXDirAdj(); - } else { - return pageHeight - textPositions.get(0).getYDirAdj(); - } - } - - - @JsonIgnore - @JsonAttribute(ignore = true) - public float getY2() { - - if (rotation == 90) { - return textPositions.get(textPositions.size() - 1).getXDirAdj() + getTextHeight() - HEIGHT_PADDING; - } else { - return pageHeight - textPositions.get(0).getYDirAdj() + getTextHeight(); - } } @@ -215,7 +209,7 @@ public class TextPositionSequence implements CharSequence { @JsonAttribute(ignore = true) public float getHeight() { - return getY2() - getY1(); + return getMaxYDirAdj() - getMinYDirAdj(); } @@ -223,7 +217,7 @@ public class TextPositionSequence implements CharSequence { @JsonAttribute(ignore = true) public float getWidth() { - return getX2() - getX1(); + return getMaxXDirAdj() - getMinXDirAdj(); } @@ -270,6 +264,15 @@ public class TextPositionSequence implements CharSequence { } + /** + * This returns the bounding box of the word in Pdf Coordinate System where {0,0} rotated with the page rotation. + * 0 -> LowerLeft + * 90 -> UpperLeft + * 180 -> UpperRight + * 270 -> LowerRight + * + * @return bounding box of the word in Pdf Coordinate System + */ @JsonIgnore @JsonAttribute(ignore = true) @SneakyThrows diff --git a/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/redaction/model/CellValue.java b/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/redaction/model/CellValue.java index bdc6cbe9..e98f5f52 100644 --- a/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/redaction/model/CellValue.java +++ b/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/redaction/model/CellValue.java @@ -33,7 +33,7 @@ public class CellValue { TextPositionSequence previous = null; for (TextPositionSequence word : textBlock.getSequences()) { if (previous != null) { - if (Math.abs(previous.getRotationAdjustedY() - word.getRotationAdjustedY()) > word.getTextHeight()) { + if (Math.abs(previous.getMaxYDirAdj() - word.getMaxYDirAdj()) > word.getTextHeight()) { sb.append('\n'); } else { sb.append(' '); diff --git a/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/redaction/model/SearchableText.java b/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/redaction/model/SearchableText.java index e031854d..8ed10a20 100644 --- a/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/redaction/model/SearchableText.java +++ b/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/redaction/model/SearchableText.java @@ -194,7 +194,7 @@ public class SearchableText { for (TextPositionSequence word : sequences) { if (previous != null) { - if (Math.abs(previous.getRotationAdjustedY() - word.getRotationAdjustedY()) > word.getTextHeight()) { + if (Math.abs(previous.getMaxYDirAdj() - word.getMaxYDirAdj()) > word.getTextHeight()) { sb.append('\n'); } else { sb.append(' '); @@ -228,7 +228,7 @@ public class SearchableText { for (TextPositionSequence word : sorted) { if (previous != null) { - if (Math.abs(previous.getRotationAdjustedY() - word.getRotationAdjustedY()) > word.getTextHeight()) { + if (Math.abs(previous.getMaxYDirAdj() - word.getMaxYDirAdj()) > word.getTextHeight()) { sb.append('\n'); } else { sb.append(' '); @@ -249,7 +249,7 @@ public class SearchableText { for (TextPositionSequence word : sequences) { if (previous != null) { - if (Math.abs(previous.getRotationAdjustedY() - word.getRotationAdjustedY()) > word.getTextHeight()) { + if (Math.abs(previous.getMaxYDirAdj() - word.getMaxYDirAdj()) > word.getTextHeight()) { sb.append('\n'); } else { sb.append(' '); diff --git a/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/redaction/service/SectionGridCreatorService.java b/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/redaction/service/SectionGridCreatorService.java index 5cd5adc2..233e6d7d 100644 --- a/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/redaction/service/SectionGridCreatorService.java +++ b/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/redaction/service/SectionGridCreatorService.java @@ -43,12 +43,13 @@ public class SectionGridCreatorService { if (textBlock instanceof TextBlock) { + TextBlock tb = (TextBlock) textBlock; classifiedDoc.getSectionGrid() .getRectanglesPerPage() .computeIfAbsent(page, (x) -> new ArrayList<>()) - .add(new SectionRectangle(new Point(textBlock.getMinX(), textBlock.getMinY()), - textBlock.getWidth(), - textBlock.getHeight(), + .add(new SectionRectangle(new Point(tb.getPdfMinX(), tb.getPdfMinY()), + tb.getPdfMaxX() - tb.getPdfMinX(), + tb.getPdfMaxY() - tb.getPdfMinY(), i + 1, paragraph.getPageBlocks().size(), null)); diff --git a/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/redaction/utils/EntitySearchUtils.java b/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/redaction/utils/EntitySearchUtils.java index 842e1471..1446b19f 100644 --- a/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/redaction/utils/EntitySearchUtils.java +++ b/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/redaction/utils/EntitySearchUtils.java @@ -292,9 +292,9 @@ public class EntitySearchUtils { .get(0) .getSequences() .get(0) - .getX1() && image.getPosition().getX() + image.getPosition().getWidth() > entity.getPositionSequences().get(0).getSequences().get(0).getX2() && image.getPosition() - .getY() < entity.getPositionSequences().get(0).getSequences().get(0).getY1() && image.getPosition().getY() + image.getPosition() - .getHeight() > entity.getPositionSequences().get(0).getSequences().get(0).getY2(); + .getMinXDirAdj() && image.getPosition().getX() + image.getPosition().getWidth() > entity.getPositionSequences().get(0).getSequences().get(0).getMaxXDirAdj() && image.getPosition() + .getY() < entity.getPositionSequences().get(0).getSequences().get(0).getMinYDirAdj() && image.getPosition().getY() + image.getPosition() + .getHeight() > entity.getPositionSequences().get(0).getSequences().get(0).getMaxYDirAdj(); } diff --git a/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/segmentation/PdfSegmentationService.java b/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/segmentation/PdfSegmentationService.java index 1724677c..35672ddc 100644 --- a/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/segmentation/PdfSegmentationService.java +++ b/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/segmentation/PdfSegmentationService.java @@ -99,24 +99,22 @@ public class PdfSegmentationService { stripper.getText(pdDocument); PDRectangle pdr = pdPage.getMediaBox(); - boolean isLandscape = pdr.getWidth() > pdr.getHeight(); int rotation = pdPage.getRotation(); - boolean isRotated = rotation != 0 && rotation != 360; + boolean isLandscape = pdr.getWidth() > pdr.getHeight() && (rotation == 0 || rotation == 180) || pdr.getHeight() > pdr.getWidth() && (rotation == 90 || rotation == 270); + PDRectangle cropbox = pdPage.getCropBox(); CleanRulings cleanRulings = rulingCleaningService.getCleanRulings(pdfTableCells.get(pageNumber), stripper.getRulings(), stripper.getMinCharWidth(), stripper.getMaxCharHeight()); Page page = blockificationService.blockify(stripper.getTextPositionSequences(), cleanRulings.getHorizontal(), cleanRulings.getVertical()); - PDRectangle cropbox = pdPage.getCropBox(); - float cropboxArea = cropbox.getHeight() * cropbox.getWidth(); - page.setCropBoxArea(cropboxArea); - page.setRotation(rotation); - page.setLandscape(isLandscape || isRotated); + page.setLandscape(isLandscape); page.setPageNumber(pageNumber); + page.setPageWidth(cropbox.getWidth()); + page.setPageHeight(cropbox.getHeight()); tableExtractionService.extractTables(cleanRulings, page); buildPageStatistics(page); diff --git a/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/tableextraction/model/AbstractTextContainer.java b/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/tableextraction/model/AbstractTextContainer.java index c1bf285e..f6a76b3a 100644 --- a/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/tableextraction/model/AbstractTextContainer.java +++ b/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/tableextraction/model/AbstractTextContainer.java @@ -4,6 +4,7 @@ import com.dslplatform.json.JsonAttribute; import com.fasterxml.jackson.annotation.JsonIgnore; import com.iqser.red.service.redaction.v1.model.Rectangle; import com.iqser.red.service.redaction.v1.server.classification.model.Orientation; +import com.iqser.red.service.redaction.v1.server.classification.model.TextBlock; import lombok.AllArgsConstructor; import lombok.Data; @@ -34,6 +35,12 @@ public abstract class AbstractTextContainer { public abstract String getText(); + public boolean containsBlock(TextBlock other) { + + return this.minX <= other.getPdfMinX() && this.maxX >= other.getPdfMaxX() && this.minY >= other.getPdfMinY() && this.maxY <= other.getPdfMaxY(); + } + + public boolean contains(AbstractTextContainer other) { return this.minX <= other.minX && this.maxX >= other.maxX && this.minY >= other.minY && this.maxY <= other.maxY; diff --git a/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/tableextraction/model/Cell.java b/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/tableextraction/model/Cell.java index 39545144..5dcb1138 100644 --- a/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/tableextraction/model/Cell.java +++ b/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/tableextraction/model/Cell.java @@ -51,7 +51,7 @@ public class Cell extends Rectangle { for (TextPositionSequence word : textBlock.getSequences()) { if (previous != null) { - if (Math.abs(previous.getRotationAdjustedY() - word.getRotationAdjustedY()) > word.getTextHeight()) { + if (Math.abs(previous.getMaxYDirAdj() - word.getMaxYDirAdj()) > word.getTextHeight()) { sb.append('\n'); } else { sb.append(' '); diff --git a/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/tableextraction/service/TableExtractionService.java b/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/tableextraction/service/TableExtractionService.java index fdecc7e8..192bad74 100644 --- a/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/tableextraction/service/TableExtractionService.java +++ b/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/tableextraction/service/TableExtractionService.java @@ -1,15 +1,27 @@ package com.iqser.red.service.redaction.v1.server.tableextraction.service; -import com.iqser.red.service.redaction.v1.server.classification.model.Page; -import com.iqser.red.service.redaction.v1.server.classification.model.TextBlock; -import com.iqser.red.service.redaction.v1.server.tableextraction.model.*; -import com.iqser.red.service.redaction.v1.server.tableextraction.utils.Utils; +import java.awt.geom.Point2D; +import java.util.ArrayList; +import java.util.Comparator; +import java.util.HashMap; +import java.util.HashSet; +import java.util.Iterator; +import java.util.List; +import java.util.Map; +import java.util.Set; +import java.util.stream.Collectors; import org.springframework.stereotype.Service; -import java.awt.geom.Point2D; -import java.util.*; -import java.util.stream.Collectors; +import com.iqser.red.service.redaction.v1.server.classification.model.Page; +import com.iqser.red.service.redaction.v1.server.classification.model.TextBlock; +import com.iqser.red.service.redaction.v1.server.tableextraction.model.AbstractTextContainer; +import com.iqser.red.service.redaction.v1.server.tableextraction.model.Cell; +import com.iqser.red.service.redaction.v1.server.tableextraction.model.CleanRulings; +import com.iqser.red.service.redaction.v1.server.tableextraction.model.Rectangle; +import com.iqser.red.service.redaction.v1.server.tableextraction.model.Ruling; +import com.iqser.red.service.redaction.v1.server.tableextraction.model.Table; +import com.iqser.red.service.redaction.v1.server.tableextraction.utils.Utils; @Service public class TableExtractionService { @@ -54,6 +66,19 @@ public class TableExtractionService { }; + /** + * Finds tables on a page and moves textblocks into cells of the found tables. + * Note: This algorithm uses Pdf Coordinate System where {0,0} rotated with the page rotation. + * 0 -> LowerLeft + * 90 -> UpperLeft + * 180 -> UpperRight + * 270 -> LowerRight + * + * DirAdj (Text direction adjusted) values can not be used here. + * + * @param cleanRulings The lines used to build the table. + * @param page Page object that contains textblocks and statistics. + */ public void extractTables(CleanRulings cleanRulings, Page page) { List cells = findCells(cleanRulings.getHorizontal(), cleanRulings.getVertical()); @@ -63,7 +88,10 @@ public class TableExtractionService { for (AbstractTextContainer abstractTextContainer : page.getTextBlocks()) { TextBlock textBlock = (TextBlock) abstractTextContainer; for (Cell cell : cells) { - if (cell.intersects(textBlock.getMinX(), textBlock.getMinY(), textBlock.getWidth(), textBlock.getHeight())) { + if (cell.intersects(textBlock.getPdfMinX(), + textBlock.getPdfMinY(), + textBlock.getPdfMaxX() - textBlock.getPdfMinX(), + textBlock.getPdfMaxY() - textBlock.getPdfMinY())) { cell.addTextBlock(textBlock); toBeRemoved.add(textBlock); break; @@ -94,7 +122,7 @@ public class TableExtractionService { Iterator itty = page.getTextBlocks().iterator(); while (itty.hasNext()) { AbstractTextContainer textBlock = itty.next(); - if (table.contains(textBlock) && position == -1) { + if (textBlock instanceof TextBlock ? table.containsBlock((TextBlock) textBlock) : table.contains(textBlock) && position == -1) { position = page.getTextBlocks().indexOf(textBlock); } } diff --git a/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/visualization/service/PdfVisualisationService.java b/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/visualization/service/PdfVisualisationService.java index 3d56bbae..751f37fa 100644 --- a/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/visualization/service/PdfVisualisationService.java +++ b/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/visualization/service/PdfVisualisationService.java @@ -1,5 +1,15 @@ package com.iqser.red.service.redaction.v1.server.visualization.service; +import java.awt.Color; +import java.io.IOException; +import java.util.List; + +import org.apache.pdfbox.pdmodel.PDDocument; +import org.apache.pdfbox.pdmodel.PDPage; +import org.apache.pdfbox.pdmodel.PDPageContentStream; +import org.apache.pdfbox.pdmodel.font.PDType1Font; +import org.springframework.stereotype.Service; + import com.iqser.red.service.redaction.v1.server.classification.model.Document; import com.iqser.red.service.redaction.v1.server.classification.model.Page; import com.iqser.red.service.redaction.v1.server.classification.model.Paragraph; @@ -11,16 +21,6 @@ import com.iqser.red.service.redaction.v1.server.tableextraction.model.Table; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; -import org.apache.pdfbox.pdmodel.PDDocument; -import org.apache.pdfbox.pdmodel.PDPage; -import org.apache.pdfbox.pdmodel.PDPageContentStream; -import org.apache.pdfbox.pdmodel.font.PDType1Font; -import org.springframework.stereotype.Service; - -import java.awt.Color; -import java.io.IOException; -import java.util.List; - @Slf4j @Service @RequiredArgsConstructor @@ -79,10 +79,11 @@ public class PdfVisualisationService { } contentStream.setStrokingColor(Color.YELLOW); - contentStream.addRect((float) analyzedPage.getBodyTextFrame().getX(), - (float) analyzedPage.getBodyTextFrame().getY(), - (float) analyzedPage.getBodyTextFrame().getWidth(), - (float) analyzedPage.getBodyTextFrame().getHeight()); + contentStream.addRect(analyzedPage.getBodyTextFrame().getTopLeft().getX(), + analyzedPage.getBodyTextFrame().getTopLeft().getY(), + analyzedPage.getBodyTextFrame().getWidth(), + analyzedPage.getBodyTextFrame().getHeight()); + contentStream.stroke(); contentStream.close(); @@ -94,20 +95,39 @@ public class PdfVisualisationService { contentStream.setStrokingColor(Color.RED); - contentStream.addRect(textBlock.getMinX(), textBlock.getMinY(), textBlock.getWidth(), textBlock.getHeight()); + contentStream.addRect(textBlock.getPdfMinX(), textBlock.getPdfMinY(), textBlock.getPdfMaxX() - textBlock.getPdfMinX(), textBlock.getPdfMaxY() - textBlock.getPdfMinY()); contentStream.stroke(); if (textBlock.getClassification() != null) { contentStream.beginText(); contentStream.setNonStrokingColor(Color.BLUE); - contentStream.setFont(PDType1Font.TIMES_ROMAN, 12f); + contentStream.setFont(PDType1Font.TIMES_ROMAN, 9f); - contentStream.newLineAtOffset(textBlock.getMinX(), textBlock.getMaxY()); - - contentStream.showText(textBlock.getClassification() + textBlock.getOrientation()); + contentStream.newLineAtOffset(textBlock.getPdfMinX(), textBlock.getPdfMaxY() + 2); + contentStream.showText(textBlock.getClassification() + textBlock.getOrientation() + "-->" + textBlock.getSequences().get(0).getDir()); contentStream.endText(); + + contentStream.setNonStrokingColor(Color.BLUE); + contentStream.setFont(PDType1Font.TIMES_ROMAN, 2f); + +// contentStream.beginText(); +// contentStream.newLineAtOffset(textBlock.getPdfMinX(), textBlock.getPdfMinY()); +// contentStream.showText("MinX,MinY(" + textBlock.getPdfMinX() + "," + textBlock.getPdfMinY() + ")"); +// contentStream.endText(); +// contentStream.beginText(); +// contentStream.newLineAtOffset(textBlock.getPdfMaxX(), textBlock.getPdfMinY()); +// contentStream.showText("MaxX,MinY(" + textBlock.getPdfMaxX() + "," + textBlock.getPdfMinY() + ")"); +// contentStream.endText(); +// contentStream.beginText(); +// contentStream.newLineAtOffset(textBlock.getPdfMinX(), textBlock.getPdfMaxY()); +// contentStream.showText("MinX,MaxY(" + textBlock.getPdfMinX() + "," + textBlock.getPdfMaxY() + ")"); +// contentStream.endText(); +// contentStream.beginText(); +// contentStream.newLineAtOffset(textBlock.getPdfMaxX(), textBlock.getPdfMaxY()); +// contentStream.showText("MaxX,MaxY(" + textBlock.getPdfMaxX() + "," + textBlock.getPdfMaxY() + ")"); +// contentStream.endText(); } } @@ -124,7 +144,10 @@ public class PdfVisualisationService { contentStream.setStrokingColor(Color.GREEN); for (TextBlock textBlock : cell.getTextBlocks()) { - contentStream.addRect(textBlock.getMinX(), textBlock.getMinY(), textBlock.getWidth(), textBlock.getHeight()); + contentStream.addRect(textBlock.getPdfMinX(), + textBlock.getPdfMinY(), + textBlock.getPdfMaxX() - textBlock.getPdfMinX(), + textBlock.getPdfMaxY() - textBlock.getPdfMinY()); contentStream.stroke(); } } diff --git a/redaction-service-v1/redaction-service-server-v1/src/test/java/com/iqser/red/service/redaction/v1/server/HeadlinesGoldStandardIntegrationTest.java b/redaction-service-v1/redaction-service-server-v1/src/test/java/com/iqser/red/service/redaction/v1/server/HeadlinesGoldStandardIntegrationTest.java index 215c12e9..fe006822 100644 --- a/redaction-service-v1/redaction-service-server-v1/src/test/java/com/iqser/red/service/redaction/v1/server/HeadlinesGoldStandardIntegrationTest.java +++ b/redaction-service-v1/redaction-service-server-v1/src/test/java/com/iqser/red/service/redaction/v1/server/HeadlinesGoldStandardIntegrationTest.java @@ -155,9 +155,8 @@ public class HeadlinesGoldStandardIntegrationTest { System.out.println("Precision is: " + precision + " recall is: " + recall); - Assertions.assertThat(precision).isGreaterThanOrEqualTo(0.45f); + Assertions.assertThat(precision).isGreaterThanOrEqualTo(0.44f); Assertions.assertThat(recall).isGreaterThanOrEqualTo(0.69f); - } diff --git a/redaction-service-v1/redaction-service-server-v1/src/test/java/com/iqser/red/service/redaction/v1/server/RedactionIntegrationTest.java b/redaction-service-v1/redaction-service-server-v1/src/test/java/com/iqser/red/service/redaction/v1/server/RedactionIntegrationTest.java index 9396f82a..720b148d 100644 --- a/redaction-service-v1/redaction-service-server-v1/src/test/java/com/iqser/red/service/redaction/v1/server/RedactionIntegrationTest.java +++ b/redaction-service-v1/redaction-service-server-v1/src/test/java/com/iqser/red/service/redaction/v1/server/RedactionIntegrationTest.java @@ -364,7 +364,7 @@ public class RedactionIntegrationTest { @Test public void titleExtraction() throws IOException { - AnalyzeRequest request = prepareStorage("files/RSS/32 - Emamectin Benzoate Technical - Acute Oral Toxicity - Mouse.pdf"); + AnalyzeRequest request = prepareStorage("files/RSS/06 - Isopyrazam - Acute Oral Toxicity Rat.pdf"); analyzeService.analyzeDocumentStructure(new StructureAnalyzeRequest(request.getDossierId(), request.getFileId())); AnalyzeResult result = analyzeService.analyze(request); @@ -1098,7 +1098,7 @@ public class RedactionIntegrationTest { System.out.println("classificationTest"); - AnalyzeRequest request = prepareStorage("files/Metolachlor/S-Metolachlor_RAR_01_Volume_1_2018-09-06.pdf"); + AnalyzeRequest request = prepareStorage("files/new/RotateTestFile.pdf"); RedactionRequest redactionRequest = RedactionRequest.builder() .dossierId(request.getDossierId()) diff --git a/redaction-service-v1/redaction-service-server-v1/src/test/resources/RedactionLog/files/RulesTest/SYNGENTA_EFSA_sanitisation_GFL_v1_withHighlights.json b/redaction-service-v1/redaction-service-server-v1/src/test/resources/RedactionLog/files/RulesTest/SYNGENTA_EFSA_sanitisation_GFL_v1_withHighlights.json index 4bab52fd..573a9e73 100644 --- a/redaction-service-v1/redaction-service-server-v1/src/test/resources/RedactionLog/files/RulesTest/SYNGENTA_EFSA_sanitisation_GFL_v1_withHighlights.json +++ b/redaction-service-v1/redaction-service-server-v1/src/test/resources/RedactionLog/files/RulesTest/SYNGENTA_EFSA_sanitisation_GFL_v1_withHighlights.json @@ -1,5365 +1 @@ -{ - "analysisVersion": 1, - "analysisNumber": 0, - "redactionLogEntry": [ - { - "id": "ee2f67ca1230e5d21863e90f2ccf25ef", - "type": "PII", - "value": "David", - "reason": "Personal information found", - "matchedRule": 19, - "rectangle": false, - "legalBasis": "Article 39(e)(3) of Regulation (EC) No 178/2002", - "imported": false, - "redacted": true, - "section": "Rule: Redact CBI Authors based on Dict", - "color": [ - 0.4, - 0.8, - 1.0 - ], - "positions": [ - { - "topLeft": { - "x": 56.8, - "y": 487.24203 - }, - "width": 29.291996, - "height": -12.641998, - "page": 1 - } - ], - "sectionNumber": 3, - "textBefore": "Study is No ", - "textAfter": " Ksenia Max", - "comments": [], - "startOffset": 110, - "endOffset": 115, - "imageHasTransparency": false, - "excluded": false, - "sourceId": null, - "changes": [ - { - "analysisNumber": 0, - "type": "ADDED", - "dateTime": "2022-08-24T16:43:01.036564+02:00" - } - ], - "manualChanges": [], - "engines": [ - "DICTIONARY" - ], - "reference": [], - "importedRedactionIntersections": [], - "hint": false, - "recommendation": false, - "falsePositive": false, - "image": false, - "dictionaryEntry": true, - "dossierDictionaryEntry": false, - "localManualRedaction": false, - "manuallyRemoved": false - }, - { - "id": "6f9146f3bc954002f01cfb1c79ca13e9", - "type": "CBI_author", - "value": "Mustermann", - "reason": "Author found", - "matchedRule": 1, - "rectangle": false, - "legalBasis": "Article 39(e)(3) of Regulation (EC) No 178/2002", - "imported": false, - "redacted": true, - "section": "Rule: Redact CBI Authors based on Dict", - "color": [ - 1.0, - 0.88235295, - 0.5294118 - ], - "positions": [ - { - "topLeft": { - "x": 81.796005, - "y": 473.44202 - }, - "width": 60.587997, - "height": -12.641998, - "page": 1 - } - ], - "sectionNumber": 3, - "textBefore": "David Ksenia Max ", - "textAfter": " Ranya Eikenboom", - "comments": [], - "startOffset": 127, - "endOffset": 137, - "imageHasTransparency": false, - "excluded": false, - "sourceId": null, - "changes": [ - { - "analysisNumber": 0, - "type": "ADDED", - "dateTime": "2022-08-24T16:43:01.036565+02:00" - } - ], - "manualChanges": [], - "engines": [ - "DICTIONARY" - ], - "reference": [], - "importedRedactionIntersections": [], - "hint": false, - "recommendation": false, - "falsePositive": false, - "image": false, - "dictionaryEntry": true, - "dossierDictionaryEntry": false, - "localManualRedaction": false, - "manuallyRemoved": false - }, - { - "id": "7fac2da15ad3e7f69a3a64e5f1e882e6", - "type": "PII", - "value": "Page", - "reason": "Personal information found", - "matchedRule": 19, - "rectangle": false, - "legalBasis": "Article 39(e)(3) of Regulation (EC) No 178/2002", - "imported": false, - "redacted": true, - "section": "Header", - "color": [ - 0.4, - 0.8, - 1.0 - ], - "positions": [ - { - "topLeft": { - "x": 100.479996, - "y": 734.742 - }, - "width": 23.304, - "height": -12.641998, - "page": 1 - } - ], - "sectionNumber": 33, - "textBefore": "This is a ", - "textAfter": "-Header", - "comments": [], - "startOffset": 10, - "endOffset": 14, - "imageHasTransparency": false, - "excluded": false, - "sourceId": null, - "changes": [ - { - "analysisNumber": 0, - "type": "ADDED", - "dateTime": "2022-08-24T16:43:01.036566+02:00" - } - ], - "manualChanges": [], - "engines": [ - "DICTIONARY" - ], - "reference": [], - "importedRedactionIntersections": [], - "hint": false, - "recommendation": false, - "falsePositive": false, - "image": false, - "dictionaryEntry": true, - "dossierDictionaryEntry": false, - "localManualRedaction": false, - "manuallyRemoved": false - }, - { - "id": "d9ed19976a1bbeaa8f42d4bf0b43448a", - "type": "PII", - "value": "Page", - "reason": "Personal information found", - "matchedRule": 19, - "rectangle": false, - "legalBasis": "Article 39(e)(3) of Regulation (EC) No 178/2002", - "imported": false, - "redacted": true, - "section": "Footer", - "color": [ - 0.4, - 0.8, - 1.0 - ], - "positions": [ - { - "topLeft": { - "x": 100.479996, - "y": 69.94202 - }, - "width": 23.304, - "height": -12.642029, - "page": 1 - } - ], - "sectionNumber": 41, - "textBefore": "This is a ", - "textAfter": "-Footer", - "comments": [], - "startOffset": 10, - "endOffset": 14, - "imageHasTransparency": false, - "excluded": false, - "sourceId": null, - "changes": [ - { - "analysisNumber": 0, - "type": "ADDED", - "dateTime": "2022-08-24T16:43:01.036566+02:00" - } - ], - "manualChanges": [], - "engines": [ - "DICTIONARY" - ], - "reference": [], - "importedRedactionIntersections": [], - "hint": false, - "recommendation": false, - "falsePositive": false, - "image": false, - "dictionaryEntry": true, - "dossierDictionaryEntry": false, - "localManualRedaction": false, - "manuallyRemoved": false - }, - { - "id": "5752ed95d7e94546c20ccc82e92d03c8", - "type": "CBI_address", - "value": "Netherlands", - "reason": "Address found for non vertebrate study", - "matchedRule": 3, - "rectangle": false, - "legalBasis": null, - "imported": false, - "redacted": false, - "section": "Rule: Redact (not) CBI Address based on Dict", - "color": [ - 0.8, - 0.8, - 0.8 - ], - "positions": [ - { - "topLeft": { - "x": 217.276, - "y": 324.54202 - }, - "width": 57.94803, - "height": -12.641998, - "page": 1 - } - ], - "sectionNumber": 4, - "textBefore": "7232 CX Warnsveld, ", - "textAfter": ", NL Institut", - "comments": [], - "startOffset": 169, - "endOffset": 180, - "imageHasTransparency": false, - "excluded": false, - "sourceId": null, - "changes": [ - { - "analysisNumber": 0, - "type": "ADDED", - "dateTime": "2022-08-24T16:43:01.036566+02:00" - } - ], - "manualChanges": [], - "engines": [ - "DICTIONARY" - ], - "reference": [], - "importedRedactionIntersections": [], - "hint": false, - "recommendation": false, - "falsePositive": false, - "image": false, - "dictionaryEntry": true, - "dossierDictionaryEntry": false, - "localManualRedaction": false, - "manuallyRemoved": false - }, - { - "id": "43bbee2515421187094dd806cd2987ce", - "type": "PII", - "value": "Page", - "reason": "Personal information found", - "matchedRule": 19, - "rectangle": false, - "legalBasis": "Article 39(e)(3) of Regulation (EC) No 178/2002", - "imported": false, - "redacted": true, - "section": "Header", - "color": [ - 0.4, - 0.8, - 1.0 - ], - "positions": [ - { - "topLeft": { - "x": 100.479996, - "y": 734.742 - }, - "width": 23.304, - "height": -12.641998, - "page": 2 - } - ], - "sectionNumber": 34, - "textBefore": "This is a ", - "textAfter": "-Header", - "comments": [], - "startOffset": 10, - "endOffset": 14, - "imageHasTransparency": false, - "excluded": false, - "sourceId": null, - "changes": [ - { - "analysisNumber": 0, - "type": "ADDED", - "dateTime": "2022-08-24T16:43:01.036566+02:00" - } - ], - "manualChanges": [], - "engines": [ - "DICTIONARY" - ], - "reference": [], - "importedRedactionIntersections": [], - "hint": false, - "recommendation": false, - "falsePositive": false, - "image": false, - "dictionaryEntry": true, - "dossierDictionaryEntry": false, - "localManualRedaction": false, - "manuallyRemoved": false - }, - { - "id": "e550f3473276d708223c75f540deebfd", - "type": "CBI_author", - "value": "Desiree", - "reason": "Author found", - "matchedRule": 1, - "rectangle": false, - "legalBasis": "Article 39(e)(3) of Regulation (EC) No 178/2002", - "imported": false, - "redacted": true, - "section": "Rule: Additional Test: Names shoud be rule-based recommendations now", - "color": [ - 1.0, - 0.88235295, - 0.5294118 - ], - "positions": [ - { - "topLeft": { - "x": 152.452, - "y": 417.84204 - }, - "width": 36.587997, - "height": -12.641998, - "page": 2 - } - ], - "sectionNumber": 13, - "textBefore": "Lorem ipsum dolor ", - "textAfter": " Lorem Ipsum", - "comments": [], - "startOffset": 142, - "endOffset": 149, - "imageHasTransparency": false, - "excluded": false, - "sourceId": null, - "changes": [ - { - "analysisNumber": 0, - "type": "ADDED", - "dateTime": "2022-08-24T16:43:01.036567+02:00" - } - ], - "manualChanges": [], - "engines": [ - "RULE" - ], - "reference": [], - "importedRedactionIntersections": [], - "hint": false, - "recommendation": true, - "falsePositive": false, - "image": false, - "dictionaryEntry": false, - "dossierDictionaryEntry": false, - "localManualRedaction": false, - "manuallyRemoved": false - }, - { - "id": "6e1a95925b66af9d715346bd50d397a8", - "type": "CBI_author", - "value": "Feuer A.", - "reason": "Author found", - "matchedRule": 6, - "rectangle": false, - "legalBasis": "Article 39(e)(3) of Regulation (EC) No 178/2002", - "imported": false, - "redacted": true, - "section": "Table in: Rule: Redact Auths Cells in Tables", - "color": [ - 1.0, - 0.88235295, - 0.5294118 - ], - "positions": [ - { - "topLeft": { - "x": 146.8, - "y": 582.11176 - }, - "width": 36.0885, - "height": -11.811752, - "page": 2 - } - ], - "sectionNumber": 9, - "textBefore": null, - "textAfter": null, - "comments": [], - "startOffset": 6, - "endOffset": 14, - "imageHasTransparency": false, - "excluded": false, - "sourceId": null, - "changes": [ - { - "analysisNumber": 0, - "type": "ADDED", - "dateTime": "2022-08-24T16:43:01.036567+02:00" - } - ], - "manualChanges": [], - "engines": [ - "RULE" - ], - "reference": [], - "importedRedactionIntersections": [], - "hint": false, - "recommendation": false, - "falsePositive": false, - "image": false, - "dictionaryEntry": false, - "dossierDictionaryEntry": false, - "localManualRedaction": false, - "manuallyRemoved": false - }, - { - "id": "4ec8947fe7439e564796162817360aa8", - "type": "CBI_author", - "value": "Melanie", - "reason": "Author found", - "matchedRule": 14, - "rectangle": false, - "legalBasis": "Article 39(e)(3) of Regulation (EC) No 178/2002", - "imported": false, - "redacted": true, - "section": "Rule: Redact and add recommendation for et al.", - "color": [ - 1.0, - 0.88235295, - 0.5294118 - ], - "positions": [ - { - "topLeft": { - "x": 162.10999, - "y": 512.235 - }, - "width": 32.710007, - "height": -11.535004, - "page": 2 - } - ], - "sectionNumber": 12, - "textBefore": "Term “Desiree”, “", - "textAfter": "” and add", - "comments": [], - "startOffset": 71, - "endOffset": 78, - "imageHasTransparency": false, - "excluded": false, - "sourceId": null, - "changes": [ - { - "analysisNumber": 0, - "type": "ADDED", - "dateTime": "2022-08-24T16:43:01.036568+02:00" - } - ], - "manualChanges": [], - "engines": [ - "RULE" - ], - "reference": [], - "importedRedactionIntersections": [], - "hint": false, - "recommendation": false, - "falsePositive": false, - "image": false, - "dictionaryEntry": false, - "dossierDictionaryEntry": false, - "localManualRedaction": false, - "manuallyRemoved": false - }, - { - "id": "df2cc1fc80e19c83b28361c70bbbfb28", - "type": "CBI_author", - "value": "Melanie", - "reason": "Author found", - "matchedRule": 1, - "rectangle": false, - "legalBasis": "Article 39(e)(3) of Regulation (EC) No 178/2002", - "imported": false, - "redacted": true, - "section": "Rule: Additional Test: Names shoud be rule-based recommendations now", - "color": [ - 1.0, - 0.88235295, - 0.5294118 - ], - "positions": [ - { - "topLeft": { - "x": 259.99603, - "y": 417.84204 - }, - "width": 39.30008, - "height": -12.641998, - "page": 2 - } - ], - "sectionNumber": 13, - "textBefore": "Desiree Lorem Ipsum ", - "textAfter": ".", - "comments": [], - "startOffset": 162, - "endOffset": 169, - "imageHasTransparency": false, - "excluded": false, - "sourceId": null, - "changes": [ - { - "analysisNumber": 0, - "type": "ADDED", - "dateTime": "2022-08-24T16:43:01.036568+02:00" - } - ], - "manualChanges": [], - "engines": [ - "RULE" - ], - "reference": [], - "importedRedactionIntersections": [], - "hint": false, - "recommendation": true, - "falsePositive": false, - "image": false, - "dictionaryEntry": false, - "dossierDictionaryEntry": false, - "localManualRedaction": false, - "manuallyRemoved": false - }, - { - "id": "61c6d12c64bbd14607e8733e987db6c5", - "type": "CBI_author", - "value": "Melanie", - "reason": "Author found", - "matchedRule": 14, - "rectangle": false, - "legalBasis": "Article 39(e)(3) of Regulation (EC) No 178/2002", - "imported": false, - "redacted": true, - "section": "Rule: Redact and add recommendation for et al.", - "color": [ - 1.0, - 0.88235295, - 0.5294118 - ], - "positions": [ - { - "topLeft": { - "x": 214.744, - "y": 486.14203 - }, - "width": 39.216003, - "height": -12.641998, - "page": 2 - } - ], - "sectionNumber": 12, - "textBefore": "dolore magna aliqua ", - "textAfter": " et al.", - "comments": [], - "startOffset": 286, - "endOffset": 293, - "imageHasTransparency": false, - "excluded": false, - "sourceId": null, - "changes": [ - { - "analysisNumber": 0, - "type": "ADDED", - "dateTime": "2022-08-24T16:43:01.036568+02:00" - } - ], - "manualChanges": [], - "engines": [ - "RULE" - ], - "reference": [], - "importedRedactionIntersections": [], - "hint": false, - "recommendation": false, - "falsePositive": false, - "image": false, - "dictionaryEntry": false, - "dossierDictionaryEntry": false, - "localManualRedaction": false, - "manuallyRemoved": false - }, - { - "id": "12b0a0abf2877b4c0b3a87468c1fd65b", - "type": "CBI_author", - "value": "Desiree", - "reason": "Author found", - "matchedRule": 1, - "rectangle": false, - "legalBasis": "Article 39(e)(3) of Regulation (EC) No 178/2002", - "imported": false, - "redacted": true, - "section": "Rule: Additional Test: Names shoud be rule-based recommendations now", - "color": [ - 1.0, - 0.88235295, - 0.5294118 - ], - "positions": [ - { - "topLeft": { - "x": 197.2, - "y": 430.13498 - }, - "width": 30.699982, - "height": -11.535004, - "page": 2 - } - ], - "sectionNumber": 13, - "textBefore": "recommendations for “", - "textAfter": "” and “Melanie”", - "comments": [], - "startOffset": 101, - "endOffset": 108, - "imageHasTransparency": false, - "excluded": false, - "sourceId": null, - "changes": [ - { - "analysisNumber": 0, - "type": "ADDED", - "dateTime": "2022-08-24T16:43:01.036568+02:00" - } - ], - "manualChanges": [], - "engines": [ - "RULE" - ], - "reference": [], - "importedRedactionIntersections": [], - "hint": false, - "recommendation": true, - "falsePositive": false, - "image": false, - "dictionaryEntry": false, - "dossierDictionaryEntry": false, - "localManualRedaction": false, - "manuallyRemoved": false - }, - { - "id": "2316235decd827887e0f81df8f31f8bb", - "type": "CBI_author", - "value": "Michael N.", - "reason": "Author found", - "matchedRule": 6, - "rectangle": false, - "legalBasis": "Article 39(e)(3) of Regulation (EC) No 178/2002", - "imported": false, - "redacted": true, - "section": "Table in: Rule: Redact Auths Cells in Tables", - "color": [ - 1.0, - 0.88235295, - 0.5294118 - ], - "positions": [ - { - "topLeft": { - "x": 141.2, - "y": 641.61176 - }, - "width": 47.197525, - "height": -11.811752, - "page": 2 - } - ], - "sectionNumber": 7, - "textBefore": null, - "textAfter": null, - "comments": [], - "startOffset": 7, - "endOffset": 17, - "imageHasTransparency": false, - "excluded": false, - "sourceId": null, - "changes": [ - { - "analysisNumber": 0, - "type": "ADDED", - "dateTime": "2022-08-24T16:43:01.036568+02:00" - } - ], - "manualChanges": [], - "engines": [ - "RULE" - ], - "reference": [], - "importedRedactionIntersections": [], - "hint": false, - "recommendation": false, - "falsePositive": false, - "image": false, - "dictionaryEntry": false, - "dossierDictionaryEntry": false, - "localManualRedaction": false, - "manuallyRemoved": false - }, - { - "id": "25c8001e1de2c20c90d9877404f98c9e", - "type": "CBI_author", - "value": "Funnarie B.", - "reason": "Author found", - "matchedRule": 6, - "rectangle": false, - "legalBasis": "Article 39(e)(3) of Regulation (EC) No 178/2002", - "imported": false, - "redacted": true, - "section": "Table in: Rule: Redact Auths Cells in Tables", - "color": [ - 1.0, - 0.88235295, - 0.5294118 - ], - "positions": [ - { - "topLeft": { - "x": 140.0, - "y": 611.81177 - }, - "width": 49.581024, - "height": -11.811752, - "page": 2 - } - ], - "sectionNumber": 8, - "textBefore": null, - "textAfter": null, - "comments": [], - "startOffset": 7, - "endOffset": 18, - "imageHasTransparency": false, - "excluded": false, - "sourceId": null, - "changes": [ - { - "analysisNumber": 0, - "type": "ADDED", - "dateTime": "2022-08-24T16:43:01.036569+02:00" - } - ], - "manualChanges": [], - "engines": [ - "RULE" - ], - "reference": [], - "importedRedactionIntersections": [], - "hint": false, - "recommendation": false, - "falsePositive": false, - "image": false, - "dictionaryEntry": false, - "dossierDictionaryEntry": false, - "localManualRedaction": false, - "manuallyRemoved": false - }, - { - "id": "ac54363c6918025c965d138529f3a00c", - "type": "CBI_author", - "value": "Melanie", - "reason": "Author found", - "matchedRule": 1, - "rectangle": false, - "legalBasis": "Article 39(e)(3) of Regulation (EC) No 178/2002", - "imported": false, - "redacted": true, - "section": "Rule: Additional Test: Names shoud be rule-based recommendations now", - "color": [ - 1.0, - 0.88235295, - 0.5294118 - ], - "positions": [ - { - "topLeft": { - "x": 259.05, - "y": 430.13498 - }, - "width": 32.70993, - "height": -11.535004, - "page": 2 - } - ], - "sectionNumber": 13, - "textBefore": "“Desiree” and “", - "textAfter": "” Lorem ipsum", - "comments": [], - "startOffset": 115, - "endOffset": 122, - "imageHasTransparency": false, - "excluded": false, - "sourceId": null, - "changes": [ - { - "analysisNumber": 0, - "type": "ADDED", - "dateTime": "2022-08-24T16:43:01.036569+02:00" - } - ], - "manualChanges": [], - "engines": [ - "RULE" - ], - "reference": [], - "importedRedactionIntersections": [], - "hint": false, - "recommendation": true, - "falsePositive": false, - "image": false, - "dictionaryEntry": false, - "dossierDictionaryEntry": false, - "localManualRedaction": false, - "manuallyRemoved": false - }, - { - "id": "46f9bad295a9b986fedcea416b7f1dcf", - "type": "PII", - "value": "Page", - "reason": "Personal information found", - "matchedRule": 19, - "rectangle": false, - "legalBasis": "Article 39(e)(3) of Regulation (EC) No 178/2002", - "imported": false, - "redacted": true, - "section": "Footer", - "color": [ - 0.4, - 0.8, - 1.0 - ], - "positions": [ - { - "topLeft": { - "x": 100.479996, - "y": 69.94202 - }, - "width": 23.304, - "height": -12.642029, - "page": 2 - } - ], - "sectionNumber": 42, - "textBefore": "This is a ", - "textAfter": "-Footer", - "comments": [], - "startOffset": 10, - "endOffset": 14, - "imageHasTransparency": false, - "excluded": false, - "sourceId": null, - "changes": [ - { - "analysisNumber": 0, - "type": "ADDED", - "dateTime": "2022-08-24T16:43:01.036569+02:00" - } - ], - "manualChanges": [], - "engines": [ - "DICTIONARY" - ], - "reference": [], - "importedRedactionIntersections": [], - "hint": false, - "recommendation": false, - "falsePositive": false, - "image": false, - "dictionaryEntry": true, - "dossierDictionaryEntry": false, - "localManualRedaction": false, - "manuallyRemoved": false - }, - { - "id": "8700805fe26f929a1afa9d8c27afa3bb", - "type": "CBI_author", - "value": "Desiree", - "reason": "Author found", - "matchedRule": 14, - "rectangle": false, - "legalBasis": "Article 39(e)(3) of Regulation (EC) No 178/2002", - "imported": false, - "redacted": true, - "section": "Rule: Redact and add recommendation for et al.", - "color": [ - 1.0, - 0.88235295, - 0.5294118 - ], - "positions": [ - { - "topLeft": { - "x": 115.34999, - "y": 512.235 - }, - "width": 30.61, - "height": -11.535004, - "page": 2 - } - ], - "sectionNumber": 12, - "textBefore": "Redact Term “", - "textAfter": "”, “Melanie” and", - "comments": [], - "startOffset": 60, - "endOffset": 67, - "imageHasTransparency": false, - "excluded": false, - "sourceId": null, - "changes": [ - { - "analysisNumber": 0, - "type": "ADDED", - "dateTime": "2022-08-24T16:43:01.036569+02:00" - } - ], - "manualChanges": [], - "engines": [ - "RULE" - ], - "reference": [], - "importedRedactionIntersections": [], - "hint": false, - "recommendation": false, - "falsePositive": false, - "image": false, - "dictionaryEntry": false, - "dossierDictionaryEntry": false, - "localManualRedaction": false, - "manuallyRemoved": false - }, - { - "id": "7509328338c4e2a584aae578ee354be6", - "type": "CBI_author", - "value": "Desiree", - "reason": "Author found", - "matchedRule": 14, - "rectangle": false, - "legalBasis": "Article 39(e)(3) of Regulation (EC) No 178/2002", - "imported": false, - "redacted": true, - "section": "Rule: Redact and add recommendation for et al.", - "color": [ - 1.0, - 0.88235295, - 0.5294118 - ], - "positions": [ - { - "topLeft": { - "x": 324.29214, - "y": 499.94202 - }, - "width": 36.600037, - "height": -12.641998, - "page": 2 - } - ], - "sectionNumber": 12, - "textBefore": "consectetur adipiscing elit ", - "textAfter": " et al", - "comments": [], - "startOffset": 206, - "endOffset": 213, - "imageHasTransparency": false, - "excluded": false, - "sourceId": null, - "changes": [ - { - "analysisNumber": 0, - "type": "ADDED", - "dateTime": "2022-08-24T16:43:01.03657+02:00" - } - ], - "manualChanges": [], - "engines": [ - "RULE" - ], - "reference": [], - "importedRedactionIntersections": [], - "hint": false, - "recommendation": false, - "falsePositive": false, - "image": false, - "dictionaryEntry": false, - "dossierDictionaryEntry": false, - "localManualRedaction": false, - "manuallyRemoved": false - }, - { - "id": "5974b001dd9553bc874eefd0a8cda4bf", - "type": "vertebrate", - "value": "mouse", - "reason": null, - "matchedRule": 0, - "rectangle": false, - "legalBasis": null, - "imported": false, - "redacted": false, - "section": "Rule: Add recommendation for Addresses in Test Organism/Animals\nsections", - "color": [ - 1.0, - 0.52156866, - 0.96862745 - ], - "positions": [ - { - "topLeft": { - "x": 318.66403, - "y": 629.242 - }, - "width": 32.604004, - "height": -12.641998, - "page": 3 - } - ], - "sectionNumber": 14, - "textBefore": null, - "textAfter": null, - "comments": [], - "startOffset": 405, - "endOffset": 410, - "imageHasTransparency": false, - "excluded": false, - "sourceId": null, - "changes": [ - { - "analysisNumber": 0, - "type": "ADDED", - "dateTime": "2022-08-24T16:43:01.03657+02:00" - } - ], - "manualChanges": [], - "engines": [ - "DICTIONARY" - ], - "reference": [], - "importedRedactionIntersections": [], - "hint": true, - "recommendation": false, - "falsePositive": false, - "image": false, - "dictionaryEntry": true, - "dossierDictionaryEntry": false, - "localManualRedaction": false, - "manuallyRemoved": false - }, - { - "id": "a6906abd38ee8523e10fb253961fd1b3", - "type": "vertebrate", - "value": "mouse", - "reason": null, - "matchedRule": 0, - "rectangle": false, - "legalBasis": null, - "imported": false, - "redacted": false, - "section": "Rule: (2/2 additional negative test)", - "color": [ - 1.0, - 0.52156866, - 0.96862745 - ], - "positions": [ - { - "topLeft": { - "x": 323.92007, - "y": 409.74203 - }, - "width": 32.69998, - "height": -12.641998, - "page": 3 - } - ], - "sectionNumber": 16, - "textBefore": null, - "textAfter": null, - "comments": [], - "startOffset": 189, - "endOffset": 194, - "imageHasTransparency": false, - "excluded": false, - "sourceId": null, - "changes": [ - { - "analysisNumber": 0, - "type": "ADDED", - "dateTime": "2022-08-24T16:43:01.03657+02:00" - } - ], - "manualChanges": [], - "engines": [ - "DICTIONARY" - ], - "reference": [], - "importedRedactionIntersections": [], - "hint": true, - "recommendation": false, - "falsePositive": false, - "image": false, - "dictionaryEntry": true, - "dossierDictionaryEntry": false, - "localManualRedaction": false, - "manuallyRemoved": false - }, - { - "id": "8dae8a1c06887032507aa97105228632", - "type": "PII", - "value": "Page", - "reason": "Personal information found", - "matchedRule": 19, - "rectangle": false, - "legalBasis": "Article 39(e)(3) of Regulation (EC) No 178/2002", - "imported": false, - "redacted": true, - "section": "Footer", - "color": [ - 0.4, - 0.8, - 1.0 - ], - "positions": [ - { - "topLeft": { - "x": 100.479996, - "y": 69.94202 - }, - "width": 23.304, - "height": -12.642029, - "page": 3 - } - ], - "sectionNumber": 43, - "textBefore": "This is a ", - "textAfter": "-Footer", - "comments": [], - "startOffset": 10, - "endOffset": 14, - "imageHasTransparency": false, - "excluded": false, - "sourceId": null, - "changes": [ - { - "analysisNumber": 0, - "type": "ADDED", - "dateTime": "2022-08-24T16:43:01.03657+02:00" - } - ], - "manualChanges": [], - "engines": [ - "DICTIONARY" - ], - "reference": [], - "importedRedactionIntersections": [], - "hint": false, - "recommendation": false, - "falsePositive": false, - "image": false, - "dictionaryEntry": true, - "dossierDictionaryEntry": false, - "localManualRedaction": false, - "manuallyRemoved": false - }, - { - "id": "d5e7080108b5136d1bfe7d19d9322e32", - "type": "PII", - "value": "Page", - "reason": "Personal information found", - "matchedRule": 19, - "rectangle": false, - "legalBasis": "Article 39(e)(3) of Regulation (EC) No 178/2002", - "imported": false, - "redacted": true, - "section": "Header", - "color": [ - 0.4, - 0.8, - 1.0 - ], - "positions": [ - { - "topLeft": { - "x": 100.479996, - "y": 734.742 - }, - "width": 23.304, - "height": -12.641998, - "page": 3 - } - ], - "sectionNumber": 35, - "textBefore": "This is a ", - "textAfter": "-Header", - "comments": [], - "startOffset": 10, - "endOffset": 14, - "imageHasTransparency": false, - "excluded": false, - "sourceId": null, - "changes": [ - { - "analysisNumber": 0, - "type": "ADDED", - "dateTime": "2022-08-24T16:43:01.036571+02:00" - } - ], - "manualChanges": [], - "engines": [ - "DICTIONARY" - ], - "reference": [], - "importedRedactionIntersections": [], - "hint": false, - "recommendation": false, - "falsePositive": false, - "image": false, - "dictionaryEntry": true, - "dossierDictionaryEntry": false, - "localManualRedaction": false, - "manuallyRemoved": false - }, - { - "id": "cba8de0eefd44b342499cf86e39f73bb", - "type": "vertebrate", - "value": "mouse", - "reason": null, - "matchedRule": 0, - "rectangle": false, - "legalBasis": null, - "imported": false, - "redacted": false, - "section": "Rule: Add recommendation for Addresses in Test Organism/Animals\nsections", - "color": [ - 1.0, - 0.52156866, - 0.96862745 - ], - "positions": [ - { - "topLeft": { - "x": 318.66403, - "y": 643.04205 - }, - "width": 32.604004, - "height": -12.641998, - "page": 3 - } - ], - "sectionNumber": 14, - "textBefore": null, - "textAfter": null, - "comments": [], - "startOffset": 319, - "endOffset": 324, - "imageHasTransparency": false, - "excluded": false, - "sourceId": null, - "changes": [ - { - "analysisNumber": 0, - "type": "ADDED", - "dateTime": "2022-08-24T16:43:01.036571+02:00" - } - ], - "manualChanges": [], - "engines": [ - "DICTIONARY" - ], - "reference": [], - "importedRedactionIntersections": [], - "hint": true, - "recommendation": false, - "falsePositive": false, - "image": false, - "dictionaryEntry": true, - "dossierDictionaryEntry": false, - "localManualRedaction": false, - "manuallyRemoved": false - }, - { - "id": "9b0e30747d674055b044cd2f2fcb8f87", - "type": "vertebrate", - "value": "mouse", - "reason": null, - "matchedRule": 0, - "rectangle": false, - "legalBasis": null, - "imported": false, - "redacted": false, - "section": "Rule: (2/2 additional negative test)", - "color": [ - 1.0, - 0.52156866, - 0.96862745 - ], - "positions": [ - { - "topLeft": { - "x": 336.9161, - "y": 423.54202 - }, - "width": 32.69998, - "height": -12.641998, - "page": 3 - } - ], - "sectionNumber": 16, - "textBefore": null, - "textAfter": null, - "comments": [], - "startOffset": 105, - "endOffset": 110, - "imageHasTransparency": false, - "excluded": false, - "sourceId": null, - "changes": [ - { - "analysisNumber": 0, - "type": "ADDED", - "dateTime": "2022-08-24T16:43:01.036571+02:00" - } - ], - "manualChanges": [], - "engines": [ - "DICTIONARY" - ], - "reference": [], - "importedRedactionIntersections": [], - "hint": true, - "recommendation": false, - "falsePositive": false, - "image": false, - "dictionaryEntry": true, - "dossierDictionaryEntry": false, - "localManualRedaction": false, - "manuallyRemoved": false - }, - { - "id": "ebefb94fc7d83bca28168fb89a005b88", - "type": "PII", - "value": "kawasaki@me.com", - "reason": "Personal information found", - "matchedRule": 21, - "rectangle": false, - "legalBasis": "Article 39(e)(3) of Regulation (EC) No 178/2002", - "imported": false, - "redacted": true, - "section": "Rule: Redact Emails by RegEx", - "color": [ - 0.4, - 0.8, - 1.0 - ], - "positions": [ - { - "topLeft": { - "x": 138.15999, - "y": 457.34204 - }, - "width": 93.888016, - "height": -12.641998, - "page": 4 - } - ], - "sectionNumber": 19, - "textBefore": "proident, sunt in ", - "textAfter": " culpa qui", - "comments": [], - "startOffset": 317, - "endOffset": 332, - "imageHasTransparency": false, - "excluded": false, - "sourceId": null, - "changes": [ - { - "analysisNumber": 0, - "type": "ADDED", - "dateTime": "2022-08-24T16:43:01.036571+02:00" - } - ], - "manualChanges": [], - "engines": [ - "RULE" - ], - "reference": [], - "importedRedactionIntersections": [], - "hint": false, - "recommendation": false, - "falsePositive": false, - "image": false, - "dictionaryEntry": false, - "dossierDictionaryEntry": false, - "localManualRedaction": false, - "manuallyRemoved": false - }, - { - "id": "5e781e7f1109430d4cfa3f21844b4b91", - "type": "PII", - "value": "Özgür U. Reyhan", - "reason": "Personal information found", - "matchedRule": 19, - "rectangle": false, - "legalBasis": "Article 39(e)(3) of Regulation (EC) No 178/2002", - "imported": false, - "redacted": true, - "section": "Rule: Redacted PII Personal Identification Information based on Dict", - "color": [ - 0.4, - 0.8, - 1.0 - ], - "positions": [ - { - "topLeft": { - "x": 56.8, - "y": 633.84204 - }, - "width": 84.276, - "height": -12.641998, - "page": 4 - } - ], - "sectionNumber": 18, - "textBefore": "Sude Halide Nurullah ", - "textAfter": " B. Rahim", - "comments": [], - "startOffset": 213, - "endOffset": 228, - "imageHasTransparency": false, - "excluded": false, - "sourceId": null, - "changes": [ - { - "analysisNumber": 0, - "type": "ADDED", - "dateTime": "2022-08-24T16:43:01.036571+02:00" - } - ], - "manualChanges": [], - "engines": [ - "DICTIONARY" - ], - "reference": [], - "importedRedactionIntersections": [], - "hint": false, - "recommendation": false, - "falsePositive": false, - "image": false, - "dictionaryEntry": true, - "dossierDictionaryEntry": false, - "localManualRedaction": false, - "manuallyRemoved": false - }, - { - "id": "f03e05490be41417d1c690db1a948d36", - "type": "PII", - "value": "Naka-27 Aomachi, Nomi, Ishikawa 923-1101, Japan, JP", - "reason": "Personal information found", - "matchedRule": 19, - "rectangle": false, - "legalBasis": "Article 39(e)(3) of Regulation (EC) No 178/2002", - "imported": false, - "redacted": true, - "section": "Rule: Redacted PII Personal Identification Information based on Dict", - "color": [ - 0.4, - 0.8, - 1.0 - ], - "positions": [ - { - "topLeft": { - "x": 56.8, - "y": 661.442 - }, - "width": 269.41208, - "height": -12.641998, - "page": 4 - } - ], - "sectionNumber": 18, - "textBefore": "Study is No ", - "textAfter": " Sude Halide", - "comments": [], - "startOffset": 140, - "endOffset": 191, - "imageHasTransparency": false, - "excluded": false, - "sourceId": null, - "changes": [ - { - "analysisNumber": 0, - "type": "ADDED", - "dateTime": "2022-08-24T16:43:01.036572+02:00" - } - ], - "manualChanges": [], - "engines": [ - "DICTIONARY" - ], - "reference": [], - "importedRedactionIntersections": [], - "hint": false, - "recommendation": false, - "falsePositive": false, - "image": false, - "dictionaryEntry": true, - "dossierDictionaryEntry": false, - "localManualRedaction": false, - "manuallyRemoved": false - }, - { - "id": "a8de94583a2b9089f127532a93c70c58", - "type": "PII", - "value": "Xinyi Y. Tao", - "reason": "Personal information found", - "matchedRule": 19, - "rectangle": false, - "legalBasis": "Article 39(e)(3) of Regulation (EC) No 178/2002", - "imported": false, - "redacted": true, - "section": "Rule: Redacted PII Personal Identification Information based on Dict", - "color": [ - 0.4, - 0.8, - 1.0 - ], - "positions": [ - { - "topLeft": { - "x": 56.8, - "y": 592.442 - }, - "width": 60.575993, - "height": -12.641998, - "page": 4 - } - ], - "sectionNumber": 18, - "textBefore": "C. J. Alfred ", - "textAfter": " Clara Siegfried", - "comments": [], - "startOffset": 251, - "endOffset": 263, - "imageHasTransparency": false, - "excluded": false, - "sourceId": null, - "changes": [ - { - "analysisNumber": 0, - "type": "ADDED", - "dateTime": "2022-08-24T16:43:01.036572+02:00" - } - ], - "manualChanges": [], - "engines": [ - "DICTIONARY" - ], - "reference": [], - "importedRedactionIntersections": [], - "hint": false, - "recommendation": false, - "falsePositive": false, - "image": false, - "dictionaryEntry": true, - "dossierDictionaryEntry": false, - "localManualRedaction": false, - "manuallyRemoved": false - }, - { - "id": "4e51f006ef94b176a59bdd7af2bd5755", - "type": "PII", - "value": "Sude Halide Nurullah", - "reason": "Personal information found", - "matchedRule": 19, - "rectangle": false, - "legalBasis": "Article 39(e)(3) of Regulation (EC) No 178/2002", - "imported": false, - "redacted": true, - "section": "Rule: Redacted PII Personal Identification Information based on Dict", - "color": [ - 0.4, - 0.8, - 1.0 - ], - "positions": [ - { - "topLeft": { - "x": 56.8, - "y": 647.642 - }, - "width": 104.556, - "height": -12.641998, - "page": 4 - } - ], - "sectionNumber": 18, - "textBefore": "923-1101, Japan, JP ", - "textAfter": " Özgür U.", - "comments": [], - "startOffset": 192, - "endOffset": 212, - "imageHasTransparency": false, - "excluded": false, - "sourceId": null, - "changes": [ - { - "analysisNumber": 0, - "type": "ADDED", - "dateTime": "2022-08-24T16:43:01.036572+02:00" - } - ], - "manualChanges": [], - "engines": [ - "DICTIONARY" - ], - "reference": [], - "importedRedactionIntersections": [], - "hint": false, - "recommendation": false, - "falsePositive": false, - "image": false, - "dictionaryEntry": true, - "dossierDictionaryEntry": false, - "localManualRedaction": false, - "manuallyRemoved": false - }, - { - "id": "67f4d9d9d0b317a3b04caf21d7e9e4eb", - "type": "PII", - "value": "gordonjcp@msn.com", - "reason": "Personal information found", - "matchedRule": 21, - "rectangle": false, - "legalBasis": "Article 39(e)(3) of Regulation (EC) No 178/2002", - "imported": false, - "redacted": true, - "section": "Rule: Redact Emails by RegEx", - "color": [ - 0.4, - 0.8, - 1.0 - ], - "positions": [ - { - "topLeft": { - "x": 404.99225, - "y": 484.94202 - }, - "width": 103.308075, - "height": -12.641998, - "page": 4 - } - ], - "sectionNumber": 19, - "textBefore": "reprehenderit in voluptate ", - "textAfter": " velit esse", - "comments": [], - "startOffset": 172, - "endOffset": 189, - "imageHasTransparency": false, - "excluded": false, - "sourceId": null, - "changes": [ - { - "analysisNumber": 0, - "type": "ADDED", - "dateTime": "2022-08-24T16:43:01.036572+02:00" - } - ], - "manualChanges": [], - "engines": [ - "RULE" - ], - "reference": [], - "importedRedactionIntersections": [], - "hint": false, - "recommendation": false, - "falsePositive": false, - "image": false, - "dictionaryEntry": false, - "dossierDictionaryEntry": false, - "localManualRedaction": false, - "manuallyRemoved": false - }, - { - "id": "cd60a0f6e509f753eb4e1bec39cebb5b", - "type": "PII", - "value": "Page", - "reason": "Personal information found", - "matchedRule": 19, - "rectangle": false, - "legalBasis": "Article 39(e)(3) of Regulation (EC) No 178/2002", - "imported": false, - "redacted": true, - "section": "Footer", - "color": [ - 0.4, - 0.8, - 1.0 - ], - "positions": [ - { - "topLeft": { - "x": 100.479996, - "y": 69.94202 - }, - "width": 23.304, - "height": -12.642029, - "page": 4 - } - ], - "sectionNumber": 44, - "textBefore": "This is a ", - "textAfter": "-Footer", - "comments": [], - "startOffset": 10, - "endOffset": 14, - "imageHasTransparency": false, - "excluded": false, - "sourceId": null, - "changes": [ - { - "analysisNumber": 0, - "type": "ADDED", - "dateTime": "2022-08-24T16:43:01.036573+02:00" - } - ], - "manualChanges": [], - "engines": [ - "DICTIONARY" - ], - "reference": [], - "importedRedactionIntersections": [], - "hint": false, - "recommendation": false, - "falsePositive": false, - "image": false, - "dictionaryEntry": true, - "dossierDictionaryEntry": false, - "localManualRedaction": false, - "manuallyRemoved": false - }, - { - "id": "31f0cd9187984d53106d99fe080b9756", - "type": "PII", - "value": "dinther@comcast.net", - "reason": "Personal information found", - "matchedRule": 21, - "rectangle": false, - "legalBasis": "Article 39(e)(3) of Regulation (EC) No 178/2002", - "imported": false, - "redacted": true, - "section": "Rule: Redact Emails by RegEx", - "color": [ - 0.4, - 0.8, - 1.0 - ], - "positions": [ - { - "topLeft": { - "x": 333.9761, - "y": 471.14203 - }, - "width": 101.904144, - "height": -12.641998, - "page": 4 - } - ], - "sectionNumber": 19, - "textBefore": "pariatur. Excepteur sint ", - "textAfter": " occaecat cupidatat", - "comments": [], - "startOffset": 256, - "endOffset": 275, - "imageHasTransparency": false, - "excluded": false, - "sourceId": null, - "changes": [ - { - "analysisNumber": 0, - "type": "ADDED", - "dateTime": "2022-08-24T16:43:01.036573+02:00" - } - ], - "manualChanges": [], - "engines": [ - "RULE" - ], - "reference": [], - "importedRedactionIntersections": [], - "hint": false, - "recommendation": false, - "falsePositive": false, - "image": false, - "dictionaryEntry": false, - "dossierDictionaryEntry": false, - "localManualRedaction": false, - "manuallyRemoved": false - }, - { - "id": "dfe81db1809e3009b760799f34bc5766", - "type": "PII", - "value": "library@outlook.com", - "reason": "Personal information found", - "matchedRule": 21, - "rectangle": false, - "legalBasis": "Article 39(e)(3) of Regulation (EC) No 178/2002", - "imported": false, - "redacted": true, - "section": "Rule: Redact Emails by RegEx", - "color": [ - 0.4, - 0.8, - 1.0 - ], - "positions": [ - { - "topLeft": { - "x": 171.76, - "y": 484.94202 - }, - "width": 103.296036, - "height": -12.641998, - "page": 4 - } - ], - "sectionNumber": 19, - "textBefore": "irure dolor in ", - "textAfter": " reprehenderit in", - "comments": [], - "startOffset": 125, - "endOffset": 144, - "imageHasTransparency": false, - "excluded": false, - "sourceId": null, - "changes": [ - { - "analysisNumber": 0, - "type": "ADDED", - "dateTime": "2022-08-24T16:43:01.036573+02:00" - } - ], - "manualChanges": [], - "engines": [ - "RULE" - ], - "reference": [], - "importedRedactionIntersections": [], - "hint": false, - "recommendation": false, - "falsePositive": false, - "image": false, - "dictionaryEntry": false, - "dossierDictionaryEntry": false, - "localManualRedaction": false, - "manuallyRemoved": false - }, - { - "id": "d28430c33ca0fbbff570a3b2ceb0cf36", - "type": "PII", - "value": "B. Rahim", - "reason": "Personal information found", - "matchedRule": 19, - "rectangle": false, - "legalBasis": "Article 39(e)(3) of Regulation (EC) No 178/2002", - "imported": false, - "redacted": true, - "section": "Rule: Redacted PII Personal Identification Information based on Dict", - "color": [ - 0.4, - 0.8, - 1.0 - ], - "positions": [ - { - "topLeft": { - "x": 56.8, - "y": 620.04205 - }, - "width": 45.99599, - "height": -12.641998, - "page": 4 - } - ], - "sectionNumber": 18, - "textBefore": "Özgür U. Reyhan ", - "textAfter": " C. J.", - "comments": [], - "startOffset": 229, - "endOffset": 237, - "imageHasTransparency": false, - "excluded": false, - "sourceId": null, - "changes": [ - { - "analysisNumber": 0, - "type": "ADDED", - "dateTime": "2022-08-24T16:43:01.036573+02:00" - } - ], - "manualChanges": [], - "engines": [ - "DICTIONARY" - ], - "reference": [], - "importedRedactionIntersections": [], - "hint": false, - "recommendation": false, - "falsePositive": false, - "image": false, - "dictionaryEntry": true, - "dossierDictionaryEntry": false, - "localManualRedaction": false, - "manuallyRemoved": false - }, - { - "id": "ad8fa6196a3838dad2297d56eda0bed1", - "type": "PII", - "value": "Page", - "reason": "Personal information found", - "matchedRule": 19, - "rectangle": false, - "legalBasis": "Article 39(e)(3) of Regulation (EC) No 178/2002", - "imported": false, - "redacted": true, - "section": "Header", - "color": [ - 0.4, - 0.8, - 1.0 - ], - "positions": [ - { - "topLeft": { - "x": 100.479996, - "y": 734.742 - }, - "width": 23.304, - "height": -12.641998, - "page": 4 - } - ], - "sectionNumber": 36, - "textBefore": "This is a ", - "textAfter": "-Header", - "comments": [], - "startOffset": 10, - "endOffset": 14, - "imageHasTransparency": false, - "excluded": false, - "sourceId": null, - "changes": [ - { - "analysisNumber": 0, - "type": "ADDED", - "dateTime": "2022-08-24T16:43:01.036573+02:00" - } - ], - "manualChanges": [], - "engines": [ - "DICTIONARY" - ], - "reference": [], - "importedRedactionIntersections": [], - "hint": false, - "recommendation": false, - "falsePositive": false, - "image": false, - "dictionaryEntry": true, - "dossierDictionaryEntry": false, - "localManualRedaction": false, - "manuallyRemoved": false - }, - { - "id": "fd3fee79edb5ad7d636c53615cb11fec", - "type": "PII", - "value": "+274 34223331", - "reason": "Personal information found", - "matchedRule": 25, - "rectangle": false, - "legalBasis": "Article 39(e)(2) of Regulation (EC) No 178/2002", - "imported": false, - "redacted": true, - "section": "Table in: Rule: Redact contact information (contains \"Contact point:\")", - "color": [ - 0.4, - 0.8, - 1.0 - ], - "positions": [ - { - "topLeft": { - "x": 350.83902, - "y": 314.9815 - }, - "width": 56.79001, - "height": -10.981506, - "page": 5 - } - ], - "sectionNumber": 21, - "textBefore": "1432 8990 Telephone: ", - "textAfter": " Phone No.", - "comments": [], - "startOffset": 616, - "endOffset": 629, - "imageHasTransparency": false, - "excluded": false, - "sourceId": null, - "changes": [ - { - "analysisNumber": 0, - "type": "ADDED", - "dateTime": "2022-08-24T16:43:01.036574+02:00" - } - ], - "manualChanges": [], - "engines": [ - "RULE" - ], - "reference": [], - "importedRedactionIntersections": [], - "hint": false, - "recommendation": false, - "falsePositive": false, - "image": false, - "dictionaryEntry": false, - "dossierDictionaryEntry": false, - "localManualRedaction": false, - "manuallyRemoved": false - }, - { - "id": "329e59bc98f9137764def10a3a3c32a5", - "type": "PII", - "value": "+27414328992", - "reason": "Personal information found", - "matchedRule": 23, - "rectangle": false, - "legalBasis": "Article 39(e)(3) of Regulation (EC) No 178/2002", - "imported": false, - "redacted": true, - "section": "Table in: Rule: Redact contact information (contains \"Contact point:\")", - "color": [ - 0.4, - 0.8, - 1.0 - ], - "positions": [ - { - "topLeft": { - "x": 380.61105, - "y": 345.9815 - }, - "width": 54.503998, - "height": -10.981506, - "page": 5 - } - ], - "sectionNumber": 21, - "textBefore": "Schmitt Telephone number: ", - "textAfter": " Telephone No:", - "comments": [], - "startOffset": 536, - "endOffset": 548, - "imageHasTransparency": false, - "excluded": false, - "sourceId": null, - "changes": [ - { - "analysisNumber": 0, - "type": "ADDED", - "dateTime": "2022-08-24T16:43:01.036574+02:00" - } - ], - "manualChanges": [], - "engines": [ - "RULE" - ], - "reference": [], - "importedRedactionIntersections": [], - "hint": false, - "recommendation": false, - "falsePositive": false, - "image": false, - "dictionaryEntry": false, - "dossierDictionaryEntry": false, - "localManualRedaction": false, - "manuallyRemoved": false - }, - { - "id": "4d631567bb6f2e9285317ab957618e1c", - "type": "PII", - "value": "Seriknowmobil@co.uk", - "reason": "Personal information found", - "matchedRule": 23, - "rectangle": false, - "legalBasis": "Article 39(e)(3) of Regulation (EC) No 178/2002", - "imported": false, - "redacted": true, - "section": "Table in: Rule: Redact contact information (contains \"Contact point:\")", - "color": [ - 0.4, - 0.8, - 1.0 - ], - "positions": [ - { - "topLeft": { - "x": 338.04105, - "y": 397.7815 - }, - "width": 83.43005, - "height": -10.981506, - "page": 5 - } - ], - "sectionNumber": 21, - "textBefore": "6653 44563 E-mail: ", - "textAfter": " Email: maximiliamschmitt@arcor.de", - "comments": [], - "startOffset": 365, - "endOffset": 384, - "imageHasTransparency": false, - "excluded": false, - "sourceId": null, - "changes": [ - { - "analysisNumber": 0, - "type": "ADDED", - "dateTime": "2022-08-24T16:43:01.036574+02:00" - } - ], - "manualChanges": [], - "engines": [ - "RULE" - ], - "reference": [], - "importedRedactionIntersections": [], - "hint": false, - "recommendation": false, - "falsePositive": false, - "image": false, - "dictionaryEntry": false, - "dossierDictionaryEntry": false, - "localManualRedaction": false, - "manuallyRemoved": false - }, - { - "id": "d04984817b6ca07cf7b5d86c13ea1c11", - "type": "PII", - "value": "Emilia Lockhart", - "reason": "Personal information found", - "matchedRule": 23, - "rectangle": false, - "legalBasis": "Article 39(e)(3) of Regulation (EC) No 178/2002", - "imported": false, - "redacted": true, - "section": "Table in: Rule: Redact contact information (contains \"Contact point:\")", - "color": [ - 0.4, - 0.8, - 1.0 - ], - "positions": [ - { - "topLeft": { - "x": 382.1681, - "y": 273.58148 - }, - "width": 58.59906, - "height": -10.981506, - "page": 5 - } - ], - "sectionNumber": 21, - "textBefore": "Institute Alternative contact: ", - "textAfter": " Alternative contact:", - "comments": [], - "startOffset": 744, - "endOffset": 759, - "imageHasTransparency": false, - "excluded": false, - "sourceId": null, - "changes": [ - { - "analysisNumber": 0, - "type": "ADDED", - "dateTime": "2022-08-24T16:43:01.036574+02:00" - } - ], - "manualChanges": [], - "engines": [ - "RULE" - ], - "reference": [], - "importedRedactionIntersections": [], - "hint": false, - "recommendation": false, - "falsePositive": false, - "image": false, - "dictionaryEntry": false, - "dossierDictionaryEntry": false, - "localManualRedaction": false, - "manuallyRemoved": false - }, - { - "id": "3e890a0654b20c0af614b9ea29388fca", - "type": "PII", - "value": "maximiliamschmitt@arcor.de", - "reason": "Personal information found", - "matchedRule": 23, - "rectangle": false, - "legalBasis": "Article 39(e)(3) of Regulation (EC) No 178/2002", - "imported": false, - "redacted": true, - "section": "Table in: Rule: Redact contact information (contains \"Contact point:\")", - "color": [ - 0.4, - 0.8, - 1.0 - ], - "positions": [ - { - "topLeft": { - "x": 335.04404, - "y": 387.3815 - }, - "width": 106.83017, - "height": -10.981506, - "page": 5 - } - ], - "sectionNumber": 21, - "textBefore": "E-mail: Seriknowmobil@co.uk Email: ", - "textAfter": " e-mail: maximiliamschmitt@t-online.de", - "comments": [], - "startOffset": 392, - "endOffset": 418, - "imageHasTransparency": false, - "excluded": false, - "sourceId": null, - "changes": [ - { - "analysisNumber": 0, - "type": "ADDED", - "dateTime": "2022-08-24T16:43:01.036575+02:00" - } - ], - "manualChanges": [], - "engines": [ - "RULE" - ], - "reference": [], - "importedRedactionIntersections": [], - "hint": false, - "recommendation": false, - "falsePositive": false, - "image": false, - "dictionaryEntry": false, - "dossierDictionaryEntry": false, - "localManualRedaction": false, - "manuallyRemoved": false - }, - { - "id": "1938a09344ec04ec62c8d408d0af3450", - "type": "PII", - "value": "+274 1432 8933", - "reason": "Personal information found", - "matchedRule": 23, - "rectangle": false, - "legalBasis": "Article 39(e)(3) of Regulation (EC) No 178/2002", - "imported": false, - "redacted": true, - "section": "Table in: Rule: Redact contact information (contains \"Contact point:\")", - "color": [ - 0.4, - 0.8, - 1.0 - ], - "positions": [ - { - "topLeft": { - "x": 349.075, - "y": 304.5815 - }, - "width": 59.085022, - "height": -10.981506, - "page": 5 - } - ], - "sectionNumber": 21, - "textBefore": "34223331 Phone No. ", - "textAfter": " Contact: 493", - "comments": [], - "startOffset": 640, - "endOffset": 654, - "imageHasTransparency": false, - "excluded": false, - "sourceId": null, - "changes": [ - { - "analysisNumber": 0, - "type": "ADDED", - "dateTime": "2022-08-24T16:43:01.036575+02:00" - } - ], - "manualChanges": [], - "engines": [ - "RULE" - ], - "reference": [], - "importedRedactionIntersections": [], - "hint": false, - "recommendation": false, - "falsePositive": false, - "image": false, - "dictionaryEntry": false, - "dossierDictionaryEntry": false, - "localManualRedaction": false, - "manuallyRemoved": false - }, - { - "id": "de467da93491d645a8c55ee2d07ef6da", - "type": "PII", - "value": "+55 1221 3431 14", - "reason": "Personal information found", - "matchedRule": 25, - "rectangle": false, - "legalBasis": "Article 39(e)(2) of Regulation (EC) No 178/2002", - "imported": false, - "redacted": true, - "section": "Rule: Redact contact information (contains \"Contact point:\")", - "color": [ - 0.4, - 0.8, - 1.0 - ], - "positions": [ - { - "topLeft": { - "x": 164.8, - "y": 484.34204 - }, - "width": 87.79199, - "height": -12.641998, - "page": 5 - } - ], - "sectionNumber": 23, - "textBefore": "be redacted Fax ", - "textAfter": null, - "comments": [], - "startOffset": 570, - "endOffset": 586, - "imageHasTransparency": false, - "excluded": false, - "sourceId": null, - "changes": [ - { - "analysisNumber": 0, - "type": "ADDED", - "dateTime": "2022-08-24T16:43:01.036576+02:00" - } - ], - "manualChanges": [], - "engines": [ - "RULE" - ], - "reference": [], - "importedRedactionIntersections": [], - "hint": false, - "recommendation": false, - "falsePositive": false, - "image": false, - "dictionaryEntry": false, - "dossierDictionaryEntry": false, - "localManualRedaction": false, - "manuallyRemoved": false - }, - { - "id": "318c142244f4fdde2b40981dd70ab353", - "type": "PII", - "value": "Page", - "reason": "Personal information found", - "matchedRule": 19, - "rectangle": false, - "legalBasis": "Article 39(e)(3) of Regulation (EC) No 178/2002", - "imported": false, - "redacted": true, - "section": "Footer", - "color": [ - 0.4, - 0.8, - 1.0 - ], - "positions": [ - { - "topLeft": { - "x": 100.479996, - "y": 69.94202 - }, - "width": 23.304, - "height": -12.642029, - "page": 5 - } - ], - "sectionNumber": 45, - "textBefore": "This is a ", - "textAfter": "-Footer", - "comments": [], - "startOffset": 10, - "endOffset": 14, - "imageHasTransparency": false, - "excluded": false, - "sourceId": null, - "changes": [ - { - "analysisNumber": 0, - "type": "ADDED", - "dateTime": "2022-08-24T16:43:01.036576+02:00" - } - ], - "manualChanges": [], - "engines": [ - "DICTIONARY" - ], - "reference": [], - "importedRedactionIntersections": [], - "hint": false, - "recommendation": false, - "falsePositive": false, - "image": false, - "dictionaryEntry": true, - "dossierDictionaryEntry": false, - "localManualRedaction": false, - "manuallyRemoved": false - }, - { - "id": "f5bd3a0921331158533230b006c642e0", - "type": "PII", - "value": "+55 1221 3431 13", - "reason": "Personal information found", - "matchedRule": 25, - "rectangle": false, - "legalBasis": "Article 39(e)(2) of Regulation (EC) No 178/2002", - "imported": false, - "redacted": true, - "section": "Rule: Redact contact information (contains \"Contact point:\")", - "color": [ - 0.4, - 0.8, - 1.0 - ], - "positions": [ - { - "topLeft": { - "x": 164.8, - "y": 525.742 - }, - "width": 87.79199, - "height": -12.641998, - "page": 5 - } - ], - "sectionNumber": 23, - "textBefore": "be redacted Tel.: ", - "textAfter": " No: This", - "comments": [], - "startOffset": 457, - "endOffset": 473, - "imageHasTransparency": false, - "excluded": false, - "sourceId": null, - "changes": [ - { - "analysisNumber": 0, - "type": "ADDED", - "dateTime": "2022-08-24T16:43:01.036576+02:00" - } - ], - "manualChanges": [], - "engines": [ - "RULE" - ], - "reference": [], - "importedRedactionIntersections": [], - "hint": false, - "recommendation": false, - "falsePositive": false, - "image": false, - "dictionaryEntry": false, - "dossierDictionaryEntry": false, - "localManualRedaction": false, - "manuallyRemoved": false - }, - { - "id": "6956bc0e757963e6e6b9e3abe0f442ed", - "type": "PII", - "value": "This is a special case, everything between this and the next keyword should be redacted", - "reason": "Personal information found", - "matchedRule": 23, - "rectangle": false, - "legalBasis": "Article 39(e)(3) of Regulation (EC) No 178/2002", - "imported": false, - "redacted": true, - "section": "Rule: Redact contact information (contains \"Contact point:\")", - "color": [ - 0.4, - 0.8, - 1.0 - ], - "positions": [ - { - "topLeft": { - "x": 164.8, - "y": 553.34204 - }, - "width": 282.8523, - "height": -12.641998, - "page": 5 - }, - { - "topLeft": { - "x": 164.8, - "y": 539.54205 - }, - "width": 134.88008, - "height": -12.641998, - "page": 5 - } - ], - "sectionNumber": 23, - "textBefore": "E-mail: shinrorg@saopu.com.br Contact: ", - "textAfter": " Tel.: +55", - "comments": [], - "startOffset": 363, - "endOffset": 450, - "imageHasTransparency": false, - "excluded": false, - "sourceId": null, - "changes": [ - { - "analysisNumber": 0, - "type": "ADDED", - "dateTime": "2022-08-24T16:43:01.036576+02:00" - } - ], - "manualChanges": [], - "engines": [ - "RULE" - ], - "reference": [], - "importedRedactionIntersections": [], - "hint": false, - "recommendation": false, - "falsePositive": false, - "image": false, - "dictionaryEntry": false, - "dossierDictionaryEntry": false, - "localManualRedaction": false, - "manuallyRemoved": false - }, - { - "id": "1397437aa63807fc1993b184cb12cc88", - "type": "PII", - "value": "+55 1221 3431 12", - "reason": "Personal information found", - "matchedRule": 25, - "rectangle": false, - "legalBasis": "Article 39(e)(2) of Regulation (EC) No 178/2002", - "imported": false, - "redacted": true, - "section": "Rule: Redact contact information (contains \"Contact point:\")", - "color": [ - 0.4, - 0.8, - 1.0 - ], - "positions": [ - { - "topLeft": { - "x": 164.8, - "y": 594.742 - }, - "width": 87.79199, - "height": -12.641998, - "page": 5 - } - ], - "sectionNumber": 23, - "textBefore": "TX, USA Phone: ", - "textAfter": " Fax: +55", - "comments": [], - "startOffset": 285, - "endOffset": 301, - "imageHasTransparency": false, - "excluded": false, - "sourceId": null, - "changes": [ - { - "analysisNumber": 0, - "type": "ADDED", - "dateTime": "2022-08-24T16:43:01.036577+02:00" - } - ], - "manualChanges": [], - "engines": [ - "RULE" - ], - "reference": [], - "importedRedactionIntersections": [], - "hint": false, - "recommendation": false, - "falsePositive": false, - "image": false, - "dictionaryEntry": false, - "dossierDictionaryEntry": false, - "localManualRedaction": false, - "manuallyRemoved": false - }, - { - "id": "82bbab698629750e6b369a357c8ca3a5", - "type": "PII", - "value": "Page", - "reason": "Personal information found", - "matchedRule": 19, - "rectangle": false, - "legalBasis": "Article 39(e)(3) of Regulation (EC) No 178/2002", - "imported": false, - "redacted": true, - "section": "Header", - "color": [ - 0.4, - 0.8, - 1.0 - ], - "positions": [ - { - "topLeft": { - "x": 100.479996, - "y": 734.742 - }, - "width": 23.304, - "height": -12.641998, - "page": 5 - } - ], - "sectionNumber": 37, - "textBefore": "This is a ", - "textAfter": "-Header", - "comments": [], - "startOffset": 10, - "endOffset": 14, - "imageHasTransparency": false, - "excluded": false, - "sourceId": null, - "changes": [ - { - "analysisNumber": 0, - "type": "ADDED", - "dateTime": "2022-08-24T16:43:01.036577+02:00" - } - ], - "manualChanges": [], - "engines": [ - "DICTIONARY" - ], - "reference": [], - "importedRedactionIntersections": [], - "hint": false, - "recommendation": false, - "falsePositive": false, - "image": false, - "dictionaryEntry": true, - "dossierDictionaryEntry": false, - "localManualRedaction": false, - "manuallyRemoved": false - }, - { - "id": "9fe56b2f3d0aeb3b1b18c7ffd02a9523", - "type": "PII", - "value": "European Central Institute", - "reason": "Personal information found", - "matchedRule": 23, - "rectangle": false, - "legalBasis": "Article 39(e)(3) of Regulation (EC) No 178/2002", - "imported": false, - "redacted": true, - "section": "Table in: Rule: Redact contact information (contains \"Contact point:\")", - "color": [ - 0.4, - 0.8, - 1.0 - ], - "positions": [ - { - "topLeft": { - "x": 376.20105, - "y": 283.88153 - }, - "width": 94.77011, - "height": -10.981506, - "page": 5 - } - ], - "sectionNumber": 21, - "textBefore": "4592 European contact: ", - "textAfter": " Alternative contact:", - "comments": [], - "startOffset": 696, - "endOffset": 722, - "imageHasTransparency": false, - "excluded": false, - "sourceId": null, - "changes": [ - { - "analysisNumber": 0, - "type": "ADDED", - "dateTime": "2022-08-24T16:43:01.036577+02:00" - } - ], - "manualChanges": [], - "engines": [ - "RULE" - ], - "reference": [], - "importedRedactionIntersections": [], - "hint": false, - "recommendation": false, - "falsePositive": false, - "image": false, - "dictionaryEntry": false, - "dossierDictionaryEntry": false, - "localManualRedaction": false, - "manuallyRemoved": false - }, - { - "id": "987d05fa4e603f5d40ec23c79713eb36", - "type": "PII", - "value": "shinrorg@saopu.com.br", - "reason": "Personal information found", - "matchedRule": 23, - "rectangle": false, - "legalBasis": "Article 39(e)(3) of Regulation (EC) No 178/2002", - "imported": false, - "redacted": true, - "section": "Rule: Redact contact information (contains \"Contact point:\")", - "color": [ - 0.4, - 0.8, - 1.0 - ], - "positions": [ - { - "topLeft": { - "x": 164.8, - "y": 567.142 - }, - "width": 115.47603, - "height": -12.641998, - "page": 5 - } - ], - "sectionNumber": 23, - "textBefore": "3431 10 E-mail: ", - "textAfter": " Contact: This", - "comments": [], - "startOffset": 332, - "endOffset": 353, - "imageHasTransparency": false, - "excluded": false, - "sourceId": null, - "changes": [ - { - "analysisNumber": 0, - "type": "ADDED", - "dateTime": "2022-08-24T16:43:01.036577+02:00" - } - ], - "manualChanges": [], - "engines": [ - "RULE" - ], - "reference": [], - "importedRedactionIntersections": [], - "hint": false, - "recommendation": false, - "falsePositive": false, - "image": false, - "dictionaryEntry": false, - "dossierDictionaryEntry": false, - "localManualRedaction": false, - "manuallyRemoved": false - }, - { - "id": "9fdbea097a30463adbc050a6ce674668", - "type": "PII", - "value": "example@mail.com", - "reason": "Personal information found", - "matchedRule": 23, - "rectangle": false, - "legalBasis": "Article 39(e)(3) of Regulation (EC) No 178/2002", - "imported": false, - "redacted": true, - "section": "Table in: Rule: Redact contact information (contains \"Contact point:\")", - "color": [ - 0.4, - 0.8, - 1.0 - ], - "positions": [ - { - "topLeft": { - "x": 367.21008, - "y": 366.68152 - }, - "width": 72.387085, - "height": -10.981506, - "page": 5 - } - ], - "sectionNumber": 21, - "textBefore": "maximiliamschmitt@t-online.de E-mail address: ", - "textAfter": " Contact: Maximiliam", - "comments": [], - "startOffset": 473, - "endOffset": 489, - "imageHasTransparency": false, - "excluded": false, - "sourceId": null, - "changes": [ - { - "analysisNumber": 0, - "type": "ADDED", - "dateTime": "2022-08-24T16:43:01.036577+02:00" - } - ], - "manualChanges": [], - "engines": [ - "RULE" - ], - "reference": [], - "importedRedactionIntersections": [], - "hint": false, - "recommendation": false, - "falsePositive": false, - "image": false, - "dictionaryEntry": false, - "dossierDictionaryEntry": false, - "localManualRedaction": false, - "manuallyRemoved": false - }, - { - "id": "e9c88d8de6eaaa1d4d418b84bd011f4e", - "type": "PII", - "value": "Maximiliam Schmitt", - "reason": "Personal information found", - "matchedRule": 23, - "rectangle": false, - "legalBasis": "Article 39(e)(3) of Regulation (EC) No 178/2002", - "imported": false, - "redacted": true, - "section": "Table in: Rule: Redact contact information (contains \"Contact point:\")", - "color": [ - 0.4, - 0.8, - 1.0 - ], - "positions": [ - { - "topLeft": { - "x": 341.54202, - "y": 356.3815 - }, - "width": 74.601135, - "height": -10.981506, - "page": 5 - } - ], - "sectionNumber": 21, - "textBefore": "address: example@mail.com Contact: ", - "textAfter": " Telephone number:", - "comments": [], - "startOffset": 499, - "endOffset": 517, - "imageHasTransparency": false, - "excluded": false, - "sourceId": null, - "changes": [ - { - "analysisNumber": 0, - "type": "ADDED", - "dateTime": "2022-08-24T16:43:01.036578+02:00" - } - ], - "manualChanges": [], - "engines": [ - "RULE" - ], - "reference": [], - "importedRedactionIntersections": [], - "hint": false, - "recommendation": false, - "falsePositive": false, - "image": false, - "dictionaryEntry": false, - "dossierDictionaryEntry": false, - "localManualRedaction": false, - "manuallyRemoved": false - }, - { - "id": "0cac354b943b0a9dd0a0fa95cbbc4687", - "type": "PII", - "value": "493 1223 4592", - "reason": "Personal information found", - "matchedRule": 23, - "rectangle": false, - "legalBasis": "Article 39(e)(3) of Regulation (EC) No 178/2002", - "imported": false, - "redacted": true, - "section": "Table in: Rule: Redact contact information (contains \"Contact point:\")", - "color": [ - 0.4, - 0.8, - 1.0 - ], - "positions": [ - { - "topLeft": { - "x": 341.54202, - "y": 294.2815 - }, - "width": 53.991028, - "height": -10.981506, - "page": 5 - } - ], - "sectionNumber": 21, - "textBefore": "1432 8933 Contact: ", - "textAfter": " European contact:", - "comments": [], - "startOffset": 664, - "endOffset": 677, - "imageHasTransparency": false, - "excluded": false, - "sourceId": null, - "changes": [ - { - "analysisNumber": 0, - "type": "ADDED", - "dateTime": "2022-08-24T16:43:01.036578+02:00" - } - ], - "manualChanges": [], - "engines": [ - "RULE" - ], - "reference": [], - "importedRedactionIntersections": [], - "hint": false, - "recommendation": false, - "falsePositive": false, - "image": false, - "dictionaryEntry": false, - "dossierDictionaryEntry": false, - "localManualRedaction": false, - "manuallyRemoved": false - }, - { - "id": "03af4eabd3e1ccf18533c0ae66021f05", - "type": "PII", - "value": "maximiliamschmitt@t-online.de", - "reason": "Personal information found", - "matchedRule": 23, - "rectangle": false, - "legalBasis": "Article 39(e)(3) of Regulation (EC) No 178/2002", - "imported": false, - "redacted": true, - "section": "Table in: Rule: Redact contact information (contains \"Contact point:\")", - "color": [ - 0.4, - 0.8, - 1.0 - ], - "positions": [ - { - "topLeft": { - "x": 336.53806, - "y": 377.0815 - }, - "width": 116.82919, - "height": -10.981506, - "page": 5 - } - ], - "sectionNumber": 21, - "textBefore": "Email: maximiliamschmitt@arcor.de e-mail: ", - "textAfter": " E-mail address:", - "comments": [], - "startOffset": 427, - "endOffset": 456, - "imageHasTransparency": false, - "excluded": false, - "sourceId": null, - "changes": [ - { - "analysisNumber": 0, - "type": "ADDED", - "dateTime": "2022-08-24T16:43:01.036578+02:00" - } - ], - "manualChanges": [], - "engines": [ - "RULE" - ], - "reference": [], - "importedRedactionIntersections": [], - "hint": false, - "recommendation": false, - "falsePositive": false, - "image": false, - "dictionaryEntry": false, - "dossierDictionaryEntry": false, - "localManualRedaction": false, - "manuallyRemoved": false - }, - { - "id": "7908316fc56f1ff18fa053bffb0d841a", - "type": "PII", - "value": "Tiffany Umbrella", - "reason": "Personal information found", - "matchedRule": 23, - "rectangle": false, - "legalBasis": "Article 39(e)(3) of Regulation (EC) No 178/2002", - "imported": false, - "redacted": true, - "section": "Rule: Redact contact information (contains \"Contact point:\")", - "color": [ - 0.4, - 0.8, - 1.0 - ], - "positions": [ - { - "topLeft": { - "x": 164.8, - "y": 636.142 - }, - "width": 83.592026, - "height": -12.641998, - "page": 5 - } - ], - "sectionNumber": 23, - "textBefore": "Organisation Contact point: ", - "textAfter": " Address: Goldstreet", - "comments": [], - "startOffset": 223, - "endOffset": 239, - "imageHasTransparency": false, - "excluded": false, - "sourceId": null, - "changes": [ - { - "analysisNumber": 0, - "type": "ADDED", - "dateTime": "2022-08-24T16:43:01.036578+02:00" - } - ], - "manualChanges": [], - "engines": [ - "RULE" - ], - "reference": [], - "importedRedactionIntersections": [], - "hint": false, - "recommendation": false, - "falsePositive": false, - "image": false, - "dictionaryEntry": false, - "dossierDictionaryEntry": false, - "localManualRedaction": false, - "manuallyRemoved": false - }, - { - "id": "e544f9bb7bed1631a8c0ef4596ca5e16", - "type": "PII", - "value": "+274 1432 8990", - "reason": "Personal information found", - "matchedRule": 23, - "rectangle": false, - "legalBasis": "Article 39(e)(3) of Regulation (EC) No 178/2002", - "imported": false, - "redacted": true, - "section": "Table in: Rule: Redact contact information (contains \"Contact point:\")", - "color": [ - 0.4, - 0.8, - 1.0 - ], - "positions": [ - { - "topLeft": { - "x": 356.75204, - "y": 325.2815 - }, - "width": 59.085022, - "height": -10.981506, - "page": 5 - } - ], - "sectionNumber": 21, - "textBefore": "8991 Fax number: ", - "textAfter": " Telephone: +274", - "comments": [], - "startOffset": 590, - "endOffset": 604, - "imageHasTransparency": false, - "excluded": false, - "sourceId": null, - "changes": [ - { - "analysisNumber": 0, - "type": "ADDED", - "dateTime": "2022-08-24T16:43:01.036579+02:00" - } - ], - "manualChanges": [], - "engines": [ - "RULE" - ], - "reference": [], - "importedRedactionIntersections": [], - "hint": false, - "recommendation": false, - "falsePositive": false, - "image": false, - "dictionaryEntry": false, - "dossierDictionaryEntry": false, - "localManualRedaction": false, - "manuallyRemoved": false - }, - { - "id": "4fb023c952280dc954630c168adffbf5", - "type": "PII", - "value": "+81 6653 44563", - "reason": "Personal information found", - "matchedRule": 25, - "rectangle": false, - "legalBasis": "Article 39(e)(2) of Regulation (EC) No 178/2002", - "imported": false, - "redacted": true, - "section": "Table in: Rule: Redact contact information (contains \"Contact point:\")", - "color": [ - 0.4, - 0.8, - 1.0 - ], - "positions": [ - { - "topLeft": { - "x": 324.86502, - "y": 408.0815 - }, - "width": 59.085022, - "height": -10.981506, - "page": 5 - } - ], - "sectionNumber": 21, - "textBefore": "+81 764770164 Tel: ", - "textAfter": " E-mail: Seriknowmobil@co.uk", - "comments": [], - "startOffset": 342, - "endOffset": 356, - "imageHasTransparency": false, - "excluded": false, - "sourceId": null, - "changes": [ - { - "analysisNumber": 0, - "type": "ADDED", - "dateTime": "2022-08-24T16:43:01.036579+02:00" - } - ], - "manualChanges": [], - "engines": [ - "RULE" - ], - "reference": [], - "importedRedactionIntersections": [], - "hint": false, - "recommendation": false, - "falsePositive": false, - "image": false, - "dictionaryEntry": false, - "dossierDictionaryEntry": false, - "localManualRedaction": false, - "manuallyRemoved": false - }, - { - "id": "26eb1a4ffce1dded6b087b6bdbf6bb09", - "type": "PII", - "value": "+55 1221 3431 10", - "reason": "Personal information found", - "matchedRule": 25, - "rectangle": false, - "legalBasis": "Article 39(e)(2) of Regulation (EC) No 178/2002", - "imported": false, - "redacted": true, - "section": "Rule: Redact contact information (contains \"Contact point:\")", - "color": [ - 0.4, - 0.8, - 1.0 - ], - "positions": [ - { - "topLeft": { - "x": 164.8, - "y": 580.942 - }, - "width": 87.79199, - "height": -12.641998, - "page": 5 - } - ], - "sectionNumber": 23, - "textBefore": "3431 12 Fax: ", - "textAfter": " E-mail: shinrorg@saopu.com.br", - "comments": [], - "startOffset": 307, - "endOffset": 323, - "imageHasTransparency": false, - "excluded": false, - "sourceId": null, - "changes": [ - { - "analysisNumber": 0, - "type": "ADDED", - "dateTime": "2022-08-24T16:43:01.036579+02:00" - } - ], - "manualChanges": [], - "engines": [ - "RULE" - ], - "reference": [], - "importedRedactionIntersections": [], - "hint": false, - "recommendation": false, - "falsePositive": false, - "image": false, - "dictionaryEntry": false, - "dossierDictionaryEntry": false, - "localManualRedaction": false, - "manuallyRemoved": false - }, - { - "id": "eb12a51e4239d9705f19ddfb47449ebe", - "type": "PII", - "value": "Central Research Industry", - "reason": "Personal information found", - "matchedRule": 23, - "rectangle": false, - "legalBasis": "Article 39(e)(3) of Regulation (EC) No 178/2002", - "imported": false, - "redacted": true, - "section": "Table in: Rule: Redact contact information (contains \"Contact point:\")", - "color": [ - 0.4, - 0.8, - 1.0 - ], - "positions": [ - { - "topLeft": { - "x": 362.22406, - "y": 449.4815 - }, - "width": 93.87009, - "height": -10.981506, - "page": 5 - } - ], - "sectionNumber": 21, - "textBefore": "Contact point: ", - "textAfter": " Phone: +49", - "comments": [], - "startOffset": 243, - "endOffset": 268, - "imageHasTransparency": false, - "excluded": false, - "sourceId": null, - "changes": [ - { - "analysisNumber": 0, - "type": "ADDED", - "dateTime": "2022-08-24T16:43:01.036579+02:00" - } - ], - "manualChanges": [], - "engines": [ - "RULE" - ], - "reference": [], - "importedRedactionIntersections": [], - "hint": false, - "recommendation": false, - "falsePositive": false, - "image": false, - "dictionaryEntry": false, - "dossierDictionaryEntry": false, - "localManualRedaction": false, - "manuallyRemoved": false - }, - { - "id": "d6db758f877b26bbd75bace4f2245ec1", - "type": "PII", - "value": "This is a special case, everything between this and the next keyword should be redacted", - "reason": "Personal information found", - "matchedRule": 23, - "rectangle": false, - "legalBasis": "Article 39(e)(3) of Regulation (EC) No 178/2002", - "imported": false, - "redacted": true, - "section": "Rule: Redact contact information (contains \"Contact point:\")", - "color": [ - 0.4, - 0.8, - 1.0 - ], - "positions": [ - { - "topLeft": { - "x": 164.8, - "y": 511.94202 - }, - "width": 282.8523, - "height": -12.641998, - "page": 5 - }, - { - "topLeft": { - "x": 164.8, - "y": 498.14203 - }, - "width": 134.88008, - "height": -12.641998, - "page": 5 - } - ], - "sectionNumber": 23, - "textBefore": "3431 13 No: ", - "textAfter": " Fax +55", - "comments": [], - "startOffset": 478, - "endOffset": 565, - "imageHasTransparency": false, - "excluded": false, - "sourceId": null, - "changes": [ - { - "analysisNumber": 0, - "type": "ADDED", - "dateTime": "2022-08-24T16:43:01.03658+02:00" - } - ], - "manualChanges": [], - "engines": [ - "RULE" - ], - "reference": [], - "importedRedactionIntersections": [], - "hint": false, - "recommendation": false, - "falsePositive": false, - "image": false, - "dictionaryEntry": false, - "dossierDictionaryEntry": false, - "localManualRedaction": false, - "manuallyRemoved": false - }, - { - "id": "58e468d117f14307ca84f4b8e7b7e06b", - "type": "PII", - "value": "+49 2113 2311 563", - "reason": "Personal information found", - "matchedRule": 25, - "rectangle": false, - "legalBasis": "Article 39(e)(2) of Regulation (EC) No 178/2002", - "imported": false, - "redacted": true, - "section": "Table in: Rule: Redact contact information (contains \"Contact point:\")", - "color": [ - 0.4, - 0.8, - 1.0 - ], - "positions": [ - { - "topLeft": { - "x": 336.079, - "y": 439.18152 - }, - "width": 69.58804, - "height": -10.981506, - "page": 5 - } - ], - "sectionNumber": 21, - "textBefore": "Research Industry Phone: ", - "textAfter": " Fax: +49", - "comments": [], - "startOffset": 276, - "endOffset": 293, - "imageHasTransparency": false, - "excluded": false, - "sourceId": null, - "changes": [ - { - "analysisNumber": 0, - "type": "ADDED", - "dateTime": "2022-08-24T16:43:01.03658+02:00" - } - ], - "manualChanges": [], - "engines": [ - "RULE" - ], - "reference": [], - "importedRedactionIntersections": [], - "hint": false, - "recommendation": false, - "falsePositive": false, - "image": false, - "dictionaryEntry": false, - "dossierDictionaryEntry": false, - "localManualRedaction": false, - "manuallyRemoved": false - }, - { - "id": "c4c4695c91aae19c8ff54260ac7336a1", - "type": "PII", - "value": "+81 764770164", - "reason": "Personal information found", - "matchedRule": 25, - "rectangle": false, - "legalBasis": "Article 39(e)(2) of Regulation (EC) No 178/2002", - "imported": false, - "redacted": true, - "section": "Table in: Rule: Redact contact information (contains \"Contact point:\")", - "color": [ - 0.4, - 0.8, - 1.0 - ], - "positions": [ - { - "topLeft": { - "x": 327.16904, - "y": 418.4815 - }, - "width": 56.79001, - "height": -10.981506, - "page": 5 - } - ], - "sectionNumber": 21, - "textBefore": "2311 560 Tel.: ", - "textAfter": " Tel: +81", - "comments": [], - "startOffset": 323, - "endOffset": 336, - "imageHasTransparency": false, - "excluded": false, - "sourceId": null, - "changes": [ - { - "analysisNumber": 0, - "type": "ADDED", - "dateTime": "2022-08-24T16:43:01.03658+02:00" - } - ], - "manualChanges": [], - "engines": [ - "RULE" - ], - "reference": [], - "importedRedactionIntersections": [], - "hint": false, - "recommendation": false, - "falsePositive": false, - "image": false, - "dictionaryEntry": false, - "dossierDictionaryEntry": false, - "localManualRedaction": false, - "manuallyRemoved": false - }, - { - "id": "df7bdf4b8e2cf07a32eda981a952a00e", - "type": "PII", - "value": "+274 1432 8991", - "reason": "Personal information found", - "matchedRule": 23, - "rectangle": false, - "legalBasis": "Article 39(e)(3) of Regulation (EC) No 178/2002", - "imported": false, - "redacted": true, - "section": "Table in: Rule: Redact contact information (contains \"Contact point:\")", - "color": [ - 0.4, - 0.8, - 1.0 - ], - "positions": [ - { - "topLeft": { - "x": 364.13202, - "y": 335.68152 - }, - "width": 58.995026, - "height": -10.981506, - "page": 5 - } - ], - "sectionNumber": 21, - "textBefore": "+27414328992 Telephone No: ", - "textAfter": " Fax number:", - "comments": [], - "startOffset": 563, - "endOffset": 577, - "imageHasTransparency": false, - "excluded": false, - "sourceId": null, - "changes": [ - { - "analysisNumber": 0, - "type": "ADDED", - "dateTime": "2022-08-24T16:43:01.03658+02:00" - } - ], - "manualChanges": [], - "engines": [ - "RULE" - ], - "reference": [], - "importedRedactionIntersections": [], - "hint": false, - "recommendation": false, - "falsePositive": false, - "image": false, - "dictionaryEntry": false, - "dossierDictionaryEntry": false, - "localManualRedaction": false, - "manuallyRemoved": false - }, - { - "id": "5842283ecbd31a80a2512505a30ed605", - "type": "PII", - "value": "+49 2113 2311 560", - "reason": "Personal information found", - "matchedRule": 25, - "rectangle": false, - "legalBasis": "Article 39(e)(2) of Regulation (EC) No 178/2002", - "imported": false, - "redacted": true, - "section": "Table in: Rule: Redact contact information (contains \"Contact point:\")", - "color": [ - 0.4, - 0.8, - 1.0 - ], - "positions": [ - { - "topLeft": { - "x": 327.079, - "y": 428.7815 - }, - "width": 69.58804, - "height": -10.981506, - "page": 5 - } - ], - "sectionNumber": 21, - "textBefore": "2311 563 Fax: ", - "textAfter": " Tel.: +81", - "comments": [], - "startOffset": 299, - "endOffset": 316, - "imageHasTransparency": false, - "excluded": false, - "sourceId": null, - "changes": [ - { - "analysisNumber": 0, - "type": "ADDED", - "dateTime": "2022-08-24T16:43:01.03658+02:00" - } - ], - "manualChanges": [], - "engines": [ - "RULE" - ], - "reference": [], - "importedRedactionIntersections": [], - "hint": false, - "recommendation": false, - "falsePositive": false, - "image": false, - "dictionaryEntry": false, - "dossierDictionaryEntry": false, - "localManualRedaction": false, - "manuallyRemoved": false - }, - { - "id": "6d912c09f6b3262a5db9469ee9b51bde", - "type": "PII", - "value": "\")", - "reason": "Personal information found", - "matchedRule": 23, - "rectangle": false, - "legalBasis": "Article 39(e)(3) of Regulation (EC) No 178/2002", - "imported": false, - "redacted": true, - "section": "Rule: Redact contact information (contains \"Contact point:\")", - "color": [ - 0.4, - 0.8, - 1.0 - ], - "positions": [ - { - "topLeft": { - "x": 450.9798, - "y": 705.9678 - }, - "width": 11.378723, - "height": -13.867798, - "page": 5 - } - ], - "sectionNumber": 23, - "textBefore": "(contains \"Contact point:", - "textAfter": " Redact when", - "comments": [], - "startOffset": 58, - "endOffset": 60, - "imageHasTransparency": false, - "excluded": false, - "sourceId": null, - "changes": [ - { - "analysisNumber": 0, - "type": "ADDED", - "dateTime": "2022-08-24T16:43:01.036581+02:00" - } - ], - "manualChanges": [], - "engines": [ - "RULE" - ], - "reference": [], - "importedRedactionIntersections": [], - "hint": false, - "recommendation": false, - "falsePositive": false, - "image": false, - "dictionaryEntry": false, - "dossierDictionaryEntry": false, - "localManualRedaction": false, - "manuallyRemoved": false - }, - { - "id": "e8bd2031ba686fb168e5a75beeebbff6", - "type": "PII", - "value": "Page", - "reason": "Personal information found", - "matchedRule": 19, - "rectangle": false, - "legalBasis": "Article 39(e)(3) of Regulation (EC) No 178/2002", - "imported": false, - "redacted": true, - "section": "Header", - "color": [ - 0.4, - 0.8, - 1.0 - ], - "positions": [ - { - "topLeft": { - "x": 100.479996, - "y": 734.742 - }, - "width": 23.304, - "height": -12.641998, - "page": 6 - } - ], - "sectionNumber": 38, - "textBefore": "This is a ", - "textAfter": "-Header", - "comments": [], - "startOffset": 10, - "endOffset": 14, - "imageHasTransparency": false, - "excluded": false, - "sourceId": null, - "changes": [ - { - "analysisNumber": 0, - "type": "ADDED", - "dateTime": "2022-08-24T16:43:01.036581+02:00" - } - ], - "manualChanges": [], - "engines": [ - "DICTIONARY" - ], - "reference": [], - "importedRedactionIntersections": [], - "hint": false, - "recommendation": false, - "falsePositive": false, - "image": false, - "dictionaryEntry": true, - "dossierDictionaryEntry": false, - "localManualRedaction": false, - "manuallyRemoved": false - }, - { - "id": "f0cea2f938db704405daa85c8c53e754", - "type": "PII", - "value": "Dr. Alan Milwer", - "reason": "AUTHOR(S) was found", - "matchedRule": 29, - "rectangle": false, - "legalBasis": "Article 39(e)(3) of Regulation (EC) No 178/2002", - "imported": false, - "redacted": true, - "section": "Rule: If “Authors:” and “Study Completion Dates”, then redact everything between", - "color": [ - 0.4, - 0.8, - 1.0 - ], - "positions": [ - { - "topLeft": { - "x": 236.8, - "y": 502.34204 - }, - "width": 78.96004, - "height": -12.641998, - "page": 6 - } - ], - "sectionNumber": 25, - "textBefore": "Study Report___ AUTHOR(S): ", - "textAfter": " STUDY COMPLETION", - "comments": [], - "startOffset": 179, - "endOffset": 194, - "imageHasTransparency": false, - "excluded": false, - "sourceId": null, - "changes": [ - { - "analysisNumber": 0, - "type": "ADDED", - "dateTime": "2022-08-24T16:43:01.036581+02:00" - } - ], - "manualChanges": [], - "engines": [ - "RULE" - ], - "reference": [], - "importedRedactionIntersections": [], - "hint": false, - "recommendation": false, - "falsePositive": false, - "image": false, - "dictionaryEntry": false, - "dossierDictionaryEntry": false, - "localManualRedaction": false, - "manuallyRemoved": false - }, - { - "id": "b5bc54da5a489024be423fd7c35ca509", - "type": "PII", - "value": "Dr. Alan Miller", - "reason": "Author found", - "matchedRule": 27, - "rectangle": false, - "legalBasis": "Article 39(e)(3) of Regulation (EC) No 178/2002", - "imported": false, - "redacted": true, - "section": "Rule: If \"Authors:\" and \"completion dates\", then redact everything between", - "color": [ - 0.4, - 0.8, - 1.0 - ], - "positions": [ - { - "topLeft": { - "x": 200.8, - "y": 635.04205 - }, - "width": 73.57207, - "height": -12.641998, - "page": 6 - } - ], - "sectionNumber": 24, - "textBefore": "Study Report___ AUTHOR(S): ", - "textAfter": " COMPLETION DATE:", - "comments": [], - "startOffset": 173, - "endOffset": 188, - "imageHasTransparency": false, - "excluded": false, - "sourceId": null, - "changes": [ - { - "analysisNumber": 0, - "type": "ADDED", - "dateTime": "2022-08-24T16:43:01.036581+02:00" - } - ], - "manualChanges": [], - "engines": [ - "RULE" - ], - "reference": [], - "importedRedactionIntersections": [], - "hint": false, - "recommendation": false, - "falsePositive": false, - "image": false, - "dictionaryEntry": false, - "dossierDictionaryEntry": false, - "localManualRedaction": false, - "manuallyRemoved": false - }, - { - "id": "d8a7ac0acfd9f0d4589ba1ff55ec3597", - "type": "CBI_address", - "value": "Umbrella Corporation", - "reason": "Performing laboratory found for non vertebrate study", - "matchedRule": 31, - "rectangle": false, - "legalBasis": null, - "imported": false, - "redacted": false, - "section": "Rule: If \"Performing Lab\" and \"Lab Project ID\", then Redact everything between", - "color": [ - 0.8, - 0.8, - 0.8 - ], - "positions": [ - { - "topLeft": { - "x": 236.8, - "y": 368.44202 - }, - "width": 106.24812, - "height": -12.641998, - "page": 6 - } - ], - "sectionNumber": 26, - "textBefore": "Report___ PERFORMING LABORATORY: ", - "textAfter": " LABORATORY PROJECT", - "comments": [], - "startOffset": 191, - "endOffset": 211, - "imageHasTransparency": false, - "excluded": false, - "sourceId": null, - "changes": [ - { - "analysisNumber": 0, - "type": "ADDED", - "dateTime": "2022-08-24T16:43:01.036582+02:00" - } - ], - "manualChanges": [], - "engines": [ - "RULE" - ], - "reference": [], - "importedRedactionIntersections": [], - "hint": false, - "recommendation": false, - "falsePositive": false, - "image": false, - "dictionaryEntry": false, - "dossierDictionaryEntry": false, - "localManualRedaction": false, - "manuallyRemoved": false - }, - { - "id": "5c07c0a8199119c1ded119367a9863bd", - "type": "PII", - "value": "Page", - "reason": "Personal information found", - "matchedRule": 19, - "rectangle": false, - "legalBasis": "Article 39(e)(3) of Regulation (EC) No 178/2002", - "imported": false, - "redacted": true, - "section": "Footer", - "color": [ - 0.4, - 0.8, - 1.0 - ], - "positions": [ - { - "topLeft": { - "x": 100.479996, - "y": 69.94202 - }, - "width": 23.304, - "height": -12.642029, - "page": 6 - } - ], - "sectionNumber": 46, - "textBefore": "This is a ", - "textAfter": "-Footer", - "comments": [], - "startOffset": 10, - "endOffset": 14, - "imageHasTransparency": false, - "excluded": false, - "sourceId": null, - "changes": [ - { - "analysisNumber": 0, - "type": "ADDED", - "dateTime": "2022-08-24T16:43:01.036582+02:00" - } - ], - "manualChanges": [], - "engines": [ - "DICTIONARY" - ], - "reference": [], - "importedRedactionIntersections": [], - "hint": false, - "recommendation": false, - "falsePositive": false, - "image": false, - "dictionaryEntry": true, - "dossierDictionaryEntry": false, - "localManualRedaction": false, - "manuallyRemoved": false - }, - { - "id": "4caf39084f94a323df73775634954554", - "type": "hint_only", - "value": "Purity", - "reason": null, - "matchedRule": 0, - "rectangle": false, - "legalBasis": null, - "imported": false, - "redacted": false, - "section": "Rule: Purity Hint", - "color": [ - 0.67058825, - 0.7529412, - 0.76862746 - ], - "positions": [ - { - "topLeft": { - "x": 56.8, - "y": 438.44202 - }, - "width": 28.595997, - "height": -12.641998, - "page": 7 - } - ], - "sectionNumber": 28, - "textBefore": null, - "textAfter": null, - "comments": [], - "startOffset": 908, - "endOffset": 914, - "imageHasTransparency": false, - "excluded": false, - "sourceId": null, - "changes": [ - { - "analysisNumber": 0, - "type": "ADDED", - "dateTime": "2022-08-24T16:43:01.036582+02:00" - } - ], - "manualChanges": [], - "engines": [ - "RULE" - ], - "reference": [], - "importedRedactionIntersections": [], - "hint": true, - "recommendation": false, - "falsePositive": false, - "image": false, - "dictionaryEntry": false, - "dossierDictionaryEntry": false, - "localManualRedaction": false, - "manuallyRemoved": false - }, - { - "id": "42b13bcc923f2238dbbd5f19280043f1", - "type": "hint_only", - "value": "Purity", - "reason": null, - "matchedRule": 0, - "rectangle": false, - "legalBasis": null, - "imported": false, - "redacted": false, - "section": "Rule: Purity Hint", - "color": [ - 0.67058825, - 0.7529412, - 0.76862746 - ], - "positions": [ - { - "topLeft": { - "x": 75.4, - "y": 685.33496 - }, - "width": 24.999985, - "height": -11.535004, - "page": 7 - } - ], - "sectionNumber": 28, - "textBefore": null, - "textAfter": null, - "comments": [], - "startOffset": 22, - "endOffset": 28, - "imageHasTransparency": false, - "excluded": false, - "sourceId": null, - "changes": [ - { - "analysisNumber": 0, - "type": "ADDED", - "dateTime": "2022-08-24T16:43:01.036582+02:00" - } - ], - "manualChanges": [], - "engines": [ - "RULE" - ], - "reference": [], - "importedRedactionIntersections": [], - "hint": true, - "recommendation": false, - "falsePositive": false, - "image": false, - "dictionaryEntry": false, - "dossierDictionaryEntry": false, - "localManualRedaction": false, - "manuallyRemoved": false - }, - { - "id": "281458d08c0ddf1a11604ef9ca4ef26b", - "type": "hint_only", - "value": "Purity:", - "reason": null, - "matchedRule": 0, - "rectangle": false, - "legalBasis": null, - "imported": false, - "redacted": false, - "section": "Rule: Purity Hint", - "color": [ - 0.67058825, - 0.7529412, - 0.76862746 - ], - "positions": [ - { - "topLeft": { - "x": 56.8, - "y": 479.84204 - }, - "width": 32.687992, - "height": -12.641998, - "page": 7 - } - ], - "sectionNumber": 28, - "textBefore": null, - "textAfter": null, - "comments": [], - "startOffset": 174, - "endOffset": 181, - "imageHasTransparency": false, - "excluded": false, - "sourceId": null, - "changes": [ - { - "analysisNumber": 0, - "type": "ADDED", - "dateTime": "2022-08-24T16:43:01.036582+02:00" - } - ], - "manualChanges": [], - "engines": [ - "RULE" - ], - "reference": [], - "importedRedactionIntersections": [], - "hint": true, - "recommendation": false, - "falsePositive": false, - "image": false, - "dictionaryEntry": false, - "dossierDictionaryEntry": false, - "localManualRedaction": false, - "manuallyRemoved": false - }, - { - "id": "9a605a92f81366349de1a96c194d22b2", - "type": "hint_only", - "value": "Purity:", - "reason": null, - "matchedRule": 0, - "rectangle": false, - "legalBasis": null, - "imported": false, - "redacted": false, - "section": "Rule: Purity Hint", - "color": [ - 0.67058825, - 0.7529412, - 0.76862746 - ], - "positions": [ - { - "topLeft": { - "x": 56.8, - "y": 535.04205 - }, - "width": 32.687992, - "height": -12.641998, - "page": 7 - } - ], - "sectionNumber": 28, - "textBefore": null, - "textAfter": null, - "comments": [], - "startOffset": 142, - "endOffset": 149, - "imageHasTransparency": false, - "excluded": false, - "sourceId": null, - "changes": [ - { - "analysisNumber": 0, - "type": "ADDED", - "dateTime": "2022-08-24T16:43:01.036583+02:00" - } - ], - "manualChanges": [], - "engines": [ - "RULE" - ], - "reference": [], - "importedRedactionIntersections": [], - "hint": true, - "recommendation": false, - "falsePositive": false, - "image": false, - "dictionaryEntry": false, - "dossierDictionaryEntry": false, - "localManualRedaction": false, - "manuallyRemoved": false - }, - { - "id": "250246a26e93cd879c05beba4f41f812", - "type": "hint_only", - "value": "Purity:", - "reason": null, - "matchedRule": 0, - "rectangle": false, - "legalBasis": null, - "imported": false, - "redacted": false, - "section": "Rule: Purity Hint", - "color": [ - 0.67058825, - 0.7529412, - 0.76862746 - ], - "positions": [ - { - "topLeft": { - "x": 56.8, - "y": 590.242 - }, - "width": 32.687992, - "height": -12.641998, - "page": 7 - } - ], - "sectionNumber": 28, - "textBefore": null, - "textAfter": null, - "comments": [], - "startOffset": 110, - "endOffset": 117, - "imageHasTransparency": false, - "excluded": false, - "sourceId": null, - "changes": [ - { - "analysisNumber": 0, - "type": "ADDED", - "dateTime": "2022-08-24T16:43:01.036583+02:00" - } - ], - "manualChanges": [], - "engines": [ - "RULE" - ], - "reference": [], - "importedRedactionIntersections": [], - "hint": true, - "recommendation": false, - "falsePositive": false, - "image": false, - "dictionaryEntry": false, - "dossierDictionaryEntry": false, - "localManualRedaction": false, - "manuallyRemoved": false - }, - { - "id": "826b14decb8a0b3ac9fc3cce6a7e5c9d", - "type": "hint_only", - "value": "Purity:", - "reason": null, - "matchedRule": 0, - "rectangle": false, - "legalBasis": null, - "imported": false, - "redacted": false, - "section": "Rule: Purity Hint", - "color": [ - 0.67058825, - 0.7529412, - 0.76862746 - ], - "positions": [ - { - "topLeft": { - "x": 56.8, - "y": 645.442 - }, - "width": 32.687992, - "height": -12.641998, - "page": 7 - } - ], - "sectionNumber": 28, - "textBefore": null, - "textAfter": null, - "comments": [], - "startOffset": 78, - "endOffset": 85, - "imageHasTransparency": false, - "excluded": false, - "sourceId": null, - "changes": [ - { - "analysisNumber": 0, - "type": "ADDED", - "dateTime": "2022-08-24T16:43:01.036584+02:00" - } - ], - "manualChanges": [], - "engines": [ - "RULE" - ], - "reference": [], - "importedRedactionIntersections": [], - "hint": true, - "recommendation": false, - "falsePositive": false, - "image": false, - "dictionaryEntry": false, - "dossierDictionaryEntry": false, - "localManualRedaction": false, - "manuallyRemoved": false - }, - { - "id": "bedb022f5de1298c4d8d4729d1335a79", - "type": "hint_only", - "value": "Purity:", - "reason": null, - "matchedRule": 0, - "rectangle": false, - "legalBasis": null, - "imported": false, - "redacted": false, - "section": "Rule: Purity Hint", - "color": [ - 0.67058825, - 0.7529412, - 0.76862746 - ], - "positions": [ - { - "topLeft": { - "x": 56.8, - "y": 438.44202 - }, - "width": 32.003994, - "height": -12.641998, - "page": 7 - } - ], - "sectionNumber": 28, - "textBefore": null, - "textAfter": null, - "comments": [], - "startOffset": 936, - "endOffset": 943, - "imageHasTransparency": false, - "excluded": false, - "sourceId": null, - "changes": [ - { - "analysisNumber": 0, - "type": "ADDED", - "dateTime": "2022-08-24T16:43:01.036584+02:00" - } - ], - "manualChanges": [], - "engines": [ - "RULE" - ], - "reference": [], - "importedRedactionIntersections": [], - "hint": true, - "recommendation": false, - "falsePositive": false, - "image": false, - "dictionaryEntry": false, - "dossierDictionaryEntry": false, - "localManualRedaction": false, - "manuallyRemoved": false - }, - { - "id": "f881796b07a4393bc04c219e803e2c74", - "type": "hint_only", - "value": "Purity:", - "reason": null, - "matchedRule": 0, - "rectangle": false, - "legalBasis": null, - "imported": false, - "redacted": false, - "section": "Rule: Purity Hint", - "color": [ - 0.67058825, - 0.7529412, - 0.76862746 - ], - "positions": [ - { - "topLeft": { - "x": 56.8, - "y": 493.64203 - }, - "width": 32.687992, - "height": -12.641998, - "page": 7 - } - ], - "sectionNumber": 28, - "textBefore": null, - "textAfter": null, - "comments": [], - "startOffset": 166, - "endOffset": 173, - "imageHasTransparency": false, - "excluded": false, - "sourceId": null, - "changes": [ - { - "analysisNumber": 0, - "type": "ADDED", - "dateTime": "2022-08-24T16:43:01.036584+02:00" - } - ], - "manualChanges": [], - "engines": [ - "RULE" - ], - "reference": [], - "importedRedactionIntersections": [], - "hint": true, - "recommendation": false, - "falsePositive": false, - "image": false, - "dictionaryEntry": false, - "dossierDictionaryEntry": false, - "localManualRedaction": false, - "manuallyRemoved": false - }, - { - "id": "146c04a3b4fe300815ed71fecd1773f5", - "type": "hint_only", - "value": "Purity:", - "reason": null, - "matchedRule": 0, - "rectangle": false, - "legalBasis": null, - "imported": false, - "redacted": false, - "section": "Rule: Purity Hint", - "color": [ - 0.67058825, - 0.7529412, - 0.76862746 - ], - "positions": [ - { - "topLeft": { - "x": 56.8, - "y": 548.84204 - }, - "width": 32.687992, - "height": -12.641998, - "page": 7 - } - ], - "sectionNumber": 28, - "textBefore": null, - "textAfter": null, - "comments": [], - "startOffset": 134, - "endOffset": 141, - "imageHasTransparency": false, - "excluded": false, - "sourceId": null, - "changes": [ - { - "analysisNumber": 0, - "type": "ADDED", - "dateTime": "2022-08-24T16:43:01.036584+02:00" - } - ], - "manualChanges": [], - "engines": [ - "RULE" - ], - "reference": [], - "importedRedactionIntersections": [], - "hint": true, - "recommendation": false, - "falsePositive": false, - "image": false, - "dictionaryEntry": false, - "dossierDictionaryEntry": false, - "localManualRedaction": false, - "manuallyRemoved": false - }, - { - "id": "ed6e8e0225116bef834a823b79448c7a", - "type": "hint_only", - "value": "Purity:", - "reason": null, - "matchedRule": 0, - "rectangle": false, - "legalBasis": null, - "imported": false, - "redacted": false, - "section": "Rule: Purity Hint", - "color": [ - 0.67058825, - 0.7529412, - 0.76862746 - ], - "positions": [ - { - "topLeft": { - "x": 56.8, - "y": 604.04205 - }, - "width": 32.687992, - "height": -12.641998, - "page": 7 - } - ], - "sectionNumber": 28, - "textBefore": null, - "textAfter": null, - "comments": [], - "startOffset": 102, - "endOffset": 109, - "imageHasTransparency": false, - "excluded": false, - "sourceId": null, - "changes": [ - { - "analysisNumber": 0, - "type": "ADDED", - "dateTime": "2022-08-24T16:43:01.036585+02:00" - } - ], - "manualChanges": [], - "engines": [ - "RULE" - ], - "reference": [], - "importedRedactionIntersections": [], - "hint": true, - "recommendation": false, - "falsePositive": false, - "image": false, - "dictionaryEntry": false, - "dossierDictionaryEntry": false, - "localManualRedaction": false, - "manuallyRemoved": false - }, - { - "id": "33a076d7eeb2e840117e25c9b36d679b", - "type": "hint_only", - "value": "purity:", - "reason": null, - "matchedRule": 0, - "rectangle": false, - "legalBasis": null, - "imported": false, - "redacted": false, - "section": "Rule: Purity Hint", - "color": [ - 0.67058825, - 0.7529412, - 0.76862746 - ], - "positions": [ - { - "topLeft": { - "x": 56.8, - "y": 631.642 - }, - "width": 32.687992, - "height": -12.641998, - "page": 7 - } - ], - "sectionNumber": 28, - "textBefore": null, - "textAfter": null, - "comments": [], - "startOffset": 251, - "endOffset": 258, - "imageHasTransparency": false, - "excluded": false, - "sourceId": null, - "changes": [ - { - "analysisNumber": 0, - "type": "ADDED", - "dateTime": "2022-08-24T16:43:01.036585+02:00" - } - ], - "manualChanges": [], - "engines": [ - "RULE" - ], - "reference": [], - "importedRedactionIntersections": [], - "hint": true, - "recommendation": false, - "falsePositive": false, - "image": false, - "dictionaryEntry": false, - "dossierDictionaryEntry": false, - "localManualRedaction": false, - "manuallyRemoved": false - }, - { - "id": "c40569401e976ca1b74c8cba504b1d83", - "type": "hint_only", - "value": "Purity:", - "reason": null, - "matchedRule": 0, - "rectangle": false, - "legalBasis": null, - "imported": false, - "redacted": false, - "section": "Rule: Purity Hint", - "color": [ - 0.67058825, - 0.7529412, - 0.76862746 - ], - "positions": [ - { - "topLeft": { - "x": 56.8, - "y": 452.24203 - }, - "width": 32.003994, - "height": -12.641998, - "page": 7 - } - ], - "sectionNumber": 28, - "textBefore": null, - "textAfter": null, - "comments": [], - "startOffset": 874, - "endOffset": 881, - "imageHasTransparency": false, - "excluded": false, - "sourceId": null, - "changes": [ - { - "analysisNumber": 0, - "type": "ADDED", - "dateTime": "2022-08-24T16:43:01.036585+02:00" - } - ], - "manualChanges": [], - "engines": [ - "RULE" - ], - "reference": [], - "importedRedactionIntersections": [], - "hint": true, - "recommendation": false, - "falsePositive": false, - "image": false, - "dictionaryEntry": false, - "dossierDictionaryEntry": false, - "localManualRedaction": false, - "manuallyRemoved": false - }, - { - "id": "5a80377cadcb5c868da857d21a558665", - "type": "PII", - "value": "Page", - "reason": "Personal information found", - "matchedRule": 19, - "rectangle": false, - "legalBasis": "Article 39(e)(3) of Regulation (EC) No 178/2002", - "imported": false, - "redacted": true, - "section": "Footer", - "color": [ - 0.4, - 0.8, - 1.0 - ], - "positions": [ - { - "topLeft": { - "x": 100.479996, - "y": 69.94202 - }, - "width": 23.304, - "height": -12.642029, - "page": 7 - } - ], - "sectionNumber": 47, - "textBefore": "This is a ", - "textAfter": "-Footer", - "comments": [], - "startOffset": 10, - "endOffset": 14, - "imageHasTransparency": false, - "excluded": false, - "sourceId": null, - "changes": [ - { - "analysisNumber": 0, - "type": "ADDED", - "dateTime": "2022-08-24T16:43:01.036585+02:00" - } - ], - "manualChanges": [], - "engines": [ - "DICTIONARY" - ], - "reference": [], - "importedRedactionIntersections": [], - "hint": false, - "recommendation": false, - "falsePositive": false, - "image": false, - "dictionaryEntry": true, - "dossierDictionaryEntry": false, - "localManualRedaction": false, - "manuallyRemoved": false - }, - { - "id": "df24f12ba7a9a700984f37ae277d1bb1", - "type": "hint_only", - "value": "Purity", - "reason": null, - "matchedRule": 0, - "rectangle": false, - "legalBasis": null, - "imported": false, - "redacted": false, - "section": "Rule: Purity Hint", - "color": [ - 0.67058825, - 0.7529412, - 0.76862746 - ], - "positions": [ - { - "topLeft": { - "x": 96.0, - "y": 705.9678 - }, - "width": 39.9171, - "height": -13.867798, - "page": 7 - } - ], - "sectionNumber": 28, - "textBefore": null, - "textAfter": null, - "comments": [], - "startOffset": 6, - "endOffset": 12, - "imageHasTransparency": false, - "excluded": false, - "sourceId": null, - "changes": [ - { - "analysisNumber": 0, - "type": "ADDED", - "dateTime": "2022-08-24T16:43:01.036585+02:00" - } - ], - "manualChanges": [], - "engines": [ - "RULE" - ], - "reference": [], - "importedRedactionIntersections": [], - "hint": true, - "recommendation": false, - "falsePositive": false, - "image": false, - "dictionaryEntry": false, - "dossierDictionaryEntry": false, - "localManualRedaction": false, - "manuallyRemoved": false - }, - { - "id": "0184cef43bcfdf9264caf5141743758d", - "type": "PII", - "value": "Page", - "reason": "Personal information found", - "matchedRule": 19, - "rectangle": false, - "legalBasis": "Article 39(e)(3) of Regulation (EC) No 178/2002", - "imported": false, - "redacted": true, - "section": "Header", - "color": [ - 0.4, - 0.8, - 1.0 - ], - "positions": [ - { - "topLeft": { - "x": 100.479996, - "y": 734.742 - }, - "width": 23.304, - "height": -12.641998, - "page": 7 - } - ], - "sectionNumber": 39, - "textBefore": "This is a ", - "textAfter": "-Header", - "comments": [], - "startOffset": 10, - "endOffset": 14, - "imageHasTransparency": false, - "excluded": false, - "sourceId": null, - "changes": [ - { - "analysisNumber": 0, - "type": "ADDED", - "dateTime": "2022-08-24T16:43:01.036586+02:00" - } - ], - "manualChanges": [], - "engines": [ - "DICTIONARY" - ], - "reference": [], - "importedRedactionIntersections": [], - "hint": false, - "recommendation": false, - "falsePositive": false, - "image": false, - "dictionaryEntry": true, - "dossierDictionaryEntry": false, - "localManualRedaction": false, - "manuallyRemoved": false - }, - { - "id": "1b6af411adbfa62811a6c5c302a240e0", - "type": "hint_only", - "value": "Purity:", - "reason": null, - "matchedRule": 0, - "rectangle": false, - "legalBasis": null, - "imported": false, - "redacted": false, - "section": "Rule: Purity Hint", - "color": [ - 0.67058825, - 0.7529412, - 0.76862746 - ], - "positions": [ - { - "topLeft": { - "x": 56.8, - "y": 507.44202 - }, - "width": 32.687992, - "height": -12.641998, - "page": 7 - } - ], - "sectionNumber": 28, - "textBefore": null, - "textAfter": null, - "comments": [], - "startOffset": 158, - "endOffset": 165, - "imageHasTransparency": false, - "excluded": false, - "sourceId": null, - "changes": [ - { - "analysisNumber": 0, - "type": "ADDED", - "dateTime": "2022-08-24T16:43:01.036586+02:00" - } - ], - "manualChanges": [], - "engines": [ - "RULE" - ], - "reference": [], - "importedRedactionIntersections": [], - "hint": true, - "recommendation": false, - "falsePositive": false, - "image": false, - "dictionaryEntry": false, - "dossierDictionaryEntry": false, - "localManualRedaction": false, - "manuallyRemoved": false - }, - { - "id": "d591cac8cddb354c1747fff367d68d0f", - "type": "hint_only", - "value": "Purity:", - "reason": null, - "matchedRule": 0, - "rectangle": false, - "legalBasis": null, - "imported": false, - "redacted": false, - "section": "Rule: Purity Hint", - "color": [ - 0.67058825, - 0.7529412, - 0.76862746 - ], - "positions": [ - { - "topLeft": { - "x": 56.8, - "y": 562.642 - }, - "width": 32.687992, - "height": -12.641998, - "page": 7 - } - ], - "sectionNumber": 28, - "textBefore": null, - "textAfter": null, - "comments": [], - "startOffset": 126, - "endOffset": 133, - "imageHasTransparency": false, - "excluded": false, - "sourceId": null, - "changes": [ - { - "analysisNumber": 0, - "type": "ADDED", - "dateTime": "2022-08-24T16:43:01.036586+02:00" - } - ], - "manualChanges": [], - "engines": [ - "RULE" - ], - "reference": [], - "importedRedactionIntersections": [], - "hint": true, - "recommendation": false, - "falsePositive": false, - "image": false, - "dictionaryEntry": false, - "dossierDictionaryEntry": false, - "localManualRedaction": false, - "manuallyRemoved": false - }, - { - "id": "3858fea4d0430b59c7d23c1b7fa2a5d5", - "type": "hint_only", - "value": "Purity:", - "reason": null, - "matchedRule": 0, - "rectangle": false, - "legalBasis": null, - "imported": false, - "redacted": false, - "section": "Rule: Purity Hint", - "color": [ - 0.67058825, - 0.7529412, - 0.76862746 - ], - "positions": [ - { - "topLeft": { - "x": 56.8, - "y": 617.84204 - }, - "width": 32.687992, - "height": -12.641998, - "page": 7 - } - ], - "sectionNumber": 28, - "textBefore": null, - "textAfter": null, - "comments": [], - "startOffset": 94, - "endOffset": 101, - "imageHasTransparency": false, - "excluded": false, - "sourceId": null, - "changes": [ - { - "analysisNumber": 0, - "type": "ADDED", - "dateTime": "2022-08-24T16:43:01.036586+02:00" - } - ], - "manualChanges": [], - "engines": [ - "RULE" - ], - "reference": [], - "importedRedactionIntersections": [], - "hint": true, - "recommendation": false, - "falsePositive": false, - "image": false, - "dictionaryEntry": false, - "dossierDictionaryEntry": false, - "localManualRedaction": false, - "manuallyRemoved": false - }, - { - "id": "ad026ffe887ae3d596fb2686c0a29b05", - "type": "hint_only", - "value": "purity", - "reason": null, - "matchedRule": 0, - "rectangle": false, - "legalBasis": null, - "imported": false, - "redacted": false, - "section": "Rule: Purity Hint", - "color": [ - 0.67058825, - 0.7529412, - 0.76862746 - ], - "positions": [ - { - "topLeft": { - "x": 56.8, - "y": 631.642 - }, - "width": 29.279995, - "height": -12.641998, - "page": 7 - } - ], - "sectionNumber": 28, - "textBefore": null, - "textAfter": null, - "comments": [], - "startOffset": 964, - "endOffset": 970, - "imageHasTransparency": false, - "excluded": false, - "sourceId": null, - "changes": [ - { - "analysisNumber": 0, - "type": "ADDED", - "dateTime": "2022-08-24T16:43:01.036587+02:00" - } - ], - "manualChanges": [], - "engines": [ - "RULE" - ], - "reference": [], - "importedRedactionIntersections": [], - "hint": true, - "recommendation": false, - "falsePositive": false, - "image": false, - "dictionaryEntry": false, - "dossierDictionaryEntry": false, - "localManualRedaction": false, - "manuallyRemoved": false - }, - { - "id": "ea9961b4451b505c3702bb393cc816fc", - "type": "hint_only", - "value": "Purity:", - "reason": null, - "matchedRule": 0, - "rectangle": false, - "legalBasis": null, - "imported": false, - "redacted": false, - "section": "Rule: Purity Hint", - "color": [ - 0.67058825, - 0.7529412, - 0.76862746 - ], - "positions": [ - { - "topLeft": { - "x": 56.8, - "y": 521.24207 - }, - "width": 32.687992, - "height": -12.641998, - "page": 7 - } - ], - "sectionNumber": 28, - "textBefore": null, - "textAfter": null, - "comments": [], - "startOffset": 150, - "endOffset": 157, - "imageHasTransparency": false, - "excluded": false, - "sourceId": null, - "changes": [ - { - "analysisNumber": 0, - "type": "ADDED", - "dateTime": "2022-08-24T16:43:01.036587+02:00" - } - ], - "manualChanges": [], - "engines": [ - "RULE" - ], - "reference": [], - "importedRedactionIntersections": [], - "hint": true, - "recommendation": false, - "falsePositive": false, - "image": false, - "dictionaryEntry": false, - "dossierDictionaryEntry": false, - "localManualRedaction": false, - "manuallyRemoved": false - }, - { - "id": "e1e965b6b360b39474efce44ed67fd53", - "type": "hint_only", - "value": "Purity:", - "reason": null, - "matchedRule": 0, - "rectangle": false, - "legalBasis": null, - "imported": false, - "redacted": false, - "section": "Rule: Purity Hint", - "color": [ - 0.67058825, - 0.7529412, - 0.76862746 - ], - "positions": [ - { - "topLeft": { - "x": 56.8, - "y": 576.442 - }, - "width": 32.687992, - "height": -12.641998, - "page": 7 - } - ], - "sectionNumber": 28, - "textBefore": null, - "textAfter": null, - "comments": [], - "startOffset": 118, - "endOffset": 125, - "imageHasTransparency": false, - "excluded": false, - "sourceId": null, - "changes": [ - { - "analysisNumber": 0, - "type": "ADDED", - "dateTime": "2022-08-24T16:43:01.036587+02:00" - } - ], - "manualChanges": [], - "engines": [ - "RULE" - ], - "reference": [], - "importedRedactionIntersections": [], - "hint": true, - "recommendation": false, - "falsePositive": false, - "image": false, - "dictionaryEntry": false, - "dossierDictionaryEntry": false, - "localManualRedaction": false, - "manuallyRemoved": false - }, - { - "id": "b2e61658fde0297a17de618943216200", - "type": "PII", - "value": "Page", - "reason": "Personal information found", - "matchedRule": 19, - "rectangle": false, - "legalBasis": "Article 39(e)(3) of Regulation (EC) No 178/2002", - "imported": false, - "redacted": true, - "section": "Header", - "color": [ - 0.4, - 0.8, - 1.0 - ], - "positions": [ - { - "topLeft": { - "x": 100.479996, - "y": 734.742 - }, - "width": 23.304, - "height": -12.641998, - "page": 8 - } - ], - "sectionNumber": 40, - "textBefore": "This is a ", - "textAfter": "-Header", - "comments": [], - "startOffset": 10, - "endOffset": 14, - "imageHasTransparency": false, - "excluded": false, - "sourceId": null, - "changes": [ - { - "analysisNumber": 0, - "type": "ADDED", - "dateTime": "2022-08-24T16:43:01.036587+02:00" - } - ], - "manualChanges": [], - "engines": [ - "DICTIONARY" - ], - "reference": [], - "importedRedactionIntersections": [], - "hint": false, - "recommendation": false, - "falsePositive": false, - "image": false, - "dictionaryEntry": true, - "dossierDictionaryEntry": false, - "localManualRedaction": false, - "manuallyRemoved": false - }, - { - "id": "0dd5b79b160f804046c3b7aa6e74f50f", - "type": "PII", - "value": "Page", - "reason": "Personal information found", - "matchedRule": 19, - "rectangle": false, - "legalBasis": "Article 39(e)(3) of Regulation (EC) No 178/2002", - "imported": false, - "redacted": true, - "section": "Footer", - "color": [ - 0.4, - 0.8, - 1.0 - ], - "positions": [ - { - "topLeft": { - "x": 100.479996, - "y": 69.94202 - }, - "width": 23.304, - "height": -12.642029, - "page": 8 - } - ], - "sectionNumber": 48, - "textBefore": "This is a ", - "textAfter": "-Footer", - "comments": [], - "startOffset": 10, - "endOffset": 14, - "imageHasTransparency": false, - "excluded": false, - "sourceId": null, - "changes": [ - { - "analysisNumber": 0, - "type": "ADDED", - "dateTime": "2022-08-24T16:43:01.036587+02:00" - } - ], - "manualChanges": [], - "engines": [ - "DICTIONARY" - ], - "reference": [], - "importedRedactionIntersections": [], - "hint": false, - "recommendation": false, - "falsePositive": false, - "image": false, - "dictionaryEntry": true, - "dossierDictionaryEntry": false, - "localManualRedaction": false, - "manuallyRemoved": false - } - ], - "legalBasis": [], - "dictionaryVersion": 0, - "dossierDictionaryVersion": 0, - "rulesVersion": 0, - "legalBasisVersion": 0 -} \ No newline at end of file +{"analysisVersion":1,"analysisNumber":0,"redactionLogEntry":[{"id":"ee2f67ca1230e5d21863e90f2ccf25ef","type":"PII","value":"David","reason":"Personal information found","matchedRule":19,"rectangle":false,"legalBasis":"Article 39(e)(3) of Regulation (EC) No 178/2002","imported":false,"redacted":true,"section":"Rule: Redact CBI Authors based on Dict","color":[0.4,0.8,1.0],"positions":[{"topLeft":{"x":56.8,"y":487.24203},"width":29.291996,"height":-12.641998,"page":1}],"sectionNumber":3,"textBefore":"Study is No ","textAfter":" Ksenia Max","comments":[],"startOffset":110,"endOffset":115,"imageHasTransparency":false,"excluded":false,"sourceId":null,"changes":[{"analysisNumber":0,"type":"ADDED","dateTime":"2022-10-20T12:53:54.832446+02:00"}],"manualChanges":[],"engines":["DICTIONARY"],"reference":[],"importedRedactionIntersections":[],"recommendation":false,"falsePositive":false,"dictionaryEntry":true,"dossierDictionaryEntry":false,"localManualRedaction":false,"manuallyRemoved":false,"hint":false,"image":false},{"id":"6f9146f3bc954002f01cfb1c79ca13e9","type":"CBI_author","value":"Mustermann","reason":"Author found","matchedRule":1,"rectangle":false,"legalBasis":"Article 39(e)(3) of Regulation (EC) No 178/2002","imported":false,"redacted":true,"section":"Rule: Redact CBI Authors based on Dict","color":[1.0,0.88235295,0.5294118],"positions":[{"topLeft":{"x":81.796005,"y":473.44202},"width":60.587997,"height":-12.641998,"page":1}],"sectionNumber":3,"textBefore":"David Ksenia Max ","textAfter":" Ranya Eikenboom","comments":[],"startOffset":127,"endOffset":137,"imageHasTransparency":false,"excluded":false,"sourceId":null,"changes":[{"analysisNumber":0,"type":"ADDED","dateTime":"2022-10-20T12:53:54.832499+02:00"}],"manualChanges":[],"engines":["DICTIONARY"],"reference":[],"importedRedactionIntersections":[],"recommendation":false,"falsePositive":false,"dictionaryEntry":true,"dossierDictionaryEntry":false,"localManualRedaction":false,"manuallyRemoved":false,"hint":false,"image":false},{"id":"7fac2da15ad3e7f69a3a64e5f1e882e6","type":"PII","value":"Page","reason":"Personal information found","matchedRule":19,"rectangle":false,"legalBasis":"Article 39(e)(3) of Regulation (EC) No 178/2002","imported":false,"redacted":true,"section":"Header","color":[0.4,0.8,1.0],"positions":[{"topLeft":{"x":100.479996,"y":734.742},"width":23.304,"height":-12.641998,"page":1}],"sectionNumber":33,"textBefore":"This is a ","textAfter":"-Header","comments":[],"startOffset":10,"endOffset":14,"imageHasTransparency":false,"excluded":false,"sourceId":null,"changes":[{"analysisNumber":0,"type":"ADDED","dateTime":"2022-10-20T12:53:54.832509+02:00"}],"manualChanges":[],"engines":["DICTIONARY"],"reference":[],"importedRedactionIntersections":[],"recommendation":false,"falsePositive":false,"dictionaryEntry":true,"dossierDictionaryEntry":false,"localManualRedaction":false,"manuallyRemoved":false,"hint":false,"image":false},{"id":"d9ed19976a1bbeaa8f42d4bf0b43448a","type":"PII","value":"Page","reason":"Personal information found","matchedRule":19,"rectangle":false,"legalBasis":"Article 39(e)(3) of Regulation (EC) No 178/2002","imported":false,"redacted":true,"section":"Footer","color":[0.4,0.8,1.0],"positions":[{"topLeft":{"x":100.479996,"y":69.94202},"width":23.304,"height":-12.642029,"page":1}],"sectionNumber":41,"textBefore":"This is a ","textAfter":"-Footer","comments":[],"startOffset":10,"endOffset":14,"imageHasTransparency":false,"excluded":false,"sourceId":null,"changes":[{"analysisNumber":0,"type":"ADDED","dateTime":"2022-10-20T12:53:54.832517+02:00"}],"manualChanges":[],"engines":["DICTIONARY"],"reference":[],"importedRedactionIntersections":[],"recommendation":false,"falsePositive":false,"dictionaryEntry":true,"dossierDictionaryEntry":false,"localManualRedaction":false,"manuallyRemoved":false,"hint":false,"image":false},{"id":"5752ed95d7e94546c20ccc82e92d03c8","type":"CBI_address","value":"Netherlands","reason":"Address found for non vertebrate study","matchedRule":3,"rectangle":false,"legalBasis":null,"imported":false,"redacted":false,"section":"Rule: Redact (not) CBI Address based on Dict","color":[0.8,0.8,0.8],"positions":[{"topLeft":{"x":217.276,"y":324.54202},"width":57.94803,"height":-12.641998,"page":1}],"sectionNumber":4,"textBefore":"7232 CX Warnsveld, ","textAfter":", NL Institut","comments":[],"startOffset":169,"endOffset":180,"imageHasTransparency":false,"excluded":false,"sourceId":null,"changes":[{"analysisNumber":0,"type":"ADDED","dateTime":"2022-10-20T12:53:54.832524+02:00"}],"manualChanges":[],"engines":["DICTIONARY"],"reference":[],"importedRedactionIntersections":[],"recommendation":false,"falsePositive":false,"dictionaryEntry":true,"dossierDictionaryEntry":false,"localManualRedaction":false,"manuallyRemoved":false,"hint":false,"image":false},{"id":"43bbee2515421187094dd806cd2987ce","type":"PII","value":"Page","reason":"Personal information found","matchedRule":19,"rectangle":false,"legalBasis":"Article 39(e)(3) of Regulation (EC) No 178/2002","imported":false,"redacted":true,"section":"Header","color":[0.4,0.8,1.0],"positions":[{"topLeft":{"x":100.479996,"y":734.742},"width":23.304,"height":-12.641998,"page":2}],"sectionNumber":34,"textBefore":"This is a ","textAfter":"-Header","comments":[],"startOffset":10,"endOffset":14,"imageHasTransparency":false,"excluded":false,"sourceId":null,"changes":[{"analysisNumber":0,"type":"ADDED","dateTime":"2022-10-20T12:53:54.83253+02:00"}],"manualChanges":[],"engines":["DICTIONARY"],"reference":[],"importedRedactionIntersections":[],"recommendation":false,"falsePositive":false,"dictionaryEntry":true,"dossierDictionaryEntry":false,"localManualRedaction":false,"manuallyRemoved":false,"hint":false,"image":false},{"id":"e550f3473276d708223c75f540deebfd","type":"CBI_author","value":"Desiree","reason":"Author found","matchedRule":1,"rectangle":false,"legalBasis":"Article 39(e)(3) of Regulation (EC) No 178/2002","imported":false,"redacted":true,"section":"Rule: Additional Test: Names shoud be rule-based recommendations now","color":[1.0,0.88235295,0.5294118],"positions":[{"topLeft":{"x":152.452,"y":417.84204},"width":36.587997,"height":-12.641998,"page":2}],"sectionNumber":13,"textBefore":"Lorem ipsum dolor ","textAfter":" Lorem Ipsum","comments":[],"startOffset":142,"endOffset":149,"imageHasTransparency":false,"excluded":false,"sourceId":null,"changes":[{"analysisNumber":0,"type":"ADDED","dateTime":"2022-10-20T12:53:54.832536+02:00"}],"manualChanges":[],"engines":["RULE"],"reference":[],"importedRedactionIntersections":[],"recommendation":true,"falsePositive":false,"dictionaryEntry":false,"dossierDictionaryEntry":false,"localManualRedaction":false,"manuallyRemoved":false,"hint":false,"image":false},{"id":"6e1a95925b66af9d715346bd50d397a8","type":"CBI_author","value":"Feuer A.","reason":"Author found","matchedRule":6,"rectangle":false,"legalBasis":"Article 39(e)(3) of Regulation (EC) No 178/2002","imported":false,"redacted":true,"section":"Table in: Rule: Redact Auths Cells in Tables","color":[1.0,0.88235295,0.5294118],"positions":[{"topLeft":{"x":146.8,"y":582.11176},"width":36.0885,"height":-11.811752,"page":2}],"sectionNumber":9,"textBefore":null,"textAfter":null,"comments":[],"startOffset":6,"endOffset":14,"imageHasTransparency":false,"excluded":false,"sourceId":null,"changes":[{"analysisNumber":0,"type":"ADDED","dateTime":"2022-10-20T12:53:54.832542+02:00"}],"manualChanges":[],"engines":["RULE"],"reference":[],"importedRedactionIntersections":[],"recommendation":false,"falsePositive":false,"dictionaryEntry":false,"dossierDictionaryEntry":false,"localManualRedaction":false,"manuallyRemoved":false,"hint":false,"image":false},{"id":"4ec8947fe7439e564796162817360aa8","type":"CBI_author","value":"Melanie","reason":"Author found","matchedRule":14,"rectangle":false,"legalBasis":"Article 39(e)(3) of Regulation (EC) No 178/2002","imported":false,"redacted":true,"section":"Rule: Redact and add recommendation for et al.","color":[1.0,0.88235295,0.5294118],"positions":[{"topLeft":{"x":162.10999,"y":512.235},"width":32.710007,"height":-11.535004,"page":2}],"sectionNumber":12,"textBefore":"Term “Desiree”, “","textAfter":"” and add","comments":[],"startOffset":71,"endOffset":78,"imageHasTransparency":false,"excluded":false,"sourceId":null,"changes":[{"analysisNumber":0,"type":"ADDED","dateTime":"2022-10-20T12:53:54.832548+02:00"}],"manualChanges":[],"engines":["RULE"],"reference":[],"importedRedactionIntersections":[],"recommendation":false,"falsePositive":false,"dictionaryEntry":false,"dossierDictionaryEntry":false,"localManualRedaction":false,"manuallyRemoved":false,"hint":false,"image":false},{"id":"df2cc1fc80e19c83b28361c70bbbfb28","type":"CBI_author","value":"Melanie","reason":"Author found","matchedRule":1,"rectangle":false,"legalBasis":"Article 39(e)(3) of Regulation (EC) No 178/2002","imported":false,"redacted":true,"section":"Rule: Additional Test: Names shoud be rule-based recommendations now","color":[1.0,0.88235295,0.5294118],"positions":[{"topLeft":{"x":259.99603,"y":417.84204},"width":39.30008,"height":-12.641998,"page":2}],"sectionNumber":13,"textBefore":"Desiree Lorem Ipsum ","textAfter":".","comments":[],"startOffset":162,"endOffset":169,"imageHasTransparency":false,"excluded":false,"sourceId":null,"changes":[{"analysisNumber":0,"type":"ADDED","dateTime":"2022-10-20T12:53:54.832554+02:00"}],"manualChanges":[],"engines":["RULE"],"reference":[],"importedRedactionIntersections":[],"recommendation":true,"falsePositive":false,"dictionaryEntry":false,"dossierDictionaryEntry":false,"localManualRedaction":false,"manuallyRemoved":false,"hint":false,"image":false},{"id":"61c6d12c64bbd14607e8733e987db6c5","type":"CBI_author","value":"Melanie","reason":"Author found","matchedRule":14,"rectangle":false,"legalBasis":"Article 39(e)(3) of Regulation (EC) No 178/2002","imported":false,"redacted":true,"section":"Rule: Redact and add recommendation for et al.","color":[1.0,0.88235295,0.5294118],"positions":[{"topLeft":{"x":214.744,"y":486.14203},"width":39.216003,"height":-12.641998,"page":2}],"sectionNumber":12,"textBefore":"dolore magna aliqua ","textAfter":" et al.","comments":[],"startOffset":286,"endOffset":293,"imageHasTransparency":false,"excluded":false,"sourceId":null,"changes":[{"analysisNumber":0,"type":"ADDED","dateTime":"2022-10-20T12:53:54.83256+02:00"}],"manualChanges":[],"engines":["RULE"],"reference":[],"importedRedactionIntersections":[],"recommendation":false,"falsePositive":false,"dictionaryEntry":false,"dossierDictionaryEntry":false,"localManualRedaction":false,"manuallyRemoved":false,"hint":false,"image":false},{"id":"12b0a0abf2877b4c0b3a87468c1fd65b","type":"CBI_author","value":"Desiree","reason":"Author found","matchedRule":1,"rectangle":false,"legalBasis":"Article 39(e)(3) of Regulation (EC) No 178/2002","imported":false,"redacted":true,"section":"Rule: Additional Test: Names shoud be rule-based recommendations now","color":[1.0,0.88235295,0.5294118],"positions":[{"topLeft":{"x":197.2,"y":430.13498},"width":30.699982,"height":-11.535004,"page":2}],"sectionNumber":13,"textBefore":"recommendations for “","textAfter":"” and “Melanie”","comments":[],"startOffset":101,"endOffset":108,"imageHasTransparency":false,"excluded":false,"sourceId":null,"changes":[{"analysisNumber":0,"type":"ADDED","dateTime":"2022-10-20T12:53:54.832566+02:00"}],"manualChanges":[],"engines":["RULE"],"reference":[],"importedRedactionIntersections":[],"recommendation":true,"falsePositive":false,"dictionaryEntry":false,"dossierDictionaryEntry":false,"localManualRedaction":false,"manuallyRemoved":false,"hint":false,"image":false},{"id":"2316235decd827887e0f81df8f31f8bb","type":"CBI_author","value":"Michael N.","reason":"Author found","matchedRule":6,"rectangle":false,"legalBasis":"Article 39(e)(3) of Regulation (EC) No 178/2002","imported":false,"redacted":true,"section":"Table in: Rule: Redact Auths Cells in Tables","color":[1.0,0.88235295,0.5294118],"positions":[{"topLeft":{"x":141.2,"y":641.61176},"width":47.197525,"height":-11.811752,"page":2}],"sectionNumber":7,"textBefore":null,"textAfter":null,"comments":[],"startOffset":7,"endOffset":17,"imageHasTransparency":false,"excluded":false,"sourceId":null,"changes":[{"analysisNumber":0,"type":"ADDED","dateTime":"2022-10-20T12:53:54.832572+02:00"}],"manualChanges":[],"engines":["RULE"],"reference":[],"importedRedactionIntersections":[],"recommendation":false,"falsePositive":false,"dictionaryEntry":false,"dossierDictionaryEntry":false,"localManualRedaction":false,"manuallyRemoved":false,"hint":false,"image":false},{"id":"25c8001e1de2c20c90d9877404f98c9e","type":"CBI_author","value":"Funnarie B.","reason":"Author found","matchedRule":6,"rectangle":false,"legalBasis":"Article 39(e)(3) of Regulation (EC) No 178/2002","imported":false,"redacted":true,"section":"Table in: Rule: Redact Auths Cells in Tables","color":[1.0,0.88235295,0.5294118],"positions":[{"topLeft":{"x":140.0,"y":611.81177},"width":49.581024,"height":-11.811752,"page":2}],"sectionNumber":8,"textBefore":null,"textAfter":null,"comments":[],"startOffset":7,"endOffset":18,"imageHasTransparency":false,"excluded":false,"sourceId":null,"changes":[{"analysisNumber":0,"type":"ADDED","dateTime":"2022-10-20T12:53:54.832578+02:00"}],"manualChanges":[],"engines":["RULE"],"reference":[],"importedRedactionIntersections":[],"recommendation":false,"falsePositive":false,"dictionaryEntry":false,"dossierDictionaryEntry":false,"localManualRedaction":false,"manuallyRemoved":false,"hint":false,"image":false},{"id":"ac54363c6918025c965d138529f3a00c","type":"CBI_author","value":"Melanie","reason":"Author found","matchedRule":1,"rectangle":false,"legalBasis":"Article 39(e)(3) of Regulation (EC) No 178/2002","imported":false,"redacted":true,"section":"Rule: Additional Test: Names shoud be rule-based recommendations now","color":[1.0,0.88235295,0.5294118],"positions":[{"topLeft":{"x":259.05,"y":430.13498},"width":32.70993,"height":-11.535004,"page":2}],"sectionNumber":13,"textBefore":"“Desiree” and “","textAfter":"” Lorem ipsum","comments":[],"startOffset":115,"endOffset":122,"imageHasTransparency":false,"excluded":false,"sourceId":null,"changes":[{"analysisNumber":0,"type":"ADDED","dateTime":"2022-10-20T12:53:54.832584+02:00"}],"manualChanges":[],"engines":["RULE"],"reference":[],"importedRedactionIntersections":[],"recommendation":true,"falsePositive":false,"dictionaryEntry":false,"dossierDictionaryEntry":false,"localManualRedaction":false,"manuallyRemoved":false,"hint":false,"image":false},{"id":"46f9bad295a9b986fedcea416b7f1dcf","type":"PII","value":"Page","reason":"Personal information found","matchedRule":19,"rectangle":false,"legalBasis":"Article 39(e)(3) of Regulation (EC) No 178/2002","imported":false,"redacted":true,"section":"Footer","color":[0.4,0.8,1.0],"positions":[{"topLeft":{"x":100.479996,"y":69.94202},"width":23.304,"height":-12.642029,"page":2}],"sectionNumber":42,"textBefore":"This is a ","textAfter":"-Footer","comments":[],"startOffset":10,"endOffset":14,"imageHasTransparency":false,"excluded":false,"sourceId":null,"changes":[{"analysisNumber":0,"type":"ADDED","dateTime":"2022-10-20T12:53:54.83259+02:00"}],"manualChanges":[],"engines":["DICTIONARY"],"reference":[],"importedRedactionIntersections":[],"recommendation":false,"falsePositive":false,"dictionaryEntry":true,"dossierDictionaryEntry":false,"localManualRedaction":false,"manuallyRemoved":false,"hint":false,"image":false},{"id":"8700805fe26f929a1afa9d8c27afa3bb","type":"CBI_author","value":"Desiree","reason":"Author found","matchedRule":14,"rectangle":false,"legalBasis":"Article 39(e)(3) of Regulation (EC) No 178/2002","imported":false,"redacted":true,"section":"Rule: Redact and add recommendation for et al.","color":[1.0,0.88235295,0.5294118],"positions":[{"topLeft":{"x":115.34999,"y":512.235},"width":30.61,"height":-11.535004,"page":2}],"sectionNumber":12,"textBefore":"Redact Term “","textAfter":"”, “Melanie” and","comments":[],"startOffset":60,"endOffset":67,"imageHasTransparency":false,"excluded":false,"sourceId":null,"changes":[{"analysisNumber":0,"type":"ADDED","dateTime":"2022-10-20T12:53:54.832596+02:00"}],"manualChanges":[],"engines":["RULE"],"reference":[],"importedRedactionIntersections":[],"recommendation":false,"falsePositive":false,"dictionaryEntry":false,"dossierDictionaryEntry":false,"localManualRedaction":false,"manuallyRemoved":false,"hint":false,"image":false},{"id":"7509328338c4e2a584aae578ee354be6","type":"CBI_author","value":"Desiree","reason":"Author found","matchedRule":14,"rectangle":false,"legalBasis":"Article 39(e)(3) of Regulation (EC) No 178/2002","imported":false,"redacted":true,"section":"Rule: Redact and add recommendation for et al.","color":[1.0,0.88235295,0.5294118],"positions":[{"topLeft":{"x":324.29214,"y":499.94202},"width":36.600037,"height":-12.641998,"page":2}],"sectionNumber":12,"textBefore":"consectetur adipiscing elit ","textAfter":" et al","comments":[],"startOffset":206,"endOffset":213,"imageHasTransparency":false,"excluded":false,"sourceId":null,"changes":[{"analysisNumber":0,"type":"ADDED","dateTime":"2022-10-20T12:53:54.832602+02:00"}],"manualChanges":[],"engines":["RULE"],"reference":[],"importedRedactionIntersections":[],"recommendation":false,"falsePositive":false,"dictionaryEntry":false,"dossierDictionaryEntry":false,"localManualRedaction":false,"manuallyRemoved":false,"hint":false,"image":false},{"id":"5974b001dd9553bc874eefd0a8cda4bf","type":"vertebrate","value":"mouse","reason":null,"matchedRule":0,"rectangle":false,"legalBasis":null,"imported":false,"redacted":false,"section":"Rule: Add recommendation for Addresses in Test Organism/Animals\nsections","color":[1.0,0.52156866,0.96862745],"positions":[{"topLeft":{"x":318.66403,"y":629.242},"width":32.604004,"height":-12.641998,"page":3}],"sectionNumber":14,"textBefore":null,"textAfter":null,"comments":[],"startOffset":405,"endOffset":410,"imageHasTransparency":false,"excluded":false,"sourceId":null,"changes":[{"analysisNumber":0,"type":"ADDED","dateTime":"2022-10-20T12:53:54.832608+02:00"}],"manualChanges":[],"engines":["DICTIONARY"],"reference":[],"importedRedactionIntersections":[],"recommendation":false,"falsePositive":false,"dictionaryEntry":true,"dossierDictionaryEntry":false,"localManualRedaction":false,"manuallyRemoved":false,"hint":true,"image":false},{"id":"a6906abd38ee8523e10fb253961fd1b3","type":"vertebrate","value":"mouse","reason":null,"matchedRule":0,"rectangle":false,"legalBasis":null,"imported":false,"redacted":false,"section":"Rule: (2/2 additional negative test)","color":[1.0,0.52156866,0.96862745],"positions":[{"topLeft":{"x":323.92007,"y":409.74203},"width":32.69998,"height":-12.641998,"page":3}],"sectionNumber":16,"textBefore":null,"textAfter":null,"comments":[],"startOffset":189,"endOffset":194,"imageHasTransparency":false,"excluded":false,"sourceId":null,"changes":[{"analysisNumber":0,"type":"ADDED","dateTime":"2022-10-20T12:53:54.832614+02:00"}],"manualChanges":[],"engines":["DICTIONARY"],"reference":[],"importedRedactionIntersections":[],"recommendation":false,"falsePositive":false,"dictionaryEntry":true,"dossierDictionaryEntry":false,"localManualRedaction":false,"manuallyRemoved":false,"hint":true,"image":false},{"id":"8dae8a1c06887032507aa97105228632","type":"PII","value":"Page","reason":"Personal information found","matchedRule":19,"rectangle":false,"legalBasis":"Article 39(e)(3) of Regulation (EC) No 178/2002","imported":false,"redacted":true,"section":"Footer","color":[0.4,0.8,1.0],"positions":[{"topLeft":{"x":100.479996,"y":69.94202},"width":23.304,"height":-12.642029,"page":3}],"sectionNumber":43,"textBefore":"This is a ","textAfter":"-Footer","comments":[],"startOffset":10,"endOffset":14,"imageHasTransparency":false,"excluded":false,"sourceId":null,"changes":[{"analysisNumber":0,"type":"ADDED","dateTime":"2022-10-20T12:53:54.832619+02:00"}],"manualChanges":[],"engines":["DICTIONARY"],"reference":[],"importedRedactionIntersections":[],"recommendation":false,"falsePositive":false,"dictionaryEntry":true,"dossierDictionaryEntry":false,"localManualRedaction":false,"manuallyRemoved":false,"hint":false,"image":false},{"id":"d5e7080108b5136d1bfe7d19d9322e32","type":"PII","value":"Page","reason":"Personal information found","matchedRule":19,"rectangle":false,"legalBasis":"Article 39(e)(3) of Regulation (EC) No 178/2002","imported":false,"redacted":true,"section":"Header","color":[0.4,0.8,1.0],"positions":[{"topLeft":{"x":100.479996,"y":734.742},"width":23.304,"height":-12.641998,"page":3}],"sectionNumber":35,"textBefore":"This is a ","textAfter":"-Header","comments":[],"startOffset":10,"endOffset":14,"imageHasTransparency":false,"excluded":false,"sourceId":null,"changes":[{"analysisNumber":0,"type":"ADDED","dateTime":"2022-10-20T12:53:54.832625+02:00"}],"manualChanges":[],"engines":["DICTIONARY"],"reference":[],"importedRedactionIntersections":[],"recommendation":false,"falsePositive":false,"dictionaryEntry":true,"dossierDictionaryEntry":false,"localManualRedaction":false,"manuallyRemoved":false,"hint":false,"image":false},{"id":"cba8de0eefd44b342499cf86e39f73bb","type":"vertebrate","value":"mouse","reason":null,"matchedRule":0,"rectangle":false,"legalBasis":null,"imported":false,"redacted":false,"section":"Rule: Add recommendation for Addresses in Test Organism/Animals\nsections","color":[1.0,0.52156866,0.96862745],"positions":[{"topLeft":{"x":318.66403,"y":643.04205},"width":32.604004,"height":-12.641998,"page":3}],"sectionNumber":14,"textBefore":null,"textAfter":null,"comments":[],"startOffset":319,"endOffset":324,"imageHasTransparency":false,"excluded":false,"sourceId":null,"changes":[{"analysisNumber":0,"type":"ADDED","dateTime":"2022-10-20T12:53:54.832631+02:00"}],"manualChanges":[],"engines":["DICTIONARY"],"reference":[],"importedRedactionIntersections":[],"recommendation":false,"falsePositive":false,"dictionaryEntry":true,"dossierDictionaryEntry":false,"localManualRedaction":false,"manuallyRemoved":false,"hint":true,"image":false},{"id":"9b0e30747d674055b044cd2f2fcb8f87","type":"vertebrate","value":"mouse","reason":null,"matchedRule":0,"rectangle":false,"legalBasis":null,"imported":false,"redacted":false,"section":"Rule: (2/2 additional negative test)","color":[1.0,0.52156866,0.96862745],"positions":[{"topLeft":{"x":336.9161,"y":423.54202},"width":32.69998,"height":-12.641998,"page":3}],"sectionNumber":16,"textBefore":null,"textAfter":null,"comments":[],"startOffset":105,"endOffset":110,"imageHasTransparency":false,"excluded":false,"sourceId":null,"changes":[{"analysisNumber":0,"type":"ADDED","dateTime":"2022-10-20T12:53:54.832637+02:00"}],"manualChanges":[],"engines":["DICTIONARY"],"reference":[],"importedRedactionIntersections":[],"recommendation":false,"falsePositive":false,"dictionaryEntry":true,"dossierDictionaryEntry":false,"localManualRedaction":false,"manuallyRemoved":false,"hint":true,"image":false},{"id":"ebefb94fc7d83bca28168fb89a005b88","type":"PII","value":"kawasaki@me.com","reason":"Personal information found","matchedRule":21,"rectangle":false,"legalBasis":"Article 39(e)(3) of Regulation (EC) No 178/2002","imported":false,"redacted":true,"section":"Rule: Redact Emails by RegEx","color":[0.4,0.8,1.0],"positions":[{"topLeft":{"x":138.15999,"y":457.34204},"width":93.888016,"height":-12.641998,"page":4}],"sectionNumber":19,"textBefore":"proident, sunt in ","textAfter":" culpa qui","comments":[],"startOffset":317,"endOffset":332,"imageHasTransparency":false,"excluded":false,"sourceId":null,"changes":[{"analysisNumber":0,"type":"ADDED","dateTime":"2022-10-20T12:53:54.832643+02:00"}],"manualChanges":[],"engines":["RULE"],"reference":[],"importedRedactionIntersections":[],"recommendation":false,"falsePositive":false,"dictionaryEntry":false,"dossierDictionaryEntry":false,"localManualRedaction":false,"manuallyRemoved":false,"hint":false,"image":false},{"id":"5e781e7f1109430d4cfa3f21844b4b91","type":"PII","value":"Özgür U. Reyhan","reason":"Personal information found","matchedRule":19,"rectangle":false,"legalBasis":"Article 39(e)(3) of Regulation (EC) No 178/2002","imported":false,"redacted":true,"section":"Rule: Redacted PII Personal Identification Information based on Dict","color":[0.4,0.8,1.0],"positions":[{"topLeft":{"x":56.8,"y":633.84204},"width":84.276,"height":-12.641998,"page":4}],"sectionNumber":18,"textBefore":"Sude Halide Nurullah ","textAfter":" B. Rahim","comments":[],"startOffset":213,"endOffset":228,"imageHasTransparency":false,"excluded":false,"sourceId":null,"changes":[{"analysisNumber":0,"type":"ADDED","dateTime":"2022-10-20T12:53:54.83265+02:00"}],"manualChanges":[],"engines":["DICTIONARY"],"reference":[],"importedRedactionIntersections":[],"recommendation":false,"falsePositive":false,"dictionaryEntry":true,"dossierDictionaryEntry":false,"localManualRedaction":false,"manuallyRemoved":false,"hint":false,"image":false},{"id":"f03e05490be41417d1c690db1a948d36","type":"PII","value":"Naka-27 Aomachi, Nomi, Ishikawa 923-1101, Japan, JP","reason":"Personal information found","matchedRule":19,"rectangle":false,"legalBasis":"Article 39(e)(3) of Regulation (EC) No 178/2002","imported":false,"redacted":true,"section":"Rule: Redacted PII Personal Identification Information based on Dict","color":[0.4,0.8,1.0],"positions":[{"topLeft":{"x":56.8,"y":661.442},"width":269.41208,"height":-12.641998,"page":4}],"sectionNumber":18,"textBefore":"Study is No ","textAfter":" Sude Halide","comments":[],"startOffset":140,"endOffset":191,"imageHasTransparency":false,"excluded":false,"sourceId":null,"changes":[{"analysisNumber":0,"type":"ADDED","dateTime":"2022-10-20T12:53:54.832656+02:00"}],"manualChanges":[],"engines":["DICTIONARY"],"reference":[],"importedRedactionIntersections":[],"recommendation":false,"falsePositive":false,"dictionaryEntry":true,"dossierDictionaryEntry":false,"localManualRedaction":false,"manuallyRemoved":false,"hint":false,"image":false},{"id":"a8de94583a2b9089f127532a93c70c58","type":"PII","value":"Xinyi Y. Tao","reason":"Personal information found","matchedRule":19,"rectangle":false,"legalBasis":"Article 39(e)(3) of Regulation (EC) No 178/2002","imported":false,"redacted":true,"section":"Rule: Redacted PII Personal Identification Information based on Dict","color":[0.4,0.8,1.0],"positions":[{"topLeft":{"x":56.8,"y":592.442},"width":60.575993,"height":-12.641998,"page":4}],"sectionNumber":18,"textBefore":"C. J. Alfred ","textAfter":" Clara Siegfried","comments":[],"startOffset":251,"endOffset":263,"imageHasTransparency":false,"excluded":false,"sourceId":null,"changes":[{"analysisNumber":0,"type":"ADDED","dateTime":"2022-10-20T12:53:54.832662+02:00"}],"manualChanges":[],"engines":["DICTIONARY"],"reference":[],"importedRedactionIntersections":[],"recommendation":false,"falsePositive":false,"dictionaryEntry":true,"dossierDictionaryEntry":false,"localManualRedaction":false,"manuallyRemoved":false,"hint":false,"image":false},{"id":"4e51f006ef94b176a59bdd7af2bd5755","type":"PII","value":"Sude Halide Nurullah","reason":"Personal information found","matchedRule":19,"rectangle":false,"legalBasis":"Article 39(e)(3) of Regulation (EC) No 178/2002","imported":false,"redacted":true,"section":"Rule: Redacted PII Personal Identification Information based on Dict","color":[0.4,0.8,1.0],"positions":[{"topLeft":{"x":56.8,"y":647.642},"width":104.556,"height":-12.641998,"page":4}],"sectionNumber":18,"textBefore":"923-1101, Japan, JP ","textAfter":" Özgür U.","comments":[],"startOffset":192,"endOffset":212,"imageHasTransparency":false,"excluded":false,"sourceId":null,"changes":[{"analysisNumber":0,"type":"ADDED","dateTime":"2022-10-20T12:53:54.832668+02:00"}],"manualChanges":[],"engines":["DICTIONARY"],"reference":[],"importedRedactionIntersections":[],"recommendation":false,"falsePositive":false,"dictionaryEntry":true,"dossierDictionaryEntry":false,"localManualRedaction":false,"manuallyRemoved":false,"hint":false,"image":false},{"id":"67f4d9d9d0b317a3b04caf21d7e9e4eb","type":"PII","value":"gordonjcp@msn.com","reason":"Personal information found","matchedRule":21,"rectangle":false,"legalBasis":"Article 39(e)(3) of Regulation (EC) No 178/2002","imported":false,"redacted":true,"section":"Rule: Redact Emails by RegEx","color":[0.4,0.8,1.0],"positions":[{"topLeft":{"x":404.99225,"y":484.94202},"width":103.308075,"height":-12.641998,"page":4}],"sectionNumber":19,"textBefore":"reprehenderit in voluptate ","textAfter":" velit esse","comments":[],"startOffset":172,"endOffset":189,"imageHasTransparency":false,"excluded":false,"sourceId":null,"changes":[{"analysisNumber":0,"type":"ADDED","dateTime":"2022-10-20T12:53:54.832673+02:00"}],"manualChanges":[],"engines":["RULE"],"reference":[],"importedRedactionIntersections":[],"recommendation":false,"falsePositive":false,"dictionaryEntry":false,"dossierDictionaryEntry":false,"localManualRedaction":false,"manuallyRemoved":false,"hint":false,"image":false},{"id":"cd60a0f6e509f753eb4e1bec39cebb5b","type":"PII","value":"Page","reason":"Personal information found","matchedRule":19,"rectangle":false,"legalBasis":"Article 39(e)(3) of Regulation (EC) No 178/2002","imported":false,"redacted":true,"section":"Footer","color":[0.4,0.8,1.0],"positions":[{"topLeft":{"x":100.479996,"y":69.94202},"width":23.304,"height":-12.642029,"page":4}],"sectionNumber":44,"textBefore":"This is a ","textAfter":"-Footer","comments":[],"startOffset":10,"endOffset":14,"imageHasTransparency":false,"excluded":false,"sourceId":null,"changes":[{"analysisNumber":0,"type":"ADDED","dateTime":"2022-10-20T12:53:54.832679+02:00"}],"manualChanges":[],"engines":["DICTIONARY"],"reference":[],"importedRedactionIntersections":[],"recommendation":false,"falsePositive":false,"dictionaryEntry":true,"dossierDictionaryEntry":false,"localManualRedaction":false,"manuallyRemoved":false,"hint":false,"image":false},{"id":"31f0cd9187984d53106d99fe080b9756","type":"PII","value":"dinther@comcast.net","reason":"Personal information found","matchedRule":21,"rectangle":false,"legalBasis":"Article 39(e)(3) of Regulation (EC) No 178/2002","imported":false,"redacted":true,"section":"Rule: Redact Emails by RegEx","color":[0.4,0.8,1.0],"positions":[{"topLeft":{"x":333.9761,"y":471.14203},"width":101.904144,"height":-12.641998,"page":4}],"sectionNumber":19,"textBefore":"pariatur. Excepteur sint ","textAfter":" occaecat cupidatat","comments":[],"startOffset":256,"endOffset":275,"imageHasTransparency":false,"excluded":false,"sourceId":null,"changes":[{"analysisNumber":0,"type":"ADDED","dateTime":"2022-10-20T12:53:54.832686+02:00"}],"manualChanges":[],"engines":["RULE"],"reference":[],"importedRedactionIntersections":[],"recommendation":false,"falsePositive":false,"dictionaryEntry":false,"dossierDictionaryEntry":false,"localManualRedaction":false,"manuallyRemoved":false,"hint":false,"image":false},{"id":"dfe81db1809e3009b760799f34bc5766","type":"PII","value":"library@outlook.com","reason":"Personal information found","matchedRule":21,"rectangle":false,"legalBasis":"Article 39(e)(3) of Regulation (EC) No 178/2002","imported":false,"redacted":true,"section":"Rule: Redact Emails by RegEx","color":[0.4,0.8,1.0],"positions":[{"topLeft":{"x":171.76,"y":484.94202},"width":103.296036,"height":-12.641998,"page":4}],"sectionNumber":19,"textBefore":"irure dolor in ","textAfter":" reprehenderit in","comments":[],"startOffset":125,"endOffset":144,"imageHasTransparency":false,"excluded":false,"sourceId":null,"changes":[{"analysisNumber":0,"type":"ADDED","dateTime":"2022-10-20T12:53:54.832694+02:00"}],"manualChanges":[],"engines":["RULE"],"reference":[],"importedRedactionIntersections":[],"recommendation":false,"falsePositive":false,"dictionaryEntry":false,"dossierDictionaryEntry":false,"localManualRedaction":false,"manuallyRemoved":false,"hint":false,"image":false},{"id":"d28430c33ca0fbbff570a3b2ceb0cf36","type":"PII","value":"B. Rahim","reason":"Personal information found","matchedRule":19,"rectangle":false,"legalBasis":"Article 39(e)(3) of Regulation (EC) No 178/2002","imported":false,"redacted":true,"section":"Rule: Redacted PII Personal Identification Information based on Dict","color":[0.4,0.8,1.0],"positions":[{"topLeft":{"x":56.8,"y":620.04205},"width":45.99599,"height":-12.641998,"page":4}],"sectionNumber":18,"textBefore":"Özgür U. Reyhan ","textAfter":" C. J.","comments":[],"startOffset":229,"endOffset":237,"imageHasTransparency":false,"excluded":false,"sourceId":null,"changes":[{"analysisNumber":0,"type":"ADDED","dateTime":"2022-10-20T12:53:54.8327+02:00"}],"manualChanges":[],"engines":["DICTIONARY"],"reference":[],"importedRedactionIntersections":[],"recommendation":false,"falsePositive":false,"dictionaryEntry":true,"dossierDictionaryEntry":false,"localManualRedaction":false,"manuallyRemoved":false,"hint":false,"image":false},{"id":"ad8fa6196a3838dad2297d56eda0bed1","type":"PII","value":"Page","reason":"Personal information found","matchedRule":19,"rectangle":false,"legalBasis":"Article 39(e)(3) of Regulation (EC) No 178/2002","imported":false,"redacted":true,"section":"Header","color":[0.4,0.8,1.0],"positions":[{"topLeft":{"x":100.479996,"y":734.742},"width":23.304,"height":-12.641998,"page":4}],"sectionNumber":36,"textBefore":"This is a ","textAfter":"-Header","comments":[],"startOffset":10,"endOffset":14,"imageHasTransparency":false,"excluded":false,"sourceId":null,"changes":[{"analysisNumber":0,"type":"ADDED","dateTime":"2022-10-20T12:53:54.832706+02:00"}],"manualChanges":[],"engines":["DICTIONARY"],"reference":[],"importedRedactionIntersections":[],"recommendation":false,"falsePositive":false,"dictionaryEntry":true,"dossierDictionaryEntry":false,"localManualRedaction":false,"manuallyRemoved":false,"hint":false,"image":false},{"id":"fd3fee79edb5ad7d636c53615cb11fec","type":"PII","value":"+274 34223331","reason":"Personal information found","matchedRule":25,"rectangle":false,"legalBasis":"Article 39(e)(2) of Regulation (EC) No 178/2002","imported":false,"redacted":true,"section":"Table in: Rule: Redact contact information (contains \"Contact point:\")","color":[0.4,0.8,1.0],"positions":[{"topLeft":{"x":350.83902,"y":314.9815},"width":56.79001,"height":-10.981506,"page":5}],"sectionNumber":21,"textBefore":"1432 8990 Telephone: ","textAfter":" Phone No.","comments":[],"startOffset":616,"endOffset":629,"imageHasTransparency":false,"excluded":false,"sourceId":null,"changes":[{"analysisNumber":0,"type":"ADDED","dateTime":"2022-10-20T12:53:54.832712+02:00"}],"manualChanges":[],"engines":["RULE"],"reference":[],"importedRedactionIntersections":[],"recommendation":false,"falsePositive":false,"dictionaryEntry":false,"dossierDictionaryEntry":false,"localManualRedaction":false,"manuallyRemoved":false,"hint":false,"image":false},{"id":"329e59bc98f9137764def10a3a3c32a5","type":"PII","value":"+27414328992","reason":"Personal information found","matchedRule":23,"rectangle":false,"legalBasis":"Article 39(e)(3) of Regulation (EC) No 178/2002","imported":false,"redacted":true,"section":"Table in: Rule: Redact contact information (contains \"Contact point:\")","color":[0.4,0.8,1.0],"positions":[{"topLeft":{"x":380.61105,"y":345.9815},"width":54.503998,"height":-10.981506,"page":5}],"sectionNumber":21,"textBefore":"Schmitt Telephone number: ","textAfter":" Telephone No:","comments":[],"startOffset":536,"endOffset":548,"imageHasTransparency":false,"excluded":false,"sourceId":null,"changes":[{"analysisNumber":0,"type":"ADDED","dateTime":"2022-10-20T12:53:54.832718+02:00"}],"manualChanges":[],"engines":["RULE"],"reference":[],"importedRedactionIntersections":[],"recommendation":false,"falsePositive":false,"dictionaryEntry":false,"dossierDictionaryEntry":false,"localManualRedaction":false,"manuallyRemoved":false,"hint":false,"image":false},{"id":"4d631567bb6f2e9285317ab957618e1c","type":"PII","value":"Seriknowmobil@co.uk","reason":"Personal information found","matchedRule":23,"rectangle":false,"legalBasis":"Article 39(e)(3) of Regulation (EC) No 178/2002","imported":false,"redacted":true,"section":"Table in: Rule: Redact contact information (contains \"Contact point:\")","color":[0.4,0.8,1.0],"positions":[{"topLeft":{"x":338.04105,"y":397.7815},"width":83.43005,"height":-10.981506,"page":5}],"sectionNumber":21,"textBefore":"6653 44563 E-mail: ","textAfter":" Email: maximiliamschmitt@arcor.de","comments":[],"startOffset":365,"endOffset":384,"imageHasTransparency":false,"excluded":false,"sourceId":null,"changes":[{"analysisNumber":0,"type":"ADDED","dateTime":"2022-10-20T12:53:54.832724+02:00"}],"manualChanges":[],"engines":["RULE"],"reference":[],"importedRedactionIntersections":[],"recommendation":false,"falsePositive":false,"dictionaryEntry":false,"dossierDictionaryEntry":false,"localManualRedaction":false,"manuallyRemoved":false,"hint":false,"image":false},{"id":"d04984817b6ca07cf7b5d86c13ea1c11","type":"PII","value":"Emilia Lockhart","reason":"Personal information found","matchedRule":23,"rectangle":false,"legalBasis":"Article 39(e)(3) of Regulation (EC) No 178/2002","imported":false,"redacted":true,"section":"Table in: Rule: Redact contact information (contains \"Contact point:\")","color":[0.4,0.8,1.0],"positions":[{"topLeft":{"x":382.1681,"y":273.58148},"width":58.59906,"height":-10.981506,"page":5}],"sectionNumber":21,"textBefore":"Institute Alternative contact: ","textAfter":" Alternative contact:","comments":[],"startOffset":744,"endOffset":759,"imageHasTransparency":false,"excluded":false,"sourceId":null,"changes":[{"analysisNumber":0,"type":"ADDED","dateTime":"2022-10-20T12:53:54.83273+02:00"}],"manualChanges":[],"engines":["RULE"],"reference":[],"importedRedactionIntersections":[],"recommendation":false,"falsePositive":false,"dictionaryEntry":false,"dossierDictionaryEntry":false,"localManualRedaction":false,"manuallyRemoved":false,"hint":false,"image":false},{"id":"3e890a0654b20c0af614b9ea29388fca","type":"PII","value":"maximiliamschmitt@arcor.de","reason":"Personal information found","matchedRule":23,"rectangle":false,"legalBasis":"Article 39(e)(3) of Regulation (EC) No 178/2002","imported":false,"redacted":true,"section":"Table in: Rule: Redact contact information (contains \"Contact point:\")","color":[0.4,0.8,1.0],"positions":[{"topLeft":{"x":335.04404,"y":387.3815},"width":106.83017,"height":-10.981506,"page":5}],"sectionNumber":21,"textBefore":"E-mail: Seriknowmobil@co.uk Email: ","textAfter":" e-mail: maximiliamschmitt@t-online.de","comments":[],"startOffset":392,"endOffset":418,"imageHasTransparency":false,"excluded":false,"sourceId":null,"changes":[{"analysisNumber":0,"type":"ADDED","dateTime":"2022-10-20T12:53:54.832739+02:00"}],"manualChanges":[],"engines":["RULE"],"reference":[],"importedRedactionIntersections":[],"recommendation":false,"falsePositive":false,"dictionaryEntry":false,"dossierDictionaryEntry":false,"localManualRedaction":false,"manuallyRemoved":false,"hint":false,"image":false},{"id":"1938a09344ec04ec62c8d408d0af3450","type":"PII","value":"+274 1432 8933","reason":"Personal information found","matchedRule":23,"rectangle":false,"legalBasis":"Article 39(e)(3) of Regulation (EC) No 178/2002","imported":false,"redacted":true,"section":"Table in: Rule: Redact contact information (contains \"Contact point:\")","color":[0.4,0.8,1.0],"positions":[{"topLeft":{"x":349.075,"y":304.5815},"width":59.085022,"height":-10.981506,"page":5}],"sectionNumber":21,"textBefore":"34223331 Phone No. ","textAfter":" Contact: 493","comments":[],"startOffset":640,"endOffset":654,"imageHasTransparency":false,"excluded":false,"sourceId":null,"changes":[{"analysisNumber":0,"type":"ADDED","dateTime":"2022-10-20T12:53:54.832745+02:00"}],"manualChanges":[],"engines":["RULE"],"reference":[],"importedRedactionIntersections":[],"recommendation":false,"falsePositive":false,"dictionaryEntry":false,"dossierDictionaryEntry":false,"localManualRedaction":false,"manuallyRemoved":false,"hint":false,"image":false},{"id":"de467da93491d645a8c55ee2d07ef6da","type":"PII","value":"+55 1221 3431 14","reason":"Personal information found","matchedRule":25,"rectangle":false,"legalBasis":"Article 39(e)(2) of Regulation (EC) No 178/2002","imported":false,"redacted":true,"section":"Rule: Redact contact information (contains \"Contact point:\")","color":[0.4,0.8,1.0],"positions":[{"topLeft":{"x":164.8,"y":484.34204},"width":87.79199,"height":-12.641998,"page":5}],"sectionNumber":23,"textBefore":"be redacted Fax ","textAfter":null,"comments":[],"startOffset":570,"endOffset":586,"imageHasTransparency":false,"excluded":false,"sourceId":null,"changes":[{"analysisNumber":0,"type":"ADDED","dateTime":"2022-10-20T12:53:54.832751+02:00"}],"manualChanges":[],"engines":["RULE"],"reference":[],"importedRedactionIntersections":[],"recommendation":false,"falsePositive":false,"dictionaryEntry":false,"dossierDictionaryEntry":false,"localManualRedaction":false,"manuallyRemoved":false,"hint":false,"image":false},{"id":"318c142244f4fdde2b40981dd70ab353","type":"PII","value":"Page","reason":"Personal information found","matchedRule":19,"rectangle":false,"legalBasis":"Article 39(e)(3) of Regulation (EC) No 178/2002","imported":false,"redacted":true,"section":"Footer","color":[0.4,0.8,1.0],"positions":[{"topLeft":{"x":100.479996,"y":69.94202},"width":23.304,"height":-12.642029,"page":5}],"sectionNumber":45,"textBefore":"This is a ","textAfter":"-Footer","comments":[],"startOffset":10,"endOffset":14,"imageHasTransparency":false,"excluded":false,"sourceId":null,"changes":[{"analysisNumber":0,"type":"ADDED","dateTime":"2022-10-20T12:53:54.832757+02:00"}],"manualChanges":[],"engines":["DICTIONARY"],"reference":[],"importedRedactionIntersections":[],"recommendation":false,"falsePositive":false,"dictionaryEntry":true,"dossierDictionaryEntry":false,"localManualRedaction":false,"manuallyRemoved":false,"hint":false,"image":false},{"id":"f5bd3a0921331158533230b006c642e0","type":"PII","value":"+55 1221 3431 13","reason":"Personal information found","matchedRule":25,"rectangle":false,"legalBasis":"Article 39(e)(2) of Regulation (EC) No 178/2002","imported":false,"redacted":true,"section":"Rule: Redact contact information (contains \"Contact point:\")","color":[0.4,0.8,1.0],"positions":[{"topLeft":{"x":164.8,"y":525.742},"width":87.79199,"height":-12.641998,"page":5}],"sectionNumber":23,"textBefore":"be redacted Tel.: ","textAfter":" No: This","comments":[],"startOffset":457,"endOffset":473,"imageHasTransparency":false,"excluded":false,"sourceId":null,"changes":[{"analysisNumber":0,"type":"ADDED","dateTime":"2022-10-20T12:53:54.832763+02:00"}],"manualChanges":[],"engines":["RULE"],"reference":[],"importedRedactionIntersections":[],"recommendation":false,"falsePositive":false,"dictionaryEntry":false,"dossierDictionaryEntry":false,"localManualRedaction":false,"manuallyRemoved":false,"hint":false,"image":false},{"id":"6956bc0e757963e6e6b9e3abe0f442ed","type":"PII","value":"This is a special case, everything between this and the next keyword should be redacted","reason":"Personal information found","matchedRule":23,"rectangle":false,"legalBasis":"Article 39(e)(3) of Regulation (EC) No 178/2002","imported":false,"redacted":true,"section":"Rule: Redact contact information (contains \"Contact point:\")","color":[0.4,0.8,1.0],"positions":[{"topLeft":{"x":164.8,"y":553.34204},"width":282.8523,"height":-12.641998,"page":5},{"topLeft":{"x":164.8,"y":539.54205},"width":134.88008,"height":-12.641998,"page":5}],"sectionNumber":23,"textBefore":"E-mail: shinrorg@saopu.com.br Contact: ","textAfter":" Tel.: +55","comments":[],"startOffset":363,"endOffset":450,"imageHasTransparency":false,"excluded":false,"sourceId":null,"changes":[{"analysisNumber":0,"type":"ADDED","dateTime":"2022-10-20T12:53:54.832769+02:00"}],"manualChanges":[],"engines":["RULE"],"reference":[],"importedRedactionIntersections":[],"recommendation":false,"falsePositive":false,"dictionaryEntry":false,"dossierDictionaryEntry":false,"localManualRedaction":false,"manuallyRemoved":false,"hint":false,"image":false},{"id":"1397437aa63807fc1993b184cb12cc88","type":"PII","value":"+55 1221 3431 12","reason":"Personal information found","matchedRule":25,"rectangle":false,"legalBasis":"Article 39(e)(2) of Regulation (EC) No 178/2002","imported":false,"redacted":true,"section":"Rule: Redact contact information (contains \"Contact point:\")","color":[0.4,0.8,1.0],"positions":[{"topLeft":{"x":164.8,"y":594.742},"width":87.79199,"height":-12.641998,"page":5}],"sectionNumber":23,"textBefore":"TX, USA Phone: ","textAfter":" Fax: +55","comments":[],"startOffset":285,"endOffset":301,"imageHasTransparency":false,"excluded":false,"sourceId":null,"changes":[{"analysisNumber":0,"type":"ADDED","dateTime":"2022-10-20T12:53:54.832774+02:00"}],"manualChanges":[],"engines":["RULE"],"reference":[],"importedRedactionIntersections":[],"recommendation":false,"falsePositive":false,"dictionaryEntry":false,"dossierDictionaryEntry":false,"localManualRedaction":false,"manuallyRemoved":false,"hint":false,"image":false},{"id":"82bbab698629750e6b369a357c8ca3a5","type":"PII","value":"Page","reason":"Personal information found","matchedRule":19,"rectangle":false,"legalBasis":"Article 39(e)(3) of Regulation (EC) No 178/2002","imported":false,"redacted":true,"section":"Header","color":[0.4,0.8,1.0],"positions":[{"topLeft":{"x":100.479996,"y":734.742},"width":23.304,"height":-12.641998,"page":5}],"sectionNumber":37,"textBefore":"This is a ","textAfter":"-Header","comments":[],"startOffset":10,"endOffset":14,"imageHasTransparency":false,"excluded":false,"sourceId":null,"changes":[{"analysisNumber":0,"type":"ADDED","dateTime":"2022-10-20T12:53:54.83278+02:00"}],"manualChanges":[],"engines":["DICTIONARY"],"reference":[],"importedRedactionIntersections":[],"recommendation":false,"falsePositive":false,"dictionaryEntry":true,"dossierDictionaryEntry":false,"localManualRedaction":false,"manuallyRemoved":false,"hint":false,"image":false},{"id":"9fe56b2f3d0aeb3b1b18c7ffd02a9523","type":"PII","value":"European Central Institute","reason":"Personal information found","matchedRule":23,"rectangle":false,"legalBasis":"Article 39(e)(3) of Regulation (EC) No 178/2002","imported":false,"redacted":true,"section":"Table in: Rule: Redact contact information (contains \"Contact point:\")","color":[0.4,0.8,1.0],"positions":[{"topLeft":{"x":376.20105,"y":283.88153},"width":94.77011,"height":-10.981506,"page":5}],"sectionNumber":21,"textBefore":"4592 European contact: ","textAfter":" Alternative contact:","comments":[],"startOffset":696,"endOffset":722,"imageHasTransparency":false,"excluded":false,"sourceId":null,"changes":[{"analysisNumber":0,"type":"ADDED","dateTime":"2022-10-20T12:53:54.832786+02:00"}],"manualChanges":[],"engines":["RULE"],"reference":[],"importedRedactionIntersections":[],"recommendation":false,"falsePositive":false,"dictionaryEntry":false,"dossierDictionaryEntry":false,"localManualRedaction":false,"manuallyRemoved":false,"hint":false,"image":false},{"id":"987d05fa4e603f5d40ec23c79713eb36","type":"PII","value":"shinrorg@saopu.com.br","reason":"Personal information found","matchedRule":23,"rectangle":false,"legalBasis":"Article 39(e)(3) of Regulation (EC) No 178/2002","imported":false,"redacted":true,"section":"Rule: Redact contact information (contains \"Contact point:\")","color":[0.4,0.8,1.0],"positions":[{"topLeft":{"x":164.8,"y":567.142},"width":115.47603,"height":-12.641998,"page":5}],"sectionNumber":23,"textBefore":"3431 10 E-mail: ","textAfter":" Contact: This","comments":[],"startOffset":332,"endOffset":353,"imageHasTransparency":false,"excluded":false,"sourceId":null,"changes":[{"analysisNumber":0,"type":"ADDED","dateTime":"2022-10-20T12:53:54.832792+02:00"}],"manualChanges":[],"engines":["RULE"],"reference":[],"importedRedactionIntersections":[],"recommendation":false,"falsePositive":false,"dictionaryEntry":false,"dossierDictionaryEntry":false,"localManualRedaction":false,"manuallyRemoved":false,"hint":false,"image":false},{"id":"9fdbea097a30463adbc050a6ce674668","type":"PII","value":"example@mail.com","reason":"Personal information found","matchedRule":23,"rectangle":false,"legalBasis":"Article 39(e)(3) of Regulation (EC) No 178/2002","imported":false,"redacted":true,"section":"Table in: Rule: Redact contact information (contains \"Contact point:\")","color":[0.4,0.8,1.0],"positions":[{"topLeft":{"x":367.21008,"y":366.68152},"width":72.387085,"height":-10.981506,"page":5}],"sectionNumber":21,"textBefore":"maximiliamschmitt@t-online.de E-mail address: ","textAfter":" Contact: Maximiliam","comments":[],"startOffset":473,"endOffset":489,"imageHasTransparency":false,"excluded":false,"sourceId":null,"changes":[{"analysisNumber":0,"type":"ADDED","dateTime":"2022-10-20T12:53:54.832807+02:00"}],"manualChanges":[],"engines":["RULE"],"reference":[],"importedRedactionIntersections":[],"recommendation":false,"falsePositive":false,"dictionaryEntry":false,"dossierDictionaryEntry":false,"localManualRedaction":false,"manuallyRemoved":false,"hint":false,"image":false},{"id":"e9c88d8de6eaaa1d4d418b84bd011f4e","type":"PII","value":"Maximiliam Schmitt","reason":"Personal information found","matchedRule":23,"rectangle":false,"legalBasis":"Article 39(e)(3) of Regulation (EC) No 178/2002","imported":false,"redacted":true,"section":"Table in: Rule: Redact contact information (contains \"Contact point:\")","color":[0.4,0.8,1.0],"positions":[{"topLeft":{"x":341.54202,"y":356.3815},"width":74.601135,"height":-10.981506,"page":5}],"sectionNumber":21,"textBefore":"address: example@mail.com Contact: ","textAfter":" Telephone number:","comments":[],"startOffset":499,"endOffset":517,"imageHasTransparency":false,"excluded":false,"sourceId":null,"changes":[{"analysisNumber":0,"type":"ADDED","dateTime":"2022-10-20T12:53:54.832814+02:00"}],"manualChanges":[],"engines":["RULE"],"reference":[],"importedRedactionIntersections":[],"recommendation":false,"falsePositive":false,"dictionaryEntry":false,"dossierDictionaryEntry":false,"localManualRedaction":false,"manuallyRemoved":false,"hint":false,"image":false},{"id":"0cac354b943b0a9dd0a0fa95cbbc4687","type":"PII","value":"493 1223 4592","reason":"Personal information found","matchedRule":23,"rectangle":false,"legalBasis":"Article 39(e)(3) of Regulation (EC) No 178/2002","imported":false,"redacted":true,"section":"Table in: Rule: Redact contact information (contains \"Contact point:\")","color":[0.4,0.8,1.0],"positions":[{"topLeft":{"x":341.54202,"y":294.2815},"width":53.991028,"height":-10.981506,"page":5}],"sectionNumber":21,"textBefore":"1432 8933 Contact: ","textAfter":" European contact:","comments":[],"startOffset":664,"endOffset":677,"imageHasTransparency":false,"excluded":false,"sourceId":null,"changes":[{"analysisNumber":0,"type":"ADDED","dateTime":"2022-10-20T12:53:54.83282+02:00"}],"manualChanges":[],"engines":["RULE"],"reference":[],"importedRedactionIntersections":[],"recommendation":false,"falsePositive":false,"dictionaryEntry":false,"dossierDictionaryEntry":false,"localManualRedaction":false,"manuallyRemoved":false,"hint":false,"image":false},{"id":"03af4eabd3e1ccf18533c0ae66021f05","type":"PII","value":"maximiliamschmitt@t-online.de","reason":"Personal information found","matchedRule":23,"rectangle":false,"legalBasis":"Article 39(e)(3) of Regulation (EC) No 178/2002","imported":false,"redacted":true,"section":"Table in: Rule: Redact contact information (contains \"Contact point:\")","color":[0.4,0.8,1.0],"positions":[{"topLeft":{"x":336.53806,"y":377.0815},"width":116.82919,"height":-10.981506,"page":5}],"sectionNumber":21,"textBefore":"Email: maximiliamschmitt@arcor.de e-mail: ","textAfter":" E-mail address:","comments":[],"startOffset":427,"endOffset":456,"imageHasTransparency":false,"excluded":false,"sourceId":null,"changes":[{"analysisNumber":0,"type":"ADDED","dateTime":"2022-10-20T12:53:54.832825+02:00"}],"manualChanges":[],"engines":["RULE"],"reference":[],"importedRedactionIntersections":[],"recommendation":false,"falsePositive":false,"dictionaryEntry":false,"dossierDictionaryEntry":false,"localManualRedaction":false,"manuallyRemoved":false,"hint":false,"image":false},{"id":"7908316fc56f1ff18fa053bffb0d841a","type":"PII","value":"Tiffany Umbrella","reason":"Personal information found","matchedRule":23,"rectangle":false,"legalBasis":"Article 39(e)(3) of Regulation (EC) No 178/2002","imported":false,"redacted":true,"section":"Rule: Redact contact information (contains \"Contact point:\")","color":[0.4,0.8,1.0],"positions":[{"topLeft":{"x":164.8,"y":636.142},"width":83.592026,"height":-12.641998,"page":5}],"sectionNumber":23,"textBefore":"Organisation Contact point: ","textAfter":" Address: Goldstreet","comments":[],"startOffset":223,"endOffset":239,"imageHasTransparency":false,"excluded":false,"sourceId":null,"changes":[{"analysisNumber":0,"type":"ADDED","dateTime":"2022-10-20T12:53:54.832831+02:00"}],"manualChanges":[],"engines":["RULE"],"reference":[],"importedRedactionIntersections":[],"recommendation":false,"falsePositive":false,"dictionaryEntry":false,"dossierDictionaryEntry":false,"localManualRedaction":false,"manuallyRemoved":false,"hint":false,"image":false},{"id":"e544f9bb7bed1631a8c0ef4596ca5e16","type":"PII","value":"+274 1432 8990","reason":"Personal information found","matchedRule":23,"rectangle":false,"legalBasis":"Article 39(e)(3) of Regulation (EC) No 178/2002","imported":false,"redacted":true,"section":"Table in: Rule: Redact contact information (contains \"Contact point:\")","color":[0.4,0.8,1.0],"positions":[{"topLeft":{"x":356.75204,"y":325.2815},"width":59.085022,"height":-10.981506,"page":5}],"sectionNumber":21,"textBefore":"8991 Fax number: ","textAfter":" Telephone: +274","comments":[],"startOffset":590,"endOffset":604,"imageHasTransparency":false,"excluded":false,"sourceId":null,"changes":[{"analysisNumber":0,"type":"ADDED","dateTime":"2022-10-20T12:53:54.832837+02:00"}],"manualChanges":[],"engines":["RULE"],"reference":[],"importedRedactionIntersections":[],"recommendation":false,"falsePositive":false,"dictionaryEntry":false,"dossierDictionaryEntry":false,"localManualRedaction":false,"manuallyRemoved":false,"hint":false,"image":false},{"id":"4fb023c952280dc954630c168adffbf5","type":"PII","value":"+81 6653 44563","reason":"Personal information found","matchedRule":25,"rectangle":false,"legalBasis":"Article 39(e)(2) of Regulation (EC) No 178/2002","imported":false,"redacted":true,"section":"Table in: Rule: Redact contact information (contains \"Contact point:\")","color":[0.4,0.8,1.0],"positions":[{"topLeft":{"x":324.86502,"y":408.0815},"width":59.085022,"height":-10.981506,"page":5}],"sectionNumber":21,"textBefore":"+81 764770164 Tel: ","textAfter":" E-mail: Seriknowmobil@co.uk","comments":[],"startOffset":342,"endOffset":356,"imageHasTransparency":false,"excluded":false,"sourceId":null,"changes":[{"analysisNumber":0,"type":"ADDED","dateTime":"2022-10-20T12:53:54.832843+02:00"}],"manualChanges":[],"engines":["RULE"],"reference":[],"importedRedactionIntersections":[],"recommendation":false,"falsePositive":false,"dictionaryEntry":false,"dossierDictionaryEntry":false,"localManualRedaction":false,"manuallyRemoved":false,"hint":false,"image":false},{"id":"26eb1a4ffce1dded6b087b6bdbf6bb09","type":"PII","value":"+55 1221 3431 10","reason":"Personal information found","matchedRule":25,"rectangle":false,"legalBasis":"Article 39(e)(2) of Regulation (EC) No 178/2002","imported":false,"redacted":true,"section":"Rule: Redact contact information (contains \"Contact point:\")","color":[0.4,0.8,1.0],"positions":[{"topLeft":{"x":164.8,"y":580.942},"width":87.79199,"height":-12.641998,"page":5}],"sectionNumber":23,"textBefore":"3431 12 Fax: ","textAfter":" E-mail: shinrorg@saopu.com.br","comments":[],"startOffset":307,"endOffset":323,"imageHasTransparency":false,"excluded":false,"sourceId":null,"changes":[{"analysisNumber":0,"type":"ADDED","dateTime":"2022-10-20T12:53:54.832849+02:00"}],"manualChanges":[],"engines":["RULE"],"reference":[],"importedRedactionIntersections":[],"recommendation":false,"falsePositive":false,"dictionaryEntry":false,"dossierDictionaryEntry":false,"localManualRedaction":false,"manuallyRemoved":false,"hint":false,"image":false},{"id":"eb12a51e4239d9705f19ddfb47449ebe","type":"PII","value":"Central Research Industry","reason":"Personal information found","matchedRule":23,"rectangle":false,"legalBasis":"Article 39(e)(3) of Regulation (EC) No 178/2002","imported":false,"redacted":true,"section":"Table in: Rule: Redact contact information (contains \"Contact point:\")","color":[0.4,0.8,1.0],"positions":[{"topLeft":{"x":362.22406,"y":449.4815},"width":93.87009,"height":-10.981506,"page":5}],"sectionNumber":21,"textBefore":"Contact point: ","textAfter":" Phone: +49","comments":[],"startOffset":243,"endOffset":268,"imageHasTransparency":false,"excluded":false,"sourceId":null,"changes":[{"analysisNumber":0,"type":"ADDED","dateTime":"2022-10-20T12:53:54.832855+02:00"}],"manualChanges":[],"engines":["RULE"],"reference":[],"importedRedactionIntersections":[],"recommendation":false,"falsePositive":false,"dictionaryEntry":false,"dossierDictionaryEntry":false,"localManualRedaction":false,"manuallyRemoved":false,"hint":false,"image":false},{"id":"d6db758f877b26bbd75bace4f2245ec1","type":"PII","value":"This is a special case, everything between this and the next keyword should be redacted","reason":"Personal information found","matchedRule":23,"rectangle":false,"legalBasis":"Article 39(e)(3) of Regulation (EC) No 178/2002","imported":false,"redacted":true,"section":"Rule: Redact contact information (contains \"Contact point:\")","color":[0.4,0.8,1.0],"positions":[{"topLeft":{"x":164.8,"y":511.94202},"width":282.8523,"height":-12.641998,"page":5},{"topLeft":{"x":164.8,"y":498.14203},"width":134.88008,"height":-12.641998,"page":5}],"sectionNumber":23,"textBefore":"3431 13 No: ","textAfter":" Fax +55","comments":[],"startOffset":478,"endOffset":565,"imageHasTransparency":false,"excluded":false,"sourceId":null,"changes":[{"analysisNumber":0,"type":"ADDED","dateTime":"2022-10-20T12:53:54.832861+02:00"}],"manualChanges":[],"engines":["RULE"],"reference":[],"importedRedactionIntersections":[],"recommendation":false,"falsePositive":false,"dictionaryEntry":false,"dossierDictionaryEntry":false,"localManualRedaction":false,"manuallyRemoved":false,"hint":false,"image":false},{"id":"58e468d117f14307ca84f4b8e7b7e06b","type":"PII","value":"+49 2113 2311 563","reason":"Personal information found","matchedRule":25,"rectangle":false,"legalBasis":"Article 39(e)(2) of Regulation (EC) No 178/2002","imported":false,"redacted":true,"section":"Table in: Rule: Redact contact information (contains \"Contact point:\")","color":[0.4,0.8,1.0],"positions":[{"topLeft":{"x":336.079,"y":439.18152},"width":69.58804,"height":-10.981506,"page":5}],"sectionNumber":21,"textBefore":"Research Industry Phone: ","textAfter":" Fax: +49","comments":[],"startOffset":276,"endOffset":293,"imageHasTransparency":false,"excluded":false,"sourceId":null,"changes":[{"analysisNumber":0,"type":"ADDED","dateTime":"2022-10-20T12:53:54.832867+02:00"}],"manualChanges":[],"engines":["RULE"],"reference":[],"importedRedactionIntersections":[],"recommendation":false,"falsePositive":false,"dictionaryEntry":false,"dossierDictionaryEntry":false,"localManualRedaction":false,"manuallyRemoved":false,"hint":false,"image":false},{"id":"c4c4695c91aae19c8ff54260ac7336a1","type":"PII","value":"+81 764770164","reason":"Personal information found","matchedRule":25,"rectangle":false,"legalBasis":"Article 39(e)(2) of Regulation (EC) No 178/2002","imported":false,"redacted":true,"section":"Table in: Rule: Redact contact information (contains \"Contact point:\")","color":[0.4,0.8,1.0],"positions":[{"topLeft":{"x":327.16904,"y":418.4815},"width":56.79001,"height":-10.981506,"page":5}],"sectionNumber":21,"textBefore":"2311 560 Tel.: ","textAfter":" Tel: +81","comments":[],"startOffset":323,"endOffset":336,"imageHasTransparency":false,"excluded":false,"sourceId":null,"changes":[{"analysisNumber":0,"type":"ADDED","dateTime":"2022-10-20T12:53:54.832873+02:00"}],"manualChanges":[],"engines":["RULE"],"reference":[],"importedRedactionIntersections":[],"recommendation":false,"falsePositive":false,"dictionaryEntry":false,"dossierDictionaryEntry":false,"localManualRedaction":false,"manuallyRemoved":false,"hint":false,"image":false},{"id":"df7bdf4b8e2cf07a32eda981a952a00e","type":"PII","value":"+274 1432 8991","reason":"Personal information found","matchedRule":23,"rectangle":false,"legalBasis":"Article 39(e)(3) of Regulation (EC) No 178/2002","imported":false,"redacted":true,"section":"Table in: Rule: Redact contact information (contains \"Contact point:\")","color":[0.4,0.8,1.0],"positions":[{"topLeft":{"x":364.13202,"y":335.68152},"width":58.995026,"height":-10.981506,"page":5}],"sectionNumber":21,"textBefore":"+27414328992 Telephone No: ","textAfter":" Fax number:","comments":[],"startOffset":563,"endOffset":577,"imageHasTransparency":false,"excluded":false,"sourceId":null,"changes":[{"analysisNumber":0,"type":"ADDED","dateTime":"2022-10-20T12:53:54.832878+02:00"}],"manualChanges":[],"engines":["RULE"],"reference":[],"importedRedactionIntersections":[],"recommendation":false,"falsePositive":false,"dictionaryEntry":false,"dossierDictionaryEntry":false,"localManualRedaction":false,"manuallyRemoved":false,"hint":false,"image":false},{"id":"5842283ecbd31a80a2512505a30ed605","type":"PII","value":"+49 2113 2311 560","reason":"Personal information found","matchedRule":25,"rectangle":false,"legalBasis":"Article 39(e)(2) of Regulation (EC) No 178/2002","imported":false,"redacted":true,"section":"Table in: Rule: Redact contact information (contains \"Contact point:\")","color":[0.4,0.8,1.0],"positions":[{"topLeft":{"x":327.079,"y":428.7815},"width":69.58804,"height":-10.981506,"page":5}],"sectionNumber":21,"textBefore":"2311 563 Fax: ","textAfter":" Tel.: +81","comments":[],"startOffset":299,"endOffset":316,"imageHasTransparency":false,"excluded":false,"sourceId":null,"changes":[{"analysisNumber":0,"type":"ADDED","dateTime":"2022-10-20T12:53:54.832885+02:00"}],"manualChanges":[],"engines":["RULE"],"reference":[],"importedRedactionIntersections":[],"recommendation":false,"falsePositive":false,"dictionaryEntry":false,"dossierDictionaryEntry":false,"localManualRedaction":false,"manuallyRemoved":false,"hint":false,"image":false},{"id":"6d912c09f6b3262a5db9469ee9b51bde","type":"PII","value":"\")","reason":"Personal information found","matchedRule":23,"rectangle":false,"legalBasis":"Article 39(e)(3) of Regulation (EC) No 178/2002","imported":false,"redacted":true,"section":"Rule: Redact contact information (contains \"Contact point:\")","color":[0.4,0.8,1.0],"positions":[{"topLeft":{"x":450.9798,"y":705.9678},"width":11.378723,"height":-13.867798,"page":5}],"sectionNumber":23,"textBefore":"(contains \"Contact point:","textAfter":" Redact when","comments":[],"startOffset":58,"endOffset":60,"imageHasTransparency":false,"excluded":false,"sourceId":null,"changes":[{"analysisNumber":0,"type":"ADDED","dateTime":"2022-10-20T12:53:54.832923+02:00"}],"manualChanges":[],"engines":["RULE"],"reference":[],"importedRedactionIntersections":[],"recommendation":false,"falsePositive":false,"dictionaryEntry":false,"dossierDictionaryEntry":false,"localManualRedaction":false,"manuallyRemoved":false,"hint":false,"image":false},{"id":"e8bd2031ba686fb168e5a75beeebbff6","type":"PII","value":"Page","reason":"Personal information found","matchedRule":19,"rectangle":false,"legalBasis":"Article 39(e)(3) of Regulation (EC) No 178/2002","imported":false,"redacted":true,"section":"Header","color":[0.4,0.8,1.0],"positions":[{"topLeft":{"x":100.479996,"y":734.742},"width":23.304,"height":-12.641998,"page":6}],"sectionNumber":38,"textBefore":"This is a ","textAfter":"-Header","comments":[],"startOffset":10,"endOffset":14,"imageHasTransparency":false,"excluded":false,"sourceId":null,"changes":[{"analysisNumber":0,"type":"ADDED","dateTime":"2022-10-20T12:53:54.83293+02:00"}],"manualChanges":[],"engines":["DICTIONARY"],"reference":[],"importedRedactionIntersections":[],"recommendation":false,"falsePositive":false,"dictionaryEntry":true,"dossierDictionaryEntry":false,"localManualRedaction":false,"manuallyRemoved":false,"hint":false,"image":false},{"id":"f0cea2f938db704405daa85c8c53e754","type":"PII","value":"Dr. Alan Milwer","reason":"AUTHOR(S) was found","matchedRule":29,"rectangle":false,"legalBasis":"Article 39(e)(3) of Regulation (EC) No 178/2002","imported":false,"redacted":true,"section":"Rule: If “Authors:” and “Study Completion Dates”, then redact everything between","color":[0.4,0.8,1.0],"positions":[{"topLeft":{"x":236.8,"y":502.34204},"width":78.96004,"height":-12.641998,"page":6}],"sectionNumber":25,"textBefore":"Study Report___ AUTHOR(S): ","textAfter":" STUDY COMPLETION","comments":[],"startOffset":179,"endOffset":194,"imageHasTransparency":false,"excluded":false,"sourceId":null,"changes":[{"analysisNumber":0,"type":"ADDED","dateTime":"2022-10-20T12:53:54.832936+02:00"}],"manualChanges":[],"engines":["RULE"],"reference":[],"importedRedactionIntersections":[],"recommendation":false,"falsePositive":false,"dictionaryEntry":false,"dossierDictionaryEntry":false,"localManualRedaction":false,"manuallyRemoved":false,"hint":false,"image":false},{"id":"b5bc54da5a489024be423fd7c35ca509","type":"PII","value":"Dr. Alan Miller","reason":"Author found","matchedRule":27,"rectangle":false,"legalBasis":"Article 39(e)(3) of Regulation (EC) No 178/2002","imported":false,"redacted":true,"section":"Rule: If \"Authors:\" and \"completion dates\", then redact everything between","color":[0.4,0.8,1.0],"positions":[{"topLeft":{"x":200.8,"y":635.04205},"width":73.57207,"height":-12.641998,"page":6}],"sectionNumber":24,"textBefore":"Study Report___ AUTHOR(S): ","textAfter":" COMPLETION DATE:","comments":[],"startOffset":173,"endOffset":188,"imageHasTransparency":false,"excluded":false,"sourceId":null,"changes":[{"analysisNumber":0,"type":"ADDED","dateTime":"2022-10-20T12:53:54.832942+02:00"}],"manualChanges":[],"engines":["RULE"],"reference":[],"importedRedactionIntersections":[],"recommendation":false,"falsePositive":false,"dictionaryEntry":false,"dossierDictionaryEntry":false,"localManualRedaction":false,"manuallyRemoved":false,"hint":false,"image":false},{"id":"d8a7ac0acfd9f0d4589ba1ff55ec3597","type":"CBI_address","value":"Umbrella Corporation","reason":"Performing laboratory found for non vertebrate study","matchedRule":31,"rectangle":false,"legalBasis":null,"imported":false,"redacted":false,"section":"Rule: If \"Performing Lab\" and \"Lab Project ID\", then Redact everything between","color":[0.8,0.8,0.8],"positions":[{"topLeft":{"x":236.8,"y":368.44202},"width":106.24812,"height":-12.641998,"page":6}],"sectionNumber":26,"textBefore":"Report___ PERFORMING LABORATORY: ","textAfter":" LABORATORY PROJECT","comments":[],"startOffset":191,"endOffset":211,"imageHasTransparency":false,"excluded":false,"sourceId":null,"changes":[{"analysisNumber":0,"type":"ADDED","dateTime":"2022-10-20T12:53:54.832948+02:00"}],"manualChanges":[],"engines":["RULE"],"reference":[],"importedRedactionIntersections":[],"recommendation":false,"falsePositive":false,"dictionaryEntry":false,"dossierDictionaryEntry":false,"localManualRedaction":false,"manuallyRemoved":false,"hint":false,"image":false},{"id":"5c07c0a8199119c1ded119367a9863bd","type":"PII","value":"Page","reason":"Personal information found","matchedRule":19,"rectangle":false,"legalBasis":"Article 39(e)(3) of Regulation (EC) No 178/2002","imported":false,"redacted":true,"section":"Footer","color":[0.4,0.8,1.0],"positions":[{"topLeft":{"x":100.479996,"y":69.94202},"width":23.304,"height":-12.642029,"page":6}],"sectionNumber":46,"textBefore":"This is a ","textAfter":"-Footer","comments":[],"startOffset":10,"endOffset":14,"imageHasTransparency":false,"excluded":false,"sourceId":null,"changes":[{"analysisNumber":0,"type":"ADDED","dateTime":"2022-10-20T12:53:54.832954+02:00"}],"manualChanges":[],"engines":["DICTIONARY"],"reference":[],"importedRedactionIntersections":[],"recommendation":false,"falsePositive":false,"dictionaryEntry":true,"dossierDictionaryEntry":false,"localManualRedaction":false,"manuallyRemoved":false,"hint":false,"image":false},{"id":"4caf39084f94a323df73775634954554","type":"hint_only","value":"Purity","reason":null,"matchedRule":0,"rectangle":false,"legalBasis":null,"imported":false,"redacted":false,"section":"Rule: Purity Hint","color":[0.67058825,0.7529412,0.76862746],"positions":[{"topLeft":{"x":56.8,"y":438.44202},"width":28.595997,"height":-12.641998,"page":7}],"sectionNumber":28,"textBefore":null,"textAfter":null,"comments":[],"startOffset":908,"endOffset":914,"imageHasTransparency":false,"excluded":false,"sourceId":null,"changes":[{"analysisNumber":0,"type":"ADDED","dateTime":"2022-10-20T12:53:54.832959+02:00"}],"manualChanges":[],"engines":["RULE"],"reference":[],"importedRedactionIntersections":[],"recommendation":false,"falsePositive":false,"dictionaryEntry":false,"dossierDictionaryEntry":false,"localManualRedaction":false,"manuallyRemoved":false,"hint":true,"image":false},{"id":"281458d08c0ddf1a11604ef9ca4ef26b","type":"hint_only","value":"Purity:","reason":null,"matchedRule":0,"rectangle":false,"legalBasis":null,"imported":false,"redacted":false,"section":"Rule: Purity Hint","color":[0.67058825,0.7529412,0.76862746],"positions":[{"topLeft":{"x":56.8,"y":479.84204},"width":32.687992,"height":-12.641998,"page":7}],"sectionNumber":28,"textBefore":null,"textAfter":null,"comments":[],"startOffset":610,"endOffset":617,"imageHasTransparency":false,"excluded":false,"sourceId":null,"changes":[{"analysisNumber":0,"type":"ADDED","dateTime":"2022-10-20T12:53:54.832965+02:00"}],"manualChanges":[],"engines":["RULE"],"reference":[],"importedRedactionIntersections":[],"recommendation":false,"falsePositive":false,"dictionaryEntry":false,"dossierDictionaryEntry":false,"localManualRedaction":false,"manuallyRemoved":false,"hint":true,"image":false},{"id":"ea9961b4451b505c3702bb393cc816fc","type":"hint_only","value":"Purity:","reason":null,"matchedRule":0,"rectangle":false,"legalBasis":null,"imported":false,"redacted":false,"section":"Rule: Purity Hint","color":[0.67058825,0.7529412,0.76862746],"positions":[{"topLeft":{"x":56.8,"y":521.24207},"width":32.687992,"height":-12.641998,"page":7}],"sectionNumber":28,"textBefore":null,"textAfter":null,"comments":[],"startOffset":453,"endOffset":460,"imageHasTransparency":false,"excluded":false,"sourceId":null,"changes":[{"analysisNumber":0,"type":"ADDED","dateTime":"2022-10-20T12:53:54.832971+02:00"}],"manualChanges":[],"engines":["RULE"],"reference":[],"importedRedactionIntersections":[],"recommendation":false,"falsePositive":false,"dictionaryEntry":false,"dossierDictionaryEntry":false,"localManualRedaction":false,"manuallyRemoved":false,"hint":true,"image":false},{"id":"42b13bcc923f2238dbbd5f19280043f1","type":"hint_only","value":"Purity","reason":null,"matchedRule":0,"rectangle":false,"legalBasis":null,"imported":false,"redacted":false,"section":"Rule: Purity Hint","color":[0.67058825,0.7529412,0.76862746],"positions":[{"topLeft":{"x":75.4,"y":685.33496},"width":24.999985,"height":-11.535004,"page":7}],"sectionNumber":28,"textBefore":null,"textAfter":null,"comments":[],"startOffset":22,"endOffset":28,"imageHasTransparency":false,"excluded":false,"sourceId":null,"changes":[{"analysisNumber":0,"type":"ADDED","dateTime":"2022-10-20T12:53:54.832977+02:00"}],"manualChanges":[],"engines":["RULE"],"reference":[],"importedRedactionIntersections":[],"recommendation":false,"falsePositive":false,"dictionaryEntry":false,"dossierDictionaryEntry":false,"localManualRedaction":false,"manuallyRemoved":false,"hint":true,"image":false},{"id":"3858fea4d0430b59c7d23c1b7fa2a5d5","type":"hint_only","value":"Purity:","reason":null,"matchedRule":0,"rectangle":false,"legalBasis":null,"imported":false,"redacted":false,"section":"Rule: Purity Hint","color":[0.67058825,0.7529412,0.76862746],"positions":[{"topLeft":{"x":56.8,"y":617.84204},"width":32.687992,"height":-12.641998,"page":7}],"sectionNumber":28,"textBefore":null,"textAfter":null,"comments":[],"startOffset":142,"endOffset":149,"imageHasTransparency":false,"excluded":false,"sourceId":null,"changes":[{"analysisNumber":0,"type":"ADDED","dateTime":"2022-10-20T12:53:54.832983+02:00"}],"manualChanges":[],"engines":["RULE"],"reference":[],"importedRedactionIntersections":[],"recommendation":false,"falsePositive":false,"dictionaryEntry":false,"dossierDictionaryEntry":false,"localManualRedaction":false,"manuallyRemoved":false,"hint":true,"image":false},{"id":"bedb022f5de1298c4d8d4729d1335a79","type":"hint_only","value":"Purity:","reason":null,"matchedRule":0,"rectangle":false,"legalBasis":null,"imported":false,"redacted":false,"section":"Rule: Purity Hint","color":[0.67058825,0.7529412,0.76862746],"positions":[{"topLeft":{"x":56.8,"y":438.44202},"width":32.003994,"height":-12.641998,"page":7}],"sectionNumber":28,"textBefore":null,"textAfter":null,"comments":[],"startOffset":936,"endOffset":943,"imageHasTransparency":false,"excluded":false,"sourceId":null,"changes":[{"analysisNumber":0,"type":"ADDED","dateTime":"2022-10-20T12:53:54.832989+02:00"}],"manualChanges":[],"engines":["RULE"],"reference":[],"importedRedactionIntersections":[],"recommendation":false,"falsePositive":false,"dictionaryEntry":false,"dossierDictionaryEntry":false,"localManualRedaction":false,"manuallyRemoved":false,"hint":true,"image":false},{"id":"33a076d7eeb2e840117e25c9b36d679b","type":"hint_only","value":"purity:","reason":null,"matchedRule":0,"rectangle":false,"legalBasis":null,"imported":false,"redacted":false,"section":"Rule: Purity Hint","color":[0.67058825,0.7529412,0.76862746],"positions":[{"topLeft":{"x":56.8,"y":631.642},"width":32.687992,"height":-12.641998,"page":7}],"sectionNumber":28,"textBefore":null,"textAfter":null,"comments":[],"startOffset":741,"endOffset":748,"imageHasTransparency":false,"excluded":false,"sourceId":null,"changes":[{"analysisNumber":0,"type":"ADDED","dateTime":"2022-10-20T12:53:54.832995+02:00"}],"manualChanges":[],"engines":["RULE"],"reference":[],"importedRedactionIntersections":[],"recommendation":false,"falsePositive":false,"dictionaryEntry":false,"dossierDictionaryEntry":false,"localManualRedaction":false,"manuallyRemoved":false,"hint":true,"image":false},{"id":"146c04a3b4fe300815ed71fecd1773f5","type":"hint_only","value":"Purity:","reason":null,"matchedRule":0,"rectangle":false,"legalBasis":null,"imported":false,"redacted":false,"section":"Rule: Purity Hint","color":[0.67058825,0.7529412,0.76862746],"positions":[{"topLeft":{"x":56.8,"y":548.84204},"width":32.687992,"height":-12.641998,"page":7}],"sectionNumber":28,"textBefore":null,"textAfter":null,"comments":[],"startOffset":329,"endOffset":336,"imageHasTransparency":false,"excluded":false,"sourceId":null,"changes":[{"analysisNumber":0,"type":"ADDED","dateTime":"2022-10-20T12:53:54.833+02:00"}],"manualChanges":[],"engines":["RULE"],"reference":[],"importedRedactionIntersections":[],"recommendation":false,"falsePositive":false,"dictionaryEntry":false,"dossierDictionaryEntry":false,"localManualRedaction":false,"manuallyRemoved":false,"hint":true,"image":false},{"id":"ed6e8e0225116bef834a823b79448c7a","type":"hint_only","value":"Purity:","reason":null,"matchedRule":0,"rectangle":false,"legalBasis":null,"imported":false,"redacted":false,"section":"Rule: Purity Hint","color":[0.67058825,0.7529412,0.76862746],"positions":[{"topLeft":{"x":56.8,"y":604.04205},"width":32.687992,"height":-12.641998,"page":7}],"sectionNumber":28,"textBefore":null,"textAfter":null,"comments":[],"startOffset":172,"endOffset":179,"imageHasTransparency":false,"excluded":false,"sourceId":null,"changes":[{"analysisNumber":0,"type":"ADDED","dateTime":"2022-10-20T12:53:54.833006+02:00"}],"manualChanges":[],"engines":["RULE"],"reference":[],"importedRedactionIntersections":[],"recommendation":false,"falsePositive":false,"dictionaryEntry":false,"dossierDictionaryEntry":false,"localManualRedaction":false,"manuallyRemoved":false,"hint":true,"image":false},{"id":"f881796b07a4393bc04c219e803e2c74","type":"hint_only","value":"Purity:","reason":null,"matchedRule":0,"rectangle":false,"legalBasis":null,"imported":false,"redacted":false,"section":"Rule: Purity Hint","color":[0.67058825,0.7529412,0.76862746],"positions":[{"topLeft":{"x":56.8,"y":493.64203},"width":32.687992,"height":-12.641998,"page":7}],"sectionNumber":28,"textBefore":null,"textAfter":null,"comments":[],"startOffset":548,"endOffset":555,"imageHasTransparency":false,"excluded":false,"sourceId":null,"changes":[{"analysisNumber":0,"type":"ADDED","dateTime":"2022-10-20T12:53:54.833012+02:00"}],"manualChanges":[],"engines":["RULE"],"reference":[],"importedRedactionIntersections":[],"recommendation":false,"falsePositive":false,"dictionaryEntry":false,"dossierDictionaryEntry":false,"localManualRedaction":false,"manuallyRemoved":false,"hint":true,"image":false},{"id":"1b6af411adbfa62811a6c5c302a240e0","type":"hint_only","value":"Purity:","reason":null,"matchedRule":0,"rectangle":false,"legalBasis":null,"imported":false,"redacted":false,"section":"Rule: Purity Hint","color":[0.67058825,0.7529412,0.76862746],"positions":[{"topLeft":{"x":56.8,"y":507.44202},"width":32.687992,"height":-12.641998,"page":7}],"sectionNumber":28,"textBefore":null,"textAfter":null,"comments":[],"startOffset":516,"endOffset":523,"imageHasTransparency":false,"excluded":false,"sourceId":null,"changes":[{"analysisNumber":0,"type":"ADDED","dateTime":"2022-10-20T12:53:54.833018+02:00"}],"manualChanges":[],"engines":["RULE"],"reference":[],"importedRedactionIntersections":[],"recommendation":false,"falsePositive":false,"dictionaryEntry":false,"dossierDictionaryEntry":false,"localManualRedaction":false,"manuallyRemoved":false,"hint":true,"image":false},{"id":"c40569401e976ca1b74c8cba504b1d83","type":"hint_only","value":"Purity:","reason":null,"matchedRule":0,"rectangle":false,"legalBasis":null,"imported":false,"redacted":false,"section":"Rule: Purity Hint","color":[0.67058825,0.7529412,0.76862746],"positions":[{"topLeft":{"x":56.8,"y":452.24203},"width":32.003994,"height":-12.641998,"page":7}],"sectionNumber":28,"textBefore":null,"textAfter":null,"comments":[],"startOffset":874,"endOffset":881,"imageHasTransparency":false,"excluded":false,"sourceId":null,"changes":[{"analysisNumber":0,"type":"ADDED","dateTime":"2022-10-20T12:53:54.833024+02:00"}],"manualChanges":[],"engines":["RULE"],"reference":[],"importedRedactionIntersections":[],"recommendation":false,"falsePositive":false,"dictionaryEntry":false,"dossierDictionaryEntry":false,"localManualRedaction":false,"manuallyRemoved":false,"hint":true,"image":false},{"id":"5a80377cadcb5c868da857d21a558665","type":"PII","value":"Page","reason":"Personal information found","matchedRule":19,"rectangle":false,"legalBasis":"Article 39(e)(3) of Regulation (EC) No 178/2002","imported":false,"redacted":true,"section":"Footer","color":[0.4,0.8,1.0],"positions":[{"topLeft":{"x":100.479996,"y":69.94202},"width":23.304,"height":-12.642029,"page":7}],"sectionNumber":47,"textBefore":"This is a ","textAfter":"-Footer","comments":[],"startOffset":10,"endOffset":14,"imageHasTransparency":false,"excluded":false,"sourceId":null,"changes":[{"analysisNumber":0,"type":"ADDED","dateTime":"2022-10-20T12:53:54.83303+02:00"}],"manualChanges":[],"engines":["DICTIONARY"],"reference":[],"importedRedactionIntersections":[],"recommendation":false,"falsePositive":false,"dictionaryEntry":true,"dossierDictionaryEntry":false,"localManualRedaction":false,"manuallyRemoved":false,"hint":false,"image":false},{"id":"df24f12ba7a9a700984f37ae277d1bb1","type":"hint_only","value":"Purity","reason":null,"matchedRule":0,"rectangle":false,"legalBasis":null,"imported":false,"redacted":false,"section":"Rule: Purity Hint","color":[0.67058825,0.7529412,0.76862746],"positions":[{"topLeft":{"x":96.0,"y":705.9678},"width":39.9171,"height":-13.867798,"page":7}],"sectionNumber":28,"textBefore":null,"textAfter":null,"comments":[],"startOffset":6,"endOffset":12,"imageHasTransparency":false,"excluded":false,"sourceId":null,"changes":[{"analysisNumber":0,"type":"ADDED","dateTime":"2022-10-20T12:53:54.833035+02:00"}],"manualChanges":[],"engines":["RULE"],"reference":[],"importedRedactionIntersections":[],"recommendation":false,"falsePositive":false,"dictionaryEntry":false,"dossierDictionaryEntry":false,"localManualRedaction":false,"manuallyRemoved":false,"hint":true,"image":false},{"id":"0184cef43bcfdf9264caf5141743758d","type":"PII","value":"Page","reason":"Personal information found","matchedRule":19,"rectangle":false,"legalBasis":"Article 39(e)(3) of Regulation (EC) No 178/2002","imported":false,"redacted":true,"section":"Header","color":[0.4,0.8,1.0],"positions":[{"topLeft":{"x":100.479996,"y":734.742},"width":23.304,"height":-12.641998,"page":7}],"sectionNumber":39,"textBefore":"This is a ","textAfter":"-Header","comments":[],"startOffset":10,"endOffset":14,"imageHasTransparency":false,"excluded":false,"sourceId":null,"changes":[{"analysisNumber":0,"type":"ADDED","dateTime":"2022-10-20T12:53:54.833042+02:00"}],"manualChanges":[],"engines":["DICTIONARY"],"reference":[],"importedRedactionIntersections":[],"recommendation":false,"falsePositive":false,"dictionaryEntry":true,"dossierDictionaryEntry":false,"localManualRedaction":false,"manuallyRemoved":false,"hint":false,"image":false},{"id":"826b14decb8a0b3ac9fc3cce6a7e5c9d","type":"hint_only","value":"Purity:","reason":null,"matchedRule":0,"rectangle":false,"legalBasis":null,"imported":false,"redacted":false,"section":"Rule: Purity Hint","color":[0.67058825,0.7529412,0.76862746],"positions":[{"topLeft":{"x":56.8,"y":645.442},"width":32.687992,"height":-12.641998,"page":7}],"sectionNumber":28,"textBefore":null,"textAfter":null,"comments":[],"startOffset":83,"endOffset":90,"imageHasTransparency":false,"excluded":false,"sourceId":null,"changes":[{"analysisNumber":0,"type":"ADDED","dateTime":"2022-10-20T12:53:54.833048+02:00"}],"manualChanges":[],"engines":["RULE"],"reference":[],"importedRedactionIntersections":[],"recommendation":false,"falsePositive":false,"dictionaryEntry":false,"dossierDictionaryEntry":false,"localManualRedaction":false,"manuallyRemoved":false,"hint":true,"image":false},{"id":"9a605a92f81366349de1a96c194d22b2","type":"hint_only","value":"Purity:","reason":null,"matchedRule":0,"rectangle":false,"legalBasis":null,"imported":false,"redacted":false,"section":"Rule: Purity Hint","color":[0.67058825,0.7529412,0.76862746],"positions":[{"topLeft":{"x":56.8,"y":535.04205},"width":32.687992,"height":-12.641998,"page":7}],"sectionNumber":28,"textBefore":null,"textAfter":null,"comments":[],"startOffset":391,"endOffset":398,"imageHasTransparency":false,"excluded":false,"sourceId":null,"changes":[{"analysisNumber":0,"type":"ADDED","dateTime":"2022-10-20T12:53:54.833054+02:00"}],"manualChanges":[],"engines":["RULE"],"reference":[],"importedRedactionIntersections":[],"recommendation":false,"falsePositive":false,"dictionaryEntry":false,"dossierDictionaryEntry":false,"localManualRedaction":false,"manuallyRemoved":false,"hint":true,"image":false},{"id":"e1e965b6b360b39474efce44ed67fd53","type":"hint_only","value":"Purity:","reason":null,"matchedRule":0,"rectangle":false,"legalBasis":null,"imported":false,"redacted":false,"section":"Rule: Purity Hint","color":[0.67058825,0.7529412,0.76862746],"positions":[{"topLeft":{"x":56.8,"y":576.442},"width":32.687992,"height":-12.641998,"page":7}],"sectionNumber":28,"textBefore":null,"textAfter":null,"comments":[],"startOffset":234,"endOffset":241,"imageHasTransparency":false,"excluded":false,"sourceId":null,"changes":[{"analysisNumber":0,"type":"ADDED","dateTime":"2022-10-20T12:53:54.83306+02:00"}],"manualChanges":[],"engines":["RULE"],"reference":[],"importedRedactionIntersections":[],"recommendation":false,"falsePositive":false,"dictionaryEntry":false,"dossierDictionaryEntry":false,"localManualRedaction":false,"manuallyRemoved":false,"hint":true,"image":false},{"id":"ad026ffe887ae3d596fb2686c0a29b05","type":"hint_only","value":"purity","reason":null,"matchedRule":0,"rectangle":false,"legalBasis":null,"imported":false,"redacted":false,"section":"Rule: Purity Hint","color":[0.67058825,0.7529412,0.76862746],"positions":[{"topLeft":{"x":56.8,"y":631.642},"width":29.279995,"height":-12.641998,"page":7}],"sectionNumber":28,"textBefore":null,"textAfter":null,"comments":[],"startOffset":964,"endOffset":970,"imageHasTransparency":false,"excluded":false,"sourceId":null,"changes":[{"analysisNumber":0,"type":"ADDED","dateTime":"2022-10-20T12:53:54.833065+02:00"}],"manualChanges":[],"engines":["RULE"],"reference":[],"importedRedactionIntersections":[],"recommendation":false,"falsePositive":false,"dictionaryEntry":false,"dossierDictionaryEntry":false,"localManualRedaction":false,"manuallyRemoved":false,"hint":true,"image":false},{"id":"d591cac8cddb354c1747fff367d68d0f","type":"hint_only","value":"Purity:","reason":null,"matchedRule":0,"rectangle":false,"legalBasis":null,"imported":false,"redacted":false,"section":"Rule: Purity Hint","color":[0.67058825,0.7529412,0.76862746],"positions":[{"topLeft":{"x":56.8,"y":562.642},"width":32.687992,"height":-12.641998,"page":7}],"sectionNumber":28,"textBefore":null,"textAfter":null,"comments":[],"startOffset":264,"endOffset":271,"imageHasTransparency":false,"excluded":false,"sourceId":null,"changes":[{"analysisNumber":0,"type":"ADDED","dateTime":"2022-10-20T12:53:54.833071+02:00"}],"manualChanges":[],"engines":["RULE"],"reference":[],"importedRedactionIntersections":[],"recommendation":false,"falsePositive":false,"dictionaryEntry":false,"dossierDictionaryEntry":false,"localManualRedaction":false,"manuallyRemoved":false,"hint":true,"image":false},{"id":"250246a26e93cd879c05beba4f41f812","type":"hint_only","value":"Purity:","reason":null,"matchedRule":0,"rectangle":false,"legalBasis":null,"imported":false,"redacted":false,"section":"Rule: Purity Hint","color":[0.67058825,0.7529412,0.76862746],"positions":[{"topLeft":{"x":56.8,"y":590.242},"width":32.687992,"height":-12.641998,"page":7}],"sectionNumber":28,"textBefore":null,"textAfter":null,"comments":[],"startOffset":203,"endOffset":210,"imageHasTransparency":false,"excluded":false,"sourceId":null,"changes":[{"analysisNumber":0,"type":"ADDED","dateTime":"2022-10-20T12:53:54.833086+02:00"}],"manualChanges":[],"engines":["RULE"],"reference":[],"importedRedactionIntersections":[],"recommendation":false,"falsePositive":false,"dictionaryEntry":false,"dossierDictionaryEntry":false,"localManualRedaction":false,"manuallyRemoved":false,"hint":true,"image":false},{"id":"b2e61658fde0297a17de618943216200","type":"PII","value":"Page","reason":"Personal information found","matchedRule":19,"rectangle":false,"legalBasis":"Article 39(e)(3) of Regulation (EC) No 178/2002","imported":false,"redacted":true,"section":"Header","color":[0.4,0.8,1.0],"positions":[{"topLeft":{"x":100.479996,"y":734.742},"width":23.304,"height":-12.641998,"page":8}],"sectionNumber":40,"textBefore":"This is a ","textAfter":"-Header","comments":[],"startOffset":10,"endOffset":14,"imageHasTransparency":false,"excluded":false,"sourceId":null,"changes":[{"analysisNumber":0,"type":"ADDED","dateTime":"2022-10-20T12:53:54.833093+02:00"}],"manualChanges":[],"engines":["DICTIONARY"],"reference":[],"importedRedactionIntersections":[],"recommendation":false,"falsePositive":false,"dictionaryEntry":true,"dossierDictionaryEntry":false,"localManualRedaction":false,"manuallyRemoved":false,"hint":false,"image":false},{"id":"0dd5b79b160f804046c3b7aa6e74f50f","type":"PII","value":"Page","reason":"Personal information found","matchedRule":19,"rectangle":false,"legalBasis":"Article 39(e)(3) of Regulation (EC) No 178/2002","imported":false,"redacted":true,"section":"Footer","color":[0.4,0.8,1.0],"positions":[{"topLeft":{"x":100.479996,"y":69.94202},"width":23.304,"height":-12.642029,"page":8}],"sectionNumber":48,"textBefore":"This is a ","textAfter":"-Footer","comments":[],"startOffset":10,"endOffset":14,"imageHasTransparency":false,"excluded":false,"sourceId":null,"changes":[{"analysisNumber":0,"type":"ADDED","dateTime":"2022-10-20T12:53:54.833099+02:00"}],"manualChanges":[],"engines":["DICTIONARY"],"reference":[],"importedRedactionIntersections":[],"recommendation":false,"falsePositive":false,"dictionaryEntry":true,"dossierDictionaryEntry":false,"localManualRedaction":false,"manuallyRemoved":false,"hint":false,"image":false}],"legalBasis":[],"dictionaryVersion":0,"dossierDictionaryVersion":0,"rulesVersion":0,"legalBasisVersion":0} \ No newline at end of file diff --git a/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/01 - CGA100251 - Acute Oral Toxicity (Up and Down Procedure) - Rat (1).pdf b/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/01 - CGA100251 - Acute Oral Toxicity (Up and Down Procedure) - Rat (1).pdf index 243b10c8..16b2652f 100644 Binary files a/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/01 - CGA100251 - Acute Oral Toxicity (Up and Down Procedure) - Rat (1).pdf and b/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/01 - CGA100251 - Acute Oral Toxicity (Up and Down Procedure) - Rat (1).pdf differ diff --git a/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/02 - A22833B - Acute Oral (Up and Down) - Final Report.pdf b/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/02 - A22833B - Acute Oral (Up and Down) - Final Report1.pdf similarity index 57% rename from redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/02 - A22833B - Acute Oral (Up and Down) - Final Report.pdf rename to redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/02 - A22833B - Acute Oral (Up and Down) - Final Report1.pdf index 707a7d43..fc9a3581 100644 Binary files a/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/02 - A22833B - Acute Oral (Up and Down) - Final Report.pdf and b/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/02 - A22833B - Acute Oral (Up and Down) - Final Report1.pdf differ diff --git a/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/03 - Acute Oral Toxicity Up and Down Procedur.pdf b/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/03 - Acute Oral Toxicity Up and Down Procedur.pdf index c379a2c2..ec5b453c 100644 Binary files a/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/03 - Acute Oral Toxicity Up and Down Procedur.pdf and b/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/03 - Acute Oral Toxicity Up and Down Procedur.pdf differ diff --git a/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/04 - CGA80154 - Acute Oral Toxicity (Up and Down Procedure) - Rat (1).pdf b/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/04 - CGA80154 - Acute Oral Toxicity (Up and Down Procedure) - Rat (1).pdf index 84fb9dd6..f1d5a801 100644 Binary files a/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/04 - CGA80154 - Acute Oral Toxicity (Up and Down Procedure) - Rat (1).pdf and b/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/04 - CGA80154 - Acute Oral Toxicity (Up and Down Procedure) - Rat (1).pdf differ diff --git a/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/05 - CGA80154 Acute Oral Toxicity (Up and Down Procedure) - Rat (2).pdf b/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/05 - CGA80154 Acute Oral Toxicity (Up and Down Procedure) - Rat (2).pdf index 84fb9dd6..f1d5a801 100644 Binary files a/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/05 - CGA80154 Acute Oral Toxicity (Up and Down Procedure) - Rat (2).pdf and b/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/05 - CGA80154 Acute Oral Toxicity (Up and Down Procedure) - Rat (2).pdf differ diff --git a/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/06 - Isopyrazam - Acute Oral Toxicity Rat.pdf b/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/06 - Isopyrazam - Acute Oral Toxicity Rat.pdf index 1426f5d3..3e890cb1 100644 Binary files a/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/06 - Isopyrazam - Acute Oral Toxicity Rat.pdf and b/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/06 - Isopyrazam - Acute Oral Toxicity Rat.pdf differ diff --git a/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/07 - Acute Oral Toxicity in the Rat- Up and D.pdf b/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/07 - Acute Oral Toxicity in the Rat- Up and D.pdf index 08304c5e..2caf5318 100644 Binary files a/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/07 - Acute Oral Toxicity in the Rat- Up and D.pdf and b/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/07 - Acute Oral Toxicity in the Rat- Up and D.pdf differ diff --git a/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/08 - Acute Oral Toxicity Up and Down Procedur.pdf b/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/08 - Acute Oral Toxicity Up and Down Procedur.pdf index c286235b..5108c818 100644 Binary files a/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/08 - Acute Oral Toxicity Up and Down Procedur.pdf and b/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/08 - Acute Oral Toxicity Up and Down Procedur.pdf differ diff --git a/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/09 - CGA100251 - Acute Oral Toxicity (Up and Down Procedure) - Rat.pdf b/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/09 - CGA100251 - Acute Oral Toxicity (Up and Down Procedure) - Rat.pdf index 243b10c8..16b2652f 100644 Binary files a/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/09 - CGA100251 - Acute Oral Toxicity (Up and Down Procedure) - Rat.pdf and b/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/09 - CGA100251 - Acute Oral Toxicity (Up and Down Procedure) - Rat.pdf differ diff --git a/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/10 - Cyper TC - Acute Oral Toxicity Up and Do.pdf b/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/10 - Cyper TC - Acute Oral Toxicity Up and Do.pdf index a722f310..7df5423f 100644 Binary files a/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/10 - Cyper TC - Acute Oral Toxicity Up and Do.pdf and b/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/10 - Cyper TC - Acute Oral Toxicity Up and Do.pdf differ diff --git a/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/11 - Glyphosate Technical - Acute Oral Toxicity Study in the Rat (Up and Down Procedure) (1).pdf b/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/11 - Glyphosate Technical - Acute Oral Toxicity Study in the Rat (Up and Down Procedure) (1).pdf index c5317f9e..79830e42 100644 Binary files a/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/11 - Glyphosate Technical - Acute Oral Toxicity Study in the Rat (Up and Down Procedure) (1).pdf and b/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/11 - Glyphosate Technical - Acute Oral Toxicity Study in the Rat (Up and Down Procedure) (1).pdf differ diff --git a/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/12 - Glyphosate Technical - Acute Oral Toxicity Study in the Rat (Up and Down Procedure) (2).pdf b/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/12 - Glyphosate Technical - Acute Oral Toxicity Study in the Rat (Up and Down Procedure) (2).pdf index c5317f9e..79830e42 100644 Binary files a/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/12 - Glyphosate Technical - Acute Oral Toxicity Study in the Rat (Up and Down Procedure) (2).pdf and b/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/12 - Glyphosate Technical - Acute Oral Toxicity Study in the Rat (Up and Down Procedure) (2).pdf differ diff --git a/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/13 - Glyphosate Technical - Acute Oral Toxicity Study in the Rat (Up and Down Procedure).pdf b/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/13 - Glyphosate Technical - Acute Oral Toxicity Study in the Rat (Up and Down Procedure).pdf index c5317f9e..79830e42 100644 Binary files a/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/13 - Glyphosate Technical - Acute Oral Toxicity Study in the Rat (Up and Down Procedure).pdf and b/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/13 - Glyphosate Technical - Acute Oral Toxicity Study in the Rat (Up and Down Procedure).pdf differ diff --git a/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/14 - Paclobutrazol - Acute Oral Up-and-Down Procedure Rats.pdf b/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/14 - Paclobutrazol - Acute Oral Up-and-Down Procedure Rats.pdf index 9453789d..b38f3f93 100644 Binary files a/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/14 - Paclobutrazol - Acute Oral Up-and-Down Procedure Rats.pdf and b/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/14 - Paclobutrazol - Acute Oral Up-and-Down Procedure Rats.pdf differ diff --git a/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/15 - Pretilachlor - Acute Oral Toxicity (Up and Down Procedure) - Rat.pdf b/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/15 - Pretilachlor - Acute Oral Toxicity (Up and Down Procedure) - Rat.pdf index 6eba225e..2abbb072 100644 Binary files a/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/15 - Pretilachlor - Acute Oral Toxicity (Up and Down Procedure) - Rat.pdf and b/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/15 - Pretilachlor - Acute Oral Toxicity (Up and Down Procedure) - Rat.pdf differ diff --git a/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/16 - Prevail FT - Acute Oral Toxicity Up and.pdf b/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/16 - Prevail FT - Acute Oral Toxicity Up and.pdf index 87d8cec7..90c98f64 100644 Binary files a/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/16 - Prevail FT - Acute Oral Toxicity Up and.pdf and b/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/16 - Prevail FT - Acute Oral Toxicity Up and.pdf differ diff --git a/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/17 - R61837 - OECD summary - Acute oral toxicity study in the rat (up and down procedure) (1).pdf b/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/17 - R61837 - OECD summary - Acute oral toxicity study in the rat (up and down procedure) (1).pdf index 8f1c2d68..66000b56 100644 Binary files a/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/17 - R61837 - OECD summary - Acute oral toxicity study in the rat (up and down procedure) (1).pdf and b/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/17 - R61837 - OECD summary - Acute oral toxicity study in the rat (up and down procedure) (1).pdf differ diff --git a/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/18 - SYN520453 - OECD summary - Acute Oral Toxicity Study in Rats - Up-and-Down-Procedure.pdf b/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/18 - SYN520453 - OECD summary - Acute Oral Toxicity Study in Rats - Up-and-Down-Procedure.pdf index 6f40acf0..15f9548f 100644 Binary files a/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/18 - SYN520453 - OECD summary - Acute Oral Toxicity Study in Rats - Up-and-Down-Procedure.pdf and b/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/18 - SYN520453 - OECD summary - Acute Oral Toxicity Study in Rats - Up-and-Down-Procedure.pdf differ diff --git a/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/19 - SYN545192 - Acute Oral Toxicity Study in the Rat (Up and Down Procedure).pdf b/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/19 - SYN545192 - Acute Oral Toxicity Study in the Rat (Up and Down Procedure).pdf index 7dc98d53..d1f983c2 100644 Binary files a/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/19 - SYN545192 - Acute Oral Toxicity Study in the Rat (Up and Down Procedure).pdf and b/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/19 - SYN545192 - Acute Oral Toxicity Study in the Rat (Up and Down Procedure).pdf differ diff --git a/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/20 - SYN550004 - Acute Oral Toxicity (Up & Down Procedure) - Rats.pdf b/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/20 - SYN550004 - Acute Oral Toxicity (Up & Down Procedure) - Rats.pdf index 919d4966..1512bbbd 100644 Binary files a/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/20 - SYN550004 - Acute Oral Toxicity (Up & Down Procedure) - Rats.pdf and b/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/20 - SYN550004 - Acute Oral Toxicity (Up & Down Procedure) - Rats.pdf differ diff --git a/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/21 - CA6572 - Acute Oral Toxicity - Rats.pdf b/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/21 - CA6572 - Acute Oral Toxicity - Rats.pdf index 86317ea9..84051f3f 100644 Binary files a/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/21 - CA6572 - Acute Oral Toxicity - Rats.pdf and b/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/21 - CA6572 - Acute Oral Toxicity - Rats.pdf differ diff --git a/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/22 - SYN550023 - Acute Oral - Rat.pdf b/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/22 - SYN550023 - Acute Oral - Rat.pdf index 7826b7ca..1957fd98 100644 Binary files a/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/22 - SYN550023 - Acute Oral - Rat.pdf and b/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/22 - SYN550023 - Acute Oral - Rat.pdf differ diff --git a/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/23 - SYN549888 - Acute Oral Toxicity - Rats.pdf b/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/23 - SYN549888 - Acute Oral Toxicity - Rats.pdf index d696e4b3..be0e9e36 100644 Binary files a/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/23 - SYN549888 - Acute Oral Toxicity - Rats.pdf and b/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/23 - SYN549888 - Acute Oral Toxicity - Rats.pdf differ diff --git a/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/24 - SYN549522 - Acute Oral Toxicity - Rats.pdf b/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/24 - SYN549522 - Acute Oral Toxicity - Rats.pdf index e0567199..de55e7fb 100644 Binary files a/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/24 - SYN549522 - Acute Oral Toxicity - Rats.pdf and b/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/24 - SYN549522 - Acute Oral Toxicity - Rats.pdf differ diff --git a/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/25 - SYN546412 - Acute Oral Toxicity - Rats.pdf b/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/25 - SYN546412 - Acute Oral Toxicity - Rats.pdf index 8ed5237c..62ae9d78 100644 Binary files a/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/25 - SYN546412 - Acute Oral Toxicity - Rats.pdf and b/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/25 - SYN546412 - Acute Oral Toxicity - Rats.pdf differ diff --git a/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/26 - Sedaxane - Acute Oral Toxicity - Rat.pdf b/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/26 - Sedaxane - Acute Oral Toxicity - Rat.pdf index f3c89232..257b61a5 100644 Binary files a/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/26 - Sedaxane - Acute Oral Toxicity - Rat.pdf and b/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/26 - Sedaxane - Acute Oral Toxicity - Rat.pdf differ diff --git a/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/27 - Profenofos Technical - Acute Oral Toxici.pdf b/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/27 - Profenofos Technical - Acute Oral Toxici.pdf index 7d580f1c..cc7cc2a4 100644 Binary files a/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/27 - Profenofos Technical - Acute Oral Toxici.pdf and b/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/27 - Profenofos Technical - Acute Oral Toxici.pdf differ diff --git a/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/28 - Emamectin Technical - Acute Oral Toxicity - Rats.pdf b/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/28 - Emamectin Technical - Acute Oral Toxicity - Rats.pdf index ee1dba97..f16f7f8c 100644 Binary files a/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/28 - Emamectin Technical - Acute Oral Toxicity - Rats.pdf and b/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/28 - Emamectin Technical - Acute Oral Toxicity - Rats.pdf differ diff --git a/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/29 - Abamectin Technical (MK936C) - Acute Ora.pdf b/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/29 - Abamectin Technical (MK936C) - Acute Ora.pdf index 3810f5ba..60929fbe 100644 Binary files a/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/29 - Abamectin Technical (MK936C) - Acute Ora.pdf and b/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/29 - Abamectin Technical (MK936C) - Acute Ora.pdf differ diff --git a/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/30 - Dicamba - Acute Oral Toxicity - Rats.pdf b/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/30 - Dicamba - Acute Oral Toxicity - Rats.pdf index 9f674b35..b93112f3 100644 Binary files a/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/30 - Dicamba - Acute Oral Toxicity - Rats.pdf and b/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/30 - Dicamba - Acute Oral Toxicity - Rats.pdf differ diff --git a/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/31 - CA6375 - Acute Oral Toxicity - Rats.pdf b/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/31 - CA6375 - Acute Oral Toxicity - Rats.pdf index 4e578a11..f47d97d9 100644 Binary files a/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/31 - CA6375 - Acute Oral Toxicity - Rats.pdf and b/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/31 - CA6375 - Acute Oral Toxicity - Rats.pdf differ diff --git a/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/32 - Emamectin Benzoate Technical - Acute Oral Toxicity - Mouse.pdf b/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/32 - Emamectin Benzoate Technical - Acute Oral Toxicity - Mouse.pdf index 29ee151e..886c8a7a 100644 Binary files a/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/32 - Emamectin Benzoate Technical - Acute Oral Toxicity - Mouse.pdf and b/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/RSS/32 - Emamectin Benzoate Technical - Acute Oral Toxicity - Mouse.pdf differ diff --git a/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/new/agb1.pdf b/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/new/agb1.pdf new file mode 100644 index 00000000..f03238f3 Binary files /dev/null and b/redaction-service-v1/redaction-service-server-v1/src/test/resources/files/new/agb1.pdf differ