Skip to content

Add support for representing patent information #597

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 10 commits into
base: 1.7-dev
Choose a base branch
from

Conversation

stevespringett
Copy link
Member

@stevespringett stevespringett commented Feb 10, 2025

Implements patent support. Closes #596


TODO/DONE

  • add examples for XML
  • add examples for JSON
  • add examples for ProtoBuf
  • implement for XML
  • implement for JSON
  • implement for ProtoBuf

Signed-off-by: Steve Springett <steve@springett.us>
@stevespringett stevespringett changed the title Initial checkin of patent support Add patent support Feb 10, 2025
@stevespringett stevespringett linked an issue Feb 11, 2025 that may be closed by this pull request
@jkowalleck jkowalleck changed the title Add patent support [WIP] v1.7 - Add patent support Feb 12, 2025
@jkowalleck jkowalleck added this to the 1.7 milestone Feb 17, 2025
jkowalleck and others added 2 commits February 17, 2025 20:23
Signed-off-by: steve.springett <steve.springett@servicenow.com>
@stevespringett
Copy link
Member Author

@planetlevel would you be able to review this? We have worked with WIPO on providing summary information for patents and patent families and we believe our current support for both of these are correct. Let us know otherwise. However, I'm particularly interested in a review of the patent assertions which allow BOM creators to assert their relationship with the patent (owner, licensing, etc).

@planetlevel
Copy link

planetlevel commented Apr 3, 2025 via email

jkowalleck and others added 3 commits April 14, 2025 08:17
…est case

Signed-off-by: Steve Springett <steve@springett.us>
Signed-off-by: Steve Springett <steve@springett.us>
@stevespringett
Copy link
Member Author

@jkowalleck do you know what's up with the Java checker? It's failing on the valid-standard-1.7 test file, which is not part of this PR, and was never failing previously to my knowledge. Also, the PHP one is not returning any useful information, just a generic error.

@jkowalleck
Copy link
Member

jkowalleck commented May 2, 2025

@jkowalleck do you know what's up with the Java checker? It's failing on the valid-standard-1.7 test file, which is not part of this PR, and was never failing previously to my knowledge. Also, the PHP one is not returning any useful information, just a generic error.

did not look into details of this PR, but is suspect the XSD changes are breaking things unintentionally.
if I should guess, it is that a XML element patents is missing the intended min-occurrence, which makes it required - which breaks existing test cases.

https://github.com/CycloneDX/specification/actions/runs/14794751751/job/41539253573?pr=597#step:5:1237


test /home/runner/work/specification/specification/tools/src/test/resources/1.7/valid-standard-1.7.xml ...
ERROR: Unexpected validation error for file: /home/runner/work/specification/specification/tools/src/test/resources/1.7/valid-standard-1.7.xml
LibXMLError Object
(
    [level] => 2
    [code] => 1871
    [column] => 0
    [message] => Element '{http://cyclonedx.org/schema/bom/1.7}definitions': Missing child element(s). Expected is ( {http://cyclonedx.org/schema/bom/1.7}patents ).

    [file] => /home/runner/work/specification/specification/tools/src/test/php/
    [line] => 3
)

https://github.com/CycloneDX/specification/actions/runs/14794751743/job/41539253424?pr=597#step:4:2194

Error:  Tests run: 395, Failures: 1, Errors: 0, Skipped: 0, Time elapsed: 0.899 s <<< FAILURE! -- in org.cyclonedx.schema.XmlSchemaVerificationTest
Error:  org.cyclonedx.schema.XmlSchemaVerificationTest.dynamicTestsWithCollection()[392] -- Time elapsed: 0.007 s <<< FAILURE!
org.opentest4j.AssertionFailedError: 1.7/valid-standard-1.7.xml ==> expected: <true> but was: <false>
	at org.junit.jupiter.api.AssertionFailureBuilder.build(AssertionFailureBuilder.java:151)
	at org.junit.jupiter.api.AssertionFailureBuilder.buildAndThrow(AssertionFailureBuilder.java:132)
	at org.junit.jupiter.api.AssertTrue.failNotTrue(AssertTrue.java:63)
	at org.junit.jupiter.api.AssertTrue.assertTrue(AssertTrue.java:36)
	at org.junit.jupiter.api.Assertions.assertTrue(Assertions.java:214)
	at org.cyclonedx.schema.XmlSchemaVerificationTest.lambda$dynamicTestsWithCollection$0(XmlSchemaVerificationTest.java:84)
	at java.util.Optional.ifPresent(Optional.java:159)
	at java.util.ArrayList.forEach(ArrayList.java:1259)
	at java.util.ArrayList.forEach(ArrayList.java:1259)

Signed-off-by: Steve Springett <steve@springett.us>
@stevespringett
Copy link
Member Author

Ah, that makes sense. Thanks for the guidance.

Signed-off-by: Steve Springett <steve@springett.us>
Signed-off-by: Steve Springett <steve@springett.us>
@stevespringett stevespringett marked this pull request as ready for review May 2, 2025 22:53
@stevespringett stevespringett requested a review from a team as a code owner May 2, 2025 22:53
@stevespringett stevespringett changed the title [WIP] v1.7 - Add patent support Add patent support May 2, 2025
@stevespringett stevespringett changed the title Add patent support Add support for representing patent information May 2, 2025
@stevespringett stevespringett added request for comment RFC notice sent A public RFC notice was distributed to the CycloneDX mailing list for consideration labels May 2, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
proposed core enhancement request for comment RFC notice sent A public RFC notice was distributed to the CycloneDX mailing list for consideration
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[FEATURE]: Add support for referencing patent information
4 participants