diff --git a/cromulent/data/crm-profile.json b/cromulent/data/crm-profile.json
index f825336..bce8ab8 100644
--- a/cromulent/data/crm-profile.json
+++ b/cromulent/data/crm-profile.json
@@ -116,27 +116,14 @@
"P10i_contains": [0,1],
"P110_augmented": [1,0],
"P110i_was_augmented_by": [1,1],
- "P111_added": [1,1],
+ "P111_added": [1,0],
"P111i_was_added_by": [1,1],
- "P112_diminished": [1,1],
+ "P112_diminished": [1,0],
"P112i_was_diminished_by": [1,1],
- "P113_removed": [1,1],
+ "P113_removed": [1,0],
"P113i_was_removed_by": [1,1],
- "P114_is_equal_in_time_to": [0,1],
- "P115_finishes": [0,1],
- "P115i_is_finished_by": [0,1],
- "P116_starts": [0,1],
- "P116i_is_started_by": [0,1],
- "P117_occurs_during": [0,1],
- "P117i_includes": [0,1],
- "P118_overlaps_in_time_with": [0,1],
- "P118i_is_overlapped_in_time_by": [0,1],
- "P119_meets_in_time_with": [0,1],
- "P119i_is_met_in_time_by": [0,1],
"P11_had_participant": [1,1],
"P11i_participated_in": [1,1],
- "P120_occurs_before": [1,1],
- "P120i_occurs_after": [1,1],
"P121_overlaps_with": [0,1],
"P122_borders_with": [0,1],
"P123_resulted_in": [1,1],
@@ -145,7 +132,7 @@
"P124i_was_transformed_by": [1,1],
"P125_used_object_of_type": [0,1],
"P125i_was_type_of_object_used_in": [0,1],
- "P126_employed": [0,1],
+ "P126_employed": [1,1],
"P126i_was_employed_in": [0,1],
"P127_has_broader_term": [0,1],
"P127i_has_narrower_term": [0,1],
@@ -222,7 +209,7 @@
"P168i_defines_place": [0,1],
"P16_used_specific_object": [1,1],
"P16i_was_used_for": [1,1],
- "P177_assigned_property_type": [1,0],
+ "P177_assigned_property_of_type": [1,0],
"P179_had_sales_price": [0,1],
"P179i_was_sales_price_of": [0,1],
"P17_was_motivated_by": [1,1],
@@ -230,12 +217,12 @@
"P180_has_currency": [1,0],
"P180i_was_currency_of": [1,1],
"P181_has_amount": [0,0],
- "P182_ends_before_or_with_the_start_of": [0,1],
- "P182i_starts_after_or_with_the_end_of": [0,1],
+ "P182_ends_before_or_with_the_start_of": [1,1],
+ "P182i_starts_after_or_with_the_end_of": [1,1],
"P183_ends_before_the_start_of": [1,1],
"P183i_starts_after_the_end_of": [1,1],
- "P184_ends_before_or_with_the_end_of": [0,1],
- "P184i_ends_with_or_after_the_end_of": [0,1],
+ "P184_ends_before_or_with_the_end_of": [1,1],
+ "P184i_ends_with_or_after_the_end_of": [1,1],
"P185_ends_before_the_end_of": [1,1],
"P185i_ends_after_the_end_of": [1,1],
"P189_approximates": [1,1],
@@ -271,8 +258,8 @@
"P2i_is_type_of": [0,1],
"P30_transferred_custody_of": [1,1],
"P30i_custody_transferred_through": [1,1],
- "P31_has_modified": [0,1],
- "P31i_was_modified_by": [0,1],
+ "P31_has_modified": [1,1],
+ "P31i_was_modified_by": [1,1],
"P32_used_general_technique": [1,1],
"P32i_was_technique_of": [2,1],
"P33_used_specific_technique": [0,1],
@@ -400,21 +387,31 @@
"P170i_time_is_defined_by": [0,0],
"P171_at_some_place_within": [0,0],
"P172_contains": [0,0],
- "P173_starts_before_or_with_the_end_of": [0,0],
- "P173i_ends_after_or_with_the_start_of": [0,0],
- "P174_starts_before_the_end_of": [0,0],
- "P174i_ends_after_the_start_of": [0,0],
- "P175_starts_before_or_with_the_start_of": [0,0],
- "P175i_starts_with_or_after_the_start_of": [0,0],
- "P176_starts_before_the_start_of": [0,0],
- "P176i_starts_after_the_start_of": [0,0],
+ "P173_starts_before_or_with_the_end_of": [1,1],
+ "P173i_ends_after_or_with_the_start_of": [1,1],
+ "P174_starts_before_the_end_of": [1,1],
+ "P174i_ends_after_the_start_of": [1,1],
+ "P175_starts_before_or_with_the_start_of": [1,1],
+ "P175i_starts_with_or_after_the_start_of": [1,1],
+ "P176_starts_before_the_start_of": [1,1],
+ "P176i_starts_after_the_start_of": [1,1],
"P186_produced_thing_of_product_type": [0,0],
"P186i_is_produced_by": [0,0],
"P187_has_production_plan": [0,0],
"P187i_is_production_plan_for": [0,0],
"P188_requires_production_tool": [0,0],
"P188i_is_production_tool_for": [0,0],
-
+ "P195_was_a_presence_of": [0,1],
+ "P195i_had_presence": [0,1],
+ "P196_defines": [0,1],
+ "P196i_is_defined_by": [0,1],
+ "P197_covered_parts_of": [0,1],
+ "P197i_was_partially_covered_by": [0,1],
+ "P198_holds_or_supports": [1,1],
+ "P198i_is_held_or_supported_by": [1,1],
+ "P199_represents_instance_of_type": [1,1],
+ "P199i_has_instance_represented_by":[1,1],
+
"la:paid_amount": [1,0],
"la:paid_from": [1,1],
"la:paid_to": [1,1],
@@ -474,7 +471,7 @@
"skos:inScheme": [1,1],
"sci:O13_triggers": [1,1],
"sci:O13i_is_triggered_by": [1,1],
- "sci:O19_has_found_object": [1,1],
- "sci:O19i_was_object_found_by": [1,1]
-
+ "sci:O19_encountered_object": [1,1],
+ "sci:O19i_was_object_encountered_at": [1,1],
+ "archaeo:AP25_occurs_during": [1,1]
}
\ No newline at end of file
diff --git a/cromulent/data/crm_vocab.tsv b/cromulent/data/crm_vocab.tsv
index 1bbf609..c0b3a13 100644
--- a/cromulent/data/crm_vocab.tsv
+++ b/cromulent/data/crm_vocab.tsv
@@ -130,8 +130,8 @@ P29_custody_received_by property transferred_custody_to custody received by This
P29i_received_custody_through property acquired_custody_through received custody through P14i_performed E39_Actor E10_Transfer_of_Custody P29_custody_received_by 10000 1 1
P30_transferred_custody_of property transferred_custody_of transferred custody of This property identifies an item or items of E18 Physical Thing concerned in an E10 Transfer of Custody activity. \nThe property will typically describe the object that is handed over by an E39 Actor to another Actor’s custody. On occasion, physical custody may be transferred involuntarily or illegally – through accident, unsolicited donation, or theft. E10_Transfer_of_Custody E18_Physical_Thing P30i_custody_transferred_through 50 1 1
P30i_custody_transferred_through property custody_transferred_through custody transferred through E18_Physical_Thing E10_Transfer_of_Custody P30_transferred_custody_of 10000 1 1
-P31_has_modified property modified has modified This property identifies the E24 Physical Human-Made Thing modified in an E11 Modification.\nIf a modification is applied to a non-man-made object, it is regarded as an E22 Human-Made Object from that time onwards. P12_occurred_in_the_presence_of E11_Modification E24_Physical_Human-Made_Thing P31i_was_modified_by 10000 0 1
-P31i_was_modified_by property modified_by was modified by P12i_was_present_at E24_Physical_Human-Made_Thing E11_Modification P31_has_modified 10000 0 1
+P31_has_modified property modified has modified This property identifies the E24 Physical Human-Made Thing modified in an E11 Modification.\nIf a modification is applied to a non-man-made object, it is regarded as an E22 Human-Made Object from that time onwards. P12_occurred_in_the_presence_of E11_Modification E24_Physical_Human-Made_Thing P31i_was_modified_by 10000 1 1
+P31i_was_modified_by property modified_by was modified by P12i_was_present_at E24_Physical_Human-Made_Thing E11_Modification P31_has_modified 10000 1 1
P32_used_general_technique property technique used general technique This property identifies the technique or method that was employed in an activity.\nThese techniques should be drawn from an external E55 Type hierarchy of consistent terminology of general techniques or methods such as embroidery, oil-painting, carbon dating, etc. Specific documented techniques should be described as instances of E29 Design or Procedure. This property identifies the technique that was employed in an act of modification. P125_used_object_of_type E7_Activity E55_Type P32i_was_technique_of 19 1 1
P32i_was_technique_of property technique_of was technique of P125i_was_type_of_object_used_in E55_Type E7_Activity P32_used_general_technique 10000 2 1
P33_used_specific_technique property specific_technique used specific technique This property identifies a specific instance of E29 Design or Procedure in order to carry out an instance of E7 Activity or parts of it. \nThe property differs from P32 used general technique (was technique of) in that P33 refers to an instance of E29 Design or Procedure, which is a concrete information object in its own right rather than simply being a term or a method known by tradition. \nTypical examples would include intervention plans for conservation or the construction plans of a building. P16_used_specific_object E7_Activity E29_Design_or_Procedure P33i_was_used_by 10000 0 1
@@ -181,9 +181,7 @@ P55i_currently_holds property currently_holds currently holds P53i_is_former_or
P56_bears_feature property bears bears feature This property links an instance of E19 Physical Object to an instance of E26 Physical Feature that it bears.\nAn E26 Physical Feature can only exist on one object. One object may bear more than one E26 Physical Feature. An E27 Site should be considered as an E26 Physical Feature on the surface of the Earth.\nAn instance B of E26 Physical Feature being a detail of the structure of another instance A of E26 Physical Feature can be linked to B by use of the property P46 is composed of (forms part of). This implies that the subfeature B is P56i found on the same E19 Physical Object as A.\nP56 bears feature (is found on) is a shortcut. A more detailed representation can make use of the fully developed (i.e. indirect) path from E19 Physical Object through P59 has section (is located on or\nDefinition of the CIDOC Conceptual Reference Model 149 within), E53 Place, P53 has former or current location (is former or current location of) to E26 Physical Feature. P46_is_composed_of E19_Physical_Object E26_Physical_Feature P56i_is_found_on 10000 1 1
P56i_is_found_on property found_on is found on P46i_forms_part_of E26_Physical_Feature E19_Physical_Object P56_bears_feature 10000 1 0
P57_has_number_of_parts property number_of_parts has number of parts This property documents the E60 Number of parts of which an instance of E19 Physical Object is composed.\nThis may be used as a method of checking inventory counts with regard to aggregate or collective objects. What constitutes a part or component depends on the context and requirements of the documentation. Normally, the parts documented in this way would not be considered as worthy of individual attention.\nFor a more complete description, objects may be decomposed into their components and constituents using P46 is composed of (forms parts of) and P45 consists of (is incorporated in). This allows each element to be described individually. E19_Physical_Object rdfs:Literal 10000 0 1
-P58_has_section_definition property section_definition has section definition This property links an area (section) named by a E41 Appellation to the instance of E18 Physical Thing upon which it is found.\nThe CRM handles sections as locations (instances of E53 Place) within or on E18 Physical Thing that are identified by E41 Appellations. Sections need not be discrete and separable components or parts of an object.\nThis is part of a more developed path from E18 Physical Thing through P58, E41 Appellation, P87 is identified by (identifies) that allows a more precise definition of a location found on an object than the shortcut P59 has section (is located on or within).\nA particular instance of a section definition only applies to one instance of Physical Thing. E18_Physical_Thing E41_Appellation P58i_defines_section 10000 0 1
-P58i_defines_section property defines_section defines section E41_Appellation E18_Physical_Thing P58_has_section_definition 10000 0 1
-P59_has_section property section has section This property links an area to the instance of E18 Physical Thing upon which it is found.\nIt is typically used when a named E41 Appellation is not appropriate.\nE18 Physical Thing may be subdivided into arbitrary regions. \nP59 has section (is located on or within) is a shortcut. If the E53 Place is identified by a Section Definition, a more detailed representation can make use of the fully developed (i.e. indirect) path from E18 Physical Thing through P58 has section definition (defines section), E41 Appellation, P87 is identified by (identifies) to E53 Place. A Place can only be located on or within one Physical Object. E18_Physical_Thing E53_Place P59i_is_located_on_or_within 10000 0 1
+P59_has_section property section has section This property links an area to the instance of E18 Physical Thing upon which it is found.\nIt is typically used when a named E41 Appellation is not appropriate.\nE18 Physical Thing may be subdivided into arbitrary regions. \nP59 has section (is located on or within) is a shortcut. If the E53 Place is identified by a Section Definition, a more detailed representation can make use of the fully developed (i.e. indirect) path from E18 Physical Thing through P1 is identified by, E41 Appellation, P1 is identified by (identifies) to E53 Place. A Place can only be located on or within one Physical Object. E18_Physical_Thing E53_Place P59i_is_located_on_or_within 10000 0 1
P59i_is_located_on_or_within property located_on_or_within is located on or within E53_Place E18_Physical_Thing P59_has_section 10000 0 1
P62_depicts property depicts depicts This property identifies something that is depicted by an instance of E24 Physical Human-Made Thing. Depicting is meant in the sense that the surface of the E24 Physical Human-Made Thing shows, through its passive optical qualities or form, a representation of the entity depicted. It does not pertain to inscriptions or any other information encoding.\n\nThis property is a shortcut of the more fully developed path from E24 Physical Man-Made Thing through P65 shows visual item (is shown by), E36 Visual Item, P138 represents (has representation) to E1 CRM Entity. P62.1 mode of depiction allows the nature of the depiction to be refined. E24_Physical_Human-Made_Thing E1_CRM_Entity P62i_is_depicted_by 10000 1 1
P62i_is_depicted_by property depicted_by is depicted by E1_CRM_Entity E24_Physical_Human-Made_Thing P62_depicts 10000 1 1
@@ -257,25 +255,12 @@ P109_has_current_or_former_curator property current_or_former_curator has curren
P109i_is_current_or_former_curator_of property current_or_former_curator_of is current or former curator of P49i_is_former_or_current_keeper_of E39_Actor E78_Curated_Holding P109_has_current_or_former_curator 10000 0 1
P110_augmented property augmented augmented This property identifies the E24 Physical Human-Made Thing that is added to (augmented) in an E79 Part Addition.\nAlthough a Part Addition event normally concerns only one item of Physical Man-Made Thing, it is possible to imagine circumstances under which more than one item might be added to (augmented). For example, the artist Jackson Pollock trailing paint onto multiple canvasses. P31_has_modified E79_Part_Addition E24_Physical_Human-Made_Thing P110i_was_augmented_by 35 1 0
P110i_was_augmented_by property augmented_by was augmented by P31i_was_modified_by E24_Physical_Human-Made_Thing E79_Part_Addition P110_augmented 10000 1 1
-P111_added property added added This property identifies the E18 Physical Thing that is added during an E79 Part Addition activity P16_used_specific_object E79_Part_Addition E18_Physical_Thing P111i_was_added_by 34 1 1
+P111_added property added added This property identifies the E18 Physical Thing that is added during an E79 Part Addition activity P16_used_specific_object E79_Part_Addition E18_Physical_Thing P111i_was_added_by 34 1 0
P111i_was_added_by property added_by was added by P16i_was_used_for E18_Physical_Thing E79_Part_Addition P111_added 10000 1 1
-P112_diminished property diminished diminished This property identifies the E24 Physical Human-Made Thing that was diminished by E80 Part Removal.\nAlthough a Part removal activity normally concerns only one item of Physical Man-Made Thing, it is possible to imagine circumstances under which more than one item might be diminished by a single Part Removal activity. P31_has_modified E80_Part_Removal E24_Physical_Human-Made_Thing P112i_was_diminished_by 35 1 1
+P112_diminished property diminished diminished This property identifies the E24 Physical Human-Made Thing that was diminished by E80 Part Removal.\nAlthough a Part removal activity normally concerns only one item of Physical Man-Made Thing, it is possible to imagine circumstances under which more than one item might be diminished by a single Part Removal activity. P31_has_modified E80_Part_Removal E24_Physical_Human-Made_Thing P112i_was_diminished_by 35 1 0
P112i_was_diminished_by property diminished_by was diminished by P31i_was_modified_by E24_Physical_Human-Made_Thing E80_Part_Removal P112_diminished 10000 1 1
-P113_removed property removed removed This property identifies the E18 Physical Thing that is removed during an E80 Part Removal activity. P12_occurred_in_the_presence_of E80_Part_Removal E18_Physical_Thing P113i_was_removed_by 34 1 1
+P113_removed property removed removed This property identifies the E18 Physical Thing that is removed during an E80 Part Removal activity. P12_occurred_in_the_presence_of E80_Part_Removal E18_Physical_Thing P113i_was_removed_by 34 1 0
P113i_was_removed_by property removed_by was removed by P12i_was_present_at E18_Physical_Thing E80_Part_Removal P113_removed 10000 1 1
-P114_is_equal_in_time_to property equal_in_time_to is equal in time to This symmetric property allows the instances of E2 Temporal Entity with the same E52 Time-Span to be equated. \nThis property is only necessary if the time span is unknown (otherwise the equivalence can be calculated).\nThis property is the same as the "equal" relationship of Allen’s temporal logic (Allen, 1983, pp. 832-843). P175_starts_before_or_with_the_start_of E2_Temporal_Entity E2_Temporal_Entity 10000 0 1
-P115_finishes property finishes finishes This property allows the ending point for a E2 Temporal Entity to be situated by reference to the ending point of another temporal entity of longer duration. \nThis property is only necessary if the time span is unknown (otherwise the relationship can be calculated). This property is the same as the "finishes / finished-by" relationships of Allen’s temporal logic (Allen, 1983, pp. 832-843). P176i_starts_after_the_start_of E2_Temporal_Entity E2_Temporal_Entity P115i_is_finished_by 10000 0 1
-P115i_is_finished_by property finished_by is finished by P176_starts_before_the_start_of E2_Temporal_Entity E2_Temporal_Entity P115_finishes 27 0 1
-P116_starts property starts starts This property allows the starting point for a E2 Temporal Entity to be situated by reference to the starting point of another temporal entity of longer duration. \nThis property is only necessary if the time span is unknown (otherwise the relationship can be calculated). This property is the same as the "starts / started-by" relationships of Allen’s temporal logic (Allen, 1983, pp. 832-843). P175_starts_before_or_with_the_start_of E2_Temporal_Entity E2_Temporal_Entity P116i_is_started_by 10000 0 1
-P116i_is_started_by property started_by is started by P175i_starts_with_or_after_the_start_of E2_Temporal_Entity E2_Temporal_Entity P116_starts 26 0 1
-P117_occurs_during property occurs_during occurs during This property allows the entire E52 Time-Span of an E2 Temporal Entity to be situated within the Time-Span of another temporal entity that starts before and ends after the included temporal entity. \nThis property is only necessary if the time span is unknown (otherwise the relationship can be calculated). This property is the same as the "during / includes" relationships of Allen’s temporal logic (Allen, 1983, pp. 832-843). E2_Temporal_Entity E2_Temporal_Entity P117i_includes 10000 0 1
-P117i_includes property includes includes E2_Temporal_Entity E2_Temporal_Entity P117_occurs_during 10000 0 1
-P118_overlaps_in_time_with property overlaps_in_time_with overlaps in time with This property identifies an overlap between the instances of E52 Time-Span of two instances of E2 Temporal Entity. \nIt implies a temporal order between the two entities: if A overlaps in time B, then A must start before B, and B must end after A. This property is only necessary if the relevant time spans are unknown (otherwise the relationship can be calculated).\nThis property is the same as the "overlaps / overlapped-by" relationships of Allen’s temporal logic (Allen, 1983, pp. 832-843). P174i_ends_after_the_start_of E2_Temporal_Entity E2_Temporal_Entity P118i_is_overlapped_in_time_by 10000 0 1
-P118i_is_overlapped_in_time_by property overlapped_in_time_by is overlapped in time by P174_starts_before_the_end_of E2_Temporal_Entity E2_Temporal_Entity P118_overlaps_in_time_with 10000 0 1
-P119_meets_in_time_with property meets_in_time_with meets in time with This property indicates that one E2 Temporal Entity immediately follows another. \nIt implies a particular order between the two entities: if A meets in time with B, then A must precede B. This property is only necessary if the relevant time spans are unknown (otherwise the relationship can be calculated). \nThis property is the same as the "meets / met-by" relationships of Allen’s temporal logic (Allen, 1983, pp. 832-843). P173i_ends_after_or_with_the_start_of E2_Temporal_Entity E2_Temporal_Entity P119i_is_met_in_time_by 10000 0 1
-P119i_is_met_in_time_by property met_in_time_by is met in time by P173_starts_before_or_with_the_end_of E2_Temporal_Entity E2_Temporal_Entity P119_meets_in_time_with 10000 0 1
-P120_occurs_before property occurs_before occurs before This property identifies the relative chronological sequence of two temporal entities. \nIt implies that a temporal gap exists between the end of A and the start of B. This property is only necessary if the relevant time spans are unknown (otherwise the relationship can be calculated).\nThis property is the same as the "before / after" relationships of Allen’s temporal logic (Allen, 1983, pp. 832-843). E2_Temporal_Entity E2_Temporal_Entity P120i_occurs_after 10000 1 1
-P120i_occurs_after property occurs_after occurs after E2_Temporal_Entity E2_Temporal_Entity P120_occurs_before 10000 1 1
P121_overlaps_with property overlaps_with overlaps with This symmetric property allows the instances of E53 Place with overlapping geometric extents to be associated with each other. \nIt does not specify anything about the shared area. This property is purely spatial, in contrast to Allen operators, which are purely temporal. E53_Place E53_Place 10000 0 1
P122_borders_with property borders_with borders with This symmetric property allows the instances of E53 Place which share common borders to be related as such. \nThis property is purely spatial, in contrast to Allen operators, which are purely temporal. E53_Place E53_Place 10000 0 1
P123_resulted_in property resulted_in resulted in This property identifies the E77 Persistent Item or items that are the result of an E81 Transformation. \nNew items replace the transformed item or items, which cease to exist as units of documentation. The physical continuity between the old and the new is expressed by the link to the common Transformation. P92_brought_into_existence E81_Transformation E18_Physical_Thing P123i_resulted_from 10000 1 1
@@ -284,7 +269,7 @@ P124_transformed property transformed transformed This property identifies the E
P124i_was_transformed_by property transformed_by was transformed by P93i_was_taken_out_of_existence_by E18_Physical_Thing E81_Transformation P124_transformed 10000 1 1
P125_used_object_of_type property used_object_of_type used object of type This property defines the kind of objects used in an E7 Activity, when the specific instance is either unknown or not of interest, such as use of "a hammer". E7_Activity E55_Type P125i_was_type_of_object_used_in 10000 0 1
P125i_was_type_of_object_used_in property type_of_object_used_in was type of object used in E55_Type E7_Activity P125_used_object_of_type 10000 0 1
-P126_employed property employed employed This property identifies E57 Material employed in an E11 Modification.\nThe E57 Material used during the E11 Modification does not necessarily become incorporated into the E24 Physical Human-Made Thing that forms the subject of the E11 Modification. E11_Modification E57_Material P126i_was_employed_in 10000 0 1
+P126_employed property employed employed This property identifies E57 Material employed in an E11 Modification.\nThe E57 Material used during the E11 Modification does not necessarily become incorporated into the E24 Physical Human-Made Thing that forms the subject of the E11 Modification. E11_Modification E57_Material P126i_was_employed_in 10000 1 1
P126i_was_employed_in property employed_in was employed in E57_Material E11_Modification P126_employed 10000 0 1
P127_has_broader_term property part_of has broader term This property identifies a super-Type to which an E55 Type is related. \n It allows Types to be organised into hierarchies. This is the sense of "broader term generic (BTG)" as defined in ISO 2788 E55_Type E55_Type P127i_has_narrower_term 43 0 1
P127i_has_narrower_term property part has narrower term E55_Type E55_Type P127_has_broader_term 10001 0 1
@@ -339,7 +324,7 @@ P160_has_temporal_projection property temporal_projection has temporal projectio
P161_has_spatial_projection property spatial_projection has spatial projection This property associates an instance of a E92 Spacetime Volume with an instance of E53 Place that is the result of the spatial projection of the instance of a E92 Spacetime Volume on a reference space. In general there can be more than one useful reference space to describe the spatial projection of a spacetime volume, such as that of a battle ship versus that of the seafloor. Therefore the projection is not unique.\nThis is part of the fully developed path that is shortcut by P7took place at (witnessed).The more fully developed path from E4 Period through P161 has spatial projection, E53 Place, P89 falls within (contains) to E53 Place. E92_Spacetime_Volume E53_Place 10000 0 1
P164_during property during during This property relates an instance of E93 Presence with an arbitrary instance of E52 Time-Span that\ndefines the section of the spacetime volume that this instance of E93 Presence is related to by the property P166 was a presence of (had presence). P160_has_temporal_projection E93_Presence E52_Time-Span P164i_was_time-span_of 10000 0 1
P164i_was_time-span_of property timespan_of_presence was time-span of E52_Time-Span E93_Presence P164_during 10000 0 1
-P165_incorporates property incorporates incorporates This property associates an instance of E73 Information Object with an instance of E90 Symbolic Object (or any of its subclasses) that was included in it.\nThis property makes it possible to recognise the autonomous status of the incorporated signs, which were created in a distinct context, and can be incorporated in many distinct self-contained expressions, and to highlight the difference between structural and accidental whole-part relationships between conceptual entities.\nIt accounts for many cultural facts that are quite frequent and significant: the inclusion of a poem in an anthology, the re-use of an operatic aria in a new opera, the use of a reproduction of a painting for a book cover or a CD booklet, the integration of textual quotations, the presence of lyrics in a song that sets those lyrics to music, the presence of the text of a play in a movie based on that play, etc.\nIn particular, this property allows for modelling relationships of different levels of symbolic specificity, such as the natural language words making up a particular text, the characters making up the words and punctuation, the choice of fonts and page layout for the characters.\nA digital photograph of a manuscript page incorporates the text of the manuscript page. P106_is_composed_of E73_Information_Object E90_Symbolic_Object P165i_is_incorporated_in 10000 0 1
+P165_incorporates property presence_of incorporates This property associates an instance of E73 Information Object with an instance of E90 Symbolic Object (or any of its subclasses) that was included in it.\nThis property makes it possible to recognise the autonomous status of the incorporated signs, which were created in a distinct context, and can be incorporated in many distinct self-contained expressions, and to highlight the difference between structural and accidental whole-part relationships between conceptual entities.\nIt accounts for many cultural facts that are quite frequent and significant: the inclusion of a poem in an anthology, the re-use of an operatic aria in a new opera, the use of a reproduction of a painting for a book cover or a CD booklet, the integration of textual quotations, the presence of lyrics in a song that sets those lyrics to music, the presence of the text of a play in a movie based on that play, etc.\nIn particular, this property allows for modelling relationships of different levels of symbolic specificity, such as the natural language words making up a particular text, the characters making up the words and punctuation, the choice of fonts and page layout for the characters.\nA digital photograph of a manuscript page incorporates the text of the manuscript page. P106_is_composed_of E73_Information_Object E90_Symbolic_Object P165i_is_incorporated_in 10000 0 1
P165i_is_incorporated_in property incorporated_by is incorporated in P106i_forms_part_of E90_Symbolic_Object E73_Information_Object P165_incorporates 10000 0 1
P166_was_a_presence_of property a_presence_of was a presence of This property relates an E93 Presence with the STV it is part of… E93_Presence E92_Spacetime_Volume P166i_had_presence 10000 0 1
P166i_had_presence property presence had presence E92_Spacetime_Volume E93_Presence P166_was_a_presence_of 10000 0 1
@@ -350,26 +335,25 @@ P169i_spacetime_volume_is_defined_by property spacetime_volume_is_defined_by spa
P170i_time_is_defined_by property time_is_defined_by time is defined by This property associates an instance of E61 Time Primitive with the instance of E52 Time Span it defines. E52_Time-Span rdfs:Literal 10000 0 0
P171_at_some_place_within property at_some_place_within at some place within This property describes the maximum spatial extent within which an E53 Place falls. Since instances of E53 Places may not have precisely known spatial extents, the CRM supports statements about maximum spatial extents of E53 Places . This property allows an instance of an E53 Places’s maximum spatial extent (i.e. its outer boundary) to be assigned an E94 Space Primitive value. P171 at some place within is a shortcut of the fully developed path E53 Place, P89 falls within, E53 Place, P168 place is defined by, E94 Space Primitive through a not represented declarative Place as defined in CRMgeo (Doerr and Hiebel 2013) to a Space Primitive. E53_Place rdfs:Literal 10000 0 0
P172_contains property spatially_contains contains This property describes a minimum spatial extent which is contained within an E53 Place. Since instances of E53 Place may not have precisely known spatial extents, the CRM supports statements about minimum spatial extents of instances of E53 Place. This property allows an instance of E53 Places’s minimum spatial extent (i.e. its inner boundary or a point being within a Place) to be as signed an E94 Space Primitive value. This property is a shortcut of the fully developed path: E53 Place, P89i contains, E53 Place, P168 place is defined by, E94 Space Primitive. E53_Place rdfs:Literal 10001 0 0
-P173_starts_before_or_with_the_end_of property starts_before_or_with_the_end_of starts before or with the end of This property specifies that the temporal extent of the domain instance A of E2 Temporal Entity starts before or simultaneously with the end of the temporal extent of the range instance B of E2 Temporal Entity. In other words, if A = [Astart, Aend] and B = [Bstart, Bend], we mean Astart ≤ Bend is true.\n This property is part of the set of temporal primitives P173 – P176, P182 – P185. This property corresponds to the disjunction (logical OR) of the following Allen temporal relations [Allen, 1983]: {before, meets, met-by, overlaps, starts, started-by, contains, finishes, finished-by, equals, during, overlapped by} E2_Temporal_Entity E2_Temporal_Entity P173i_ends_after_or_with_the_start_of 10000 0 0
-P173i_ends_after_or_with_the_start_of property ends_after_or_with_the_start_of ends after or with the start of The inverse relationship of P173 E2_Temporal_Entity E2_Temporal_Entity P173_starts_before_or_with_the_end_of 10000 0 0
-P174_starts_before_the_end_of property starts_before_the_end_of starts before the end of This property specifies that the temporal extent of the domain instance A of E2 Temporal Entity starts definitely before the end of the temporal extent of the range instance B of E2 Temporal Entity. In other words, if A = [Astart, Aend] and B = [Bstart, Bend], we mean Astart < Bend is true. This property is part of the set of temporal primitives P173 – P176, P182 – P185. This property corresponds to a disjunction (logical OR) of the following Allen temporal relations [Allen, 1983] :{before, meets, overlaps, starts, started-by, contains, finishes, finished-by, equals, during, overlapped by} Typically, this property is a consequence of a known influence of some event on another event or activity, such as a novel written by someone being continued by someone else, or the knowledge of a defeat on a distant battlefield causing people to end their ongoing activities P173_starts_before_or_with_the_end_of E2_Temporal_Entity E2_Temporal_Entity P174i_ends_after_the_start_of 10000 0 0
-P174i_ends_after_the_start_of property ends_after_the_start_of ends after the start of The inverse relationship of P174 P173i_ends_after_or_with_the_start_of E2_Temporal_Entity E2_Temporal_Entity P174_starts_before_the_end_of 10000 0 0
-P175_starts_before_or_with_the_start_of property starts_before_or_with_the_start_of starts before or with the start of This property specifies that the temporal extent of the domain instance A of E2 Temporal Entity starts before or simultaneously with the start of the temporal extent of the range instance B of E2 Temporal Entity. In other words, if A = [Astart, Aend] and B = [Bstart, Bend], we mean Astart ≤ Bstart is true. This property is part of the set of temporal primitives P173 – P176, P182 – P185. This property corresponds to a disjunction (logical OR) of the following Allen temporal relations [Allen, 1983]: {before, meets, overlaps, starts, started-by, contains, finished-by, equals} P174_starts_before_the_end_of E2_Temporal_Entity E2_Temporal_Entity P175i_starts_with_or_after_the_start_of 10000 0 0
-P175i_starts_with_or_after_the_start_of property starts_with_or_after_the_start_of starts with or after the start of The inverse relationship of P175 P174i_ends_after_the_start_of E2_Temporal_Entity E2_Temporal_Entity P175_starts_before_or_with_the_start_of 10000 0 0
-P176_starts_before_the_start_of property starts_before_the_start_of starts before the start of This property specifies that the temporal extent of the domain instance A of E2 Temporal Entity starts definitely before the start of the temporal extent of the range instance B of E2 Temporal Entity. In other words, if A = [Astart, Aend] and B = [Bstart, Bend], we mean Astart < Bstart is true. This property is part of the set of temporal primitives P173 – P176, P182 – P185. This property corresponds to a disjunction (logical OR) of the following Allen temporal relations [Allen, 1983]: {before, meets, overlaps, contains, finished-by} P175_starts_before_of_with_the_start_of E2_Temporal_Entity E2_Temporal_Entity P176i_starts_after_the_start_of 10000 0 0
-P176i_starts_after_the_start_of property starts_after_the_start_of starts after the start of The inverse relationship of P176 P175i_starts_with_or_after_the_start_of E2_Temporal_Entity E2_Temporal_Entity P176_starts_before_the_start_of 10000 0 0
-P177_assigned_property_type property assigned_property assigned property type This property associates an instance of E13 Attribute Assignment with the type of property or relation that this assignment maintains to hold between the item to which it assigns an attribute and the attribute itself. Note that the properties defined by the CIDOC CRM also constitute instances of E55 Type themselves. The direction of the assigned property type is understood to be from the attributed item (the range of property P140 assigned attribute to) to the attribute item (the range of the property P141 assigned). More than one property type may be assigned to hold between two items. P2_has_type E13_Attribute_Assignment E55_Type 10000 1 0
+P173_starts_before_or_with_the_end_of property starts_before_or_with_the_end_of starts before or with the end of This property specifies that the temporal extent of the domain instance A of E2 Temporal Entity starts before or simultaneously with the end of the temporal extent of the range instance B of E2 Temporal Entity. In other words, if A = [Astart, Aend] and B = [Bstart, Bend], we mean Astart ≤ Bend is true.\n This property is part of the set of temporal primitives P173 – P176, P182 – P185. This property corresponds to the disjunction (logical OR) of the following Allen temporal relations [Allen, 1983]: {before, meets, met-by, overlaps, starts, started-by, contains, finishes, finished-by, equals, during, overlapped by} E2_Temporal_Entity E2_Temporal_Entity P173i_ends_after_or_with_the_start_of 10000 1 1
+P173i_ends_after_or_with_the_start_of property ends_after_or_with_the_start_of ends after or with the start of The inverse relationship of P173 E2_Temporal_Entity E2_Temporal_Entity P173_starts_before_or_with_the_end_of 10000 1 1
+P174_starts_before_the_end_of property starts_before_the_end_of starts before the end of This property specifies that the temporal extent of the domain instance A of E2 Temporal Entity starts definitely before the end of the temporal extent of the range instance B of E2 Temporal Entity. In other words, if A = [Astart, Aend] and B = [Bstart, Bend], we mean Astart < Bend is true. This property is part of the set of temporal primitives P173 – P176, P182 – P185. This property corresponds to a disjunction (logical OR) of the following Allen temporal relations [Allen, 1983] :{before, meets, overlaps, starts, started-by, contains, finishes, finished-by, equals, during, overlapped by} Typically, this property is a consequence of a known influence of some event on another event or activity, such as a novel written by someone being continued by someone else, or the knowledge of a defeat on a distant battlefield causing people to end their ongoing activities P173_starts_before_or_with_the_end_of E2_Temporal_Entity E2_Temporal_Entity P174i_ends_after_the_start_of 10000 1 1
+P174i_ends_after_the_start_of property ends_after_the_start_of ends after the start of The inverse relationship of P174 P173i_ends_after_or_with_the_start_of E2_Temporal_Entity E2_Temporal_Entity P174_starts_before_the_end_of 10000 1 1
+P175_starts_before_or_with_the_start_of property starts_before_or_with_the_start_of starts before or with the start of This property specifies that the temporal extent of the domain instance A of E2 Temporal Entity starts before or simultaneously with the start of the temporal extent of the range instance B of E2 Temporal Entity. In other words, if A = [Astart, Aend] and B = [Bstart, Bend], we mean Astart ≤ Bstart is true. This property is part of the set of temporal primitives P173 – P176, P182 – P185. This property corresponds to a disjunction (logical OR) of the following Allen temporal relations [Allen, 1983]: {before, meets, overlaps, starts, started-by, contains, finished-by, equals} P174_starts_before_the_end_of E2_Temporal_Entity E2_Temporal_Entity P175i_starts_with_or_after_the_start_of 10000 1 1
+P175i_starts_with_or_after_the_start_of property starts_with_or_after_the_start_of starts with or after the start of The inverse relationship of P175 P174i_ends_after_the_start_of E2_Temporal_Entity E2_Temporal_Entity P175_starts_before_or_with_the_start_of 10000 1 1
+P176_starts_before_the_start_of property starts_before_the_start_of starts before the start of This property specifies that the temporal extent of the domain instance A of E2 Temporal Entity starts definitely before the start of the temporal extent of the range instance B of E2 Temporal Entity. In other words, if A = [Astart, Aend] and B = [Bstart, Bend], we mean Astart < Bstart is true. This property is part of the set of temporal primitives P173 – P176, P182 – P185. This property corresponds to a disjunction (logical OR) of the following Allen temporal relations [Allen, 1983]: {before, meets, overlaps, contains, finished-by} P175_starts_before_of_with_the_start_of E2_Temporal_Entity E2_Temporal_Entity P176i_starts_after_the_start_of 10000 1 1
+P176i_starts_after_the_start_of property starts_after_the_start_of starts after the start of The inverse relationship of P176 P175i_starts_with_or_after_the_start_of E2_Temporal_Entity E2_Temporal_Entity P176_starts_before_the_start_of 10000 1 1
+P177_assigned_property_of_type property assigned_property assigned property of type This property associates an instance of E13 Attribute Assignment with the type of property or relation that this assignment maintains to hold between the item to which it assigns an attribute and the attribute itself. Note that the properties defined by the CIDOC CRM also constitute instances of E55 Type themselves. The direction of the assigned property type is understood to be from the attributed item (the range of property P140 assigned attribute to) to the attribute item (the range of the property P141 assigned). More than one property type may be assigned to hold between two items. P2_has_type E13_Attribute_Assignment E55_Type 10000 1 0
P179_had_sales_price property sales_price had sales price This property establishes the relationship between an instance of E96 Purchase and the instance of E97 Monetary Amount that forms the compensation for the transaction. E96_Purchase E97_Monetary_Amount P179i_was_sales_price_of 10000 0 1
P179i_was_sales_price_of property sales_price_of was sales price of The inverse relationship of P179 E97_Monetary_Amount E96_Purchase P179_had_sales_price 10000 0 1
P180_has_currency property currency has currency This property establishes the relationship between an instance of E97 Monetary Amount and the currency that it is measured in. P91_has_unit E97_Monetary_Amount E98_Currency P180i_was_currency_of 10000 1 0
P180i_was_currency_of property currency_of was currency of Inverse of P180 P91i_is_unit_of E98_Currency E97_Monetary_Amount P180_has_currency 10000 1 1
-P181_has_amount property amount has amount This property establishes the relationship between an instance of E97 Monetary Amount and the amount of currency that it consists of. P90_has_value E97_Monetary_Amount rdfs:Literal 10000 0 0
-P182_ends_before_or_with_the_start_of property ends_before_or_with_the_start_of ends before or at the start of This property specifies that the temporal extent of the domain instance A of E2 Temporal Entity ends before or simultaneously with the start of the temporal extent of the range instance B of E2 Temporal Entity. In other words, if A = [Astart, Aend] and B = [Bstart, Bend], we mean Aend ≤ Bstart is true. This property is part of the set of temporal primitives P173 – P176, P182 – P185. This property corresponds to a disjunction (logical OR) of the following Allen temporal relations [Allen, 1983]: {before, meets} P176_starts_before_the_start_of E2_Temporal_Entity E2_Temporal_Entity P182i_starts_after_or_with_the_end_of 10000 0 1
-P182i_starts_after_or_with_the_end_of property starts_after_or_with_the_end_of starts after or with the end of Inverse of P182 P176i_starts_after_the_start_of E2_Temporal_Entity E2_Temporal_Entity P182_ends_before_or_with_the_start_of 10000 0 1
+P182_ends_before_or_with_the_start_of property ends_before_or_with_the_start_of ends before or at the start of This property specifies that the temporal extent of the domain instance A of E2 Temporal Entity ends before or simultaneously with the start of the temporal extent of the range instance B of E2 Temporal Entity. In other words, if A = [Astart, Aend] and B = [Bstart, Bend], we mean Aend ≤ Bstart is true. This property is part of the set of temporal primitives P173 – P176, P182 – P185. This property corresponds to a disjunction (logical OR) of the following Allen temporal relations [Allen, 1983]: {before, meets} P176_starts_before_the_start_of E2_Temporal_Entity E2_Temporal_Entity P182i_starts_after_or_with_the_end_of 10000 1 1
+P182i_starts_after_or_with_the_end_of property starts_after_or_with_the_end_of starts after or with the end of Inverse of P182 P176i_starts_after_the_start_of E2_Temporal_Entity E2_Temporal_Entity P182_ends_before_or_with_the_start_of 10000 1 1
P183_ends_before_the_start_of property ends_before_the_start_of ends before the start of This property specifies that the temporal extent of the domain instance A of E2 Temporal Entity ends definitely before\nthe start of the temporal extent of the range instance B of E2 Temporal Entity. In other words, if A = [Astart, Aend] and B = [Bstart, Bend], we mean Aend < Bstart is true. This property is part of the set of temporal primitives P173 – P176, P182 – P185. This property corresponds to a disjunction (logical OR) of the following Allen temporal relations [Allen, 1983]: {before} P182_ends_before_of_at_the_start_of E2_Temporal_Entity E2_Temporal_Entity P183i_starts_after_the_end_of 10000 1 1
P183i_starts_after_the_end_of property starts_after_the_end_of starts after the end of Inverse of P183 P182i_starts_with_or_after_the_end_of E2_Temporal_Entity E2_Temporal_Entity P183_ends_before_the_start_of 10000 1 1
-P184_ends_before_or_with_the_end_of property ends_before_or_with_the_end_of ends before or with the end of This property specifies that the temporal extent of the domain instance A of E2 Temporal Entity ends before or simultaneously with the end of the temporal extent of the range instance B of E2 Temporal Entity. In other words, if A = [Astart, Aend] and B = [Bstart, Bend], we mean Aend ≤ Bend is true. This property is part of the set of temporal primitives P173 – P176, P182 – P185. This property corresponds to a disjunction (logical OR) of the following Allen temporal relations [Allen, 1983]: {before, meets, overlaps, finished by, start, equals, during, finishes} P174_starts_before_the_end_of E2_Temporal_Entity E2_Temporal_Entity P184i_ends_with_or_after_the_end_of 10000 0 1
-P184i_ends_with_or_after_the_end_of property ends_with_or_after_the_end_of ends with or after the end of Inverse of P184 P174i_ends_after_the_start_of E2_Temporal_Entity E2_Temporal_Entity P184_ends_before_or_with_the_end_of 10000 0 1
+P184_ends_before_or_with_the_end_of property ends_before_or_with_the_end_of ends before or with the end of This property specifies that the temporal extent of the domain instance A of E2 Temporal Entity ends before or simultaneously with the end of the temporal extent of the range instance B of E2 Temporal Entity. In other words, if A = [Astart, Aend] and B = [Bstart, Bend], we mean Aend ≤ Bend is true. This property is part of the set of temporal primitives P173 – P176, P182 – P185. This property corresponds to a disjunction (logical OR) of the following Allen temporal relations [Allen, 1983]: {before, meets, overlaps, finished by, start, equals, during, finishes} P174_starts_before_the_end_of E2_Temporal_Entity E2_Temporal_Entity P184i_ends_with_or_after_the_end_of 10000 1 1
+P184i_ends_with_or_after_the_end_of property ends_with_or_after_the_end_of ends with or after the end of Inverse of P184 P174i_ends_after_the_start_of E2_Temporal_Entity E2_Temporal_Entity P184_ends_before_or_with_the_end_of 10000 1 1
P185_ends_before_the_end_of property ends_before_the_end_of ends before the end of This property specifies that the temporal extent of the domain instance A of E2 Temporal Entity ends definitely before the end of the temporal extent of the range instance B of E2 Temporal Entity. In other words, if A = [Astart, Aend] and B = [Bstart, Bend], we mean Aend < Bend is true. This property is part of the set of temporal primitives P173 – P176, P182 – P185. This property corresponds to a disjunction (logical OR) of the following Allen temporal relations [Allen, 1983]: {before, meets, overlaps, starts, during} P184_ends_before_or_with_the_end_of E2_Temporal_Entity E2_Temporal_Entity P185i_ends_after_the_end_of 10000 1 1
P185i_ends_after_the_end_of property ends_after_the_end_of ends after the end of Inverse of P185 P184i_ends_with_or_after_the_end_of E2_Temporal_Entity E2_Temporal_Entity P185_ends_before_the_end_of 10000 1 1
P186_produced_thing_of_product_type property produced_thing_of_product_type produced thing of product type This property associates an instance of E12 Production with the instance of E99 Production Type,\nthat is, the type of the things it produces. E12_Production E99_Product_Type P186i_is_produced_by 10000 0 0
@@ -383,6 +367,16 @@ P189i_is_approximated_by property approximated_by approximates This property ass
P190_has_symbolic_content property content has symbolic content This property associates an instance of E90 Symbolic Object with a complete, identifying representation of its content in the form of an instance of E62 String. This property only applies to instances of E90 Symbolic Object that can be represented completely in this form. The representation may be more specific than the symbolic level defining the identity condition of the represented. This depends on the type of the symbolic object represented. For instance, if a name has type "Modern Greek character sequence", it may be represented in a loss-free Latin transcription, meaning however the sequence of Greek letters. As another example, if the represented object has type "English words sequence", American English or British English spelling variants may be chosen to represent the English word "colour" without defining a different symbolic object. If a name has type "European traditional name", no particular string may define its content. P3_has_note E90_Symbolic_Object xsd:string 5 1 0
P191_had_duration property duration had duration This property describes the length of time covered by an E52 Time-Span. It allows an E52 Time-Span to be associated with an E54 Dimension representing duration independent from the actual beginning and end. E52_Time-Span E54_Dimension P191i_was_duration_of 25 1 0
P191i_was_duration_of property duration_of was duration of Inverse of P191 had duration E54_Dimension E52_Time-Span P191_had_duration 10000 1 0
+P195_was_a_presence_of property presence_of_thing was a presence of This property associates an instance of E93 Presence with the instance of E18 Physical Thing of which it represents a temporal restriction (i.e.: a time-slice) of the thing’s trajectory through spacetime. In other words, it describes where the instance of E18 Physical Thing were or moved around within a given time-span. Instantiating this property constitutes a necessary part of the identity of the respective instance of E93 Presence. E93_Presence E18_Physical_Thing P195i_had_presence 10000 0 1
+P195i_had_presence property thing_presence was a presence of Inverse of P195 E18_Physical_Thing E93_Presence P195_was_a_presence_of 10000 0 1
+P196_defines property defines defines This property associates an instance of E18 Physical Thing with the instance of E92 Spacetime Volume\nthat constitutes the complete trajectory of its geometric extent through spacetime for the whole time of\nthe existence of the instance of E18 Physical Thing. E18_Physical_Thing E92_Spacetime_Volume P196i_is_defined_by 10000 0 1
+P196i_is_defined_by property thing_defined_by is defined by Inverse of P196 E92_Spacetime_Volume E18_Physical_Thing P196_defines 10000 0 1
+P197_covered_parts_of property covered_parts_of covered parts of This property associates an instance of E93 Presence with an instance of E53 Place that geometrically\noverlaps with the spatial projection of the respective instance of E93 Presence. E93_Presence E53_Place P197i_was_partially_covered_by 10000 0 1
+P197i_was_partially_covered_by property partially_covered_by was partially covered by Inverse of P197 E53_Place E93_Presence P197_covered_parts_of 10000 0 1
+P198_holds_or_supports property holds_or_supports holds or supports This property relates one instance of E18 Physical Thing which acts as a container or support to a\nsupported or contained instance of E18 Physical Thing. T ypical examples of E18 Physical Things\nwhich are intended to function as a container or support include shelves, folders or boxes. E18_Physical_Thing E18_Physical_Thing P198i_is_held_or_supported_by 10000 1 1
+P198i_is_held_or_supported_by property held_or_supported_by is held or supported by Inverse of P198 E18_Physical_Thing E18_Physical_Thing P198_holds_or_supports 10000 1 1
+P199_represents_instance_of_type property represents_instance_of_type represents instance of type This property establishes the relationship between an instance of E36 Visual Item and an instance of E55 Type that characterises the thing depicted. This property is used when the identity of the thing depicted is unknown or unrecorded, but is clearly a particular thing of that type. E36_Visual_Item E55_Type P199i_ 10000 1 1
+P199i_has_instance_represented_by property instance_represented_by has instance represented by Inverse of P199 E55_Type E36_Visual_Item P199_represents_instance_of_type 10000 1 1
P81a_end_of_the_begin property end_of_the_begin end of the begin This is defined as the first boundary of the property P81 P81_ongoing_throughout E52_Time-Span xsd:dateTime 22 1 0
P81b_begin_of_the_end property begin_of_the_end begin of the end This is defined as the second boundary of the property P81 P81_ongoing_throughout E52_Time-Span xsd:dateTime 23 1 0
P82a_begin_of_the_begin property begin_of_the_begin begin of the begin This is defined as the first boundary of the property P82 P82_at_some_time_within E52_Time-Span xsd:dateTime 21 1 0
@@ -393,8 +387,9 @@ dig:D1_Digital_Object class DigitalObject Digital Object This class comprises id
sci:S19_Encounter_Event class Encounter Encounter This class comprises activities of S4 Observation (substance) where an E39 Actor encounters an instance of E18 Physical Thing of a kind relevant for the mission of the observation or regarded as potentially relevant for some community (identity). This observation produces knowledge about the existence of the respective thing at a particular place in or on surrounding matter. This knowledge may be new to the group of people the actor belongs to. In that case we would talk about a discovery. The observer may recognize or assign an individual identity of the thing encountered or regard only the type as noteworthy in the associated documentation or report.\n Note that this representation treats S19 as a subClass of only E7 Activity for ease of implementation, as we do not need the full set of relationships available via the complete hierarcy. In the full CRMsci, it is Activity -> Attribute Assignment -> Observation -> Encounter. E7_Activity 1
sci:O13_triggers property caused triggers E5_Event E5_Event sci:O13i_is_triggered_by 10000 1 1
sci:O13i_is_triggered_by property caused_by triggered by E5_Event E5_Event sci:O13_triggers 10000 1 1
-sci:O19_has_found_object property encountered encountered object sci:S19_Encounter_Event E18_Physical_Thing sci:O13_triggers 10000 1 1
-sci:O19i_was_object_found_by property encountered_by was encountered by E18_Physical_Thing sci:S19_Encounter_Event sci:O19_has_found_object 10000 1 1
+sci:O19_encountered_object property encountered encountered object This property associates an instance of S19 Encounter Event with an instance of E18 Physical\nThing that has been found. e.g. The finding (S19) encountered (O19) the 18 arrowheads (E18) from Lerna in Argolis sci:S19_Encounter_Event E18_Physical_Thing sci:O19i_was_object_encountered_at 10000 1 1
+sci:O19i_was_object_encountered_at property encountered_by was encountered at E18_Physical_Thing sci:S19_Encounter_Event sci:O19_encountered_object 10000 1 1
+archaeo:AP25_occurs_during property AP25_occurs_during occurs during This property identifies a situation in which the entire instance of the E52 Time-Span of an instance of E2 Temporal Entity is within the instance of the E52 Time-Span of another instance of E2 Temporal Entity that starts before and ends after the included temporal entity. E2_Temporal_Entity E2_Temporal_Entity 10000 1 1
rdfs:label property _label label A human-readable name for the subject. E1_CRM_Entity xsd:string 3 1 0
skos:exactMatch property exact_match exactMatch Exact Match, not quite sameAs, good for most uses E1_CRM_Entity E1_CRM_Entity 10000 1 1
skos:closeMatch property close_match closeMatch Close Match, good for some uses E1_CRM_Entity E1_CRM_Entity 10000 1 1
@@ -415,8 +410,6 @@ la:Removal class Removal Removal The removal of some entity from a Set E7_Activi
la:Relationship class Relationship Relationship E28_Conceptual_Object 1
la:DigitalService class DigitalService Digital Service dig:D1_Digital_Object 1
la:property_classified_as property property_classified_as Property Classified As Record dot one properties via Attribute Assignments E13_Attribute_Assignment E55_Type 10000 1 1
-la:represents_instance_of_type property represents_instance_of_type Represents Instance of Type This property establishes the relationship between an E36 Visual Item and an E55 Type that represents the class of entity which it visually represents. This property is used when the specific entity being represented is either unknown, or not of documentary interest. E36_Visual_Item E55_Type la:instance_represented_by 10000 1 1
-la:instance_represented_by property instance_represented_by Represents Instance of Type Inverse of represents instance of type E55_Type E36_Visual_Item la:represents_instance_of_type 10000 1 1
la:current_permanent_custodian property current_permanent_custodian Current Permanent Custodian This property records the normal custodian of the object at the time when the assertion was made. The object may have a temporary custodian, for example when it is loaned to another organization for an exhibition or between departments for conservation or storage. E19_Physical_Object E39_Actor la:current_permanent_custodian_of 10000 1 0
la:current_permanent_custodian_of property current_permanent_custodian_of Current Permanent Custodian Of Inverse of Current Permanent Custodian E39_Actor E19_Physical_Object la:current_permanent_custodian 10000 1 1
la:equivalent property equivalent has equivalent instance Similar to skos:exactMatch, the referenced entity is an equivalent instance to the referencing entity. This would not have the same inference issue as exactMatch, whereby the domain and range become skos:Concept, which is equivalent to E55_Type ... and thus everything becomes a Type. E1_CRM_Entity E1_CRM_Entity 10000 1 1
diff --git a/cromulent/data/linked-art.json b/cromulent/data/linked-art.json
index 02b71a1..3590cf9 100644
--- a/cromulent/data/linked-art.json
+++ b/cromulent/data/linked-art.json
@@ -2,77 +2,59 @@
"@context": {
"@version": 1.1,
"crm": "http://www.cidoc-crm.org/cidoc-crm/",
- "dc": "http://purl.org/dc/elements/1.1/",
- "dcterms": "http://purl.org/dc/terms/",
- "dig": "http://www.ics.forth.gr/isl/CRMdig/",
- "foaf": "http://xmlns.com/foaf/0.1/",
- "la": "https://linked.art/ns/terms/",
+ "sci": "http://www.ics.forth.gr/isl/CRMsci/",
"rdf": "http://www.w3.org/1999/02/22-rdf-syntax-ns#",
"rdfs": "http://www.w3.org/2000/01/rdf-schema#",
+ "dc": "http://purl.org/dc/elements/1.1/",
+ "dcterms": "http://purl.org/dc/terms/",
"schema": "http://schema.org/",
- "sci": "http://www.ics.forth.gr/isl/CRMsci/",
"skos": "http://www.w3.org/2004/02/skos/core#",
+ "foaf": "http://xmlns.com/foaf/0.1/",
"xsd": "http://www.w3.org/2001/XMLSchema#",
+ "dig": "http://www.ics.forth.gr/isl/CRMdig/",
+ "la": "https://linked.art/ns/terms/",
+ "archaeo": "http://www.cidoc-crm.org/cidoc-crm/CRMarchaeo/",
"id": "@id",
"type": "@type",
- "_label": {
- "@id": "rdfs:label"
+ "CRMEntity": {
+ "@id": "crm:E1_CRM_Entity"
},
- "Acquisition": {
+ "TemporalEntity": {
+ "@id": "crm:E2_Temporal_Entity"
+ },
+ "ConditionState": {
+ "@id": "crm:E3_Condition_State"
+ },
+ "Period": {
+ "@id": "crm:E4_Period",
"@context": {
- "part_of": {
- "@id": "crm:P9i_forms_part_of",
- "@type": "@id",
- "@container": "@set"
- },
"part": {
"@id": "crm:P9_consists_of",
"@type": "@id",
"@container": "@set"
},
- "member_of": {
- "@id": "la:member_of",
- "@type": "@id",
- "@container": "@set"
- }
- },
- "@id": "crm:E8_Acquisition"
- },
- "Activity": {
- "@context": {
"part_of": {
"@id": "crm:P9i_forms_part_of",
"@type": "@id",
"@container": "@set"
},
- "part": {
- "@id": "crm:P9_consists_of",
- "@type": "@id",
- "@container": "@set"
- },
"member_of": {
"@id": "la:member_of",
"@type": "@id",
"@container": "@set"
}
- },
- "@id": "crm:E7_Activity"
- },
- "Actor": {
- "@id": "crm:E39_Actor"
- },
- "Addition": {
- "@id": "la:Addition"
+ }
},
- "Appellation": {
+ "Event": {
+ "@id": "crm:E5_Event",
"@context": {
- "part_of": {
- "@id": "crm:P106i_forms_part_of",
+ "part": {
+ "@id": "crm:P9_consists_of",
"@type": "@id",
"@container": "@set"
},
- "part": {
- "@id": "crm:P106_is_composed_of",
+ "part_of": {
+ "@id": "crm:P9i_forms_part_of",
"@type": "@id",
"@container": "@set"
},
@@ -81,61 +63,38 @@
"@type": "@id",
"@container": "@set"
}
- },
- "@id": "crm:E41_Appellation"
+ }
},
- "AttributeAssignment": {
+ "Destruction": {
+ "@id": "crm:E6_Destruction",
"@context": {
- "part_of": {
- "@id": "crm:P9i_forms_part_of",
- "@type": "@id",
- "@container": "@set"
- },
"part": {
"@id": "crm:P9_consists_of",
"@type": "@id",
"@container": "@set"
},
- "member_of": {
- "@id": "la:member_of",
- "@type": "@id",
- "@container": "@set"
- }
- },
- "@id": "crm:E13_Attribute_Assignment"
- },
- "AuthorityDocument": {
- "@id": "crm:E32_Authority_Document"
- },
- "BeginningOfExistence": {
- "@context": {
"part_of": {
"@id": "crm:P9i_forms_part_of",
"@type": "@id",
"@container": "@set"
},
- "part": {
- "@id": "crm:P9_consists_of",
- "@type": "@id",
- "@container": "@set"
- },
"member_of": {
"@id": "la:member_of",
"@type": "@id",
"@container": "@set"
}
- },
- "@id": "crm:E63_Beginning_of_Existence"
+ }
},
- "BiologicalObject": {
+ "Activity": {
+ "@id": "crm:E7_Activity",
"@context": {
- "part_of": {
- "@id": "crm:P46i_forms_part_of",
+ "part": {
+ "@id": "crm:P9_consists_of",
"@type": "@id",
"@container": "@set"
},
- "part": {
- "@id": "crm:P46_is_composed_of",
+ "part_of": {
+ "@id": "crm:P9i_forms_part_of",
"@type": "@id",
"@container": "@set"
},
@@ -144,18 +103,18 @@
"@type": "@id",
"@container": "@set"
}
- },
- "@id": "crm:E20_Biological_Object"
+ }
},
- "Birth": {
+ "Acquisition": {
+ "@id": "crm:E8_Acquisition",
"@context": {
- "part_of": {
- "@id": "crm:P9i_forms_part_of",
+ "part": {
+ "@id": "crm:P9_consists_of",
"@type": "@id",
"@container": "@set"
},
- "part": {
- "@id": "crm:P9_consists_of",
+ "part_of": {
+ "@id": "crm:P9i_forms_part_of",
"@type": "@id",
"@container": "@set"
},
@@ -164,33 +123,18 @@
"@type": "@id",
"@container": "@set"
}
- },
- "@id": "crm:E67_Birth"
- },
- "CRMEntity": {
- "@id": "crm:E1_CRM_Entity"
- },
- "ConceptualObject": {
- "@id": "crm:E28_Conceptual_Object"
- },
- "ConditionAssessment": {
- "@id": "crm:E14_Condition_Assessment"
- },
- "ConditionState": {
- "@id": "crm:E3_Condition_State"
- },
- "CoordinateSystem": {
- "@id": "geo:SP4_Spatial_Coordinate_Reference_System"
+ }
},
- "Creation": {
+ "Move": {
+ "@id": "crm:E9_Move",
"@context": {
- "part_of": {
- "@id": "crm:P9i_forms_part_of",
+ "part": {
+ "@id": "crm:P9_consists_of",
"@type": "@id",
"@container": "@set"
},
- "part": {
- "@id": "crm:P9_consists_of",
+ "part_of": {
+ "@id": "crm:P9i_forms_part_of",
"@type": "@id",
"@container": "@set"
},
@@ -199,24 +143,18 @@
"@type": "@id",
"@container": "@set"
}
- },
- "@id": "crm:E65_Creation"
- },
- "CuratedHolding": {
- "@id": "crm:E78_Curated_Holding"
- },
- "CurationActivity": {
- "@id": "crm:E87_Curation_Activity"
+ }
},
- "Currency": {
+ "TransferOfCustody": {
+ "@id": "crm:E10_Transfer_of_Custody",
"@context": {
- "part_of": {
- "@id": "skos:broader",
+ "part": {
+ "@id": "crm:P9_consists_of",
"@type": "@id",
"@container": "@set"
},
- "part": {
- "@id": "skos:narrower",
+ "part_of": {
+ "@id": "crm:P9i_forms_part_of",
"@type": "@id",
"@container": "@set"
},
@@ -225,18 +163,18 @@
"@type": "@id",
"@container": "@set"
}
- },
- "@id": "crm:E98_Currency"
+ }
},
- "Death": {
+ "Modification": {
+ "@id": "crm:E11_Modification",
"@context": {
- "part_of": {
- "@id": "crm:P9i_forms_part_of",
+ "part": {
+ "@id": "crm:P9_consists_of",
"@type": "@id",
"@container": "@set"
},
- "part": {
- "@id": "crm:P9_consists_of",
+ "part_of": {
+ "@id": "crm:P9i_forms_part_of",
"@type": "@id",
"@container": "@set"
},
@@ -245,21 +183,18 @@
"@type": "@id",
"@container": "@set"
}
- },
- "@id": "crm:E69_Death"
- },
- "DesignOrProcedure": {
- "@id": "crm:E29_Design_or_Procedure"
+ }
},
- "Destruction": {
+ "Production": {
+ "@id": "crm:E12_Production",
"@context": {
- "part_of": {
- "@id": "crm:P9i_forms_part_of",
+ "part": {
+ "@id": "crm:P9_consists_of",
"@type": "@id",
"@container": "@set"
},
- "part": {
- "@id": "crm:P9_consists_of",
+ "part_of": {
+ "@id": "crm:P9i_forms_part_of",
"@type": "@id",
"@container": "@set"
},
@@ -268,27 +203,18 @@
"@type": "@id",
"@container": "@set"
}
- },
- "@id": "crm:E6_Destruction"
- },
- "DigitalObject": {
- "@id": "dig:D1_Digital_Object"
- },
- "DigitalService": {
- "@id": "la:DigitalService"
- },
- "Dimension": {
- "@id": "crm:E54_Dimension"
+ }
},
- "Dissolution": {
+ "AttributeAssignment": {
+ "@id": "crm:E13_Attribute_Assignment",
"@context": {
- "part_of": {
- "@id": "crm:P9i_forms_part_of",
+ "part": {
+ "@id": "crm:P9_consists_of",
"@type": "@id",
"@container": "@set"
},
- "part": {
- "@id": "crm:P9_consists_of",
+ "part_of": {
+ "@id": "crm:P9i_forms_part_of",
"@type": "@id",
"@container": "@set"
},
@@ -297,24 +223,30 @@
"@type": "@id",
"@container": "@set"
}
- },
- "@id": "crm:E68_Dissolution"
+ }
},
- "Document": {
- "@id": "crm:E31_Document"
+ "ConditionAssessment": {
+ "@id": "crm:E14_Condition_Assessment"
},
- "Encounter": {
- "@id": "sci:S19_Encounter_Event"
+ "IdentifierAssignment": {
+ "@id": "crm:E15_Identifier_Assignment"
},
- "EndOfExistence": {
+ "Measurement": {
+ "@id": "crm:E16_Measurement"
+ },
+ "TypeAssignment": {
+ "@id": "crm:E17_Type_Assignment"
+ },
+ "PhysicalThing": {
+ "@id": "crm:E18_Physical_Thing",
"@context": {
- "part_of": {
- "@id": "crm:P9i_forms_part_of",
+ "part": {
+ "@id": "crm:P46_is_composed_of",
"@type": "@id",
"@container": "@set"
},
- "part": {
- "@id": "crm:P9_consists_of",
+ "part_of": {
+ "@id": "crm:P46i_forms_part_of",
"@type": "@id",
"@container": "@set"
},
@@ -323,18 +255,18 @@
"@type": "@id",
"@container": "@set"
}
- },
- "@id": "crm:E64_End_of_Existence"
+ }
},
- "Event": {
+ "PhysicalObject": {
+ "@id": "crm:E19_Physical_Object",
"@context": {
- "part_of": {
- "@id": "crm:P9i_forms_part_of",
+ "part": {
+ "@id": "crm:P46_is_composed_of",
"@type": "@id",
"@container": "@set"
},
- "part": {
- "@id": "crm:P9_consists_of",
+ "part_of": {
+ "@id": "crm:P46i_forms_part_of",
"@type": "@id",
"@container": "@set"
},
@@ -343,18 +275,18 @@
"@type": "@id",
"@container": "@set"
}
- },
- "@id": "crm:E5_Event"
+ }
},
- "Formation": {
+ "BiologicalObject": {
+ "@id": "crm:E20_Biological_Object",
"@context": {
- "part_of": {
- "@id": "crm:P9i_forms_part_of",
+ "part": {
+ "@id": "crm:P46_is_composed_of",
"@type": "@id",
"@container": "@set"
},
- "part": {
- "@id": "crm:P9_consists_of",
+ "part_of": {
+ "@id": "crm:P46i_forms_part_of",
"@type": "@id",
"@container": "@set"
},
@@ -363,13 +295,10 @@
"@type": "@id",
"@container": "@set"
}
- },
- "@id": "crm:E66_Formation"
+ }
},
- "Geometry": {
- "@id": "geo:SP5_Geometric_Place_Expression"
- },
- "Group": {
+ "Person": {
+ "@id": "crm:E21_Person",
"@context": {
"member": {
"@id": "crm:P107_has_current_or_former_member",
@@ -381,18 +310,18 @@
"@type": "@id",
"@container": "@set"
}
- },
- "@id": "crm:E74_Group"
+ }
},
- "HumanMadeFeature": {
+ "HumanMadeObject": {
+ "@id": "crm:E22_Human-Made_Object",
"@context": {
- "part_of": {
- "@id": "crm:P46i_forms_part_of",
+ "part": {
+ "@id": "crm:P46_is_composed_of",
"@type": "@id",
"@container": "@set"
},
- "part": {
- "@id": "crm:P46_is_composed_of",
+ "part_of": {
+ "@id": "crm:P46i_forms_part_of",
"@type": "@id",
"@container": "@set"
},
@@ -401,18 +330,18 @@
"@type": "@id",
"@container": "@set"
}
- },
- "@id": "crm:E25_Human-Made_Feature"
+ }
},
- "HumanMadeObject": {
+ "PhysicalHumanMadeThing": {
+ "@id": "crm:E24_Physical_Human-Made_Thing",
"@context": {
- "part_of": {
- "@id": "crm:P46i_forms_part_of",
+ "part": {
+ "@id": "crm:P46_is_composed_of",
"@type": "@id",
"@container": "@set"
},
- "part": {
- "@id": "crm:P46_is_composed_of",
+ "part_of": {
+ "@id": "crm:P46i_forms_part_of",
"@type": "@id",
"@container": "@set"
},
@@ -421,21 +350,18 @@
"@type": "@id",
"@container": "@set"
}
- },
- "@id": "crm:E22_Human-Made_Object"
- },
- "HumanMadeThing": {
- "@id": "crm:E71_Human-Made_Thing"
+ }
},
- "Identifier": {
+ "HumanMadeFeature": {
+ "@id": "crm:E25_Human-Made_Feature",
"@context": {
- "part_of": {
- "@id": "crm:P106i_forms_part_of",
+ "part": {
+ "@id": "crm:P46_is_composed_of",
"@type": "@id",
"@container": "@set"
},
- "part": {
- "@id": "crm:P106_is_composed_of",
+ "part_of": {
+ "@id": "crm:P46i_forms_part_of",
"@type": "@id",
"@container": "@set"
},
@@ -444,21 +370,18 @@
"@type": "@id",
"@container": "@set"
}
- },
- "@id": "crm:E42_Identifier"
- },
- "IdentifierAssignment": {
- "@id": "crm:E15_Identifier_Assignment"
+ }
},
- "InformationObject": {
+ "PhysicalFeature": {
+ "@id": "crm:E26_Physical_Feature",
"@context": {
- "part_of": {
- "@id": "crm:P106i_forms_part_of",
+ "part": {
+ "@id": "crm:P46_is_composed_of",
"@type": "@id",
"@container": "@set"
},
- "part": {
- "@id": "crm:P106_is_composed_of",
+ "part_of": {
+ "@id": "crm:P46i_forms_part_of",
"@type": "@id",
"@container": "@set"
},
@@ -467,18 +390,18 @@
"@type": "@id",
"@container": "@set"
}
- },
- "@id": "crm:E73_Information_Object"
+ }
},
- "Inscription": {
+ "Site": {
+ "@id": "crm:E27_Site",
"@context": {
- "part_of": {
- "@id": "crm:P106i_forms_part_of",
+ "part": {
+ "@id": "crm:P46_is_composed_of",
"@type": "@id",
"@container": "@set"
},
- "part": {
- "@id": "crm:P106_is_composed_of",
+ "part_of": {
+ "@id": "crm:P46i_forms_part_of",
"@type": "@id",
"@container": "@set"
},
@@ -487,18 +410,24 @@
"@type": "@id",
"@container": "@set"
}
- },
- "@id": "crm:E34_Inscription"
+ }
},
- "Joining": {
+ "ConceptualObject": {
+ "@id": "crm:E28_Conceptual_Object"
+ },
+ "DesignOrProcedure": {
+ "@id": "crm:E29_Design_or_Procedure"
+ },
+ "Right": {
+ "@id": "crm:E30_Right",
"@context": {
- "part_of": {
- "@id": "crm:P9i_forms_part_of",
+ "part": {
+ "@id": "crm:P148_has_component",
"@type": "@id",
"@container": "@set"
},
- "part": {
- "@id": "crm:P9_consists_of",
+ "part_of": {
+ "@id": "crm:P148i_is_component_of",
"@type": "@id",
"@container": "@set"
},
@@ -507,18 +436,24 @@
"@type": "@id",
"@container": "@set"
}
- },
- "@id": "crm:E85_Joining"
+ }
},
- "Language": {
+ "Document": {
+ "@id": "crm:E31_Document"
+ },
+ "AuthorityDocument": {
+ "@id": "crm:E32_Authority_Document"
+ },
+ "LinguisticObject": {
+ "@id": "crm:E33_Linguistic_Object",
"@context": {
- "part_of": {
- "@id": "skos:broader",
+ "part": {
+ "@id": "crm:P106_is_composed_of",
"@type": "@id",
"@container": "@set"
},
- "part": {
- "@id": "skos:narrower",
+ "part_of": {
+ "@id": "crm:P106i_forms_part_of",
"@type": "@id",
"@container": "@set"
},
@@ -527,18 +462,18 @@
"@type": "@id",
"@container": "@set"
}
- },
- "@id": "crm:E56_Language"
+ }
},
- "Leaving": {
+ "Inscription": {
+ "@id": "crm:E34_Inscription",
"@context": {
- "part_of": {
- "@id": "crm:P9i_forms_part_of",
+ "part": {
+ "@id": "crm:P106_is_composed_of",
"@type": "@id",
"@container": "@set"
},
- "part": {
- "@id": "crm:P9_consists_of",
+ "part_of": {
+ "@id": "crm:P106i_forms_part_of",
"@type": "@id",
"@container": "@set"
},
@@ -547,21 +482,18 @@
"@type": "@id",
"@container": "@set"
}
- },
- "@id": "crm:E86_Leaving"
- },
- "LegalObject": {
- "@id": "crm:E72_Legal_Object"
+ }
},
- "LinguisticObject": {
+ "Title": {
+ "@id": "crm:E35_Title",
"@context": {
- "part_of": {
- "@id": "crm:P106i_forms_part_of",
+ "part": {
+ "@id": "crm:P106_is_composed_of",
"@type": "@id",
"@container": "@set"
},
- "part": {
- "@id": "crm:P106_is_composed_of",
+ "part_of": {
+ "@id": "crm:P106i_forms_part_of",
"@type": "@id",
"@container": "@set"
},
@@ -570,18 +502,18 @@
"@type": "@id",
"@container": "@set"
}
- },
- "@id": "crm:E33_Linguistic_Object"
+ }
},
- "Mark": {
+ "VisualItem": {
+ "@id": "crm:E36_Visual_Item",
"@context": {
- "part_of": {
- "@id": "crm:P106i_forms_part_of",
+ "part": {
+ "@id": "crm:P106_is_composed_of",
"@type": "@id",
"@container": "@set"
},
- "part": {
- "@id": "crm:P106_is_composed_of",
+ "part_of": {
+ "@id": "crm:P106i_forms_part_of",
"@type": "@id",
"@container": "@set"
},
@@ -590,18 +522,18 @@
"@type": "@id",
"@container": "@set"
}
- },
- "@id": "crm:E37_Mark"
+ }
},
- "Material": {
+ "Mark": {
+ "@id": "crm:E37_Mark",
"@context": {
- "part_of": {
- "@id": "skos:broader",
+ "part": {
+ "@id": "crm:P106_is_composed_of",
"@type": "@id",
"@container": "@set"
},
- "part": {
- "@id": "skos:narrower",
+ "part_of": {
+ "@id": "crm:P106i_forms_part_of",
"@type": "@id",
"@container": "@set"
},
@@ -610,21 +542,21 @@
"@type": "@id",
"@container": "@set"
}
- },
- "@id": "crm:E57_Material"
+ }
},
- "Measurement": {
- "@id": "crm:E16_Measurement"
+ "Actor": {
+ "@id": "crm:E39_Actor"
},
- "MeasurementUnit": {
+ "Appellation": {
+ "@id": "crm:E41_Appellation",
"@context": {
- "part_of": {
- "@id": "skos:broader",
+ "part": {
+ "@id": "crm:P106_is_composed_of",
"@type": "@id",
"@container": "@set"
},
- "part": {
- "@id": "skos:narrower",
+ "part_of": {
+ "@id": "crm:P106i_forms_part_of",
"@type": "@id",
"@container": "@set"
},
@@ -633,18 +565,18 @@
"@type": "@id",
"@container": "@set"
}
- },
- "@id": "crm:E58_Measurement_Unit"
+ }
},
- "Modification": {
+ "Identifier": {
+ "@id": "crm:E42_Identifier",
"@context": {
- "part_of": {
- "@id": "crm:P9i_forms_part_of",
+ "part": {
+ "@id": "crm:P106_is_composed_of",
"@type": "@id",
"@container": "@set"
},
- "part": {
- "@id": "crm:P9_consists_of",
+ "part_of": {
+ "@id": "crm:P106i_forms_part_of",
"@type": "@id",
"@container": "@set"
},
@@ -653,21 +585,18 @@
"@type": "@id",
"@container": "@set"
}
- },
- "@id": "crm:E11_Modification"
+ }
},
- "MonetaryAmount": {
- "@id": "crm:E97_Monetary_Amount"
- },
- "Move": {
+ "TimeSpan": {
+ "@id": "crm:E52_Time-Span",
"@context": {
- "part_of": {
- "@id": "crm:P9i_forms_part_of",
+ "part": {
+ "@id": "crm:P86i_contains",
"@type": "@id",
"@container": "@set"
},
- "part": {
- "@id": "crm:P9_consists_of",
+ "part_of": {
+ "@id": "crm:P86_falls_within",
"@type": "@id",
"@container": "@set"
},
@@ -676,18 +605,18 @@
"@type": "@id",
"@container": "@set"
}
- },
- "@id": "crm:E9_Move"
+ }
},
- "Name": {
+ "Place": {
+ "@id": "crm:E53_Place",
"@context": {
- "part_of": {
- "@id": "crm:P106i_forms_part_of",
+ "part": {
+ "@id": "crm:P89i_contains",
"@type": "@id",
"@container": "@set"
},
- "part": {
- "@id": "crm:P106_is_composed_of",
+ "part_of": {
+ "@id": "crm:P89_falls_within",
"@type": "@id",
"@container": "@set"
},
@@ -696,18 +625,21 @@
"@type": "@id",
"@container": "@set"
}
- },
- "@id": "crm:E33_E41_Linguistic_Appellation"
+ }
},
- "PartAddition": {
+ "Dimension": {
+ "@id": "crm:E54_Dimension"
+ },
+ "Type": {
+ "@id": "crm:E55_Type",
"@context": {
- "part_of": {
- "@id": "crm:P9i_forms_part_of",
+ "part": {
+ "@id": "skos:narrower",
"@type": "@id",
"@container": "@set"
},
- "part": {
- "@id": "crm:P9_consists_of",
+ "part_of": {
+ "@id": "skos:broader",
"@type": "@id",
"@container": "@set"
},
@@ -716,18 +648,18 @@
"@type": "@id",
"@container": "@set"
}
- },
- "@id": "crm:E79_Part_Addition"
+ }
},
- "PartRemoval": {
+ "Language": {
+ "@id": "crm:E56_Language",
"@context": {
- "part_of": {
- "@id": "crm:P9i_forms_part_of",
+ "part": {
+ "@id": "skos:narrower",
"@type": "@id",
"@container": "@set"
},
- "part": {
- "@id": "crm:P9_consists_of",
+ "part_of": {
+ "@id": "skos:broader",
"@type": "@id",
"@container": "@set"
},
@@ -736,18 +668,18 @@
"@type": "@id",
"@container": "@set"
}
- },
- "@id": "crm:E80_Part_Removal"
+ }
},
- "Payment": {
+ "Material": {
+ "@id": "crm:E57_Material",
"@context": {
- "part_of": {
- "@id": "crm:P9i_forms_part_of",
+ "part": {
+ "@id": "skos:narrower",
"@type": "@id",
"@container": "@set"
},
- "part": {
- "@id": "crm:P9_consists_of",
+ "part_of": {
+ "@id": "skos:broader",
"@type": "@id",
"@container": "@set"
},
@@ -756,18 +688,18 @@
"@type": "@id",
"@container": "@set"
}
- },
- "@id": "la:Payment"
+ }
},
- "Period": {
+ "MeasurementUnit": {
+ "@id": "crm:E58_Measurement_Unit",
"@context": {
- "part_of": {
- "@id": "crm:P9i_forms_part_of",
+ "part": {
+ "@id": "skos:narrower",
"@type": "@id",
"@container": "@set"
},
- "part": {
- "@id": "crm:P9_consists_of",
+ "part_of": {
+ "@id": "skos:broader",
"@type": "@id",
"@container": "@set"
},
@@ -776,39 +708,38 @@
"@type": "@id",
"@container": "@set"
}
- },
- "@id": "crm:E4_Period"
- },
- "PersistentItem": {
- "@id": "crm:E77_Persistent_Item"
+ }
},
- "Person": {
+ "BeginningOfExistence": {
+ "@id": "crm:E63_Beginning_of_Existence",
"@context": {
- "member": {
- "@id": "crm:P107_has_current_or_former_member",
+ "part": {
+ "@id": "crm:P9_consists_of",
+ "@type": "@id",
+ "@container": "@set"
+ },
+ "part_of": {
+ "@id": "crm:P9i_forms_part_of",
"@type": "@id",
"@container": "@set"
},
"member_of": {
- "@id": "crm:P107i_is_current_or_former_member_of",
+ "@id": "la:member_of",
"@type": "@id",
"@container": "@set"
}
- },
- "@id": "crm:E21_Person"
- },
- "Phase": {
- "@id": "la:Phase"
+ }
},
- "PhysicalFeature": {
+ "EndOfExistence": {
+ "@id": "crm:E64_End_of_Existence",
"@context": {
- "part_of": {
- "@id": "crm:P46i_forms_part_of",
+ "part": {
+ "@id": "crm:P9_consists_of",
"@type": "@id",
"@container": "@set"
},
- "part": {
- "@id": "crm:P46_is_composed_of",
+ "part_of": {
+ "@id": "crm:P9i_forms_part_of",
"@type": "@id",
"@container": "@set"
},
@@ -817,18 +748,18 @@
"@type": "@id",
"@container": "@set"
}
- },
- "@id": "crm:E26_Physical_Feature"
+ }
},
- "PhysicalHumanMadeThing": {
+ "Creation": {
+ "@id": "crm:E65_Creation",
"@context": {
- "part_of": {
- "@id": "crm:P46i_forms_part_of",
+ "part": {
+ "@id": "crm:P9_consists_of",
"@type": "@id",
"@container": "@set"
},
- "part": {
- "@id": "crm:P46_is_composed_of",
+ "part_of": {
+ "@id": "crm:P9i_forms_part_of",
"@type": "@id",
"@container": "@set"
},
@@ -837,18 +768,18 @@
"@type": "@id",
"@container": "@set"
}
- },
- "@id": "crm:E24_Physical_Human-Made_Thing"
+ }
},
- "PhysicalObject": {
+ "Formation": {
+ "@id": "crm:E66_Formation",
"@context": {
- "part_of": {
- "@id": "crm:P46i_forms_part_of",
+ "part": {
+ "@id": "crm:P9_consists_of",
"@type": "@id",
"@container": "@set"
},
- "part": {
- "@id": "crm:P46_is_composed_of",
+ "part_of": {
+ "@id": "crm:P9i_forms_part_of",
"@type": "@id",
"@container": "@set"
},
@@ -857,18 +788,18 @@
"@type": "@id",
"@container": "@set"
}
- },
- "@id": "crm:E19_Physical_Object"
+ }
},
- "PhysicalThing": {
+ "Birth": {
+ "@id": "crm:E67_Birth",
"@context": {
- "part_of": {
- "@id": "crm:P46i_forms_part_of",
+ "part": {
+ "@id": "crm:P9_consists_of",
"@type": "@id",
"@container": "@set"
},
- "part": {
- "@id": "crm:P46_is_composed_of",
+ "part_of": {
+ "@id": "crm:P9i_forms_part_of",
"@type": "@id",
"@container": "@set"
},
@@ -877,18 +808,18 @@
"@type": "@id",
"@container": "@set"
}
- },
- "@id": "crm:E18_Physical_Thing"
+ }
},
- "Place": {
+ "Dissolution": {
+ "@id": "crm:E68_Dissolution",
"@context": {
- "part_of": {
- "@id": "crm:P89_falls_within",
+ "part": {
+ "@id": "crm:P9_consists_of",
"@type": "@id",
"@container": "@set"
},
- "part": {
- "@id": "crm:P89i_contains",
+ "part_of": {
+ "@id": "crm:P9i_forms_part_of",
"@type": "@id",
"@container": "@set"
},
@@ -897,24 +828,18 @@
"@type": "@id",
"@container": "@set"
}
- },
- "@id": "crm:E53_Place"
- },
- "Presence": {
- "@id": "crm:E93_Presence"
- },
- "ProductType": {
- "@id": "crm:E99_Product_Type"
+ }
},
- "Production": {
+ "Death": {
+ "@id": "crm:E69_Death",
"@context": {
- "part_of": {
- "@id": "crm:P9i_forms_part_of",
+ "part": {
+ "@id": "crm:P9_consists_of",
"@type": "@id",
"@container": "@set"
},
- "part": {
- "@id": "crm:P9_consists_of",
+ "part_of": {
+ "@id": "crm:P9i_forms_part_of",
"@type": "@id",
"@container": "@set"
},
@@ -923,18 +848,27 @@
"@type": "@id",
"@container": "@set"
}
- },
- "@id": "crm:E12_Production"
+ }
},
- "PropositionalObject": {
+ "Thing": {
+ "@id": "crm:E70_Thing"
+ },
+ "HumanMadeThing": {
+ "@id": "crm:E71_Human-Made_Thing"
+ },
+ "LegalObject": {
+ "@id": "crm:E72_Legal_Object"
+ },
+ "InformationObject": {
+ "@id": "crm:E73_Information_Object",
"@context": {
- "part_of": {
- "@id": "crm:P148i_is_component_of",
+ "part": {
+ "@id": "crm:P106_is_composed_of",
"@type": "@id",
"@container": "@set"
},
- "part": {
- "@id": "crm:P148_has_component",
+ "part_of": {
+ "@id": "crm:P106i_forms_part_of",
"@type": "@id",
"@container": "@set"
},
@@ -943,44 +877,39 @@
"@type": "@id",
"@container": "@set"
}
- },
- "@id": "crm:E89_Propositional_Object"
+ }
},
- "Purchase": {
+ "Group": {
+ "@id": "crm:E74_Group",
"@context": {
- "part_of": {
- "@id": "crm:P9i_forms_part_of",
- "@type": "@id",
- "@container": "@set"
- },
- "part": {
- "@id": "crm:P9_consists_of",
+ "member": {
+ "@id": "crm:P107_has_current_or_former_member",
"@type": "@id",
"@container": "@set"
},
"member_of": {
- "@id": "la:member_of",
+ "@id": "crm:P107i_is_current_or_former_member_of",
"@type": "@id",
"@container": "@set"
}
- },
- "@id": "crm:E96_Purchase"
+ }
},
- "Relationship": {
- "@id": "la:Relationship"
+ "PersistentItem": {
+ "@id": "crm:E77_Persistent_Item"
},
- "Removal": {
- "@id": "la:Removal"
+ "CuratedHolding": {
+ "@id": "crm:E78_Curated_Holding"
},
- "Right": {
+ "PartAddition": {
+ "@id": "crm:E79_Part_Addition",
"@context": {
- "part_of": {
- "@id": "crm:P148i_is_component_of",
+ "part": {
+ "@id": "crm:P9_consists_of",
"@type": "@id",
"@container": "@set"
},
- "part": {
- "@id": "crm:P148_has_component",
+ "part_of": {
+ "@id": "crm:P9i_forms_part_of",
"@type": "@id",
"@container": "@set"
},
@@ -989,16 +918,18 @@
"@type": "@id",
"@container": "@set"
}
- },
- "@id": "crm:E30_Right"
- },
- "RightAcquisition": {
- "@id": "la:RightAcquisition"
+ }
},
- "Set": {
+ "PartRemoval": {
+ "@id": "crm:E80_Part_Removal",
"@context": {
- "member": {
- "@id": "la:has_member",
+ "part": {
+ "@id": "crm:P9_consists_of",
+ "@type": "@id",
+ "@container": "@set"
+ },
+ "part_of": {
+ "@id": "crm:P9i_forms_part_of",
"@type": "@id",
"@container": "@set"
},
@@ -1007,18 +938,18 @@
"@type": "@id",
"@container": "@set"
}
- },
- "@id": "la:Set"
+ }
},
- "Site": {
+ "Transformation": {
+ "@id": "crm:E81_Transformation",
"@context": {
- "part_of": {
- "@id": "crm:P46i_forms_part_of",
+ "part": {
+ "@id": "crm:P9_consists_of",
"@type": "@id",
"@container": "@set"
},
- "part": {
- "@id": "crm:P46_is_composed_of",
+ "part_of": {
+ "@id": "crm:P9i_forms_part_of",
"@type": "@id",
"@container": "@set"
},
@@ -1027,21 +958,21 @@
"@type": "@id",
"@container": "@set"
}
- },
- "@id": "crm:E27_Site"
+ }
},
- "SpacetimeVolume": {
- "@id": "crm:E92_Spacetime_Volume"
+ "TypeCreation": {
+ "@id": "crm:E83_Type_Creation"
},
- "SymbolicObject": {
+ "Joining": {
+ "@id": "crm:E85_Joining",
"@context": {
- "part_of": {
- "@id": "crm:P106i_forms_part_of",
+ "part": {
+ "@id": "crm:P9_consists_of",
"@type": "@id",
"@container": "@set"
},
- "part": {
- "@id": "crm:P106_is_composed_of",
+ "part_of": {
+ "@id": "crm:P9i_forms_part_of",
"@type": "@id",
"@container": "@set"
},
@@ -1050,24 +981,18 @@
"@type": "@id",
"@container": "@set"
}
- },
- "@id": "crm:E90_Symbolic_Object"
- },
- "TemporalEntity": {
- "@id": "crm:E2_Temporal_Entity"
+ }
},
- "Thing": {
- "@id": "crm:E70_Thing"
- },
- "TimeSpan": {
+ "Leaving": {
+ "@id": "crm:E86_Leaving",
"@context": {
- "part_of": {
- "@id": "crm:P86_falls_within",
+ "part": {
+ "@id": "crm:P9_consists_of",
"@type": "@id",
"@container": "@set"
},
- "part": {
- "@id": "crm:P86i_contains",
+ "part_of": {
+ "@id": "crm:P9i_forms_part_of",
"@type": "@id",
"@container": "@set"
},
@@ -1076,18 +1001,21 @@
"@type": "@id",
"@container": "@set"
}
- },
- "@id": "crm:E52_Time-Span"
+ }
},
- "Title": {
+ "CurationActivity": {
+ "@id": "crm:E87_Curation_Activity"
+ },
+ "PropositionalObject": {
+ "@id": "crm:E89_Propositional_Object",
"@context": {
- "part_of": {
- "@id": "crm:P106i_forms_part_of",
+ "part": {
+ "@id": "crm:P148_has_component",
"@type": "@id",
"@container": "@set"
},
- "part": {
- "@id": "crm:P106_is_composed_of",
+ "part_of": {
+ "@id": "crm:P148i_is_component_of",
"@type": "@id",
"@container": "@set"
},
@@ -1096,18 +1024,18 @@
"@type": "@id",
"@container": "@set"
}
- },
- "@id": "crm:E35_Title"
+ }
},
- "TransferOfCustody": {
+ "SymbolicObject": {
+ "@id": "crm:E90_Symbolic_Object",
"@context": {
- "part_of": {
- "@id": "crm:P9i_forms_part_of",
+ "part": {
+ "@id": "crm:P106_is_composed_of",
"@type": "@id",
"@container": "@set"
},
- "part": {
- "@id": "crm:P9_consists_of",
+ "part_of": {
+ "@id": "crm:P106i_forms_part_of",
"@type": "@id",
"@container": "@set"
},
@@ -1116,18 +1044,24 @@
"@type": "@id",
"@container": "@set"
}
- },
- "@id": "crm:E10_Transfer_of_Custody"
+ }
},
- "Transformation": {
+ "SpacetimeVolume": {
+ "@id": "crm:E92_Spacetime_Volume"
+ },
+ "Presence": {
+ "@id": "crm:E93_Presence"
+ },
+ "Purchase": {
+ "@id": "crm:E96_Purchase",
"@context": {
- "part_of": {
- "@id": "crm:P9i_forms_part_of",
+ "part": {
+ "@id": "crm:P9_consists_of",
"@type": "@id",
"@container": "@set"
},
- "part": {
- "@id": "crm:P9_consists_of",
+ "part_of": {
+ "@id": "crm:P9i_forms_part_of",
"@type": "@id",
"@container": "@set"
},
@@ -1136,18 +1070,21 @@
"@type": "@id",
"@container": "@set"
}
- },
- "@id": "crm:E81_Transformation"
+ }
},
- "Type": {
+ "MonetaryAmount": {
+ "@id": "crm:E97_Monetary_Amount"
+ },
+ "Currency": {
+ "@id": "crm:E98_Currency",
"@context": {
- "part_of": {
- "@id": "skos:broader",
+ "part": {
+ "@id": "skos:narrower",
"@type": "@id",
"@container": "@set"
},
- "part": {
- "@id": "skos:narrower",
+ "part_of": {
+ "@id": "skos:broader",
"@type": "@id",
"@container": "@set"
},
@@ -1156,24 +1093,21 @@
"@type": "@id",
"@container": "@set"
}
- },
- "@id": "crm:E55_Type"
- },
- "TypeAssignment": {
- "@id": "crm:E17_Type_Assignment"
+ }
},
- "TypeCreation": {
- "@id": "crm:E83_Type_Creation"
+ "ProductType": {
+ "@id": "crm:E99_Product_Type"
},
- "VisualItem": {
+ "Name": {
+ "@id": "crm:E33_E41_Linguistic_Appellation",
"@context": {
- "part_of": {
- "@id": "crm:P106i_forms_part_of",
+ "part": {
+ "@id": "crm:P106_is_composed_of",
"@type": "@id",
"@container": "@set"
},
- "part": {
- "@id": "crm:P106_is_composed_of",
+ "part_of": {
+ "@id": "crm:P106i_forms_part_of",
"@type": "@id",
"@container": "@set"
},
@@ -1182,267 +1116,292 @@
"@type": "@id",
"@container": "@set"
}
- },
- "@id": "crm:E36_Visual_Item"
+ }
},
- "a_presence_of": {
- "@id": "crm:P166_was_a_presence_of",
+ "identified_by": {
+ "@id": "crm:P1_is_identified_by",
"@type": "@id",
"@container": "@set"
},
- "about": {
- "@id": "crm:P129_is_about",
+ "identifies": {
+ "@id": "crm:P1i_identifies",
+ "@type": "@id"
+ },
+ "classified_as": {
+ "@id": "crm:P2_has_type",
"@type": "@id",
"@container": "@set"
},
- "access_point": {
- "@id": "la:access_point",
+ "type_of": {
+ "@id": "crm:P2i_is_type_of",
"@type": "@id",
"@container": "@set"
},
- "acquired_custody_through": {
- "@id": "crm:P29i_received_custody_through",
+ "note": {
+ "@id": "crm:P3_has_note"
+ },
+ "timespan": {
+ "@id": "crm:P4_has_time-span",
+ "@type": "@id"
+ },
+ "timespan_of": {
+ "@id": "crm:P4i_is_time-span_of",
"@type": "@id",
"@container": "@set"
},
- "acquired_title_through": {
- "@id": "crm:P22i_acquired_title_through",
+ "subState": {
+ "@id": "crm:P5_consists_of",
"@type": "@id",
"@container": "@set"
},
- "added": {
- "@id": "crm:P111_added",
+ "subState_of": {
+ "@id": "crm:P5i_forms_part_of",
"@type": "@id",
"@container": "@set"
},
- "added_by": {
- "@id": "crm:P111i_was_added_by",
+ "took_place_at": {
+ "@id": "crm:P7_took_place_at",
"@type": "@id",
"@container": "@set"
},
- "added_member": {
- "@id": "la:added_member",
- "@type": "@id"
- },
- "added_member_by": {
- "@id": "la:added_member_by",
+ "location_of": {
+ "@id": "crm:P7i_witnessed",
"@type": "@id",
"@container": "@set"
},
- "added_to": {
- "@id": "la:added_to",
- "@type": "@id"
+ "took_place_on_or_within": {
+ "@id": "crm:P8_took_place_on_or_within",
+ "@type": "@id",
+ "@container": "@set"
},
- "added_to_by": {
- "@id": "la:added_to_by",
+ "witnessed": {
+ "@id": "crm:P8i_witnessed",
"@type": "@id",
"@container": "@set"
},
- "alternative": {
- "@id": "crm:P139_has_alternative_form",
+ "falls_within": {
+ "@id": "crm:P10_falls_within",
"@type": "@id",
"@container": "@set"
},
- "amount": {
- "@id": "crm:P181_has_amount"
- },
- "applies_to": {
- "@id": "crm:P104i_applies_to",
+ "contains": {
+ "@id": "crm:P10i_contains",
"@type": "@id",
"@container": "@set"
},
- "approximated_by": {
- "@id": "crm:P189i_is_approximated_by",
+ "participant": {
+ "@id": "crm:P11_had_participant",
"@type": "@id",
"@container": "@set"
},
- "approximates": {
- "@id": "crm:P189_approximates",
+ "participated_in": {
+ "@id": "crm:P11i_participated_in",
"@type": "@id",
"@container": "@set"
},
- "assessed_by": {
- "@id": "crm:P34i_was_assessed_by",
+ "involved": {
+ "@id": "crm:P12_occurred_in_the_presence_of",
"@type": "@id",
"@container": "@set"
},
- "assigned": {
- "@id": "crm:P141_assigned",
+ "present_at": {
+ "@id": "crm:P12i_was_present_at",
"@type": "@id",
"@container": "@set"
},
- "assigned_by": {
- "@id": "crm:P141i_was_assigned_by",
+ "destroyed": {
+ "@id": "crm:P13_destroyed",
+ "@type": "@id"
+ },
+ "destroyed_by": {
+ "@id": "crm:P13i_was_destroyed_by",
+ "@type": "@id"
+ },
+ "carried_out_by": {
+ "@id": "crm:P14_carried_out_by",
"@type": "@id",
"@container": "@set"
},
- "assigned_identifier": {
- "@id": "crm:P37_assigned",
+ "carried_out": {
+ "@id": "crm:P14i_performed",
"@type": "@id",
"@container": "@set"
},
- "assigned_property": {
- "@id": "crm:P177_assigned_property_type",
- "@type": "@vocab"
+ "influenced_by": {
+ "@id": "crm:P15_was_influenced_by",
+ "@type": "@id",
+ "@container": "@set"
},
- "assigned_to": {
- "@id": "crm:P140_assigned_attribute_to",
- "@type": "@id"
+ "influenced": {
+ "@id": "crm:P15i_influenced",
+ "@type": "@id",
+ "@container": "@set"
},
- "assigned_type": {
- "@id": "crm:P42_assigned",
+ "used_specific_object": {
+ "@id": "crm:P16_used_specific_object",
"@type": "@id",
"@container": "@set"
},
- "associated_with": {
- "@id": "crm:P69_is_associated_with",
+ "used_for": {
+ "@id": "crm:P16i_was_used_for",
"@type": "@id",
"@container": "@set"
},
- "at": {
- "@id": "crm:P167_at",
+ "motivated_by": {
+ "@id": "crm:P17_was_motivated_by",
"@type": "@id",
"@container": "@set"
},
- "at_rest_relative_to": {
- "@id": "crm:P157_is_at_rest_relative_to",
+ "motivated": {
+ "@id": "crm:P17i_motivated",
"@type": "@id",
"@container": "@set"
},
- "at_some_place_within": {
- "@id": "crm:P171_at_some_place_within"
+ "intended_use_of": {
+ "@id": "crm:P19_was_intended_use_of",
+ "@type": "@id",
+ "@container": "@set"
},
- "at_some_time_within": {
- "@id": "crm:P82_at_some_time_within"
+ "made_for": {
+ "@id": "crm:P19i_was_made_for",
+ "@type": "@id",
+ "@container": "@set"
},
- "attributed_by": {
- "@id": "crm:P140i_was_attributed_by",
+ "specific_purpose": {
+ "@id": "crm:P20_had_specific_purpose",
"@type": "@id",
"@container": "@set"
},
- "augmented": {
- "@id": "crm:P110_augmented",
- "@type": "@id"
+ "specific_purpose_of": {
+ "@id": "crm:P20i_was_purpose_of",
+ "@type": "@id",
+ "@container": "@set"
},
- "augmented_by": {
- "@id": "crm:P110i_was_augmented_by",
+ "general_purpose": {
+ "@id": "crm:P21_had_general_purpose",
"@type": "@id",
"@container": "@set"
},
- "based_on": {
- "@id": "crm:P136_was_based_on",
+ "purpose_of": {
+ "@id": "crm:P21i_was_purpose_of",
"@type": "@id",
"@container": "@set"
},
- "bears": {
- "@id": "crm:P56_bears_feature",
+ "transferred_title_to": {
+ "@id": "crm:P22_transferred_title_to",
"@type": "@id",
"@container": "@set"
},
- "begin_of_the_begin": {
- "@id": "crm:P82a_begin_of_the_begin",
- "@type": "xsd:dateTime"
+ "acquired_title_through": {
+ "@id": "crm:P22i_acquired_title_through",
+ "@type": "@id",
+ "@container": "@set"
},
- "begin_of_the_end": {
- "@id": "crm:P81b_begin_of_the_end",
- "@type": "xsd:dateTime"
+ "transferred_title_from": {
+ "@id": "crm:P23_transferred_title_from",
+ "@type": "@id",
+ "@container": "@set"
},
- "beginning_is_qualified_by": {
- "@id": "crm:P79_beginning_is_qualified_by"
+ "surrendered_title_through": {
+ "@id": "crm:P23i_surrendered_title_through",
+ "@type": "@id",
+ "@container": "@set"
},
- "borders_with": {
- "@id": "crm:P122_borders_with",
+ "transferred_title_of": {
+ "@id": "crm:P24_transferred_title_of",
"@type": "@id",
"@container": "@set"
},
- "born": {
- "@id": "crm:P98i_was_born",
- "@type": "@id"
+ "changed_ownership_through": {
+ "@id": "crm:P24i_changed_ownership_through",
+ "@type": "@id",
+ "@container": "@set"
},
- "broader": {
- "@id": "skos:broader",
+ "moved": {
+ "@id": "crm:P25_moved",
"@type": "@id",
"@container": "@set"
},
- "brought_into_existence": {
- "@id": "crm:P92_brought_into_existence",
+ "moved_by": {
+ "@id": "crm:P25i_moved_by",
"@type": "@id",
"@container": "@set"
},
- "brought_into_existence_by": {
- "@id": "crm:P92i_was_brought_into_existence_by",
+ "moved_to": {
+ "@id": "crm:P26_moved_to",
"@type": "@id"
},
- "brought_into_life": {
- "@id": "crm:P98_brought_into_life",
- "@type": "@id"
+ "destination_of": {
+ "@id": "crm:P26i_was_destination_of",
+ "@type": "@id",
+ "@container": "@set"
},
- "by_mother": {
- "@id": "crm:P96_by_mother",
+ "moved_from": {
+ "@id": "crm:P27_moved_from",
"@type": "@id"
},
- "c_part": {
- "@id": "crm:P148_has_component",
+ "origin_of": {
+ "@id": "crm:P27i_was_origin_of",
"@type": "@id",
"@container": "@set"
},
- "c_part_of": {
- "@id": "crm:P148i_is_component_of",
+ "transferred_custody_from": {
+ "@id": "crm:P28_custody_surrendered_by",
"@type": "@id",
"@container": "@set"
},
- "carried_by": {
- "@id": "crm:P128i_is_carried_by",
+ "surrendered_custody_through": {
+ "@id": "crm:P28i_surrendered_custody_through",
"@type": "@id",
"@container": "@set"
},
- "carried_out": {
- "@id": "crm:P14i_performed",
+ "transferred_custody_to": {
+ "@id": "crm:P29_custody_received_by",
"@type": "@id",
"@container": "@set"
},
- "carried_out_by": {
- "@id": "crm:P14_carried_out_by",
+ "acquired_custody_through": {
+ "@id": "crm:P29i_received_custody_through",
"@type": "@id",
"@container": "@set"
},
- "carries": {
- "@id": "crm:P128_carries",
+ "transferred_custody_of": {
+ "@id": "crm:P30_transferred_custody_of",
"@type": "@id",
"@container": "@set"
},
- "caused": {
- "@id": "sci:O13_triggers",
+ "custody_transferred_through": {
+ "@id": "crm:P30i_custody_transferred_through",
"@type": "@id",
"@container": "@set"
},
- "caused_by": {
- "@id": "sci:O13i_is_triggered_by",
+ "modified": {
+ "@id": "crm:P31_has_modified",
"@type": "@id",
"@container": "@set"
},
- "changed_ownership_through": {
- "@id": "crm:P24i_changed_ownership_through",
+ "modified_by": {
+ "@id": "crm:P31i_was_modified_by",
"@type": "@id",
"@container": "@set"
},
- "classified": {
- "@id": "crm:P41_classified",
+ "technique": {
+ "@id": "crm:P32_used_general_technique",
"@type": "@id",
"@container": "@set"
},
- "classified_as": {
- "@id": "crm:P2_has_type",
+ "technique_of": {
+ "@id": "crm:P32i_was_technique_of",
"@type": "@id",
"@container": "@set"
},
- "classified_by": {
- "@id": "crm:P41i_was_classified_by",
+ "specific_technique": {
+ "@id": "crm:P33_used_specific_technique",
"@type": "@id",
"@container": "@set"
},
- "close_match": {
- "@id": "skos:closeMatch",
+ "used_by": {
+ "@id": "crm:P33i_was_used_by",
"@type": "@id",
"@container": "@set"
},
@@ -1451,8 +1410,13 @@
"@type": "@id",
"@container": "@set"
},
- "condition": {
- "@id": "crm:P44_has_condition",
+ "assessed_by": {
+ "@id": "crm:P34i_was_assessed_by",
+ "@type": "@id",
+ "@container": "@set"
+ },
+ "identified": {
+ "@id": "crm:P35_has_identified",
"@type": "@id",
"@container": "@set"
},
@@ -1461,108 +1425,132 @@
"@type": "@id",
"@container": "@set"
},
- "condition_of": {
- "@id": "crm:P44i_is_condition_of",
+ "assigned_identifier": {
+ "@id": "crm:P37_assigned",
"@type": "@id",
"@container": "@set"
},
- "conforms_to": {
- "@id": "dcterms:conformsTo",
+ "identifier_assigned_by": {
+ "@id": "crm:P37i_was_assigned_by",
"@type": "@id",
"@container": "@set"
},
- "contact_point": {
- "@id": "crm:P76_has_contact_point",
+ "deassigned": {
+ "@id": "crm:P38_deassigned",
"@type": "@id",
"@container": "@set"
},
- "contains": {
- "@id": "crm:P10i_contains",
+ "deassigned_by": {
+ "@id": "crm:P38i_was_deassigned_by",
"@type": "@id",
"@container": "@set"
},
- "content": {
- "@id": "crm:P190_has_symbolic_content"
- },
- "continued": {
- "@id": "crm:P134_continued",
+ "measured": {
+ "@id": "crm:P39_measured",
"@type": "@id",
"@container": "@set"
},
- "continued_by": {
- "@id": "crm:P134i_was_continued_by",
+ "measured_by": {
+ "@id": "crm:P39i_was_measured_by",
"@type": "@id",
"@container": "@set"
},
- "created": {
- "@id": "crm:P94_has_created",
+ "observed_dimension": {
+ "@id": "crm:P40_observed_dimension",
"@type": "@id",
"@container": "@set"
},
- "created_by": {
- "@id": "crm:P94i_was_created_by",
- "@type": "@id"
- },
- "created_type": {
- "@id": "crm:P135_created_type",
+ "observed_in": {
+ "@id": "crm:P40i_was_observed_in",
"@type": "@id",
"@container": "@set"
},
- "curated": {
- "@id": "crm:P147_curated",
+ "classified": {
+ "@id": "crm:P41_classified",
"@type": "@id",
"@container": "@set"
},
- "curated_by": {
- "@id": "crm:P147i_was_curated_by",
+ "classified_by": {
+ "@id": "crm:P41i_was_classified_by",
"@type": "@id",
"@container": "@set"
},
- "currency": {
- "@id": "crm:P180_has_currency",
+ "assigned_type": {
+ "@id": "crm:P42_assigned",
+ "@type": "@id",
+ "@container": "@set"
+ },
+ "type_assigned_by": {
+ "@id": "crm:P42i_was_assigned_by",
+ "@type": "@id",
+ "@container": "@set"
+ },
+ "dimension": {
+ "@id": "crm:P43_has_dimension",
+ "@type": "@id",
+ "@container": "@set"
+ },
+ "dimension_of": {
+ "@id": "crm:P43i_is_dimension_of",
"@type": "@id"
},
- "currency_of": {
- "@id": "crm:P180i_was_currency_of",
+ "condition": {
+ "@id": "crm:P44_has_condition",
"@type": "@id",
"@container": "@set"
},
- "current_custodian": {
- "@id": "crm:P50_has_current_keeper",
+ "condition_of": {
+ "@id": "crm:P44i_is_condition_of",
"@type": "@id",
"@container": "@set"
},
- "current_custodian_of": {
- "@id": "crm:P50i_is_current_keeper_of",
+ "made_of": {
+ "@id": "crm:P45_consists_of",
"@type": "@id",
"@container": "@set"
},
- "current_keeper": {
- "@id": "crm:P50_has_current_keeper",
+ "incorporated_in": {
+ "@id": "crm:P45i_is_incorporated_in",
"@type": "@id",
"@container": "@set"
},
- "current_keeper_of": {
- "@id": "crm:P50i_is_current_keeper_of",
+ "preferred_identifier": {
+ "@id": "crm:P48_has_preferred_identifier",
"@type": "@id",
"@container": "@set"
},
- "current_location": {
- "@id": "crm:P55_has_current_location",
- "@type": "@id"
+ "preferred_identifier_of": {
+ "@id": "crm:P48i_is_preferred_identifier_of",
+ "@type": "@id",
+ "@container": "@set"
},
- "current_or_former_curator": {
- "@id": "crm:P109_has_current_or_former_curator",
+ "former_or_current_keeper": {
+ "@id": "crm:P49_has_former_or_current_keeper",
"@type": "@id",
"@container": "@set"
},
- "current_or_former_curator_of": {
- "@id": "crm:P109i_is_current_or_former_curator_of",
+ "former_or_current_keeper_of": {
+ "@id": "crm:P49i_is_former_or_current_keeper_of",
"@type": "@id",
"@container": "@set"
},
- "current_or_former_residence_of": {
- "@id": "crm:P74i_is_current_or_former_residence_of",
+ "current_custodian": {
+ "@id": "crm:P50_has_current_keeper",
+ "@type": "@id",
+ "@container": "@set"
+ },
+ "current_custodian_of": {
+ "@id": "crm:P50i_is_current_keeper_of",
+ "@type": "@id",
+ "@container": "@set"
+ },
+ "former_or_current_owner": {
+ "@id": "crm:P51_has_former_or_current_owner",
+ "@type": "@id",
+ "@container": "@set"
+ },
+ "former_or_current_owner_of": {
+ "@id": "crm:P51i_is_former_or_current_owner_of",
"@type": "@id",
"@container": "@set"
},
@@ -1576,12 +1564,13 @@
"@type": "@id",
"@container": "@set"
},
- "current_permanent_custodian": {
- "@id": "la:current_permanent_custodian",
- "@type": "@id"
+ "former_or_current_location": {
+ "@id": "crm:P53_has_former_or_current_location",
+ "@type": "@id",
+ "@container": "@set"
},
- "current_permanent_custodian_of": {
- "@id": "la:current_permanent_custodian_of",
+ "former_or_current_location_of": {
+ "@id": "crm:P53i_is_former_or_current_location_of",
"@type": "@id",
"@container": "@set"
},
@@ -1595,45 +1584,39 @@
"@type": "@id",
"@container": "@set"
},
+ "current_location": {
+ "@id": "crm:P55_has_current_location",
+ "@type": "@id"
+ },
"currently_holds": {
"@id": "crm:P55i_currently_holds",
"@type": "@id",
"@container": "@set"
},
- "custody_transferred_through": {
- "@id": "crm:P30i_custody_transferred_through",
- "@type": "@id",
- "@container": "@set"
- },
- "deassigned": {
- "@id": "crm:P38_deassigned",
- "@type": "@id",
- "@container": "@set"
- },
- "deassigned_by": {
- "@id": "crm:P38i_was_deassigned_by",
+ "bears": {
+ "@id": "crm:P56_bears_feature",
"@type": "@id",
"@container": "@set"
},
- "death_of": {
- "@id": "crm:P100_was_death_of",
+ "found_on": {
+ "@id": "crm:P56i_is_found_on",
"@type": "@id"
},
- "defined_by": {
- "@id": "crm:P168_place_is_defined_by"
+ "number_of_parts": {
+ "@id": "crm:P57_has_number_of_parts"
},
- "defines_section": {
- "@id": "crm:P58i_defines_section",
+ "section": {
+ "@id": "crm:P59_has_section",
"@type": "@id",
"@container": "@set"
},
- "defines_typical_parts_of": {
- "@id": "crm:P150_defines_typical_parts_of",
+ "located_on_or_within": {
+ "@id": "crm:P59i_is_located_on_or_within",
"@type": "@id",
"@container": "@set"
},
- "defines_typical_wholes_for": {
- "@id": "crm:P150i_defines_typical_wholes_for",
+ "depicts": {
+ "@id": "crm:P62_depicts",
"@type": "@id",
"@container": "@set"
},
@@ -1642,566 +1625,575 @@
"@type": "@id",
"@container": "@set"
},
- "depicts": {
- "@id": "crm:P62_depicts",
+ "shows": {
+ "@id": "crm:P65_shows_visual_item",
"@type": "@id",
"@container": "@set"
},
- "destination_of": {
- "@id": "crm:P26i_was_destination_of",
+ "shown_by": {
+ "@id": "crm:P65i_is_shown_by",
"@type": "@id",
"@container": "@set"
},
- "destroyed": {
- "@id": "crm:P13_destroyed",
- "@type": "@id"
- },
- "destroyed_by": {
- "@id": "crm:P13i_was_destroyed_by",
- "@type": "@id"
- },
- "died": {
- "@id": "crm:P100i_died_in",
- "@type": "@id"
- },
- "digitally_available_via": {
- "@id": "la:digitally_available_via",
+ "refers_to": {
+ "@id": "crm:P67_refers_to",
"@type": "@id",
"@container": "@set"
},
- "digitally_carried_by": {
- "@id": "la:digitally_carried_by",
+ "referred_to_by": {
+ "@id": "crm:P67i_is_referred_to_by",
"@type": "@id",
"@container": "@set"
},
- "digitally_carries": {
- "@id": "la:digitally_carries",
+ "foresees_use_of": {
+ "@id": "crm:P68_foresees_use_of",
"@type": "@id",
"@container": "@set"
},
- "digitally_makes_available": {
- "@id": "la:digitally_makes_available",
+ "use_foreseen_by": {
+ "@id": "crm:P68i_use_foreseen_by",
"@type": "@id",
"@container": "@set"
},
- "digitally_shown_by": {
- "@id": "la:digitally_shown_by",
+ "associated_with": {
+ "@id": "crm:P69_is_associated_with",
"@type": "@id",
"@container": "@set"
},
- "digitally_shows": {
- "@id": "la:digitally_shows",
+ "documents": {
+ "@id": "crm:P70_documents",
"@type": "@id",
"@container": "@set"
},
- "dimension": {
- "@id": "crm:P43_has_dimension",
+ "documented_in": {
+ "@id": "crm:P70i_is_documented_in",
"@type": "@id",
"@container": "@set"
},
- "dimension_of": {
- "@id": "crm:P43i_is_dimension_of",
- "@type": "@id"
- },
- "diminished": {
- "@id": "crm:P112_diminished",
+ "lists": {
+ "@id": "crm:P71_lists",
"@type": "@id",
"@container": "@set"
},
- "diminished_by": {
- "@id": "crm:P112i_was_diminished_by",
+ "listed_in": {
+ "@id": "crm:P71i_is_listed_in",
"@type": "@id",
"@container": "@set"
},
- "dissolved": {
- "@id": "crm:P99_dissolved",
- "@type": "@id"
- },
- "dissolved_by": {
- "@id": "crm:P99i_was_dissolved_by",
- "@type": "@id"
- },
- "distinct_from": {
- "@id": "crm:P133_is_separated_from",
+ "language": {
+ "@id": "crm:P72_has_language",
"@type": "@id",
"@container": "@set"
},
- "documented_in": {
- "@id": "crm:P70i_is_documented_in",
+ "language_of": {
+ "@id": "crm:P72i_is_language_of",
"@type": "@id",
"@container": "@set"
},
- "documents": {
- "@id": "crm:P70_documents",
+ "translation": {
+ "@id": "crm:P73_has_translation",
"@type": "@id",
"@container": "@set"
},
- "duration": {
- "@id": "crm:P191_had_duration",
- "@type": "@id"
+ "translation_of": {
+ "@id": "crm:P73i_is_translation_of",
+ "@type": "@id",
+ "@container": "@set"
},
- "duration_of": {
- "@id": "crm:P191i_was_duration_of",
- "@type": "@id"
+ "residence": {
+ "@id": "crm:P74_has_current_or_former_residence",
+ "@type": "@id",
+ "@container": "@set"
},
- "during": {
- "@id": "crm:P164_during",
+ "current_or_former_residence_of": {
+ "@id": "crm:P74i_is_current_or_former_residence_of",
"@type": "@id",
"@container": "@set"
},
- "employed": {
- "@id": "crm:P126_employed",
+ "possesses": {
+ "@id": "crm:P75_possesses",
"@type": "@id",
"@container": "@set"
},
- "employed_in": {
- "@id": "crm:P126i_was_employed_in",
+ "possessed_by": {
+ "@id": "crm:P75i_is_possessed_by",
"@type": "@id",
"@container": "@set"
},
- "encountered": {
- "@id": "sci:O19_has_found_object",
+ "contact_point": {
+ "@id": "crm:P76_has_contact_point",
"@type": "@id",
"@container": "@set"
},
- "encountered_by": {
- "@id": "sci:O19i_was_object_found_by",
+ "provides_access_to": {
+ "@id": "crm:P76i_provides_access_to",
"@type": "@id",
"@container": "@set"
},
+ "beginning_is_qualified_by": {
+ "@id": "crm:P79_beginning_is_qualified_by"
+ },
"end_is_qualified_by": {
"@id": "crm:P80_end_is_qualified_by"
},
- "end_of_the_begin": {
- "@id": "crm:P81a_end_of_the_begin",
- "@type": "xsd:dateTime"
+ "ongoing_throughout": {
+ "@id": "crm:P81_ongoing_throughout"
},
- "end_of_the_end": {
- "@id": "crm:P82b_end_of_the_end",
- "@type": "xsd:dateTime"
+ "at_some_time_within": {
+ "@id": "crm:P82_at_some_time_within"
},
- "ends_after_or_with_the_start_of": {
- "@id": "crm:P173i_ends_after_or_with_the_start_of",
- "@type": "@id"
+ "value": {
+ "@id": "crm:P90_has_value"
},
- "ends_after_the_end_of": {
- "@id": "crm:P185i_ends_after_the_end_of",
+ "unit": {
+ "@id": "crm:P91_has_unit",
+ "@type": "@id"
+ },
+ "unit_of": {
+ "@id": "crm:P91i_is_unit_of",
"@type": "@id",
"@container": "@set"
},
- "ends_after_the_start_of": {
- "@id": "crm:P174i_ends_after_the_start_of",
- "@type": "@id"
- },
- "ends_before_or_with_the_end_of": {
- "@id": "crm:P184_ends_before_or_with_the_end_of",
+ "brought_into_existence": {
+ "@id": "crm:P92_brought_into_existence",
"@type": "@id",
"@container": "@set"
},
- "ends_before_or_with_the_start_of": {
- "@id": "crm:P182_ends_before_or_with_the_start_of",
+ "brought_into_existence_by": {
+ "@id": "crm:P92i_was_brought_into_existence_by",
+ "@type": "@id"
+ },
+ "took_out_of_existence": {
+ "@id": "crm:P93_took_out_of_existence",
"@type": "@id",
"@container": "@set"
},
- "ends_before_the_end_of": {
- "@id": "crm:P185_ends_before_the_end_of",
+ "taken_out_of_existence_by": {
+ "@id": "crm:P93i_was_taken_out_of_existence_by",
+ "@type": "@id"
+ },
+ "created": {
+ "@id": "crm:P94_has_created",
"@type": "@id",
"@container": "@set"
},
- "ends_before_the_start_of": {
- "@id": "crm:P183_ends_before_the_start_of",
+ "created_by": {
+ "@id": "crm:P94i_was_created_by",
+ "@type": "@id"
+ },
+ "formed": {
+ "@id": "crm:P95_has_formed",
"@type": "@id",
"@container": "@set"
},
- "ends_with_or_after_the_end_of": {
- "@id": "crm:P184i_ends_with_or_after_the_end_of",
+ "formed_by": {
+ "@id": "crm:P95i_was_formed_by",
+ "@type": "@id"
+ },
+ "by_mother": {
+ "@id": "crm:P96_by_mother",
+ "@type": "@id"
+ },
+ "gave_birth": {
+ "@id": "crm:P96i_gave_birth",
"@type": "@id",
"@container": "@set"
},
- "equal_in_time_to": {
- "@id": "crm:P114_is_equal_in_time_to",
+ "from_father": {
+ "@id": "crm:P97_from_father",
"@type": "@id",
"@container": "@set"
},
- "equivalent": {
- "@id": "la:equivalent",
+ "father_for": {
+ "@id": "crm:P97i_was_father_for",
"@type": "@id",
"@container": "@set"
},
- "established_by": {
- "@id": "la:established_by",
+ "brought_into_life": {
+ "@id": "crm:P98_brought_into_life",
"@type": "@id"
},
- "establishes": {
- "@id": "la:establishes",
+ "born": {
+ "@id": "crm:P98i_was_born",
"@type": "@id"
},
- "exact_match": {
- "@id": "skos:exactMatch",
+ "dissolved": {
+ "@id": "crm:P99_dissolved",
+ "@type": "@id"
+ },
+ "dissolved_by": {
+ "@id": "crm:P99i_was_dissolved_by",
+ "@type": "@id"
+ },
+ "death_of": {
+ "@id": "crm:P100_was_death_of",
+ "@type": "@id"
+ },
+ "died": {
+ "@id": "crm:P100i_died_in",
+ "@type": "@id"
+ },
+ "general_use": {
+ "@id": "crm:P101_had_as_general_use",
"@type": "@id",
"@container": "@set"
},
- "exemplified_by": {
- "@id": "crm:P137i_is_exemplified_by",
+ "use_of": {
+ "@id": "crm:P101i_was_use_of",
"@type": "@id",
"@container": "@set"
},
- "exemplifies": {
- "@id": "crm:P137_exemplifies",
+ "title": {
+ "@id": "crm:P102_has_title",
"@type": "@id",
"@container": "@set"
},
- "falls_within": {
- "@id": "crm:P10_falls_within",
+ "title_of": {
+ "@id": "crm:P102i_is_title_of",
+ "@type": "@id"
+ },
+ "intended_for": {
+ "@id": "crm:P103_was_intended_for",
"@type": "@id",
"@container": "@set"
},
- "father_for": {
- "@id": "crm:P97i_was_father_for",
+ "intention_of": {
+ "@id": "crm:P103i_was_intention_of",
"@type": "@id",
"@container": "@set"
},
- "features_are_also_found_on": {
- "@id": "crm:P130i_features_are_also_found_on",
+ "subject_to": {
+ "@id": "crm:P104_is_subject_to",
"@type": "@id",
"@container": "@set"
},
- "finished_by": {
- "@id": "crm:P115i_is_finished_by",
+ "applies_to": {
+ "@id": "crm:P104i_applies_to",
"@type": "@id",
"@container": "@set"
},
- "finishes": {
- "@id": "crm:P115_finishes",
+ "right_held_by": {
+ "@id": "crm:P105_right_held_by",
"@type": "@id",
"@container": "@set"
},
- "foresees_use_of": {
- "@id": "crm:P68_foresees_use_of",
+ "right_on": {
+ "@id": "crm:P105i_has_right_on",
"@type": "@id",
"@container": "@set"
},
- "format": {
- "@id": "dc:format"
- },
- "formed": {
- "@id": "crm:P95_has_formed",
+ "produced": {
+ "@id": "crm:P108_has_produced",
"@type": "@id",
"@container": "@set"
},
- "formed_by": {
- "@id": "crm:P95i_was_formed_by",
+ "produced_by": {
+ "@id": "crm:P108i_was_produced_by",
"@type": "@id"
},
- "formed_from": {
- "@id": "crm:P151_was_formed_from",
+ "current_or_former_curator": {
+ "@id": "crm:P109_has_current_or_former_curator",
"@type": "@id",
"@container": "@set"
},
- "former_or_current_keeper": {
- "@id": "crm:P49_has_former_or_current_keeper",
+ "current_or_former_curator_of": {
+ "@id": "crm:P109i_is_current_or_former_curator_of",
"@type": "@id",
"@container": "@set"
},
- "former_or_current_keeper_of": {
- "@id": "crm:P49i_is_former_or_current_keeper_of",
- "@type": "@id",
- "@container": "@set"
+ "augmented": {
+ "@id": "crm:P110_augmented",
+ "@type": "@id"
},
- "former_or_current_location": {
- "@id": "crm:P53_has_former_or_current_location",
+ "augmented_by": {
+ "@id": "crm:P110i_was_augmented_by",
"@type": "@id",
"@container": "@set"
},
- "former_or_current_location_of": {
- "@id": "crm:P53i_is_former_or_current_location_of",
- "@type": "@id",
- "@container": "@set"
+ "added": {
+ "@id": "crm:P111_added",
+ "@type": "@id"
},
- "former_or_current_owner": {
- "@id": "crm:P51_has_former_or_current_owner",
+ "added_by": {
+ "@id": "crm:P111i_was_added_by",
"@type": "@id",
"@container": "@set"
},
- "former_or_current_owner_of": {
- "@id": "crm:P51i_is_former_or_current_owner_of",
+ "diminished": {
+ "@id": "crm:P112_diminished",
+ "@type": "@id"
+ },
+ "diminished_by": {
+ "@id": "crm:P112i_was_diminished_by",
"@type": "@id",
"@container": "@set"
},
- "found_on": {
- "@id": "crm:P56i_is_found_on",
+ "removed": {
+ "@id": "crm:P113_removed",
"@type": "@id"
},
- "from_father": {
- "@id": "crm:P97_from_father",
+ "removed_by": {
+ "@id": "crm:P113i_was_removed_by",
"@type": "@id",
"@container": "@set"
},
- "gained_member_by": {
- "@id": "crm:P144i_gained_member_by",
+ "overlaps_with": {
+ "@id": "crm:P121_overlaps_with",
"@type": "@id",
"@container": "@set"
},
- "gave_birth": {
- "@id": "crm:P96i_gave_birth",
+ "borders_with": {
+ "@id": "crm:P122_borders_with",
"@type": "@id",
"@container": "@set"
},
- "general_purpose": {
- "@id": "crm:P21_had_general_purpose",
+ "resulted_in": {
+ "@id": "crm:P123_resulted_in",
"@type": "@id",
"@container": "@set"
},
- "general_use": {
- "@id": "crm:P101_had_as_general_use",
+ "resulted_from": {
+ "@id": "crm:P123i_resulted_from",
"@type": "@id",
"@container": "@set"
},
- "has_phase": {
- "@id": "la:has_phase",
+ "transformed": {
+ "@id": "crm:P124_transformed",
"@type": "@id",
"@container": "@set"
},
- "identified": {
- "@id": "crm:P35_has_identified",
+ "transformed_by": {
+ "@id": "crm:P124i_was_transformed_by",
"@type": "@id",
"@container": "@set"
},
- "identified_by": {
- "@id": "crm:P1_is_identified_by",
+ "used_object_of_type": {
+ "@id": "crm:P125_used_object_of_type",
"@type": "@id",
"@container": "@set"
},
- "identifier_assigned_by": {
- "@id": "crm:P37i_was_assigned_by",
+ "type_of_object_used_in": {
+ "@id": "crm:P125i_was_type_of_object_used_in",
"@type": "@id",
"@container": "@set"
},
- "identifies": {
- "@id": "crm:P1i_identifies",
- "@type": "@id"
- },
- "includes": {
- "@id": "crm:P117i_includes",
+ "employed": {
+ "@id": "crm:P126_employed",
"@type": "@id",
"@container": "@set"
},
- "incorporated_by": {
- "@id": "crm:P165i_is_incorporated_in",
+ "employed_in": {
+ "@id": "crm:P126i_was_employed_in",
"@type": "@id",
"@container": "@set"
},
- "incorporated_in": {
- "@id": "crm:P45i_is_incorporated_in",
+ "carries": {
+ "@id": "crm:P128_carries",
"@type": "@id",
"@container": "@set"
},
- "incorporates": {
- "@id": "crm:P165_incorporates",
+ "carried_by": {
+ "@id": "crm:P128i_is_carried_by",
"@type": "@id",
"@container": "@set"
},
- "influenced": {
- "@id": "crm:P15i_influenced",
+ "about": {
+ "@id": "crm:P129_is_about",
"@type": "@id",
"@container": "@set"
},
- "influenced_by": {
- "@id": "crm:P15_was_influenced_by",
+ "subject_of": {
+ "@id": "crm:P129i_is_subject_of",
"@type": "@id",
"@container": "@set"
},
- "initiated": {
- "@id": "la:initiated",
+ "shows_features_of": {
+ "@id": "crm:P130_shows_features_of",
"@type": "@id",
"@container": "@set"
},
- "initiated_by": {
- "@id": "la:initiated_by",
+ "features_are_also_found_on": {
+ "@id": "crm:P130i_features_are_also_found_on",
"@type": "@id",
"@container": "@set"
},
- "instance_represented_by": {
- "@id": "la:instance_represented_by",
+ "volume_overlaps_with": {
+ "@id": "crm:P132_overlaps_with",
"@type": "@id",
"@container": "@set"
},
- "intended_for": {
- "@id": "crm:P103_was_intended_for",
+ "distinct_from": {
+ "@id": "crm:P133_is_separated_from",
"@type": "@id",
"@container": "@set"
},
- "intended_use_of": {
- "@id": "crm:P19_was_intended_use_of",
+ "continued": {
+ "@id": "crm:P134_continued",
"@type": "@id",
"@container": "@set"
},
- "intention_of": {
- "@id": "crm:P103i_was_intention_of",
+ "continued_by": {
+ "@id": "crm:P134i_was_continued_by",
"@type": "@id",
"@container": "@set"
},
- "invalidated_by": {
- "@id": "la:invalidated_by",
- "@type": "@id"
- },
- "invalidates": {
- "@id": "la:invalidates",
+ "created_type": {
+ "@id": "crm:P135_created_type",
"@type": "@id",
"@container": "@set"
},
- "involved": {
- "@id": "crm:P12_occurred_in_the_presence_of",
+ "type_created_by": {
+ "@id": "crm:P135i_was_created_by",
"@type": "@id",
"@container": "@set"
},
- "joined": {
- "@id": "crm:P143_joined",
- "@type": "@id"
- },
- "joined_by": {
- "@id": "crm:P143i_was_joined_by",
+ "based_on": {
+ "@id": "crm:P136_was_based_on",
"@type": "@id",
"@container": "@set"
},
- "joined_with": {
- "@id": "crm:P144_joined_with",
- "@type": "@id"
- },
- "language": {
- "@id": "crm:P72_has_language",
+ "supported_type_creation": {
+ "@id": "crm:P136i_supported_type_creation",
"@type": "@id",
"@container": "@set"
},
- "language_of": {
- "@id": "crm:P72i_is_language_of",
+ "exemplifies": {
+ "@id": "crm:P137_exemplifies",
"@type": "@id",
"@container": "@set"
},
- "left_by": {
- "@id": "crm:P145i_left_by",
+ "exemplified_by": {
+ "@id": "crm:P137i_is_exemplified_by",
"@type": "@id",
"@container": "@set"
},
- "listed_in": {
- "@id": "crm:P71i_is_listed_in",
+ "represents": {
+ "@id": "crm:P138_represents",
"@type": "@id",
"@container": "@set"
},
- "lists": {
- "@id": "crm:P71_lists",
+ "representation": {
+ "@id": "crm:P138i_has_representation",
"@type": "@id",
"@container": "@set"
},
- "located_on_or_within": {
- "@id": "crm:P59i_is_located_on_or_within",
+ "alternative": {
+ "@id": "crm:P139_has_alternative_form",
"@type": "@id",
"@container": "@set"
},
- "location_of": {
- "@id": "crm:P7i_witnessed",
+ "assigned_to": {
+ "@id": "crm:P140_assigned_attribute_to",
+ "@type": "@id"
+ },
+ "attributed_by": {
+ "@id": "crm:P140i_was_attributed_by",
"@type": "@id",
"@container": "@set"
},
- "lost_member_by": {
- "@id": "crm:P146i_lost_member_by",
+ "assigned": {
+ "@id": "crm:P141_assigned",
"@type": "@id",
"@container": "@set"
},
- "lower_value_limit": {
- "@id": "crm:P90a_has_lower_value_limit"
- },
- "made_for": {
- "@id": "crm:P19i_was_made_for",
+ "assigned_by": {
+ "@id": "crm:P141i_was_assigned_by",
"@type": "@id",
"@container": "@set"
},
- "made_of": {
- "@id": "crm:P45_consists_of",
+ "used_constituent": {
+ "@id": "crm:P142_used_constituent",
"@type": "@id",
"@container": "@set"
},
- "measured": {
- "@id": "crm:P39_measured",
+ "used_in": {
+ "@id": "crm:P142i_was_used_in",
"@type": "@id",
"@container": "@set"
},
- "measured_by": {
- "@id": "crm:P39i_was_measured_by",
+ "joined": {
+ "@id": "crm:P143_joined",
+ "@type": "@id"
+ },
+ "joined_by": {
+ "@id": "crm:P143i_was_joined_by",
"@type": "@id",
"@container": "@set"
},
- "meets_in_time_with": {
- "@id": "crm:P119_meets_in_time_with",
+ "joined_with": {
+ "@id": "crm:P144_joined_with",
+ "@type": "@id"
+ },
+ "gained_member_by": {
+ "@id": "crm:P144i_gained_member_by",
"@type": "@id",
"@container": "@set"
},
- "met_in_time_by": {
- "@id": "crm:P119i_is_met_in_time_by",
+ "separated": {
+ "@id": "crm:P145_separated",
+ "@type": "@id"
+ },
+ "left_by": {
+ "@id": "crm:P145i_left_by",
"@type": "@id",
"@container": "@set"
},
- "modified": {
- "@id": "crm:P31_has_modified",
+ "separated_from": {
+ "@id": "crm:P146_separated_from",
+ "@type": "@id"
+ },
+ "lost_member_by": {
+ "@id": "crm:P146i_lost_member_by",
"@type": "@id",
"@container": "@set"
},
- "modified_by": {
- "@id": "crm:P31i_was_modified_by",
+ "curated": {
+ "@id": "crm:P147_curated",
"@type": "@id",
"@container": "@set"
},
- "motivated": {
- "@id": "crm:P17i_motivated",
+ "curated_by": {
+ "@id": "crm:P147i_was_curated_by",
"@type": "@id",
"@container": "@set"
},
- "motivated_by": {
- "@id": "crm:P17_was_motivated_by",
+ "c_part": {
+ "@id": "crm:P148_has_component",
"@type": "@id",
"@container": "@set"
},
- "moved": {
- "@id": "crm:P25_moved",
+ "c_part_of": {
+ "@id": "crm:P148i_is_component_of",
"@type": "@id",
"@container": "@set"
},
- "moved_by": {
- "@id": "crm:P25i_moved_by",
+ "defines_typical_parts_of": {
+ "@id": "crm:P150_defines_typical_parts_of",
"@type": "@id",
"@container": "@set"
},
- "moved_from": {
- "@id": "crm:P27_moved_from",
- "@type": "@id"
- },
- "moved_to": {
- "@id": "crm:P26_moved_to",
- "@type": "@id"
- },
- "narrower": {
- "@id": "skos:narrower",
+ "defines_typical_wholes_for": {
+ "@id": "crm:P150i_defines_typical_wholes_for",
"@type": "@id",
"@container": "@set"
},
- "note": {
- "@id": "crm:P3_has_note"
- },
- "number_of_parts": {
- "@id": "crm:P57_has_number_of_parts"
+ "formed_from": {
+ "@id": "crm:P151_was_formed_from",
+ "@type": "@id",
+ "@container": "@set"
},
- "observed_dimension": {
- "@id": "crm:P40_observed_dimension",
+ "participated_in_formation": {
+ "@id": "crm:P151i_participated_in",
"@type": "@id",
"@container": "@set"
},
- "observed_in": {
- "@id": "crm:P40i_was_observed_in",
+ "parent": {
+ "@id": "crm:P152_has_parent",
"@type": "@id",
"@container": "@set"
},
- "occupied_by": {
- "@id": "crm:P156i_is_occupied_by",
+ "parent_of": {
+ "@id": "crm:P152i_is_parent_of",
"@type": "@id",
"@container": "@set"
},
@@ -2210,654 +2202,598 @@
"@type": "@id",
"@container": "@set"
},
- "occurs_after": {
- "@id": "crm:P120i_occurs_after",
+ "occupied_by": {
+ "@id": "crm:P156i_is_occupied_by",
"@type": "@id",
"@container": "@set"
},
- "occurs_before": {
- "@id": "crm:P120_occurs_before",
+ "at_rest_relative_to": {
+ "@id": "crm:P157_is_at_rest_relative_to",
"@type": "@id",
"@container": "@set"
},
- "occurs_during": {
- "@id": "crm:P117_occurs_during",
+ "provides_reference_space_for": {
+ "@id": "crm:P157i_provides_reference_space_for",
"@type": "@id",
"@container": "@set"
},
- "ongoing_throughout": {
- "@id": "crm:P81_ongoing_throughout"
- },
- "origin_of": {
- "@id": "crm:P27i_was_origin_of",
+ "temporal_projection": {
+ "@id": "crm:P160_has_temporal_projection",
"@type": "@id",
"@container": "@set"
},
- "overlapped_in_time_by": {
- "@id": "crm:P118i_is_overlapped_in_time_by",
+ "spatial_projection": {
+ "@id": "crm:P161_has_spatial_projection",
"@type": "@id",
"@container": "@set"
},
- "overlaps_in_time_with": {
- "@id": "crm:P118_overlaps_in_time_with",
+ "during": {
+ "@id": "crm:P164_during",
"@type": "@id",
"@container": "@set"
},
- "overlaps_with": {
- "@id": "crm:P121_overlaps_with",
+ "timespan_of_presence": {
+ "@id": "crm:P164i_was_time-span_of",
"@type": "@id",
"@container": "@set"
},
- "paid_amount": {
- "@id": "la:paid_amount",
- "@type": "@id"
- },
- "paid_from": {
- "@id": "la:paid_from",
+ "presence_of": {
+ "@id": "crm:P165_incorporates",
"@type": "@id",
"@container": "@set"
},
- "paid_to": {
- "@id": "la:paid_to",
+ "incorporated_by": {
+ "@id": "crm:P165i_is_incorporated_in",
"@type": "@id",
"@container": "@set"
},
- "parent": {
- "@id": "crm:P152_has_parent",
+ "a_presence_of": {
+ "@id": "crm:P166_was_a_presence_of",
"@type": "@id",
"@container": "@set"
},
- "parent_of": {
- "@id": "crm:P152i_is_parent_of",
+ "presence": {
+ "@id": "crm:P166i_had_presence",
"@type": "@id",
"@container": "@set"
},
- "participant": {
- "@id": "crm:P11_had_participant",
+ "at": {
+ "@id": "crm:P167_at",
"@type": "@id",
"@container": "@set"
},
- "participated_in": {
- "@id": "crm:P11i_participated_in",
+ "place_of": {
+ "@id": "crm:P167i_was_place_of",
"@type": "@id",
"@container": "@set"
},
- "participated_in_formation": {
- "@id": "crm:P151i_participated_in",
- "@type": "@id",
- "@container": "@set"
+ "defined_by": {
+ "@id": "crm:P168_place_is_defined_by"
},
- "phase_of": {
- "@id": "la:phase_of",
- "@type": "@id"
+ "spacetime_volume_is_defined_by": {
+ "@id": "crm:P169i_spacetime_volume_is_defined_by"
},
- "place_of": {
- "@id": "crm:P167i_was_place_of",
+ "time_is_defined_by": {
+ "@id": "crm:P170i_time_is_defined_by"
+ },
+ "at_some_place_within": {
+ "@id": "crm:P171_at_some_place_within"
+ },
+ "spatially_contains": {
+ "@id": "crm:P172_contains"
+ },
+ "starts_before_or_with_the_end_of": {
+ "@id": "crm:P173_starts_before_or_with_the_end_of",
"@type": "@id",
"@container": "@set"
},
- "possessed_by": {
- "@id": "crm:P75i_is_possessed_by",
+ "ends_after_or_with_the_start_of": {
+ "@id": "crm:P173i_ends_after_or_with_the_start_of",
"@type": "@id",
"@container": "@set"
},
- "possesses": {
- "@id": "crm:P75_possesses",
+ "starts_before_the_end_of": {
+ "@id": "crm:P174_starts_before_the_end_of",
"@type": "@id",
"@container": "@set"
},
- "preferred_identifier": {
- "@id": "crm:P48_has_preferred_identifier",
+ "ends_after_the_start_of": {
+ "@id": "crm:P174i_ends_after_the_start_of",
"@type": "@id",
"@container": "@set"
},
- "preferred_identifier_of": {
- "@id": "crm:P48i_is_preferred_identifier_of",
+ "starts_before_or_with_the_start_of": {
+ "@id": "crm:P175_starts_before_or_with_the_start_of",
"@type": "@id",
"@container": "@set"
},
- "presence": {
- "@id": "crm:P166i_had_presence",
+ "starts_with_or_after_the_start_of": {
+ "@id": "crm:P175i_starts_with_or_after_the_start_of",
"@type": "@id",
"@container": "@set"
},
- "present_at": {
- "@id": "crm:P12i_was_present_at",
+ "starts_before_the_start_of": {
+ "@id": "crm:P176_starts_before_the_start_of",
"@type": "@id",
"@container": "@set"
},
- "produced": {
- "@id": "crm:P108_has_produced",
+ "starts_after_the_start_of": {
+ "@id": "crm:P176i_starts_after_the_start_of",
"@type": "@id",
"@container": "@set"
},
- "produced_by": {
- "@id": "crm:P108i_was_produced_by",
- "@type": "@id"
- },
- "produced_thing_of_product_type": {
- "@id": "crm:P186_produced_thing_of_product_type",
- "@type": "@id"
+ "assigned_property": {
+ "@id": "crm:P177_assigned_property_of_type",
+ "@type": "@vocab"
},
- "production_plan": {
- "@id": "crm:P187_has_production_plan",
- "@type": "@id"
+ "sales_price": {
+ "@id": "crm:P179_had_sales_price",
+ "@type": "@id",
+ "@container": "@set"
},
- "production_plan_for": {
- "@id": "crm:P187i_is_production_plan_for",
- "@type": "@id"
+ "sales_price_of": {
+ "@id": "crm:P179i_was_sales_price_of",
+ "@type": "@id",
+ "@container": "@set"
},
- "production_tool_for": {
- "@id": "crm:P188i_is_production_tool_for",
+ "currency": {
+ "@id": "crm:P180_has_currency",
"@type": "@id"
},
- "property_classified_as": {
- "@id": "la:property_classified_as",
+ "currency_of": {
+ "@id": "crm:P180i_was_currency_of",
"@type": "@id",
"@container": "@set"
},
- "provides_access_to": {
- "@id": "crm:P76i_provides_access_to",
+ "ends_before_or_with_the_start_of": {
+ "@id": "crm:P182_ends_before_or_with_the_start_of",
"@type": "@id",
"@container": "@set"
},
- "provides_reference_space_for": {
- "@id": "crm:P157i_provides_reference_space_for",
+ "starts_after_or_with_the_end_of": {
+ "@id": "crm:P182i_starts_after_or_with_the_end_of",
"@type": "@id",
"@container": "@set"
},
- "purpose_of": {
- "@id": "crm:P21i_was_purpose_of",
+ "ends_before_the_start_of": {
+ "@id": "crm:P183_ends_before_the_start_of",
"@type": "@id",
"@container": "@set"
},
- "referred_to_by": {
- "@id": "crm:P67i_is_referred_to_by",
+ "starts_after_the_end_of": {
+ "@id": "crm:P183i_starts_after_the_end_of",
"@type": "@id",
"@container": "@set"
},
- "refers_to": {
- "@id": "crm:P67_refers_to",
+ "ends_before_or_with_the_end_of": {
+ "@id": "crm:P184_ends_before_or_with_the_end_of",
"@type": "@id",
"@container": "@set"
},
- "related_entity": {
- "@id": "la:related_entity",
- "@type": "@id"
- },
- "related_entity_of": {
- "@id": "la:related_entity_of",
+ "ends_with_or_after_the_end_of": {
+ "@id": "crm:P184i_ends_with_or_after_the_end_of",
"@type": "@id",
"@container": "@set"
},
- "related_from_by": {
- "@id": "la:related_from_by",
+ "ends_before_the_end_of": {
+ "@id": "crm:P185_ends_before_the_end_of",
"@type": "@id",
"@container": "@set"
},
- "relates_from": {
- "@id": "la:relates_from",
- "@type": "@id"
- },
- "related_to_by": {
- "@id": "la:related_to_by",
+ "ends_after_the_end_of": {
+ "@id": "crm:P185i_ends_after_the_end_of",
"@type": "@id",
"@container": "@set"
},
- "relates_to": {
- "@id": "la:relates_to",
+ "produced_thing_of_product_type": {
+ "@id": "crm:P186_produced_thing_of_product_type",
"@type": "@id"
},
- "relationship": {
- "@id": "la:relationship",
+ "type_produced_by": {
+ "@id": "crm:P186i_is_produced_by",
"@type": "@id"
},
- "removed": {
- "@id": "crm:P113_removed",
- "@type": "@id",
- "@container": "@set"
- },
- "removed_by": {
- "@id": "crm:P113i_was_removed_by",
- "@type": "@id",
- "@container": "@set"
+ "production_plan": {
+ "@id": "crm:P187_has_production_plan",
+ "@type": "@id"
},
- "removed_from": {
- "@id": "la:removed_from",
+ "production_plan_for": {
+ "@id": "crm:P187i_is_production_plan_for",
"@type": "@id"
},
- "removed_from_by": {
- "@id": "la:removed_from_by",
- "@type": "@id",
- "@container": "@set"
+ "requires_production_tool": {
+ "@id": "crm:P188_requires_production_tool",
+ "@type": "@id"
},
- "removed_member": {
- "@id": "la:removed_member",
+ "production_tool_for": {
+ "@id": "crm:P188i_is_production_tool_for",
"@type": "@id"
},
- "removed_member_by": {
- "@id": "la:removed_member_by",
+ "approximates": {
+ "@id": "crm:P189_approximates",
"@type": "@id",
"@container": "@set"
},
- "representation": {
- "@id": "crm:P138i_has_representation",
+ "approximated_by": {
+ "@id": "crm:P189i_is_approximated_by",
"@type": "@id",
"@container": "@set"
},
- "represents": {
- "@id": "crm:P138_represents",
- "@type": "@id",
- "@container": "@set"
+ "content": {
+ "@id": "crm:P190_has_symbolic_content"
},
- "represents_instance_of_type": {
- "@id": "la:represents_instance_of_type",
- "@type": "@id",
- "@container": "@set"
+ "duration": {
+ "@id": "crm:P191_had_duration",
+ "@type": "@id"
},
- "requires_production_tool": {
- "@id": "crm:P188_requires_production_tool",
+ "duration_of": {
+ "@id": "crm:P191i_was_duration_of",
"@type": "@id"
},
- "residence": {
- "@id": "crm:P74_has_current_or_former_residence",
+ "presence_of_thing": {
+ "@id": "crm:P195_was_a_presence_of",
"@type": "@id",
"@container": "@set"
},
- "resulted_from": {
- "@id": "crm:P123i_resulted_from",
+ "thing_presence": {
+ "@id": "crm:P195i_had_presence",
"@type": "@id",
"@container": "@set"
},
- "resulted_in": {
- "@id": "crm:P123_resulted_in",
+ "defines": {
+ "@id": "crm:P196_defines",
"@type": "@id",
"@container": "@set"
},
- "right_held_by": {
- "@id": "crm:P105_right_held_by",
+ "thing_defined_by": {
+ "@id": "crm:P196i_is_defined_by",
"@type": "@id",
"@container": "@set"
},
- "right_on": {
- "@id": "crm:P105i_has_right_on",
+ "covered_parts_of": {
+ "@id": "crm:P197_covered_parts_of",
"@type": "@id",
"@container": "@set"
},
- "sales_price": {
- "@id": "crm:P179_had_sales_price",
+ "partially_covered_by": {
+ "@id": "crm:P197i_was_partially_covered_by",
"@type": "@id",
"@container": "@set"
},
- "sales_price_of": {
- "@id": "crm:P179i_was_sales_price_of",
+ "holds_or_supports": {
+ "@id": "crm:P198_holds_or_supports",
"@type": "@id",
"@container": "@set"
},
- "section": {
- "@id": "crm:P59_has_section",
+ "held_or_supported_by": {
+ "@id": "crm:P198i_is_held_or_supported_by",
"@type": "@id",
"@container": "@set"
},
- "section_definition": {
- "@id": "crm:P58_has_section_definition",
+ "represents_instance_of_type": {
+ "@id": "crm:P199_represents_instance_of_type",
"@type": "@id",
"@container": "@set"
},
- "see_also": {
- "@id": "rdfs:seeAlso",
+ "instance_represented_by": {
+ "@id": "crm:P199i_has_instance_represented_by",
"@type": "@id",
"@container": "@set"
},
- "separated": {
- "@id": "crm:P145_separated",
- "@type": "@id"
+ "end_of_the_begin": {
+ "@id": "crm:P81a_end_of_the_begin",
+ "@type": "xsd:dateTime"
},
- "separated_from": {
- "@id": "crm:P146_separated_from",
- "@type": "@id"
+ "begin_of_the_end": {
+ "@id": "crm:P81b_begin_of_the_end",
+ "@type": "xsd:dateTime"
},
- "shown_by": {
- "@id": "crm:P65i_is_shown_by",
- "@type": "@id",
- "@container": "@set"
+ "begin_of_the_begin": {
+ "@id": "crm:P82a_begin_of_the_begin",
+ "@type": "xsd:dateTime"
},
- "shows": {
- "@id": "crm:P65_shows_visual_item",
- "@type": "@id",
- "@container": "@set"
+ "end_of_the_end": {
+ "@id": "crm:P82b_end_of_the_end",
+ "@type": "xsd:dateTime"
},
- "shows_features_of": {
- "@id": "crm:P130_shows_features_of",
- "@type": "@id",
- "@container": "@set"
+ "lower_value_limit": {
+ "@id": "crm:P90a_has_lower_value_limit"
},
- "spacetime_volume_is_defined_by": {
- "@id": "crm:P169i_spacetime_volume_is_defined_by"
+ "upper_value_limit": {
+ "@id": "crm:P90b_has_upper_value_limit"
},
- "spatial_projection": {
- "@id": "crm:P161_has_spatial_projection",
- "@type": "@id",
- "@container": "@set"
+ "DigitalObject": {
+ "@id": "dig:D1_Digital_Object"
},
- "spatially_contains": {
- "@id": "crm:P172_contains"
+ "Encounter": {
+ "@id": "sci:S19_Encounter_Event"
},
- "specific_purpose": {
- "@id": "crm:P20_had_specific_purpose",
+ "caused": {
+ "@id": "sci:O13_triggers",
"@type": "@id",
"@container": "@set"
},
- "specific_purpose_of": {
- "@id": "crm:P20i_was_purpose_of",
+ "caused_by": {
+ "@id": "sci:O13i_is_triggered_by",
"@type": "@id",
"@container": "@set"
},
- "specific_technique": {
- "@id": "crm:P33_used_specific_technique",
+ "encountered": {
+ "@id": "sci:O19_encountered_object",
"@type": "@id",
"@container": "@set"
},
- "started_by": {
- "@id": "crm:P116i_is_started_by",
+ "encountered_by": {
+ "@id": "sci:O19i_was_object_encountered_at",
"@type": "@id",
"@container": "@set"
},
- "starts": {
- "@id": "crm:P116_starts",
+ "AP25_occurs_during": {
+ "@id": "archaeo:AP25_occurs_during",
"@type": "@id",
"@container": "@set"
},
- "starts_after_or_with_the_end_of": {
- "@id": "crm:P182i_starts_after_or_with_the_end_of",
- "@type": "@id",
- "@container": "@set"
+ "_label": {
+ "@id": "rdfs:label"
},
- "starts_after_the_end_of": {
- "@id": "crm:P183i_starts_after_the_end_of",
+ "exact_match": {
+ "@id": "skos:exactMatch",
"@type": "@id",
"@container": "@set"
},
- "starts_after_the_start_of": {
- "@id": "crm:P176i_starts_after_the_start_of",
- "@type": "@id"
- },
- "starts_before_or_with_the_end_of": {
- "@id": "crm:P173_starts_before_or_with_the_end_of",
- "@type": "@id"
- },
- "starts_before_or_with_the_start_of": {
- "@id": "crm:P175_starts_before_or_with_the_start_of",
- "@type": "@id"
- },
- "starts_before_the_end_of": {
- "@id": "crm:P174_starts_before_the_end_of",
- "@type": "@id"
- },
- "starts_before_the_start_of": {
- "@id": "crm:P176_starts_before_the_start_of",
- "@type": "@id"
- },
- "starts_with_or_after_the_start_of": {
- "@id": "crm:P175i_starts_with_or_after_the_start_of",
- "@type": "@id"
- },
- "subState_of": {
- "@id": "crm:P5i_forms_part_of",
+ "close_match": {
+ "@id": "skos:closeMatch",
"@type": "@id",
"@container": "@set"
},
- "subject_of": {
- "@id": "crm:P129i_is_subject_of",
+ "narrower": {
+ "@id": "skos:narrower",
"@type": "@id",
"@container": "@set"
},
- "subject_to": {
- "@id": "crm:P104_is_subject_to",
+ "broader": {
+ "@id": "skos:broader",
"@type": "@id",
"@container": "@set"
},
- "supported_type_creation": {
- "@id": "crm:P136i_supported_type_creation",
+ "hasTopConcept": {
+ "@id": "skos:hasTopConcept",
"@type": "@id",
"@container": "@set"
},
- "surrendered_custody_through": {
- "@id": "crm:P28i_surrendered_custody_through",
+ "topConceptOf": {
+ "@id": "skos:topConceptOf",
"@type": "@id",
"@container": "@set"
},
- "surrendered_title_through": {
- "@id": "crm:P23i_surrendered_title_through",
+ "inScheme": {
+ "@id": "skos:inScheme",
"@type": "@id",
"@container": "@set"
},
- "taken_out_of_existence_by": {
- "@id": "crm:P93i_was_taken_out_of_existence_by",
- "@type": "@id"
- },
- "technique": {
- "@id": "crm:P32_used_general_technique",
+ "see_also": {
+ "@id": "rdfs:seeAlso",
"@type": "@id",
"@container": "@set"
},
- "technique_of": {
- "@id": "crm:P32i_was_technique_of",
+ "conforms_to": {
+ "@id": "dcterms:conformsTo",
"@type": "@id",
"@container": "@set"
},
- "temporal_projection": {
- "@id": "crm:P160_has_temporal_projection",
- "@type": "@id",
- "@container": "@set"
+ "format": {
+ "@id": "dc:format"
},
- "terminated": {
- "@id": "la:terminated",
- "@type": "@id",
- "@container": "@set"
+ "Payment": {
+ "@id": "la:Payment",
+ "@context": {
+ "part": {
+ "@id": "crm:P9_consists_of",
+ "@type": "@id",
+ "@container": "@set"
+ },
+ "part_of": {
+ "@id": "crm:P9i_forms_part_of",
+ "@type": "@id",
+ "@container": "@set"
+ },
+ "member_of": {
+ "@id": "la:member_of",
+ "@type": "@id",
+ "@container": "@set"
+ }
+ }
},
- "terminated_by": {
- "@id": "la:terminated_by",
- "@type": "@id",
- "@container": "@set"
+ "RightAcquisition": {
+ "@id": "la:RightAcquisition"
},
- "time_is_defined_by": {
- "@id": "crm:P170i_time_is_defined_by"
+ "Phase": {
+ "@id": "la:Phase"
},
- "timespan": {
- "@id": "crm:P4_has_time-span",
- "@type": "@id"
+ "Set": {
+ "@id": "la:Set",
+ "@context": {
+ "member": {
+ "@id": "la:has_member",
+ "@type": "@id",
+ "@container": "@set"
+ },
+ "member_of": {
+ "@id": "la:member_of",
+ "@type": "@id",
+ "@container": "@set"
+ }
+ }
},
- "timespan_of": {
- "@id": "crm:P4i_is_time-span_of",
- "@type": "@id",
- "@container": "@set"
+ "Addition": {
+ "@id": "la:Addition"
},
- "timespan_of_presence": {
- "@id": "crm:P164i_was_time-span_of",
- "@type": "@id",
- "@container": "@set"
+ "Removal": {
+ "@id": "la:Removal"
},
- "title": {
- "@id": "crm:P102_has_title",
+ "DigitalService": {
+ "@id": "la:DigitalService"
+ },
+ "property_classified_as": {
+ "@id": "la:property_classified_as",
"@type": "@id",
"@container": "@set"
},
- "title_of": {
- "@id": "crm:P102i_is_title_of",
+ "current_permanent_custodian": {
+ "@id": "la:current_permanent_custodian",
"@type": "@id"
},
- "took_out_of_existence": {
- "@id": "crm:P93_took_out_of_existence",
+ "current_permanent_custodian_of": {
+ "@id": "la:current_permanent_custodian_of",
"@type": "@id",
"@container": "@set"
},
- "took_place_at": {
- "@id": "crm:P7_took_place_at",
+ "equivalent": {
+ "@id": "la:equivalent",
"@type": "@id",
"@container": "@set"
},
- "took_place_on_or_within": {
- "@id": "crm:P8_took_place_on_or_within",
- "@type": "@id",
- "@container": "@set"
+ "paid_amount": {
+ "@id": "la:paid_amount",
+ "@type": "@id"
},
- "transferred_custody_from": {
- "@id": "crm:P28_custody_surrendered_by",
+ "paid_from": {
+ "@id": "la:paid_from",
"@type": "@id",
"@container": "@set"
},
- "transferred_custody_of": {
- "@id": "crm:P30_transferred_custody_of",
+ "paid_to": {
+ "@id": "la:paid_to",
"@type": "@id",
"@container": "@set"
},
- "transferred_custody_to": {
- "@id": "crm:P29_custody_received_by",
- "@type": "@id",
- "@container": "@set"
+ "establishes": {
+ "@id": "la:establishes",
+ "@type": "@id"
},
- "transferred_title_from": {
- "@id": "crm:P23_transferred_title_from",
- "@type": "@id",
- "@container": "@set"
+ "established_by": {
+ "@id": "la:established_by",
+ "@type": "@id"
},
- "transferred_title_of": {
- "@id": "crm:P24_transferred_title_of",
+ "invalidates": {
+ "@id": "la:invalidates",
"@type": "@id",
"@container": "@set"
},
- "transferred_title_to": {
- "@id": "crm:P22_transferred_title_to",
- "@type": "@id",
- "@container": "@set"
+ "invalidated_by": {
+ "@id": "la:invalidated_by",
+ "@type": "@id"
},
- "transformed": {
- "@id": "crm:P124_transformed",
+ "initiated": {
+ "@id": "la:initiated",
"@type": "@id",
"@container": "@set"
},
- "transformed_by": {
- "@id": "crm:P124i_was_transformed_by",
+ "initiated_by": {
+ "@id": "la:initiated_by",
"@type": "@id",
"@container": "@set"
},
- "translation": {
- "@id": "crm:P73_has_translation",
+ "terminated": {
+ "@id": "la:terminated",
"@type": "@id",
"@container": "@set"
},
- "translation_of": {
- "@id": "crm:P73i_is_translation_of",
+ "terminated_by": {
+ "@id": "la:terminated_by",
"@type": "@id",
"@container": "@set"
},
- "type_assigned_by": {
- "@id": "crm:P42i_was_assigned_by",
+ "has_phase": {
+ "@id": "la:has_phase",
"@type": "@id",
"@container": "@set"
},
- "type_created_by": {
- "@id": "crm:P135i_was_created_by",
- "@type": "@id",
- "@container": "@set"
+ "phase_of": {
+ "@id": "la:phase_of",
+ "@type": "@id"
},
- "type_of": {
- "@id": "crm:P2i_is_type_of",
- "@type": "@id",
- "@container": "@set"
+ "related_entity": {
+ "@id": "la:related_entity",
+ "@type": "@id"
},
- "type_of_object_used_in": {
- "@id": "crm:P125i_was_type_of_object_used_in",
+ "related_entity_of": {
+ "@id": "la:related_entity_of",
"@type": "@id",
"@container": "@set"
},
- "type_produced_by": {
- "@id": "crm:P186i_is_produced_by",
+ "relationship": {
+ "@id": "la:relationship",
"@type": "@id"
},
- "unit": {
- "@id": "crm:P91_has_unit",
+ "added_to": {
+ "@id": "la:added_to",
"@type": "@id"
},
- "unit_of": {
- "@id": "crm:P91i_is_unit_of",
- "@type": "@id",
- "@container": "@set"
- },
- "upper_value_limit": {
- "@id": "crm:P90b_has_upper_value_limit"
- },
- "use_foreseen_by": {
- "@id": "crm:P68i_use_foreseen_by",
+ "added_to_by": {
+ "@id": "la:added_to_by",
"@type": "@id",
"@container": "@set"
},
- "use_of": {
- "@id": "crm:P101i_was_use_of",
- "@type": "@id",
- "@container": "@set"
+ "added_member": {
+ "@id": "la:added_member",
+ "@type": "@id"
},
- "used_by": {
- "@id": "crm:P33i_was_used_by",
+ "added_member_by": {
+ "@id": "la:added_member_by",
"@type": "@id",
"@container": "@set"
},
- "used_constituent": {
- "@id": "crm:P142_used_constituent",
- "@type": "@id",
- "@container": "@set"
+ "removed_from": {
+ "@id": "la:removed_from",
+ "@type": "@id"
},
- "used_for": {
- "@id": "crm:P16i_was_used_for",
+ "removed_from_by": {
+ "@id": "la:removed_from_by",
"@type": "@id",
"@container": "@set"
},
- "used_in": {
- "@id": "crm:P142i_was_used_in",
- "@type": "@id",
- "@container": "@set"
+ "removed_member": {
+ "@id": "la:removed_member",
+ "@type": "@id"
},
- "used_object_of_type": {
- "@id": "crm:P125_used_object_of_type",
+ "removed_member_by": {
+ "@id": "la:removed_member_by",
"@type": "@id",
"@container": "@set"
},
- "used_specific_object": {
- "@id": "crm:P16_used_specific_object",
+ "digitally_carries": {
+ "@id": "la:digitally_carries",
"@type": "@id",
"@container": "@set"
},
- "value": {
- "@id": "crm:P90_has_value"
- },
- "volume_overlaps_with": {
- "@id": "crm:P132_overlaps_with",
+ "digitally_carried_by": {
+ "@id": "la:digitally_carried_by",
"@type": "@id",
"@container": "@set"
},
- "witnessed": {
- "@id": "crm:P8i_witnessed",
+ "digitally_shows": {
+ "@id": "la:digitally_shows",
"@type": "@id",
"@container": "@set"
},
- "hasTopConcept": {
- "@id": "skos:hasTopConcept",
+ "digitally_shown_by": {
+ "@id": "la:digitally_shown_by",
"@type": "@id",
"@container": "@set"
},
- "inScheme": {
- "@id": "skos:inScheme",
+ "access_point": {
+ "@id": "la:access_point",
"@type": "@id",
"@container": "@set"
},
- "subState": {
- "@id": "crm:P5_consists_of",
+ "digitally_available_via": {
+ "@id": "la:digitally_available_via",
"@type": "@id",
"@container": "@set"
},
- "topConceptOf": {
- "@id": "skos:topConceptOf",
+ "digitally_makes_available": {
+ "@id": "la:digitally_makes_available",
"@type": "@id",
"@container": "@set"
}
diff --git a/cromulent/data/overrides.json b/cromulent/data/overrides.json
index 3555c0e..02efcf7 100644
--- a/cromulent/data/overrides.json
+++ b/cromulent/data/overrides.json
@@ -64,6 +64,11 @@
"P186i": "type_produced_by",
"P168": "defined_by",
+ "P165": "presence_of",
+ "P195": "presence_of_thing",
+ "P195i": "thing_presence",
+ "P196i": "thing_defined_by",
+
"skos:closeMatch": "close_match",
"skos:exactMatch": "exact_match",
"dcterms:conformsTo": "conforms_to",
@@ -73,6 +78,6 @@
"rdfs:label": "_label",
"sci:O13_triggers": "caused",
"sci:O13i_is_triggered_by": "caused_by",
- "sci:O19_has_found_object": "encountered",
- "sci:O19i_was_object_found_by": "encountered_by"
+ "sci:O19_encountered_object": "encountered",
+ "sci:O19i_was_object_encountered_at": "encountered_by"
}
diff --git a/cromulent/extract.py b/cromulent/extract.py
index c7b070f..b60595d 100644
--- a/cromulent/extract.py
+++ b/cromulent/extract.py
@@ -3,6 +3,12 @@
import re
import warnings
from collections import namedtuple
+from contextlib import contextmanager
+
+import locale
+import calendar
+from contextlib import contextmanager, suppress
+from datetime import datetime, timedelta
from cromulent import model, vocab
@@ -408,7 +414,7 @@ def simple_dimensions_cleaner_x2(value):
#mark - Monetary Values
-def extract_monetary_amount(data, add_citations=False, currency_mapping=CURRENCY_MAPPING, source_mapping=None):
+def extract_monetary_amount(data, add_citations=False, currency_mapping=CURRENCY_MAPPING, source_mapping=None, truncate_label_digits=2):
'''
Returns a `MonetaryAmount`, `StartingPrice`, or `EstimatedPrice` object
based on properties of the supplied `data` dict. If no amount or currency
@@ -475,7 +481,10 @@ def extract_monetary_amount(data, add_citations=False, currency_mapping=CURRENCY
if re.search(re.compile(r',\d\d\d'), value):
value = value.replace(',', '')
value = float(value)
- price_amount_label = '{:,}'.format(round(value, 3))
+
+ label_fmt = '{:,.%df}' % truncate_label_digits
+ price_amount_label = label_fmt.format(value)
+
amnt.value = value
except ValueError:
amnt._label = price_amount
@@ -505,52 +514,6 @@ def extract_monetary_amount(data, add_citations=False, currency_mapping=CURRENCY
# Datetime Cleaning (from Getty Pipeline code)
# https://github.com/thegetty/pipeline/blob/master/pipeline/util/cleaners.py
-def ymd_to_datetime(year, month, day, which="begin"):
- if not isinstance(year, int):
- try:
- year = int(year)
- except:
- # print("DATE CLEAN: year is %r; returning None" % year)
- return None
-
- if not isinstance(month, int):
- try:
- month = int(month)
- except:
- # print("DATE CLEAN: month is %r; continuing with %s" % (month, "earliest" if which=="begin" else "latest"))
- month = None
-
- if not isinstance(day, int):
- try:
- day = int(day)
- except:
- day = None
-
- if not month or month > 12 or month < 1:
- if which == "begin":
- month = 1
- else:
- month = 12
-
- maxday = calendar.monthrange(year, month)[1]
- if not day or day > maxday or day < 1:
- if which == "begin":
- day = 1
- else:
- # number of days in month
- day = maxday
-
- ystr = "%04d" % abs(year)
- if year < 0:
- ystr = "-" + ystr
-
- if which == "begin":
- return "%s-%02d-%02dT00:00:00" % (ystr, month, day)
- else:
- return "%s-%02d-%02dT23:59:59" % (ystr, month, day)
-
-
-
def date_parse(value, delim):
# parse a / or - or . date or range
@@ -594,8 +557,6 @@ def date_parse(value, delim):
print("broken / date: %s" % value)
return None
-
-
def date_cleaner(value):
# FORMATS:
@@ -632,7 +593,7 @@ def date_cleaner(value):
# Broken? null it out
return None
- elif len(value) == 4 and value.isdigit():
+ elif len(value) <= 4 and value.isdigit():
# year only
return [datetime(int(value),1,1), datetime(int(value)+1,1,1)]
@@ -640,6 +601,11 @@ def date_cleaner(value):
value = value[2:].strip()
return None
+ elif value.startswith('-') and value[1:].isdigit():
+ # BCE year
+ # These are problematic, as python datetime.datetime() doesn't support them :(
+ return [int(value), int(value)+1]
+
elif value.endswith('s'):
# 1950s
if len(value) == 5 and value[:4].isdigit():
@@ -703,6 +669,7 @@ def date_cleaner(value):
return date_parse(value, '.')
elif value.find('-') > -1:
+ # 0 could be -983 for 983 BCE
return date_parse(value, '-')
elif value.find(';') > -1:
@@ -724,7 +691,7 @@ def date_cleaner(value):
r = [d, d+timedelta(days=maxday)]
return r
- warnings.warn(f'fell through to: {value!r}')
+ warnings.warn('fell through to: {value!r}'.format(value=value))
return None
@contextmanager
diff --git a/cromulent/model.py b/cromulent/model.py
index 6efbd2f..f2f6900 100644
--- a/cromulent/model.py
+++ b/cromulent/model.py
@@ -1,19 +1,24 @@
from __future__ import unicode_literals
-import os, sys, re
+
+import os
+import sys
+import re
import codecs
import inspect
import uuid
import datetime
+import json
+from json import JSONEncoder
+from collections import OrderedDict
+from collections import namedtuple
+from pyld import jsonld
+from rdflib import ConjunctiveGraph
KEY_ORDER_DEFAULT = 10000
LINKED_ART_CONTEXT_URI = "https://linked.art/ns/v1/linked-art.json"
# 2.5 and 2.6 are very out of date. Assume 2.7 or better
-import json
-from collections import OrderedDict, namedtuple
-
-from json import JSONEncoder
try:
STR_TYPES = [str, unicode] #Py2.7
@@ -24,6 +29,27 @@
FILE_STREAM_CLASS = io.TextIOBase
+pyld_proc = jsonld.JsonLdProcessor()
+min_context = {
+ "crm": "http://www.cidoc-crm.org/cidoc-crm/",
+ "sci": "http://www.ics.forth.gr/isl/CRMsci/",
+ "rdf": "http://www.w3.org/1999/02/22-rdf-syntax-ns#",
+ "rdfs": "http://www.w3.org/2000/01/rdf-schema#",
+ "dc": "http://purl.org/dc/elements/1.1/",
+ "dcterms": "http://purl.org/dc/terms/",
+ "schema": "http://schema.org/",
+ "skos": "http://www.w3.org/2004/02/skos/core#",
+ "foaf": "http://xmlns.com/foaf/0.1/",
+ "xsd": "http://www.w3.org/2001/XMLSchema#",
+ "dig": "http://www.ics.forth.gr/isl/CRMdig/",
+ "la": "https://linked.art/ns/terms/",
+ "id": "@id",
+ "type": "@type"
+}
+re_bnodes = re.compile("^_:b([0-9]+) ", re.M)
+re_bnodeo = re.compile("> _:b([0-9]+) <", re.M)
+re_quad = re.compile(" <[^<]+?> .$", re.M)
+
PropInfo = namedtuple("PropInfo", [
'property', # the name of the property, eg 'identified_by'
'predicate', # the name from the ontology, eg 'crm:P1_is_identified_by'
@@ -65,7 +91,6 @@ class ProfileError(MetadataError):
"""Raised when a class or property not in the configured profile is used"""
pass
-
class CromJsonEncoder(JSONEncoder):
def default(self, o):
@@ -75,7 +100,6 @@ def default(self, o):
else:
return JSONEncoder.default(self, o)
-
class CromulentFactory(object):
def __init__(self, base_url="", base_dir="", lang="", full_names=False,
@@ -99,7 +123,9 @@ def __init__(self, base_url="", base_dir="", lang="", full_names=False,
self.allow_highlight = False # Allow the JSON to include a _highlight flag for re-rendering
self.allow_elide = False
- self.auto_id_type = "int-per-segment" # "int", "int-per-type", "int-per-segment", "uuid"
+ self.pair_tree_levels = 0
+
+ self.auto_id_type = "int-per-segment" # "int", "int-per-type", "int-per-segment", "uuid", "uuid-segment"
# self.default_lang = lang # NOT USED
self.filename_extension = ".json" # some people like .jsonld
self.context_uri = context # Might be a list, or a context value as a dict
@@ -280,10 +306,41 @@ def generate_id(self, what, auto_type=None):
slug = self._auto_id_types[t]
elif auto_type == "uuid":
return "urn:uuid:%s" % uuid.uuid4()
+ elif auto_type == "uuid-segment":
+ slug = uuid.uuid4()
else:
raise ConfigurationError("Unknown auto-id type")
- return self.base_url + what.__class__._uri_segment + "/" + str(slug)
+ if what.__class__._uri_segment:
+ seg = what.__class__._uri_segment + "/"
+ else:
+ seg = ""
+
+ return self.base_url + seg + str(slug)
+
+ def find_serializable(self, what):
+
+ if not self.linked_art_boundaries:
+ raise ConfigurationError("Factory doesn't have any boundaries to distinguish between entities")
+
+ found = []
+ props = what.list_my_props()
+ for p in props:
+ if p in ['id', 'type', '_label', 'content', 'value', 'begin_of_the_begin', 'end_of_the_end']:
+ continue
+ val = getattr(what, p)
+ if isinstance(val, ExternalResource):
+ val = [val]
+ if type(val) is list:
+ for v in val:
+ if isinstance(v, ExternalResource):
+ if not v in found and v.id and not v._linked_art_boundary_okay(what, p, v) and set(v.list_my_props()).difference(set(["_label", "id"])):
+ found.append(v)
+ downstream = self.find_serializable(v)
+ for d in downstream:
+ if not d in found:
+ found.append(d)
+ return found
def toJSON(self, what, done=None):
""" Serialize what, making sure of no infinite loops """
@@ -406,40 +463,118 @@ def toHtml(self, what, done=None):
res.append('')
return ''.join(res)
+ def toRDF(self, what, format="nq", bnode_prefix=""):
+ # Format can be: xml, pretty-xml, turtle, n3, nt, trix, trig, nquads
+ # ttl = turtle; nq, n-quads == nquads
+
+ # Need to ensure we generate the full form of predicates
+ # otherwise context processing takes AGES
+ # So set serializer to normal, and full_names to True
+ srlz = self.json_serializer
+ fn = self.full_names
+ self.json_serializer = "normal"
+ self.full_names = True
+ js = self.toJSON(what)
+ # And put them back
+ self.json_serializer = srlz
+ self.full_names = fn
+
+ # Substitute in a minimal context that defines only prefixes
+ js['@context'] = min_context
+ src = {'@id': js['@id'], '@graph':js}
+ data = pyld_proc.to_rdf(src, options={"format": "application/nquads"})
+
+ # Here replace all the bnodes with a unique id
+ # This works so long as PyLD continues with incrementing integer bnode ids
+ if bnode_prefix:
+ data = re_bnodes.subn("_:b{bnode_prefix}_\\1 ".format(bnode_prefix=bnode_prefix), data)[0]
+ data = re_bnodeo.subn("> _:b{bnode_prefix}_\\1 <".format(bnode_prefix=bnode_prefix), data)[0]
+
+ if format in ['nq', 'nquads', 'n-quads', 'application/nquads']:
+ return data
+ elif format in ['nt', 'ntriples', 'n-triples', 'application/ntriples']:
+ data = re_quad.subn(" .", data)[0]
+ return data
+ else:
+ # Need to pass over to rdflib
+ g = ConjunctiveGraph()
+ for (k,v) in min_context.items():
+ if v[0] != "@":
+ g.bind(k, v)
+ g.parse(data=data, format="nquads")
+ out = g.serialize(format=format)
+ if type(out) == bytes:
+ return out.decode('utf-8')
+ else:
+ return out
+
+ def get_filename(self, whatid, extension=""):
+
+ mdb = self.base_url
+ if not whatid.startswith(mdb):
+ raise ConfigurationError("The id of that object is not the base URI (factory.base_url) in the Factory")
+ mdd = self.base_dir
+ if not mdd:
+ raise ConfigurationError("Directory (factory.base_dir) on Factory must be set to generate a file name")
+ fp = whatid[len(mdb):]
+
+ # This will always be /, as it's from the URI
+ bits = fp.split('/')
+ fn = bits[-1]
+ dirs = bits[:-1]
+
+ if self.pair_tree_levels:
+ for d in range(self.pair_tree_levels):
+ if len(fn) > 2*d+1:
+ dirs.append(fn[2*d:2*d+2])
+
+ if len(dirs):
+ mydir = os.path.join(mdd, *dirs)
+ try:
+ os.makedirs(mydir)
+ except OSError:
+ pass
+
+ # Allow passing in an override
+ if extension:
+ fn = fn + extension
+ elif self.filename_extension:
+ fn = fn + self.filename_extension
+ dirs.append(fn)
+ filename = os.path.join(mdd, *dirs)
+ return filename
- def toFile(self, what, compact=True, filename="", done=None):
+ def toFile(self, what, compact=True, filename="", done=None, format=None, bnode_prefix="", extension=""):
"""Write to local file.
- Creates directories as necessary
+ Creates directories as necessary based on URI, if filename is not supplied
"""
if not done:
done = {}
- js = self.toJSON(what, done=done)
- if not filename:
- myid = js['id']
- mdb = self.base_url
- if not myid.startswith(mdb):
- raise ConfigurationError("The id of that object is not the base URI in the Factory")
- mdd = self.base_dir
- if not mdd:
- raise ConfigurationError("Directory on Factory must be set to write to file")
- fp = myid[len(mdb):]
- bits = fp.split('/')
- if len(bits) > 1:
- mydir = os.path.join(mdd, '/'.join(bits[:-1]))
- try:
- os.makedirs(mydir)
- except OSError:
- pass
- if self.filename_extension:
- fp = fp + self.filename_extension
- filename = os.path.join(mdd, fp)
+ if not format:
+ if not filename:
+ filename = self.get_filename(what.id, extension=extension)
+ js = self.toJSON(what, done=done)
+ out = self._buildString(js, compact)
+ else:
+ if not filename:
+ if extension:
+ ext = extension
+ elif format == "pretty-xml":
+ ext = "xml"
+ else:
+ ext = format
+ filename = self.get_filename(what.id, extension=ext)
+ out = self.toRDF(what, format=format, bnode_prefix=bnode_prefix)
fh = open(filename, 'w')
- out = self._buildString(js, compact)
- fh.write(out)
+ try:
+ fh.write(out)
+ except:
+ # Could be 2.x unicode issue
+ fh.write(out.encode('utf-8'))
fh.close()
return out
@@ -522,6 +657,8 @@ def __init__(self, ident=None):
if len(curied) == 2 and curied[0] in self._factory.prefixes:
self.id = ident
self._full_id = self._factory.prefixes[curied[0]] + curied[1]
+ elif not self.__class__._uri_segment:
+ self.id = factory.base_url + ident
else:
self.id = factory.base_url + self.__class__._uri_segment + "/" + ident
elif factory.auto_assign_id:
@@ -644,7 +781,7 @@ def __setattr__(self, which, value):
def _check_prop(self, which, value):
val_props = self._factory.validate_properties
- val_profile = self._factory.validate_profile
+ val_profile = self._factory.validate_profile and getattr(self, '_validate_profile', True)
val_range = self._factory.validate_range
for c in self._classhier:
if which in c._all_properties:
@@ -814,8 +951,6 @@ def _toJSON(self, done, top=None):
if not v or (k[0] == "_" and not k in self._factory.underscore_properties):
del d[k]
else:
-
- # Should we do this at all? Could be outside of our API serialization scope
if isinstance(v, ExternalResource):
if self._factory.linked_art_boundaries and \
not self._linked_art_boundary_okay(top, k, v):
@@ -1009,6 +1144,8 @@ def _toJSON_fast(self, done, top=None):
tbd = []
for (k, v) in kvs:
+ if k[0] == "_" and not k in self._factory.underscore_properties:
+ continue
k = self._property_name_map.get(k, k)
if isinstance(v, ExternalResource):
if self._factory.linked_art_boundaries and \
@@ -1033,6 +1170,8 @@ def _toJSON_fast(self, done, top=None):
# This is already sorted if needed
for (k,v) in kvs:
+ if k[0] == "_" and not k in self._factory.underscore_properties:
+ continue
k = self._property_name_map.get(k, k)
if not v:
pass
@@ -1238,40 +1377,42 @@ def build_class(crmName, parent, vocabData):
# Set up real properties
for p in data['props']:
- name = p['name']
- if not ":" in name:
- name = "crm:%s" % name
- rng = p['range']
- ccname = p['propName']
- if p['inverse']:
- i = p['inverse']
- if i[0] == "P":
- invRdf = "crm:%s" % i
- else:
- invRdf = i
- else:
- invRdf = ""
-
- okay = p['okay']
- if not okay:
- okay = '1'
- okay = int(okay)
- mult = p['multiple']
- if not mult:
- mult = '0'
- mult = int(mult)
-
- # can't guarantee all classes have been built at this stage :(
- c._properties[ccname] = {"rdf": name,
- "rangeStr": rng,
- "inverseRdf": invRdf,
- "okayToUse": okay,
- "multiple": mult}
-
+ ccname, pvalue = _make_property_def(p)
+ c._properties[ccname] = pvalue
+
# Build subclasses
for s in data['subs']:
build_class(s, c, vocabData)
+def _make_property_def(p):
+ name = p['name']
+ if not ":" in name:
+ name = "crm:%s" % name
+ rng = p['range']
+ ccname = p['propName']
+ if p['inverse']:
+ i = p['inverse']
+ if i[0] == "P":
+ invRdf = "crm:%s" % i
+ else:
+ invRdf = i
+ else:
+ invRdf = ""
+ okay = p['okay']
+ if not okay:
+ okay = '1'
+ okay = int(okay)
+ mult = p['multiple']
+ if not mult:
+ mult = '0'
+ mult = int(mult)
+ # can't guarantee all classes have been built at this stage :(
+ return (ccname, {"rdf": name,
+ "rangeStr": rng,
+ "inverseRdf": invRdf,
+ "okayToUse": okay,
+ "multiple": mult})
+
def build_classes(fn=None, topClass=None):
# Default to building our core dataset
diff --git a/cromulent/reader.py b/cromulent/reader.py
index ba0c6a7..62798ce 100644
--- a/cromulent/reader.py
+++ b/cromulent/reader.py
@@ -6,10 +6,26 @@
class Reader(object):
- def __init__(self):
+ def __init__(self, validate_props=True, validate_profile=True):
self.uri_object_map = {}
self.forward_refs = []
self.vocab_props = ['assigned_property']
+ self.vocab_classes = {}
+ self.validate_profile = validate_profile
+ self.validate_props = validate_props
+
+ for cx in dir(vocab):
+ what = getattr(vocab, cx)
+ # crying cat face -- type as a @property returns the function, not the value
+ # when calling it on a class rather than an instance
+ try:
+ mytype = what._classhier[0].__name__
+ except AttributeError:
+ continue
+ # find classes
+ if (cx[0].isupper() and not hasattr(model, cx) and type(what) == type):
+ # class
+ self.vocab_classes[(mytype, what._classification[0].id)] = what
def read(self, data):
if not data:
@@ -37,7 +53,7 @@ def process_forward_refs(self):
if uri in self.uri_object_map:
setattr(what, prop, self.uri_object_map[uri])
else:
- raise NotImplementedError("No class information for %s.%s = %s".format(what, prop, uri))
+ raise NotImplementedError("No class information for %s.%s = %s" % (what, prop, uri))
def construct(self, js):
# pass in json, get back object
@@ -46,16 +62,6 @@ def construct(self, js):
ident = js.get('id', '')
typ = js.get('type', None)
- try:
- del js['id']
- except:
- # blank node
- pass
- try:
- del js['type']
- except:
- # external resource with properties but no class
- pass
if typ == None:
clx = BaseResource
@@ -68,40 +74,32 @@ def construct(self, js):
raise DataError("Resource %s has unknown class %s" % (ident, typ) )
# now check vocab.ext_classes to try and refine
+ trash = None
if 'classified_as' in js:
- trash = None
for c in js['classified_as']:
- i = c['id']
- for cx in dir(vocab):
- what = getattr(vocab, cx)
- # crying cat face -- type as a @property returns the function, not the value
- # when calling it on a class rather than an instance
- try:
- mytype = what._classhier[0].__name__
- except AttributeError:
- continue
- if (cx[0].isupper() and not hasattr(model, cx) and type(what) == type) and \
- (typ is None or mytype == typ) and \
- (i in [x.id for x in what._classification]):
- clx = what
- # Trash the classification
- trash = c
- break
- if trash is not None:
+ i = c.get('id', '')
+ clx2 = self.vocab_classes.get((typ, i), None)
+ if clx2 is not None:
+ clx = clx2
+ trash = c
break
- if trash is not None:
- js['classified_as'].remove(trash)
what = clx(ident=ident)
+ what._validate_profile = self.validate_profile
self.uri_object_map[ident] = what
- propList = what.list_all_props()
+
+ if self.validate_props:
+ propList = what.list_all_props()
# sort data by KOH to minimize chance of bad backrefs
itms = list(js.items())
itms.sort(key=lambda x: factory.key_order_hash.get(x[0], 10000))
for (prop, value) in itms:
- if not prop in propList:
+ if prop in ['id', 'type']:
+ continue
+
+ if self.validate_props and not prop in propList:
raise DataError("Unknown property %s on %s" % (prop, clx.__name__))
# Climb looking for range
@@ -113,6 +111,8 @@ def construct(self, js):
if type(value) != list:
value = [value]
for subvalue in value:
+ if trash is not None and prop == 'classified_as' and subvalue == trash:
+ continue
if rng == str:
setattr(what, prop, subvalue)
elif type(subvalue) == dict or isinstance(subvalue, OrderedDict):
diff --git a/cromulent/vocab.py b/cromulent/vocab.py
index 85cec8c..3936cd2 100644
--- a/cromulent/vocab.py
+++ b/cromulent/vocab.py
@@ -11,7 +11,8 @@
Acquisition, HumanMadeFeature, VisualItem, Set, Birth, Death, \
PropositionalObject, Payment, Creation, Phase, Period, \
Production, Event, DigitalObject, TransferOfCustody, \
- STR_TYPES, factory
+ Move, DigitalService, CRMEntity, \
+ STR_TYPES, factory, ExternalResource
# Add classified_as initialization hack for all resources
def post_init(self, **kw):
@@ -74,9 +75,11 @@ def register_instance(name, data):
"DoiIdentifier": {"parent": Identifier, "id": "300417432", "label": "DOI Identifer"},
"VolumeNumber": {"parent": Identifier, "id": "300265632", "label": "Volume"},
"IssueNumber": {"parent": Identifier, "id": "300312349", "label": "Issue"},
-
+ "CallNumber": {"parent": Identifier, "id": "300311706", "label": "Call Number"},
+ "StockNumber": {"parent": Identifier, "id": "300412177", "label": "Stock Number"},
+
"EmailAddress": {"parent": Identifier, "id":"300435686", "label": "Email Address"},
- "StreetAddress": {"parent": Identifier, "id":"300435687", "label": "Street Address"},
+ "StreetAddress": {"parent": Identifier, "id":"300386983", "label": "Street Address"},
"TelephoneNumber": {"parent": Identifier, "id": "300435688", "label": "Telephone Number"},
"FaxNumber": {"parent": Identifier, "id": "300435689", "label": "Fax Number"},
"StreetNumber": {"parent": Identifier, "id":"300419272", "label": "Street Number"},
@@ -94,7 +97,7 @@ def register_instance(name, data):
"_BriefText": {"parent": LinguisticObject, "id": "300418049", "label":"Brief Text"},
"Note": {"parent": LinguisticObject, "id":"300027200", "label": "Note", "metatype": "brief text"},
- "Description": {"parent": LinguisticObject, "id":"300411780", "label": "Description", "metatype": "brief text"},
+ "Description": {"parent": LinguisticObject, "id":"300435416", "label": "Description", "metatype": "brief text"},
"Abstract": {"parent": LinguisticObject, "id":"300026032", "label": "Abstract", "metatype": "brief text"},
"Citation": {"parent": LinguisticObject, "id":"300311705", "label": "Citation", "metatype": "brief text"},
@@ -106,16 +109,18 @@ def register_instance(name, data):
"ContextStatement": {"parent": LinguisticObject, "id": "300435428", "label": "Historical/Cultural Context", "metatype": "brief text"},
"SourceStatement": {"parent": LinguisticObject, "id": "300404764", "label": "Source Statement", "metatype": "brief text"},
"PropertyStatusStatement": {"parent": LinguisticObject, "id": "300438433", "label": "Property Status Statement", "metatype": "brief text"},
+ "AccessStatement": {"parent": LinguisticObject, "id": "300133046", "label": "Access Statement", "metatype": "brief text"},
"MarkingsStatement": {"parent": LinguisticObject, "id": "300435420", "label": "Markings", "metatype": "brief text"},
"InscriptionStatement": {"parent": LinguisticObject, "id": "300435414", "label": "Inscription", "metatype": "brief text"},
- "SignatureStatement": {"parent": LinguisticObject, "id": "300435415", "label": "Signature", "metatype": "brief text"},
+ "SignatureStatement": {"parent": LinguisticObject, "id": "300028705", "label": "Signature", "metatype": "brief text"},
"WatermarksStatement": {"parent": LinguisticObject, "id": "300435421", "label": "Watermarks", "metatype": "brief text"},
"MaterialStatement": {"parent": LinguisticObject, "id": "300435429", "label": "Material Statement", "metatype": "brief text"},
"PhysicalStatement": {"parent": LinguisticObject, "id": "300435452", "label": "Physical Statement", "metatype": "brief text"},
"DimensionStatement": {"parent": LinguisticObject, "id": "300435430", "label": "Dimension Statement", "metatype": "brief text"},
"CultureStatement": {"parent": LinguisticObject, "id": "300435431", "label": "Culture Statement", "metatype": "brief text"},
"PeriodStatement": {"parent": LinguisticObject, "id": "300435432", "label": "Period Statement", "metatype": "brief text"},
+ "EnvironmentStatement": {"parent": LinguisticObject, "id": "300229535", "label": "Environmental Conditions Statement", "metatype": "brief text"},
"ProductionStatement": {"parent": LinguisticObject, "id": "300435436", "label": "Production Statement", "metatype": "brief text" },
"AcquisitionStatement": {"parent": LinguisticObject, "id": "300435439", "label": "Acquisition Statement", "metatype": "brief text"},
@@ -123,12 +128,14 @@ def register_instance(name, data):
"BibliographyStatement": {"parent": LinguisticObject, "id": "300026497", "label": "Bibliography Statement", "metatype": "brief text"},
"ExhibitionStatement": {"parent": LinguisticObject, "id":"300435424", "label":"Exhibition Statement", "metatype": "brief text"},
"PriceStatement": {"parent": LinguisticObject, "id":"300055694", "label":"Price Statement", "metatype": "brief text"},
+ "ConditionReport": {"parent": LinguisticObject, "id":"300379544", "label":"Condition Statement", "metatype": "brief text"},
"BiographyStatement": {"parent": LinguisticObject, "id":"300435422", "label": "Biography Statement", "metatype": "brief text"},
"EditionStatement": {"parent": LinguisticObject, "id":"300435435", "label": "Edition Statement", "metatype": "brief text"},
"PaginationStatement": {"parent": LinguisticObject, "id":"300435440", "label": "Pagination Statement", "metatype": "brief text"},
"FoliationStatement": {"parent": LinguisticObject, "id":"300435441", "label": "Foliation Statement", "metatype": "brief text"},
"LanguageStatement": {"parent": LinguisticObject, "id": "300435433", "label": "Language Statement", "metatype": "brief text"},
+ "ResearchStatement": {"parent": LinguisticObject, "id": "300265639", "label": "Research Statement", "metatype": "brief text"},
"TranscribedInscription": {"parent": LinguisticObject, "id": "300028702", "label": "Transcribed Inscription", "metatype": "brief text"},
"TranscribedSignature": {"parent": LinguisticObject, "id": "300028705", "label": "Transcribed Signature", "metatype": "brief text"},
@@ -190,6 +197,7 @@ def register_instance(name, data):
"AuctionHouseOrg": {"parent": Group, "id": "300417515", "label": "Auction House (organization)"},
"MuseumOrg": {"parent": Group, "id":"300312281", "label": "Museum"},
+ "Institution": {"parent": Group, "id":"300026004", "label": "Institution"},
"Department": {"parent": Group, "id":"300263534", "label": "Department"},
"School": {"parent": Group, "id":"300404284", "label": "School"},
"Studio": {"parent": Group, "id":"300404275", "label": "Studio"},
@@ -198,6 +206,8 @@ def register_instance(name, data):
"Atelier": {"parent": Group, "id":"300404277", "label": "Atelier"},
"FollowerGroup": {"parent": Group, "id":"300404282", "label": "Follower"},
"PupilGroup": {"parent": Group, "id":"300404279", "label": "Pupil"},
+ "Family": {"parent": Group, "id": "300055474", "label":"Family"},
+ "Organization":{"parent": Group, 'id':'300025948', 'label':"Organization"},
"Nationality": {"parent": Type, "id":"300379842", "label": "Nationality"},
"Gender": {"parent": Type, "id":"300055147", "label": "Gender"},
@@ -206,6 +216,9 @@ def register_instance(name, data):
"Style": {"parent": Type, "id":"300015646", "label": "Style"},
"Auctioneer": {"parent": Person, "id":"300025208", "label": "Auctioneer"}, # is this useful?
+ "Artist": {"parent": Person, "id":"300025103", "label": "Artist"},
+ "Collector": {"parent": Person, "id":"300025234", "label": "Collector"},
+ "Dealer": {"parent": Person, "id":"300025236", "label": "Dealer"},
"AuctionEvent": {"parent": Activity, "id":"300054751", "label": "Auction Event"},
"Auction": {"parent": Activity, "id":"300420001", "label": "Auction of Lot"}, # Individual auction-of-lot
@@ -236,8 +249,10 @@ def register_instance(name, data):
"Managing": {"parent": Activity, "id":"300054277", "label": "Managing"},
"Storing": {"parent": Activity, "id":"300056390", "label": "Storing"},
"Producing": {"parent": Activity, "id":"300054713", "label": "Producing"},
+ "Conserving": {"parent": Activity, "id":"300404519", "label": "Conservation Activity"},
- "ProvenanceEntry": {"parent": Activity, "id":"300055863", "label": "Provenance Entry"},
+ "ProvenanceEntry": {"parent": Activity, "id":"300055863", "label": "Provenance Activity"},
+ "ProvenanceActivity": {"parent": Activity, "id":"300055863", "label": "Provenance Activity"},
"ReturnOfLoan": {"parent": TransferOfCustody, "id":"300438467", "label": "Return of Loan"},
"Theft": {"parent": TransferOfCustody, "id": "300055292", "label": "Theft"},
"Looting": {"parent": TransferOfCustody, "id":"300379554", "label": "Looting"},
@@ -262,9 +277,10 @@ def register_instance(name, data):
"ArchiveGroupSet": {"parent": Set, "id":"300404022", "label": "Archival Grouping"},
"ArchiveSubGroupSet": {"parent": Set, "id":"300404023", "label": "Archival SubGrouping"},
- "PrimaryName": {"parent": Name, "id":"300404670", "label": "Primary Name"},
- "SortName": {"parent": Name, "id":"300404672", "label": "Sorting Name"},
+ "PrimaryName": {"parent": Name, "id":"300404670", "label": "Primary Name"}, # preferred
+ "AlternateName": {"parent": Name, "id":"300264273", "label":"Alternate Name"}, # not preferred
+ "SortName": {"parent": Name, "id":"300404672", "label": "Sorting Name"},
"Title": {"parent": Name, "id":"300195168", "label": "Title"},
"Subtitle": {"parent": Name, "id":"300312006", "label":"Subtitle"},
"DisplayName": {"parent": Name, "id": "300404669", "label": "Display Title"},
@@ -272,6 +288,7 @@ def register_instance(name, data):
"PersonalName": {"parent": Name, "id":"300266386", "label": "Personal Name"},
"AliasName": {"parent": Name, "id": "300404664", "label": "Alias"},
+ "Pseudonym": {"parent": Name, "id": "300404657", "label": "Psueudonym"},
"MaidenName": {"parent": Name, "id": "300404682", "label": "Maiden Name"},
"FormerName": {"parent": Name, "id": "300435719", "label": "Former Name"},
"GivenName": {"parent": Name, "id":"300404651", "label": "Given Name"},
@@ -305,6 +322,7 @@ def register_instance(name, data):
"Map": {"parent": HumanMadeObject, "id": "300028094", "label": "Map", "metatype": "work type"},
"Clothing": {"parent": HumanMadeObject, "id": "300266639", 'label': "Clothing", "metatype": "work type"},
"Furniture": {"parent": HumanMadeObject, "id":"300037680", "label": "Furniture", "metatype": "work type"},
+ "Sample": {"parent": HumanMadeObject, "id":"300028875", "label": "Sample", "metatype": "work type"},
"Architecture": {"parent": HumanMadeObject, "id":"300263552", "label": "Architecture", "metatype": "work type"},
"Armor": {"parent": HumanMadeObject, "id":"300036745", "label": "Armor", "metatype": "work type"},
@@ -333,6 +351,8 @@ def register_instance(name, data):
"SalesCatalog": {"parent": HumanMadeObject,"id":"300026074", "label": "Sales Catalog", "metatype": "work type"},
"LotteryCatalog": {"parent": HumanMadeObject, "id":"300438603", "label": "Lottery Catalog", "metatype": "work type"},
+ "Sample": {"parent": HumanMadeObject, "id": "300028875", "label": "Sample"},
+
"FrontPart": {"parent": HumanMadeObject, "id":"300190703", "label": "Front Part", "metatype": "part type"},
"BackPart": {"parent": HumanMadeObject, "id":"300190692", "label": "Back Part", "metatype": "part type"},
"TopPart": {"parent": HumanMadeObject, "id":"300190710", "label": "Top Part", "metatype": "part type"},
@@ -374,6 +394,8 @@ def register_instance(name, data):
"gelatin silver print": {"parent": Material, "id": "300128695", "label": "gelatin silver print"},
"silver": {"parent": Material, "id": "300011029", "label": "silver"},
"synthetic": {"parent": Type, "id": "xxx", "label": "Synthetic Material"},
+ "hazardous": {"parent": Material, "id": "300138222", "label": "Hazardous Material"},
+ "thread": {"parent": Material, "id": "300014250", "label": "Thread"},
# Measurement Units - lengths, weights, durations
"lignes": {"parent": MeasurementUnit, "id": "300435501", "label": "Paris lines"},
@@ -410,56 +432,64 @@ def register_instance(name, data):
"partsUnit": {"parent": MeasurementUnit, "id": "300404159", "label": "parts"},
# Languages
- "english": {"parent": Language, "id": "300388277", "label": "English"},
- "french": {"parent": Language, "id":"300388306","label": "French"},
- "german": {"parent": Language, "id":"300388344","label": "German"},
- "spanish": {"parent": Language, "id":"300389311","label": "Spanish"},
- "chinese": {"parent": Language, "id":"300388113", "label":"Chinese"},
- "hindi": {"parent": Language, "id":"300388412", "label":"Hindi"},
- "afrikaans": {"parent": Language, "id":"300387782", "label":"Afrikaans"},
- "albanian": {"parent": Language, "id":"300387803", "label":"Albanian"},
- "arabic": {"parent": Language, "id":"300387843", "label":"Arabic"},
- "bulgarian": {"parent": Language, "id":"300388034", "label":"Bulgarian"},
- "bosnian": {"parent": Language, "id":"300388023", "label":"Bosnian"},
- "catalan": {"parent": Language, "id":"300388072", "label":"Catalan"},
- "portuguese":{"parent": Language, "id":"300389115", "label":"Portuguese"},
- "bengali": {"parent": Language, "id":"300387971", "label":"Bengali"},
- "russian": {"parent": Language, "id":"300389168", "label":"Russian"},
- "dutch": {"parent": Language, "id":"300388256", "label":"Dutch"},
- "finnish": {"parent": Language, "id":"300388299", "label":"Finnish"},
- "icelandic": {"parent": Language, "id":"300388449", "label":"Icelandic"},
- "irish": {"parent": Language, "id":"300388467", "label":"Irish"},
- "italian": {"parent": Language, "id":"300388474", "label":"Italian"},
- "farsi": {"parent": Language, "id":"300388296", "label":"Farsi"},
- "greek": {"parent": Language, "id":"300389734", "label":"Greek"},
- "gujarati": {"parent": Language, "id":"300388371", "label":"Gujarati"},
- "ancient greek": {"parent": Language, "id": "300387827", "label": "Ancient Greek"},
- "korean": {"parent": Language, "id":"300388633", "label":"Korean"},
- "latin": {"parent": Language, "id":"300388693", "label":"Latin"},
- "lithuanian": {"parent": Language, "id":"300388723", "label":"Lithuanian"},
- "macedonian": {"parent": Language, "id":"300388760", "label":"Macedonian"},
- "japanese": {"parent": Language, "id":"300388486", "label":"Japanese"},
- "croatian": {"parent": Language, "id": "300388185", "label": "Croatian"},
- "czech": {"parent": Language, "id": "300388191", "label": "Czech"},
- "danish": {"parent": Language, "id": "300388204", "label": "Danish"},
- "greek": {"parent": Language, "id": "300388361", "label": "Greek"},
- "georgian": {"parent": Language, "id": "300388343", "label": "Georgian"},
- "hebrew": {"parent": Language, "id": "300388401", "label": "Hebrew"},
- "hungarian": {"parent": Language, "id": "300388770", "label": "Magyar (Hungarian)"},
- "norwegian": {"parent": Language, "id": "300388992", "label": "Norwegian"},
- "polish": {"parent": Language, "id": "300389109", "label": "Polish"},
- "romanian": {"parent": Language, "id": "300389157", "label": "Romanian"},
- "serbo-croatian": {"parent": Language, "id": "300389248", "label": "Serbo-Croatian"},
- "slovak": {"parent": Language, "id": "300389290", "label": "Slovak"},
- "slovenian": {"parent": Language, "id": "300389291", "label": "Slovenian"},
- "serbian": {"parent": Language, "id": "300389247", "label": "Serbian"},
- "swedish": {"parent": Language, "id": "300389336", "label": "Swedish"},
- "turkish": {"parent": Language, "id": "300389470", "label": "Turkish"},
- "welsh": {"parent": Language, "id": "300389555", "label": "Welsh"},
+ "english": {"parent": Language, "id": "300388277", "label": "English", 'code':'en'},
+ "french": {"parent": Language, "id":"300388306","label": "French", 'code':'fr'},
+ "german": {"parent": Language, "id":"300388344","label": "German", 'code':'de'},
+ "spanish": {"parent": Language, "id":"300389311","label": "Spanish", 'code':'es'},
+ "chinese": {"parent": Language, "id":"300388113", "label":"Chinese", 'code':'zh'},
+ "hindi": {"parent": Language, "id":"300388412", "label":"Hindi", 'code':'hi'},
+ "afrikaans": {"parent": Language, "id":"300387782", "label":"Afrikaans", 'code':'af'},
+ "albanian": {"parent": Language, "id":"300387803", "label":"Albanian", 'code':'sq'},
+ "arabic": {"parent": Language, "id":"300387843", "label":"Arabic", 'code':'ar'},
+ "bulgarian": {"parent": Language, "id":"300388034", "label":"Bulgarian", 'code':'bg'},
+ "bosnian": {"parent": Language, "id":"300388023", "label":"Bosnian", 'code':'bs'},
+ "catalan": {"parent": Language, "id":"300388072", "label":"Catalan", 'code':'ca'},
+ "portuguese":{"parent": Language, "id":"300389115", "label":"Portuguese", 'code':'pt'},
+ "bengali": {"parent": Language, "id":"300387971", "label":"Bengali", 'code':'bn'},
+ "russian": {"parent": Language, "id":"300389168", "label":"Russian", 'code':'ru'},
+ "dutch": {"parent": Language, "id":"300388256", "label":"Dutch", 'code':'nl'},
+ "finnish": {"parent": Language, "id":"300388299", "label":"Finnish", 'code':'fi'},
+ "icelandic": {"parent": Language, "id":"300388449", "label":"Icelandic", 'code':'is'},
+ "irish": {"parent": Language, "id":"300388467", "label":"Irish", 'code':'ga'},
+ "italian": {"parent": Language, "id":"300388474", "label":"Italian", 'code':'it'},
+ "farsi": {"parent": Language, "id":"300388296", "label":"Farsi", 'code':'fa'},
+ "gujarati": {"parent": Language, "id":"300388371", "label":"Gujarati", 'code':'gu'},
+ "ancient greek": {"parent": Language, "id": "300387827", "label": "Ancient Greek", 'code':'grc'},
+ "korean": {"parent": Language, "id":"300388633", "label":"Korean", 'code':'ko'},
+ "latin": {"parent": Language, "id":"300388693", "label":"Latin", 'code':'la'},
+ "lithuanian": {"parent": Language, "id":"300388723", "label":"Lithuanian", 'code':'lt'},
+ "macedonian": {"parent": Language, "id":"300388760", "label":"Macedonian", 'code':'mk'},
+ "japanese": {"parent": Language, "id":"300388486", "label":"Japanese", 'code':'ja'},
+ "croatian": {"parent": Language, "id": "300388185", "label": "Croatian", 'code':'hr'},
+ "czech": {"parent": Language, "id": "300388191", "label": "Czech", 'code':'cs'},
+ "danish": {"parent": Language, "id": "300388204", "label": "Danish", 'code':'da'},
+ "greek": {"parent": Language, "id": "300388361", "label": "Greek", 'code':'el'},
+ "georgian": {"parent": Language, "id": "300388343", "label": "Georgian", 'code':'ka'},
+ "hebrew": {"parent": Language, "id": "300388401", "label": "Hebrew", 'code':'he'},
+ "hungarian": {"parent": Language, "id": "300388770", "label": "Magyar (Hungarian)", 'code':'hu'},
+ "norwegian": {"parent": Language, "id": "300388992", "label": "Norwegian", 'code':'no'},
+ "polish": {"parent": Language, "id": "300389109", "label": "Polish", 'code':'pl'},
+ "romanian": {"parent": Language, "id": "300389157", "label": "Romanian", 'code':'ro'},
+ "serbo-croatian": {"parent": Language, "id": "300389248", "label": "Serbo-Croatian", 'code':''},
+ "slovak": {"parent": Language, "id": "300389290", "label": "Slovak", 'code':'sk'},
+ "slovenian": {"parent": Language, "id": "300389291", "label": "Slovenian", 'code':'sl'},
+ "serbian": {"parent": Language, "id": "300389247", "label": "Serbian", 'code':'sr'},
+ "swedish": {"parent": Language, "id": "300389336", "label": "Swedish", 'code':'sv'},
+ "turkish": {"parent": Language, "id": "300389470", "label": "Turkish", 'code':'tr'},
+ "welsh": {"parent": Language, "id": "300389555", "label": "Welsh", 'code':'cy'},
+ "luxembourgish": {"parent": Language, "id": "300443689", "label": "Luxembourgish", "code": "lb"},
+ "urdu": {"parent": Language, "id": "300389502", "label": "Urdu", 'code':'ur'},
+ "swahili": {"parent": Language, "id": "300443741", "label": "Swahili", 'code':'sw'},
+ "indonesian": {"parent": Language, "id": "300388460", "label": "Indonesian", "code": "id"},
+ "telugu": {"parent": Language, "id": "300389389", "label": "Telugu", "code": "te"},
+ "tamil": {"parent": Language, "id": "300389365", "label": "Tamil", "code": "ta"},
+ "thai": {"parent": Language, "id": "300389405", "label": "Thai", "code": "th"},
+ "marathi": {"parent": Language, "id": "300388821", "label": "Marathi", "code": "mr"},
+ "punjabi": {"parent": Language, "id": "300389057", "label": "Punjabi", "code": "pa"},
# Currencies
- "us dollars": {"parent": Currency, "id":"300411994", "label": "US Dollars"},
- "gb pounds": {"parent": Currency, "id":"300411998", "label": "British Pounds"},
+ "us dollars": {"parent": Currency, "id":"300411994", "label": "US Dollars", 'code':'USD'},
+ "gb pounds": {"parent": Currency, "id":"300411998", "label": "British Pounds", 'code':'GBP'},
"gb shillings": {"parent": Currency, "id":"300412167", "label": "British Shillings"},
"dutch guilder": {"parent": Currency, "id":"300412019", "label": "Dutch Guilder"},
"fr assignats": {"parent": Currency, "id":"300412157", "label": "French Assignats"},
@@ -504,6 +534,9 @@ def register_instance(name, data):
"painting": {"parent": Type, "id":"300054216", "label": "Painting"},
"spraypainting": {"parent": Type, "id":"300053816", "label": "Spraypainting"},
+ # Conditions
+ "crizzling": {"parent": Type, "id": "300218594", "label": "Crizzling"},
+
# Geographic
"city": {"parent": Type, "id": "300008389", "label": "City"},
"province": {"parent": Type, "id":"300000774", "label": "Province"},
@@ -512,6 +545,7 @@ def register_instance(name, data):
"sovereign": {"parent": Type, "id": "300232420", "label": "Sovereign State"},
"building": {"parent": Type, "id": "300004792", "label": "Building"},
"city block": {"parent": Type, "id": "300008077", "label": "City Block"},
+ "address": {'parent': Type, 'id': '300386983', 'label': 'Street Address'},
# dot one qualifiers
"style of": {"parent": Type, "id": "300404285", "label": "Style Of"},
@@ -560,6 +594,7 @@ def register_instance(name, data):
# Nationalities
"american nationality": {"parent": Nationality, "id": "300107956", "label": "American"},
"austrian nationality": {"parent": Nationality, "id": "300111153", "label": "Austrian"},
+ "australian nationality": {"parent": Nationality, "id": "300021861", "label": "Australian"},
"belgian nationality": {"parent": Nationality, "id": "300111156", "label": "Belgian"},
"british nationality": {"parent": Nationality, "id": "300111159", "label": "British"},
"canadian nationality": {"parent": Nationality, "id": "300107962", "label": "Canadian"},
@@ -578,6 +613,7 @@ def register_instance(name, data):
"italian nationality": {"parent": Nationality, "id": "300111198", "label": "Italian"},
"japanese nationality": {"parent": Nationality, "id": "300018519", "label": "Japanese"},
"mexican nationality": {"parent": Nationality, "id": "300107963", "label": "Mexican"},
+ "new zealand nationality": {"parent": Nationality, "id": "300021959", "label": "New Zealander"},
"norwegian nationality": {"parent": Nationality, "id": "300111201", "label": "Norwegian"},
"polish nationality": {"parent": Nationality, "id": "300111204", "label": "Polish"},
"portuguese nationality": {"parent": Nationality, "id": "300111207", "label": "Portuguese"},
@@ -585,7 +621,12 @@ def register_instance(name, data):
"spanish nationality": {"parent": Nationality, "id": "300111215", "label": "Spanish"},
"swedish nationality": {"parent": Nationality, "id": "300111218", "label": "Swedish"},
"swiss nationality": {"parent": Nationality, "id": "300111221", "label": "Swiss"},
+ "venetian nationality": {"parent": Nationality, "id": "300379657", "label": "Venetian"}, # republic until 1797
+ # Occupations
+ "artist occupation": {"parent": Occupation, "id":"300025103", "label": "Artist"},
+ "collector occupation": {"parent": Occupation, "id":"300025234", "label": "Collector"},
+ "dealer occupation": {"parent": Occupation, "id":"300025236", "label": "Dealer"},
# Nations
"belgium": {"parent": Nation, "id": "1000063", "vocab": "tgn", "label": "Belgium"},
@@ -718,6 +759,12 @@ def aa_set_assigned(self, value):
if assto_res:
p177_res = getattr(self, p177, None)
assto_res._check_prop(p177_res, value)
+
+ current = getattr(self, ass, None)
+ if current:
+ value = [*current, value]
+ elif type(value) is not list:
+ value = [value]
object.__setattr__(self, ass, value)
setattr(AttributeAssignment, "set_%s" % ass, aa_set_assigned)
@@ -726,7 +773,8 @@ def aa_set_assigned_to(self, value):
p177_res = getattr(self, p177, None)
if ass_res and p177_res:
# unmap the URI to property name
- value._check_prop(p177_res, ass_res)
+ for ar in ass_res:
+ value._check_prop(p177_res, ar)
object.__setattr__(self, assto, value)
setattr(AttributeAssignment, "set_%s" % assto, aa_set_assigned_to)
@@ -734,7 +782,8 @@ def aa_set_assigned_property_type(self, value):
ass_res = getattr(self, ass, None)
assto_res = getattr(self, assto, None)
if ass_res and assto_res:
- assto_res._check_prop(value, ass_res)
+ for ar in ass_res:
+ assto_res._check_prop(value, ar)
object.__setattr__(self, p177, value)
setattr(AttributeAssignment, "set_%s" % p177, aa_set_assigned_property_type)
@@ -747,7 +796,7 @@ def phase_set_relationship(self, value):
def add_linked_art_boundary_check():
boundary_classes = [x.__name__ for x in [Actor, HumanMadeObject, Person, Group, VisualItem, \
- Place, Period, LinguisticObject, Phase, Set, Event]]
+ Place, Period, LinguisticObject, Phase, Set, Event, DigitalObject, DigitalService]]
data_embed_classes = [Name, Identifier, Dimension, TimeSpan, MonetaryAmount]
type_embed_classes = [Type, Currency, Language, Material, MeasurementUnit]
event_embed_classes = [Birth, Creation, Production, Formation, Payment, \
@@ -761,9 +810,13 @@ def add_linked_art_boundary_check():
# Activity, AttributeAssignment, InformationObject, TransferOfCustody, Move
# Propositional Object
+ ExternalResource._embed_override = None
+
def my_linked_art_boundary_check(self, top, rel, value):
# True = Embed ; False = Split
- if isinstance(value, LinguisticObject) and hasattr(value, 'classified_as'):
+ if value._embed_override is not None:
+ return value._embed_override
+ elif isinstance(value, LinguisticObject) and hasattr(value, 'classified_as'):
for ca in value.classified_as:
if instances['brief text'] in getattr(ca, 'classified_as', []):
return True
@@ -772,11 +825,23 @@ def my_linked_art_boundary_check(self, top, rel, value):
elif isinstance(value, ProvenanceEntry):
return False
- if rel in ["part", "member"]:
+ boundary_crossing_props = set([
+ "part_of", 'member_of', "specific_purpose", "caused_by",
+ "starts_before_the_end_of",
+ "ends_after_the_start_of",
+ "starts_before_the_start_of",
+ "starts_after_the_start_of",
+ "ends_before_the_start_of",
+ "starts_after_the_end_of",
+ "ends_before_the_end_of",
+ "ends_after_the_end_of",
+ ])
+
+ if rel in ["part", "member", "specific_purpose_of", "caused"]:
# Downwards, internal simple partitioning
# This catches an internal part to a LinguisticObject
return True
- elif rel in ["part_of", 'member_of']:
+ elif rel in boundary_crossing_props:
# upwards partition refs are inclusion, and always boundary crossing
return False
elif value.type in boundary_classes:
@@ -791,3 +856,48 @@ def my_linked_art_boundary_check(self, top, rel, value):
setattr(BaseResource, "_linked_art_boundary_okay", my_linked_art_boundary_check)
factory.linked_art_boundaries = True
+def set_linked_art_uri_segments():
+ HumanMadeObject._uri_segment = "object"
+ Activity._uri_segment = "event"
+ Event._uri_segment = "event"
+ Period._uri_segment = "event"
+ Place._uri_segment = "place"
+ InformationObject._uri_segment = "info"
+ Group._uri_segment = "group"
+ # Actor._uri_segment = "actor"
+ Person._uri_segment = "person"
+ PhysicalObject._uri_segment = "object"
+ LinguisticObject._uri_segment = "text"
+ PropositionalObject._uri_segment = "concept"
+ DigitalObject._uri_segment = "digital"
+ DigitalService._uri_segment = "digital"
+ Type._uri_segment = "concept"
+ Language._uri_segment = "concept"
+ MeasurementUnit._uri_segment = "concept"
+ Currency._uri_segment = "concept"
+ Material._uri_segment = "concept"
+ VisualItem._uri_segment = "visual"
+ ProvenanceEntry._uri_segment = "provenance"
+ Exhibition._uri_segment = "activity"
+ Set._uri_segment = "set"
+
+
+def add_helper_functions():
+ # Add filter functions to the right bits of the model
+
+ def get_names(self, filter=None):
+ return [x for x in self.identified_by if isinstance(x, Name) and (not filter or filter in x.classified_as)]
+
+ def get_identifiers(self, filter=None):
+ return [x for x in self.identified_by if isinstance(x, Identifier) and (not filter or filter in x.classified_as)]
+
+ def get_statements(self, filter=None):
+ return [x for x in self.referred_to_by if isinstance(x, LinguisticObject) and x.content and (not filter or filter in x.classified_as)]
+
+ CRMEntity.get_names = get_names
+ CRMEntity.get_identifiers = get_identifiers
+ CRMEntity.get_statements = get_statements
+
+
+
+
diff --git a/requirements.txt b/requirements.txt
index df090d6..5272150 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -1 +1,3 @@
ordereddict
+rdflib
+PyLD
diff --git a/setup.py b/setup.py
index 044e1c2..4a5955f 100644
--- a/setup.py
+++ b/setup.py
@@ -2,9 +2,9 @@
import sys
if (sys.version_info[0:2] < (2,7)):
- install_requires =['ordereddict', 'future']
+ install_requires =['ordereddict', 'future', 'rdflib', 'PyLD']
else:
- install_requires = []
+ install_requires = ['rdflib', 'PyLD']
setup(
name = 'cromulent',
@@ -15,8 +15,8 @@
'data/cidoc-extension.json', 'data/crm-profile.json']
},
test_suite="tests",
- version = '0.15.8',
- description = 'A library for mapping CIDOC-CRM classes to Python objects',
+ version = '0.16.11',
+ description = 'A library for mapping CIDOC-CRM (v7.1) classes to Python objects',
author = 'Rob Sanderson',
author_email = 'robert.sanderson@yale.edu',
url = 'https://github.com/linked-art/crom',
diff --git a/tests/test_currency.py b/tests/test_currency.py
index d2ab081..72fa4b7 100644
--- a/tests/test_currency.py
+++ b/tests/test_currency.py
@@ -33,7 +33,7 @@ def test_extract_simple(self):
'currency': 'pounds'
})
self.assertEqual(e.type, 'MonetaryAmount')
- self.assertEqual(e._label, '10.0 pounds')
+ self.assertEqual(e._label, '10.00 pounds')
self.assertEqual(e.value, 10)
c = e.currency
self.assertEqual(c.type, 'Currency')
@@ -45,7 +45,19 @@ def test_extract_comma_separated(self):
'currency': 'pounds'
})
self.assertEqual(e.type, 'MonetaryAmount')
- self.assertEqual(e._label, '1,280.5 pounds')
+ self.assertEqual(e._label, '1,280.50 pounds')
+ self.assertEqual(e.value, 1280.50)
+ c = e.currency
+ self.assertEqual(c.type, 'Currency')
+ self.assertEqual(c._label, 'British Pounds')
+
+ def test_extract_label_digits(self):
+ e = extract_monetary_amount({
+ 'price': '1,280.5',
+ 'currency': 'pounds'
+ }, truncate_label_digits=4)
+ self.assertEqual(e.type, 'MonetaryAmount')
+ self.assertEqual(e._label, '1,280.5000 pounds')
self.assertEqual(e.value, 1280.50)
c = e.currency
self.assertEqual(c.type, 'Currency')
@@ -57,7 +69,7 @@ def test_extract_multiple_comma_separated(self):
'currency': 'pounds'
})
self.assertEqual(e.type, 'MonetaryAmount')
- self.assertEqual(e._label, '1,310,720.5 pounds')
+ self.assertEqual(e._label, '1,310,720.50 pounds')
self.assertEqual(e.value, 1310720.5)
c = e.currency
self.assertEqual(c.type, 'Currency')
diff --git a/utils/data/cidoc.xml b/utils/data/cidoc.xml
index 61315a6..f87b67b 100644
--- a/utils/data/cidoc.xml
+++ b/utils/data/cidoc.xml
@@ -2803,40 +2803,6 @@ For a more complete description, objects may be decomposed into their components
-
-
- has section definition
- hat Abschittsdefinition
- имеет определение района
- έχει ορισμό τμήματος
- a pour désignation de section
- tem designação de seção
- 有区域定义
-
- This property links an area (section) named by a E41 Appellation to the instance of E18 Physical Thing upon which it is found.
-The CRM handles sections as locations (instances of E53 Place) within or on E18 Physical Thing that are identified by E41 Appellations. Sections need not be discrete and separable components or parts of an object.
-This is part of a more developed path from E18 Physical Thing through P58, E41 Appellation, P87 is identified by (identifies) that allows a more precise definition of a location found on an object than the shortcut P59 has section (is located on or within).
-A particular instance of a section definition only applies to one instance of Physical Thing.
-
-
-
-
-
-
- определяет район
- defines section
- definiert Abschitt auf oder von
- définit une section de
- ορίζει τμήμα σε
- define uma seção de
- 界定了区域於
-
-
-
-
-
-
-
has section
έχει τομέα
@@ -2848,7 +2814,7 @@ A particular instance of a section definition only applies to one instance of Ph
This property links an area to the instance of E18 Physical Thing upon which it is found.
It is typically used when a named E41 Appellation is not appropriate.
E18 Physical Thing may be subdivided into arbitrary regions.
-P59 has section (is located on or within) is a shortcut. If the E53 Place is identified by a Section Definition, a more detailed representation can make use of the fully developed (i.e. indirect) path from E18 Physical Thing through P58 has section definition (defines section), E41 Appellation, P87 is identified by (identifies) to E53 Place. A Place can only be located on or within one Physical Object.
+P59 has section (is located on or within) is a shortcut. If the E53 Place is identified by a Section Definition, a more detailed representation can make use of the fully developed (i.e. indirect) path from E18 Physical Thing through P1 is identified by, E41 Appellation, P1 is identified by (identifies) to E53 Place. A Place can only be located on or within one Physical Object.
@@ -4137,209 +4103,6 @@ Although a Part removal activity normally concerns only one item of Physical Man
-
- est temporellement égale à
- zeitgleich zu
- συμπίπτει χρονικά με
- равен по времени
- is equal in time to
- é temporalmente igual a
- 时段相同於
-
- This symmetric property allows the instances of E2 Temporal Entity with the same E52 Time-Span to be equated.
-This property is only necessary if the time span is unknown (otherwise the equivalence can be calculated).
-This property is the same as the "equal" relationship of Allen’s temporal logic (Allen, 1983, pp. 832-843).
-
-
-
-
-
-
-
- finishes
- заканчивает
- beendet
- termine
- περατώνει
- finaliza
- 结束了
- This property allows the ending point for a E2 Temporal Entity to be situated by reference to the ending point of another temporal entity of longer duration.
-This property is only necessary if the time span is unknown (otherwise the relationship can be calculated). This property is the same as the "finishes / finished-by" relationships of Allen’s temporal logic (Allen, 1983, pp. 832-843).
-
-
-
-
-
-
-
-
- est terminée par
- заканчивается
- περατώνεται με
- wurde beendet mit
- is finished by
- é finalizada por
- 被结束于
-
-
-
-
-
-
-
- commence
- starts
- начинает
- beginnt
- αρχίζει
- inicia
- 开始了
- This property allows the starting point for a E2 Temporal Entity to be situated by reference to the starting point of another temporal entity of longer duration.
-This property is only necessary if the time span is unknown (otherwise the relationship can be calculated). This property is the same as the "starts / started-by" relationships of Allen’s temporal logic (Allen, 1983, pp. 832-843).
-
-
-
-
-
-
-
-
- est commencée par
- wurde begonnen mit
- αρχίζει με
- начинается
- is started by
- é iniciada por
- 被开始于
-
-
-
-
-
-
-
- fällt in
- εμφανίζεται κατά τη διάρκεια
- появляется во течение
- occurs during
- a lieu pendant
- ocorre durante
- 时段被涵盖於
- This property allows the entire E52 Time-Span of an E2 Temporal Entity to be situated within the Time-Span of another temporal entity that starts before and ends after the included temporal entity.
-This property is only necessary if the time span is unknown (otherwise the relationship can be calculated). This property is the same as the "during / includes" relationships of Allen’s temporal logic (Allen, 1983, pp. 832-843).
-
-
-
-
-
-
-
- περιλαμβάνει
- включает
- comporte
- includes
- beinhaltet
- inclui
- 时段涵盖了
-
-
-
-
-
-
- overlaps in time with
- перекрывает во времени
- προηγείται μερικώς επικαλύπτοντας
- überlappt zeitlich mit
- est partiellement recouverte dans le temps par
- sobrepõe temporalmente
- 时段重叠了
- This property identifies an overlap between the instances of E52 Time-Span of two instances of E2 Temporal Entity.
-It implies a temporal order between the two entities: if A overlaps in time B, then A must start before B, and B must end after A. This property is only necessary if the relevant time spans are unknown (otherwise the relationship can be calculated).
-This property is the same as the "overlaps / overlapped-by" relationships of Allen’s temporal logic (Allen, 1983, pp. 832-843).
-
-
-
-
-
-
-
-
- wird zeitlich überlappt von
- перекрывается во времени
- recouvre partiellement dans le temps
- is overlapped in time by
- έπεται μερικώς επικαλυπτόμενο
- é sobreposto temporalmente por
- 时段被重叠于
-
-
-
-
-
-
-
- meets in time with
- προηγείται
- trifft zeitlich auf
- следует во времени за
- est temporellement contiguë avec
- é temporalmente contíguo com
- 紧接续了
- This property indicates that one E2 Temporal Entity immediately follows another.
-It implies a particular order between the two entities: if A meets in time with B, then A must precede B. This property is only necessary if the relevant time spans are unknown (otherwise the relationship can be calculated).
-This property is the same as the "meets / met-by" relationships of Allen’s temporal logic (Allen, 1983, pp. 832-843).
-
-
-
-
-
-
-
-
- est immédiatement précédé par
- έπεται
- is met in time by
- wird zeitlich getroffen von
- предшествует во времени
- é imediatamente precedido por
- 紧接续於
-
-
-
-
-
-
-
- появляется до
- a lieu avant
- εμφανίζεται πριν
- occurs before
- kommt vor
- ocorre antes
- 发生时段先於
- This property identifies the relative chronological sequence of two temporal entities.
-It implies that a temporal gap exists between the end of A and the start of B. This property is only necessary if the relevant time spans are unknown (otherwise the relationship can be calculated).
-This property is the same as the "before / after" relationships of Allen’s temporal logic (Allen, 1983, pp. 832-843).
-
-
-
-
-
-
-
- a lieu après
- εμφανίζεται μετά
- появляется после
- kommt nach
- occurs after
- ocorre depois
- 发生时段后於
-
-
-
-
-
επικαλύπτεται με
überlappt mit
@@ -5323,8 +5086,8 @@ A digital photograph of a manuscript page incorporates the text of the manuscrip
-
- assigned property type
+
+ assigned property of type
This property associates an instance of E13 Attribute Assignment with the type of property or relation that this assignment maintains to hold between the item to which it assigns an attribute and the attribute itself. Note that the properties defined by the CIDOC CRM also constitute instances of E55 Type themselves. The direction of the assigned property type is understood to be from the attributed item (the range of property P140 assigned attribute to) to the attribute item (the range of the property P141 assigned). More than one property type may be assigned to hold between two items.
@@ -5365,13 +5128,7 @@ A digital photograph of a manuscript page incorporates the text of the manuscrip
-
- has amount
- This property establishes the relationship between an instance of E97 Monetary Amount and the amount of currency that it consists of.
-
-
-
-
+
ends before or at the start of
@@ -5545,6 +5302,91 @@ In more recent documentation often point coordinate information is provided that
+
+ was a presence of
+ This property associates an instance of E93 Presence with the instance of E18 Physical Thing of which it represents a temporal restriction (i.e.: a time-slice) of the thing’s trajectory through spacetime. In other words, it describes where the instance of E18 Physical Thing were or moved around within a given time-span. Instantiating this property constitutes a necessary part of the identity of the respective instance of E93 Presence.
+
+
+
+
+
+
+ was a presence of
+ Inverse of P195
+
+
+
+
+
+
+ defines
+ This property associates an instance of E18 Physical Thing with the instance of E92 Spacetime Volume
+that constitutes the complete trajectory of its geometric extent through spacetime for the whole time of
+the existence of the instance of E18 Physical Thing.
+
+
+
+
+
+
+ is defined by
+ Inverse of P196
+
+
+
+
+
+
+ covered parts of
+ This property associates an instance of E93 Presence with an instance of E53 Place that geometrically
+overlaps with the spatial projection of the respective instance of E93 Presence.
+
+
+
+
+
+
+ was partially covered by
+ Inverse of P197
+
+
+
+
+
+
+
+ holds or supports
+ This property relates one instance of E18 Physical Thing which acts as a container or support to a
+supported or contained instance of E18 Physical Thing. T ypical examples of E18 Physical Things
+which are intended to function as a container or support include shelves, folders or boxes.
+
+
+
+
+
+
+ is held or supported by
+ Inverse of P198
+
+
+
+
+
+
+ represents instance of type
+ This property establishes the relationship between an instance of E36 Visual Item and an instance of E55 Type that characterises the thing depicted. This property is used when the identity of the thing depicted is unknown or unrecorded, but is clearly a particular thing of that type.
+
+
+
+
+
+
+ has instance represented by
+ Inverse of P199
+
+
+
+
diff --git a/utils/data/linkedart.xml b/utils/data/linkedart.xml
index 574d03a..e361884 100644
--- a/utils/data/linkedart.xml
+++ b/utils/data/linkedart.xml
@@ -1,6 +1,6 @@
-
+
@@ -15,26 +15,8 @@
-
-
-
-
- Represents Instance of Type
- This property establishes the relationship between an E36 Visual Item and an E55 Type that represents the class of entity which it visually represents. This property is used when the specific entity being represented is either unknown, or not of documentary interest.
-
-
-
-
-
-
- Represents Instance of Type
- Inverse of represents instance of type
-
-
-
-
-
+
Current Permanent Custodian
@@ -131,6 +113,7 @@
+
Phase
@@ -317,6 +300,7 @@
+
@@ -362,7 +346,7 @@
Digital Service
-
+
diff --git a/utils/data/linkedart_crm_enhancements.xml b/utils/data/linkedart_crm_enhancements.xml
index 3919465..f5ea018 100644
--- a/utils/data/linkedart_crm_enhancements.xml
+++ b/utils/data/linkedart_crm_enhancements.xml
@@ -1,6 +1,6 @@
-
+
Digital Object
@@ -23,7 +23,6 @@
-
Encounter
@@ -32,21 +31,32 @@
-
+
encountered object
+ This property associates an instance of S19 Encounter Event with an instance of E18 Physical
+Thing that has been found. e.g. The finding (S19) encountered (O19) the 18 arrowheads (E18) from Lerna in Argolis
-
-
+
+
-
- was encountered by
+
+ was encountered at
-
+
+
+
+ occurs during
+ This property identifies a situation in which the entire instance of the E52 Time-Span of an instance of E2 Temporal Entity is within the instance of the E52 Time-Span of another instance of E2 Temporal Entity that starts before and ends after the included temporal entity.
+
+
+
+
+
diff --git a/utils/info.py b/utils/info.py
index 60f9dbd..721b150 100755
--- a/utils/info.py
+++ b/utils/info.py
@@ -6,6 +6,7 @@
parser.add_argument('what')
parser.add_argument('--okay', '--profile', dest="okay", type=bool)
parser.add_argument('--filter', dest="filter")
+parser.add_argument('--self', dest="onlySelf", type=bool)
args = parser.parse_args()
def list_all_props(what, filter=None, okay=None):
@@ -22,6 +23,19 @@ def list_all_props(what, filter=None, okay=None):
props.sort(key=lambda x: x.property)
return props
+def list_my_props(what, filter=None, okay=None):
+ props = []
+ ks = []
+ for k,v in what._all_properties.items():
+ if not k in ks and \
+ (not okay or (okay and v.profile_okay)) and \
+ (filter is None or isinstance(filter, v.range) or \
+ filter is v.range):
+ props.append(v)
+ ks.append(k)
+ props.sort(key=lambda x: x.property)
+ return props
+
what = args.what
try:
c = getattr(model, what)
@@ -50,10 +64,17 @@ def list_all_props(what, filter=None, okay=None):
print("Filtered To: None")
print(f"Using Profile: {args.okay}")
+
+
+model.factory.validate_profile = False
instance = c()
-ap = list_all_props(instance, okay=args.okay, filter=f)
-ap2 = instance.list_all_props(okay=args.okay, filter=f)
+if args.onlySelf:
+ ap = list_my_props(instance, okay=args.okay, filter=f)
+else:
+ ap = list_all_props(instance, okay=args.okay, filter=f)
+
+#ap2 = instance.list_all_props(okay=args.okay, filter=f)
for pi in ap:
diff --git a/utils/make_jsonld_context.py b/utils/make_jsonld_context.py
index c76dc4a..670fb91 100644
--- a/utils/make_jsonld_context.py
+++ b/utils/make_jsonld_context.py
@@ -29,6 +29,7 @@
context['xsd'] = "http://www.w3.org/2001/XMLSchema#"
context['dig'] = "http://www.ics.forth.gr/isl/CRMdig/"
context["la"] = "https://linked.art/ns/terms/"
+context["archaeo"] = "http://www.cidoc-crm.org/cidoc-crm/CRMarchaeo/"
## These are only aliases. The processing is defined by the spec.
context['id'] = "@id"
diff --git a/utils/process_ontologies.py b/utils/process_ontologies.py
index 6c2589a..6150e91 100644
--- a/utils/process_ontologies.py
+++ b/utils/process_ontologies.py
@@ -20,9 +20,11 @@
"dc": "http://purl.org/dc/elements/1.1/",
"geo": "http://www.ics.forth.gr/isl/CRMgeo/",
"dig": "http://www.ics.forth.gr/isl/CRMdig/",
- "sci": "http://www.ics.forth.gr/isl/CRMsci/"
+ "sci": "http://www.ics.forth.gr/isl/CRMsci/",
+ "archaeo": "http://www.cidoc-crm.org/cidoc-crm/CRMarchaeo/"
}
+
# Order imposed by the library
# @context = 0, id = 1, rdf:type = 2
# rdfs:label = 5, rdf:value = 6, dc:description = 7
@@ -86,7 +88,7 @@ def process_classes(dom):
else:
subCls = ""
- # Hack SP4 and 5 to be readable :(
+ # Hack extensions to be readable :(
if name == "geo:SP4_Spatial_Coordinate_Reference_System":
ccname = "CoordinateSystem"
elif name == "geo:SP5_Geometric_Place_Expression":
@@ -117,6 +119,11 @@ def process_props(dom):
for p in props:
name = p.xpath('@rdf:about', namespaces=NS)[0]
+
+ # replace archaeo first, as a superstring of crm base :(
+ if name.startswith("http://www.cidoc-crm.org/cidoc-crm/CRMarchaeo/"):
+ name = name.replace("http://www.cidoc-crm.org/cidoc-crm/CRMarchaeo/", "archaeo:")
+
for (pref,ns) in NS.items():
if name.startswith(ns):
name = name.replace(ns, "%s:" % pref)