Minor fix to Uniclass classification

This commit is contained in:
Dion Moult
2023-10-30 09:30:48 +11:00
parent db06cff997
commit b9ad15c50f
2 changed files with 23 additions and 22 deletions
@@ -1,25 +1,25 @@
ISO-10303-21;
HEADER;
FILE_DESCRIPTION(('ViewDefinition [CoordinationView]'),'2;1');
FILE_NAME('','2023-10-25T10:22:27',(),(),'IfcOpenShell v0.7.0-c35be50c8','IfcOpenShell v0.7.0-c35be50c8','');
FILE_NAME('','2023-10-30T09:25:24',(),(),'IfcOpenShell v0.7.0-c35be50c8','IfcOpenShell v0.7.0-c35be50c8','');
FILE_SCHEMA(('IFC4'));
ENDSEC;
DATA;
#1=IFCCLASSIFICATION('RIBA Enterprises Ltd','July 2023','2023-07-01','Uniclass','Uniclass is a unified classification system made up of a set of tables that can be used by different parts of the industry in various ways.','https://uniclass.thenbs.com/',('_'));
#2=IFCCLASSIFICATIONREFERENCE($,'Ac','Activities',$,$,$);
#3=IFCCLASSIFICATIONREFERENCE($,'Co','Complexes',$,$,$);
#4=IFCCLASSIFICATIONREFERENCE($,'En','Entities',$,$,$);
#5=IFCCLASSIFICATIONREFERENCE($,'SL','Spaces / Locations',$,$,$);
#6=IFCCLASSIFICATIONREFERENCE($,'EF','Elements / Functions',$,$,$);
#7=IFCCLASSIFICATIONREFERENCE($,'Ss','Systems',$,$,$);
#8=IFCCLASSIFICATIONREFERENCE($,'Pr','Products',$,$,$);
#9=IFCCLASSIFICATIONREFERENCE($,'TE','Tools and equipment',$,$,$);
#10=IFCCLASSIFICATIONREFERENCE($,'PM','Project management',$,$,$);
#11=IFCCLASSIFICATIONREFERENCE($,'FI','Form of information',$,$,$);
#12=IFCCLASSIFICATIONREFERENCE($,'Ro','Roles',$,$,$);
#13=IFCCLASSIFICATIONREFERENCE($,'Ma','Materials',$,$,$);
#14=IFCCLASSIFICATIONREFERENCE($,'Pc','Properties and characteristics',$,$,$);
#15=IFCCLASSIFICATIONREFERENCE($,'Zz','CAD',$,$,$);
#2=IFCCLASSIFICATIONREFERENCE($,'Ac','Activities',#1,$,$);
#3=IFCCLASSIFICATIONREFERENCE($,'Co','Complexes',#1,$,$);
#4=IFCCLASSIFICATIONREFERENCE($,'En','Entities',#1,$,$);
#5=IFCCLASSIFICATIONREFERENCE($,'SL','Spaces / Locations',#1,$,$);
#6=IFCCLASSIFICATIONREFERENCE($,'EF','Elements / Functions',#1,$,$);
#7=IFCCLASSIFICATIONREFERENCE($,'Ss','Systems',#1,$,$);
#8=IFCCLASSIFICATIONREFERENCE($,'Pr','Products',#1,$,$);
#9=IFCCLASSIFICATIONREFERENCE($,'TE','Tools and equipment',#1,$,$);
#10=IFCCLASSIFICATIONREFERENCE($,'PM','Project management',#1,$,$);
#11=IFCCLASSIFICATIONREFERENCE($,'FI','Form of information',#1,$,$);
#12=IFCCLASSIFICATIONREFERENCE($,'Ro','Roles',#1,$,$);
#13=IFCCLASSIFICATIONREFERENCE($,'Ma','Materials',#1,$,$);
#14=IFCCLASSIFICATIONREFERENCE($,'PC','Properties and characteristics',#1,$,$);
#15=IFCCLASSIFICATIONREFERENCE($,'Zz','CAD',#1,$,$);
#16=IFCCLASSIFICATIONREFERENCE($,'Zz_10','Title sheet',#15,$,$);
#17=IFCCLASSIFICATIONREFERENCE($,'Zz_10_20','Drawing frame',#16,$,$);
#18=IFCCLASSIFICATIONREFERENCE($,'Zz_10_20_45','Logo',#17,$,$);
@@ -16494,7 +16494,7 @@ DATA;
#16487=IFCCLASSIFICATIONREFERENCE($,'Ac_90_50_96','Water storing',#16445,$,$);
#16488=IFCCLASSIFICATIONREFERENCE($,'Ac_90_50_97','Wet waste storing',#16445,$,$);
#16489=IFCCLASSIFICATIONREFERENCE($,'Ac_90_50_98','Wine storing',#16445,$,$);
#16490=IFCCLASSIFICATIONREFERENCE($,'PC_10','Identifying properties',#1,$,$);
#16490=IFCCLASSIFICATIONREFERENCE($,'PC_10','Identifying properties',#14,$,$);
#16491=IFCCLASSIFICATIONREFERENCE($,'PC_10_05','Administrative identifiers',#16490,$,$);
#16492=IFCCLASSIFICATIONREFERENCE($,'PC_10_05_23','District',#16491,$,$);
#16493=IFCCLASSIFICATIONREFERENCE($,'PC_10_05_48','Local authority',#16491,$,$);
@@ -16558,7 +16558,7 @@ DATA;
#16551=IFCCLASSIFICATIONREFERENCE($,'PC_10_90_87','Test authority',#16535,$,$);
#16552=IFCCLASSIFICATIONREFERENCE($,'PC_10_90_89','Test conditions',#16535,$,$);
#16553=IFCCLASSIFICATIONREFERENCE($,'PC_10_90_91','Test method',#16535,$,$);
#16554=IFCCLASSIFICATIONREFERENCE($,'PC_20','Descriptive properties',#1,$,$);
#16554=IFCCLASSIFICATIONREFERENCE($,'PC_20','Descriptive properties',#14,$,$);
#16555=IFCCLASSIFICATIONREFERENCE($,'PC_20_05','Administrative description attributes',#16554,$,$);
#16556=IFCCLASSIFICATIONREFERENCE($,'PC_20_05_15','Cost properties',#16555,$,$);
#16557=IFCCLASSIFICATIONREFERENCE($,'PC_20_05_15_15','Cost discount',#16556,$,$);
@@ -16891,7 +16891,7 @@ DATA;
#16884=IFCCLASSIFICATIONREFERENCE($,'PC_20_91_79','Shape tolerance',#16872,$,$);
#16885=IFCCLASSIFICATIONREFERENCE($,'PC_20_91_82','Squareness',#16872,$,$);
#16886=IFCCLASSIFICATIONREFERENCE($,'PC_20_91_89','Texture tolerance',#16872,$,$);
#16887=IFCCLASSIFICATIONREFERENCE($,'PC_35','Performance characteristics',#1,$,$);
#16887=IFCCLASSIFICATIONREFERENCE($,'PC_35','Performance characteristics',#14,$,$);
#16888=IFCCLASSIFICATIONREFERENCE($,'PC_35_05','Acoustic characteristics',#16887,$,$);
#16889=IFCCLASSIFICATIONREFERENCE($,'PC_35_05_05','Acoustic impedance',#16888,$,$);
#16890=IFCCLASSIFICATIONREFERENCE($,'PC_35_05_53','Noise absorption coefficient',#16888,$,$);
@@ -17442,7 +17442,7 @@ DATA;
#17435=IFCCLASSIFICATIONREFERENCE($,'PC_35_90_90_52','Melting point',#17427,$,$);
#17436=IFCCLASSIFICATIONREFERENCE($,'PC_35_90_90_70','Radiation',#17427,$,$);
#17437=IFCCLASSIFICATIONREFERENCE($,'PC_35_90_90_82','Specific heat',#17427,$,$);
#17438=IFCCLASSIFICATIONREFERENCE($,'PC_50','Installation and maintenance attributes',#1,$,$);
#17438=IFCCLASSIFICATIONREFERENCE($,'PC_50','Installation and maintenance attributes',#14,$,$);
#17439=IFCCLASSIFICATIONREFERENCE($,'PC_50_10','Building fabric systems installation and maintenance attributes',#17438,$,$);
#17440=IFCCLASSIFICATIONREFERENCE($,'PC_50_10_30','Fastening attributes',#17439,$,$);
#17441=IFCCLASSIFICATIONREFERENCE($,'PC_50_10_30_29','Fastener type',#17440,$,$);
@@ -17672,7 +17672,7 @@ DATA;
#17665=IFCCLASSIFICATIONREFERENCE($,'PC_50_75_81','Safety and security status code',#17653,$,$);
#17666=IFCCLASSIFICATIONREFERENCE($,'PC_50_75_83','Safety and security system status',#17653,$,$);
#17667=IFCCLASSIFICATIONREFERENCE($,'PC_50_75_89','Timestamp',#17653,$,$);
#17668=IFCCLASSIFICATIONREFERENCE($,'PC_60','Operational attributes',#1,$,$);
#17668=IFCCLASSIFICATIONREFERENCE($,'PC_60','Operational attributes',#14,$,$);
#17669=IFCCLASSIFICATIONREFERENCE($,'PC_60_25','Digital operation attributes',#17668,$,$);
#17670=IFCCLASSIFICATIONREFERENCE($,'PC_60_25_04','Artificially intelligent',#17669,$,$);
#17671=IFCCLASSIFICATIONREFERENCE($,'PC_60_25_15','Computer-assisted',#17669,$,$);
@@ -17702,7 +17702,7 @@ DATA;
#17695=IFCCLASSIFICATIONREFERENCE($,'PC_60_54_71','Retractable',#17688,$,$);
#17696=IFCCLASSIFICATIONREFERENCE($,'PC_60_54_73','Rotating',#17688,$,$);
#17697=IFCCLASSIFICATIONREFERENCE($,'PC_60_54_80','Sliding',#17688,$,$);
#17698=IFCCLASSIFICATIONREFERENCE($,'PC_90','Styles, periods and ages',#1,$,$);
#17698=IFCCLASSIFICATIONREFERENCE($,'PC_90','Styles, periods and ages',#14,$,$);
#17699=IFCCLASSIFICATIONREFERENCE($,'PC_90_30','Geological periods',#17698,$,$);
#17700=IFCCLASSIFICATIONREFERENCE($,'PC_90_30_10','Cenozoic era',#17699,$,$);
#17701=IFCCLASSIFICATIONREFERENCE($,'PC_90_30_10_10','Quaternary period',#17700,$,$);
@@ -33,13 +33,14 @@ tables = [
("FI", "Form of information"),
("Ro", "Roles"),
("Ma", "Materials"),
("Pc", "Properties and characteristics"),
("PC", "Properties and characteristics"),
("Zz", "CAD"),
]
for identification, name in tables:
ref = ifc.create_entity("IfcClassificationReference", Identification=identification, Name=name)
references[identification] = ref
ref.ReferencedSource = classification
for filename in os.listdir(directory_path):
if filename.endswith(".xlsx") and "change-log" not in filename and "codes-not-in-use" not in filename: