From 6bc96732401745b37e2c8ec6ce0a81955038ad49 Mon Sep 17 00:00:00 2001
From: Brian Rosenberg
Date: Thu, 25 Jan 2024 12:25:00 -0500
Subject: [PATCH 1/4] Add roll up guide
---
docs/docs/Roll-Up-Guide.md | 94 +++++
docs/mkdocs.yml | 1 +
docs/site/404.html | 4 +
docs/site/Acknowledgements/index.html | 4 +
docs/site/Admin-Guide/index.html | 4 +
docs/site/CPP-Batch-Component-API/index.html | 4 +
.../CPP-Streaming-Component-API/index.html | 4 +
docs/site/Component-API-Overview/index.html | 4 +
.../Component-Descriptor-Reference/index.html | 4 +
docs/site/Contributor-Guide/index.html | 4 +
docs/site/Derivative-Media-Guide/index.html | 4 +
.../Development-Environment-Guide/index.html | 4 +
docs/site/Feed-Forward-Guide/index.html | 4 +
docs/site/GPU-Support-Guide/index.html | 4 +
docs/site/Install-Guide/index.html | 4 +
docs/site/Java-Batch-Component-API/index.html | 4 +
docs/site/License-And-Distribution/index.html | 4 +
docs/site/Markup-Guide/index.html | 4 +
docs/site/Media-Segmentation-Guide/index.html | 4 +
docs/site/Node-Guide/index.html | 4 +
docs/site/Object-Storage-Guide/index.html | 4 +
docs/site/OpenID-Connect-Guide/index.html | 4 +
.../Python-Batch-Component-API/index.html | 4 +
docs/site/REST-API/index.html | 8 +-
docs/site/Release-Notes/index.html | 4 +
docs/site/Roll-Up-Guide/index.html | 369 ++++++++++++++++++
docs/site/TiesDb-Guide/index.html | 4 +
docs/site/Trigger-Guide/index.html | 8 +-
docs/site/User-Guide/index.html | 4 +
.../Workflow-Manager-Architecture/index.html | 4 +
docs/site/index.html | 6 +-
docs/site/search.html | 4 +
docs/site/search/search_index.json | 15 +
docs/site/sitemap.xml | 59 +--
34 files changed, 632 insertions(+), 32 deletions(-)
create mode 100644 docs/docs/Roll-Up-Guide.md
create mode 100644 docs/site/Roll-Up-Guide/index.html
diff --git a/docs/docs/Roll-Up-Guide.md b/docs/docs/Roll-Up-Guide.md
new file mode 100644
index 000000000000..6fde2eb9ab6a
--- /dev/null
+++ b/docs/docs/Roll-Up-Guide.md
@@ -0,0 +1,94 @@
+**NOTICE:** This software (or technical data) was produced for the U.S. Government under contract,
+and is subject to the Rights in Data-General Clause 52.227-14, Alt. IV (DEC 2007). Copyright 2023
+The MITRE Corporation. All Rights Reserved.
+
+
+# Roll Up Overview
+
+The Workflow Manager can be configured to replace the values of detection properties after
+receiving detections from a component. This is commonly used to replace specific terms with a more
+general category. To use this feature, a JSON file in the format described below must be created.
+Then, the `ROLL_UP_FILE` job property must be set to the file path where that file is located.
+
+
+# Roll Up File
+
+At the top level, the roll up file contains an array. The array contains an object for each
+detection property should be modified. Each object contains the following fields:
+
+- `propertyToProcess`: (Required) A detection property key. The value will be modified according to
+ the `groups` key.
+- `originalPropertyCopy`: (Optional) Copies the value of `propertyToProcess` prior to roll up to
+ another property. The copy is made even if property is not modified.
+- `groups`: (Optional) Array containing an object for each roll up name. If the value of the
+ detection property specified by `propertyToProcess` matches a string listed in `members`, it
+ will be replaced by the content of the `rollUp` property.
+
+In the example below, the value of the "CLASSIFICATION" detection property will be copied to
+"ORIGINAL CLASSIFICATION" before the roll up is performed. If the "CLASSIFICATION" detection
+property is set to "truck", "car", or "bus", the value of the detection property will be replaced
+by "vehicle". In a real use case there will generally be multiple roll up groups for a single
+detection property. The "sandwich" group shows how to include an additional mapping for the same
+detection property. The "PROP2" section is an example of how to apply roll up to an additional
+detection property with a different configuration.
+
+```json
+[
+ {
+ "propertyToProcess": "CLASSIFICATION",
+ "originalPropertyCopy": "ORIGINAL CLASSIFICATION",
+ "groups": [
+ {
+ "rollUp": "vehicle",
+ "members": [
+ "truck",
+ "car",
+ "bus"
+ ]
+ },
+ {
+ "rollUp": "sandwich",
+ "members": [
+ "grilled cheese",
+ "reuben",
+ "hamburger",
+ "hot dog"
+ ]
+ }
+ ]
+ },
+ {
+ "propertyToProcess": "PROP2",
+ "groups": [
+ {
+ "rollUp": "new name",
+ "members": [
+ "old name"
+ ]
+ }
+ ]
+ }
+]
+```
+
+If the roll up above was applied to these detection properties:
+```json
+{
+ "CLASSIFICATION": "truck",
+ "PROP2": "truck",
+ "PROP3": "other"
+}
+```
+
+it would result in:
+```json
+{
+ "CLASSIFICATION": "vehicle",
+ "ORIGINAL CLASSIFICATION": "truck",
+ "PROP2": "truck",
+ "PROP3": "other"
+}
+```
+
+"PROP2" was not modified because because only the "CLASSIFICATION" property has the "vehicle" roll
+up group. "PROP3" was not changed because it is not in the roll up file.
diff --git a/docs/mkdocs.yml b/docs/mkdocs.yml
index 5bf9f730cd4c..688492793e2a 100644
--- a/docs/mkdocs.yml
+++ b/docs/mkdocs.yml
@@ -27,6 +27,7 @@ pages:
- Markup Guide: Markup-Guide.md
- TiesDb Guide: TiesDb-Guide.md
- Trigger Guide: Trigger-Guide.md
+ - Roll Up Guide: Roll-Up-Guide.md
- REST API: REST-API.md
- Component Development:
- Component API Overview: Component-API-Overview.md
diff --git a/docs/site/404.html b/docs/site/404.html
index de56de4102b9..a8a17c5d83f2 100644
--- a/docs/site/404.html
+++ b/docs/site/404.html
@@ -114,6 +114,10 @@
NOTICE: This software (or technical data) was produced for the U.S. Government under contract,
+and is subject to the Rights in Data-General Clause 52.227-14, Alt. IV (DEC 2007). Copyright 2023
+The MITRE Corporation. All Rights Reserved.
+
Roll Up Overview
+
The Workflow Manager can be configured to replace the values of detection properties after
+receiving detections from a component. This is commonly used to replace specific terms with a more
+general category. To use this feature, a JSON file in the format described below must be created.
+Then, the ROLL_UP_FILE job property must be set to the file path where that file is located.
+
Roll Up File
+
At the top level, the roll up file contains an array. The array contains an object for each
+detection property should be modified. Each object contains the following fields:
+
+
propertyToProcess: (Required) A detection property key. The value will be modified according to
+ the groups key.
+
originalPropertyCopy: (Optional) Copies the value of propertyToProcess prior to roll up to
+ another property. The copy is made even if property is not modified.
+
groups: (Optional) Array containing an object for each roll up name. If the value of the
+ detection property specified by propertyToProcess matches a string listed in members, it
+ will be replaced by the content of the rollUp property.
+
+
In the example below, the value of the "CLASSIFICATION" detection property will be copied to
+"ORIGINAL CLASSIFICATION" before the roll up is performed. If the "CLASSIFICATION" detection
+property is set to "truck", "car", or "bus", the value of the detection property will be replaced
+by "vehicle". In a real use case there will generally be multiple roll up groups for a single
+detection property. The "sandwich" group shows how to include an additional mapping for the same
+detection property. The "PROP2" section is an example of how to apply roll up to an additional
+detection property with a different configuration.
"PROP2" was not modified because because only the "CLASSIFICATION" property has the "vehicle" roll
+up group. "PROP3" was not changed because it is not in the roll up file.
diff --git a/docs/site/search/search_index.json b/docs/site/search/search_index.json
index d53ee7c175b1..e6700db94aed 100644
--- a/docs/site/search/search_index.json
+++ b/docs/site/search/search_index.json
@@ -565,6 +565,21 @@
"text": "Many times job properties are defined using JSON and track properties appear in the JSON output\nobject. JSON also uses backslash as its escape character. Since the TRIGGER property and JSON both\nuse backslash as the escape character, when specifying the TRIGGER property in JSON, the string\nmust be doubly escaped. If the job request contains this JSON fragment: { \"algorithmProperties\": { \"DNNCV\": {\"TRIGGER\": \"CLASS=dog;cat\"} } } it will match either \"dog\" or \"cat\", but not \"dog;cat\". This JSON fragment: { \"algorithmProperties\": { \"DNNCV\": {\"TRIGGER\": \"CLASS=dog\\\\;cat\"} } } would only match \"dog;cat\". This JSON fragment: { \"algorithmProperties\": { \"DNNCV\": {\"TRIGGER\": \"CLASS=dog\\\\\\\\cat\"} } } would only match \"dog\\cat\". The track property in the JSON output object would appear as: { \"trackProperties\": { \"CLASSIFICATION\": \"dog\\\\cat\" } }",
"title": "JSON escaping"
},
+ {
+ "location": "/Roll-Up-Guide/index.html",
+ "text": "NOTICE:\n This software (or technical data) was produced for the U.S. Government under contract,\nand is subject to the Rights in Data-General Clause 52.227-14, Alt. IV (DEC 2007). Copyright 2023\nThe MITRE Corporation. All Rights Reserved.\n\n\nRoll Up Overview\n\n\nThe Workflow Manager can be configured to replace the values of detection properties after\nreceiving detections from a component. This is commonly used to replace specific terms with a more\ngeneral category. To use this feature, a JSON file in the format described below must be created.\nThen, the \nROLL_UP_FILE\n job property must be set to the file path where that file is located.\n\n\nRoll Up File\n\n\nAt the top level, the roll up file contains an array. The array contains an object for each\ndetection property should be modified. Each object contains the following fields:\n\n\n\n\npropertyToProcess\n: (Required) A detection property key. The value will be modified according to\n the \ngroups\n key.\n\n\noriginalPropertyCopy\n: (Optional) Copies the value of \npropertyToProcess\n prior to roll up to\n another property. The copy is made even if property is not modified.\n\n\ngroups\n: (Optional) Array containing an object for each roll up name. If the value of the\n detection property specified by \npropertyToProcess\n matches a string listed in \nmembers\n, it\n will be replaced by the content of the \nrollUp\n property.\n\n\n\n\nIn the example below, the value of the \"CLASSIFICATION\" detection property will be copied to\n\"ORIGINAL CLASSIFICATION\" before the roll up is performed. If the \"CLASSIFICATION\" detection\nproperty is set to \"truck\", \"car\", or \"bus\", the value of the detection property will be replaced\nby \"vehicle\". In a real use case there will generally be multiple roll up groups for a single\ndetection property. The \"sandwich\" group shows how to include an additional mapping for the same\ndetection property. The \"PROP2\" section is an example of how to apply roll up to an additional\ndetection property with a different configuration.\n\n\n[\n {\n \"propertyToProcess\": \"CLASSIFICATION\",\n \"originalPropertyCopy\": \"ORIGINAL CLASSIFICATION\",\n \"groups\": [\n {\n \"rollUp\": \"vehicle\",\n \"members\": [\n \"truck\",\n \"car\",\n \"bus\"\n ]\n },\n {\n \"rollUp\": \"sandwich\",\n \"members\": [\n \"grilled cheese\",\n \"reuben\",\n \"hamburger\",\n \"hot dog\"\n ]\n }\n ]\n },\n {\n \"propertyToProcess\": \"PROP2\",\n \"groups\": [\n {\n \"rollUp\": \"new name\",\n \"members\": [\n \"old name\"\n ]\n }\n ]\n }\n]\n\n\n\nIf the roll up above was applied to these detection properties:\n\n\n{\n \"CLASSIFICATION\": \"truck\",\n \"PROP2\": \"truck\",\n \"PROP3\": \"other\"\n}\n\n\n\nit would result in:\n\n\n{\n \"CLASSIFICATION\": \"vehicle\",\n \"ORIGINAL CLASSIFICATION\": \"truck\",\n \"PROP2\": \"truck\",\n \"PROP3\": \"other\"\n}\n\n\n\n\"PROP2\" was not modified because because only the \"CLASSIFICATION\" property has the \"vehicle\" roll\nup group. \"PROP3\" was not changed because it is not in the roll up file.",
+ "title": "Roll Up Guide"
+ },
+ {
+ "location": "/Roll-Up-Guide/index.html#roll-up-overview",
+ "text": "The Workflow Manager can be configured to replace the values of detection properties after\nreceiving detections from a component. This is commonly used to replace specific terms with a more\ngeneral category. To use this feature, a JSON file in the format described below must be created.\nThen, the ROLL_UP_FILE job property must be set to the file path where that file is located.",
+ "title": "Roll Up Overview"
+ },
+ {
+ "location": "/Roll-Up-Guide/index.html#roll-up-file",
+ "text": "At the top level, the roll up file contains an array. The array contains an object for each\ndetection property should be modified. Each object contains the following fields: propertyToProcess : (Required) A detection property key. The value will be modified according to\n the groups key. originalPropertyCopy : (Optional) Copies the value of propertyToProcess prior to roll up to\n another property. The copy is made even if property is not modified. groups : (Optional) Array containing an object for each roll up name. If the value of the\n detection property specified by propertyToProcess matches a string listed in members , it\n will be replaced by the content of the rollUp property. In the example below, the value of the \"CLASSIFICATION\" detection property will be copied to\n\"ORIGINAL CLASSIFICATION\" before the roll up is performed. If the \"CLASSIFICATION\" detection\nproperty is set to \"truck\", \"car\", or \"bus\", the value of the detection property will be replaced\nby \"vehicle\". In a real use case there will generally be multiple roll up groups for a single\ndetection property. The \"sandwich\" group shows how to include an additional mapping for the same\ndetection property. The \"PROP2\" section is an example of how to apply roll up to an additional\ndetection property with a different configuration. [\n {\n \"propertyToProcess\": \"CLASSIFICATION\",\n \"originalPropertyCopy\": \"ORIGINAL CLASSIFICATION\",\n \"groups\": [\n {\n \"rollUp\": \"vehicle\",\n \"members\": [\n \"truck\",\n \"car\",\n \"bus\"\n ]\n },\n {\n \"rollUp\": \"sandwich\",\n \"members\": [\n \"grilled cheese\",\n \"reuben\",\n \"hamburger\",\n \"hot dog\"\n ]\n }\n ]\n },\n {\n \"propertyToProcess\": \"PROP2\",\n \"groups\": [\n {\n \"rollUp\": \"new name\",\n \"members\": [\n \"old name\"\n ]\n }\n ]\n }\n] If the roll up above was applied to these detection properties: {\n \"CLASSIFICATION\": \"truck\",\n \"PROP2\": \"truck\",\n \"PROP3\": \"other\"\n} it would result in: {\n \"CLASSIFICATION\": \"vehicle\",\n \"ORIGINAL CLASSIFICATION\": \"truck\",\n \"PROP2\": \"truck\",\n \"PROP3\": \"other\"\n} \"PROP2\" was not modified because because only the \"CLASSIFICATION\" property has the \"vehicle\" roll\nup group. \"PROP3\" was not changed because it is not in the roll up file.",
+ "title": "Roll Up File"
+ },
{
"location": "/REST-API/index.html",
"text": "The OpenMPF REST API is provided by Swagger and is available within the OpenMPF Workflow Manager web application. Swagger enables users to test the endpoints using the running instance of OpenMPF.\n\n\nClick \nhere\n for a generated version of the content.\n\n\nNote that in a Docker deployment the \n/rest/nodes\n and \n/rest/streaming\n endpoints are disabled.",
diff --git a/docs/site/sitemap.xml b/docs/site/sitemap.xml
index e7282c1af712..6f6d15a7b375 100644
--- a/docs/site/sitemap.xml
+++ b/docs/site/sitemap.xml
@@ -2,137 +2,142 @@
/index.html
- 2024-01-17
+ 2024-01-25daily/Release-Notes/index.html
- 2024-01-17
+ 2024-01-25daily/License-And-Distribution/index.html
- 2024-01-17
+ 2024-01-25daily/Acknowledgements/index.html
- 2024-01-17
+ 2024-01-25daily/Install-Guide/index.html
- 2024-01-17
+ 2024-01-25daily/Admin-Guide/index.html
- 2024-01-17
+ 2024-01-25daily/User-Guide/index.html
- 2024-01-17
+ 2024-01-25daily/OpenID-Connect-Guide/index.html
- 2024-01-17
+ 2024-01-25daily/Media-Segmentation-Guide/index.html
- 2024-01-17
+ 2024-01-25daily/Feed-Forward-Guide/index.html
- 2024-01-17
+ 2024-01-25daily/Derivative-Media-Guide/index.html
- 2024-01-17
+ 2024-01-25daily/Object-Storage-Guide/index.html
- 2024-01-17
+ 2024-01-25daily/Markup-Guide/index.html
- 2024-01-17
+ 2024-01-25daily/TiesDb-Guide/index.html
- 2024-01-17
+ 2024-01-25daily/Trigger-Guide/index.html
- 2024-01-17
+ 2024-01-25
+ daily
+
+
+ /Roll-Up-Guide/index.html
+ 2024-01-25daily/REST-API/index.html
- 2024-01-17
+ 2024-01-25daily/Component-API-Overview/index.html
- 2024-01-17
+ 2024-01-25daily/Component-Descriptor-Reference/index.html
- 2024-01-17
+ 2024-01-25daily/CPP-Batch-Component-API/index.html
- 2024-01-17
+ 2024-01-25daily/Python-Batch-Component-API/index.html
- 2024-01-17
+ 2024-01-25daily/Java-Batch-Component-API/index.html
- 2024-01-17
+ 2024-01-25daily/GPU-Support-Guide/index.html
- 2024-01-17
+ 2024-01-25daily/Contributor-Guide/index.html
- 2024-01-17
+ 2024-01-25daily/Development-Environment-Guide/index.html
- 2024-01-17
+ 2024-01-25daily/Node-Guide/index.html
- 2024-01-17
+ 2024-01-25daily/Workflow-Manager-Architecture/index.html
- 2024-01-17
+ 2024-01-25daily/CPP-Streaming-Component-API/index.html
- 2024-01-17
+ 2024-01-25daily
\ No newline at end of file
From 6b6dbac62c1e612b94f581bac77887dc0d99fb5f Mon Sep 17 00:00:00 2001
From: jrobble
Date: Fri, 26 Jan 2024 17:32:44 -0500
Subject: [PATCH 2/4] Minor changes.
---
docs/docs/Roll-Up-Guide.md | 9 +++++----
1 file changed, 5 insertions(+), 4 deletions(-)
diff --git a/docs/docs/Roll-Up-Guide.md b/docs/docs/Roll-Up-Guide.md
index 6fde2eb9ab6a..b56021ed6a4e 100644
--- a/docs/docs/Roll-Up-Guide.md
+++ b/docs/docs/Roll-Up-Guide.md
@@ -7,19 +7,20 @@ The MITRE Corporation. All Rights Reserved.
The Workflow Manager can be configured to replace the values of detection properties after
receiving detections from a component. This is commonly used to replace specific terms with a more
-general category. To use this feature, a JSON file in the format described below must be created.
-Then, the `ROLL_UP_FILE` job property must be set to the file path where that file is located.
+general category. For example, "car", "bus", and "truck" are a kind of "vehicle". To use this
+feature, a JSON file in the format described below must be created. Then, the `ROLL_UP_FILE` job
+property must be set to the file path where that file is located.
# Roll Up File
At the top level, the roll up file contains an array. The array contains an object for each
-detection property should be modified. Each object contains the following fields:
+detection property that should be modified. Each object contains the following fields:
- `propertyToProcess`: (Required) A detection property key. The value will be modified according to
the `groups` key.
- `originalPropertyCopy`: (Optional) Copies the value of `propertyToProcess` prior to roll up to
- another property. The copy is made even if property is not modified.
+ another property. The copy is made even if the property is not modified.
- `groups`: (Optional) Array containing an object for each roll up name. If the value of the
detection property specified by `propertyToProcess` matches a string listed in `members`, it
will be replaced by the content of the `rollUp` property.
From 600409d2080dab05c712d9bb4aefd5e8f9c5da64 Mon Sep 17 00:00:00 2001
From: jrobble
Date: Fri, 26 Jan 2024 18:10:07 -0500
Subject: [PATCH 3/4] Add clarity.
---
docs/docs/Roll-Up-Guide.md | 82 ++++++++++++++++++++++++--------------
1 file changed, 51 insertions(+), 31 deletions(-)
diff --git a/docs/docs/Roll-Up-Guide.md b/docs/docs/Roll-Up-Guide.md
index b56021ed6a4e..a93ae5fab723 100644
--- a/docs/docs/Roll-Up-Guide.md
+++ b/docs/docs/Roll-Up-Guide.md
@@ -5,34 +5,16 @@ The MITRE Corporation. All Rights Reserved.
# Roll Up Overview
-The Workflow Manager can be configured to replace the values of detection properties after
-receiving detections from a component. This is commonly used to replace specific terms with a more
-general category. For example, "car", "bus", and "truck" are a kind of "vehicle". To use this
-feature, a JSON file in the format described below must be created. Then, the `ROLL_UP_FILE` job
-property must be set to the file path where that file is located.
+The Workflow Manager can be configured to replace the values of track and detection properties after
+receiving tracks and detections from a component. This feature is commonly used to replace specific
+terms with a more general category. For example, the "CLASSIFICATION" property may be set to "car",
+"bus", and "truck". Those are all a kind of "vehicle". To use this feature, a JSON file in the
+format described below must be created. Then, the `ROLL_UP_FILE` job property must be set to the
+file path where that file is located.
# Roll Up File
-At the top level, the roll up file contains an array. The array contains an object for each
-detection property that should be modified. Each object contains the following fields:
-
-- `propertyToProcess`: (Required) A detection property key. The value will be modified according to
- the `groups` key.
-- `originalPropertyCopy`: (Optional) Copies the value of `propertyToProcess` prior to roll up to
- another property. The copy is made even if the property is not modified.
-- `groups`: (Optional) Array containing an object for each roll up name. If the value of the
- detection property specified by `propertyToProcess` matches a string listed in `members`, it
- will be replaced by the content of the `rollUp` property.
-
-In the example below, the value of the "CLASSIFICATION" detection property will be copied to
-"ORIGINAL CLASSIFICATION" before the roll up is performed. If the "CLASSIFICATION" detection
-property is set to "truck", "car", or "bus", the value of the detection property will be replaced
-by "vehicle". In a real use case there will generally be multiple roll up groups for a single
-detection property. The "sandwich" group shows how to include an additional mapping for the same
-detection property. The "PROP2" section is an example of how to apply roll up to an additional
-detection property with a different configuration.
-
```json
[
{
@@ -59,7 +41,18 @@ detection property with a different configuration.
]
},
{
- "propertyToProcess": "PROP2",
+ "propertyToProcess": "COLOR",
+ "groups": [
+ {
+ "rollUp": "purple",
+ "members": [
+ "indigo"
+ ]
+ }
+ ]
+ },
+ {
+ "propertyToProcess": "PROP3",
"groups": [
{
"rollUp": "new name",
@@ -72,24 +65,51 @@ detection property with a different configuration.
]
```
+At the top level, the roll up file contains an array where each element defines a detection property
+that should be modified. In those example, there is one element for "CLASSIFICATION", one for
+"COLOR", and one for "PROP3". Each element contains the following fields:
+
+- `propertyToProcess`: (Required) A detection property key. The value will be modified according to
+ the `groups` key.
+- `originalPropertyCopy`: (Optional) Copies the value of `propertyToProcess` prior to roll up to
+ another property. The copy is made even if the property is not modified.
+- `groups`: (Optional) Array containing an element for each roll up name. If the value of the
+ detection property specified by `propertyToProcess` matches a string listed in `members`, it
+ will be replaced by the content of the `rollUp` property.
+
+In the example above, the value of the "CLASSIFICATION" detection property will be copied to
+"ORIGINAL CLASSIFICATION" before the roll up is performed. If the "CLASSIFICATION" detection
+property is set to "truck", "car", or "bus", the value of the detection property will be replaced
+by "vehicle".
+
+In a real use case there will generally be multiple roll up groups for a single detection property.
+The "sandwich" group shows how to include an additional mapping for the same "CLASSIFICATION"
+property. The "COLOR" and "PROP3" sections show examples of how to apply roll up to different
+detection properties with a different configuration.
+
If the roll up above was applied to these detection properties:
+
```json
{
"CLASSIFICATION": "truck",
- "PROP2": "truck",
- "PROP3": "other"
+ "COLOR": "red",
+ "PROP3": "truck",
+ "PROP4": "other"
}
```
it would result in:
+
```json
{
"CLASSIFICATION": "vehicle",
"ORIGINAL CLASSIFICATION": "truck",
- "PROP2": "truck",
- "PROP3": "other"
+ "COLOR": "red",
+ "PROP3": "truck",
+ "PROP4": "other"
}
```
-"PROP2" was not modified because because only the "CLASSIFICATION" property has the "vehicle" roll
-up group. "PROP3" was not changed because it is not in the roll up file.
+"COLOR" was not modified since it does not define a roll up group with "red" as a member. "PROP3"
+was not modified because only the "CLASSIFICATION" property has a roll up group with "truck" as a
+member. "PROP4" was not modified because it is not in the roll up file.
From 67756949a6f728055685f63f7ab1a9d75a2a195f Mon Sep 17 00:00:00 2001
From: Brian Rosenberg
Date: Mon, 29 Jan 2024 07:03:11 -0500
Subject: [PATCH 4/4] Fix grammar
---
docs/docs/Roll-Up-Guide.md | 8 ++--
docs/site/Roll-Up-Guide/index.html | 77 +++++++++++++++++++-----------
docs/site/index.html | 2 +-
docs/site/search/search_index.json | 6 +--
docs/site/sitemap.xml | 56 +++++++++++-----------
5 files changed, 85 insertions(+), 64 deletions(-)
diff --git a/docs/docs/Roll-Up-Guide.md b/docs/docs/Roll-Up-Guide.md
index a93ae5fab723..a452e9327b49 100644
--- a/docs/docs/Roll-Up-Guide.md
+++ b/docs/docs/Roll-Up-Guide.md
@@ -15,6 +15,8 @@ file path where that file is located.
# Roll Up File
+The JSON below is an example of a roll up file.
+
```json
[
{
@@ -66,7 +68,7 @@ file path where that file is located.
```
At the top level, the roll up file contains an array where each element defines a detection property
-that should be modified. In those example, there is one element for "CLASSIFICATION", one for
+that should be modified. In this example, there is one element for "CLASSIFICATION", one for
"COLOR", and one for "PROP3". Each element contains the following fields:
- `propertyToProcess`: (Required) A detection property key. The value will be modified according to
@@ -85,7 +87,7 @@ by "vehicle".
In a real use case there will generally be multiple roll up groups for a single detection property.
The "sandwich" group shows how to include an additional mapping for the same "CLASSIFICATION"
property. The "COLOR" and "PROP3" sections show examples of how to apply roll up to different
-detection properties with a different configuration.
+detection properties with different configurations.
If the roll up above was applied to these detection properties:
@@ -112,4 +114,4 @@ it would result in:
"COLOR" was not modified since it does not define a roll up group with "red" as a member. "PROP3"
was not modified because only the "CLASSIFICATION" property has a roll up group with "truck" as a
-member. "PROP4" was not modified because it is not in the roll up file.
+member. "PROP4" was not modified because it is not in the roll up file.
diff --git a/docs/site/Roll-Up-Guide/index.html b/docs/site/Roll-Up-Guide/index.html
index d3c848b54133..53a024f5caaf 100644
--- a/docs/site/Roll-Up-Guide/index.html
+++ b/docs/site/Roll-Up-Guide/index.html
@@ -237,29 +237,14 @@
and is subject to the Rights in Data-General Clause 52.227-14, Alt. IV (DEC 2007). Copyright 2023
The MITRE Corporation. All Rights Reserved.
Roll Up Overview
-
The Workflow Manager can be configured to replace the values of detection properties after
-receiving detections from a component. This is commonly used to replace specific terms with a more
-general category. To use this feature, a JSON file in the format described below must be created.
-Then, the ROLL_UP_FILE job property must be set to the file path where that file is located.
+
The Workflow Manager can be configured to replace the values of track and detection properties after
+receiving tracks and detections from a component. This feature is commonly used to replace specific
+terms with a more general category. For example, the "CLASSIFICATION" property may be set to "car",
+"bus", and "truck". Those are all a kind of "vehicle". To use this feature, a JSON file in the
+format described below must be created. Then, the ROLL_UP_FILE job property must be set to the
+file path where that file is located.
Roll Up File
-
At the top level, the roll up file contains an array. The array contains an object for each
-detection property should be modified. Each object contains the following fields:
-
-
propertyToProcess: (Required) A detection property key. The value will be modified according to
- the groups key.
-
originalPropertyCopy: (Optional) Copies the value of propertyToProcess prior to roll up to
- another property. The copy is made even if property is not modified.
-
groups: (Optional) Array containing an object for each roll up name. If the value of the
- detection property specified by propertyToProcess matches a string listed in members, it
- will be replaced by the content of the rollUp property.
-
-
In the example below, the value of the "CLASSIFICATION" detection property will be copied to
-"ORIGINAL CLASSIFICATION" before the roll up is performed. If the "CLASSIFICATION" detection
-property is set to "truck", "car", or "bus", the value of the detection property will be replaced
-by "vehicle". In a real use case there will generally be multiple roll up groups for a single
-detection property. The "sandwich" group shows how to include an additional mapping for the same
-detection property. The "PROP2" section is an example of how to apply roll up to an additional
-detection property with a different configuration.
At the top level, the roll up file contains an array where each element defines a detection property
+that should be modified. In this example, there is one element for "CLASSIFICATION", one for
+"COLOR", and one for "PROP3". Each element contains the following fields:
+
+
propertyToProcess: (Required) A detection property key. The value will be modified according to
+ the groups key.
+
originalPropertyCopy: (Optional) Copies the value of propertyToProcess prior to roll up to
+ another property. The copy is made even if the property is not modified.
+
groups: (Optional) Array containing an element for each roll up name. If the value of the
+ detection property specified by propertyToProcess matches a string listed in members, it
+ will be replaced by the content of the rollUp property.
+
+
In the example above, the value of the "CLASSIFICATION" detection property will be copied to
+"ORIGINAL CLASSIFICATION" before the roll up is performed. If the "CLASSIFICATION" detection
+property is set to "truck", "car", or "bus", the value of the detection property will be replaced
+by "vehicle".
+
In a real use case there will generally be multiple roll up groups for a single detection property.
+The "sandwich" group shows how to include an additional mapping for the same "CLASSIFICATION"
+property. The "COLOR" and "PROP3" sections show examples of how to apply roll up to different
+detection properties with different configurations.
If the roll up above was applied to these detection properties:
"PROP2" was not modified because because only the "CLASSIFICATION" property has the "vehicle" roll
-up group. "PROP3" was not changed because it is not in the roll up file.
+
"COLOR" was not modified since it does not define a roll up group with "red" as a member. "PROP3"
+was not modified because only the "CLASSIFICATION" property has a roll up group with "truck" as a
+member. "PROP4" was not modified because it is not in the roll up file.
diff --git a/docs/site/search/search_index.json b/docs/site/search/search_index.json
index e6700db94aed..29e2fd1fc6c0 100644
--- a/docs/site/search/search_index.json
+++ b/docs/site/search/search_index.json
@@ -567,17 +567,17 @@
},
{
"location": "/Roll-Up-Guide/index.html",
- "text": "NOTICE:\n This software (or technical data) was produced for the U.S. Government under contract,\nand is subject to the Rights in Data-General Clause 52.227-14, Alt. IV (DEC 2007). Copyright 2023\nThe MITRE Corporation. All Rights Reserved.\n\n\nRoll Up Overview\n\n\nThe Workflow Manager can be configured to replace the values of detection properties after\nreceiving detections from a component. This is commonly used to replace specific terms with a more\ngeneral category. To use this feature, a JSON file in the format described below must be created.\nThen, the \nROLL_UP_FILE\n job property must be set to the file path where that file is located.\n\n\nRoll Up File\n\n\nAt the top level, the roll up file contains an array. The array contains an object for each\ndetection property should be modified. Each object contains the following fields:\n\n\n\n\npropertyToProcess\n: (Required) A detection property key. The value will be modified according to\n the \ngroups\n key.\n\n\noriginalPropertyCopy\n: (Optional) Copies the value of \npropertyToProcess\n prior to roll up to\n another property. The copy is made even if property is not modified.\n\n\ngroups\n: (Optional) Array containing an object for each roll up name. If the value of the\n detection property specified by \npropertyToProcess\n matches a string listed in \nmembers\n, it\n will be replaced by the content of the \nrollUp\n property.\n\n\n\n\nIn the example below, the value of the \"CLASSIFICATION\" detection property will be copied to\n\"ORIGINAL CLASSIFICATION\" before the roll up is performed. If the \"CLASSIFICATION\" detection\nproperty is set to \"truck\", \"car\", or \"bus\", the value of the detection property will be replaced\nby \"vehicle\". In a real use case there will generally be multiple roll up groups for a single\ndetection property. The \"sandwich\" group shows how to include an additional mapping for the same\ndetection property. The \"PROP2\" section is an example of how to apply roll up to an additional\ndetection property with a different configuration.\n\n\n[\n {\n \"propertyToProcess\": \"CLASSIFICATION\",\n \"originalPropertyCopy\": \"ORIGINAL CLASSIFICATION\",\n \"groups\": [\n {\n \"rollUp\": \"vehicle\",\n \"members\": [\n \"truck\",\n \"car\",\n \"bus\"\n ]\n },\n {\n \"rollUp\": \"sandwich\",\n \"members\": [\n \"grilled cheese\",\n \"reuben\",\n \"hamburger\",\n \"hot dog\"\n ]\n }\n ]\n },\n {\n \"propertyToProcess\": \"PROP2\",\n \"groups\": [\n {\n \"rollUp\": \"new name\",\n \"members\": [\n \"old name\"\n ]\n }\n ]\n }\n]\n\n\n\nIf the roll up above was applied to these detection properties:\n\n\n{\n \"CLASSIFICATION\": \"truck\",\n \"PROP2\": \"truck\",\n \"PROP3\": \"other\"\n}\n\n\n\nit would result in:\n\n\n{\n \"CLASSIFICATION\": \"vehicle\",\n \"ORIGINAL CLASSIFICATION\": \"truck\",\n \"PROP2\": \"truck\",\n \"PROP3\": \"other\"\n}\n\n\n\n\"PROP2\" was not modified because because only the \"CLASSIFICATION\" property has the \"vehicle\" roll\nup group. \"PROP3\" was not changed because it is not in the roll up file.",
+ "text": "NOTICE:\n This software (or technical data) was produced for the U.S. Government under contract,\nand is subject to the Rights in Data-General Clause 52.227-14, Alt. IV (DEC 2007). Copyright 2023\nThe MITRE Corporation. All Rights Reserved.\n\n\nRoll Up Overview\n\n\nThe Workflow Manager can be configured to replace the values of track and detection properties after\nreceiving tracks and detections from a component. This feature is commonly used to replace specific\nterms with a more general category. For example, the \"CLASSIFICATION\" property may be set to \"car\",\n\"bus\", and \"truck\". Those are all a kind of \"vehicle\". To use this feature, a JSON file in the\nformat described below must be created. Then, the \nROLL_UP_FILE\n job property must be set to the\nfile path where that file is located.\n\n\nRoll Up File\n\n\nThe JSON below is an example of a roll up file.\n\n\n[\n {\n \"propertyToProcess\": \"CLASSIFICATION\",\n \"originalPropertyCopy\": \"ORIGINAL CLASSIFICATION\",\n \"groups\": [\n {\n \"rollUp\": \"vehicle\",\n \"members\": [\n \"truck\",\n \"car\",\n \"bus\"\n ]\n },\n {\n \"rollUp\": \"sandwich\",\n \"members\": [\n \"grilled cheese\",\n \"reuben\",\n \"hamburger\",\n \"hot dog\"\n ]\n }\n ]\n },\n {\n \"propertyToProcess\": \"COLOR\",\n \"groups\": [\n {\n \"rollUp\": \"purple\",\n \"members\": [\n \"indigo\"\n ]\n }\n ]\n },\n {\n \"propertyToProcess\": \"PROP3\",\n \"groups\": [\n {\n \"rollUp\": \"new name\",\n \"members\": [\n \"old name\"\n ]\n }\n ]\n }\n]\n\n\n\nAt the top level, the roll up file contains an array where each element defines a detection property\nthat should be modified. In this example, there is one element for \"CLASSIFICATION\", one for\n\"COLOR\", and one for \"PROP3\". Each element contains the following fields:\n\n\n\n\npropertyToProcess\n: (Required) A detection property key. The value will be modified according to\n the \ngroups\n key.\n\n\noriginalPropertyCopy\n: (Optional) Copies the value of \npropertyToProcess\n prior to roll up to\n another property. The copy is made even if the property is not modified.\n\n\ngroups\n: (Optional) Array containing an element for each roll up name. If the value of the\n detection property specified by \npropertyToProcess\n matches a string listed in \nmembers\n, it\n will be replaced by the content of the \nrollUp\n property.\n\n\n\n\nIn the example above, the value of the \"CLASSIFICATION\" detection property will be copied to\n\"ORIGINAL CLASSIFICATION\" before the roll up is performed. If the \"CLASSIFICATION\" detection\nproperty is set to \"truck\", \"car\", or \"bus\", the value of the detection property will be replaced\nby \"vehicle\".\n\n\nIn a real use case there will generally be multiple roll up groups for a single detection property.\nThe \"sandwich\" group shows how to include an additional mapping for the same \"CLASSIFICATION\"\nproperty. The \"COLOR\" and \"PROP3\" sections show examples of how to apply roll up to different\ndetection properties with different configurations.\n\n\nIf the roll up above was applied to these detection properties:\n\n\n{\n \"CLASSIFICATION\": \"truck\",\n \"COLOR\": \"red\",\n \"PROP3\": \"truck\",\n \"PROP4\": \"other\"\n}\n\n\n\nit would result in:\n\n\n{\n \"CLASSIFICATION\": \"vehicle\",\n \"ORIGINAL CLASSIFICATION\": \"truck\",\n \"COLOR\": \"red\",\n \"PROP3\": \"truck\",\n \"PROP4\": \"other\"\n}\n\n\n\n\"COLOR\" was not modified since it does not define a roll up group with \"red\" as a member. \"PROP3\"\nwas not modified because only the \"CLASSIFICATION\" property has a roll up group with \"truck\" as a\nmember. \"PROP4\" was not modified because it is not in the roll up file.",
"title": "Roll Up Guide"
},
{
"location": "/Roll-Up-Guide/index.html#roll-up-overview",
- "text": "The Workflow Manager can be configured to replace the values of detection properties after\nreceiving detections from a component. This is commonly used to replace specific terms with a more\ngeneral category. To use this feature, a JSON file in the format described below must be created.\nThen, the ROLL_UP_FILE job property must be set to the file path where that file is located.",
+ "text": "The Workflow Manager can be configured to replace the values of track and detection properties after\nreceiving tracks and detections from a component. This feature is commonly used to replace specific\nterms with a more general category. For example, the \"CLASSIFICATION\" property may be set to \"car\",\n\"bus\", and \"truck\". Those are all a kind of \"vehicle\". To use this feature, a JSON file in the\nformat described below must be created. Then, the ROLL_UP_FILE job property must be set to the\nfile path where that file is located.",
"title": "Roll Up Overview"
},
{
"location": "/Roll-Up-Guide/index.html#roll-up-file",
- "text": "At the top level, the roll up file contains an array. The array contains an object for each\ndetection property should be modified. Each object contains the following fields: propertyToProcess : (Required) A detection property key. The value will be modified according to\n the groups key. originalPropertyCopy : (Optional) Copies the value of propertyToProcess prior to roll up to\n another property. The copy is made even if property is not modified. groups : (Optional) Array containing an object for each roll up name. If the value of the\n detection property specified by propertyToProcess matches a string listed in members , it\n will be replaced by the content of the rollUp property. In the example below, the value of the \"CLASSIFICATION\" detection property will be copied to\n\"ORIGINAL CLASSIFICATION\" before the roll up is performed. If the \"CLASSIFICATION\" detection\nproperty is set to \"truck\", \"car\", or \"bus\", the value of the detection property will be replaced\nby \"vehicle\". In a real use case there will generally be multiple roll up groups for a single\ndetection property. The \"sandwich\" group shows how to include an additional mapping for the same\ndetection property. The \"PROP2\" section is an example of how to apply roll up to an additional\ndetection property with a different configuration. [\n {\n \"propertyToProcess\": \"CLASSIFICATION\",\n \"originalPropertyCopy\": \"ORIGINAL CLASSIFICATION\",\n \"groups\": [\n {\n \"rollUp\": \"vehicle\",\n \"members\": [\n \"truck\",\n \"car\",\n \"bus\"\n ]\n },\n {\n \"rollUp\": \"sandwich\",\n \"members\": [\n \"grilled cheese\",\n \"reuben\",\n \"hamburger\",\n \"hot dog\"\n ]\n }\n ]\n },\n {\n \"propertyToProcess\": \"PROP2\",\n \"groups\": [\n {\n \"rollUp\": \"new name\",\n \"members\": [\n \"old name\"\n ]\n }\n ]\n }\n] If the roll up above was applied to these detection properties: {\n \"CLASSIFICATION\": \"truck\",\n \"PROP2\": \"truck\",\n \"PROP3\": \"other\"\n} it would result in: {\n \"CLASSIFICATION\": \"vehicle\",\n \"ORIGINAL CLASSIFICATION\": \"truck\",\n \"PROP2\": \"truck\",\n \"PROP3\": \"other\"\n} \"PROP2\" was not modified because because only the \"CLASSIFICATION\" property has the \"vehicle\" roll\nup group. \"PROP3\" was not changed because it is not in the roll up file.",
+ "text": "The JSON below is an example of a roll up file. [\n {\n \"propertyToProcess\": \"CLASSIFICATION\",\n \"originalPropertyCopy\": \"ORIGINAL CLASSIFICATION\",\n \"groups\": [\n {\n \"rollUp\": \"vehicle\",\n \"members\": [\n \"truck\",\n \"car\",\n \"bus\"\n ]\n },\n {\n \"rollUp\": \"sandwich\",\n \"members\": [\n \"grilled cheese\",\n \"reuben\",\n \"hamburger\",\n \"hot dog\"\n ]\n }\n ]\n },\n {\n \"propertyToProcess\": \"COLOR\",\n \"groups\": [\n {\n \"rollUp\": \"purple\",\n \"members\": [\n \"indigo\"\n ]\n }\n ]\n },\n {\n \"propertyToProcess\": \"PROP3\",\n \"groups\": [\n {\n \"rollUp\": \"new name\",\n \"members\": [\n \"old name\"\n ]\n }\n ]\n }\n] At the top level, the roll up file contains an array where each element defines a detection property\nthat should be modified. In this example, there is one element for \"CLASSIFICATION\", one for\n\"COLOR\", and one for \"PROP3\". Each element contains the following fields: propertyToProcess : (Required) A detection property key. The value will be modified according to\n the groups key. originalPropertyCopy : (Optional) Copies the value of propertyToProcess prior to roll up to\n another property. The copy is made even if the property is not modified. groups : (Optional) Array containing an element for each roll up name. If the value of the\n detection property specified by propertyToProcess matches a string listed in members , it\n will be replaced by the content of the rollUp property. In the example above, the value of the \"CLASSIFICATION\" detection property will be copied to\n\"ORIGINAL CLASSIFICATION\" before the roll up is performed. If the \"CLASSIFICATION\" detection\nproperty is set to \"truck\", \"car\", or \"bus\", the value of the detection property will be replaced\nby \"vehicle\". In a real use case there will generally be multiple roll up groups for a single detection property.\nThe \"sandwich\" group shows how to include an additional mapping for the same \"CLASSIFICATION\"\nproperty. The \"COLOR\" and \"PROP3\" sections show examples of how to apply roll up to different\ndetection properties with different configurations. If the roll up above was applied to these detection properties: {\n \"CLASSIFICATION\": \"truck\",\n \"COLOR\": \"red\",\n \"PROP3\": \"truck\",\n \"PROP4\": \"other\"\n} it would result in: {\n \"CLASSIFICATION\": \"vehicle\",\n \"ORIGINAL CLASSIFICATION\": \"truck\",\n \"COLOR\": \"red\",\n \"PROP3\": \"truck\",\n \"PROP4\": \"other\"\n} \"COLOR\" was not modified since it does not define a roll up group with \"red\" as a member. \"PROP3\"\nwas not modified because only the \"CLASSIFICATION\" property has a roll up group with \"truck\" as a\nmember. \"PROP4\" was not modified because it is not in the roll up file.",
"title": "Roll Up File"
},
{
diff --git a/docs/site/sitemap.xml b/docs/site/sitemap.xml
index 6f6d15a7b375..f3b2ece39cf0 100644
--- a/docs/site/sitemap.xml
+++ b/docs/site/sitemap.xml
@@ -2,142 +2,142 @@
/index.html
- 2024-01-25
+ 2024-01-29daily/Release-Notes/index.html
- 2024-01-25
+ 2024-01-29daily/License-And-Distribution/index.html
- 2024-01-25
+ 2024-01-29daily/Acknowledgements/index.html
- 2024-01-25
+ 2024-01-29daily/Install-Guide/index.html
- 2024-01-25
+ 2024-01-29daily/Admin-Guide/index.html
- 2024-01-25
+ 2024-01-29daily/User-Guide/index.html
- 2024-01-25
+ 2024-01-29daily/OpenID-Connect-Guide/index.html
- 2024-01-25
+ 2024-01-29daily/Media-Segmentation-Guide/index.html
- 2024-01-25
+ 2024-01-29daily/Feed-Forward-Guide/index.html
- 2024-01-25
+ 2024-01-29daily/Derivative-Media-Guide/index.html
- 2024-01-25
+ 2024-01-29daily/Object-Storage-Guide/index.html
- 2024-01-25
+ 2024-01-29daily/Markup-Guide/index.html
- 2024-01-25
+ 2024-01-29daily/TiesDb-Guide/index.html
- 2024-01-25
+ 2024-01-29daily/Trigger-Guide/index.html
- 2024-01-25
+ 2024-01-29daily/Roll-Up-Guide/index.html
- 2024-01-25
+ 2024-01-29daily/REST-API/index.html
- 2024-01-25
+ 2024-01-29daily/Component-API-Overview/index.html
- 2024-01-25
+ 2024-01-29daily/Component-Descriptor-Reference/index.html
- 2024-01-25
+ 2024-01-29daily/CPP-Batch-Component-API/index.html
- 2024-01-25
+ 2024-01-29daily/Python-Batch-Component-API/index.html
- 2024-01-25
+ 2024-01-29daily/Java-Batch-Component-API/index.html
- 2024-01-25
+ 2024-01-29daily/GPU-Support-Guide/index.html
- 2024-01-25
+ 2024-01-29daily/Contributor-Guide/index.html
- 2024-01-25
+ 2024-01-29daily/Development-Environment-Guide/index.html
- 2024-01-25
+ 2024-01-29daily/Node-Guide/index.html
- 2024-01-25
+ 2024-01-29daily/Workflow-Manager-Architecture/index.html
- 2024-01-25
+ 2024-01-29daily/CPP-Streaming-Component-API/index.html
- 2024-01-25
+ 2024-01-29daily
\ No newline at end of file