/** * Constructor. * <p> * The order of the snaks groups provided will be respected. * the properties used by the snak groups should be distinct. * * @param groups * the snaks group which form the reference */ public ReferenceImpl(List<SnakGroup> groups) { propertyOrder = new ArrayList<>(groups.size()); snaks = new HashMap<>(groups.size()); for(SnakGroup group : groups) { propertyOrder.add(group.getProperty().getId()); snaks.put(group.getProperty().getId(), group.getSnaks()); } }
/** * Constructor. * <p> * The order of the snaks groups provided will be respected. * the properties used by the snak groups should be distinct. * * @param groups * the snaks group which form the reference */ public ReferenceImpl(List<SnakGroup> groups) { propertyOrder = new ArrayList<>(groups.size()); snaks = new HashMap<>(groups.size()); for(SnakGroup group : groups) { propertyOrder.add(group.getProperty().getId()); snaks.put(group.getProperty().getId(), group.getSnaks()); } }
/** * Adds all qualifiers from the given {@link SnakGroup} to the constructed * statement. * * @param qualifiers * the group of qualifiers to add * @return builder object to continue construction */ public StatementBuilder withQualifiers(SnakGroup qualifiers) { getQualifierList(qualifiers.getProperty()).addAll(qualifiers); return getThis(); }
/** * Adds all qualifiers from the given {@link SnakGroup} to the constructed * statement. * * @param qualifiers * the group of qualifiers to add * @return builder object to continue construction */ public StatementBuilder withQualifiers(SnakGroup qualifiers) { getQualifierList(qualifiers.getProperty()).addAll(qualifiers); return getThis(); }
this.qualifiersOrder = new ArrayList<>(); for(SnakGroup qualifiersGroup : qualifiers) { this.qualifiers.put(qualifiersGroup.getProperty().getId(), qualifiersGroup.getSnaks()); this.qualifiersOrder.add(qualifiersGroup.getProperty().getId());
this.qualifiersOrder = new ArrayList<>(); for(SnakGroup qualifiersGroup : qualifiers) { this.qualifiers.put(qualifiersGroup.getProperty().getId(), qualifiersGroup.getSnaks()); this.qualifiersOrder.add(qualifiersGroup.getProperty().getId());
for (Statement s : sg.getStatements()) { for (SnakGroup q : s.getClaim().getQualifiers()) { countPropertyQualifier(usageStatistics, q.getProperty(), q .getSnaks().size()); for (SnakGroup snakGroup : r.getSnakGroups()) { countPropertyReference(usageStatistics, snakGroup.getProperty(), snakGroup.getSnaks() .size());
Integer qualifierId = getNumId(snakGroup.getProperty() .getId(), false); if (propertyRecord.qualifiers.containsKey(qualifierId)) {
/** * Count the statements and property uses of an item or property document. * * @param usageStatistics * statistics object to store counters in * @param statementDocument * document to count the statements of */ protected void countStatements(UsageStatistics usageStatistics, StatementDocument statementDocument) { // Count Statement data: for (StatementGroup sg : statementDocument.getStatementGroups()) { // Count Statements: usageStatistics.countStatements += sg.size(); // Count uses of properties in Statements: countPropertyMain(usageStatistics, sg.getProperty(), sg.size()); for (Statement s : sg) { for (SnakGroup q : s.getQualifiers()) { countPropertyQualifier(usageStatistics, q.getProperty(), q.size()); } for (Reference r : s.getReferences()) { usageStatistics.countReferencedStatements++; for (SnakGroup snakGroup : r.getSnakGroups()) { countPropertyReference(usageStatistics, snakGroup.getProperty(), snakGroup.size()); } } } } }
countPropertyQualifier(q.getProperty(), q.getSnaks().size()); countPropertyReference(snakGroup.getProperty(), snakGroup.getSnaks().size());
countPropertyQualifier(q.getProperty(), q.size()); countPropertyReference(snakGroup.getProperty(), snakGroup.size());