ucoProject / UCO

This repository is for development of the Unified Cyber Ontology.
Apache License 2.0
76 stars 34 forks source link

Add Author properties to PDF File Facet #429

Open eoghanscasey opened 2 years ago

eoghanscasey commented 2 years ago

Background

PDFs contain embedded metadata that is not yet represented using UCO. Specifically, the PDF specification provides for Author information.

Requirements

Requirement 1

UCO must be able to represent the internally embedded author information of a PDF file.

Risk / Benefit analysis

Benefits

UCO would improve its representation of embedded metadata in PDF files.

Risks

The submitter is unaware of risks associated with this change

Competencies demonstrated

Suppose a PDF is found to have author information embedded.

Competency 1

Ask for all PDF files in our knowledge base that have embedded author information.

Competency Question 1.1

PREFIX drafting: <http://example.org/ontology/drafting/>
PREFIX uco-observable: <https://ontology.unifiedcyberontology.org/uco/observable/>

SELECT ?nPDFFile ?lAuthor
WHERE {
  ?nPDFFile
    a uco-observable:PDFFile ;
    uco-core:hasFacet ?nPDFFileFacet ;
    .

  ?nPDFFileFacet
    drafting:pdfAuthor ?lAuthor ;
    .
}

Result 1.1

% case_sparql_select out.md query.sparql input.json
|    | ?nPDFFile                                                           | ?lAuthor                        |
|----|---------------------------------------------------------------------|---------------------------------|
|  0 | http://example.org/kb/pdf-file-6832c97f-a4d9-4b5a-afa8-c7d9c54a52bd | U.S. Government Printing Office |

Solution suggestion

To the observable:PDFFileFacet

Add property observable:pdfAuthor, cardinality 0..1, type string