Closed stuartasutton closed 4 years ago
I am working through these issues currently.
@loganripplinger, I'm getting a 404.
just a quick heads-up that in a few places the revised code Stuart sent has
{
"@type": "AnnotatedDefinedTerm" ,
...
"definedTermSet" : "..."
...
}
That should be inDefinedTermSet
Hi @stuartasutton, I read through and it looks like Logan took care of these during the pilot. You and I discussed 5 so it will be reflected in the next iteration. 7 will go into the implementation instructions. 9 The JobPosting entity has no "@type": "JobPosting"
I do not understand.
Danielle, this problem has been fixed in the example in the documentation:
{
"@id": "https://jobdataexchange.org/jdx/pp/resource/9542b372-6436-4fc1-a5b6-8ca8d3ba04e6",
"@type": "JobPosting",
...
}
Issue can be closed.
ISSUES:
I am absolutely positive that there were data points entered/selected that did not show up in the output; e.g., I know I made a choice with
"jdx:jobSchedule": "",
Also, I got a strange repetition of thetotalJobOpenings
: (a)"jdx:totalJobOpenings": 0,
& (b)"schema:totalJobOpenings": "2",
...2 different namespaces and different value datatypes.Code does not validate as JSON because single quotation (') were used throughout instead of double quotes (") Global change of ' to " results in two errors where the ' should be left as is.
Properties have been used as classes; e.g.,
"@id": "jdx:employmentUnit",
Classes always begin with an uppercase letter and are camel cased; e.g.,AnnotateDefinedTerm
. Properties are also camel-cased but always begin with a lowercased letter; e.g.,employmentUnit
.In the example code,
"@id": "jdx:employmentUnit"
says that the thing identified as @id is a class, whenemploymentUnit
is a property, not a class.Following the draft namespace policy, this would be some resource (instance of jdx:Organization) in a JDX namespace like the following:
The need for namespace abbreviations in the JSONLD encoding is gone with the new @context file . E.g.,
schema:addressCountry
can be simplyaddressCountry
.There are no such properties as: "website" (see "url") "recommendationUUID" "substatement"
Do not include any properties of classes for which there are no values in the data; e.g.
CRITICALLY, there is no link between the Organization (ACME) and the JobPosting. Just because they are in the same graph, it cannot be assumed that there is a linking relationship between the Organization and the JobPosting entities. It has to be formally stated. Organization has a property that links the two:
and this URI is the @id of the
JobPosting
entity.The JobPosting entity has no
"@type": "JobPosting" ,
The code includes a
PostingInstructions
entity when there should be none since there is no such source data. However, the address information for ACME shows up in thisJobPosting
entity when it should be in the address block of the main organization at the top of the encoding.Your JobPosting has the following for the hiring organization:
HOWEVER, ACME is already described in the
Organization
instance and assigned a URI for linking. So this block of text boils down to:Note that in the term declarations, the range of
hiringOrganization
isOrganization
and notLocation
orPostalAddress
. So its value has to be the URI of anOrganization
entity.There is considerable repetition of attributes of location. If we look at the actual Word job description document, we see one organization (i.e., no
References to concepts from controlled vocabularies cannot be handled as plain literals. They all have a range of
skos:Concept
and must be encoded using theAnnotateDefineTerm
entity. So, the following:...must, in the absence of actual concept schemes be encoded as follows:
I am trying to decipher what is going on with the
AnnotatedDefinedTerm
of the following sort:This competency node is a statement from the Cybersecurity Workforce Framework (NICE) and actually has a CE URI for use with
annotatedTerm
; likewise with theinDefinedTermSet
that need to be in the JSONLD output. As note at the top, there are no such properties asrecommendationUUID
andsubstatement
in the JDX language. I am assuming that the UUID forannotatedTerm
is the JDX internal tie back to canonical URI--what's needed is not the internal ID for the statement, but the canonical ID.Tool does not parse multiple statements in one value into independent sub statements. E.g., "Positive and professional demeanor; Excellent communication skills; CySA++; CISSP or SSCP":
These are separate statements:
SSCP
BELOW IS BOTH THE ORIGINAL & A REVISED ENCODING:
JDX GENERATED CODE:
REVISED CODE: