feat: leverage new list modeling, capture default markers (#1856)

* chore: update docling-core & regenerate test data

Signed-off-by: Panos Vagenas <pva@zurich.ibm.com>

* update backends to leverage new list modeling

Signed-off-by: Panos Vagenas <pva@zurich.ibm.com>

* repin docling-core

Signed-off-by: Panos Vagenas <pva@zurich.ibm.com>

* ensure availability of latest docling-core API

Signed-off-by: Panos Vagenas <pva@zurich.ibm.com>

---------

Signed-off-by: Panos Vagenas <pva@zurich.ibm.com>
This commit is contained in:
Panos Vagenas
2025-06-27 16:37:15 +02:00
committed by GitHub
parent e79e4f0ab6
commit 0533da1923
90 changed files with 2252 additions and 2240 deletions

View File

@@ -305,7 +305,7 @@
"__ref_s3_data": null
}
],
"text": "- GLYPH<g115>GLYPH<g3> GLYPH<g40>GLYPH<g81>GLYPH<g75>GLYPH<g68>GLYPH<g81>GLYPH<g70>GLYPH<g72>GLYPH<g3> GLYPH<g87>GLYPH<g75>GLYPH<g72>GLYPH<g3> GLYPH<g83>GLYPH<g72>GLYPH<g85>GLYPH<g73>GLYPH<g82>GLYPH<g85>GLYPH<g80>GLYPH<g68>GLYPH<g81>GLYPH<g70>GLYPH<g72>GLYPH<g3> GLYPH<g82>GLYPH<g73>GLYPH<g3> GLYPH<g92>GLYPH<g82>GLYPH<g88>GLYPH<g85> GLYPH<g3> GLYPH<g71>GLYPH<g68>GLYPH<g87>GLYPH<g68>GLYPH<g69>GLYPH<g68>GLYPH<g86>GLYPH<g72>GLYPH<g3> GLYPH<g82>GLYPH<g83>GLYPH<g72>GLYPH<g85>GLYPH<g68>GLYPH<g87>GLYPH<g76>GLYPH<g82>GLYPH<g81>GLYPH<g86>",
"text": "GLYPH<g115>GLYPH<g3> GLYPH<g40>GLYPH<g81>GLYPH<g75>GLYPH<g68>GLYPH<g81>GLYPH<g70>GLYPH<g72>GLYPH<g3> GLYPH<g87>GLYPH<g75>GLYPH<g72>GLYPH<g3> GLYPH<g83>GLYPH<g72>GLYPH<g85>GLYPH<g73>GLYPH<g82>GLYPH<g85>GLYPH<g80>GLYPH<g68>GLYPH<g81>GLYPH<g70>GLYPH<g72>GLYPH<g3> GLYPH<g82>GLYPH<g73>GLYPH<g3> GLYPH<g92>GLYPH<g82>GLYPH<g88>GLYPH<g85> GLYPH<g3> GLYPH<g71>GLYPH<g68>GLYPH<g87>GLYPH<g68>GLYPH<g69>GLYPH<g68>GLYPH<g86>GLYPH<g72>GLYPH<g3> GLYPH<g82>GLYPH<g83>GLYPH<g72>GLYPH<g85>GLYPH<g68>GLYPH<g87>GLYPH<g76>GLYPH<g82>GLYPH<g81>GLYPH<g86>",
"type": "paragraph",
"payload": null,
"name": "List-item",
@@ -328,7 +328,7 @@
"__ref_s3_data": null
}
],
"text": "- GLYPH<g115>GLYPH<g3> GLYPH<g40>GLYPH<g68>GLYPH<g85> GLYPH<g81>GLYPH<g3> GLYPH<g74>GLYPH<g85>GLYPH<g72>GLYPH<g68>GLYPH<g87>GLYPH<g72>GLYPH<g85>GLYPH<g3> GLYPH<g85>GLYPH<g72>GLYPH<g87>GLYPH<g88>GLYPH<g85> GLYPH<g81>GLYPH<g3> GLYPH<g82>GLYPH<g81>GLYPH<g3> GLYPH<g44>GLYPH<g55>GLYPH<g3> GLYPH<g83>GLYPH<g85>GLYPH<g82>GLYPH<g77>GLYPH<g72>GLYPH<g70>GLYPH<g87>GLYPH<g86> GLYPH<g3> GLYPH<g87>GLYPH<g75>GLYPH<g85>GLYPH<g82>GLYPH<g88>GLYPH<g74>GLYPH<g75>GLYPH<g3> GLYPH<g80>GLYPH<g82>GLYPH<g71>GLYPH<g72>GLYPH<g85> GLYPH<g81>GLYPH<g76>GLYPH<g93>GLYPH<g68>GLYPH<g87>GLYPH<g76>GLYPH<g82>GLYPH<g81>GLYPH<g3> GLYPH<g82>GLYPH<g73>GLYPH<g3> GLYPH<g71>GLYPH<g68>GLYPH<g87>GLYPH<g68>GLYPH<g69>GLYPH<g68>GLYPH<g86>GLYPH<g72>GLYPH<g3> GLYPH<g68>GLYPH<g81>GLYPH<g71> GLYPH<g3> GLYPH<g68>GLYPH<g83>GLYPH<g83>GLYPH<g79>GLYPH<g76>GLYPH<g70>GLYPH<g68>GLYPH<g87>GLYPH<g76>GLYPH<g82>GLYPH<g81>GLYPH<g86>",
"text": "GLYPH<g115>GLYPH<g3> GLYPH<g40>GLYPH<g68>GLYPH<g85> GLYPH<g81>GLYPH<g3> GLYPH<g74>GLYPH<g85>GLYPH<g72>GLYPH<g68>GLYPH<g87>GLYPH<g72>GLYPH<g85>GLYPH<g3> GLYPH<g85>GLYPH<g72>GLYPH<g87>GLYPH<g88>GLYPH<g85> GLYPH<g81>GLYPH<g3> GLYPH<g82>GLYPH<g81>GLYPH<g3> GLYPH<g44>GLYPH<g55>GLYPH<g3> GLYPH<g83>GLYPH<g85>GLYPH<g82>GLYPH<g77>GLYPH<g72>GLYPH<g70>GLYPH<g87>GLYPH<g86> GLYPH<g3> GLYPH<g87>GLYPH<g75>GLYPH<g85>GLYPH<g82>GLYPH<g88>GLYPH<g74>GLYPH<g75>GLYPH<g3> GLYPH<g80>GLYPH<g82>GLYPH<g71>GLYPH<g72>GLYPH<g85> GLYPH<g81>GLYPH<g76>GLYPH<g93>GLYPH<g68>GLYPH<g87>GLYPH<g76>GLYPH<g82>GLYPH<g81>GLYPH<g3> GLYPH<g82>GLYPH<g73>GLYPH<g3> GLYPH<g71>GLYPH<g68>GLYPH<g87>GLYPH<g68>GLYPH<g69>GLYPH<g68>GLYPH<g86>GLYPH<g72>GLYPH<g3> GLYPH<g68>GLYPH<g81>GLYPH<g71> GLYPH<g3> GLYPH<g68>GLYPH<g83>GLYPH<g83>GLYPH<g79>GLYPH<g76>GLYPH<g70>GLYPH<g68>GLYPH<g87>GLYPH<g76>GLYPH<g82>GLYPH<g81>GLYPH<g86>",
"type": "paragraph",
"payload": null,
"name": "List-item",
@@ -351,7 +351,7 @@
"__ref_s3_data": null
}
],
"text": "- GLYPH<g115>GLYPH<g3> GLYPH<g53>GLYPH<g72>GLYPH<g79>GLYPH<g92>GLYPH<g3> GLYPH<g82>GLYPH<g81>GLYPH<g3> GLYPH<g44>GLYPH<g37>GLYPH<g48>GLYPH<g3> GLYPH<g72>GLYPH<g91>GLYPH<g83>GLYPH<g72>GLYPH<g85>GLYPH<g87>GLYPH<g3> GLYPH<g70>GLYPH<g82>GLYPH<g81>GLYPH<g86>GLYPH<g88>GLYPH<g79>GLYPH<g87>GLYPH<g76>GLYPH<g81>GLYPH<g74>GLYPH<g15>GLYPH<g3> GLYPH<g86>GLYPH<g78>GLYPH<g76>GLYPH<g79>GLYPH<g79>GLYPH<g86> GLYPH<g3> GLYPH<g86>GLYPH<g75>GLYPH<g68>GLYPH<g85>GLYPH<g76>GLYPH<g81>GLYPH<g74>GLYPH<g3> GLYPH<g68>GLYPH<g81>GLYPH<g71>GLYPH<g3> GLYPH<g85>GLYPH<g72>GLYPH<g81>GLYPH<g82>GLYPH<g90>GLYPH<g81>GLYPH<g3> GLYPH<g86>GLYPH<g72>GLYPH<g85>GLYPH<g89>GLYPH<g76>GLYPH<g70>GLYPH<g72>GLYPH<g86>",
"text": "GLYPH<g115>GLYPH<g3> GLYPH<g53>GLYPH<g72>GLYPH<g79>GLYPH<g92>GLYPH<g3> GLYPH<g82>GLYPH<g81>GLYPH<g3> GLYPH<g44>GLYPH<g37>GLYPH<g48>GLYPH<g3> GLYPH<g72>GLYPH<g91>GLYPH<g83>GLYPH<g72>GLYPH<g85>GLYPH<g87>GLYPH<g3> GLYPH<g70>GLYPH<g82>GLYPH<g81>GLYPH<g86>GLYPH<g88>GLYPH<g79>GLYPH<g87>GLYPH<g76>GLYPH<g81>GLYPH<g74>GLYPH<g15>GLYPH<g3> GLYPH<g86>GLYPH<g78>GLYPH<g76>GLYPH<g79>GLYPH<g79>GLYPH<g86> GLYPH<g3> GLYPH<g86>GLYPH<g75>GLYPH<g68>GLYPH<g85>GLYPH<g76>GLYPH<g81>GLYPH<g74>GLYPH<g3> GLYPH<g68>GLYPH<g81>GLYPH<g71>GLYPH<g3> GLYPH<g85>GLYPH<g72>GLYPH<g81>GLYPH<g82>GLYPH<g90>GLYPH<g81>GLYPH<g3> GLYPH<g86>GLYPH<g72>GLYPH<g85>GLYPH<g89>GLYPH<g76>GLYPH<g70>GLYPH<g72>GLYPH<g86>",
"type": "paragraph",
"payload": null,
"name": "List-item",
@@ -374,7 +374,7 @@
"__ref_s3_data": null
}
],
"text": "- GLYPH<g115>GLYPH<g3> GLYPH<g55> GLYPH<g68>GLYPH<g78>GLYPH<g72>GLYPH<g3> GLYPH<g68>GLYPH<g71>GLYPH<g89>GLYPH<g68>GLYPH<g81>GLYPH<g87>GLYPH<g68>GLYPH<g74>GLYPH<g72>GLYPH<g3> GLYPH<g82>GLYPH<g73>GLYPH<g3> GLYPH<g68>GLYPH<g70>GLYPH<g70>GLYPH<g72>GLYPH<g86>GLYPH<g86>GLYPH<g3> GLYPH<g87>GLYPH<g82>GLYPH<g3> GLYPH<g68> GLYPH<g3> GLYPH<g90>GLYPH<g82>GLYPH<g85>GLYPH<g79>GLYPH<g71>GLYPH<g90>GLYPH<g76>GLYPH<g71>GLYPH<g72>GLYPH<g3> GLYPH<g86>GLYPH<g82>GLYPH<g88>GLYPH<g85>GLYPH<g70>GLYPH<g72>GLYPH<g3> GLYPH<g82>GLYPH<g73>GLYPH<g3> GLYPH<g72>GLYPH<g91>GLYPH<g83>GLYPH<g72>GLYPH<g85>GLYPH<g87>GLYPH<g76>GLYPH<g86>GLYPH<g72>",
"text": "GLYPH<g115>GLYPH<g3> GLYPH<g55> GLYPH<g68>GLYPH<g78>GLYPH<g72>GLYPH<g3> GLYPH<g68>GLYPH<g71>GLYPH<g89>GLYPH<g68>GLYPH<g81>GLYPH<g87>GLYPH<g68>GLYPH<g74>GLYPH<g72>GLYPH<g3> GLYPH<g82>GLYPH<g73>GLYPH<g3> GLYPH<g68>GLYPH<g70>GLYPH<g70>GLYPH<g72>GLYPH<g86>GLYPH<g86>GLYPH<g3> GLYPH<g87>GLYPH<g82>GLYPH<g3> GLYPH<g68> GLYPH<g3> GLYPH<g90>GLYPH<g82>GLYPH<g85>GLYPH<g79>GLYPH<g71>GLYPH<g90>GLYPH<g76>GLYPH<g71>GLYPH<g72>GLYPH<g3> GLYPH<g86>GLYPH<g82>GLYPH<g88>GLYPH<g85>GLYPH<g70>GLYPH<g72>GLYPH<g3> GLYPH<g82>GLYPH<g73>GLYPH<g3> GLYPH<g72>GLYPH<g91>GLYPH<g83>GLYPH<g72>GLYPH<g85>GLYPH<g87>GLYPH<g76>GLYPH<g86>GLYPH<g72>",
"type": "paragraph",
"payload": null,
"name": "List-item",
@@ -609,7 +609,7 @@
"__ref_s3_data": null
}
],
"text": "- r Database performance and scalability",
"text": "r Database performance and scalability",
"type": "paragraph",
"payload": null,
"name": "List-item",
@@ -632,7 +632,7 @@
"__ref_s3_data": null
}
],
"text": "- r Advanced SQL knowledge and skills transfer",
"text": "r Advanced SQL knowledge and skills transfer",
"type": "paragraph",
"payload": null,
"name": "List-item",
@@ -655,7 +655,7 @@
"__ref_s3_data": null
}
],
"text": "- r Business intelligence and analytics",
"text": "r Business intelligence and analytics",
"type": "paragraph",
"payload": null,
"name": "List-item",
@@ -678,7 +678,7 @@
"__ref_s3_data": null
}
],
"text": "- r DB2 Web Query",
"text": "r DB2 Web Query",
"type": "paragraph",
"payload": null,
"name": "List-item",
@@ -701,7 +701,7 @@
"__ref_s3_data": null
}
],
"text": "- r Query/400 modernization for better reporting and analysis capabilities",
"text": "r Query/400 modernization for better reporting and analysis capabilities",
"type": "paragraph",
"payload": null,
"name": "List-item",
@@ -724,7 +724,7 @@
"__ref_s3_data": null
}
],
"text": "- r Database modernization and re-engineering",
"text": "r Database modernization and re-engineering",
"type": "paragraph",
"payload": null,
"name": "List-item",
@@ -747,7 +747,7 @@
"__ref_s3_data": null
}
],
"text": "- r Data-centric architecture and design",
"text": "r Data-centric architecture and design",
"type": "paragraph",
"payload": null,
"name": "List-item",
@@ -770,7 +770,7 @@
"__ref_s3_data": null
}
],
"text": "- r Extremely large database and overcoming limits to growth",
"text": "r Extremely large database and overcoming limits to growth",
"type": "paragraph",
"payload": null,
"name": "List-item",
@@ -793,7 +793,7 @@
"__ref_s3_data": null
}
],
"text": "- r ISV education and enablement",
"text": "r ISV education and enablement",
"type": "paragraph",
"payload": null,
"name": "List-item",
@@ -1130,7 +1130,7 @@
"__ref_s3_data": null
}
],
"text": "- GLYPH<SM590000> Security fundamentals",
"text": "GLYPH<SM590000> Security fundamentals",
"type": "paragraph",
"payload": null,
"name": "List-item",
@@ -1153,7 +1153,7 @@
"__ref_s3_data": null
}
],
"text": "- GLYPH<SM590000> Current state of IBM i security",
"text": "GLYPH<SM590000> Current state of IBM i security",
"type": "paragraph",
"payload": null,
"name": "List-item",
@@ -1176,7 +1176,7 @@
"__ref_s3_data": null
}
],
"text": "- GLYPH<SM590000> DB2 for i security controls",
"text": "GLYPH<SM590000> DB2 for i security controls",
"type": "paragraph",
"payload": null,
"name": "List-item",
@@ -1291,7 +1291,7 @@
"__ref_s3_data": null
}
],
"text": "- GLYPH<SM590000> First, and most important, is the definition of a company's security policy . Without a security policy, there is no definition of what are acceptable practices for using, accessing, and storing information by who, what, when, where, and how. A security policy should minimally address three things: confidentiality, integrity, and availability.",
"text": "GLYPH<SM590000> First, and most important, is the definition of a company's security policy . Without a security policy, there is no definition of what are acceptable practices for using, accessing, and storing information by who, what, when, where, and how. A security policy should minimally address three things: confidentiality, integrity, and availability.",
"type": "paragraph",
"payload": null,
"name": "List-item",
@@ -1314,7 +1314,7 @@
"__ref_s3_data": null
}
],
"text": "- The monitoring and assessment of adherence to the security policy determines whether your security strategy is working. Often, IBM security consultants are asked to perform security assessments for companies without regard to the security policy. Although these assessments can be useful for observing how the system is defined and how data is being accessed, they cannot determine the level of security without a security policy. Without a security policy, it really is not an assessment as much as it is a baseline for monitoring the changes in the security settings that are captured.",
"text": "The monitoring and assessment of adherence to the security policy determines whether your security strategy is working. Often, IBM security consultants are asked to perform security assessments for companies without regard to the security policy. Although these assessments can be useful for observing how the system is defined and how data is being accessed, they cannot determine the level of security without a security policy. Without a security policy, it really is not an assessment as much as it is a baseline for monitoring the changes in the security settings that are captured.",
"type": "paragraph",
"payload": null,
"name": "List-item",
@@ -1360,7 +1360,7 @@
"__ref_s3_data": null
}
],
"text": "- GLYPH<SM590000> The second fundamental in securing data assets is the use of resource security . If implemented properly, resource security prevents data breaches from both internal and external intrusions. Resource security controls are closely tied to the part of the security policy that defines who should have access to what information resources. A hacker might be good enough to get through your company firewalls and sift his way through to your system, but if they do not have explicit access to your database, the hacker cannot compromise your information assets.",
"text": "GLYPH<SM590000> The second fundamental in securing data assets is the use of resource security . If implemented properly, resource security prevents data breaches from both internal and external intrusions. Resource security controls are closely tied to the part of the security policy that defines who should have access to what information resources. A hacker might be good enough to get through your company firewalls and sift his way through to your system, but if they do not have explicit access to your database, the hacker cannot compromise your information assets.",
"type": "paragraph",
"payload": null,
"name": "List-item",
@@ -1687,7 +1687,7 @@
"__ref_s3_data": null
}
],
"text": "- GLYPH<SM590000> Work Function Usage ( WRKFCNUSG )",
"text": "GLYPH<SM590000> Work Function Usage ( WRKFCNUSG )",
"type": "paragraph",
"payload": null,
"name": "List-item",
@@ -1710,7 +1710,7 @@
"__ref_s3_data": null
}
],
"text": "- GLYPH<SM590000> Change Function Usage ( CHGFCNUSG )",
"text": "GLYPH<SM590000> Change Function Usage ( CHGFCNUSG )",
"type": "paragraph",
"payload": null,
"name": "List-item",
@@ -1733,7 +1733,7 @@
"__ref_s3_data": null
}
],
"text": "- GLYPH<SM590000> Display Function Usage ( DSPFCNUSG )",
"text": "GLYPH<SM590000> Display Function Usage ( DSPFCNUSG )",
"type": "paragraph",
"payload": null,
"name": "List-item",
@@ -2558,7 +2558,7 @@
"__ref_s3_data": null
}
],
"text": "- GLYPH<SM590000> A user connects to the server using the user profile ALICE.",
"text": "GLYPH<SM590000> A user connects to the server using the user profile ALICE.",
"type": "paragraph",
"payload": null,
"name": "List-item",
@@ -2581,7 +2581,7 @@
"__ref_s3_data": null
}
],
"text": "- GLYPH<SM590000> USER and CURRENT USER initially have the same value of ALICE.",
"text": "GLYPH<SM590000> USER and CURRENT USER initially have the same value of ALICE.",
"type": "paragraph",
"payload": null,
"name": "List-item",
@@ -2604,7 +2604,7 @@
"__ref_s3_data": null
}
],
"text": "- GLYPH<SM590000> ALICE calls an SQL procedure that is named proc1, which is owned by user profile JOE and was created to adopt JOE's authority when it is called.",
"text": "GLYPH<SM590000> ALICE calls an SQL procedure that is named proc1, which is owned by user profile JOE and was created to adopt JOE's authority when it is called.",
"type": "paragraph",
"payload": null,
"name": "List-item",
@@ -2627,7 +2627,7 @@
"__ref_s3_data": null
}
],
"text": "- GLYPH<SM590000> While the procedure is running, the special register USER still contains the value of ALICE because it excludes any adopted authority. The special register CURRENT USER contains the value of JOE because it includes any adopted authority.",
"text": "GLYPH<SM590000> While the procedure is running, the special register USER still contains the value of ALICE because it excludes any adopted authority. The special register CURRENT USER contains the value of JOE because it includes any adopted authority.",
"type": "paragraph",
"payload": null,
"name": "List-item",
@@ -2650,7 +2650,7 @@
"__ref_s3_data": null
}
],
"text": "- GLYPH<SM590000> When proc1 ends, the session reverts to its original state with both USER and CURRENT USER having the value of ALICE.",
"text": "GLYPH<SM590000> When proc1 ends, the session reverts to its original state with both USER and CURRENT USER having the value of ALICE.",
"type": "paragraph",
"payload": null,
"name": "List-item",
@@ -2913,7 +2913,7 @@
"__ref_s3_data": null
}
],
"text": "- 1. There are user profiles for MGR, JANE, JUDY, and TONY.",
"text": "1. There are user profiles for MGR, JANE, JUDY, and TONY.",
"type": "paragraph",
"payload": null,
"name": "List-item",
@@ -2936,7 +2936,7 @@
"__ref_s3_data": null
}
],
"text": "- 2. The user profile JANE specifies a group profile of MGR.",
"text": "2. The user profile JANE specifies a group profile of MGR.",
"type": "paragraph",
"payload": null,
"name": "List-item",
@@ -2959,7 +2959,7 @@
"__ref_s3_data": null
}
],
"text": "- 3. If a user is connected to the server using user profile JANE, all of the following function invocations return a value of 1:",
"text": "3. If a user is connected to the server using user profile JANE, all of the following function invocations return a value of 1:",
"type": "paragraph",
"payload": null,
"name": "List-item",
@@ -3074,7 +3074,7 @@
"__ref_s3_data": null
}
],
"text": "- 2. The other column to mask in this example is the TAX_ID information. In this example, the rules to enforce include the following ones:",
"text": "2. The other column to mask in this example is the TAX_ID information. In this example, the rules to enforce include the following ones:",
"type": "paragraph",
"payload": null,
"name": "List-item",
@@ -3097,7 +3097,7 @@
"__ref_s3_data": null
}
],
"text": "- -Human Resources can see the unmasked TAX_ID of the employees.",
"text": "-Human Resources can see the unmasked TAX_ID of the employees.",
"type": "paragraph",
"payload": null,
"name": "List-item",
@@ -3120,7 +3120,7 @@
"__ref_s3_data": null
}
],
"text": "- -Employees can see only their own unmasked TAX_ID.",
"text": "-Employees can see only their own unmasked TAX_ID.",
"type": "paragraph",
"payload": null,
"name": "List-item",
@@ -3143,7 +3143,7 @@
"__ref_s3_data": null
}
],
"text": "- -Managers see a masked version of TAX_ID with the first five characters replaced with the X character (for example, XXX-XX-1234).",
"text": "-Managers see a masked version of TAX_ID with the first five characters replaced with the X character (for example, XXX-XX-1234).",
"type": "paragraph",
"payload": null,
"name": "List-item",
@@ -3166,7 +3166,7 @@
"__ref_s3_data": null
}
],
"text": "- -Any other person sees the entire TAX_ID as masked, for example, XXX-XX-XXXX.",
"text": "-Any other person sees the entire TAX_ID as masked, for example, XXX-XX-XXXX.",
"type": "paragraph",
"payload": null,
"name": "List-item",
@@ -3189,7 +3189,7 @@
"__ref_s3_data": null
}
],
"text": "- To implement this column mask, run the SQL statement that is shown in Example 3-9.",
"text": "To implement this column mask, run the SQL statement that is shown in Example 3-9.",
"type": "paragraph",
"payload": null,
"name": "List-item",
@@ -3258,7 +3258,7 @@
"__ref_s3_data": null
}
],
"text": "- 3. Figure 3-10 shows the masks that are created in the HR_SCHEMA.",
"text": "3. Figure 3-10 shows the masks that are created in the HR_SCHEMA.",
"type": "paragraph",
"payload": null,
"name": "List-item",
@@ -3355,7 +3355,7 @@
"__ref_s3_data": null
}
],
"text": "- 1. Run the SQL statements that are shown in Example 3-10.",
"text": "1. Run the SQL statements that are shown in Example 3-10.",
"type": "paragraph",
"payload": null,
"name": "List-item",
@@ -3401,7 +3401,7 @@
"__ref_s3_data": null
}
],
"text": "- /* Active Row Access Control (permissions) */",
"text": "/* Active Row Access Control (permissions) */",
"type": "paragraph",
"payload": null,
"name": "List-item",
@@ -3424,7 +3424,7 @@
"__ref_s3_data": null
}
],
"text": "- /* Active Column Access Control (masks)",
"text": "/* Active Column Access Control (masks)",
"type": "paragraph",
"payload": null,
"name": "List-item",
@@ -3539,7 +3539,7 @@
"__ref_s3_data": null
}
],
"text": "- 2. Look at the definition of the EMPLOYEE table, as shown in Figure 3-11. To do this, from the main navigation pane of System i Navigator, click Schemas \uf0ae HR_SCHEMA \uf0ae Tables , right-click the EMPLOYEES table, and click Definition .",
"text": "2. Look at the definition of the EMPLOYEE table, as shown in Figure 3-11. To do this, from the main navigation pane of System i Navigator, click Schemas \uf0ae HR_SCHEMA \uf0ae Tables , right-click the EMPLOYEES table, and click Definition .",
"type": "paragraph",
"payload": null,
"name": "List-item",
@@ -3590,7 +3590,7 @@
"__ref_s3_data": null
}
],
"text": "- 2. Figure 4-68 shows the Visual Explain of the same SQL statement, but with RCAC enabled. It is clear that the implementation of the SQL statement is more complex because the row permission rule becomes part of the WHERE clause.",
"text": "2. Figure 4-68 shows the Visual Explain of the same SQL statement, but with RCAC enabled. It is clear that the implementation of the SQL statement is more complex because the row permission rule becomes part of the WHERE clause.",
"type": "paragraph",
"payload": null,
"name": "List-item",
@@ -3613,7 +3613,7 @@
"__ref_s3_data": null
}
],
"text": "- 3. Compare the advised indexes that are provided by the Optimizer without RCAC and with RCAC enabled. Figure 4-69 shows the index advice for the SQL statement without RCAC enabled. The index being advised is for the ORDER BY clause.",
"text": "3. Compare the advised indexes that are provided by the Optimizer without RCAC and with RCAC enabled. Figure 4-69 shows the index advice for the SQL statement without RCAC enabled. The index being advised is for the ORDER BY clause.",
"type": "paragraph",
"payload": null,
"name": "List-item",